Z80 port map: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
mNo edit summary |
||
| Line 39: | Line 39: | ||
|NMI disable | |NMI disable | ||
|} | |} | ||
Bank selection is made by '''reading''' ports. | |||
SNK used an obscure feature of the Z80: when accessing ports, the entire address bus is set, not only the lower 8 bits. | |||
The banks can then be chosen by putting the bank number in B, the port number in C and doing IN A,(C). | |||
Or by putting the bank number in A and doing IN A,(Port). (to verify) | |||
[[Category:Base system]] | [[Category:Base system]] | ||
Revision as of 04:02, 28 June 2011
| Number | Read | Write |
| $00 | Read sound code from 68k | Clear sound code buffer |
| $08 | NMI enable | |
| $04~$07 | YM2610 I/O | |
| $08 | Set $F000~$F7FF bank | |
| $09 | Set $E000~$EFFF bank | |
| $0A | Set $C000~$DFFF bank | |
| $0B | Set $8000~$BFFF bank | |
| $0C | Reply to 68k | |
| $18 | NMI disable | |
Bank selection is made by reading ports. SNK used an obscure feature of the Z80: when accessing ports, the entire address bus is set, not only the lower 8 bits.
The banks can then be chosen by putting the bank number in B, the port number in C and doing IN A,(C). Or by putting the bank number in A and doing IN A,(Port). (to verify)