INES Mapper 031: Difference between revisions
Rainwarrior (talk | contribs) (forgot another release: RNDM (ROM is not publicly released for this one, though)) |
(switch § Overview to infobox) |
||
(11 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
'''iNES Mapper 031''' represents a mapper created to facilitate cartridge compilations of [[NSF]] music. It implements a common subset of the features used by NSFs. | {{Infobox_iNES_mapper | ||
|name=NSF subset | |||
|company=varies (homebrew) | |||
|boards=unknown (homebrew) | |||
|mapper=31 | |||
|complexity=CPLD | |||
|prgmax=1024K | |||
|prgpage=4K | |||
|chrmax=8K | |||
|chrpage=n/a | |||
|busconflicts=Not applicable | |||
}}'''iNES Mapper 031''' represents a mapper created to facilitate cartridge compilations of [[NSF]] music. It implements a common subset of the features used by NSFs. | |||
PRG-ROM is bankswitched in 8 x 4 kB banks from $8000-FFFF. These are controlled by registers at $5FF8-$5FFF like the NSF mapper. The high bank at $F000-FFFF is initialized to the last bank at power-on. | PRG-ROM is bankswitched in 8 x 4 kB banks from $8000-FFFF. These are controlled by registers at $5FF8-$5FFF like the NSF mapper. The high bank at $F000-FFFF is initialized to the last bank at power-on. | ||
Line 9: | Line 20: | ||
Examples: | Examples: | ||
* ''2A03 Puritans'' ([http://rainwarrior.ca/projects/nes/2a03puritans.html ROM]) | * ''2A03 Puritans'' ([http://rainwarrior.ca/projects/nes/2a03puritans.html ROM]) | ||
* ''Famicompo Pico | * ''Famicompo Pico'' ([http://rainwarrior.ca/projects/nes/pico.html ROMs]) | ||
* ''RNDM'' ([http://megaranmusic.com/album/rndm info]) | * ''RNDM'' ([http://megaranmusic.com/album/rndm info]) | ||
* '' | * ''EZNSF'' ([//forums.nesdev.org/viewtopic.php?t=15204 forum post]) | ||
* ''ZENSF'' ([//forums.nesdev.org/viewtopic.php?f=6&t=17698 forum post]) | |||
* ''Test ROMs'' ([//forums.nesdev.org/viewtopic.php?f=3&t=13120 forum post]) | |||
* | |||
== Registers == | == Registers == | ||
Line 42: | Line 46: | ||
== Emulator support == | == Emulator support == | ||
*BizHawk | * [http://tasvideos.org/BizHawk.html BizHawk] 1.11.2 | ||
* | * [http://www.fceux.com FCEUX] 2.2.3 | ||
* | * [http://mamedev.org/ MAME] 0.162 | ||
* | * [https://www.mesen.ca/ Mesen] 0.9.0 | ||
*Nintendulator 0.975 | * [https://www.qmtpro.com/~nes/nintendulator/ Nintendulator] 0.975 | ||
* [https://openemu.org/ OpenEmu] (FCEUX core) 2.0.3 | |||
* [http://forums.nesdev.org/viewtopic.php?t=6928 puNES] 0.84 | |||
Cartridges: | |||
*[[Everdrive N8]] OS V14 | |||
*[http://www.infiniteneslives.com/nessupplies.php InfiniteNESLives] Mapper 31 board | |||
{{DEFAULTSORT:031}}[[category:Mappers using $4020-$5FFF]] [[category:iNES Mappers]] | {{DEFAULTSORT:031}}[[category:Mappers using $4020-$5FFF]] [[category:iNES Mappers]] |
Latest revision as of 04:15, 3 May 2022
Company | varies (homebrew) |
Complexity | CPLD |
Boards | unknown (homebrew) |
PRG ROM capacity | 1024K |
PRG ROM window | 4K |
PRG RAM capacity | None |
CHR capacity | 8K |
CHR window | n/a |
Nametable mirroring | Fixed H or V, controlled by solder pads |
Bus conflicts | Not applicable |
IRQ | No |
Audio | No |
iNES mappers | 031 |
iNES Mapper 031 represents a mapper created to facilitate cartridge compilations of NSF music. It implements a common subset of the features used by NSFs.
PRG-ROM is bankswitched in 8 x 4 kB banks from $8000-FFFF. These are controlled by registers at $5FF8-$5FFF like the NSF mapper. The high bank at $F000-FFFF is initialized to the last bank at power-on.
There is no CHR banking, so it is recommended to use 8 kB CHR-RAM with this mapper.
As with BNROM and UxROM, there is no mirroring, CHR bank, or IRQ control; this mapper has hardwired H or V mirroring.
Examples:
- 2A03 Puritans (ROM)
- Famicompo Pico (ROMs)
- RNDM (info)
- EZNSF (forum post)
- ZENSF (forum post)
- Test ROMs (forum post)
Registers
PRG bank select $5000-$5FFF
address data 15 bit 0 7 bit 0 ------------------- --------- 0101 .... .... .AAA PPPP PPPP ||| |||| |||| ||| ++++-++++- Select 4 kB PRG ROM bank at slot specified by write address. +++------------ Specify 4 kB bank slot at: $8000 + (AAA * $1000)
The canonical write position for these registers is $5FF8-$5FFF, as used in NSFs.
At power on, the register at $5FFF is set to $FF. Startup code should be placed in the last bank. There is no change to this register on reset.
References
Emulator support
- BizHawk 1.11.2
- FCEUX 2.2.3
- MAME 0.162
- Mesen 0.9.0
- Nintendulator 0.975
- OpenEmu (FCEUX core) 2.0.3
- puNES 0.84
Cartridges:
- Everdrive N8 OS V14
- InfiniteNESLives Mapper 31 board