Been reading up on SNES repos, have I got my facts straight?

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

Post by tepples »

As I understand it, LoROM and HiROM have nothing to do with speed. There are SlowROM and FastROM, and FastROM games need 120 ns or faster memory, but (correct me if I'm wrong) FastROM games can be either LoROM or HiROM.

LoROM vs. HiROM: Function of A15 vs. A22
SlowROM vs. FastROM: Whether or not 130 to 200 ns memory is acceptable
pichichi010
Posts: 172
Joined: Thu Dec 29, 2011 5:41 pm

Post by pichichi010 »

I have a list of all or most of the ROMS available with the information from
how much ram does it need, special chip and Fast rom and slow rom.

as soon as I get home Ill post the link so you can see which games could be good donors, etc.

it is really useful.
fireaza
Posts: 35
Joined: Mon Jul 02, 2012 6:04 am

Post by fireaza »

tepples wrote:As I understand it, LoROM and HiROM have nothing to do with speed. There are SlowROM and FastROM, and FastROM games need 120 ns or faster memory, but (correct me if I'm wrong) FastROM games can be either LoROM or HiROM.

LoROM vs. HiROM: Function of A15 vs. A22
SlowROM vs. FastROM: Whether or not 130 to 200 ns memory is acceptable
Ah, so LoROM and HiROM have nothing to do with the eprom, but more the design of the cart's board?
pichichi010 wrote:I have a list of all or most of the ROMS available with the information from
how much ram does it need, special chip and Fast rom and slow rom.

as soon as I get home Ill post the link so you can see which games could be good donors, etc.

it is really useful.
That would be handy for the Satellaview (i.e Radical Dreamers) repos I would be interested in making, since these didn't get a cartridge release, so I can't just buy the Super Famicom version and use that as the donor.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

fireaza wrote:Ah, so LoROM and HiROM have nothing to do with the eprom, but more the design of the cart's board?
Yeah. LoROM uses 32 KiB banks, while HiROM uses 64 KiB banks. In NES parlance, they might be considered "mappers", much as UNROM (#2) differs from BNROM (#34).
fireaza
Posts: 35
Joined: Mon Jul 02, 2012 6:04 am

Post by fireaza »

Good to know! Thanks!

Okay, I think I know almost everything I need to know about SNES repos! Thanks for all your help guys! A few final questions:
1) If I'm using a 29F032 eeprom (a 32 megabit chip) and I put a ROM that's smaller than that on there, do I need to worry that there's free space on the eeprom?

2) If I'm using a 8 megabit eprom, do I always need to add those two crossed wires, and are they always soldered to the same legs on the eprom and the same spots on the board?

3) Are the American and Japanese carts considered to be the same for the purposes of reproductions? For example, the Breath of Fire II re-translation patch must be applied to a ROM of the American version of the game, but could I use the original Japanese Super Famicom version of the game as the donor cart?

4) Any other odd things I should know about that we haven't already discussed?

*EDIT* qwertymodo: About the black screen problem you were having, have you tried downloading the ROM from a different website? I ran into this problem just now, and despite the first ROM having a good CRC, I got a black screen in BSNES. I downloaded the ROM (same extension) from a different website, and this one patched and played fined.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

fireaza wrote:If I'm using a 29F032 eeprom (a 32 megabit chip) and I put a ROM that's smaller than that on there, do I need to worry that there's free space on the eeprom?
As long as you tie the unused address lines to ground. For example, with an 8 megabit game on a 32 megabit chip, you'd ground the two most significant address lines.
3) Are the American and Japanese carts considered to be the same for the purposes of reproductions?
As long as the (J) and (U) versions of the game are the same size, they should be using the same board. It's not like NES, where games often had to be mapper-hacked to use an NOA-approved mapper similar in capability to the original (e.g. City Connection from #87 to #3 or Castlevania 3 from #24 to #5).
fireaza
Posts: 35
Joined: Mon Jul 02, 2012 6:04 am

Post by fireaza »

tepples wrote:
fireaza wrote:If I'm using a 29F032 eeprom (a 32 megabit chip) and I put a ROM that's smaller than that on there, do I need to worry that there's free space on the eeprom?
As long as you tie the unused address lines to ground. For example, with an 8 megabit game on a 32 megabit chip, you'd ground the two most significant address lines.
Is that still true if you're using a DIP36 TSOP40 adaptor?

*EDIT* Found a quote from MottZilla on this very forum regarding the 29f032, smaller ROMS and if you need to mod them:
For most games, you don't have to do anything different. The only games that rely on mirroring that I know of are Mega Man X and Demon's Crest.
Sounds like I'm good for the repros I'm looking to make :D

Has anyone ever made a Tales of Phantasia repro? It's 48 megabit game, so obviously, it won't fit on the 32 megabit 29f032. I can't find any larger TSOP 40 EEPROMs, however, from what I can see, the board uses 2x ROMs. So I should be able to use 2x 29f032s right? Well, Snes Central says the smallest size that Phantasia's board takes is 40 Mbit. Would that means that the board will not recognise eproms smaller than that, such as the 29f032?
qwertymodo
Posts: 775
Joined: Mon Jul 02, 2012 7:46 am

Post by qwertymodo »

As far as putting a small game on a large ROM, it doesn't hurt to mirror the ROM file to fill the chip. If it's a power of two in size (1, 2, 4, 8, 16Mbit) just copy the entirety of it using a hex editor in order to make it 32Mbit. If it's not a power of two (12, 24, 28Mbit, etc), you first copy the end portion of the file back to the nearest power of two, then copy the entire result to get your 32Mbit total. For instance, say you have a 12Mbit ROM. Copy the data from 8Mbit to the end and paste it at the end of the file, then you'll have 16Mbit. Then copy the entire thing and you have 32Mbit.
fireaza
Posts: 35
Joined: Mon Jul 02, 2012 6:04 am

Post by fireaza »

I know nothing about hex editing :P Can you give me a quick run-down on how to do what you've just described? Google's not coming up with the goods. I mean, I've got the ROM opened up in Hex Workshop, but I have no idea what I should be copying. I mean, where's the notches that indicate where each megabit is? I feel like chimp who trying to drive a bulldozer :P

*EDIT* When I look at the ROM in Hex Workshop, I notice there's a whole bunch of 0s at the end of the ROM, obviously to pad the game out to 12 megabits. Could I just stick a whole bunch more 0s on the end of the rom to achieve the same effect?
Last edited by fireaza on Thu Jul 05, 2012 9:41 am, edited 1 time in total.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

Do you know how to work a command prompt?

copy /b toki.sfc+toki.sfc tokidoki.sfc
fireaza
Posts: 35
Joined: Mon Jul 02, 2012 6:04 am

Post by fireaza »

Back in the day I used to use DOS... I'll give it a shot...

*EDIT* CHANGE DIRECTORY TO F:\ YOU BASTARD!! WHY WON'T YOU OBEY?

*EDIT* AH HA! GOTCHA! Okay, I've got the ROM to 24 megabits. Putting a second copy inside the ROM seriously doesn't break it? Madness!

*EDIT* There's apparently a program called "ROM Padder" that's suppose to pad out ROMs. I can't seem to get it to work, I think it's incompatible with 64-bit versions of Windows.
Last edited by fireaza on Thu Jul 05, 2012 10:06 am, edited 1 time in total.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

Like MS-DOS and unlike UNIX, Windows maintains a separate current working directory for each mounted file system. To change to a directory on a different file system, you may first need to specify the drive letter on a line by itself. So instead of

Code: Select all

cd F:\
use

Code: Select all

F:
cd \
If a ROM size isn't a power of two, doubling it up is more complicated. You first have to use a split tool such as dd (which comes with Cygwin, MSYS, Linux, or *BSD) to break it into the file for the larger chip and the file for the smaller chip. Then you double up the smaller file until it's as big as the larger file, and doubling after that depends on how the board is wired.
fireaza
Posts: 35
Joined: Mon Jul 02, 2012 6:04 am

Post by fireaza »

"larger chip and smaller chip"? Don't forget, I'm using a single 32 megabit eeprom here ;) Or are you describing this process?
If you want to pad your rom with zero's. You can use ucon64 to do it and then split it into two 8mbit files.

ucon64 -p rom.smc (do this 4 times)

ucon64 -s rom.smc (do this after the desired size is reached)


If you want to mirror the last chunk of the rom, use snestool to split the rom (8mbit split size). You'll get two files: rom.1 (8mbit) and rom.2 (4mbit). Make sure you use "delete header" on rom.1 before exiting. It will also automatically delete the header on rom.2 as well. Finally do this in command prompt:

copy /b rom.2 + rom.2 rom.2+2

Rom.1 and rom.2+2 should be suitable for burning onto 8mbit eproms.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

Yes, I was referring to "use snestool to split the rom". The non-power-of-two sized ROMs were originally carts containing two mask ROM ICs, one larger and one smaller. The smaller one has to be doubled up to match the size of the larger one before the whole thing is doubled.
qwertymodo
Posts: 775
Joined: Mon Jul 02, 2012 7:46 am

Post by qwertymodo »

Here's the best free, lightweight hex editor I've found: http://mh-nexus.de/en/hxd/ Play around with it, just keep a backup of the original file and you should be fine. It's fairly trivial to copy/paste.
Post Reply