[zxspectrum] Re: Z88DK Sprite Pack + stranezza

BODRATO Stefano wrote:

questa la so io spero ;)
invece che utilizzare le istruzioni
LD      BC,porta
IN      A,(C)

puoi scrivere
LD      A,msb_porta
IN      A,(lsb_porta)

l'effetto e' la lettura dalla porta di i/o (a 16 bit di indirizzo ) selezionata... nel tuo esempio l'indirizzo e' $fdfe..



*shock* .. vabbeh, non provo neanche a spiegare cosa pensavo.


Ma allora l'istruzione "out (NN),a" come funziona ?
C'è un'asimmetria tra la IN e la OUT ?


Secondo la "bibbia" dello Z80 di Rodnay Zaks, la situazione sembrerebbe asimmetrica. Pare che in uscita l'indirizzamento di porte di I/O sia di soli 256 porte, mentre quelle di input sono 65536.

Infatti anche l'istruzione OUT (C),r pare non usare il registro B per l'indirizzamento.

Comunque l'istruzione OUT (n),A avrebbe poco senso se il byte piu' alto fosse indirizzato da A.

Paolo


Other related posts: