INES Mapper 036: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(more certainty)
(should explicitly mention bus conflicts with PRG ROM)
Line 15: Line 15:
  write $4102 or $8000-$FFFF: [..PP ....] - Request 32 KiB PRG bank
  write $4102 or $8000-$FFFF: [..PP ....] - Request 32 KiB PRG bank
  write $4100: activate bankswitch to bitwise NOT of requested bank
  write $4100: activate bankswitch to bitwise NOT of requested bank
  then write $8000-$FFFF (but only the first time): correct bankswitch without extra inversion
  then write $8000-$FFFF: correct bankswitch without extra inversion
  read $4100: [..PP ....] - Return current 32 KiB PRG bank
  read $4100: [..PP ....] - Return current 32 KiB PRG bank
  read or write others: ?
  read or write others: ?
There are bus conflicts on writes to $8000-$FFFF.


This PRG reverse-engineering is confusing but mostly complete
This PRG reverse-engineering is confusing but mostly complete

Revision as of 22:55, 3 April 2016

iNES Mapper 036 is assigned to TXC's PCB 01-22000-400, featuring a 74138, a 74175, and usually a 24-pin ASIC labeled 05-00002-010. Three games are currently known to use it, mostly published by Gluk Video:

  • Strike Wolf
  • Policeman
  • F-15 City War (no ASIC)

Even though these games can evidently be emulated as a weird kind of GNROM, the hardware does something quite different:

The CHR banking is definitely implemented using the two 7400-series ICs:

Mask: $E200
write $4200: [.... CCCC] - Select 8 KiB CHR bank

The PRG banking is part of the ASIC:

Mask: $E103
write $4102 or $8000-$FFFF: [..PP ....] - Request 32 KiB PRG bank
write $4100: activate bankswitch to bitwise NOT of requested bank
then write $8000-$FFFF: correct bankswitch without extra inversion
read $4100: [..PP ....] - Return current 32 KiB PRG bank
read or write others: ?

There are bus conflicts on writes to $8000-$FFFF.

This PRG reverse-engineering is confusing but mostly complete

See also: