IGameGear
From iPodLinux
- The title of this article should be iGameGear. The initial letter is capitalized due to technical limitations.
Contents |
What is iGameGear?
iGameGear is a Sega Game Gear and Master System emulator for the iPod. The latest binary release uses Hotdog on the graphics engine. This application currently supports all color iPods: Nano, Photo and 5G (Video).
The emulator source code is based on SMS+SDL, a port of SMS Plus to SDL supported platforms.
Features
The latest version features are:
- Hotdog graphics engine;
- Zipped roms support;
- SRAM states support (ability to save your progress on games like Phantasy Star);
- Almost 100% compatibility (100% maybe?);
- Frameskipping (--fskip <n>);
- Different display modes (--display <center|scale|stretch>).
Download
Binaries
- igamegear-20061017.zip - Fixed SRAM support. Now you can play Phantasy Star and save your game progress! ;)
- igamegear-20061012.zip - Zipped roms support included.
- igamegear-20061008.zip - Uses Hotdog and iBoy-like controls. Fixed the crashes from the previous versions.
- igamegear-20060910.zip - Uses SDL, crashes with most games (background horizontal scrolling bug). This isn't supported anymore.
Source code
- igamegearsrc-20070117.tgz - First source code release. It's ugly and needs cleaning, revisions and lots of improvements. If you make any improvement on iGG, please send it to the forum so venox can patch the source.
Installation
The binary and the igg shell script should be placed in the folder /home/igg, and can be launched from Loader2 (see "Running From the Bootloader" section). If you don't want to place it at /home/igg, just edit the igg script to fit your needs.
Command-line arguments
Currently, iGameGear supports frameskipping and some display modes, these can be acomplished by editing the igg shell script. If you want frameskipping, you can do:
./sms alex.sms --fskip 5 >igg.log
This will skip 5 frames between each rendered frame. Just try out with that value.
If you want to scale the screen to fit on your iPod's LCD, just use the display mode scale:
./sms alex.sms --display scale >igg.log
You can use the display mode stretch too if you want. While scale mode preserves the screen ratio, stretch mode will stretch the screen to your iPod's LCD (duh):
./sms alex.sms --display stretch >igg.log
NOTE: When tested with iPod Video, Stretch/Scale only seems to work with Master System Games and NOT GameGear Games.
Running From the Bootloader
This can only be accomlished if you have the following:
- loader2args with a loader.cfg file;
- the igg binary, sms file, and a shell script with its corresponding rom in the same folder (creating a shell script is mentioned above);
In the loader.cfg file add this line:
ROM NAME @ (hd0,1)/kernel.bin /home/igg/SHELL SCRIPT NAME
ROM NAME should be replaced with the name of the game you're playing and SHELL SCRIPT NAME should be replaced with the name of the shell script you created.
Helpful Hints:
- (hd0,1) may need to be changed to (hd0,2) depending on where your kernel.bin is. Also kernel.bin might need to be changed to linux.bin depending on the name of your kernel.
- /home/igg is the default location of igg, depending where your binary, shell script, etc. are located that line may need to be changed to where your files actually are. Remember though, if your files are located anywhere besides the /home/igg folder your shell script will have to be modified accordingly.
Controls
The control scheme is used by tapping the wheel slightly, not pressing it (like iBoy):
Menu = Up Play/Pause = Down Forward = Right Previous = Left Action = Button 1 Upper-Right Corner = Button 2 Upper-Left Corner = Button 1 Lower-Right Corner = Start Hold switch = Exit emulator
Currently, the controls scheme is hard-coded. A configuration file may come on another sunny day.
Screenshots
(These screenshots are mirrored)
http://img228.imageshack.us/img228/8323/photo21vu3.jpg
http://img238.imageshack.us/img238/9879/photo22zh1.jpg
(These screenshots are not :P)
http://i30.photobucket.com/albums/c303/kirby4life/DSC00714.jpg
http://i30.photobucket.com/albums/c303/kirby4life/DSC00715.jpg
Currently Supported Romsets
Note: we are constantly in the process of testing ROMs and will post the actual filenames if they are available.
| Game | State | iGG Release |
|---|---|---|
| Afterburner | Works Fully | 20061008 |
| Alex Kidd in Miracle World | Works Fully | 20061008 |
| Ax Battler - A Legend of Golden Axe | Works Fully | 20061008 |
| Batlletoads | Works Fully | 20061008 |
| Batman Returns | Crashes shortly into the game | ?? |
| Columns | Works Fully | 20061008 |
| Dr. Robotnik's Mean Bean Machine | Won't launch | ?? |
| Earthworm Jim | Works Fully | 20061008 |
| Gauntlet | Works Fully | 20061008 |
| Golden Axe Warrior | Works Fully | 20061008 |
| Megaman | Crashes after you start a game | ?? |
| Mortal Kombat | Works Fully | 20061008 |
| Mortal Kombat 3 | Works Fully | 20061008 |
| Phantasy Star Gaiden | Works Fully | 20061008 |
| Phantasy Star | Works Fully | 20061008 |
| Samurai Shodown | Crashes after you start a game | ?? |
| Shaq Fu | Works Fully | 20061008 |
| Sonic the Hedgehog | Works Fully | 20061008 |
| Sonic the Hedgehog 2 | Works Fully | 20061008 |
| Sonic Blast | Works Fully | 20061008 |
| Sonic Chaos | Works Fully | 20061008 |
| Sonic Triple Trouble | Works Fully | 20061008 |
| Sonic Labyrinth | Crashes on gameplay start | ?? |
| Streets of Rage | Works Fully | 20061008 |
| Streets of Rage 2 | Works Fully | 20061008 |
| Terminator, The | Crashes after you start a game | ?? |
Feedback
If you have any suggestions, bug reports, a nice supporting message or even if you want to hug the developers, just give your feedback here: http://ipodlinux.org/forums/viewtopic.php?t=9561
Contributors
- do_me_nice & miz dawg - Project starters
- venox - Main coder
- Edwinthechum - Wiki page, some ROM testing
- Kirby4life0 - ROM testing, along w/ minor fixes to the Wiki page <(-'.'-)>