From WikiTemp, the GBAtemp wiki
Revision as of 08:22, 18 August 2007 by ThaiGrocer (talk | contribs)

AKA: 3-in-1, 3 in 1, EZ Expansion Pack, EZ-Flash 3-in-1, EZ-Flash 3 in 1, Expansion Pack
Manufactured by: EZ-Flash

3 in 1 Expansion Pack


Variants

  • 3 in 1 Expansion Pack for EZ-Flash V for DS Lite (White or Black)
  • 3 in 1 Expansion Pack for EZ-Flash V for DS (AKA DS "Phat" Version or GBA Size)

General

The 3 in 1 Expansion Pack is a NDS Slot-2 Cart that works in conjunction with NDS Slot-1 Carts. The device officially attempts to integrate three distinct solutions. First, the device is capable of loading GBA games stored in slot-1 devices in a manner similar to previous slot-2 solutions created by the EZ-flash team. Secondly, the 3 in 1 is a memory expansion pack. Finally, the device is a competing rumble pak expansion for games that support official DS rumble pack. Furthermore, authorized third-party access to the hardware features have expanded the capability of the Expansion Pack.

The 3 in 1 Expansion Pack for EZ-Flash V can be officially purchased as a bundle with the EZ-Flash V or separately. The product was specifically designed for EZ-Flash V, but users of other slot-1 cards are able to utilize the Expansion Pack.

Hardware Features

  • 256 Mb (32 MB) of NOR Flash Memory. This type memory is able to retain data without requiring an uninterrupted current. Overall, it takes a few minutes to write data to it. One typical use includes copying over a GBA ROM, therefore allowing the 3 in 1 to act like real GBA cartridge.
  • 128 Mb (16 MB) of PSRAM. This memory does not retain data when the power is turned off, but it can be write speeds are much faster than NOR write speeds.
  • 4 Mb (512 KB) of battery powered SRAM. The battery is necessary to retain data.
  • Programmable embedded "rumble pak" (haptic feedback) device

Software

Official

  1. GBA Loader:
    • GBA ROMs and save data are stored long-term in the Slot-1 device memory
  2. 128 Mb (16 MB) PSRAM Expansion:
    • Extra RAM necessary for programs like DS Opera Web Browser loaded from Slot-1 device.
    • Accessible by homebrew developers for implementations not limited to RAM Expansion.
  3. Rumble function:
    • Works with all official rumble enabled NDS games and homebrew stored in Slot-1 device.
    • Rumble can be set to three levels of intensity.

Third-Party

The source code necessary to utilize the key features of the expansion pack is readily available to developers. There have already been many successful solutions for third-party slot-1 carts. Currently, the most popular homebrew software utilize the hardware features for their officially intended uses. Additionally, due to the relatively unspecialized nature of the hardware, many creative uses have already started by homebrew developers.

  • GBALdr by Cory1492 - A homebrew application run from the DS that will load games directly to NOR memory, load/save .sav files, and can auto-backup the save data currently on the cart when loading a new game. Due to the fact that it only loads games into NOR memory, it can be painfully slow, taking up to 5 minutes in some cases.
  • 3in1 ExpPack Tool by Rudolph - Another homebrew application that runs from the DS. This is by far one of the best loaders available. Just as with GBALdr, it can load games to the 3 in 1. What makes it different than GBALdr is the fact that it can load all ROMS under 16MB directly to the PSRAM on the 3 in 1, making copy time less than a minute in nearly all cases. Additionally, it can load games to NOR memory if they exceed 16MB. Two other features that I find to be unique to this tool is the ability to turn the Rumble Pack on and off (for supported DS games) and the ability to switch the cart over to an Expansion Pack for use with the Opera Browser.
  • NDStation by chuckstudios - A very interesting approach to loading ROMs on the 3 in 1. Rather than having a homebrew running on the DS transfer the ROM to the 3 in 1, chuckstudios developed a Windows program (later ported to Linux by dg10050) that packaged the GBA ROM in an .NDS file. This packaged file, when launched from a Slot 1 card, would backup any existing save on the 3 in 1 and load the ROM onto it. The aim of the project is to give things a more integrated and unified feel with your Slot 1 cart. Additionally, you can customize the icon and test your Slot 1 will display when the ROM is selected. Some users have reported white lines in the GBA frame when the frame picture is not present as well as minor graphical glitches. The author says this is due to his caching method, and should be fixed in version 1.2, which is due to be release around the 20th of August. While the project is still in its early stages, it does show a lot of potential and is one to keep an eye on.

Compatibility

The current compatibility of the 3 in 1 with official games are practically complete. The official EZ-Flash V kernel software is capable of integrating of all the hardware features of the 3 in 1 Expansion Pack. The EZ-Flash team does not ensure hardware compatibility with other slot-1 devices. Compatibility with third-party slot-1 carts have been observed to be as good or better than official hardware and software compatibility.

In every case, GBA ROMs that originally use more than 1 Mbit of save space and/or are larger than 128 Mbit must be written to the NOR flash memory. Otherwise, they can be stored in the more volatile PSRAM. The NDS Browser requires additional patching for unofficial slot-1 carts. The rumble feature is currently only available for NDS games.

Review

EZ-Flash V GBAtemp Review

Excerpt, regarding Expansion Pack: "The build quality is great, it feels very sturdy and the black brushed finish was a good choice. The cart is held together with a single screw on the back. It fits firmly in the GBA slot however it does seem to stick out ever so slightly, so slight it’s hardly worth mentioning. You’ll notice it if you brush your finger over it though."

Images

Initial Setup

GBA Loader

  1. While there are no actual steps that need to be performed in order to set the EZ-Flash V 3 in 1 up for a non EZ-Flash V Slot 1 cart, you will need a 3rd party loader to take a ROM stored on the Slot 1 cart onto the 3 in 1.
  2. Next, prepare your GBA ROMs for the 3 in 1 by patching them to save to SRAM. There are two tools that will do this:
    • GBATA - GBATA is the most widely accepted tool to use when SRAM patching GBA ROMs. All you need to do is load up the ROM (click the [...] button), click on the SRAM Patch tab, and click the Patch button. If the button is grayed out, then the ROM does not need to be patched.
    • EZ4 Client - EZ4 Client is an alternative to GBATA. While it performs a similar function as GBATA, several users have reported lost save files with roms patched with this program. If you have a GBA ROM that uses a 1mbit save, you must use this program to patch it.
  3. Copy your loader and/or ROMs to your Slot 1 cart (or microSD card) using the steps outlined for the loader you are using.

Frequently asked questions

Can the 3 in 1 only hold 1 GBA ROM at a time?

The 3 in 1 can only hold one ROM in its PSRAM. Any time you want to play a game 16MB or less, you flash it over to the PSRAM on the cartridge using your loader of choice. This is standard with all slot 2 cartridges. Most slot 2s that have firmware (the ones with removable or internal storage have the loader built-in). The only reason people think otherwise is because most Slot 2s have either removable or internal storage for ROMs, homebrew, etc, which the 3 in 1 does not. Please read the initial setup section, it will explain everything perfectly.

Where do I put my ROMs

Unlike alot of Slot 2 solutions out there, the 3 in 1 does not have its own removable storage. This is due to the fact that it was initially designed for use with the EZ-Flash V. ROMs are stored on the removable media or internal storage of your Slot 1 device. Where they are put is determined by which solution you choose from the third-party solutions list.

Whenever I load up a game, my save is gone! What do I do?

First off, make sure you are SRAM patching your games using one of the two tools listed in the initial setup section. If you are already doing this, make sure you are loading games in either PSRAM or NOR, not both. From what I have seen, most loaders want you to use one or the other for it to work correctly. Check the help files of your loader for more information.

When do I need to patch a GBA ROM in regards to the saving function?

Check to see if the ROM you are trying to patch isn't already using SRAM. Anything already using up to 512kbit (64KiB) SRAM to begin with shouldn't need to be patched at all. GBA games that originally used EEPROM or FLASH, and/or has over 512Kbit, will need to be patched. It has been suggested that 1024Kbit save types have to be patched with EZ4 client since GBATA has not implemented the concept of SRAM bankswitching. GBATA, for example, will not allow the file to be patched if unnecessary.

Useful links