SNES Development
BS-X MMIO

The BS-X cartridge has a MMIO included in Memory 00-0f:5000. (Info taken from bsnes and sd2snes’ verilog source)

They all do different things to the Memory, and is NECESSARY, to run games, and other stuff.

We will call them from r00 to r0f. Those have only one bit that can be set.

Memory-mapped I/O

r00: Unknown, for now.

r01: 0=Map Data Pack depending on r02.
     1=Map BS-X PSRAM depending on r02.

r02: 0=LoROM Mode
     1=HiROM Mode

r03: 0=Do not map BS-X PSRAM
     1=Map BS-X PSRAM to $60-6f:$0000-ffff

r04:
r05: 0=Map BS-X PSRAM to $40-4f:$0000-ffff
     1=Do not map BS-X PSRAM

r06: 0=Map BS-X PSRAM to $50-5f:$0000-ffff
     1=Do not map BS-X PSRAM

r07: 0=Do not map BS-X ROM.
     1=Map BS-X ROM to $00-1f:$8000-ffff

r08: 0=Do not map BS-X ROM.
     1=Map BS-X ROM to $80-9f:$8000-ffff

r09: Unknown, for now.
r0a: Unknown, for now.
r0b: Unknown, for now.
r0c: Unknown, for now.
r0d: Unknown, for now.
r0e: Unknown, for now.
r0f: Unknown, for now.