Mapper
From WSdev Wiki
Jump to navigationJump to search
There are three documented memory-mapping chips used on the WonderSwan and Pocket Challenge V2:
- Bandai 2001
- Bandai 2003
- KARNAK (Pocket Challenge V2 cartridges only)
All three provide this same common subset for memory banking:
Category | Port | Description | Bits | Type | Notes |
---|---|---|---|---|---|
Extended bankswitching | $C0 | ROM Linear (EX) Bank | 00BB bbbb | RW8 | Selects a 1MiB bank accessed via memory addresses 0x40000 - 0xFFFFF.
Note that only the top 768KiB of said bank can be read this way. |
$C1 | RAM Bank | bbbb bbbb | RW8 | Selects a 64KiB bank accessed via memory addresses 0x10000 - 0x1FFFF. | |
$C2 | ROM0 Bank | bbbb bbbb | RW8 | Selects a 64KiB bank accessed via memory addresses 0x20000 - 0x2FFFF. | |
$C3 | ROM1 Bank | bbbb bbbb | RW8 | Selects a 64KiB bank accessed via memory addresses 0x30000 - 0x3FFFF. |
Note that the number of bits in the Linear bank register depends on the mapper.
The "mono" WonderSwan expects that the register at $C3 will power up holding $FF.