NES 2.0 Mapper 282: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(Odd D003 behavior verified with real JY-101 cartridge.)
(Added category.)
 
(2 intermediate revisions by one other user not shown)
Line 4: Line 4:
* ''1997 Super HIK 21-in-1 (JY-105)''
* ''1997 Super HIK 21-in-1 (JY-105)''
* ''1998 Super HIK 5-in-1 (JY-114)''
* ''1998 Super HIK 5-in-1 (JY-114)''
Each of them have 1 MiB each of PRG-ROM and CHR-ROM. Register $D003 controls 256 KiB outer banks, and extended nametable mirroring is selected via bit 3 of $D001. It is otherwise similar to [[INES Mapper 090|Mapper 90]].
* ''Super 25-in-1 Final Fight (SC-128)''
 
Each of them have 1 MiB each of PRG-ROM and CHR-ROM. They use the [[J.Y. Company ASIC]]. Register $D003 controls 256 KiB outer banks.
=Registers=
$8000-$D000, $D002: As [[INES Mapper 090|Mapper 90]].
 
==Nametable Mirroring Control Register ($D001)==
Mask: $F003


==Outer Bank Register ($D003)==
Mask: $F003
  7654 3210
  7654 3210
  ---- ----
  ---- ----
  .... E.MM
  ..LM CPPc
      | ++- Select nametable mirroring if bit 3==0
  || |||+- Select 256 KiB outer CHR-ROM bank (CHR A18), ignored if L=1
      |     0: Vertical
  || |++-- Select 256/512 KiB outer PRG-ROM bank
      |     1: Horizontal
  || +---- If bit 4==1: Select 512 KiB outer CHR-ROM bank
      |     2: One-screen page 0
  |+------ 0: Ignore bit 3
      |     3: One-screen page 1
  |       1: Obey bit 3
      +---- Select extended nametable mirroring
  +------- Select outer CHR-ROM bank size
            0: Disabled, use $D001 bits 0-1
            0: Mask $900x/$A00x to 256 KiB, use c
            1: Enabled, use $B000-$B007
            1: Mask $900x/$A00x to 512 KiB, ignore c


==Outer Bank Register ($D003)==
PRG ($8000-$8FFF) and CHR ($9000-$AFFF) bank select register bits that select 256 KiB banks (L=0)/512 KiB banks (L=1) are masked off.
Mask: $F003
7654 3210
---- ----
...M CPPC
    | |||+- Select 256 KiB outer CHR-ROM bank
    | |++-- Select 256/512 KiB outer PRG-ROM bank
    | +---- If bit 4==1: Select 512 KiB outer CHR-ROM bank
    +------ 0: Ignore bit 3
            1: Obey bit 3


=Notes=
For a description of all other registers, see [[J.Y. Company ASIC]].
* PRG ($8000-$8FFF) and CHR ($9000-$AFFF) bank select register bits that select 256/512 KiB banks are masked off.


=Trivia=
=Trivia=
Some of the multicarts show different version of menu according to what $5000 is returned from the mapper (the value that is read is masked with $C0, so only bits 7 & 6 matters.):
Some of the multicarts show different version of menu according to what $5000 is returned from the mapper (the value that is read is masked with $C0, so only bits 7 & 6 matters.):
1997 Super HIK 18-in-1 (JY-101)
  $00  -> 18 in 1
  $40  -> 900 in 1
  $80  -> 1600 in 1
  $C0  -> 6000000 in 1


  1997 Super HIK 21-in-1 (JY-105)
  1997 Super HIK 21-in-1 (JY-105)
Line 47: Line 41:
   $C0  -> 7000000 in 1
   $C0  -> 7000000 in 1
    
    
1997 Super HIK 18-in-1 (JY-101)
{{DEFAULTSORT:282}}[[Category:INES Mappers|282]][[Category:Mappers with ROM nametables|282]][[Category:Mappers with scanline IRQs|282]][[Category:Mappers with cycle IRQs|282]][[Category:Mappers using J.Y. Company ASIC]]
  $00  -> 18 in 1
  $40  -> 900 in 1
  $80  -> 1600 in 1
  $C0  -> 6000000 in 1

Latest revision as of 00:19, 8 December 2021

NES 2.0 Mapper 282 is used by at least three J.Y. multicarts:

  • 1997 Super HIK 18-in-1 (JY-101)
  • 1997 Super HIK 21-in-1 (JY-105)
  • 1998 Super HIK 5-in-1 (JY-114)
  • Super 25-in-1 Final Fight (SC-128)

Each of them have 1 MiB each of PRG-ROM and CHR-ROM. They use the J.Y. Company ASIC. Register $D003 controls 256 KiB outer banks.

Outer Bank Register ($D003)

Mask: $F003

7654 3210
---- ----
..LM CPPc
  || |||+- Select 256 KiB outer CHR-ROM bank (CHR A18), ignored if L=1
  || |++-- Select 256/512 KiB outer PRG-ROM bank
  || +---- If bit 4==1: Select 512 KiB outer CHR-ROM bank
  |+------ 0: Ignore bit 3
  |        1: Obey bit 3
  +------- Select outer CHR-ROM bank size
            0: Mask $900x/$A00x to 256 KiB, use c
            1: Mask $900x/$A00x to 512 KiB, ignore c

PRG ($8000-$8FFF) and CHR ($9000-$AFFF) bank select register bits that select 256 KiB banks (L=0)/512 KiB banks (L=1) are masked off.

For a description of all other registers, see J.Y. Company ASIC.

Trivia

Some of the multicarts show different version of menu according to what $5000 is returned from the mapper (the value that is read is masked with $C0, so only bits 7 & 6 matters.):

1997 Super HIK 18-in-1 (JY-101)
 $00   -> 18 in 1
 $40   -> 900 in 1
 $80   -> 1600 in 1
 $C0   -> 6000000 in 1
1997 Super HIK 21-in-1 (JY-105)
 $00   -> 21 in 1
 $40   -> 350 in 1
 $80   -> 1200 in 1
 $C0   -> 7000000 in 1