Converting a Lorom pcb cart to a hirom pcb cart

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
Converting a Lorom pcb cart to a hirom pcb cart
by on (#100338)
I apologize if this has already been covered elsewhere, but when I searched for this I couldn't find information on it anywhere. Now at one point in my life I was a hardware electronics engineer so when I read about the difference between lorom and hirom games I suspected that the difference's on the PCB's were only at the wiring on the mad-1 chip. Upon closer inspection of two of my games, Chrono Trigger, a hirom game, and NBA live 96, a lorom game, I found that the only differences with the PCB was indeed some of the routing of the mad-1.


My beloved Chrono Trigger PCB is below:

Image


Now below is the PCB of NBA Live 96:

Image


After a quick overview in Photoshop I'm willing to bet that a quick rewire of these 4 pin assignments would allow me to install a hirom game image on this lorom cart. My question is has anyone tried this before, and if so were they successful?
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#100342)
So I picked out NBA live 96 because it has both a backup battery and 64k of sram. I'm planning the following to convert the PCB over:

I'm planning to rewire the assignments on the top of the pcb at the mad1's IC's legs as much as possible using the following four steps:
1) Navy blue pin to red pin assignment
2) Purple pin to to light blue(1) cut bottom trace leading to lower via
3) Red pin assignment to purple
4) light blue pin wire soldered to lower light blue(2) via only <-- possibly on the top of the pcb once I've removed the original mask rom for easy access

Anyone have any better more efficient wiring ideas?
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#100357)
You can find plan for a crazy lorom/hirom switch over at romlaboratory's website. I'm sure you cna figure out what you're trying to do by looking at his info. That is if you don't mind getting a photosensitive seizure by visiting his site packed with animated gif from 2001.

Here's a link to save you from entering through his main menu: http://nintendoallstars.w.interia.pl/romlab/swlohi.htm

P.S: For the love of god, please resize your pic or link them up differently :shock: I'm not even kidding, I actually got blinded by your NBA JAM Scan :lol:
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#100362)
SkinnyV wrote:
You can find plan for a crazy lorom/hirom switch over at romlaboratory's website. I'm sure you cna figure out what you're trying to do by looking at his info. That is if you don't mind getting a photosensitive seizure by visiting his site packed with animated gif from 2001.

Here's a link to save you from entering through his main menu: http://nintendoallstars.w.interia.pl/romlab/swlohi.htm

P.S: For the love of god, please resize your pic or link them up differently :shock: I'm not even kidding, I actually got blinded by your NBA JAM Scan :lol:


Thanks! Edited the photos for you :p I forget that not everyone has a super hi res screen all the time. Your link is promising in that it seems to be possible, but I have no rom replacements to test out my theory. I'm thinking of ordering from buyicnow.com, but I have a few concerns.

1) when you buy a tsop flash with adapter is everything soldered together for you as a drop in replacement?
2) I'm concerned about the longevity of the tsop flash retaining data. Does anyone have any idea?
3)Does anyone have any links for prepping the rom image for programming? I know you need to remove the header and I've used purify with bsnes to do so, but I want buyic to program the chip for me, and I'm not very familiar with the process at all.

Thanks!!!
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#100387)
All the information you could ever need are already on this forum just a few thread down. Pre-soldered TSOP from buyitnow are drop in replacement for 36 pin MASKROM. As for the longevity, I wouldn't worry about this, I've seem eprom from the 80's still working so I do not worry much about flash memory. As for prepping image, snespurify from bsnes should be all you need.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#100400)
SkinnyV wrote:
All the information you could ever need are already on this forum just a few thread down. Pre-soldered TSOP from buyitnow are drop in replacement for 36 pin MASKROM. As for the longevity, I wouldn't worry about this, I've seem eprom from the 80's still working so I do not worry much about flash memory. As for prepping image, snespurify from bsnes should be all you need.


Thanks SkinnyV! All your help is much appreciated. Hopefully in a few weeks I'll be able to report back that it was all successful. I do have a hirom madden 94 cart were I could solder off the maskrom and pop it in to the converted NBA live 96 pcb. Unfortunately madden 94 has no sram, battery or mad1 chip so I don't know if this will even work. Do you think it's worth a shot?
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#100404)
If the game didn't need SRAM, it probably won't hurt if it is on a board that has it. It's only when it needs it and doesn't have it that it is a problem. So you should be able to put the maskrom in the board that has the sram + battery. You're just wanting to test out if your LoROM/HiROM conversion works right? So borrowing the MaskROM should work.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#103092)
This is my idea for a Hi/LoROM switch:

Attachment:
1711201221.jpg
1711201221.jpg [ 104.93 KiB | Viewed 9058 times ]


I just used jumpers for now, it works. Later the switching will be done with two 4551 and a single on/on switch. In the future, I'll use a cheap MCU for reading out $FFD5 of the rom and auto switching to the appropriate setting.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#104629)
Has this been tested yet? I could easily send you some mask roms (both Hi and Lo) or a tsop to dip converter.

Very curious if this works!


Did you re-wire the mask rom socket to a standard EPROM footprint?

I make an adapter circuit board that does that -- no hand re-wiring


Mark
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#104654)
Markfrizb wrote:
Has this been tested yet? I could easily send you some mask roms (both Hi and Lo) or a tsop to dip converter.

Very curious if this works!


It works. It's a Hirom cart and I tested with Claymates (Hirom) and Lagoon (Lorom), both run perfectly.

Markfrizb wrote:
Did you re-wire the mask rom socket to a standard EPROM footprint?


Yes, it's wired for a 27C801/080.

Markfrizb wrote:
I make an adapter circuit board that does that -- no hand re-wiring


Mark


This is just a "Prototype" to test my theory. Someday I'll make my own PCBs when I'm done testing.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#104667)
So all you did was make a switch to bank those 4 points in the earlier posts? I am planning on making a cart myself. Maybe we could collaborate? I have a very good CAD person who designs my pcb's.

If nothing else, I'd love to see how you implemented the switch. With an i.c. I think you mentioned.

Mark
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#104668)
Rather than 2x4551's you should be able to use one of these. No guarantees, haven't tried it myself, but it looks like it should work.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#104670)
Markfrizb wrote:
So all you did was make a switch to bank those 4 points in the earlier posts? I am planning on making a cart myself. Maybe we could collaborate? I have a very good CAD person who designs my pcb's.

If nothing else, I'd love to see how you implemented the switch. With an i.c. I think you mentioned.

Mark


No, I just switched some adress lines. All you have to do to get a Lorom game working on a Hirom cart is skip A15. As I said, this is just temporary, the next step is to programm a cheap PIC (or a FPGA should even be enough) to do auto switching.

Thanks for your offer, perhaps we can work together some day. At the moment I only need help programming a mailbox software for the SNES.

qwertymodo wrote:
Rather than 2x4551's you should be able to use one of these. No guarantees, haven't tried it myself, but it looks like it should work.


It's not going to work. This part has only one input and one output for every signal. There have to be two inputs and one output.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#104671)
Good to know. Thanks!
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#104679)
ngevan2k wrote:
qwertymodo wrote:
Rather than 2x4551's you should be able to use one of these. No guarantees, haven't tried it myself, but it looks like it should work.


It's not going to work. This part has only one input and one output for every signal. There have to be two inputs and one output.


Woops, you're right. You could do it with 1 of these and just tie the 2 output buses together, then use a single transistor NOT gate as a 1-of-2 decoder to drive the /OE's. Considering the alternatives, MAX4551's are ~$4 each and you'd need 2. A cheap PIC is going to be a couple bucks, and then you have to program it. An FPGA is complete overkill. The 74CBT16210 is ~$1.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#104697)
qwertymodo wrote:
Woops, you're right. You could do it with 1 of these and just tie the 2 output buses together, then use a single transistor NOT gate as a 1-of-2 decoder to drive the /OE's. Considering the alternatives, MAX4551's are ~$4 each and you'd need 2. A cheap PIC is going to be a couple bucks, and then you have to program it. An FPGA is complete overkill. The 74CBT16210 is ~$1.


It would work with this part, but wiring would be a real mess. I only pay 1 buck for a 4551 here. If a PIC for $3 can do the job, I think that's a good solution.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#104702)
Routing wouldn't be too bad if you mirrored the two banks (connected 1B1<->2B10, 1B2<->2B9, 1B3<->2B8, etc.).
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#188583)
Sorry to dig up old thread, but not finding much information. Was you able to get this to work? I want to make me some carts, but I need some lorom games, but I have a ton of hirom here. Just need a way to convert them over so that lorom games will work on the hirom boards?
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#188593)
The easiest way, if you are willing to waste memory and the game lacks battery save, is to double each 32768 bytes of the ROM.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#188659)
Yeah I need a battery =( hehe
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#188689)
The rewiring to move the battery save from (say) $708000 to $306000 is a bit more extensive than the minimum needed to get a saveless game working.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#226599)
Sorry for posting so late.

I lately was wondering about convert a LO-rom game into a HI-rom game, letting the snes functioning to 3,58mhz... theoretically it could eliminate some slowdowns, right?.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#226602)
"HiROM" (officially mode $21) and "LoROM" (officially mode $20) have nothing to do with "FastROM" and "SlowROM".

There is a single control inside the SNES
that specifies whether memory accessed in banks $80-$BF, $8000-$FFFF, and banks $C0-$FF
is accessed at 3.6MHz or at 2.7MHz

You'll note that this memory region contains both the "HiROM" addresses (banks $C0-$FF) and the mirror of the "LoROM" addresses (banks $80-$BF)

The game itself is responsible for selecting what address and what speed it runs at. It has nothing to do with how the cartridge is wired.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#226604)
In my opinion, the path of least resistance is to use fast LoROM (mode $30), patch the bank bit of all jumps in banks $00-$7D to instead point at the mirror $80-$FD, and tell the memory controller that you're using fast ROM (set $420D to 1). For completeness, you could also patch long addresses in the ROM, but that probably won't have quite as much bang for buck as patching all jumps.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#226605)
lidnariq wrote:
"HiROM" (officially mode $21) and "LoROM" (officially mode $20) have nothing to do with "FastROM" and "SlowROM".

There is a single control inside the SNES
that specifies whether memory accessed in banks $80-$BF, $8000-$FFFF, and banks $C0-$FF
is accessed at 3.6MHz or at 2.7MHz

You'll note that this memory region contains both the "HiROM" addresses (banks $C0-$FF) and the mirror of the "LoROM" addresses (banks $80-$BF)

The game itself is responsible for selecting what address and what speed it runs at. It has nothing to do with how the cartridge is wired.


Yes, is true.

I'm reading that inside of the header (64 Bytes), there is a Byte called "ROM layout" that determines what kind of memory ROM uses the game (LoROM, HiROM, ExLoROM, ExHiROM, fastROM, or slowROM).

But it couldn't be so easy, if not nowadays all the slowROM games would be patched already.

tepples wrote:
In my opinion, the path of least resistance is to use fast LoROM (mode $30), patch the bank bit of all jumps in banks $00-$7D to instead point at the mirror $80-$FD, and tell the memory controller that you're using fast ROM (set $420D to 1). For completeness, you could also patch long addresses in the ROM, but that probably won't have quite as much bang for buck as patching all jumps.


So, it is laborious, but possible. Well, it is a consolation.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#226650)
Señor Ventura wrote:
I'm reading that inside of the header (64 Bytes), there is a Byte called "ROM layout" that determines what kind of memory ROM uses the game (LoROM, HiROM, ExLoROM, ExHiROM, fastROM, or slowROM).

The SNES doesn't care about the header except for the interrupt pointers. The rest could be completely blank (and probably is in some ROMs).
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#226652)
The Control Deck doesn't care about the header, but Nintendo certification did so that they could figure out what kind of cartridge to manufacture.
Re: Converting a Lorom pcb cart to a hirom pcb cart
by on (#226654)
creaothceann wrote:
Señor Ventura wrote:
I'm reading that inside of the header (64 Bytes), there is a Byte called "ROM layout" that determines what kind of memory ROM uses the game (LoROM, HiROM, ExLoROM, ExHiROM, fastROM, or slowROM).

The SNES doesn't care about the header except for the interrupt pointers. The rest could be completely blank (and probably is in some ROMs).


So, finally is not only information, is just what i expected xD

Anyway, it means that all the slow roms could potentially benefits of an increase of performance, only by re-addressing the memory directions.

It sounds like a really extensive and hard task, checking all the code for possible references, but a task that only have to be done one time.