Vector table swap

From NeoGeo Development Wiki
Revision as of 05:37, 28 October 2015 by Freem (talk | contribs) (BIOS -> system ROM)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

The first $80 bytes of the 68k memory map are swappable between the onboard System ROM and the cartridge's first P ROM.

When the vector tables are swapped, $00~$7F point to $C00000~$C0007F, and $C00000~$C0007F point to the data in the P ROM (if any).

On startup or reset, the first $80 bytes are those found at $C00000~$C0007F, so that the system always starts by executing the initialisation routine.

Right before starting a game, the cart's ROM is swapped in as well as the S ROM and M1 ROM.

Registers REG_SWPBIOS and REG_SWPROM are used for this.