動動腦 II: 國中英文(一), also known as Middle School English II, is commonly available as a Mapper 3 hack. The original Sachen 3014 board is somewhat more involved: The 8 KiB CHR-ROM bank is (apparently) selected by D4 rather than D0 of the CHR-ROM latch. That is nothing special, but the game repeatedly reads $E000 and expects D0-3 to resemble what was previously written to the latch in D4-7, most likely as a simple protection measure. Oddly enough, the game reads $E000 ten times if the value doesn't match what it expects before giving up and resetting.
I want to assign NES 2.0 Mapper 533 for this, but wanted to ask whether based on these images, there is something else to consider other than what I described.
Cartridge and pictures by MLX.
CNROM-128 board with latch read-back
Moderator: Moderators
Re: CNROM-128 board with latch read-back
The 74193 and 74LS367 both do the obvious thing: latch the upper nybble of the data bus, and drive the latched bits onto the lower nybble of the data bus. But I can't see enough of the traces on the 74LS138 and 74LS02 to make sure I'm understanding correctly.
I'm not even certain if anything keeps the ROM from getting in a fight with the 74LS367, which if true might explain the "rereads ten times" behavior.
I'm not even certain if anything keeps the ROM from getting in a fight with the 74LS367, which if true might explain the "rereads ten times" behavior.
Re: CNROM-128 board with latch read-back
Some of those traces are very confusing.
74'02
74'138
74'02
Code: Select all
01 - 05 - 06
02 - 138.06 - pin14
03 - 138.04 - 138.05 - pin44
04 -193.11
05 - see 01
06 - see 01
07 - GND
08~13 - NC
14 - 5V
Code: Select all
01 - pin33
02 - pin34
03 - pin35 (+?)
04 - 05 - 02.03
05 - see 04
06 - 02.02 - (…)
07 - NC
08 - GND
09 - 367. 01 - 367.15
10~15 - NC
16 - 5V
Re: CNROM-128 board with latch read-back
74'02The 74'02 and 74'193 just latch the contents of the data bus on writes to $8000-$FFFF.Code: Select all
01 - 05 - 06 02 - R/W 03 - /ROMSEL 04 - 74193./Latch 05 - see 01 06 - see 01 07 - GND 08~13 - NC 14 - 5V
74'138Ok, the 74'138 and 74'367 together do nothing but drive its output on reads from $E000-$EFFF.Code: Select all
01 - CPUA12 02 - CPUA13 03 - CPUA14 04 - /ROMSEL 05 - /ROMSEL 06 - R/W 07 - NC 08 - GND 09 - 74367./OE 10~15 - NC 16 - 5V
So... yes, there's nothing to prevent bus conflicts, and I guess the code assumes that the ROM's output drivers will get warm and less capable of emitting current after fighting with the 74'367 repeatedly.
-
- Posts: 1510
- Joined: Thu May 19, 2005 11:30 am
Re: CNROM-128 board with latch read-back
Does this mean that when reading $E000-$EFFF to get the latch contents into D0-D3, D4-D7 will still reflect the ROM content rather than open bus?
Re: CNROM-128 board with latch read-back
Oh, actually, there's one more trace that I couldn't figure out from the photos: what is PRG ROM pin 20 connected to?
Re: CNROM-128 board with latch read-back
It is grounded.
Re: CNROM-128 board with latch read-back
Ok!
In that case: yes, D4-D7 will still reflect the ROM content rather than open bus.
(In fact, D0-D3 will also, although dumping their contents will be harder given the bus conflicts)
In that case: yes, D4-D7 will still reflect the ROM content rather than open bus.
(In fact, D0-D3 will also, although dumping their contents will be harder given the bus conflicts)