Skip to content

gbbasic/Game-Boy-MBC1-Cartridge

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Game Boy MBC1 Cartridge

This is my design of a flashable MBC1-based cartridge for the Game Boy. The MBC1 mapper was used in many of the earlier Game Boy games, such as the Super Mario Land series, the Donkey Kong Land series, Metroid II, and one of my personal favorites - the original Link's Awakening.

This circuit board should cover most, if not all, MBC1 games. The features are as follows:

  • Able to make games that use 4 Mbit of ROM and 256 Kbit of RAM, or 16 Mbit of ROM and 64 Kbit of RAM
  • Compatibility with all four of the major Game Boy battery management ICs - MM1026, MM1134, BA6129, and BA6735
  • The option to add battery backup to the cartridge without the need of the original battery management ICs - perfect for MBC1 donors that didn't have batteries in them
  • Lower battery consumption compared to some of the original cartridges
  • Fully compatible with the GBxCart RW so you can transfer games and save files to and from the board

image

All gerbers and source files can be found in this repo, as this project is fully open source. Technical documentation of the board can be found in the Technical folder.

Important Things Before You Start

  1. To make this game, you need to have an original Game Boy game that uses an MBC1 mapper chip. You can find a list of games and their mappers here. Use the search function.
  2. You will need to remove the MBC1 from your donor cartridge for use on this board. This will require a hot air rework station or a hot plate. There's a list below of other parts you can re-use from the donor cartridge.
  3. When soldering parts on, it's a good idea to put kapton tape or otherwise cover the bottom cartridge edge. You do not want to get solder on the cartridge contacts.
  4. I am not responsible for any damage you do to your self or your property. I do not guarantee design compatibility. You may encounter issues with certain games! Attempt this project at your own risk.
  5. If you are using this board to make games other than for personal use, you must have permission from the originator to use and distribute any ROM images or other related material. You are responsible for making sure you adhere to any license requirements.

DO NOT use my circuit boards for profiting from stolen work - this especially includes homebrew content, ROM hacks, and using fan-made labels without permission from the originator. Support original creators!

Please note that version 1.3 is technically untested, however, the only consequential change is an additional 0.25 mm on the bottom of the board edge for better fitment, so I don't expect issues.

Board Characteristics and Order Information

The zipped folder contains all the gerber files for this board. The following options must be chosen when ordering boards for yourself.

  • Thickness: 0.8mm
  • Surface Finish: ENIG
  • Gold Fingers: Yes, 30° chamfer

Currently not selling on Etsy, but will in the future. Stay tuned.

PCB from Etsy

You can use the zipped folder at any board fabricator you like. You may also buy the board from PCBWay using this link (disclosure: I receive 10% of the sale value to go towards future PCB orders of my own):

PCB from PCBWay

The board is also listed on OSH Park as well. Be sure to get them in 0.8mm thickness if you order from here.

Required Equipment

The EEPROMs on the board needs to be programmed somehow. I recommend using the GBxCart, as mentioned. These boards are fully compatible with it, and it makes reflashing games extremely easy using lesserkuma's FlashGBX software.

Alternatively, you can buy an EEPROM programmer with a TSOP adapter. The downside to this method is that you have to desolder the chip every time you want to program it. The FlashcatUSB is one popular option in retro spaces.

Battery Safety

When assembling a board, I recommend populating all the parts except the battery, and getting it to run initially without it. This is to make it easier to fix any solder connections that might need fixing, without having to worry about getting the battery hot. And if you need to rework anything near the battery after you've put it on the board, be safe and remove it before putting a hot soldering iron next to it.

And this should go without saying, but if you're assembling these boards with a hot plate or hot air, do not solder the battery on this way. You should use an iron, and keep heat off of the battery as much as possible.

(Also check polarity!)

Board Configurations

The board comes with four sets of jumper pads for solder bridges. SJ1 and SJ2 require you to solder bridge the middle pad either to the top pad or the bottom pad. SJ3 and SJ4 are configured by either leaving them alone or bridging them with solder. Here are the situations where you need to add solder bridges.

RAM Size Selection (SJ1 and SJ2, or SW1)

These two sets of pads are labelled "RAM SIZE" in the middle of the board. Soldering them will configure the max RAM and ROM size. You must configure these pads for every game you make - do not leave them empty (if you have no SRAM, solder to the "64K" setting to maximize ROM space). You can find a list of games here with their respective ROM and RAM sizes.

  • Solder bridge SJ1 and SJ2 from their middle pads to the top pads for games that have larger ROM sizes (up to 16 Mb of ROM and up to 64 Kb of RAM).

  • Solder bridge SJ1 and SJ2 from their middle pads to the bottom pads for games that have larger RAM sizes (up to 4 Mb of ROM and up to 256 Kb of RAM).

  • SJ1 and SJ2 must be soldered in the same direction.

  • The footprint of these selection pads should allow for a DPDT switch, part number CAS-220A1, to be placed on these pads instead of having to bridge the pads with solder.

image

Using an MM1134 or BA6735 for U4 (SJ3)

Bridge the jumper SJ3 if you have either an MM1134 or BA6735 for U4, specifically. Any other battery management IC must leave SJ3 unsoldered.

Making Games Without RAM (SJ4)

If your game does not have RAM on it (and therefore, you don't need the battery management IC U4), bridge SJ4 with solder. Do not bridge SJ4 if you are using U5 (TPS3613) instead of U4.

Test Points and Final Checkout

On the back of the board are five test points. Here's where they are connected:

  • TP1: SRAM supply voltage
  • TP2: Battery voltage (after R1)
  • TP3: Battery voltage (positive terminal of battery)
  • TP4: Ground
  • TP5: VCC input voltage

After you assemble your game, you should measure the current out of the battery. But first, you should program it with the GBxCart, or if you programmed the EEPROM separately, put it into a Game Boy and cycle power once. Then, flip the PCB upside down on a non-conductive surface (not your leg), and set your multimeter in DC millivolts (or volts). Put the positive probe on TP3 and the negative probe on TP2. If you used a 10kΩ for R1, as indicated in the BOM, you should read a voltage in the single of millivolts. If you have something much higher, especially voltages above 30mV, then you likely have an issue or short circuit on the board somewhere.

Note: If using the replacement battery management IC in U5, you need to power up the game at least once before battery currents will make sense.

Bill of Materials (BOM)

Your parts list will vary depending on the game you are trying to make, and what chips you have for the battery management (if any). Note that C9 - C11 footprints are only included for edge cases that may require them; you can ignore them.

Please carefully review the parts you need for the board you are trying to make. Do not add any parts to your build that don't appear in the column for the game you are making. This means you cannot populate every component on the board at the same time.

Reference Designators Value/Part Number Package Description No save carts Save carts with MM1134 or BA6735 Save carts with MM1026 or BA6129 Save carts without donor U4 chip Source
B1 CR2032, CR2025, CR2016 CR2032 Backup Battery x x x https://mou.sr/3SeAzfT
C1 0.1uF 0603 Capacitor (MLCC) x x x x https://mou.sr/3ENc15O
C4 0.1uF 0603 Capacitor (MLCC) x x https://mou.sr/3ENc15O
C5 0.1uF 0603 Capacitor (MLCC) x x x https://mou.sr/3ENc15O
C6 10uF 0603 Capacitor (MLCC) x x x https://mou.sr/3mZtSkF
C7 0.1uF 0603 Capacitor (MLCC) x x x x https://mou.sr/3ENc15O
C8 0.1uF 0603 Capacitor (MLCC) x https://mou.sr/3ENc15O
Q1 2N7002 SOT-23 N-Channel FET x https://mou.sr/3rgfh6J
Q2 2N7002 SOT-23 N-Channel FET x https://mou.sr/3rgfh6J
R1 10k 0603 Resistor x x x https://mou.sr/3riR7IH
R3 49.9k 0603 Resistor x x x https://mou.sr/3Q3NRZO
R4 49.9k 0603 Resistor x x x https://mou.sr/3Q3NRZO
R5 49.9k 0603 Resistor x x x x https://mou.sr/3Q3NRZO
R6 49.9k 0603 Resistor x x x x https://mou.sr/3Q3NRZO
R7 10k 0603 Resistor x https://mou.sr/3riR7IH
R8 10k 0603 Resistor x x x x https://mou.sr/3riR7IH
R9 130k 0603 Resistor x https://mou.sr/3MjXliy
R10 49.9k 0603 Resistor x https://mou.sr/3Q3NRZO
U1 29F016, 29F032, 29F033 TSOP-48, TSOP-40 Flash EEPROM x x x x AliExpress or eBay
U2 MBC1 SOP-24 MBC1 Mapper x x x x Donor MBC1 Game Boy cartridge
U3 AS6C6264, AS6C62256 SOP-28 SRAM x x x https://mou.sr/450klcY
U4 MM1026, MM1134, BA6129, BA6735 SOIC-8 Battery Management x x Donor Game Boy cartridge
U5 TPS3613 MSOP-10 Battery Management x https://mou.sr/45Ir2kh

Usable Donor Cartridge Parts

You can use a few parts from the donor cart on the new board to save some money. Note that you will generally get better reliability with new parts as opposed to old ones. For example: I have seen failed RAM chips from donors in the past.

  1. U2: MBC1 - This one is required
  2. U3: SRAM - You can use this part only if the game you're making uses the same or less amount of RAM that the donor cartridge does
  3. U4: Battery Management IC - Using this is probably preferred over the TPS3613 because it'll save you money and parts to put on

You could probably transfer over most of the 0.1uF capacitors but they're pretty cheap anyway, so I generally just recommend buying new resistors and capacitors.

Things to Remember

  • The footprint for the EEPROM is specifically for 29F016 - it has 48 pins. However, 29F032 and 29F033 are only 40 pin devices. They still work fine on the board though - place them in the center of the footprint, and leave the outer two pins on each corner empty
  • The 29F016, 29F032, and 29F033 have been known to occasionally be defective upon arrival. They're either used, or new old stock, and usually only available from AliExpress.
  • The footprint for the battery can fit a CR2032, CR2025, or CR2016 with solder tabs. The only difference is the mAh capacity (larger number = longer life). If you get Panasonic tabbed batteries, you may have to trim the battery tabs to make them fit on the footprint.
    • For untabbed coin cells, you can find battery retainer adapters online, like this one.
  • For battery management, use either U4 or U5 and supporting components. Do not use U4 and U5 simultaneously on one board. They will interfere with each other.
  • Kb is kilobits and Mb is megabits. Sometimes you will find game ROM and RAM sizes defined in terms of KB or kilobytes and MB or megabytes. You can convert Kb and Mb to KB and MB by dividing Kb or Mb by 8. For example, 256 Kb = 32 KB.
  • You only need to provide ROM and RAM chips that have at least or greater the size of the game you are trying to make. That means you can use a 256Kb SRAM chip for a game that only requires 64Kb!

Revision History

v1.3

  • Extended cart edge down by 0.25 mm for better fitment
  • Added OSHW logo and "SUPPORT ORIGINAL CREATORS!"

v1.2

  • Replaced non-donor battery management circuitry with a TPS3613-based circuit for smaller BOM and easier routing

v1.1

  • Moved all parts on the top down to allow for compatibility with DMG-style shells
  • Rotated battery for more space
  • Widen SRAM footprint for easier soldering
  • Renamed some reference designators for consistency between designs
  • Changed silkscreen for clarity

v1.0

  • Prototype revision

Resources and Acknowledgements

License

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. You are able to copy and redistribute the material in any medium or format, as well as remix, transform, or build upon the material for any purpose (even commercial) - but you must give appropriate credit, provide a link to the license, and indicate if any changes were made.

©MouseBiteLabs 2023

About

A flashable MBC1-based cartridge for the Game Boy.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published