Página 1 de 1

ajuda para um iniciante também no Z80...

MensagemEnviado: 08 Jul 2018 10:28
por renan-papaco
olá pessoal to fazendo um seguinte programa, na qual ele sequencia oito leds para a direita, e quando chega no ultimo, ele inverte e sequencia para a esquerda.
só que não estou sabendo como chamar a rotina para inverte-los, já que se eu colocar a instrução CPL dentro das labels "esquerda" e "direita" ele irá inverter os bits do acumulador direto, em vez de inverter só quando for acabar de sequenciar pra direita, e desinverter quando sequenciar para a esquerda.

será que tenho q setar outra flag para chamar a label para inverter os leds? não posso usar a mesma flag para chamar duas labels(direita e inv)

asm code
.org	00h
ld a,1

direita:
out (255),a
rrca
cp 1
jr z,esquerda
jr z,inv
jr direita

esquerda:
out (255),a
rlca
cp 254
jr z,direita
jr z,inv
jr esquerda

inv:
cpl
jr direita
.end

esse é o código.

como podem ver no video, ele vai pra direita, não inverte e fica o tempo todo pra esquerda.


Re: ajuda para um iniciante também no Z80...

MensagemEnviado: 09 Jul 2018 08:45
por tcpipchip
Eu nao tenho agora aqui o AVSIMZ80 para testar...mas pq nao tenta "rla"

E pq voce faz complemento no acumulador ??????