CX4 lorom mapper address lines vs. edge connector

Discussion of hardware and software development for Super NES and Super Famicom.

Moderator: Moderators

Forum rules
  • For making cartridges of your Super NES games, see Reproduction.
Post Reply
zzattack
Posts: 14
Joined: Wed Oct 21, 2015 4:26 pm

CX4 lorom mapper address lines vs. edge connector

Post by zzattack » Sat Nov 16, 2019 6:50 am

It appears as if the lorom/hirom mapper inside the CX4 is not as transparent as I thought it would be.

A simple experiment has revealed a difference between the CX4 incoming address lines (from edge) vs. the outgoing ones (to ROM). When hooking up ROM A20 to CX4 pin RA20 (pin 34) the regular MMX3 behaves entirely as expected (i.e. good). When I connect ROM A20 to edge connector pin 46 (A21, i.e. ROM A20 for LoROM mapping), I would expect identical behavior. That's not the case, the game then at startup shows 'immediate register error'. Pressing a button allows continuation, showing the Capcom logo and ending up in the menu, where it inevitably hangs the SNES. Clearly the RA20 output from CX4 is not a transparent forward of edge A21.

I've got a logic analyser hooked up to the SNES bus so I'm mostly able to probe around, but cannot come up with a reasonable explanation for what I'm seeing. Are details knows as to how the CX4 mapper operates?

byuu
Posts: 1544
Joined: Mon Mar 27, 2006 5:23 pm
Contact:

Re: CX4 lorom mapper address lines vs. edge connector

Post by byuu » Sat Nov 16, 2019 7:20 am

Yes, ikari_01 reverse engineered it. I am not sure if it's 100% comprehensive though.

There's also a register setting that controls the second ROM enable/disable.

https://forums.nesdev.com/viewtopic.php?f=12&t=14647

zzattack
Posts: 14
Joined: Wed Oct 21, 2015 4:26 pm

Re: CX4 lorom mapper address lines vs. edge connector

Post by zzattack » Sat Nov 16, 2019 7:51 am

Do I understand correctly then that ROM reads cause the outgoing address to be 'frozen' for a configurable number of clock cycles (the # of wait states), while the SNES CPU can in the meantime continue to alter whatever's on the bus in parallel?

tepples
Posts: 21880
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: CX4 lorom mapper address lines vs. edge connector

Post by tepples » Sat Nov 16, 2019 8:06 am

Or is it that the CX4 and the S-CPU can be reading from different parts of the ROM? If one is reading the first few bytes and the other the last few, giving A20 control to one of them could cause a problem.

Post Reply