+ Responder Tópico
  1. #1
    Suspenso
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    May 2002
    Mensagens
    61
    Verdinhas
    0

    Não Entrem ....

    Propaganda Enganosa Rulzzz ...
    Ai Galera por muintas tretas q estão rolando Na comunidade resolvi fazer um topiquinho besta + pelo menos já cada um vai conhecer cada melhor pelo menos não zoua e nem brinca com a pessoa errada hehe ...

    Gostaria de saber de vcs quem joga UT para se divertir tirar um lazer dar rizada com telasdas mandar varios binds q tá nem ai pra nada perder ganhar tudo a mesma coisa só quer se divertir ...

    Já os esquentados que não gostam de binds taunts ecessivos depois de uma telada ou uma flag , consideram UT um negocio serio que não sabem perder ... (Acredito q tem muintos poucos assim )

    Vou Falar como eu sou quem me conheçe pelo menos sabem como eu sou zou mesmo mando varios binds deposi do tele ou uma flag tento ser amigo de todo mundo + ninguem consegue agradar a todos hehe fazer o q ....Nunca xinguei ninguem nunca arrumei uma criaca no UT e nem quero arrumar Sou Da Paz hehe ...
    Obs: E Não Virei Estrelinha ...

    Humildade Faz A Diferença

    Flw ...

  2. # Publicidade
    Publicidade

  3. #2
    Membro
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Nov 2001
    Mensagens
    1.449
    Verdinhas
    7

    tipo jogo pra me divertir claro lazer acima d tudo, mas tb nao sou um completo alienado q fico correndo pelo mapa dando risada d tudo o que acontece... sabe jogo pra me divertir mas c pego a flag mato o otro time todo consigo trazer ate a minha base, e qdo to pra marcar um cara me vem e me mata qdo to com 1 d life e vem me zuar eh logico q nao vou dar risada e falar nossa q comedia o cara me mato e todo esse esforco foi em vao....... na boa nao creio q existam players que tenham esse grau de tranquilidade qdo jogam.... todos na teoria jogam apenas pra se divertir.... mas na realidade nao eh bem assim senao nao existiriam tretas nos servers...

    eu mesmo jogo pq gosto, divertir-me? claro, mas gosto d me aprimorar cada vez mais.... nao gosto d perder claro que nao .... afinal d contas alguem aki gosta?

    com relacao aos malas q fikam matando os negos e mandando bind d tooeasy ou binds excessivos me incomodam SIM... tanto eh q tirei os taunts dos sons do meu UT por causa disso... mas tenho mania d ler TUDO oq os caras escrevem... essa mania veio por causa do CTF fiko sempre atento pra ver c nao eh bind d cara precisando d cover e talz..... entao nego q adora mandar o mesmo bind no minimo 10x seguidas me irritam sim... tenho tentado melhorar mas eh bastante dificil... tive a oportunidade de jogar com os gringos que jogaram com a gente no server deles e posso dizer q akilo eh quase uma comunidade perfeita.... nao eh akela varzea q eh o UT nos servers brasileiros nego mandando bind d risada a cada arma q pega, nego mandando taunt etc..... fala-se apenas o necessario e mto raramente algum taunt..... e o jogo flui q eh uma maravilha.. fikei impressionado com a maturidade dos jogadores de la....... confesso com tristeza tenho mais lazer jogando com eles do q jogando num server da hard lotado...

    100+ abraco a todos

    PS: To meio q me mudando pro UT2003.... aos poucos vou parar com o UT1... axo q ja deu tudo q tinha q dar..... eh o melhor jogo q ja joguei ate hj,... mas tudo na vida enjoa.. Mais sorte pra comunidade 2k3 do q teve a 1 nesse sentido

  4. #3
    Membro
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Dec 2001
    Mensagens
    470
    Verdinhas
    0

    uahua

    ai DeDe vai c fuder uahuahauhauhauahu lembra das teladas q te dava yagyagaahuahua _I_

    CdC rula hauhauh

  5. #4
    Membro
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Dec 2001
    Mensagens
    1.215
    Verdinhas
    0

    PQP pego a mania do sayama de fazer topico besta huahuauhahu
    muleke burro

  6. #5
    Suspenso
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Dec 1999
    Mensagens
    1.068
    Verdinhas
    7

    #include <iostream.h>
    #include <conio.h>
    #include <stdio.h>


    class pessoa
    {
    public:
    void AlteraNome();
    void AlteraEndereco();
    void AlteraIdade();
    void AlteraCodigo();
    int ObtemCodigo();

    protected:
    char nome[40];
    char endereco[60];
    int idade;
    int codigo;
    };

    class dependente : public pessoa
    {
    public:
    void AlteraCodigoD();

    protected:
    int codigo_d;
    };

    void pessoa::AlteraNome()
    {
    gets(nome);
    }

    void dependente::AlteraCodigoD()
    {
    cout << "\n Digite o codigo da pessoa responsavel: ";
    cin >> codigo_d;
    }

    int pessoa::ObtemCodigo()
    {
    return codigo;
    }

    void pessoa::AlteraIdade()
    {
    cout << "\n Digite a idade: ";
    cin >> idade;
    }

    void pessoa::AlteraEndereco()
    {
    gets(endereco);
    }

    void pessoa::AlteraCodigo()
    {
    cout << "\n Digite o codigo: ";
    cin >> codigo;
    }

    void main(void)
    {
    pessoa a[100];
    dependente b[100];
    int i=0;
    int h=0;
    // leitura
    a[i].AlteraNome();
    a[i].AlteraEndereco();
    a[i].AlteraIdade();
    a[i].AlteraCodigo();
    while(a[i].ObtemCodigo()!=0)
    {
    i++;
    a[i].AlteraNome();
    a[i].AlteraEndereco();
    a[i].AlteraIdade();
    a[i].AlteraCodigo();
    }
    }

  7. #6
    Usuário com Pendências
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Mar 2001
    Mensagens
    8.171
    Verdinhas
    9

    WTF LZ???

  8. #7
    UmK
    UmK está offline
    Suspenso
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Aug 2000
    Mensagens
    12.180
    Verdinhas
    7

    ker ficar floodando o server, faz isso no SEU server...
    isso nao diverte, isso atrapalha e irrita
    odeio flooder, nao dexam o jogo rolar em paz

    Servers de UT nao sao uns botecos... la as pessoas se divertem de OUTRA maneira... algo chamado competicao, q eh oq move a humanidade, competir... nao há nada melhor doq isso. Mas eh claro, tem q ter espirito esportivo e aceitar qdo eh derrotado. coisa q nem todos tem, alguns sao obsecados por ganhar... mas pra kda vencedor, tem um perdedor, entao relaxem... nao se ganha sempre

    Se quer bater papo, existem muitos meios de fazer isso... se ker passear pelo mapa sem cooperar com o jogo, simples, crie seu server e convide quem quer fazer o mesmo

    claro q sempre há espaco pra isso depois de um jogo, ou mesmo antes... as vezes um jogo de brincadeira pra relaxar cai bem... mas soh se todos concordarem, pq se nao vc vai tar estragando a diversao dos outros...

    hj mesmo tirei 1x1 com o bad na space inoxx, foi a coisa mais comédia... ficamo brincando de guerra de rocket guiado, ri pkct nakela...

  9. #8
    Membro
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Oct 2000
    Mensagens
    820
    Verdinhas
    0

    UT 4 FUN fOREVER !

    Nao adianta querer discutir o negocio e se divertir e jogar bem...

    Jogar mal tb vai, fazer o que, se com tempo de jogo vc nao consegue evoluir, anormal !

  10. #9
    Membro
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Feb 2000
    Mensagens
    762
    Verdinhas
    5

    Concordo com o Lz

    #include <GL/glut.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>
    #include <time.h>

    #define NIVEIS 5
    #define TRECOS 4 /* trecos por nivel */
    #define TAM_TRECO 0.05
    #define TAM_BOMBA 0.01

    #define VIVO 1
    #define MORTO 0
    #define AGONIZANDO 2

    #define ANIM_TEMPO 30

    #define VEL_BAIXA 0.01
    #define VEL_MEDIA 0.02
    #define VEL_ALTA 0.03

    struct
    {
    double x;
    double y;
    double stepx;
    double stepy;
    int estado;
    int cont_morre;
    } treco[NIVEIS][TRECOS];

    double cor[NIVEIS][4] = { {1.0, 1.0, 0.0},
    {0.6, 0.8, 0.3},
    {0.5, 0.5, 0.0},
    {0.6, 0.0, 0.6},
    {0.4, 0.0, 0.4} };


    int pontos[NIVEIS] = { -4000,
    -2000,
    -1000,
    1000,
    2000 };

    struct bomba
    {
    double x;
    double y;
    int cont_troca_nivel;
    struct bomba *next;
    };

    /* cabeca das listas ligadas de bombas, cada nivel possui uma */
    struct bomba head_bomba[NIVEIS];


    /**/
    void display ()
    {
    int nivel, num_treco, i, tam;
    static int score = 0, ruins_mortos = 0, cont = 5;
    double x, y;
    struct bomba *temp, *temp2, *anterior;
    char str[30];
    static double r, g, b;

    glClearColor (0.5, 0.5, 1, 0.0);
    glClear (GL_COLOR_BUFFER_BIT);

    if (ruins_mortos == 8) {
    if (cont == 5) {
    r = (double) rand () / RAND_MAX;
    g = (double) rand () / RAND_MAX;
    b = (double) rand () / RAND_MAX;
    cont = 0;
    }
    cont++;
    glColor3d (r, g, b);
    sprintf (str, "FIM DO JOGO");
    tam = (int) strlen (str);
    glRasterPos2d (0.35, 0.5);
    for (i = 0; i < tam; i++) {
    glutBitmapCharacter (GLUT_BITMAP_HELVETICA_18, str[i]);
    }
    } else {


    /*** manipulacao dos trecos ***/
    /* O for eh do nivel mais fundo para o mais raso para os trecos de cima serem desenhados por cima dos trecos de baixo */
    for (nivel = NIVEIS - 1; nivel >= 0; nivel--) {
    glColor3dv (cor[nivel]);
    for (num_treco = 0; num_treco < TRECOS; num_treco++) {
    if (treco[nivel][num_treco].estado == VIVO ||treco[nivel][num_treco].estado == AGONIZANDO) {
    x = treco[nivel][num_treco].x;
    y = treco[nivel][num_treco].y;

    /* verificando se alguma bomba acertou o treco */
    temp = head_bomba[nivel].next;
    while (temp != NULL) {
    if (temp->x >= x &&
    temp->x + TAM_BOMBA <= x + TAM_TRECO &&
    temp->y >= y &&
    temp->y + TAM_BOMBA / 2 <= y + TAM_TRECO) {

    treco[nivel][num_treco].estado = AGONIZANDO;
    }
    temp = temp->next;
    }

    /* treco morrendo tem cor vermelha */
    if (treco[nivel][num_treco].estado == AGONIZANDO) {
    glColor3d (0.7, 0.0, 0.0);
    treco[nivel][num_treco].cont_morre++;
    }

    /* desenha o treco */
    glRectd (x, y, x + TAM_TRECO, y + TAM_TRECO);

    /* restaura a cor caso tenha sido mudada para vermelho */
    if (treco[nivel][num_treco].estado == AGONIZANDO)
    glColor3dv (cor[nivel]);

    /* verificando se o treco morreu */
    if (treco[nivel][num_treco].cont_morre == 30) {
    treco[nivel][num_treco].estado = MORTO;
    score += pontos[nivel];
    if (nivel >= 3)
    ruins_mortos++;
    }

    x += treco[nivel][num_treco].stepx;
    /* se bateu na borda direita */
    if (x + TAM_TRECO > 1.0) {
    x = 1.0 - TAM_TRECO;

    /* inverte o sentido do movimento */
    treco[nivel][num_treco].stepx *= -1;
    }
    /* se bateu na borda esquerda */
    if (x < 0.0) {
    x = 0.0;

    /* inverte o sentido do movimento */
    treco[nivel][num_treco].stepx *= -1;
    }

    y += treco[nivel][num_treco].stepy;
    /* se bateu na borda superior */
    if (y + TAM_TRECO > 1.0) {
    y = 1.0 - TAM_TRECO;

    /* inverte o sentido do movimento */
    treco[nivel][num_treco].stepy *= -1;
    }
    /* se bateu na borda inferior */
    if (y < 0.0) {
    y = 0.0;

    /* inverte o sentido do movimento */
    treco[nivel][num_treco].stepy *= -1;
    }

    /* atualiza valores */
    treco[nivel][num_treco].x = x;
    treco[nivel][num_treco].y = y;

    // printf ("Nivel %d - Treco %d - X: %f - Y: %f - StepX: %f - StepY: %f\n", nivel, num_treco, x, y, treco[nivel][num_treco].stepx, treco[nivel][num_treco].stepy);
    }
    }

    /*** manipulacao das bombas ***/
    anterior = &head_bomba[nivel];
    temp = head_bomba[nivel].next;

    while (temp != NULL) {
    glRectd (temp->x, temp->y, temp->x + TAM_BOMBA, temp->y + TAM_BOMBA);

    /* troca de nivel a cada 30 quadros (aprox. 1 segundo) */
    if (temp->cont_troca_nivel == 30) {
    anterior->next = temp->next;

    if (nivel + 1 < NIVEIS) {
    temp2 = &head_bomba[nivel + 1];

    /* colocando a bomba no outro nivel */
    while (temp2 != NULL) {
    if (temp2->next == NULL) {
    temp2->next = temp;
    temp->cont_troca_nivel = 0;
    temp->next = NULL;
    break;
    }
    temp2 = temp2->next;
    }
    }
    } else
    (temp->cont_troca_nivel)++;

    anterior = temp;
    temp = temp->next;
    }
    }
    }

    /*** desenha score ***/
    glColor3d (0.0, 0.0, 0.0);
    sprintf (str, "Placar: %d", score);
    tam = (int) strlen (str);
    glRasterPos2d (0.02, 0.02);
    for (i = 0; i < tam; i++) {
    glutBitmapCharacter (GLUT_BITMAP_HELVETICA_12, str[i]);
    }

    glutSwapBuffers ();
    }


    /**/
    void trata_mouse (int button, int state, int x, int y)
    {
    struct bomba *boom, *temp;
    double x_rel, y_rel;

    if (button == GLUT_LEFT_BUTTON && state == GLUT_DOWN) {
    boom = malloc (sizeof (struct bomba));

    x_rel = (double) x / glutGet (GLUT_WINDOW_WIDTH);
    y_rel = (double) y / glutGet (GLUT_WINDOW_HEIGHT);

    /* x e y sao o canto inferior esquerdo da bomba */
    boom->x = x_rel - (TAM_BOMBA / 2);
    boom->y = (1.0 - y_rel) - (TAM_BOMBA / 2);
    boom->cont_troca_nivel = 0;
    boom->next = NULL;

    temp = &head_bomba[0];
    while (temp != NULL) {
    if (temp->next == NULL) {
    temp->next = boom;
    break;
    }
    temp = temp->next;
    }
    }
    }


    /**/
    void anima (int id)
    {
    glutPostRedisplay ();
    glutTimerFunc (ANIM_TEMPO, anima, 0);
    }


    /**/
    void muda_velocidade (int nivel, int num_treco, double vel_max)
    {
    /* Velocidade do treco entre -0.01 e 0.01 */
    treco[nivel][num_treco].stepx = (vel_max * rand ()) / RAND_MAX;
    treco[nivel][num_treco].stepy = (vel_max * rand ()) / RAND_MAX;
    if (treco[nivel][num_treco].stepx > vel_max / 2)
    treco[nivel][num_treco].stepx = (vel_max / 2) - treco[nivel][num_treco].stepx;
    if (treco[nivel][num_treco].stepy > vel_max / 2)
    treco[nivel][num_treco].stepy = (vel_max / 2) - treco[nivel][num_treco].stepy;
    }


    /**/
    void init ()
    {
    int nivel, num_treco;

    srand (time(0));

    for (nivel = 0; nivel < NIVEIS; nivel++) {
    head_bomba[nivel].next = NULL;

    for (num_treco = 0; num_treco < TRECOS; num_treco++) {
    /* 1.0 - TAM_TRECO => Para nao ultrapassar as bordas da janela */
    treco[nivel][num_treco].x = ((1.0 - TAM_TRECO) * rand ()) / RAND_MAX;
    treco[nivel][num_treco].y = ((1.0 - TAM_TRECO) * rand ()) / RAND_MAX;

    /* Velocidade do treco */
    muda_velocidade (nivel, num_treco, VEL_MEDIA);


    treco[nivel][num_treco].cont_morre = 0;
    treco[nivel][num_treco].estado = VIVO;
    }
    }
    }


    /**/
    int main (int argc, char *argv[])
    {
    glutInit (&argc, argv);
    glutInitDisplayMode (GLUT_DOUBLE | GLUT_RGBA);
    glutInitWindowSize (400, 400);
    glutInitWindowPosition (50, 50);
    glutCreateWindow ("Trecos 2d");
    glutDisplayFunc (display);
    glutMouseFunc (trata_mouse);
    glutTimerFunc (ANIM_TEMPO, anima, 0);

    init ();

    glOrtho (0.0, 1.0, 0.0, 1.0, -1.0, 1.0);

    glutMainLoop ();
    return 0;
    }

  11. #10
    Membro
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Oct 2002
    Mensagens
    33
    Verdinhas
    0

    Servers de UT nao sao uns botecos..
    hmmmmmmm acho que eu to em lugar errado!!!
    :lol: :lol:

  12. #11
    ;;;
    ;;; está offline
    Membro
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Mar 2002
    Mensagens
    1.401
    Verdinhas
    0

    Originalmente enviada por $171$LaLaU
    hmmmmmmm acho que eu to em lugar errado!!!
    :lol: :lol:
    ixi
    eu tb !

  13. #12
    UmK
    UmK está offline
    Suspenso
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Aug 2000
    Mensagens
    12.180
    Verdinhas
    7

    Originalmente enviada por [dNb]Slater
    ixi
    eu tb !
    fuckoff then

    intruso fdp

  14. #13
    Suspenso
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Oct 2000
    Mensagens
    2.847
    Verdinhas
    1

    É verdade, o Lz ta certo.

    ORG 8000H
    ;************************************************* *********************************************
    ;* INICIALIZAÇÃO DO PROGRAMA - VALORES INICIAIS DAS VARIÁVEIS E CONTROLE DO DISPLAY *
    ;************************************************* ********************************************* *

    INICIO: MOV B,#00H
    MOV R3,#00H
    MOV R4,#00H
    MOV R1,#00H
    MOV R5,#00H ;UNIDADE DO ULTIMO NUMERO DIGITADO
    MOV R6,#30H ;DEZENA DO ULTIMO NUMERO DIGITADO
    MOV R7,#00H ;UNIDADE DA PRIMEIRA PARCELA
    MOV R2,#30H ;DEZENA DA PRIMEIRA PARCELA

    MOV DPTR,#9500H ;INICIA FLAG
    MOV A,#00H
    MOVX @DPTR,A

    JNB TI,$ ;pula linha
    CLR TI
    MOV SBUF,#0AH
    JNB TI,$

    JNB TI,$ ;posiciona cursor no início da linha
    CLR TI
    MOV SBUF,#0DH
    JNB TI,$


    MOV DPTR,#2000H ;ESCREVE NO DISPLAY
    MOV A,#38H ;DEFINE DISPLAY COMO MATRIZ DE DUAS LINHAS
    MOVX @DPTR,A
    MOV R3,#00H
    ACALL ATR

    INC DPTR
    MOV A,#38H
    MOVX @DPTR,A
    MOV R3,#00H
    ACALL ATR

    INC DPTR
    MOV A,#07H ; DESLOCA CURSOR A ESQUERDA
    MOVX @DPTR,A
    MOV R3,#00H
    ACALL ATR

    INC DPTR
    MOV A,#0EH ; PARA DE PISCAR
    MOVX @DPTR,A
    MOV R3,#00H
    ACALL ATR

    INC DPTR
    MOV A,#01H ; LIMPA DISPLAY
    MOVX @DPTR,A
    MOV R3,#00H
    ACALL ATR

    INC DPTR
    MOV A,#90H ; POSICIONA CURSOR A DIREITA
    MOVX @DPTR,A
    MOV R3,#00H
    ACALL ATR

    MOV R3,#00H

    ;************************************************* *********************************************
    ;* LOOP - ROTINA DE LEITURA DO TECLADO *
    ;* *
    ;* AQUI FAZ-SE A LEITURA DE UMA COLUNA POR VEZ. ENERGIZA-SE A COLUNA 1 E VERIFICANDO SE ALGUMA*
    ;* CHAVE DESTA COLUNA ESTA FECHADA (TECLA APERTADA). EM SEGUIDA REPETE-SE O PROCEDIMENTO PARA *
    ;* AS DEMAIS COLUNAS. SE ALGUMA TECLA FOI APETADA O PROGRAMA, (JUNTO COM A INFORMAÇÃO DE QUAL *
    ;* TECLA FOI ACIONADA) É DESVIADO PARA A ROTINA WRITE. CASO CONTRARIO O TECLADO É "VARRIDO" *
    ;* INDEFINIDAMENTE. *
    ;* *
    ;* OBSERVAÇÃO: DEVE-SE INVERTER O CONECTOR P1 (KEYBOARD) DA PLACA EXPERIMENTAL, POIS A PLACA *
    ;* EM QUE ESTA ROTINA FOI TESTA A PRIMEIRA VEZ ESTAVA COM O MESMO INVERTIDO. FATO QUE SÓ FOI *
    ;* NOTADO POSTERIORMENTE. COMO UMA VEZ INVERTIDO O CONECTOR NÃO HÁ INFLUÊNCIA NO FUNCIONAMENTO*
    ;* DO PROGRAMA, ESTE FATO NÃO FOI CORRIGIDO. *
    ;************************************************* *********************************************

    LOOP: MOV P1,#0FEH ;COLUNA 1

    ACALL READ
    CJNE A,#0EEH,L4
    MOV R1,#37H
    MOV R5,#37H
    AJMP WRITE


    L4: CJNE A,#0DEH,L1
    MOV R1,#34H
    MOV R5,#34H
    AJMP WRITE


    L1: CJNE A,#0BEH,L0
    MOV R1,#31H
    MOV R5,#31H
    AJMP WRITE


    L0: CJNE A,#07EH,L8
    MOV R1,#30H
    MOV R5,#30H
    AJMP WRITE


    L8: MOV P1,#0FDH ;COLUNA 2
    ACALL READ

    CJNE A,#0EDH,L5
    MOV R1,#38H
    MOV R5,#38H
    AJMP WRITE


    L5: CJNE A,#0DDH,L2
    MOV R1,#35H
    MOV R5,#35H
    AJMP WRITE


    L2: CJNE A,#0BDH,LI
    MOV R1,#32H
    MOV R5,#32H
    AJMP WRITE

    LI: CJNE A,#07DH,L9
    MOV R1,#3DH
    AJMP WRITE


    L9: MOV P1,#0FBH ;COLUNA 3
    ACALL READ

    CJNE A,#0EBH,L6
    MOV R1,#39H
    MOV R5,#39H
    AJMP WRITE


    L6: CJNE A,#0DBH,L3
    MOV R1,#36H
    MOV R5,#36H
    AJMP WRITE


    L3: CJNE A,#0BBH,LS
    MOV R1,#33H
    MOV R5,#33H
    AJMP WRITE


    LS: CJNE A,#07BH,LM
    MOV R1,#2AH
    AJMP WRITE


    LM: MOV P1,#0F7H ;COLUNA 4
    ACALL READ

    CJNE A,#0E7H,LT
    MOV R1,#2BH
    AJMP WRITE


    LT: CJNE A,#0D7H,LL
    MOV R1,#02DH
    AJMP WRITE


    LL: CJNE A,#0B7H,LE
    MOV R1,#20H
    AJMP WRITE


    LE: CJNE A,#077H,VOL
    MOV R1,#0AH
    AJMP WRITE

    VOL: AJMP LOOP

    ;************************************************* *********************************************
    ;* ROTINA DE DE-BOUNCE *
    ;* *
    ;* O VALOR LIDO É COMPARADADO COM UMA NOVA LEITURA FEITA APÓS CERTO UM INTERVALO DE TEMPO. SE *
    ;* O VALOR MANTEM-SE IGUAL POR 21 LEITURAS CONSECUTIVAS O VALOR (OU A TECLA ACIONADA) É *
    ;* DECLARADO VÁLIDO. *
    ;************************************************* *********************************************

    READ: MOV A,P1 ;LEITURA COM DEBOUNCE-INICIO
    MOV B,A

    EX: INC R4 ;GASTA TEMPO
    CJNE R4,#0FFH,EX
    MOV R4,#00

    MOV A,P1
    CJNE A,B,ZERA
    INC R3
    CJNE R3,#15H,READ
    RET ;FIM DO DEBOUNCE

    ZERA: MOV R3,#00H ;ROTINA USADA NO DEBOUNCE
    AJMP READ

    ;************************************************* ********************************************
    ;* ROTINA WRITE *
    ;* ESCREVE OS VALORES LIDOS NA TELA COMPUTADOR E DO DISPLAY E FAZ A CHAMADA DAS ROTINAS ONDE *
    ;* ESTÃO CONTIDAS AS INTRUÇÕES DE CONTROLE O OPERAÇÃO DA CALCULADORA. *
    ;************************************************* ********************************************

    WRITE: JNB TI,$ ;ESCREVE O VALOR LIDO NO TECLADO NA TELA DO COMPUTADOR
    CLR TI
    MOV SBUF,R1
    JNB TI,$

    MOV DPTR,#2010H ;ESCREVE O VALOR LIDO NO TECLADO NO DIPLAY
    MOV A,R1
    MOVX @DPTR,A
    MOV R3,#00H
    ACALL ATR

    MOV R4,#00

    CJNE R1,#2BH,IGUA
    MOV A,R5 ;EXECUTA SE A TECLA 'M'(SOMA) FOI ACIONADA
    MOV R7,A
    MOV A,R6
    MOV R2,A
    MOV R6,#30H
    MOV DPTR,#9500H ; ZERA FLAG
    MOV A,#00H
    MOVX @DPTR,A
    AJMP LOOP ;FIM DO WRITE


    IGUA: CJNE R1,#3DH,LIMP ;ROTINA "TECLA SOMA NAO ACIONADA"
    AJMP TEST1

    LIMP: CJNE R1,#20H,DEZE ;LIMPA DISPLAY (TECLA "L")
    AJMP INICIO

    DEZE: MOV DPTR,#9500H ;ROTINA UNIDADE-DEZENA (NEM '=',NEM '+' ACIONADOS)
    MOVX A,@DPTR
    CJNE A,#01H,SET
    MOV DPTR,#9502H
    MOVX A,@DPTR
    MOV R6,A
    AJMP LOOP

    SET: MOV DPTR,#9500H ;FLAG
    MOV A,#01H
    MOVX @DPTR,A
    MOV DPTR,#9502H
    MOV A,R5
    MOVX @DPTR,A
    AJMP LOOP
    ;************************************************* *********************************************
    ;* AS ROTINAS ABAIXO: TEST1, TESTE2, SOMAU, SOMAD E VAI1 SÃO UTILIZADAS NA OPERAÇÃO DE SOMA *
    ;************************************************* *********************************************

    TEST1: CJNE R7,#30H,SOMAU ;EXECUTA TESTE USADO NA ROTINA SOMAU
    MOV A,R5
    MOV R7,A
    AJMP TEST2

    SOMAU: DEC R7 ;EXECUTA SOMA DAS UNIDADES
    INC R5
    CJNE R5,#3AH,TEST1
    AJMP VAI1

    VAI1: INC R2 ;REALIZA OPERAÇÃO DE "VAI 1" QUANDO A SOMA DAS UNIDADES "ESTORA"
    AJMP SOMAD

    TEST2: CJNE R2,#30H,SOMAD ;TESTE USADO NA ROTINA SOMAD
    MOV A,R6
    MOV R2,A
    AJMP RESP

    SOMAD: DEC R2 ;EXECUTA SOMA DAS UNIDADES
    INC R6
    CJNE R6,#3AH,TEST2
    AJMP RESPC


    RESPC: JNB TI,$ ;COLOCA 1 NA TELA E NO DIPLAY QUANDO A SOMA DAS DEZENAS ESTORA
    CLR TI
    MOV R3,#31H
    MOV SBUF,R3
    JNB TI,$

    MOV DPTR,#2010H
    MOV A,R3
    MOVX @DPTR,A
    MOV R3,#00H
    ACALL ATR

    RESP: JNB TI,$
    CLR TI
    MOV SBUF,R2
    JNB TI,$

    MOV DPTR,#2010H
    MOV A,R2
    MOVX @DPTR,A
    MOV R3,#00H
    ACALL ATR

    JNB TI,$
    CLR TI
    MOV SBUF,R7
    JNB TI,$

    MOV DPTR,#2010H
    MOV A,R7
    MOVX @DPTR,A
    MOV R3,#00H
    ACALL ATR

    MOV R6,#30H
    MOV DPTR,#9500H ; ZERA FLAG
    MOV A,#00H
    MOVX @DPTR,A
    AJMP LOOP



    ATR: INC R4 ;ATRASO
    NOP
    CJNE R4,#0FFH,ATR
    MOV R4,#00
    INC R3
    NOP
    CJNE R3,#0FFH,ATR
    RET


    END

  15. #14
    Membro
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Feb 2000
    Mensagens
    762
    Verdinhas
    5

    Pô Sargador! Baixou o nível da discussão, huehuehue.

  16. #15
    Suspenso
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Oct 2000
    Mensagens
    2.847
    Verdinhas
    1

    Originalmente enviada por HellFish
    Pô Sargador! Baixou o nível da discussão, huehuehue.

    Huahuahua, muito boa sua piada

    Sao poucos q vao entender, mas tudo bem hehehe

  17. #16
    Membro
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Oct 2002
    Mensagens
    33
    Verdinhas
    0

    eh pode me considerar um dos que naum entendeu sargay!!!
    uiiiiii
    bjundas

  18. #17
    Membro
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Jun 2001
    Mensagens
    5.672
    Verdinhas
    1

    Originalmente enviada por $171$LaLaU
    eh pode me considerar um dos que naum entendeu sargay!!!
    uiiiiii
    bjundas
    mas tu é uma idiota mesmo

    e aí lalinha, como vai sua irmã, a andréia?

    See ya! []'s

  19. #18
    Membro Avatar de Diego - Evil
    Info Conteúdo e Citações Jogos Mensageiros
    Loading...
    Registro
    Jun 2002
    Mensagens
    8.645
    Verdinhas
    1433

    Qual e o objetivo dessa piada na terra??....ja virao q nao entendy....ehehe

  20. #19
    Suspenso
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    Oct 2000
    Mensagens
    2.847
    Verdinhas
    1

    Bom, esse negocio de abaixar o nivel da conversa é pq o programa q eu mandei é em assembly q é uma linguagem de mais baixo nivel do q C.

  21. #20
    Membro
    Info Conteúdo e Citações Jogos Mensageiros
    Registro
    May 2001
    Mensagens
    292
    Verdinhas
    1

    Originalmente enviada por Sargador
    Bom, esse negocio de abaixar o nivel da conversa é pq o programa q eu mandei é em assembly q é uma linguagem de mais baixo nivel do q C.
    Huahuahuahuahua, na minha époka isso era feito direto nos fios dos IBM's.

+ Responder Tópico Ir para o Fórum

Assuntos do tópico

Compartilhar

Permissões