AxROM: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(→‎Variants: even though 3/4 of games on this board are by Rare, I'm getting pressure to be pedantically correct here http://forums.nesdev.com/viewtopic.php?f=16&t=9825)
m (updated nescartdb AxROM link so it points directly to that domain)
 
(31 intermediate revisions by 9 users not shown)
Line 1: Line 1:
The generic designation AxROM refers to Nintendo cartridge boards NES-AMROM, NES-ANROM, NES-AN1ROM, NES-AOROM, their [[Famicom|HVC]] counterparts, and clone boards. Most games developed by [[Rare|Rare Ltd.]] used an AxROM series board. The [[iNES]] format assigns [[iNES Mapper 007|mapper 7]] to AxROM.
[[Category:Discrete logic mappers]] [[Category:Nintendo licensed mappers]] [[Category:Mappers with CHR RAM]][[Category:NES 2.0 mappers with submappers]] [[Category:Mappers with bus conflicts]][[Category:Mappers with single-screen mirroring]]{{Infobox_iNES_mapper
|name=AxROM
|company=Nintendo, Rare, others
|mapper=7
|nescartdbgames=34
|complexity=Discrete logic
|boards=AMROM, ANROM, <br>AN1ROM, AOROM, others
|prgmax=256K
|prgpage=32K
|wrammax=None
|wrampage=n/a
|chrmax=8K
|chrpage=n/a
|mirroring=1 page switchable
|busconflicts=AMROM/AOROM only
}}
{{nesdbbox
|ines|7|iNES 007
|unif_wild|-A%ROM|AxROM
|unif_wild|AMROM|AMROM
|unif_wild|ANROM|ANROM
|unif_wild|AN1ROM|AN1ROM
|unif_wild|AOROM|AOROM
}}
 
The generic designation '''AxROM''' refers to Nintendo cartridge boards '''NES-AMROM''', '''NES-ANROM''', '''NES-AN1ROM''', '''NES-AOROM''', their [[Famicom|HVC]] counterparts, and clone boards. AxROM and compatible boards are implemented in [[iNES]] format with '''iNES Mapper 7'''.
 
== Board types ==


The following AxROM boards are known to exist:
The following AxROM boards are known to exist:
{| class="wikitable"
{| class="tabular"
! Board || PRG ROM || Bus conflicts
! Board || PRG ROM || Bus conflicts
|-
|-
Line 11: Line 38:
|AN1ROM || 64 KB || No
|AN1ROM || 64 KB || No
|-
|-
|AOROM || 128, 256 KB || Depends on +CE wiring
|AOROM || 128 / 256 KB || Depends on +CE wiring
|}
|}


== Overview ==
== Overview ==
Line 19: Line 45:
* PRG ROM bank size: 32 KB
* PRG ROM bank size: 32 KB
* PRG RAM: None
* PRG RAM: None
* CHR capacity: 8 KB RAM [[Category:Mappers with CHR RAM]]
* CHR capacity: 8 KB RAM  
* CHR bank size: Not bankswitched
* CHR bank size: Not bankswitched
* Nametable [[mirroring]]: Single-screen, mapper-selectable
* Nametable [[mirroring]]: Single-screen, mapper-selectable
* Subject to [[bus conflict]]s: AMROM/AOROM only [[Category:Mappers with bus conflicts]]
* Subject to [[bus conflict]]s: AMROM/AOROM only  


== Banks ==
== Banks ==
Line 44: Line 70:
== Various notes ==
== Various notes ==


On the AOROM board, special mask ROMs with an additional positive CE on pin 2 (which is connected to PRG R/W) can be used to prevent bus conflicts without an additional chip. Some 128 KB games were made with AOROM to save the cost of a 74HC02. It seems that only ''Double Dare'' and ''Wheel of Fortune'' employ this trick noticeably--that is, if emulated with bus conflicts enabled, the games will glitch.  [http://bootgod.dyndns.org:7777/search.php?keywords=7&kwtype=pcb The list of AxROM games in NesCartDB] lacks quality coverage of the PCB backs for the AOROM games, so it is hard to determine yet which games may be wired this way.
On the AOROM board, special mask ROMs with an additional positive CE on pin 31 (which is connected to PRG R/W) can be used to prevent bus conflicts without an additional chip. Some 128 KB games were made with AOROM to save the cost of a 74HC02. It seems that only ''Double Dare'' and ''Wheel of Fortune'' employ this trick noticeably--that is, if emulated with bus conflicts enabled, the games will glitch.  [https://nescartdb.com/search/advanced?ines_op=equal&ines=7 The list of AxROM games in NesCartDB] lacks quality coverage of the PCB backs for the AOROM games, so it is hard to determine yet which games may be wired this way.


It is likely that every retail AOROM game could be emulated correctly without emulating bus conflicts.
It is likely that every retail AOROM game could be emulated correctly without emulating bus conflicts.


== Variants ==
== Variants ==
The only difference between AMROM and [[BNROM]] is the mirroring configuration.
[[BNROM]] is the same as AMROM except it uses a fixed horizontal or vertical mirroring.


In theory, it would be possible to implement the bank select register with a [[74377|74HC377]] octal D latch, allowing up to 512 kilobytes of PRG ROM, but the possibility never ended up used during the NES era for a reason that has since been lost to time.
Some emulators allow bit 3 to be used to select up to 512 KB of PRG ROM for an oversized AxROM. In hardware this could be implemented by using an octal latch in place of the quad latch ([[74377|74HC377]]).


== Disch's Notes ==
The pirate multicart and unlicensed music game ''Hot Dance 2000'' uses a 512 KB AxROM variant.


  Here are Disch's original notes:
A ROM Hack of Battletoads expanded the ROM size to 512 KB.
  ========================
  =  Mapper 007          =
  ========================
 
  aka
  --------------------------
  AxROM
 
 
  Example Games:
  --------------------------
  Battletoads
  Time Lord
  Marble Madness
 
 
  Notes:
  ---------------------------
  AMROM and AOROM have bus conflicts, ANROM does not
  AMROM and ANROM are capped at 128k PRG
  AOROM is capped at 256k PRG
 
  There is no CHR swapping. Every mapper 007 game I've ever seen has CHR-RAM.
 
 
  Registers (**BUS CONFLICTS** sometimes):
  --------------------------
    $8000-FFFF:  [...M .PPP]
      M = Mirroring:
          0 = 1ScA
          1 = 1ScB
 
      P = PRG Reg  (only 2 bits wide on AMROM/ANROM)
 
 
  PRG Setup:
  --------------------------
 
        $8000  $A000  $C000  $E000 
      +-------------------------------+
      |            $8000            |
      +-------------------------------+


[[Category:Discrete logic mappers]][[Category:in NesCartDB]]
== See also ==
*[http://nesdev.org/mappers.zip Comprehensive NES Mapper Document] by \Firebug\, information about mapper's initial state is inaccurate.

Latest revision as of 17:37, 4 February 2024

AxROM
Company Nintendo, Rare, others
Games 34 in NesCartDB
Complexity Discrete logic
Boards AMROM, ANROM,
AN1ROM, AOROM, others
PRG ROM capacity 256K
PRG ROM window 32K
PRG RAM capacity None
PRG RAM window n/a
CHR capacity 8K
CHR window n/a
Nametable mirroring 1 page switchable
Bus conflicts AMROM/AOROM only
IRQ No
Audio No
iNES mappers 007


The generic designation AxROM refers to Nintendo cartridge boards NES-AMROM, NES-ANROM, NES-AN1ROM, NES-AOROM, their HVC counterparts, and clone boards. AxROM and compatible boards are implemented in iNES format with iNES Mapper 7.

Board types

The following AxROM boards are known to exist:

Board PRG ROM Bus conflicts
AMROM 128 KB Yes
ANROM 128 KB No
AN1ROM 64 KB No
AOROM 128 / 256 KB Depends on +CE wiring

Overview

  • PRG ROM size: up to 256 KB
  • PRG ROM bank size: 32 KB
  • PRG RAM: None
  • CHR capacity: 8 KB RAM
  • CHR bank size: Not bankswitched
  • Nametable mirroring: Single-screen, mapper-selectable
  • Subject to bus conflicts: AMROM/AOROM only

Banks

  • CPU $8000-$FFFF: 32 KB switchable PRG ROM bank

Solder pad config

No solder pad config is needed on the AxROM board family.

Registers

Bank select ($8000-$FFFF)

7  bit  0
---- ----
xxxM xPPP
   |  |||
   |  +++- Select 32 KB PRG ROM bank for CPU $8000-$FFFF
   +------ Select 1 KB VRAM page for all 4 nametables

Hardware

The AxROM boards contain a 74HC161 binary counter used as a quad D latch (4-bit register). The ANROM and AN1ROM boards also contains a 74HC02 which is used to disable the PRG ROM during writes, thus avoiding bus conflicts.

Various notes

On the AOROM board, special mask ROMs with an additional positive CE on pin 31 (which is connected to PRG R/W) can be used to prevent bus conflicts without an additional chip. Some 128 KB games were made with AOROM to save the cost of a 74HC02. It seems that only Double Dare and Wheel of Fortune employ this trick noticeably--that is, if emulated with bus conflicts enabled, the games will glitch. The list of AxROM games in NesCartDB lacks quality coverage of the PCB backs for the AOROM games, so it is hard to determine yet which games may be wired this way.

It is likely that every retail AOROM game could be emulated correctly without emulating bus conflicts.

Variants

BNROM is the same as AMROM except it uses a fixed horizontal or vertical mirroring.

Some emulators allow bit 3 to be used to select up to 512 KB of PRG ROM for an oversized AxROM. In hardware this could be implemented by using an octal latch in place of the quad latch (74HC377).

The pirate multicart and unlicensed music game Hot Dance 2000 uses a 512 KB AxROM variant.

A ROM Hack of Battletoads expanded the ROM size to 512 KB.

See also