Converting SlowROM to FastROM and vice versa?

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

Converting SlowROM to FastROM and vice versa?

Post by Tormenter » Sun May 04, 2008 7:06 pm

Is there a way to convert a slowrom game so that it will work on fastrom chips?

User avatar
kyuusaku
Posts: 1665
Joined: Mon Sep 27, 2004 2:13 pm

Post by kyuusaku » Sun May 04, 2008 9:26 pm

Yes, just hit the ROM with a stick a few times. (Or do nothing at all)

User avatar
Bregalad
Posts: 7766
Joined: Fri Nov 12, 2004 2:49 pm
Location: Chexbres, VD, Switzerland

Post by Bregalad » Mon May 05, 2008 11:15 am

As far I know you have absolutely nothing to worry about this in that direction, only the other one may cause trouble, as FastROM games does most likely rely on fast CPU to work at normal speed.
Life is complex: it has both real and imaginary components.

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

Post by tepples » Mon May 05, 2008 7:39 pm

Are the 120 ns chips used by FastROM significantly more expensive than the 200 ns chips used by SlowROM?

User avatar
Bregalad
Posts: 7766
Joined: Fri Nov 12, 2004 2:49 pm
Location: Chexbres, VD, Switzerland

Post by Bregalad » Tue May 06, 2008 4:49 am

Back in 1992 probably yes (or at least when it comes to mass-producted mask ROM), today it's hard to find chips slower than 100ns.
Life is complex: it has both real and imaginary components.

User avatar
MottZilla
Posts: 2832
Joined: Wed Dec 06, 2006 8:18 pm

Post by MottZilla » Wed May 07, 2008 2:25 pm

As I heard your game will crash or have issues if your ROM memory is slower than 200ns for "SlowROM" and 120ns for "FastROM". FastROM enables the SNES to run faster than its 2.68mhz. It will run at 3.58mhz when accessing FastROM in certain banks. I forget what it was, like banks 0x80 and above or something like that will be accessed at 3.58mhz if a certain register bit is set. I remember hearing also some people suggested that because the system has 64kb of RAM, you could upload/copy code to RAM so that it would run faster than off a 200ns SlowROM chip.

Anyway, games will crash, lockup, or experience glitches if a EPROM or whatever you are using is slower than it was designed for. Some games can be made to work with those SlowROM "fixes".

As Bregalad said, it'll be a challenge to find really slow EPROMs now. But usually the last numbers in a EPROM part number should be a NS speed rating. 120ns is SNES FastROM speed. 200ns for SlowROM. Obviously, faster is better and will work just fine. You just can't be slower.

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

Post by byuu » Fri May 09, 2008 7:15 pm

I forget what it was, like banks 0x80 and above or something like that will be accessed at 3.58mhz if a certain register bit is set.
Yes, any ROM (*) access with A23 set (addr&0x800000!=0) will be FastROM if $420d.d0 is set.

(*) $[80-bf]:[8000-ffff] + $[c0-ff]:[0000-ffff]

FastROM means one access takes six cycles at 21.47MHz, SlowROM takes eight.
I remember hearing also some people suggested that because the system has 64kb of RAM, you could upload/copy code to RAM so that it would run faster than off a 200ns SlowROM chip.
First, the SNES has 128kb WRAM; and second, it is always accessed at the same speed as SlowROM, regardless of $420d.d0 FastROM setting.

Kind of unfortunate that Nintendo was too cheap to use faster RAM memory, given that the CPU was the bottleneck of the SNES.

User avatar
blargg
Posts: 3715
Joined: Mon Sep 27, 2004 8:33 am
Location: Central Texas, USA
Contact:

Post by blargg » Sat May 10, 2008 7:22 am

Wasn't WRAM even slower than slow ROM, due to the DRAM refresh latency? It is too bad that the SNES didn't have a small section of fast static RAM for copying speed-critical code from slow ROM to. On the other hand, since most cartridges had battery RAM, couldn't that be used as fast memory? An emulator with a visual execution address display would make it easy to see if slow ROM games were spending lots of time executing out of battery RAM.

User avatar
MottZilla
Posts: 2832
Joined: Wed Dec 06, 2006 8:18 pm

Post by MottZilla » Sun May 11, 2008 2:45 pm

Sorry bout that, I just pulled that outta thin air, I don't know why I thought 64k.

So actually reading from FastROM was faster than even RAM access? That's kinda sad. If they had the RAM access at FastROM's speed, then perhaps the trick of copying your code into RAM would have really helped early on.

Post Reply