Guide to making your own cart?

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
Guide to making your own cart?
by on (#65535)
Does anyone know of a guide for how to burn an eprom to use on something like a repropak(http://www.retrousb.com/product_info.ph ... ucts_id=42)

Would someone also explain to me what is MMC1/3 etc and why their board is different and requires more chips?

I've been working with electronics for year but have recently become interested in NES development and reproduction so this is all a bit confusing.

Also would something like http://cgi.ebay.ca/G540-USB-Universal-E ... 4aa00162ee work for programming the NES eproms?
If not could someone recommend another cheap alternative?
Re: Guide to making your own cart?
by on (#65540)
Aituon wrote:
Does anyone know of a guide for how to burn an eprom to use on something like a repropak(http://www.retrousb.com/product_info.ph ... ucts_id=42)

I don't think there is a guide, specially considering how simple the process is. You just have to split ROM files in 3 parts: header, program (PRG-ROM), tiles (CHR-ROM). Not all games have that last chunk (CHR-ROM), because they use CHR -RAM.

There are some tools that can help you split the files (I'll let others name them, because I don't use them), but you can do it even with an hex editor. The header is always the first 16 bytes of the file, and certain bytes of it will tell how big the next two parts (PRG and CHR) are.

Then you just use the EPROM programmer's software to burn the PRG and CHR to 2 chips.

Quote:
Would someone also explain to me what is MMC1/3 etc and why their board is different and requires more chips?

These are mappers that expand the basic capabilities of the NES. The simpler ones simply allow the games to be larger than 32KB (the limit imposed by the system), but the most complex ones are able to expand even graphics and sound capabilities. Technically, like someone said recently, you could even put a PlayStation 3 inside a (big!) NES cart and use it as a mapper, as long as the graphics were sent to the NES in the form of 4-color tiles.

Anyway, several different mappers were used in commercial games, and if you plan on making carts for those games you have to take that into consideration, because very few mappers are interchangeable, so you gotta know what game uses which mapper/board. Bootgod's site is also a very good place to look mappers/boards up.

Quote:
Also would something like http://cgi.ebay.ca/G540-USB-Universal-E ... 4aa00162ee work for programming the NES eproms?

It probably will. The page says it works with 4000+ devices, and the chips used on the NES are very common standard ones, and it would be crazy if those weren't part of the 4000.

by on (#65542)
That EPROM programmer looks like it could work, but I'd really suggest you ask the seller for a few things, to make sure it's not a scam and it's what you want. Ask for a full-resolution picture of the device to be emailed to you, and ask for a list of the devices the programmer supports. Also, remember that to erase an EPROM you will need a strong UV light. There are cheap Chinese made UV EPROM erasers on eBay which should do that easily, which is where I got mine.

As for the rest, read the following:
http://nesdev.com/NES%20EPROM% ... rsions.txt
http://www.raphnet.net/electronique/nes ... art_en.php
http://www.romhacking.net/utils/683/

Ignore the first one if you're using one of Bunnyboy's repropak boards, since his instructions will walk you through installing the chips.

by on (#65689)
I'm also trying to make a dev cart, or actually a joystick test cart, got the programmer, eproms, joystick.nes file, a SMB cart socketed and cut out for eprom installation and removal ease, and UV eraser if needed.
Now i'm stuck on splitting the rom, i'm using "rom splitter 1.0" from shawn crawford, it says the rom has 16k prg and 8k chr SO I assume I need to program two eproms, however the auto split errors out before I can get that far. "The rom did not split correctly (incorrect CHR Bytes?)"
It gives the same error is I use the manual split mode.
I loaded a SMB1 rom and the program gives the same error, wont split correctly??? WTF?
Of the dozen or so ROMs i've tried only castlevania 2 didn't error out...
My other concern, my EPROMS are 12.5V, will that matter? Also the cheap chinese programmer I bought says its only for ? to 6.5V... Am I screwed there too? It listed the chips I bought as compatible with the programmer...

by on (#65731)
UVEPROMs typically use a higher voltage for writing than for reading, and they have a Vpp pin just for this voltage. Many programmers have a separate power supply to take this voltage.

by on (#65734)
tepples wrote:
UVEPROMs typically use a higher voltage for writing than for reading, and they have a Vpp pin just for this voltage. Many programmers have a separate power supply to take this voltage.

So if they wont burn correctly then I need to feed the EPROM 12.5V seperately?

by on (#65752)
You shouldn't have to, all EPROM programmers will support the VPP voltage. Every EPROM needs it (AFAIK).

The reference to 6.5V is probably the VCC voltage. There actually are some 5V EPROMs that require VCC to be something higher than 5V during programming. So if you burn (for example) an M27C512, check it in the parts lists before selecting generic 27C512.

by on (#65797)
akaviolence wrote:
Now i'm stuck on splitting the rom, i'm using "rom splitter 1.0" from shawn crawford, it says the rom has 16k prg and 8k chr SO I assume I need to program two eproms, however the auto split errors out before I can get that far. "The rom did not split correctly (incorrect CHR Bytes?)"
It gives the same error is I use the manual split mode.
I loaded a SMB1 rom and the program gives the same error, wont split correctly??? WTF?
Of the dozen or so ROMs i've tried only castlevania 2 didn't error out...

Well, I still need to solve this issue before i can even try to burn, anyone got any ideas?

by on (#65945)
akaviolence wrote:
akaviolence wrote:
Now i'm stuck on splitting the rom, i'm using "rom splitter 1.0" from shawn crawford, it says the rom has 16k prg and 8k chr SO I assume I need to program two eproms, however the auto split errors out before I can get that far. "The rom did not split correctly (incorrect CHR Bytes?)"
It gives the same error is I use the manual split mode.
I loaded a SMB1 rom and the program gives the same error, wont split correctly??? WTF?
Of the dozen or so ROMs i've tried only castlevania 2 didn't error out...

Well, I still need to solve this issue before i can even try to burn, anyone got any ideas?


I am not very sure but perhaps the ROM file(i.e. .nes one) you are using is a hacked/amended one.

by on (#65947)
akaviolence wrote:
akaviolence wrote:
Now i'm stuck on splitting the rom, i'm using "rom splitter 1.0" from shawn crawford, it says the rom has 16k prg and 8k chr SO I assume I need to program two eproms, however the auto split errors out before I can get that far. "The rom did not split correctly (incorrect CHR Bytes?)"
It gives the same error is I use the manual split mode.
I loaded a SMB1 rom and the program gives the same error, wont split correctly??? WTF?
Of the dozen or so ROMs i've tried only castlevania 2 didn't error out...

Well, I still need to solve this issue before i can even try to burn, anyone got any ideas?


I wrote a custom DOS program to split iNES into prg and chr. Let me know if you want that.

by on (#65951)
@ Nadia - Yeah i'll try your prog, maybe it will work for me...
At this point i'll try anything.
I've tried ROMs downloaded from two different sources, though I still don't know how to verify their integrity.
I can't imagine the joystick.nes ROM would get any attention as far as hacking/amending???
I did "play" the joystick.nes ROM with an emulator and it worked great, exactly what I need to test all the controllers I buy and sell, I play SMB for a while to try to test all the controller buttons and its such a time consumer...
BTW is there a different test ROM that tests the zapper?

by on (#65961)
Quote:
BTW is there a different test ROM that tests the zapper?


I haven't used one so far. Please note that zapper doesn't work on LCD/TFT screen.

by on (#65968)
Nadia wrote:
Please note that zapper doesn't work on LCD/TFT screen.

Except in one trivial case. This is a test ROM for the trigger only, not the photosensor.

by on (#65983)
@ Nadia - Got your prog to work, renamed the .prg and .chr files to .bin and neither would burn. Keep getting;
Start go...
Write...Error at:00000:(FF)

Maybe my cheap chinese programmer isn't up to the task? Its a USB top853.

by on (#65985)
akaviolence wrote:
@ Nadia - Got your prog to work, renamed the .prg and .chr files to .bin and neither would burn. Keep getting;
Start go...
Write...Error at:00000:(FF)

Maybe my cheap chinese programmer isn't up to the task? Its a USB top853.


have you been able to burn any ROM successfully so far?

I mean it does not look like a problem with the files but as you said perhaps the eprom programmer you are using works in a different manner.

by on (#65988)
I've only gotten two ROMs to split successfully with Crawford's prog and neither would burn.
Both for the error shown previously.
If I mess around with chip type sometimes i'll get it to go for a second then error out at some later point, but never got anything to fully burn.

by on (#66603)
Wow...
Finally got my joystick test cart completed. Turns out the TOP853 I bought is either broken or just can't do 27128 eproms. I bought a different cheap chinese universal programmer, a willem pcb5.0B. Only drawback of the willem is it still uses the printer port, but its powered by USB, go figure... Best part is it was only $32 shipped and was here in about 5 days!
After reading the Engrish pdf manual I got the jist and was able to check blank ok but errored out when trying to program, F#@K! Then I seen a reg editor for XP to turn off printer port polling. After I ran it I was able to do complete burns of both prg and chr eproms, EXCELLENT!

by on (#66604)
I've had mixed luck with the Willem clone parallel port programmers. I could never get it to read back properly a 27C801 EPROM I had. And I tried programming them but it always failed. I had all the jumpers set correctly I believe. I only ever got it to work with some 256kbyte or 128kbyte eproms which I used for NES.

If I ever bought another programmer it would be a USB one with no jumpers or dip switches. The hassle isn't worth it when a decent USB one doesn't cost that much.

by on (#66607)
MottZilla wrote:
I've had mixed luck with the Willem clone parallel port programmers.

My parallel port Willem worked flawlessly until I bought a new PC, when it refused to work with the parallel port of this new machine.

Quote:
If I ever bought another programmer it would be a USB one with no jumpers or dip switches.

This is what I did. I got a Wellon, it's awesome. It does more than my previous programmer did, and not having to deal with switches and jumpers is great.

by on (#66634)
The similarity between the names Wellon and Willem makes me think one might be a knockoff of the other. "Shoupie" anyone?

Image

by on (#66650)
tepples wrote:
The similarity between the names Wellon and Willem makes me think one might be a knockoff of the other.

Yeah, I don't know what the story behind the names is, but there definitely seems to be a connection.

by on (#66669)
nice photo hahaha :lol:

by on (#66711)
I found out something else today, I was trying to burn a game to try on my nrom dev board and the willem errored out again right away. I tried several times, I shut down progs running in the background in XP, didn't help. Then I thought about power again and unplugged a usb card reader I was using to transfer the .chr and .prg files from my laptop to the XP puter hooked to the willem. Once removed it burned fine...