Quote:
thank you ,but batte city enter game have bug. in fc not have.
It is something with your emulator graphics. I dont see any flickering.
---
Ok, I think I 100% rev-ed this board. The register is on power up set to 0, but inverted CPU-D3 is latched, that's why I had quite troubles at beginning. In emulation (and analysis) it is the same as assuming that it is set to 8 on powerup.
---
This PCB contains 2 x 128kB mask roms. T
* The first one (marked as 100007C) contains UNROM game.
* The second one contains 5 games: 2 SUPER MERRY BROTHERS (SMB), 3 SUPER FANCY BROTHER, 4 ARKANOID, 5 BATTLE CITY, 6 1989 GALAGA + menu. SUPER FANCY BROTHER is just regular SMB with horizontal mirroring.
The menu has hardcoded CRCs for 5 games - sum of last 256 bytes of PRG's game modulo 256:
*Contra (value $d1)
*Life Force (value $6f)
*1943 (value $a4)
*Ruslin Attack (value $84)
*Jackal (value $05)
This multicart was probably sold in different versions (different game sets - they just changed the first mask rom).
After power-up, it switches for a moment to the UNROM memory and calculates its CRC. If it is one of the 5 known games, it displays its name. If it is none of the above (or mapper is not completely supported in emu), it displays just
128KThe PCB has even two solder-jumpers to select mirroring for the UNROM game
Code:
Layout of memory (each letter=16kB Block)
0123456789abcdef
||||||||||||||||
||||||||||||||++-----------PRG: Arkanoid (32 kB)
||||||||||||++-------------PRG: SMB (32 kB)
|||||||||||+---------------PRG: Galaga (16 kB)
||||||||||+----------------CHR: SMB + Arkanoid
|||||||||+-----------------PRG: Battle City (16 kB)
||||||||+------------------CHR: Battle City + Galaga
++++++++-------------------UNROM game (first chip)
Menu is encoded into Battle-City prg (and uses Battle City CHR)
Bus conflicts: yes
$8000-$ffff: [..wm Pppv] Value on Power up: 8, on reset value is not changed
|| ||||
|| |+++- 16 kB PRG-bank (lowest bit ignored in NROM 32K mode, fixed to in in NROM 16K mode)
|| | +- mode select (0=NROM 32K, 1= NROM 16K)
|| +---- 128 kB ROM select: 0=first 128kb [with UNROM game), 1=second 128kb
|| +---- mode select (0=UNROM, 1=NROM)
|+------ mirroring (0=V, 1=H)
+------- write protection of this register (active when w==1 && P == 1), so
write protection does not work in UNROM game
Pv|$8000-$bfff|$c000-$dfff|comment
--+-----------+-----------+--------
0x| 0ppv | 0111 |UROM
10| 1pp0 | 1pp1 |NROM 32k
11| 1pp1 | 1pp1 |NROM 16k