Paradise Café | Routines |
Prev: 7D35 | Up: Map |
Used by the routine at main.
|
|||||||
desenha_porta | 7D3B | LD A,$10 | INK = Azul | ||||
7D3D | RST $10 | ||||||
7D3E | LD A,$01 | ||||||
7D40 | RST $10 | ||||||
7D41 | LD A,$11 | PAPER = Amarelo | |||||
7D43 | RST $10 | ||||||
7D44 | LD A,$06 | ||||||
7D46 | RST $10 | ||||||
7D47 | LD A,($C34B) | Carrega o valor de var_posicao_da_porta e mete-o em posicao_coluna | |||||
7D4A | LD ($7D35),A | ||||||
7D4D | LD L,$A1 | Caracter a imprimir - Porta | |||||
7D4F | LD C,$07 | Contador C = 7 | |||||
desenha_porta_0 | 7D51 | LD A,($7D35) | Valor de posicao_coluna em A | ||||
7D54 | CALL imprime_coluna_porta | ||||||
7D57 | LD A,($7D35) | Incrementa valor de posicao_coluna | |||||
7D5A | INC A | ||||||
7D5B | LD ($7D35),A | ||||||
7D5E | DEC C | Decrementa Contador C | |||||
7D5F | JR NZ,desenha_porta_0 | Se não for zero salta | |||||
7D61 | LD A,($C34B) | Decrementa var_posicao_da_porta | |||||
7D64 | DEC A | ||||||
7D65 | LD ($C34B),A | ||||||
7D68 | LD A,($7D35) | Valor de posicao_coluna em A | |||||
7D6B | CP $20 | Se for $20 (32) salta para colisao_porta | |||||
7D6D | JP Z,colisao_porta | ||||||
7D70 | CP $FF | Se for $FF (255) - vai dar a volta - salta para desenha_porta_1 | |||||
7D72 | JR Z,desenha_porta_1 | ||||||
7D74 | LD L,$80 | Caracter a imprimr - Normalmente em branco | |||||
7D76 | LD A,$11 | Paper = Vermelho | |||||
7D78 | RST $10 | ||||||
7D79 | LD A,$02 | ||||||
7D7B | RST $10 | ||||||
7D7C | LD A,($7D35) | Limpa a ultima coluna da porta, para dar o efeito de movimento | |||||
7D7F | CALL imprime_coluna_porta | ||||||
7D82 | JP colisao_porta | ||||||
desenha_porta_1 | 7D85 | LD A,$1F | Define var_posicao_da_porta a $1F, o maximo 'a direita | ||||
7D87 | LD ($C34B),A | ||||||
7D8A | JP colisao_porta |
Prev: 7D35 | Up: Map |