fMSX


VGB


VGBA


iNES


MG


ColEm


Speccy


AlmostTI


Windows


Android


Symbian


How?


Who?


Tell!

Emulators for Android

News  |  Features  |  Tips  |  Downloads  |  iNES  |  MasterGear  |  Speccy  |  fMSX  |  ColEm  |  VGB  |  VGBA

by Marat Fayzullin

Nintendo Entertainment System, Famicom, GameBoy, Super GameBoy, GameBoy Color, GameBoy Advance, Pocket Printer, GameLink, and DiskSystem are trademarks of Nintendo. SEGA SG1000, SC3000, SF7000, Master System, and GameGear are trademarks of SEGA. While programs presented at this site attempt to create "compatible" environment for the gaming software, they are not equivalent to the original hardware.

Emulators are programs that run software written for old computers or videogame consoles on the new hardware. Essentially, an emulator makes old software "think" that it is running on the original hardware, while it actually runs on your computer. I am creating emulators since 1993 and have made quite a few of them. For those who would like to try making an emulator on their own but do not know where to start, I have written a short introduction into the craft.

Originally, I developed emulators for PCs and Unix workstations. Once the mobile devices, such as cell phones and tablets, became capable of emulating older hardware, I started porting my emulators to these devices. Thus, at this page you will find my applications for Android-based phones and tablets, as well as some useful tips on setting them up.

If you work for a game company that would like to run its legacy games on mobile phones or other hardware, and need help, contact me.


News

15 May 2012

Just released MasterGear 2.6.17 adding all the improvements of the last two weeks, such as overlay joystick and extra button assignments. In related news, if your device is running jailbroken or non-standard firmware (such as Cyanogen), you should now be able to install fMSX or Speccy from the Android Market. Please, test.

11 May 2012

The new VGBA 3.8.16 improves audio, adds compatibility with VBA .SAV files, and extends Pokemon Fire Red and Leaf Green Cheatopedia entries with popular cheats requested by the users. Also released the new versions of iNES and Speccy with the transparent joystick and other improvements.

4 May 2012

Answering many, many complaints about the landscape virtual joystick being virtually invisible, I am introducing the new semi-transparent overlay joystick in the landscape mode. You can currently find it in VGBA, VGB, and fMSX.

28 Apr 2012

Released new versions of MasterGear and VGB, adding optional persistent fast-forwarding and multiple other small fixes you may not see but will feel.

23 Apr 2012

Released an update to iNES, today, introducing the latest fixes made to VGBA. As a promotion, the iNES price has been lowered to $2.49. So, get it while it is hot .

Features

Optimized for Android
Emulation and screen rendering are heavily optimized for Android platform using hand-written ARM assembly.
Fast-Forwarding
The fast-forwarding feature lets you quickly skip through long dialogs and demo sequences.
Color-Blended Rendering
When scaling display, the transitions between individual pixels are blended for better picture quality.
Freeze/Restore
The gameplay can be saved at any moment and restored to the same point later. Emulators will also save state on exit, letting you restart where you have left off.
Joystick Emulation
The joystick is emulated with the physical keyboard, virtual joypad, or accelerometer. Sony Xperia Play buttons also supported.
Recording Music
The soundtrack can be saved to a MIDI file to be played back later or used as a ringtone.
Mouse Emulation
For the old software that requires a mouse, it is emulated with the touch screen.
Built-in Debugger
Many emulators include a built-in debugger for hacking or developing your own retro software.
Compressed Files
The emulators will automatically process files with .zip (WinZIP) and .gz (GZIP) extensions. You do not need to unpack these files.
Screenshots
The emulators will save stamp-sized screenshots for each game you play, and show them in the file selection dialog.
Normal Display
The picture fills the center of your device screen, while retaining the original display ratio.
Stretched Display
The picture is stretched horizontally to fill the entire device screen, for the biggest possible size.
Softened Display
The picture is softened, hiding individual pixels, as if it were shown on an old analog TV.
TV Scanlines
Horizontal raster lines are added, simulating analog TV interlace effect.
Keyboard Emulation
The keyboard is naturally emulated with the physical keyboard, or the on-screen virtual keyboard, in case your Android device lacks a real one.
Frame Rate Display
The frame rate counter shows how fast your emulation is running. The ideal rates are 60Hz for NTSC video and 50Hz for PAL video.

Tips

Bug Reports
Please note that I am the only person handling all the work here, in my spare time. Due to the large number of requests and limited time, I can't handhold you or help you learn how to use my apps. I can only help you if you have found a bug and can explain what it is in clear, factual terms. Generally, it takes a week or two to resolve most issues, unless I am sick, busy, or you are asking about something way over my head.

So, if you are having problems legitimately running my applications, please, tell me and other users about your problems via the forum. To make my job easier, make sure you...

  • Download the latest application update from the Android Market.
  • Report the make and model of your device, as well as the application name.
  • If possible, supply the output from the "adb logcat" command or the DDMS tool.
  • Please, be as detailed about your problem as possible.

Also note that reporting problems in the Android Market comments is not helpful, as I cannot respond back to you, clarify what the problem is, and fix it. Adding negative rating to your Android Market feedback makes it almost certain that I will not waste time trying to help you. The best ways to get help are by reporting your problem via the forum or by emailing me directly.

License Check
To protect against piracy, I had to introduce the Android Market license check into commercial versions of my Android apps. Every now and then, the license check will use the Android Market on your device to see if you have actually bought my app. This operation is completely transparent to the user, unless it fails. My statistics show that license checks fail for about 3% of people. In order to stay in the other 97%, make sure that

  • Your device is logged into the same Google account you used to buy the app.
  • Your device has at least intermittent Internet connection, so that the Android Market app can connect to the server.
  • If the above two steps do not help, try uninstalling and then reinstalling the application.
  • If the above three steps do not help, try enabling "Background Data Connections" in your device. There are reports of Google Licensing failing with this setting disabled.

Finding and Loading Programs
You can find the huge collection of public domain games for old game consoles at the PD ROMs web site. For both legal and ethical reasons, I cannot and will not tell you where to download commercial games for running them with my emulators, even if you email me about it. If you really need to, use an Internet search engine instead. Please, do not download and run any software that you do not already own. It is the right thing to do.

By default, all emulators expect you to place ROM files and disk images onto the memory card (i.e. /sdcard). The emulators will also automatically recognize and open compressed files (i.e. .zip and .gz), as long as they contain valid ROM files or disk images.

Please note that starting with Android 3.2+, Google has essentially disabled writing to the external SD card. This means that if you place emulator files to the external SD card, emulators will not be able to save game states or screenshots. If you encounter this problem with your device, avoid it by always placing files to the internal SD card.

System ROMs
If an emulator requires you to supply your own system ROMs, place them into /sdcard/AppName directory (such as /sdcard/Speccy) or directly into /sdcard directory.

Fast-Forwarding
To fast-forward gameplay, press and hold the on-screen FFWD button, if present. If you do not see the FFWD button, press and hold the Android SEARCH key. If your device lacks the SEARCH key, you can assign the fast-forwarding feature to a different hardware key in the Android "Settings" menu.

Built-in Menu
All emulators come with their own internal menus, offering wide variety of hardware and emulation settings. The built-in menu shows up when you either press the on-screen MENU button or select "More" from Android menu. You can navigate the built-in menu with the on-screen joystick or by touching menu items. To select a menu item, touch it, or press FIRE-A. To close the menu, touch outside the menu, or press FIRE-B.

Joystick Emulation
The screen of your Android device acts as a virtual joypad. To see its layout, enable "Show Joystick Cues" in the Android "Settings" menu. You can also control joystick by physically tilting your device, if you enable the "Tilt Joystick" menu option and your device has an accelerometer sensor. If your phone has got a physical keyboard, its buttons are going to be laid out as follows:

EmulatorGeneric AndroidXperia Play
FIRE-ASPACE, A, S, D, F, G, H, J, K, LX
FIRE-BZ, X, C, V, B, N, MY
FIRE-LQ, E, T, U, OL
FIRE-RW, R, Y, I, PR
STARTENTERSTART
SELECTTABSELECT
FFWDSEARCHSEARCH

Keyboard Emulation
If you need a keyboard to operate the emulator (such as fMSX), but your Android device does not have a physical keyboard, you can quickly toggle the virtual keyboard with the on-screen KEYS button. To permanently enable virtual keyboard, set "Virtual Keyboard" in the Android "Settings" menu. Notice that the modal keys (such as SHIFT, etc) can be found at the screen corners.

Sound Quality
If you feel that the sound lags on your device (i.e. you hear shots a little bit after pressing the fire button), try decreasing the "Audio Latency" parameter in the Android "Settings" menu. Reducing it too much may cause sound distortions though, so be careful. If your audio becomes distorted, increase the latency.

Loading From Tape
Some emulators, such as Speccy, let you load software from tapes. The simulated tape recorder can be started or stopped using the built-in emulator menu ("More" option in the Android menu, then "Tape running" option). Keep in mind that loading from tapes takes time, just like with the real tapes. You can speed things up by holding the Android SEARCH key: it fast-forwards the emulation.

...
See below for application-specific tips!


Downloads

[#] Android Market

All of my products published in the Android Market. Please, do not forget to vote!

[#] EMUL8 Discussion Group

Report and discuss your problems here. You may need to create a Google account to post to this group, but you do not have to become a member.

[#] iNES for Android

iNES emulates classic NES and Famicom videogame consoles from Nintendo. It plays NES, Famicom, DiskSystem, and VS System games on your Android phone or tablet. Save game at any time and restart from that point later. You can also use GameGenie cheat codes, make screenshots and save game music in MIDI format. More...

[QR]
  • .ZIP file support
    iNES will automatically handle .gz and .zip files, as long as they contain valid NES files inside.
  • Network play support
    iNES already supports playing over Internet on Windows and Linux. I am working to add netplay support to the Android version.
  • Entering GameGenie cheats
    1. Not all cheat codes you find on the Internet work, even on the real hardware.
    2. To enter cheats, go to the Android menu and choose "More | Edit Cheats". Use the cheat editing interface to add and edit cheats in the XXXXXXXX format, where each "X" is a letter.
    3. After you are done, press the Android BACK key to return to the emulator. If you are not sure that your cheats are saved, press the Android MENU button and select "Save" before returning to the emulator.
    4. To toggle cheats on/off, go to the Android menu and choose "More | Cheats On/Off".
[#] MasterGear for Android

The MasterGear emulates several 8bit videogame consoles from SEGA. It plays Master System, GameGear, Mark 2, Mark 3, SG1000, SC3000, and SF7000 games on your Android phone or target. You can save game at any time and restart from that point if you get killed, make screenshots, and even save game music in MIDI format to play it later. More...

[QR]
[#] Speccy for Android (also see free version)

Speccy emulates 16kB, 48kB, and 128kB versions of Sinclair ZX Spectrum, as well as Spectrum +2, +2A, and +3, as well as Timex Sinclair models. Although I had done some ZX-related work in the past, for many years I abstained from writing a Sinclair ZX Spectrum emulator, because there were so many other Spectrum emulators around. On the other hand, it felt like a gaping hole on my resume. So, here it is, yet another Spectrum emulator, trivially named Speccy. More...

[QR]
  • To change joystick type or enable mouse
    Go to the built-in menu, select "Input devices" and set whatever input device(s) you want.
  • 128k Spectrum bootup menu
    This menu can be operated with the on-screen arrow buttons, while holding CSHIFT. Believe it or not, but that is how original 128k Spectrum did it.
  • To load program from a tape (i.e. .tap or .tzx file)
    1. Select "Tape Loader" from the 128k Spectrum bootup menu or type LOAD "" (SSHIFT + J, P, P, ENTER) on 48k Spectrum to start the tape loader.
    2. Press the on-screen MENU button to go to the built-in menu and toggle the "Tape running" option to start the tape. There are also options to rewind and browse tape contents.
    3. Wait for the program to load, which may take a while, just like on a real ZX Spectrum. You can accelerate the process by holding Android SEARCH key.
[#] fMSX for Android (also see free version)

fMSX emulates the popular MSX home computer from the 1980s, its MSX2 and MSX2+ upgrades, and many add-ons. fMSX is the first emulator I wrote and one of the first MSX emulators from which many others have been derived. Run your old MSX programs from disks or game cartridges on your Android phone or tablet. More...

[QR]
  • To enable mouse or joystick
    Go to the built-in menu, select "Input devices" and set mouse or joystick in joystick port #1. Same goes for the second joystick port.
[#] ColEm for Android (also see free version)

While developing fMSX, I got a request to take a look at the ColecoVision videogame console. The request contained a short document on the ColecoVision internals, from which I found that ColecoVision was not much different from MSX. Thus, I got to work and in a short while made a ColecoVision emulator, later known as ColEm. More...

[QR]
[#] VGB for Android

VGB emulates Nintendo GameBoy handhelds and their accessories. It plays GameBoy, GameBoy Pocket, GameBoy Color, and Super GameBoy games on your Android phone or tablet. VGB also supports the Pocket Printer, GameGenie cheat codes, and more. Please notice that VGB will not play GameBoy Advance games: you will need VGBA for that. More...

[QR]
  • .ZIP file support
    VGB will automatically handle .gz and .zip files, as long as they contain valid GameBoy files inside.
  • GameLink support
    VGB already supports GameLink over Internet on Windows and Linux. I am working to add GameLink support to the Android version.
  • Entering GameGenie and GameShark cheats
    1. VGB supports both GameGenie and GameShark cheat codes. Not all cheat codes you find on the Internet work, even on the real hardware.
    2. To enter cheats, go to the Android menu and choose "More | Edit Cheats". Use the cheat editing interface to add and edit cheats. Remember that GameGenie codes have XXX-XXX-XXX format, while GameShark codes have XXXXXXXX format.
    3. After you are done, press the Android BACK key to return to the emulator. If you are not sure that your cheats are saved, press the Android MENU button and select "Save" before returning to the emulator.
    4. To toggle cheats on/off, go to the Android menu and choose "More | Cheats On/Off".
[#] VGBA for Android

VGBA emulates the Nintendo GameBoy Advance handheld. It plays GameBoy Advance games on your Android phone or tablet. Please notice that VGBA will not play classic GameBoy games: you will need VGB for that. More...

[QR]
  • .ZIP file support
    VGBA will automatically handle .gba.gz and .zip files, as long as they contain valid .gba files inside.
  • If you are having trouble saving games
    Use the gameplay freezing feature instead. Press the Android MENU key and select "Freeze" to save your game. Later on, select "Restore" to restore your game back to where you have frozen it. Having said that, I would still appreciate a bug report for any game that fails saving/restoring state on its own.
  • If you are still having trouble saving games
    If you cannot save games, even with the freezing feature, and the games won't even save state when you exit and restart VGBA, you may be low on the disk space. Check how much free space you have got in the folder where your games are. There should be at least 512kB of free space for saving and freezing to work.
  • If nothing works, games do not save, cheats do not work
    Aside from using a pirated version (that is known to fail randomly, on different features) and low disk space, this problem may sometimes be caused by a package upgrade. You can fix it by completely removing VGBA from your device, then reinstalling it from the Android Market.
  • Entering ActionReplay/GameShark cheats
    1. VGBA currently supports ActionReplay v3 aka GameShark cheat codes, but not GameShark SP codes.
    2. Not all cheats you find on the Internet work, even on the real hardware. Never mix cheats from different sources and try to use cheats that are known to work on at least some other GBA emulator.
    3. The easiest way to use cheats is to go to the Android menu and choose "More | Cheatopedia". You will then be offered to select the game you are playing and then choose one of many predefined cheats for this game.
    4. To enter cheats manually, go to the Android menu and choose "More | Edit Cheat Codes". Use the cheat editing interface to add and edit cheats in the XXXXXXXX XXXXXXXX format, where each "X" is a hexadecimal digit. Please note that my experience shows that this option is somewhat too advanced for many users.
    5. After you are done, press the Android BACK key to return to the emulator. If you are not sure that your cheats are saved, press the Android MENU button and select "Save" before returning to the emulator.
    6. To toggle cheats on/off, go to the Android menu and choose "More | Cheats On/Off".
    7. After exiting and reentering a game in VGBA, you have to toggle cheats on again. The cheats are always off at startup.
    8. The cheats support is currently in the beta stage, so do not get too frustrated about it. It will get better with time. If you have got an ActionReplay v3 cheat that works with the other emulators but does not work with VGBA, report it to me and I will see how it can be fixed.

News  |  Features  |  Tips  |  Downloads  |  iNES  |  MasterGear  |  Speccy  |  fMSX  |  ColEm  |  VGB  |  VGBA


© Copyright by Marat Fayzullin / using icons from Double-J Design