Page 1 of 17 12345611 ... LastLast
Results 1 to 15 of 253

Thread: [GUIDE] Make a Reprogrammable Genesis Cart

  1. #1
    Join Date
    Mar 2009
    Location
    In a windowless van.
    Posts
    10,330
    Thanks
    98
    Thanked 701 Times in 329 Posts
    Blog Entries
    1
    EP Points
    1430

    Default [GUIDE] Make a Reprogrammable Genesis Cart

    This is a full tutorial on how to turn any crappy Sega Genesis/MegaDrive cartridge into something worth playing. Besides a few more pictures, this tutorial is finished.

    Parts required:
    [1] [alt] EPROM programmer
    [2] 16-bit EPROM adapter for programmer
    [3] 4.5mm Gamebit
    [4] Soldering iron
    [5] DeSoldering iron - or solder wick (not recommended)
    [6] EPROM supporting your ROM size
    [7] ROM image
    [8] Donor Cartridge

    Step 1.
    Locate a donor cartridge depending on the ROM image you want to burn to it. You must note the ROM size and whether not it requires save RAM. If your ROM uses saving, you need to find a battery backed donor cartridge.* Cheap sports games make for excellent donor cartridges!

    For example, Monster World IV is a 2MB ROM that requires a battery backed save function. By referring to the Sega genesis/MD rom-set I downloaded, I can find a game that uses saving and uses a board that supports chips 2MBs or larger, such as Madden NFL 95.
    Note: You can rewire smaller carts to support larger ROMs, but if you find a cart that already supports the size, it will be a direct pin lineup. The rewiring is explained in step 7b.

    Step 2.
    Open up the cart and remove the board. This requires the 4.5mm gamebit or sometimes a very common hexbit. Cartridges that are only 512KBs will have a 40 pin ROM and larger games will be 42 pin ROMs. If you're unlucky, you might find an uncommon cart with multiple ROMs. These have the game split into two parts with a decoder chip.**
    For my example, I will use a 512KB Monopoly cart to make the 512KB/non-saving game M.U.S.H.A.



    Step 3.
    Now comes the tough part; removing the ROM without destroying anything. For this you will have to plug in your DeSoldering iron and literally suck the solder from the pins. It is incredibly easy and more clean than using solder wick. Common practice asks for you to skip every other pin to avoid excess heat points, then go back to the remaining pins. Youtube has a few wonderful demonstrations if yourself having trouble here.



    Step 4. Optional
    You may use a 40pin IC socket if you wish, but this will only allow for 27c400 chips to fit and the cartridge shell cannot close. Alternatively, you could cut a hole in the shell so that you can close it and be able to swap out other EPROMs that you burn.



    ^notice that hole 1 is empty. That is because 27c400 chips have only 40 pins instead of 42. Place 512KB chips all the way to the right.

    Step 5.
    Now choose the EPROM capable of holding the ROM you want to burn to it and program the game. Here you will need an EPROM programmer, a 16-bit adapter and the EPROM. You may use a larger EPROM if it happens to be cheaper, but may have to rewire certain pins.

    EPROM / Size
    27c400 - 512KBs (4Mbits)
    27c800 - 1MBs (8Mbits)
    27c160 - 2MBs (16Mbits)
    27c322 - 4MBs (32Mbits)

    Step 6.
    This is important. Which programmer are you using?

    I have the willem programmer:

    Spoiler warning:

    Step 6. willem
    Step 6 is very important to follow closely because the software and hardware from sivava is very picky.
    Plug in your programmer via your desktop's parallel port and start the programming software in Admin mode found here. Note, if you are using a Willem programmer, do not use the USB power ever. Buy yourself an AC adapter because these chips require 12v which cannot be achieved via USB. You will get all sorts of errors and become frustrated. Trust me, I nearly chucked my programmer out the window before I bought an AC adapter... And if you get an IO.dll error upon startup of the software, read this and do as he says. This error normally happens if using Windows 7 and especially if using the 64-bit version. He explains the full details, but basically Windows 7 maps the IO address of your parallel port in a strange location which confuse any software trying to access it.
    Insert your 16 bit adapter, hook up the extra pins with the included wire and place in your blank EPROM. Select your EPROM from the drop down and set the jumpers on your programmer according to what the screen asks.



    Next load the ROM, go to your buffer tab at bottom and "swap Byte." Then hit program.



    Notice that "SEGA" will not be written correctly in the burnable version after byte swap.



    I have the GQ-4x:
    Spoiler warning:

    Step 6. gq-4x
    Disconnect any adapters or eproms from your hardware programmer, then plug it in.
    Now open the software and make your selections.

    Choose Device (27c400)
    This will configure the speed, vpp, pinout etc for your particular chip.



    Choose File
    This will load your file into the buffer. You can look at it in the buffer tab.

    Click "Command" > "Buffer Byte Swap"
    This is very important for Sega Genesis / Megadrive ROMs. I won't get into the details, but this is how the console reads the bytes.
    You could also have clicked the byte swap shortcut button. Now check your buffer and make sure it looks right.



    Check Adapter
    In the bottom right hand side of the window is the Adapter box. This will tell you which adapter that you need. For a 27c400, you'll need the ADP-054 16-bit adapter.
    Now check your jumpers. On this adapter there is J1, J2 and J5. J1 switches between the 27c400/800/160 and the 27c322 eproms. Bridge pins 1-2 for the 27c400.
    Ignore J2. It is for the higher address pins that the old willem needs jumpered separately. The GQ-4x supports these address natively.
    J5 is for programmer compatibility. Probably choose v4 for the gq-4x, v3 for willem.

    **Also worth noting is that you'll need an AC adapter for eproms with VPP pins.

    Now program
    On the right side, there is an auto-mode box. I suggest clicking Blanks Check, Write and Verify.
    Now click Write or Auto and cross your fingers. (These eproms are old)

    If there were no problems, move on to Step 7. If you had some problems, such as "chip not blank" or verify errors, you'll need to erase your eprom again and start over at step 6. Like I said, these chips are old and I have had a lot of problems with them. Such is the reason I moved on to the 29F- series of eeproms.



    Step 7a.
    The final step is to solder your chip onto your empty board. If your board supports your chip size, solder it directly to the board without worrying about rewiring any pins. Make sure the notch on your EPROM points left, as shown in the photos. If you used a socket, place it in that. I like to test the chip before soldering in a socketed board.
    If you chose a smaller donor board and need to rewire a few pins, move to step 7b, otherwise you are finished and can move on to step 8.

    Step 7b.
    If you have selected a chip that is larger than what your board supports, you have to take note of A18, A19 and A20 on your EPROM. These are Address inputs that tell the board how much memory is mapped out on the chip. Every extra address line essentially doubles the memory that can be read from the chip. The following table explains which pins will have to be rewired depending on the board you have used.***
    16biteproms.png
    guidegenny.jpg
    So for example, if you want to use a 27c322 chip on a 512KB board, hen you have to rewire A18, A19 and A20.
    A18 must be wired to pin B7.
    A19 must be wired to pin B8.
    A20 must be wired to pin B9, unless is is a saving game in which case it must go to pin 5 of the 74H00 IC.

    Step 8.
    PLAY IT! The below pictures are of the game Clue that I have burned to an EPROM. It works no differently than any other game and the console doesn't know the difference of course!







    End Notes:
    Ask me some damn questions! I need some feedback on the project.
    * Some less common cartridges use serial memory rather than a battery backed SRAM and these are specific to the ROM image. Megaman Wily Wars for example, requires Serial memory only, however; there is a patch that allows for the ROM to use ordinary battery backed saving.
    ** These carts are less common but may be worked with if you can follow the pin traces to the cartridge slot pins and find out the largest chip support by each slot. A18, A19 and A20 (Address inputs) are explained further down in the tutorial. The reason they are difficult to work with, is that the total ROM size does not determine what size ROM each slot supports.
    *** I have noticed many NTSC-U 512KB boards to already have A18 and A19 wired to the appropriate pins even though they are not used on the original 40pin ROM chips. As for A20, there is often a Jumper wire labelled J2 linking it to Vcc. If you have this type of board, you can remove J2 and place it into J1 to wire A20 to B9 of the cart connector. This is only necessary for 27c322 chips. If you are not using a 27c322, this jumper connects the /BYTE pin to VCC which means 16-bit mode for the ROM chip. It is essential that all non-322 ROMs connect the /BYTE pin to VCC.


    Here I will keep a running list of cartridges that contain save batteries and SRAM.
    Download Links:
    Links are hidden from guests. Please register to be able to view these links. Here is a list of games using "hidden" SRAM. By hidden, I mean that the location of SRAM overlaps the location of ROM. There is an internal logic based bank-switching method specific to the cartridge. Games having 3MBytes+ ROM and SRAM typically have these special carts.
    Download Links:
    Links are hidden from guests. Please register to be able to view these links. Here is the list of Serial-EEPROM games that I have found. Games may or may not be compatible with each others' flash memory; this is something I am testing soon.
    Download Links:
    Links are hidden from guests. Please register to be able to view these links.
    Last edited by Jazzmarazz; 28th-March-2017 at 23:45.


  2. #2
    Join Date
    Mar 2009
    Location
    In a windowless van.
    Posts
    10,330
    Thanks
    98
    Thanked 701 Times in 329 Posts
    Blog Entries
    1
    EP Points
    1430

    Default

    Advanced Tutorials
    *Not yet a tutorial*
    *more to come*

    Bank switching for multiple games on one cart:
    Spoiler warning:

    Four banks (ROMs) using 74ls73 IC:
    (further testing may require CLR pins to not be floating)
    7473int.png - EDIT: This looks wrong. I think a few pins are in the wrong place on this IC. I have to check the data sheet...
    Four banks (ROMs) using two switches:
    4switcher.png
    Two banks using one switch:
    512switch.png
    Four banks (ROMs) using 74ls93 IC:
    ova6qpmr.png

    For each Address pin wired to a toggle (either physical or digital) add one to X where 2^X equals the number of available banks.
    You will of course have to modify the single ROM file containing all of your ROMs via a hex editor prior to burning the EPROM. This can be easily done, all it requires is a little bit of math on your end.

    In the example of the first picture, we have four banks of 1MB each because the 27c322 is a 4MB EPROM and has been split 4 ways. Cut or extend each ROM file to exactly 1MegaByte (1,048,576 bytes) or ($000fffff Hexadecimal). To extend your ROM file, simply add f's at the end until you hit "$000fffff" in your hex editor. One you have extended all four ROM files, copy and paste them onto the end of the main ROM file. in our case, the ROMs must start at $00000000, $00100000, $00200000, and $00300000.
    hexxy.PNG

    Last edited by Jazzmarazz; 16th-January-2016 at 18:04.

  3. The Following 3 Users Say Thank You to Jazzmarazz For This Useful Post:


  4. #3
    Join Date
    Mar 2009
    Location
    In a windowless van.
    Posts
    10,330
    Thanks
    98
    Thanked 701 Times in 329 Posts
    Blog Entries
    1
    EP Points
    1430

    Default

    Frequently Asked Questions:

    1Q. What do I do if I get a Red Screen?
    1A. Your console is checking the checksum in your header and it is wrong. There is software to fix header checksums. My favorite is uCON64.

    2Q. How do I make a foreign ROM region free?
    2A. This is easily done with a hex editor. Three bytes in the ROM header must be modified. These bytes are $1F0 - $1F2. The rest of the line will consist of spaces. Be sure to overwrite existing characters and not to insert extra characters, which could make the ROM image larger. J is for Japan, U is for USA and E is for Europe. There are other regions like "8" for Hong-Kong, but these are the most common.
    Here you can see a now-region free ROM header:
    region of genesis.PNG
    After modifying your ROM in any way, make sure to fix the checksum. Typically the header will not break a checksum.


    More to come
    Last edited by Jazzmarazz; 16th-January-2016 at 17:12.

  5. #4
    Join Date
    Feb 2011
    Location
    Po Town
    Posts
    2,251
    Thanks
    63
    Thanked 63 Times in 51 Posts
    EP Points
    25

    Default

    This look like something I would try...If I had the tools.

  6. #5
    Join Date
    May 2002
    Location
    Sesame Street. In your cookies jar ^_^
    Posts
    36,248
    Thanks
    1,335
    Thanked 1,180 Times in 550 Posts
    EP Points
    2410

    Default

    Re-opened!

  7. #6
    Join Date
    Mar 2009
    Location
    In a windowless van.
    Posts
    10,330
    Thanks
    98
    Thanked 701 Times in 329 Posts
    Blog Entries
    1
    EP Points
    1430

    Default

    Thank you very much, Cookie.

    I have an update. I have finally purchased the 16-bit adapter needed to interface 16 bit chips with my eprom burner.
    Every one of the eproms that are compatible with genesis (shown in an above table) require it, so as soon as it arrives from China, I can finish the tutorial (and start bragging).

    Look forward to it!

  8. #7
    Zorlon's Avatar
    Zorlon is offline Older than you think
    Still loves Retro gaming
    Still loves new consoles
    Part time games modder
    Just here to help out when I can
    Join Date
    Jun 2002
    Location
    UK Newcastle
    Posts
    22,205
    Thanks
    177
    Thanked 2,176 Times in 1,328 Posts
    Blog Entries
    5
    EP Points
    12100

    Default

    Moved to Console & Emulation FAQs/Console Modifications FAQs

    If I havn't already I can add this guide to the Sega Console guides sticky thread

    Just so it won't get lost in all the junky threads

    Edit already got it in the Sega Guides sticky, don't remember if I added it myself or not though
    Last edited by Zorlon; 27th-February-2012 at 17:37.

    Mod projects - XBOX
    Phantasy Star Online Episodes 1 & 2 - online quests in offline mode packs [COMPLETE]
    [Quest Packs Collection]
    GTA San Andreas - Hot Coffee [COMPLETE]
    [Mod ready] & [Full ISO ready]
    GTA San Andreas - Real Car Names extra content mod [WIP] [Back burner, just won't have the time ]
    Please can all ESR users post your results here to help with the project and others wanting to use ESR

  9. #8
    Join Date
    Mar 2009
    Location
    In a windowless van.
    Posts
    10,330
    Thanks
    98
    Thanked 701 Times in 329 Posts
    Blog Entries
    1
    EP Points
    1430

    Default

    Still waiting for the adapter and chips to arrive, so in the meantime, I am working on a gameboy flash cartridge.
    This one may be flashed without opening it up again, but only by means of a custom made or hard to find programmer, of which I have.
    The cart is about half way finished and will hold any ROM up to 512KBs, which is limited... but I chose a cart with save battery so it can be a saving game.



    All that's left is to wire up the bottom 7 pins.

  10. #9
    Join Date
    Mar 2009
    Location
    In a windowless van.
    Posts
    10,330
    Thanks
    98
    Thanked 701 Times in 329 Posts
    Blog Entries
    1
    EP Points
    1430

    Default

    Major update,
    Guide totally rewritten and finally finished shy of a few pictures to add later on. Between school and making repro carts, I will try to write a tutorial on making reprogrammable SNES carts!

  11. The Following 2 Users Say Thank You to Jazzmarazz For This Useful Post:


  12. #10
    Join Date
    Mar 2009
    Location
    In a windowless van.
    Posts
    10,330
    Thanks
    98
    Thanked 701 Times in 329 Posts
    Blog Entries
    1
    EP Points
    1430

    Default

    They sent me a bum adapter, but luckily I got my money back.
    Gonna be another two weeks before I can progress now.

    EDIT: also added some more carts with battery backed saves.
    Last edited by Jazzmarazz; 20th-March-2012 at 20:38.

  13. #11
    Join Date
    Mar 2009
    Location
    In a windowless van.
    Posts
    10,330
    Thanks
    98
    Thanked 701 Times in 329 Posts
    Blog Entries
    1
    EP Points
    1430

    Default

    Update:
    New adapter works perfectly, but my ROM converter that switches Genesis ROMs to BIN format refuses to do it correctly.
    Genesis ROMs that are playable on a PC have their header data modified and this has to be removed in order to burn them properly. I will either have to do it manually or find a new converter.

    The way I figured out that my adapter works (this time) is that I used it to dump an official Clue game and then burn it to an EPROM. Clue loaded up no problem, but I did not have to convert the ROM like the games I do not own and have to download.

    2 New pics added to the final step 8.

  14. #12
    Zorlon's Avatar
    Zorlon is offline Older than you think
    Still loves Retro gaming
    Still loves new consoles
    Part time games modder
    Just here to help out when I can
    Join Date
    Jun 2002
    Location
    UK Newcastle
    Posts
    22,205
    Thanks
    177
    Thanked 2,176 Times in 1,328 Posts
    Blog Entries
    5
    EP Points
    12100

    Default

    What converter/s have you tested so far ???

    I have in my time used a few and only a couple actually converted correctly

    Mod projects - XBOX
    Phantasy Star Online Episodes 1 & 2 - online quests in offline mode packs [COMPLETE]
    [Quest Packs Collection]
    GTA San Andreas - Hot Coffee [COMPLETE]
    [Mod ready] & [Full ISO ready]
    GTA San Andreas - Real Car Names extra content mod [WIP] [Back burner, just won't have the time ]
    Please can all ESR users post your results here to help with the project and others wanting to use ESR

  15. The Following User Says Thank You to Zorlon For This Useful Post:


  16. #13
    Join Date
    Mar 2009
    Location
    In a windowless van.
    Posts
    10,330
    Thanks
    98
    Thanked 701 Times in 329 Posts
    Blog Entries
    1
    EP Points
    1430

    Default

    Quote Originally Posted by Zorlon View Post
    What converter/s have you tested so far ???

    I have in my time used a few and only a couple actually converted correctly
    Thanks for taking thew time to look.

    Anyhow, I have only tried Gen ROM Suite. After posting though, I compared the hex versions of three things:
    1. The ROM of Clue that I dumped - burned/plays successfully
    2. The ROM found in the full genesis ROM-set
    3. The ROM converted with Gen ROM suite

    My results were that the ROM I dumped was mostly if not entirely identical to the ROM in the full-set (I didn't compare all 30,000+ lines) and the converted ROM was very different. When I get home tonight from the library, I will burn a few non-converted ROMs and test them out to see if converting them to BIN is necessary at all.
    Last edited by Jazzmarazz; 20th-April-2012 at 17:04.

  17. #14
    Join Date
    Apr 2012
    Posts
    4
    Thanks
    2
    Thanked 0 Times in 0 Posts

    Thumbs up Thanks Jazz!

    From what I can tell the guide is accurate, I successfully mask rom swapped a few games of the same size this weekend. I'm curious to see if the principal works for localizing a game from Europe. I got a chance to edit the region of a game I've been wanting to play for a while. The principal is the basic value change at offset 01f0 from E (45) to U (55) to fool the region check. I tested it in an emulator set to NTSC but it is an emulator after all. If it works I'll post an update with what programs I used and if the save feature works.

  18. #15
    Join Date
    Mar 2009
    Location
    In a windowless van.
    Posts
    10,330
    Thanks
    98
    Thanked 701 Times in 329 Posts
    Blog Entries
    1
    EP Points
    1430

    Default

    Quote Originally Posted by deusexvindicare View Post
    From what I can tell the guide is accurate, I successfully mask rom swapped a few games of the same size this weekend. I'm curious to see if the principal works for localizing a game from Europe. I got a chance to edit the region of a game I've been wanting to play for a while. The principal is the basic value change at offset 01f0 from E (45) to U (55) to fool the region check. I tested it in an emulator set to NTSC but it is an emulator after all. If it works I'll post an update with what programs I used and if the save feature works.
    Hey again, deusexvindicare
    You can simple add or remove letters according to the region with a hex editor; you do not have to remove any if you don't want to. I use HxD.
    I don't think it matters what order they are in, but there are a few games that are region-enhanced. That means that they will only work on the original region even if you change the hex file. You can find out what games are region-enhanced by locking your emulator into your region and trying to run the game with all of the regions added in the hex, like below. If you get a red screen or other solid color, then it will not work.

    I feel like I should better explain how to determine what games can go into what pcbs. It does not matter if you swap a big game into a pcb from a very small game, as long as A18, A19 and A20 (on the ROM) are connected properly to B7, B8 and B9 (on the pcb) in that order. Step 7b. explains this as best as I can. All other Ax pins will already be connected where they should, so you only have to worry about those three.
    Attached Images Attached Images
    Last edited by Jazzmarazz; 30th-April-2012 at 00:57.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
About Us

We are the oldest retro gaming forum on the internet. The goal of our community is the complete preservation of all retro video games. Started in 2001 as EmuParadise Forums, our community has grown over the past 18 years into one of the biggest gaming platforms on the internet.

Social