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.


[[Category:iNES Mappers]]
  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)!