Emulators for Android

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

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.


Optimized for Android
Emulation and screen rendering are heavily optimized for Android platform using hand-written ARM assembly and OpenGLES.
The fast-forwarding feature lets you quickly skip through long dialogs and demo sequences.
Joystick Emulation
The joystick is emulated with hardware keys, virtual joypad, or accelerometer. Sony Xperia Play, Nyko, MOGA, iCade, and Sixaxis controllers also supported.
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.
Mouse Emulation
For the old software that requires a mouse, it is emulated with the touch screen.
Recording Music
The soundtrack can be saved to a MIDI file to be played back later or used as a ringtone.
Compressed Files
The emulators will automatically process files with .zip (WinZIP) and .gz (GZIP) extensions. You do not need to unpack these files.
Built-in Debugger
Many emulators include a built-in debugger for hacking or developing your own retro software.
Cheatopedia offers hundreds of cheats for popular games, or you can enter your own cheat codes.
The emulators will save stamp-sized screenshots for each game you play, and show them in the file selection dialog.
State Exchange
State Exchange lets you swap gameplay states with other users playing the same game.
Network Play
The NetPlay feature lets you play with other users over local network or Internet.
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 hardware 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.


25 May 2017

I am rolling out VGBAnext 5.5.3 this morning. The new version will no longer ask you for the READ_PHONE_STATE permission, since many users consider this unreasonable. After all, VGBAnext is not making any phone calls. It was only using this permission to read the device IMEI. Starting with this version, VGBAnext will use AndroidID rather than IMEI to identify your device. When emailing me for help, please make sure to include your AndroidID, which can be found by dialing "*#*#8255#*#*" on the device. I have also added cheats for five more GBA games, including Blades Of Thunder and three Bratz games. By the way, VGBAnext is on sale for $2.99 for the next week. If you did not like the original price, now is your chance to show it. =)

24 May 2017

Just released iNES 4.8.9, removing request for READ_PHONE_STATE permission. Many people complained about this permission, since it also allows the app to make phone calls (which the app obviously does not need). In reality, this permission has only been used to obtain the unique IMEI number, used to identify your device in the logs when you need help. Starting with this release, I have switched to the AndroidID for device identification, removing the request for permission. When emailing for support, attach your AndroidID (dial "*#*#8255#*#*" to find it).

9 May 2017

VGB 5.1.6, released this morning, adds cheats for 10 more games, including Metroid 2, Dexter, Dig Dug, Crash Dummies, and Cubix.

5 May 2017

Just published VGBAnext 5.5.2, a new version of my universal GameBoy Advance, GameBoy Color, and GameBoy Classic emulator. This release adds Cheatopedia cheats for 7 more games, including the classic Metroid 2 and three Bionicle games.

3 May 2017

The fMSX 4.9.2, released today, adds support for "content://" URIs, so that you should now be able to open MSX files from email clients, file managers, and other third party apps. Among other things, this fixes compatibility with the latest Astro File Manager versions. Display updates synchronization has been majorly refactored and fixed. If you are using an nVidia-based Android device (like ShieldTV), try reenabling "Settings | Video | Draw Frames | Automatic" option and see if works better now. Finally, I have refactored several pieces of the library code, including virtual gamepad and extended file information utilities.

1 May 2017

Due to a stray crash when running emulator in "demo mode" (i.e. without a ROM file to open), I had to update my emulators over this weekend. VGBAnext, iNES, MasterGear, VGB, Speccy, and ColEm all got new versions. If you are using any of them, you may want to update via Google Play.

27 April 2017

The VGB 5.1.4 release, published today, improves compatibility with third party apps, such as email clients and file managers, that let you click on a file to open it in the emulator. Among other things, I have fixed compatibility with the newer versions of Astro File Manager. Also, the screen updates synchronization has been fixed. If you have an Android device with Nvidia GPU, please, check if the "Settings | Video | Draw Frames | Automatic" option behaves better on your device now. Finally, I refactored quite a lot of library code, including virtual buttons and utilities to obtain extended information about ROM files.

25 April 2017

Speccy 4.2.3 is now online. It now supports "content://" URIs improving compatibility with third party apps, such as email clients and file managers. Among other things, compatibility with the Astro File Manager has been fixed. I have also fixed a bug in display update synchronization and refactored library code, including support for virtual buttons and obtaining extended information about file content.

18 April 2017

MasterGear 3.7, published this morning, adds support for "content://" URIs, so MasterGear should now work with more third-party apps, such as email clients and file managers. Among other things, compatibility with the latest Astro File Manager has been restored. I have also refactored quite a lot of code, including the virtual buttons implementation and the utilities for obtaining extended info from ROM files.

13 April 2017

I have rolled out VGBAnext 5.5 today. This release fixes support for opening GameBoy files from file managers, mail clients, and other programs, where VGBAnext serves as a handler for GBA and GBC file types. I have also majorly refactored some library pieces, such as virtual buttons code and utilities for obtaining extended file information. Finally, I have added cheats for 10 more GBC games, including Black Bass, Bob The Builder, and multiple Bugs Bunny titles.

12 April 2017

Released ColEm 4.0.3, improving support for starting Coleco games from third party apps, where ColEm acts as handler for *.rom and *.cv file types. I have also fixed problems with color mask and scanline filters on certain low-end devices. This is especially relevant for people with Rockchip-based Android tablets. Finally, I have refactored a lot of library code, including virtual buttons implementation and the utilities for getting extended information about ROM files.

10 April 2017

iNES 4.8.7, published today, fixes compatibility with Astro File Manager and other programs that let you click on a file to run it (file managers, email apps, etc). As a side effect, iNES now supports "content://" URIs. I have also majorly refactored library code inside iNES responsible for virtual buttons and obtaining extended information about ROM files.

6 April 2017

Released VGB 5.1.3 to Google Play today, fixing special effect shaders on low-precision GPUs. Also added Cheatopedia cheats for 10 more games, including Bob The Builder, Black Bass, and a bunch of Bugs Bunny titles.

5 April 2017

Just updated fMSX for Android to verison 4.9.1, fixing CMY/RGB and scanline filters on devices with low precision GPUs, such as Mali-400. Tested on a few Rockchip-based tablets, all the nasty artifacts are gone. If you are still seeing any problems, please, do let me know.

3 April 2017

Released MasterGear 3.6.10, rolling out changes previously introduced in my other emulators. The CMY/RGB color masks and scanline simulation filters should no longer glitch on low-precision GPUs, such as Mali-400. I have also removed virtual button names from skins that already have them.

30 March 2017

VGBAnext 5.4.10 fixes special effects shaders on Mali-400 and other low-precision GPUs. Since these GPUs use 16bit floating point numbers in their fragment shaders, I had to change the algorithms and add a few workarounds. The new VGBAnext also comes with cheats for 13 more GBC games, including Beethoven, Austin Powers, Beetlejuice, and Bionic Battler.

29 March 2017

Just published iNES 4.8.6, fixing special effects shaders on low-end 3D hardware. Several users reported colored lines and bars when using CMY/RGB raster masks or scanline simulation on certain Android devices. I have tracked the problem to Mali-400 and other low-end GPUs using 16bit floating point numbers for rasterization. Had to add a few workarounds to make shaders work on these devices.

27 March 2017

Speccy 4.2.2, released today, fixes special effects shaders on low-precision 3D hardware, such as Mali-400 GPUs. Several people complained about color bars when using color mask and scanline effects on devices with these GPUs. I have traced the problem down to the 16bit "10+5+1" floating point format used by rasterization hardware in Mali-400 and provided several workarounds.

24 March 2017

Just released ColEm 4.0.2, bringing up the changes introduced into my other emulators over the last few weeks. Analog gamepad triggers now act as L2/R2 shoulder buttons. I am also no longer drawing text cues over joystick skins that have their own labels. All my free emulators are also available from Aptoide and Opera Store.

22 March 2017

VGB 5.1.2, published today, removes tiny text cues from joystick skins which have their own cues. I have also fixed analog triggers mapping to L2/R2 buttons and added Cheatopedia cheats for 13 more games. This includes two Austin Powers games, Beetlejuice, Bionic Battler, and Beethoven 2nd.

16 March 2017

I have published fMSX 4.9, fixing several issues in the Joystick Layout Editor, improving MIDI recording, and mapping analog gamepad triggers to L2/R2 shoulder buttons to separate them from L1/R1. There is also a new version of fMSX for Windows and Linux online, including free binaries and the source code.

13 March 2017

Just released iNES 4.8.5, a new version of my Nintendo NES and Famicom emulator, fixing a few things requested by users. Starting with this version, pressing analog triggers on your gamepad (such as Nvidia ShieldTV gamepad) will simulate L2/R2 shoulder buttons, rather than L1/R1. This way, you can assign these analog triggers separately from the regular L1/R1 shoulder buttons. I have also removed tiny text cues from virtual gamepad skins which already have their own button labels.

9 March 2017

VGBAnext 5.4.8, the most recent update to my universal GameBoy Advance, GameBoy Color, and GameBoy Classic emulator, is now online. For those who reported tiny button cues rendered on top of larger button names, I have disabled cues for skins which have their own button names (e.g. "Gray" and "Contours"). Also, several AndroidTV users complained about being unable to assign functions to their analog gamepad triggers, since these triggers were mapped to L1/R1 buttons. I am now mapping analog triggers to L2/R2 buttons instead, so you can assign them separately from L1/R1.

6 March 2017

MasterGear 3.6.9, a new version of my Sega MasterSystem and GameGear emulator, is now online. This release improves the Layout Editor, maps your analog gamepad triggers to L2/R2 buttons, and adds cheats for more GameGear games.

2 March 2017

Speccy 4.2.1 is now online, both free and full versions. This release lets you disable GLES linear interpolation, for crystal clear image, as long as your device has enough pixels to show it. Most modern Android devices do. I have also made the Layout Editor title bar transparent, so that controls look exactly the same as in the emulator itself. Tap the Layout Editor screen if you wish to toggle title bar. Finally, the analog triggers found in many gamepads are now mapped to L2/R2 shoulder buttons, rather than L1/R1 buttons as before. This way, you can assign analog triggers separately from the L1/R1 buttons.


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.

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 advanced hardware and emulation settings. The built-in menu shows up when you either press the on-screen MENU button or select "Advanced" 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. Remember, these are advanced settings, so be careful changing them.

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.

Network Play
In the emulators that support NetPlay feature, such as iNES or MasterGear, you can play with other users over local WiFi network or Internet. To establish connection, follow these steps:

  • Both players should be running the same game.
  • Both players should be on the same WiFi network or have externally visible IP addresses. NetPlay will not work through NAT.
  • The first player should check "NetPlay" in the menu and then choose "Become Server" option.
  • The second player should check "NetPlay" in the menu and then choose first player's name from the list of available servers.
  • Both emulators will now reset and start playing as if they were the same console with two gamepads.
  • Once you are done playing, uncheck "NetPlay" on both devices to disconnect NetPlay.

See below for FAQ and application-specific tips!


[#] Google Play Market

All my products are published on the Google Play 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...

  • Network play support
    Since Dec 4 2012, iNES supports playing over local network or Internet with other iNES users. You both have to be playing the same game and be on the same WiFi network, or have Internet-visible IP addresses.
[#] 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...

  • Network play support
    Since Dec 7 2012, MasterGear supports playing over local network or Internet with other MasterGear users. You both have to be playing the same game and be on the same WiFi network, or have Internet-visible IP addresses.
[#] 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...

  • 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 speed things up by holding the Android SEARCH key: it fast-forwards the emulation.
[#] 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...

  • 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...

[#] AlmostTI for Android

AlmostTI emulates a big family of programmable graphing calculators from Texas Instruments, including TI-85, TI-86, TI-81, TI-82, TI-73, TI-83, TI-83+, TI-83+ SE, TI-84+, and TI-84+ SE. Pretty much every Z80-based TI calculator is covered. Please note that in order to run AlmostTI, you will need the system firmware ROM. See instructions on how to obtain that ROM from your own calculator. More...

  • Getting ROMs
    In order to use AlmostTI, you need at least one calculator ROM. AlmostTI comes without ROMs, as they are intellectual property of Texas Instruments. But you can dump ROM from a TI calculator you own, by following these simple instructions.
  • Naming ROMs
    On startup, AlmostTI will look for the following files in your internal storage (usually "/sdcard"):

    TI85.ROM, TI86.ROM, TI81.ROM, TI82.ROM, TI73.ROM, TI83.ROM, TI83P.ROM, TI83SE.ROM, TI84P.ROM, TI84SE.ROM, TI-85.ROM, TI-86.ROM, TI-81.ROM, TI-82.ROM, TI-73.ROM, TI-83.ROM, TI-83P.ROM, TI-83SE.ROM, TI-84P.ROM, TI-84SE.ROM

    The names can be in upper or lower case. You can always repeat the search by clicking on the "Scan Files" menu option or the magnifier icon in the action bar.
[#] 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...

  • GameLink support
    As of Dec 17 2012, VGB supports GameLink emulation over a local network or the Internet. To establish connection, check "NetPlay" in the Android menu. Note that both of your devices have to have valid IP addresses. This feature will not work if one of you is behind NAT.
  • RumblePak support
    As of Mar 11 2012, VGB supports RumblePak emulation using your device's built-in vibration. Your phone will vibrate every time a game uses the "rumble" feature.
[#] 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...

  • GameLink support
    As of Jun 13 2012, VGBA supports GameLink multiplayer emulation over a local network or the Internet. To establish connection, check "NetPlay" int the Android menu. Note that both of your devices have to have valid IP addresses. This feature will not work if one of you is behind NAT.
  • VGBA does not require GBA BIOS file
    It emulates GBA BIOS internally instead.
  • VGBA supports light sensor, tilt sensor, and RumblePak
    You can find these features used in such games as Boktai, Boktai 2, Warioware Twisted, and Drill Dozer.
  • If you are having trouble saving games
    Use the gameplay freezing feature instead. Press the Android MENU key and select "Freeze/Restore" to save your game. Later on, select the same option 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 Google Play.
  • Exporting .SAV files to other emulators
    VGBA will automatically load in-game saves (.SAV) made by other emulators. As of August 7 2014, VGBA will also store in-game saves in a format compatible with other emulators. Prior VGBA versions used their own .SAV format but offered an option to export VBA-compatible .SAV files.
  • Exporting .STA/.FRZ files to other emulators
    Unfortunately, the gameplay state files are in proprietary format and cannot be exported to other emulators. Nor can VGBA load proprietary state files (such as .SGM) from other emulators.

Frequently Asked Questions





Network Play



  1. I want to report a bug or make a suggestion!

    The best ways to get help are by reporting your problem on the forum or by emailing me directly. 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 geniune bug and can explain what it is in clear 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.

    Also note that reporting problems in a Google Play review is not very helpful, as it makes more difficult for me to respond to your complaint and clarify what the problem is. Adding negative rating to your Google Play feedback makes it almost certain that I will not waste my time trying to help you. Thus, start by using the forum or emailing me to get help.

    To make my job easier, make sure you...

  2. I want games! I need games! Where do I find games?

    You can find a 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 (i.e. legally bought a cartridge with the same game). It is the right thing to do.

  3. Nothing works, saves fail, everything hangs or crashes!

    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 emulator from your device, then reinstalling it from the Google Play.

  4. I have bought the app, but now it says I do not have a valid license!

    To protect against piracy, I had to introduce the Google Play license check into commercial versions of my Android apps. Every now and then, the license check will use the Google Play Store app 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

  5. I cannot save games and screenshots do not show up either.

    The two most common reasons are lack of free disk space and active USB connection to a computer that locks your storage from changes. Also, starting with Android 3.2+, Google essentially disabled writing to the external SD card. This means that if you place emulator files to the external SD card, emulators may 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.

  6. Do your emulators work on rooted devices?

    All my applications run normally on rooted devices. There is a catch though. If you have a rooted device with LuckyPatcher or some other cracking tool installed, my products will not run on your device. You always have a choice of removing the pirate tools: once they are gone, my applications will run, whether your device is rooted or not.

  7. Emulator is too slow. How do I make it faster?

    First of all, my emulators will always try to mimic the actual hardware speed. You can easily verify that by enabling the "Video | Show Frame Rate" option and noting the "fps" value at the top-left screen corner. As long as this value stays close to 60fps (50fps for PAL hardware like ZX Spectrum), your speed is just fine. If you still want emulation to run faster than that, disable the "Video | Sync Display" option and watch things take off.

    Let us now suppose that you are not getting the optimal speed. The emulation speed generally depends on your hardware, the other software you are running, and your emulation settings. Follow these simple steps to improve the speed:

  8. How can I make fast-forward stay on all the time?

    To make FFWD button a toggle switch, enable "General | Persistent Fast-Forward" option. Please note that if you are trying to play games with fast-forwarding always on, you may be better off following performance improvement advice instead.

  9. How do I remove the title bar from the top of my screen?

    To quickly toggle the title bar, place your finger at the middle of the screen and flick it up to the top to hide the the bar. To make the title bar reappear, flick your finger down from the top of the screen. You can also choose to hide the title bar on startup, by enabling the "General | Hide Title Bar" option. This will also hide the menu though. To get the menu back, flick your finger down the screen.

  10. When I rotate my Gingerbread device, the picture disappears!

    There appears to be a bug in Android 2.x (Gingebread) that breaks OpenGLES views when you rotate the device. Starting from August 2013, all my emulators come with a workaround for this bug. So, if you are experiencing this problem, head to Google Play and download the latest version of my app.

  11. When I use video acceleration, the picture becomes fuzzy.

    When scaling pictures, the OpenGLES hardware always adds a bit of blur, to avoid ugly scaling artifacts. If you do not like the fuzzy picture, disable the "Video | Hardware Video Acceleration" option for the crystal clear image, at the cost of lower performance and shorter battery life.

  12. The picture does not fill the screen.

    When not using hardware video acceleration, the emulator will scale picture with the highly optimized assembler code running on your main CPU. This code is tailored for several different screen resolutions. The emulator will choose the resolution that best matches your screen, but may not completely fill it. If you would like the picture to fill your whole screen, enable the "Video | Hardware Video Acceleration" option.

  13. Colors look wrong. I want to change them.

    Several emulators, such as iNES and VGB, let you change the color palette to the one you like. In order to make a custom color palette for a game named Game.nes or, create a text file named Game.pal with 64 (for iNES) or 16 (for VGB) color definitions in the RRGGBB format, one per line. If you want to have the same custom palette for all the games, place it into /sdcard/iNES/iNES.pal or /sdcard/VGB/VGB.pal instead. Here is a sample VGB palette file:

    FFFFFF ; Normal colors
    FFFFFF ; Background colors
    FFFFFF ; Sprite colors
    FFFFFF ; Window colors

  14. Sound lags. How do I prevent it from lagging?

    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 | Audio Latency" setting. Reducing it too much may cause sound distortions though, so be careful. If your audio becomes distorted, increase the latency. You may also want to try toggling the "Audio | Native Audio" option and see if it makes sound better.

  15. Sound clicks and pops. How do I clean it up?

    If you are hearing clicks and pops in the sound, increasing the "Audio | Audio Latency" setting should fix your problem, at the cost of some sound lag. If the sound issues persist, set "Video | Frames to Draw" setting to 35%, or enable "Video | Hardware Acceleration" option to speed up display updates. You may also want to try toggling the "Audio | Native Audio" option and see if it makes sound better.

  16. Sound repeats, like an echo. How do I fix it?

    The echo often occurs on slower devices, where emulation cannot keep up with the audio, so the audio repeats, while emulation catches up. You can avoid this problem by optimizing performance to make emulator run faster. If the sound still echoing, increase the "Audio | Audio Latency" setting. You may also want to try toggling the "Audio | Native Audio" option and see if it makes sound better.

  17. I cannot press more than two virtual buttons at once. How do I fix it?

    A lot of Android devices have limited multitouch that only lets you use two fingers. On these devices, you simply cannot press more than two virtual buttons at once. My emulators offer a workaround of sorts though. Go into the "Input | Edit Layout" setting and drag buttons so that they overlap a little bit. Now, you can press both buttons by touching the overlapped spot.

  18. Virtual joystick buttons are too small, too big, or awkwardly placed. How do I change them?

    To resize joystick buttons, open the "Input | Virtual Joystick Size" setting and choose any size you like. To move buttons, open the "Input | Edit Layout" setting and drag buttons around the screen to the most comfortable spots. Keep in mind that when you rotate your device, each button will "stick" to the closest screen edges.

  19. Virtual joystick buttons obscure my screen. Can I change them?

    Normally, you will see transparent controls overlaid on top of the display. To change their opacity or hide the controls altogether, use the "Input | Virtual Joystick Opacity" and the "Input | Virtual Joystick Shape" settings. You can also control the joystick by physically tilting your device, if your device has an accelerometer and you enable the "Input | Tilt Joystick" option.

  20. Can I set my own virtual joystick images?

    In my apps, released after August 14 2015, you can supply your own virtual joystick skin. Make a Controls.png file using the image at the right as your template, then stick it into the emulator-specific folder, like /sdcard/iNES or /sdcard/VGB. Then go into "Settings | Input | Edit Joystick Layout" and select "Custom Skin" as the joystick shape.

  21. Does joystick have auto-fire? How do I enable it?

    See the "Input | Auto Fire Settings" setting. It lets you choose what buttons are going to have auto-fire.

  22. Can I use my keyboard, gamepad, or Xperia Play keys?

    Of course you can use your generic keyboard, gamepad, or joystick with any of my emulators. If your gamepad has a mode switch, make sure it is set to the "generic gamepad" position. You may also want to visit the "Input | Assign Keys" setting in order to make a comfortable button layout for yourself. By default, your keys are going to be assigned as follows:

    EmulatorKeyboardGamepadXperia Play
    FIRE-LQ, E, T, U, OL1L
    FIRE-RW, R, Y, I, PR1R

  23. I have a PowerA MOGA controller. Will it work?

    Starting Feb 26 2013, all new releases of my emulators natively support MOGA gaming controller. Simply turn it on, and once you see the "MOGA controller connected" message on the screen, it is ready to play with. You can still use MOGA with older versions of my products with the help of the free universal MOGA driver available from Google Play. This little app should let you use the MOGA with many applications that do not normally support it.

  24. I have an iCade joystick. Will it work?

    Starting Apr 5 2013, all my emulators support iCade joysticks. To enable iCade support, toggle the "Input | iCade Support" option. You may also want to customize the button layout via the "Input | Assign Keys" setting.

  25. I have a Sony Sixaxis gamepad. Will it work?

    If you have got a Sony Sixaxis gamepad and a rooted Android device, you can use the gamepad over Bluetooth, with the help of the Sixaxis Controller app from Dancing Pixel. See the application web site for instructions.

  26. I have a Nintendo Wiimote controller. Will it work?

    For Nintendo Wiimote users, here is a short tutorial on using Wiimote with my applications, provided by Robert McCurdy.

  27. How do I use NetPlay?

    Most of my emulators now support the NetPlay feature that lets you play with other users over your local WiFi network or the Internet. To establish connection, follow these steps:

  28. I do not see the other player's device.

    In order to use network play, both players must be running the same game and have mutually visible IP addresses. It is only possible if

    You will not see each other in the NetPlay dialog, unless these conditions are met.

  29. What is GameLink and how is it different from NetPlay?

    Unlike stationary consoles which came with a pair of gamepads, the GameBoy and GameBoy Advance handhelds had a special serial cable that let users connect 2-4 handhelds together, for cooperative play. This cable is known as the GameLink and supported in my GameBoy emulators, VGBA and VGB. The GameLink connection works exactly the same way as a regular NetPlay connection.

  30. Why does emulator slow down when using NetPlay?

    When using NetPlay, each player must send a lot of data over the network and wait for the other player to acknowledge every packet they send. This wait time slows down the gameplay speed for both players. The wait is slightly worse for GameLink (in VGBA and VGB) because the data needs to be sent more often. While this slowdown is unavoidable and depends on your network speed, I am working to reduce it in the upcoming versions of my products.

  31. My cheats do not work.

    Many games are available in different versions, in different languages, or with bugfixes. In order for a cheat code to work, you need to be running exactly the same version of the game that this cheat code has been discovered for. The codes will not work for a different game version, even on the real GameShark or ActionReplay hardware. Besides, many cheat codes found on the Internet contain errors and will not work on any game version. Given how unreliable cheats are to begin with, I usually can't answer the question why your cheat does not work.

  32. I cannot enter any cheat codes. No matter what I do, they do not work.

    The easiest way to use cheat codes is by going to Android menu and choosing "Cheats | Cheatopedia" there. Cheatopedia contains premade cheats for many popular games.

    To enter cheats manually, go to the Android menu and choose "Cheats | Edit Cheat Codes". Use the cheat editing interface to add, delete, or edit cheat codes. The editor will not let you enter a code unless your code strictly follows one of the relevant formats:
    GBA ActionReplay or GameShark XXXXXXXX XXXXXXXX "X" = digit from "0" to "9" or letter from "A" to "F".
    CodeBreaker or GameSharkSP XXXXXXXX XXXX "X" = digit from "0" to "9" or letter from "A" to "F".
    GB/GBC GameGenie XXX-XXX-XXX "X" = digit from "0" to "9" or letter from "A" to "F".
    GameShark XXXXXXXX "X" = digit from "0" to "9" or letter from "A" to "F".
    NES GameGenie XXXXXX or XXXXXXXX "X" = letter from "A" to "Z".
    ActionReplay XXXXXXXX "X" = digit from "0" to "9" or letter from "A" to "F", the first two digits are usually "00" or "01".
    SMS/GG GameGenie XXX-XXX or XXX-XXX-XXX "X" = digit from "0" to "9" or letter from "A" to "F".
    ActionReplay XXXX-XXXX "X" = digit from "0" to "9" or letter from "A" to "F".
    CV Memory POKE XXXX-XX or XXXX-XXXX "X" = digit from "0" to "9" or letter from "A" to "F".
    MSX Memory POKE XXXXXXXX-XX or XXXXXXXX-XXXX "X" = digit from "0" to "9" or letter from "A" to "F".

    Please note that emulators will only accept cheat codes in the above formats (whatever ones are relevant). They will not accept codes in any other formats. So, if you cannot enter a code, carefully check its format. Finally, be aware that 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 emulator.

  33. How do I search for cheats in any game?

    Most of my emulators include the Cheat Hunter tool letting you search for your own cheats in any game. To use the tool, follow these simple steps:

  34. I want to add my own cheats to the Cheatopedia.

    Yes, you can extend Cheatopedia with your own cheats. In order to do that, you will have to place a text file called custom.chts into emulator-specific folder: /sdcard/VGBA, /sdcard/VGB, or /sdcard/iNES. This file should have the following format:

    [(Custom Cheats)]
    Menu=Game 1
    Menu=Game 2
    [Game 1]
    Menu=Cheat 1
    Menu=Cheat 2
    [Cheat 1]
    12345678 9ABCDEF0
    87654321 0FEDCBA9
    Instead of adding single-line cheats separately, you can also use a shortened notation for them:
    [Game 1]
    Code=5A5A5A5A 23232323 : Cheat 1
    Code=76767676 01010101 : Cheat 2
    Once you are done entering cheats and place custom.chts file into proper folder, you should be able to access your custom cheats from the top Cheatopedia menu by clicking on "(Custom Cheats)".

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

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