GBA Movie Player
From Wikipedia, the free encyclopedia
The GBA Movie Player, abbreviated GBAMP, is a device that reads CompactFlash or Secure Digital cards to upload data onto the Game Boy Advance (it is also fully compatible with the Nintendo DS's GBA compatibility mode). With this device, a user can play NES games through the PocketNES emulator, play GBA games up to a size of 256 KB, watch video, listen to specially converted music files, and read .txt files (referred to as e-books). With the addition of the Game Boy emulator, GoomBA, it can also play original Game Boy or dual-mode Game Boy Color games. The firmware update E19 adds a built in launcher for Game Boy files from the menu system, whereas in previous firmware versions it was necessary to build Goomba compilations beforehand.
Contents |
[edit] Conversion Software
The PC-side software uses DirectShow technology to convert videos to the GBA Movie Player's format. It is also possible to install the conversion software's DirectShow filters and then use low-level DirectShow tools such as GraphEdit to convert files, rather than using the official conversion tool.
When using Compact Flash card, only Type I (not Type II) memory is supported.
[edit] Lockout Feature
A lockout feature was used to try to stop other manufacturers from copying the player's firmware and making knockoff products, but it was ineffective. Unauthorized knockoffs appeared on the market, and attempting to upgrade the firmware on a knockoff causes the product to reboot to the message "Update Failed! This card is a FAKE!! System Crash!!!" every time it is turned on. Moreover, the locking feature frequently prevents the real GBAMP from booting, especially after quickly turning the power off and on.
[edit] Homebrew
The GBAMP will also load and run GBA multiboot binaries homebrew. Because programs are loaded into the GBA's 256 KB RAM, ROM sizes are limited to 256 KB, although the more expensive M3 adapter has 256Mb (32MB) of onboard RAM for use with full-size GBA programs. Here are some GBA resources:
- GameBoy Advance Development
- GBA Game Programming Crash Course
- My First GBA Demo (provides extra insight into multiboot)
A programmer who goes by the name of "Chishm" has created an unofficial firmware modification which allows owners of a Nintendo DS with old firmware and PassMe (or with FlashMe firmware) to run Nintendo DS homebrew code from the GBAMP.
[edit] Commercial Games
On July 25, 2006, a group known as TriForce cracked a patching program known as Max Overload, which is meant for Datel's Max Media Player. This was possible because the Datel product is based on the GBA Movie Player. This program allows for the use of commercial Nintendo DS ROM images on a GBA Movie Player in conjunction with a PassMe variant. A proof of concept loader similar to the cracked Max Overload was made before this, but it was locked to individual Nintendo DS MAC addresses, which are not easily changeable.
[edit] Console Emulation
The built-in NES and Game Boy loaders have size limitations; the emulator plus game must fit inside 256 KB of memory. Special versions of PocketNES and Goomba were created to overcome these limitations. One special version of PocketNES, called PocketNES-compy, uses compression to shrink the game before it is loaded. In that version, games are limited to 256k instead of 192k. Another version can load files directly off the CompactFlash card using virtual memory techniques, bypassing all size limitations of the usual built-in software but creating slowdown on some of the larger games. The special versions were created independently of the company which makes the movie player, using information discovered through reverse engineering.
[edit] NES Gameplay
Multiplayer can be done via GBA link cable on GBA, GBA SP, and Game Boy Player. The NES screen is bigger than the GBA screen. PocketNES can display the NES game's graphics in a window that the player can scroll up and down, or it can scale the graphics to fit the smaller screen.
[edit] Movie Player Version 3
Since the release of the GBAMP, a newer version, the M3 Perfect adapter, has been released for the Nintendo DS and the DS Lite. The M3 adapter improves on the GBAMP by adding 256Mb (32MB) of RAM and allowing for Nintendo DS ROMs and DS-native homebrew applications to be run on a Nintendo DS in conjunction with a PassMe device.
The official PassMe variant for the M3 adapter is known as the PassKey. An update to the original PassKey, known as the PassKey2, allows for the running of DS code on DS consoles that have the newer firmware (version 3 or above). PassCard 3, an even newer kind of passthrough (actually now a misnomer due to the fact that no "passing" is done) contains encrypted Nintendo DS game code and therefore runs normally without exploiting bugs in the firmware (PassMe) or BIOS (PassMe2).
The added 256 Mbit (32 MiB) of RAM also allows for all GBA games to run at full speed with no slowdown because all the game data is loaded into the RAM. DS games 32MB or smaller can also be loaded into RAM, but if they are over 32 MiB, they must be directly booted from the CompactFlash or Secure Digital card. Games loaded from the CF/SD card rarely exhibit slowdown, as compatibility with DS games is very high on the M3 adapter.
Current M3 Versions
M3 Perfect - CF Uses CF Media; Plays NDS/GBA/Video/MP3
M3-Perfect - SD Uses SD Media; Plays NDS/GBA/Video/MP3
M3-Perfect - Mini-SD Uses Min-SD Media; Plays NDS/GBA/Video/MP3 The overall size is a little smaller than the CF/SD version
M3-Perfect-Lite Uses Micro-SD Media; Plays NDS/GBA/Video/MP3 Made to fit flush in the DS Lite cartridge slot
M3-Pro-Mini Uses Min-SD Media; Plays NDS/Video/MP3 (no GBA¹); cheaper than the 'perfect' version. The overall size is a little smaller than the CF/SD version
M3-Pro-SD Slim Uses SD Media; Plays NDS/Video/MP3 (no GBA¹); cheaper than the 'perfect' version. The overall size is a little smaller than the CF/SD version
M3-Pro-Lite Uses Micro-SD Media; Plays NDS/Video/MP3 (no GBA¹); cheaper than the 'perfect' version. Made to fit flush in the DS Lite cartridge slot
¹ an email from M3 stated that the Pro versions cannot play GBA ROMs over 32m- so one would conclude that it can play GBA games up to 32Mb (32 MegaBit = 4MB) or less;
[edit] See also
- GP2X - a more versatile Linux-running handheld console that serves similar emulation and multimedia purposes; however, it serves these purposes via the console's features rather than a special cartridge.
- Play-Yan
- MoonShell
[edit] External links
- M3 Adapter website
- Unofficial M3 Forum
- Unofficial M3 Wiki
- GBA Movie Player website
- Special version of PocketNES which uses compression
- Special version of PocketNES which loads files directly off the CompactFlash card
- Special version of Goomba which loads files directly off the CompactFlash card
- Chishm's unofficial firmware update for Nintendo DS homebrew for the GBAMP V2
[edit] Reviews
M3 Perfect CF
M3 Perfect SD
M3 Lite Perfect
Nintendo DS homebrew | |
---|---|
Storage devices | GBA flash cartridge · GBA Movie Player · DSLink |
Booting tools | FlashMe · NoPass · PassMe · WiFiMe |
Notable homebrew | Moonshell · DSLinux |
Homebrew programming | libnds · PAlib |