Z80 port map

Some infos from User:kyuusaku

The decode mask for reading ports is always $0C. The one for writes is indicated for each case.

Note that the M1 ROM bankswitching is done by reading ports.

SNK used an obscure feature of the Z80: when accessing ports, the top address bus byte is set to register C.

The banks can be chosen by putting the bank number in C, and doing IN A,(port). This is handled by in cartridges.

Some sound drivers use port $C0 (and others ?) in their code. Since only SDA2 and SDA3 are used for port decoding, port $C0 maps to a mirror of port $00. It's believed to be a remnant of some development tool.