Friday, February 3, 2017

EverDrive GBA X5 - The Ultimate GBA Flashcart



























In July of 2016, Krikzz finally released his long anticipated EverDrive flash cart for the Game Boy Advance.  He called it the EverDrive GBA X5 and sells it for $99.99 on his site and through his authorized vendors.  I bought mine on his annual Black Friday sale for 20% off, so it ended up costing me $87.00, shipping to the USA (from Ukraine) included.


The "X5" in the name represents a new branding of his product lines.  His new products will be released with an X3, X5 and X7 designation.  Each designation indicates the feature support of the flash cart relative to a desired feature set for flash carts.  The designation is not tied to the products released for any particular console.  For example, the Mega EverDrive X7 has save state support whereas the X5 and X3 do not.  Furthermore, the MegaEverDrive X7 and X5 support saving games without resetting the console whereas the X3 requires pressing reset to save or you lose your save games.  Krikzz has not officially used the X designation for his products except those released for the GBA and Sega Genesis.  There is no such thing as a GBA X7 or X3 and Krikzz has no current plans to make any other GBA flash carts.




The GBA X5 uses standard microSD cards to store games.  It supports SD (up to 2GB), SDHC (4GB-32GB) and SDXC (64GB+) cards.  The slot is spring loaded, so inserting and removing cards is not difficult.  It comes with 32MB of PSRAM to run games, and no GBA game used more than a 32MB ROM.  The PSRAM allows games to load very quickly unlike the Flash RAM used in the EverDrive GB and most other flash carts.  The GBA X5 has 128KB of battery backed SRAM to hold game saves and retain the state of the real time clock (it does not support save states).  The battery is removable without soldering.  Unlike some other flash carts, GBA ROMs require no patching to work with the flash cart.  There is no special or Windows-exclusive software required to use any of the EverDrives.  The menu is the same no-nonsense menu found on other EverDrives :


The GBA X5 works in every official Game Boy Advance product, the original, SP (frontlit and backlit), the Game Boy Player for the Gamecube, the GBA Micro, DS and DS Lite.  It will also work some clones like the Revo K101 and Super Retro Advance.  It does stick out a little compared to regular GBA flash carts, but not as much as Game Boy and Game Boy Color carts.

Game Boy Advance games used three types of memory to save games.  First is the standard battery-backed static RAM, used since the NES days.  Games using this method typically have 32KB to save data.  Second is EEPROM, used for games only requiring 8KB to save games.  (Nintendo's boards provide an option for a 512byte EEPROM, but I am not sure if any games used so little memory). Third is Flash RAM, used for games requiring larger saves of 64KB or 128KB.  The GBA X5 supports all three types of saving methods without any patching required for the ROMs.

The game compatibility of the GBA X5 is extremely high.  It will run any normal GBA ROM, i.e. a ROM that does not use a special feature.  I cannot urge people enough to use No-Intro ROMs, early Game Boy Advance ROM releases were often hacked to change the save type and add hacker group intros.  The GBA X5 will run the 32MB Game Boy Advance Video cartridges except on a Game Boy Player (due to a software check for the Player).  It will also run the Classic NES and Famicom Mini series, which GBA emulators often had trouble with in the past.  It will not run any Game Boy or Game Boy Color ROMs natively, you should use an EverDrive GB for those.

A small number of GBA games had a special feature built into the cart.  The only special feature supported by the GBA X5 is the real time clock used by the Pokemon and Boktai games.  It does not support the Solar Sensor, Rumble Feature, the Gyro/Tilt Sensor or 64MB GBA Video Paks.  Here is a list of games which are known to support each feature :

Solar Sensor
Boktai: The Sun is in Your Hand
Boktai 2: Solar Boy Django
Shin Bokura no Taiyō Gyakushū no Sabata

Gyro/Tilt Sensor
Koro Koro Puzzle - Happy Panechu
WarioWare: Twisted!
Yoshi Topsy-Turvy

Rumble Feature
Drill Dozer
WarioWare: Twisted!

Real Time Clock
Boktai: The Sun is in Your Hand
Boktai 2: Solar Boy Django
Rockman EXE 4.5 Real Operation
Pokemon Emerald
Pokemon Ruby
Pokemon Sapphire
Shin Bokura no Taiyō Gyakushū no Sabata

64MB Game Boy Advance Video
GBA Video Movie Pak Vol. 1 - Shrek
GBA Video Movie Pak Vol. 2 - Shrek 2
GBA Video Movie Pak Vol. 3 - Shark Tale
GBA Video Movie 2-in-1 - Shrek & Shark Tale
Disney Channel Collection Vol. 2

I would note that there are good patches available for the Boktai games to set the sunlight level, but this makes the game much easier than it was designed to be.  There is no English translation for the third game in the series Shin Bokura no Taiyō Gyakushū no Sabata.  While there are patches for WarioWare and Yoshi to turn the gyro movements into button presses, they really don't work very well.

As of OSv1.10, each RTC game keeps track of its own time independently.  While the Boktai games allow the player to change the time with ease, the Pokemon games do not let you change the time after you set it upon starting the game.  See here for a better description of the issue : http://bulbapedia.bulbagarden.net/wiki/Berry_glitch

When the GBA X5 was first released, SD card compatibility was rather rocky.  Many of the early adopter reviews and early online forum posts at krikzz.com indicated that it was a hit or miss proposition of whether your card would work with your GBA X5. I decided to wait for a while until the bugs were worked out.  As of OS v1.11, these problems appear to have been resolved.  I am using a 16GB SanDisk SDHC card in my GBA X5 with absolutely no issues.  The X5 reads my card, loads my games and writes saves to files for loading when I want to play the game again.  I made sure to format my card with FAT32 and the default allocation size (16KB).

While the X5 runs the Classic NES and Famicom Mini Series games just fine, it also can emulate the NES and some other consoles, GB/GBC, SMS and Game Gear, with the help of 3rd party emulators. The emulators are PocketNES, Goomba and SMS Advance.  All of these emulators were released years before the EverDrive GBA was released, so do not expect 100% accuracy from any of them.   Even though Goomba will emulate Pokemon Gold and Silver, it will not support the RTC in the GBA X5.

I tried the SMS Advance emulator out and was rather impressed with the results.  I do not have a Game Gear, so I wanted to see if the SMS Advance emulator could provide a decent Game Gear experience on a backlit GBA SP.  The emulator uses a 1:1 pixel mapping just like how Game Boy games are displayed on a GBA.  The Game Gear and the Game Boy both use a 160x144 resolution, so this would be expected.  The original Game Gear screens are rather washed out and the McWill replacement LCD screen does not come cheap.

There were a few graphical effects that were not emulated like the background for Rise of the Robots, but otherwise there were not blatant graphical glitches all over the place.  While there are sixteen Game Gear games that will not look right unless you run them in Sega Master System mode (because they are truly SMS games that just use the Game Gear's screen scaling, you can use the L & R buttons to shift the screen up and down.  The the sound is very well emulated except for the digitized voices on the SEGA screens in the Sonic games.  Unfortunately, the emulator does not allow you to save games in the relatively few Game Gear games that save games to cartridge memory.

I primarily use a backlit GBA SP for my GBA gaming.  Many GBA games, like the Super Mario Advance series, tend to have rather bright color palettes.  These extra-bright palettes were a benefit to the individuals who had to suffer with the non-backlit GBA and GBA SP.  But for the backlit screens, they tend to look washed out.  Patching these ROMs to use a more subdued palette, typically from their SNES originals, helps improve the overall experience significantly.

Other patches worth considering are the Mother 3 English Translation.  There is also a hacked version of Super Mario Advance 4 with all the e-reader levels included.  Often, the translation of the music and sound effects from the SNES ports was rather lacking, so there are fixes for the Final Fantasy (IV-V-VI) games.  There are also a few patches that can reduce some of the censorship found in these games.  One could hope that the improved ease of development using the GBA X5 may encourage more such efforts.

Finally, before the GBA  X5, perhaps the best GBA flash cart was the EZ-Flash IV.  The current EZ-Flash uses a spring loaded micro-SD card, costs about $40 and uses the same dimensions as a regular GBA cartridge.  However, it can only load games up to 16MB quickly to its PSRAM.  For 32MB games, it must burn them to NOR-Flash RAM, which is a far, far slower process.  I have read that it can take minutes to flash a game, but after you flash it once you can start that game immediately as often as you like until you decide to write a new game.  Granted there are not many 32MB games on the GBA worth playing.  It supports SD and SDHC cards, which limits you to a 32GB card.  It does not support an RTC, so you needed RTC-setting patches to get the RTC games to work fully.

Given the above, it would seem that the GBA X5 doesn't seem to add a great deal over the EZ-Flash IV for the extra $60 you may have to pay for one.  But the EZ-Flash requires you to patch games to get them working and saving on your GBA.  The client software will not allow you to patch many games at once, tends to crash and may not like certain operating systems.  Patching software to fit the hardware tends to be much less reliable than the EverDrive approach of fitting the hardware to the software.  As a result, the nearly hassle free option of the EverDrive is clearly the best choice for a GBA flash cart.  

3 comments:

iNdioNicarao said...

Great write up thanks for sharing.

Thought it was worth mentioning that Pokemon Pinball also used Rumble.

Anonymous said...

Does it supports Multiplayer and Link Cable with Gamecube games? i.e. Pokemon Emerald to Pokemon XD
Fire Emblem Sacred Stones to Fire Emblem Path of Radience

Great Hierophant said...

They appear to be compatible according to a report on Krikzz' forum, but the responses were unspecific. I would suggest loading the appropriate game in the X5 before starting the GameCube game.