Converting a Lorom pcb cart to a hirom pcb cart

Discussion of hardware and software development for Super NES and Super Famicom. See the SNESdev wiki for more information.

Moderator: Moderators

Forum rules
  • For making cartridges of your Super NES games, see Reproduction.
ngevan2k
Posts: 26
Joined: Mon Jan 03, 2011 8:39 am

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by ngevan2k »

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.
qwertymodo
Posts: 775
Joined: Mon Jul 02, 2012 7:46 am

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by qwertymodo »

Routing wouldn't be too bad if you mirrored the two banks (connected 1B1<->2B10, 1B2<->2B9, 1B3<->2B8, etc.).
Tormenter
Posts: 306
Joined: Sat Jun 03, 2006 9:17 pm

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by Tormenter »

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?
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by tepples »

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.
Tormenter
Posts: 306
Joined: Sat Jun 03, 2006 9:17 pm

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by Tormenter »

Yeah I need a battery =( hehe
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by tepples »

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.
User avatar
Señor Ventura
Posts: 233
Joined: Sat Aug 20, 2016 3:58 am

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by Señor Ventura »

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?.
lidnariq
Posts: 11432
Joined: Sun Apr 13, 2008 11:12 am

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by lidnariq »

"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.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by tepples »

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.
User avatar
Señor Ventura
Posts: 233
Joined: Sat Aug 20, 2016 3:58 am

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by Señor Ventura »

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.
creaothceann
Posts: 611
Joined: Mon Jan 23, 2006 7:47 am
Location: Germany
Contact:

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by creaothceann »

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).
My current setup:
Super Famicom ("2/1/3" SNS-CPU-GPM-02) → SCART → OSSC → StarTech USB3HDCAP → AmaRecTV 3.10
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by tepples »

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.
User avatar
Señor Ventura
Posts: 233
Joined: Sat Aug 20, 2016 3:58 am

Re: Converting a Lorom pcb cart to a hirom pcb cart

Post by Señor Ventura »

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.
Post Reply