[SOLVED] TSOP (29F016/32) on MegaMan X2 problem

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
[SOLVED] TSOP (29F016/32) on MegaMan X2 problem
by on (#114652)
Look here for the solution

-------------------------------------------------------------

Hey there,

for several weeks I've built 3 carts using the 29C322 (+2x245 +139). They work flawlessly...
Since a week ago I own a GQ-4X. First I built my first TSOP cart using one 29F016B. That one works like a treat as well...

Now I want to convert my japanese copy of MegaMan X2 (RockMan X2) to a multigame cart (MegaMan X2 and X3 US Version in one cartridge). My problem it doesn't work!

First I removed headers like always, then I merged them using copy /b rom1.bin+rom2.bin rom1_2.bin. I wrote that 32Mbit file to one 29F032B. Wrote and verified well.
Then I soldered every wire (searched for datasheets to get pinouts). Now I had to work around the missing A20 (X2 got 2 maskroms, one with 8Mbit and one with 4Mbit). My idea: connecting /CE from maskrom 1 to A20 (should be clear why I did that, right?!). Also tried to use /CE from maskrom 2, but same result.
I added a switch to control whether the cart uses the lower or upper 16Mbit (X2 or X3). Just A21 low or high. Simple.
My problem now, as I said before, it does not work. :(

I tried the same thing with 2 individual 29F016s with the lower 8Mbit used for X2 and the upper 8Mbit for X3. However I get the same result: black screen.

I don't know what I'm doing wrong. Any idea could help...

By the way, why does the rom file of RockMan X2 (J) have 16Mbit (2MB) and the cartridge itself 12Mbit. I can't see any dummy 'FF' or '00' at the end of the rom file. ?!

Greetings from Germany,
Milka2009

PS: Sorry for my bad english. It's not my first language...unfortunately :/
Re: TSOP (29F016/32) on MegaMan X2 problem
by on (#114658)
What is the cartridge I.D. Number you are using as a host? 2J.... or 2M....


Mark
Re: TSOP (29F016/32) on MegaMan X2 problem
by on (#114661)
Markfrizb wrote:
What is the cartridge I.D. Number you are using as a host? 2J.... or 2M....


Mark


It would be neither. Megaman X2 and X3 use the CX4 chip, so its not a standard mapper.
Re: TSOP (29F016/32) on MegaMan X2 problem
by on (#114665)
Use need to use an AND gate I believe to AND the two MaskROM /CE signals together for your new memory's /CE signal. Then put a switch on the upper most address line of the flash memory to control if it connects to +5v or Ground. That's all you need to do.

By using an AND gate, you and CE0/ & CE1/ signals so that if either one becomes active, your new memory will become active. You can use a 74*08 chip like a 74HC08.
Re: TSOP (29F016/32) on MegaMan X2 problem
by on (#114669)
EDIT:

Hey again...

I got it working now. It works with one 29F032 (maskrom 1 /CE controls A20) or two 29F016.
In another thread people talked about pinouts for SuperFX GSU-1 mask roms. Coincidentally those carts got the same mask roms (LH534/LH538). Someone said those mask roms got the same pinout as mask roms in 'standard' carts (DIP package with no special chip). Even if their part no. is the same, the mask roms Nintendo put into those games were mask roms with a special pinout. F**k u Nintendo!

As a result I now built my Mega Man X2 / X3 multi cartridge (with Rock Man X2 (J) as a donor cart).

For those who have the same problem(s) as me, here is how it is done right:

The pinout for mask roms in Mega Man X2 / Rock Man X2 is the same as always: http://nintendoallstars.w.interia.pl/romlab/snesroms.htm (8-bit DIP 32 pin MASK ROM)
If you are using one chip with 16Mbit or higher, EEPROMs /CE has to be connected to ground. The mask roms /CE (mask rom no. 1; U1/P0/the left one) has to be connected to EEPROMs A20 (to control lower and upper 8Mbit).
If you are using two chips, just wire every connection following the given pinout and you should be allright...Before programming the rom file, it has to be split in 8Mbit parts.

The rest should be clear... If there are any questions I'll try to answer them.

- Milka2009

PS: And again, sorry for my english... (:


-------------------------------------------------------------------------

Hey there,

thanks for your answers...
Firstly, the board I'm using is SHVC-2DCON-01. And you guessed it, no standard pinout.
Image

Maskroms on the pic: HN62318DFY(K1) and HN62315DFY(48). My board uses different ones: LH538(LN4) and LH534(BN2).
Those are the datasheets I found:
- Hitachi HN62318B Series: http://de.scribd.com/doc/152045554/HITAD004-5-89
- LH538: http://de.scribd.com/doc/152046181/43012-SHARP-LH538700A

They both got the same pinout, so I assume it should be correct.

Another thing that is worth mentioning: All signals of the mask roms are interconnected except the /CE pin. I guess that is how the Cx4 addresses the first or the second mask rom. Activating the first and deactivating the second to use the lower 8Mbit and vice versa.

@MottZilla: I had an similar idea, but the pcb only offers Address lines for the first 8Mbits (A0-A19), so controlling the TSOPs /CE by using the mask roms /CE does not allow me to use the upper 8Mbit. By the way, I guess you were thinking of an OR gate, not an AND gate ;)

I already wrote that I tried to use two seperate 29F016 chips to 'simulate' the original situation but this doesn't work either.
I properly connected Vcc, Vss, /OE, /CE, D0-D7 and A0-A19. I pulled A20 to ground on both chips to use the lower 8Mbits (to play X2; X3 is stored in the upper 8Mbit of each chip).
The Cx4 should now be able to address the memories as the old ones but it just does not work. :(

The next thing I'm gonna do soldering sockets to the mask rom 'slots'.

Greetings from Germany,
Milka2009


PS: I just tested to merge two 'standard' games (SMW and F-Zero) into one 8Mbit file. Programmed it and it worked pretty well. When pulling A19 to low I can play the game stored in the lower 4Mbits and when pulling A19 to high I can play the game stored in the upper 4Mbits. Works great. So that shouldn't be a problem in my MegaMan X2/X3 cart.
Re: [SOLVED] TSOP (29F016/32) on MegaMan X2 problem
by on (#114679)
I'm glad you got it working. And i did mean an AND gate. https://en.wikipedia.org/wiki/Logic_gate

If you used an OR gate of two /CE signals then the chip would only enable when BOTH signals were active meaning that you're never activate the chip because the / symbol means active low meaning 0.

Check out this Mega Man X3 hack. http://www.romhacking.net/forum/index.php?topic=11130.0
http://www.romhacking.net/hacks/888/
Re: [SOLVED] TSOP (29F016/32) on MegaMan X2 problem
by on (#114720)
MottZilla wrote:


Doesn't seem to work on hardware :(
Re: [SOLVED] TSOP (29F016/32) on MegaMan X2 problem
by on (#114774)
I thought I'd heard he fixed that and that it did work on SD2SNES. I wonder why it doesn't work on a real Cx4 cartridge, or if it doesn't work on SD2SNES either.
Re: [SOLVED] TSOP (29F016/32) on MegaMan X2 problem
by on (#114775)
I had tried making that game using a Jap version of MMX2 and no it didnt work as of about 6 months ago. It would crash during the intro, as it does in bSnes. Has the patch been updated since then? If so, maybe they fixed it...
Re: [SOLVED] TSOP (29F016/32) on MegaMan X2 problem
by on (#211915)
Would you have the connection schema? :)