INES Mapper 180

From NESdev Wiki
Revision as of 23:50, 13 November 2011 by Zeromus (talk | contribs)
Jump to navigationJump to search


INES Mapper 180 is used to represent a reconfiguration of the UNROM board used only for the game Crazy Climber. It is similar in principle to the more common UxROM configuration but uses AND logic (74HC08) instead of OR logic (74HC32), producing a fixed first bank at $8000 rather than a fixed last bank at $C000.

Because APU DMC is usually restricted to $C000-$FFFF, this behavior might be useful for games with a lot of recorded speech. But like BNROM and AxROM, this configuration requires the 6502's vectors to sit in the last few bytes of each bank.

Overview

  • PRG ROM size: 128 KB
  • PRG ROM bank size: 16 KB
  • PRG RAM: None
  • CHR capacity: 8 KB RAM
  • CHR bank size: Not bankswitched
  • Nametable mirroring: Solder pads select vertical or horizontal mirroring
  • Subject to bus conflicts: ?

Banks

  • CPU $8000-$BFFF: 16 KB PRG ROM bank, fixed to the first bank
  • CPU $C000-$FFFF: 16 KB switchable PRG ROM bank

Registers

Bank select ($8000-$FFFF)

7  bit  0
---- ----
xxxx xPPP
      |||
      +++-- Select 16 KB PRG ROM bank for CPU $C000-$FFFF


 Here are Disch's original notes:
 ========================
 =  Mapper 180          =
 ========================
 
 Example Game:
 --------------------------
 Crazy Climber (J)
 
 
 Notes:
 ---------------------------
 This game uses a special input device (the crazy climber controller), so you'll need to emulate that in order
 to really test this mapper.
 
 
 Registers:
 --------------------------
 Don't know whether or not this mapper suffers from bus conflicts.  Use caution!
 
   $8000-FFFF:  [.... .PPP]
     PRG Reg (16k @ $C000)
 
 
 PRG Setup:
 --------------------------
 
       $8000   $A000   $C000   $E000  
     +---------------+---------------+
     |     { 0 }     |     $8000     |
     +---------------+---------------+
 
 
 Powerup:
 --------------------------
 Unsure whether or not the PRG reg is inited to anything specific on startup.  I don't think it is.