INES Mapper 003: Difference between revisions
From NESdev Wiki
Jump to navigationJump to search
(The iNES header can't represent more than 255 CHR banks) |
No edit summary |
||
Line 1: | Line 1: | ||
[[Category:iNES Mappers]] | |||
'''iNES Mapper 003''' is used to designate the [[CNROM]] board and a very similar board used for Panesian games, generalized to support up to 255 banks (2040 KiB) of CHR ROM. | '''iNES Mapper 003''' is used to designate the [[CNROM]] board and a very similar board used for Panesian games, generalized to support up to 255 banks (2040 KiB) of CHR ROM. | ||
[ | Here are Disch's original notes: | ||
======================== | |||
= Mapper 003 = | |||
======================== | |||
aka | |||
-------------------------- | |||
CNROM (and compatible) | |||
Example Games: | |||
-------------------------- | |||
Solomon's Key | |||
Arkanoid | |||
Arkista's Ring | |||
Bump 'n' Jump | |||
Cybernoid | |||
Registers (**BUS CONFLICTS** sometimes): | |||
-------------------------- | |||
$8000-FFFF: [CCCC CCCC] | |||
CHR Reg (selects 8k @ $0000) | |||
Notes: | |||
--------------------------- | |||
CNROM has bus conflicts, however mapper 003 is meant to be CNROM and compatible. So some mappers which were | |||
similar in function, but did not have bus conflicts are included. | |||
Additionally, CNROM's reg is only 2 bits wide... therefore it is capped at 32k CHR. | |||
So to be "safe": | |||
- for homebrewing: assume bus conflicts, do not exceed 32k CHR | |||
- for emudev: assume no bus conflicts, use all 8 reg bits | |||
There is no PRG swapping. | |||
The game Cybernoid seems to behave very strangely. It uses unprepped system RAM... and it is as if it | |||
actually relies on bus conflicts (AND written value with value read from address)! |
Revision as of 23:00, 13 November 2011
iNES Mapper 003 is used to designate the CNROM board and a very similar board used for Panesian games, generalized to support up to 255 banks (2040 KiB) of CHR ROM.
Here are Disch's original notes: ======================== = Mapper 003 = ======================== aka -------------------------- CNROM (and compatible) Example Games: -------------------------- Solomon's Key Arkanoid Arkista's Ring Bump 'n' Jump Cybernoid Registers (**BUS CONFLICTS** sometimes): -------------------------- $8000-FFFF: [CCCC CCCC] CHR Reg (selects 8k @ $0000) Notes: --------------------------- CNROM has bus conflicts, however mapper 003 is meant to be CNROM and compatible. So some mappers which were similar in function, but did not have bus conflicts are included. Additionally, CNROM's reg is only 2 bits wide... therefore it is capped at 32k CHR. So to be "safe": - for homebrewing: assume bus conflicts, do not exceed 32k CHR - for emudev: assume no bus conflicts, use all 8 reg bits There is no PRG swapping. The game Cybernoid seems to behave very strangely. It uses unprepped system RAM... and it is as if it actually relies on bus conflicts (AND written value with value read from address)!