Showing posts with label Flash Carts. Show all posts
Showing posts with label Flash Carts. Show all posts

Monday, June 24, 2013

The 64M GB Smart Card - Diamond in the Rough for your Game Boy

Update 10/15/17 : This device is on the list of risky, dangerous and flawed products for your retro consoles : http://nerdlypleasures.blogspot.com/2017/08/flawed-risky-and-dangerous-devices-for.html  Don't buy, don't use, spend the extra money for a properly designed flash cart.  I threw mine away.

Update 12/29/15 : This device is almost totally obsolete compared to the EverDrive GB.  Read my review of the EverDrive GB here : http://nerdlypleasures.blogspot.com/2015/01/the-everdrive-gb-game-boy-and-game-boy.html

Some years ago, I felt my Game Boy Advance SP (backlit) was not receiving the 8-bit love it deserved.  Tired of chasing down all the games I wanted to play on a real Game Boy, I decided to purchase a Game Boy flash cart.  The days of the Game Boy were long past in 2010, and handheld systems get precious attention from multi-cart designers.  The old devices from Bung and others had not been manufactued in a very long time, and who wants to deal with parallel port programmable devices in the 21st Century?  Nintendo manufactured an official flash cart called the Nintendo Power GB Memory Cartridge, but it only supported a select number of original Game Boy games, required a special commercial burner, and only had 1MB for ROM and 128KB for SRAM.

Fortunately, while interest in Game Boy games is fairly low, interest in Game Boy sound is high.  Chiptune music has become more and more popular, and the Game Boy's Audio Processing Unit (APU) is very similar to the NES's APU.  However, a Game Boy is portable, it can be brought to a party, a club or a rave and be controlled with the buttons on its face and run off batteries.  A NES requires a gamepad and a monitor screen of some kind, its not very portable and requires a free wall socket.  While you can make music on a laptop, its not very exciting to bring a laptop to a rave and emulation does not have the allure of real hardware.

A ROM program called Little Sound Dj (LSDJ) was developed to allow music programmers easy access to the Game Boy.  There was a need for a cart to store the music that would be played on the Game Boy at these parties and recording sessions, so a new breed of flash carts became available.  One of the most common ones, and one I purchased, is the following : http://store.kitsch-bent.com/product/usb-64m-smart-card


You can also purchase it here : http://www.nonelectronics.com/catalog/index.php?main_page=product_info&cPath=2&products_id=112&zenid=b54fe49ab9c28ca36063e603674744bc

At $40.00, the price is very reasonable and 64 Megabits / 8 Megabytes means that the cart can hold two of the largest Game Boy Color games.  There is also a 32 Mbit /4MB version.  It also has 1Mbit / 128 KB of SRAM.  It has a mini-USB port, no external programmer is required.  It will not work with Game Boy Advance games.

That 8MB is divided into two 4MB pages.  ROMs can be stored on either page.  When you insert the cartridge, the contents of the first ROM page is always displayed.  To get to the second ROM page, you must quickly turn off and then turn back on your Game Boy.  Game Boy Color should not be on the same page as regular monochrome Game Boy games, glitching will result otherwise.  The first thing you see after the Nintendo scroll is the menu (unless only one game is in the ROM page).  The menu uses the name in the game's header, not the filename of your ROM.  Some Game Boy and Game Boy Color games use a Japanese name even though the language of the game is English.

The cartridge is a cheap Chinese-manufactured device, but its essentially the only device around.  It does not fit in a Game Boy Advance SP slot quite as nicely as a real licensed cart, you need to listen and feel for the "click".  It sucks your Game Boy's batteries much faster than real cartridges, even Game Boy Advance games.  It backs up SRAM via a coin cell battery.  Writing to the card is slow, about 3.5 minutes for one 4MB page.  Each page must be written to separately, and writing a new game or games to the page will erase all the old games (because its flash memory).  A single game like Shantae or Dragon Warrior III can use one whole 4MB page.  Multiple games in a ROM page can use no more than 3.75MB because the menu for the page is stored in the last 32KB of the ROM page.  Usually that means that no more than three Game Boy Color games can be fit in a single page, because almost all Game Boy Color games are at least 1MB.

Game Boy (B&W) games range in size from 32KB to 1MB.  Like the NES, the first games released for the Game Boy fit inside the CPU's addressing space and did not require any additional hardware inside the cartridge.  However, almost immediately it was understood that 32KB (the limit of the CPU's addressing capabilities) was simply not going to be enough for games that aspired to something better than first generation NES games.   However, Nintendo kept much stricter controls on mapper hardware than on the NES, which had dozens of different mappers.  Nintendo in the early days of the Game Boy used two "mappers" called MBC 1 and MBC2 (Memory Bank Controller).  All licensed third party companies were required to use these two mappers (if their game was larger than 32KB) and did not use their own custom hardware except in a very limited way.

MCB1 could support 2MB of ROM with 8KB of SRAM or 512KB of ROM with 32KB of SRAM.  Games in the US were released with up to 512KB ROM with 8KB Battery Backed SRAM .  MBC2  games used 256KB ROMs with 512 nybbles of Battery Backed SRAM integrated into the MBC chip.  Much, much later, when the first Pokemon games were released, they used the MBC3 with support for 2MB of ROM and 32KB SRAM.  Additionally, the MBC3 also included a battery backed real time clock chip driven by an external oscillator.

For the Game Boy Color, Nintendo made a MBC5 chip that was included in virtually every Game Boy Color game.  This chip could support up to 8MB of ROM (no US game ever required more than 4MB) and 128KB of Battery Backed SRAM.  It could also support a rumble feature, but not a real time clock chip.  Only Game Boy Color games requiring a real time clock used MBC3.

The flash cart will work in a Super Game Boy or the GameCube Game Boy Player.  In the Super Game Boy, any game with Super Game Boy features will work fine if it is the only game in the page.  If it is not, then you must start the game from the menu, then reset the game to utilize the Super Game Boy features.  Otherwise, the Super Game Boy will play the game as if it were a regular Game Boy game.   It may be unreliable in a Game Boy Pocket due to the power draw, I would find the highest rated mA AAA batteries you can find if you used it in one.

While many, many games work correctly on this cartridge, quite a few will not.  Some write to the flash cart's registers and screw things up.  Some games written for MBC1-MBC3 hardware will sometimes fail to work properly or at all because they use a feature which does not work or works differently on an MBC5.  The only solution is to patch your ROM.  Virtually every game that has had problems reported on the NESDEV forum has a fix.  Most of them you can find here : http://thegaminguniverse.org/ninjagaiden4/mottzilla/ and some you can find in this thread : http://forums.nesdev.com/viewtopic.php?f=20&t=5804.  According to this, the first revision of the 32MB carts had an functional MBC1 emulation mode : http://blog.gg8.se/gameboyprojects/week09/EMS_FAQ.txt

When I termed this flash cart to be a diamond in the rough, the main issue is the stock flashing program.  Engrish aside, the chief problem with the program as it runs on the Game Boy is that it only allows for one game to save at a time!  So if you play The Legend of Zelda : Link's Awakening, save and do not download your save to your PC, when the next game you play is Metroid II : Return of Samus, you will have wiped out your Zelda save.  Most Game Boy games only use 8KB to save the game and the cart has 128KB of SRAM available.  A NESDEV user named Mottzilla made a custom version of the PC loader that will allow for multiple save games on the cart.  It is a must-download, find it here : http://thegaminguniverse.org/ninjagaiden4/mottzilla/

With his addon to the flasher program, each game with save features has an 8KB slot in the SRAM reserved for it.  (MBC2 games still take 8KB even though they only save 256 bytes).  One 32KB game save (for games like Pokemon) is supported, so you can have up to 16 or 12 save files in the SRAM at any one time.  You can see which games currently have saves and you can delete saves from the flash cart's menu.  However, the SRAM is saved between the two ROM pages, so it is generally best to use one ROM page for games with save features and the other ROM page for games that do not save.

There are a few weird games that will never work with this cart.  Some Japanese games used more exotic mapping hardware like the HuC-1 and HuC-3, which supported an infrared sensor for wireless communication.  None were released in the US or Europe except for a Pokemon clone called Robopon - Sun Version, which used the HuC-3 and came in an oversized black cartridge.  It has an infrared port for commications with other Robopon carts.  Uniquely, it has the capabilities to make simple sounds from the cartridge when the cartridge is not in use.  It has a speaker and an extra (user replaceable) battery for this function in addition to the battery backed internal RAM.  Finally, it has a real time clock.  Kirby's Tilt 'N Tumble used the MBC7 due to its motion sensor.  The Game Boy Camera is another piece of unique hardware that includes a ROM which functions like a game cartridge.  Finally, there is an official ROM of Mortal Kombat 1 & 2 which uses MCB1 in an odd way to support its 1MB size, just use the standalone versions of the games instead.  Unlicensed games, such as those released by Sachen and Wisdom Tree, use their own custom mapper and are not playable with this flash cart..

Those of us who love Game Boy games have been yearning for years for a proper Game Boy flash cart like the PowerPak.  One that accepts microSD cards, does not suck down batteries, properly supports all four major MBCs and a real time clock, and whose menu hardware can be shut off from the system upon game loading.  It does not exist as of yet (but Gamegear carts do, strangely), so at the moment we are stuck with this device, which is much better than nothing.

Wednesday, January 9, 2013

Krikizz Mega Everdrive : The Ultimate Sega Genesis/Mega Drive Flashcart

Nintendo fans have had products like the NES PowerPak and SNES PowerPak.  These cartridges allow the user to play game ROMs on real hardware.  They use flash media to store the games, and the cartridge hardware lets the user select a game from a file system and start the game.  Prior to the PowerPak, most devices were from the 90's and used floppies or CD-ROMs to store the games or were development carts.  These methods were often slow, not very compatible and the devices were hard to find and expensive to boot.  The NES PowerPak will play virtually any licensed or unlicensed non-Japanese game, and there are only two dozen games that the SNES PowerPak will not play due to the extra hardware contained in certain carts.  (The SD2SNES has the capacity to emulate some of that hardware).

The first modern device that allowed multiple saves on a flash cart for the Sega Genesis was the ToToTek MD Pro.  This will support multiple games, but the flash storage is on the chip and is a maximum of 64Mbit.  At 64Mbit you would be able to fit Sonic 1, 2 3 & Sonic & Knuckles, but not much else.  Like other older devices, it uses a parallel port to transfer games onto the flash memory.  It also supports games that have battery-backed save ram (S-RAM).

Krikzz has released a range of flash carts.  One of his first products was the Everdrive MD.  This improved on the earlier MD Pro by using SD cards to load the games.  Unlike the earlier device, save games are stored on the SD card, not on real battery backed S-RAM.  It also supports Sega Master System games, the MD Pro does not, and has a pause button soldered onto the top of the PCB for the SMS pause function.   Some games, like Alien Syndrome, Bomber Raid, Great Volleyball, Montezuma's Revenge, Penguin Land,
Shanghai, Tennis Ace, Where in the World is Carmen San Diego and Wonder Boy in Monster Land will require a true Sega Master System controller to work properly.  You can find IPS patches to fix these games here : http://krikzz.com/forum/index.php?topic=1203.0

Even with the Everdrive MD, there was room for improvement.  The use of flash memory to store a game during gameplay meant that when you want to play a new game, the flash chip must be erased and reprogrammed.  This can take close to a minute for larger games.  Additionally, the flash chip is only good for a limited number of writes, so the 10,000th time you write a game, it could permanently fail.   However, that is the minimum number of write cycles for a modern flash chip, so the chip may be able to handle many, many more writes.  It would take a very long time to write to the chip so many times that the chip would fail. Finally, to flash a firmware update required special JTAG hardware.  Users would be left out of new features and compatibility fixes unless they sent their cart to someone who had the hardware to reprogram it.

Krikzz released the Mega Everdrive last year to address several of these issues.  He used an Altera Cyclone II FPGA to drive the board and its functions, and there is still room for more features.  Updates to the OS firmware are as simple as copying a new OS file to a subdirectory on your SD card.  It does not have separate firmware requiring a JTAG Altera Byte Blaster to flash.  More importantly, games are run off RAM, not flash, so write cycles are no longer and issue and load times are extremely fast.  It has a slot for regular size SD and micro-SD cards, although extracting the latter when the PCB is fitted inside a cartridge shell would be tough.  It has a USB port for development purposes.

The downside to this is that the Mega Everdrive costs twice as much as the Everdrive MD.  In addition, for either device you will need an SD card and a cartridge shell to protect the PCB.  I used a fairly common game, but not a good one.  I peeled off the label and used Goo Gone to remove the sticky stuff.  Thorough wiping down and cleaning the plastic is also required.  A drill and a dremel are ideal to cut into the plastic top, but I used an X-Acto knife and a pair of pliers to cut the holes.  You will need to cut 3 holes, one for the USB connector, one for the reset button and at least one for the SD card.  A 4.5mm gamebit is necessary for opening the shell, of course.

My Mega Everdrive's Cart Shell, Hacked to Bits by Yours Truly
So, having cut the cartridge shell, what does one do to get up and running?  It is incredibly easy, first format an SD card using regular FAT.  A 1GB card will be sufficient for all US Licensed games.  Then download the OS (MEGAOS.BIN) file from Krikizz and put it in a folder on the root of the card named \MEGA.  At this point your cart will work on a Genesis/Everdrive and is ready for games.

With SD Card, Ready for Gaming Goodness!
For ROMs, I recommend using the No-Intro sets.  They are comprehensive and contain only verified dumps unless no good dump is known.  A good dump is a dump of a game cartridge that has been verified multiple times by multiple people.  The GoodSets from Cowering are useful to supplement these ROMs.

Sega Genesis/Mega Drive ROMs in the No-Intro sets have the .md extension.  Mega Everdrive has a few issues like Phantasy Star IV and some other games not saving and Super Street Fighter II' not loading with the ROM having an .md extension, so I would strongly recommend using a file renamer program to rename the file extensions to .bin.  With a .bin extension, those games work perfectly.  (This may no longer be an issue with the most current OS).  Whether .md, .gen or .bin, a Sega Genesis ROM is a straight binary dump of the contents of the cartridge ROMs.

The Mega Everdrive supports Sega Master System roms without a Power Base Converter, and the button on top acts like a SMS pause button.  Files should have an .sms extension (these are also straight binary dumps).  It also supports 32x cartridges if you have the Sega 32x addon.  These cartridges should have a .32x extension.  However, SMS games will not work if a 32x is in between the cartridge and the console.  Some SMS games don't like it when a Sega CD is attached either and should only be used in a Model 1 or 2 Genesis or Mega Drive system.  The ROM file size for a Sega Master System game must be a strict power of 2, (128KB, not 129KB like a NES game).  

This is the first screen from which you can use the cartridge, takes less than 10 seconds with a TMSS Genesis
Krikizz has made a few improvements over bunnyboy's PowerPak.  First, the menu system allows you to scroll by page, making it easier to use subdirectories with more folders.  The text is much easier to read on the Mega Everdrive than it is on the SNES PowerPak.  Of course, the Genesis used a 320x224 resolution vs. the SNES's 256x224, so more characters can be displayed on a single line.  Additionally, the Mega Everdrive creates save files, the PowerPaks required blank save files with the proper names.

Each subdirectory lists games like this
Important features of the Everdrive include the MEGAKEY options.  This allows you to to change the region of your Genesis/Mega Drive without having to solder a switch onto the console's PCB.  It does not work with some ROMs like Streets of Rage III or Golden Axe III, as they use advanced methods to detect the console region.  On early carts like Streets of Rage, you can see the Japanese title screen, Bare Knuckle, by using this option.

The cartridge also has support for savestates, something that took years for the PowerPaks to even begin to approach.  The functionality is not perfectly compatible, but some games (Sonic 1 & 2) really needed a password or battery backed save system.  It also supports Game Genie and Pro-Action Replay codes.  It only works with Genesis/MegaDrive games 4MB or less.

Official Genesis games can be 5MB, 4MB, 3MB, 3.25MB, 2.5MB, 2MB 1.5MB, 1.25MB, 1MB, 768KB, 640KB, 512KB, 256KB, 128KB, exactly (only US games included here).  This includes Sonic + Knuckles combos.

Just one more button press...
The device supports loading a different Mega CD BIOS so discs from other regions can play.  For those few CD games that use the 32x, you will need a region appropriate 32x.  The Sega CD + 32x games are all awful FMV games.  The cartridge will act like a CD RAM cartridge, so Sega CD games can save their games as intended.

Early non-licensed games from Electronic Arts & Acclaim, Budokan, Ishido : Way of the Stones, Onslaught, Populous and Zany Golf work just fine in my TMSS console (motherboard VA6), since the Mega Everdrive passes the TMSS detection when the console is turned on.  Ordinarily, the US cartridges of these games will fail to load in a TMSS system, with the exception of a licensed Zany Golf cartridge.  European cartridges of Populous and Budokan are licensed and work fine in an NTSC Genesis.  Also, if you press reset after turning the power on, you will not see the TMSS screen unless you were playing a Sega Master System game.

Sonic & Knuckles can work as a standalone ROM, or in combination with Sonic, Sonic 2 or Sonic 3.  Just use the approriate ROM that combines the code for Sonic & Knuckles with one of the other ROMs.  Note that for the Sonic & Knuckles + Sonic 2 combo, you need the ROM from the GoodGEN set with the filename "Sonic and Knuckles & Sonic 2 (W) [f1].bin".

And voila!  Just don't forget to press reset before turning the system off to save your games
Unlike an Everdrive MD, the game will not remain in memory when the system is turned off, and you need to press the reset button to allow saves to be written to the SD card.  This requires some self-training.  There is a new version of the Mega Everdrive, v2, which has a battery to power the SRAM chip.  This will allow the console to write the save to a file even if it is powered down.  It will write the file the next time the console is turned on.

A reset will not bring you back to the title screen but to the Mega Everdrive main menu.  Unfortunately, X-Men requires you to press the reset button lightly to initiate a soft reset and get past Mojo's World.  The current solution to this problem is hit reset, go back to the Mega Everdrive's menu, and input the Game Genie code which will allow you to start on the next stage.

Onslaught also uses the reset feature in a strange way.  In order to obtain a password, you must press press reset during gameplay or at a game over screen, and the password will appear on the title menu after the game reboots itself.  This will obviously not work in the Everdrives for the reasons stated above, but Onslaught is a craptastic game, whether on the Amiga, Atari ST or the Genesis and it is difficult to imagine anyone wanting to play it a second time.

As of OS v10, has a reset to game option, so you can run X-Men and Onslaught as they were intended.

The Mega Everdrive does not support Virtua Racing, as that cartridge had special advanced 3-D polygon processing hardware called the Sega Virtua Processor.  Unless and until this is emulated, this ROM will not run.  There is a 32x ROM of Virtua Racing that runs with a 32x.  J-Carts (with two extra controller ports built into the cartridge) from Codemasters,  Pete Sampras Tennis#, Pete Sampras Tennis 96, Micro Machines 2, Micro Machines 96, Micro Machines Military Edition, and Super Skidmarks will not support players 3 & 4.  I believe that all the J-Cart games were released with and without the J-Cart attachment.

# - Only J-Cart game released outside Europe

The Mega Everdrive cannot coexist with the Sega 3-D Glasses, so Master System games that require or support the 3-D Glasses will not work in 3-D.  The 3-D Glasses require a card slot, which is only available on a Power Base Converter in 16-bit Sega land.  The Mega Everdrive will not work with a Power Base Converter in between the cartridge and slot.  Also, since you are running Master System games on a Genesis, F-16 Fighting Falcon will not work and some games will require a Master System controllers and peripherals.  You can find patches for the ROMs of games which will not work with a Genesis controller here : http://krikzz.com/forum/index.php?topic=1203.0

There has been discussion of using the Mega Everdrive to emulate a Sega Mark III FM Sound Unit YM-2143 sound chip, nothing has yet come of it.  You can play the snail maze game, built into the BIOS of the early Master Systems, with the appropriate ROM.

Finally, the last weakness of the Mega Everdrive v1 and the Everdrive MD is that it does not support games which save to EEPROM.  This should be all the licensed commercial Sega Genesis/Mega Drive games that use EEPROM, but this list is not intended to be comprehensive.

Bill Walsh College Football
Blockbuster World Video Game Championship II
Brian Lara Cricket
Brian Lara Cricket 96
College Slam
Evander Holyfield's Boxing
Frank Thomas Big Hurt Baseball
Greatest Heavyweights of the Ring
Honoo no Toukyuuji Dodge Danpei
John Madden Football 93
John Madden Football 93 - Championship Edition
Megaman - the Wily Wars/Rockman MegaWorld*
Micro Machines 2 - Turbo Tournament
Micro Machines 96
Micro Machines Military
MLBPA Sports Talk Baseball
NBA Jam
NBA Jam TE
NBA Jam TE (32x)
NFL Quarterback Club
NFL Quarterback Club 96
NHLPA Hockey 93
Ninja Burai Densetsu
Rings of Power
Shane Warne Cricket
Wonder Boy in Monster World/Wonder Boy V - Monster World III

* - One version of the Japanese ROM exists that uses S-RAM, the other uses EEPROM.

While support for EEPROM saves may eventually come, Krikizz has indicated firmly that he will not add support for Pier Solar.  While the game has been dumped, it uses EEPROM in a unique way that Krikizz will not support so as not to encourage piracy.  The game checks for the existence of the EEPROM and will not work if it is not found.  For the other games, most have been hacked to change the save type to battery backed S-RAM.  Use GoodGen, currently at version 3.21, to find them.  I believe the [f1] or [f2] indicates the game has been fixed for saves.  Some only have an [h1C], [h2C] or [p1] etc. I believe this indicates the rom has been hacked to work in an old-style copier or in a pirate cartridge.  They should run but they may not be able to save.  NBA Jam and NBA Jam TE 32x are the only two games confirmed not to have fix or hack available. NBA Jam will at least play without the EEPROM, and if you really want to save, loose carts are as common as they come (or you can try the savestate feature).  The pirate Rings of Power ROM may not be able to save, unless the savestate feature works.  The MegaEverdrive v2 has support for EEPROMs, but has not been comprehensively tested outside Wonder Boy.

Since I have an NTSC machine, the Micro Machine ROMs will run too fast.  I don't care about sports games, so the only good games left in English are Mega Man and Wonder Boy, and they have fixes.