Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SNES memory map for Super Mario World.
- Based on some documents online, but ultimately tested on lsnes (bsnes fork with rerecording tools) with the Super Mario World (NTSC-U) ROM.
- Open Bus means unmapped area: http://wiki.superfamicom.org/snes/show/Open+Bus
- +=========+=============+====================================+=========+
- | Bank | Offset | Definition | Shadow |
- +=========+=============+====================================+=========+
- | $00-$1F | $0000-$1FFF | LowRAM | $7E |
- | | $2000-$40FF | Open Bus (PPU1, APU) | $00-$3F | note: $4016 4017 are old style joypad registers *
- | | $4100-$41FF | Open Bus | $00-$3F |
- | | $4200-$44FF | Controllers/hardware/Open Bus | $00-$3F |
- | | $4500-$7FFF | Open Bus | ------- |
- | | $8000-$FFFF | ROM | ------- |
- +---------+-------------+------------------------------------+---------+
- | $20-$3F | $0000-$1FFF | LowRAM | $7E |
- | | $2000-$40FF | Open Bus (PPU1, APU) | $00-$3F | note: $4016 4017 are old style joypad registers *
- | | $4100-$41FF | Open Bus | $00-$3F |
- | | $4200-$44FF | Controllers/hardware/Open Bus | $00-$3F |
- | | $4500-$5FFF | Open Bus | $00-$3F |
- | | $6000-$7FFF | SRAM (2KBytes, repeated) | ------- |
- | | $8000-$FFFF | ROM | $80-$BF |
- +---------+-------------+------------------------------------+---------+
- | $40-$6F | $0000-$7FFF | Open Bus | ------- |
- | | $8000-$FFFF | ROM | $C0-$DF |
- +---------+-------------+------------------------------------+---------+
- | $70-$7D | $0000-$FFFF | SRAM (2KBytes, repeated) | ------- |
- +---------+-------------+------------------------------------+---------+
- | $7E | $0000-$1FFF | LowRAM | $00-$3F |
- | | $2000-$7FFF | HighRAM | ------- |
- | | $8000-$FFFF | Expanded RAM | ------- |
- +---------+-------------+------------------------------------+---------+
- | $7F | $0000-$FFFF | Expanded RAM | ------- |
- +---------+-------------+------------------------------------+---------+
- | $80-$9F | $0000-$FFFF | Mirror of $00-$1F | $00-$1F |
- +---------+-------------+------------------------------------+---------+
- | $A0-$BF | $0000-$FFFF | Mirror of $20-$3F | $20-$3F |
- +---------+-------------+------------------------------------+---------+
- | $A0-$DF | $0000-$FFFF | Mirror of $40-$6F | $40-$6F |
- +---------+-------------+------------------------------------+---------+
- | $E0-$FF | $0000-$FFFF | SRAM (2KBytes, repeated) | ------- |
- +=========+=============+====================================+=========+
- * lsnes note: it's better to not even read the range from $2000-$3fff, because some addresses WILL cause desyncs and graphical bugs.
Advertisement
Add Comment
Please, Sign In to add comment