Cellphone emulators
Before the smartphones we know today were staples of mainstream culture, mobile phones, and their technology were pretty rudimentary and often relied on apps made in Java seeing as the language was designed to be portable (though Windows Mobile and Symbian were also somewhat popular as proto-smartphone platforms of choice). This didn't keep games from being developed for these platforms. Casual simplistic games and rip-offs of retro franchises thrived, but it attracted some genuinely fun games that forever remained obscure, such as those from Gameloft.
The situation is quite different in Japan where mobile hardware was much more developed, only loosely Java-based, and major video game developers were much more invested in creating unique and high-quality content that's most obscure and unpreserved, let alone emulated, today. Those are the very different Galapagos mobile phones (like NTT DoCoMo i-mode, DeNa, RoID...). Some of these games got ported to the inferior Western hardware but these are in the tiny minority.
Platform(s) | File extension |
---|---|
J2ME | .jar (.jad descriptor) |
Symbian | .sisx, .sis |
N-Gage | .blz |
N-Gage 2.0 | .n-gage |
ExEn | .exn |
Mophun | .mpn |
Flash Lite | .swf |
BlackBerry OS | .bar, .cod (.alx descriptor) |
WebOS | .ipk |
MRE (privious VRE) | .axf, .vxp (later) |
UMI | .jra |
MORE | .moz, .mz |
PalmOS | .prc, .pdb |
MiniJ | .mrp |
Windows Mobile
(older than 7) |
.cab, .zip |
Windows Mobile
(newer) |
.xap |
Windows Phone | .xap, .appx (later) |
Android | .apk (.apks, .apkm, .xapk), .obb, .aab |
iOS | .ipa, .app, .pxl (iPhone OS 1) |
MotoEZX | .pkg (.mpkg) |
MotoMAGX | .mgx, .mpkg, .pep |
BREW
(and later EZweb) |
.mod (.mif descriptor) |
i-mode (Doja) | .jar (.jam descriptor) |
EZplus | .kjx |
WIPI | .jar |
Maemo | .deb |
MeeGo | .deb |
Danger Hiptop | .bndl |
WGE | .wga (.wgc descriptor) |
Tizen | .tpk |
.JAR
files of Java-based non-Japanese cell phones can be still found online with some effort, namely on WAP sites offering (pirated) mobile content.
Contents
- 1 Java 2 Micro Edition (J2ME)
- 2 Symbian and N-Gage
- 3 Execution Engine (ExEn)
- 4 Classic BlackBerry OS
- 5 Palm, Inc.
- 6 Mediatek Runtime Environment (MRE) / MAUI
- 7 Motorola
- 8 Mophun
- 9 Adobe
- 10 Japanese cellphones
- 11 Korean cellphones
- 12 Chinese Mobiles
- 13 Binary Runtime Environment for Wireless (BREW)
- 14 Danger OS
- 15 Dark Age of Monochrome mobile phones
- 16 Maemo
- 17 Windows Mobile & Windows Phone series
- 18 TTPcom's Wireless Games Engine (WGE)
- 19 Firefox OS
- 20 Fire OS
- 21 Tizen
- 22 Bada OS
- 23 Acknowledgments
- 24 See Also
- 25 References
Java 2 Micro Edition (J2ME)
Developer | Sun→Oracle |
---|---|
Type | Cellphone / Mobile |
Generation | 6th generation - 8th generation |
Release date | 2000 |
Discontinued | 2019 |
Emulated | ✓ |
- This page is about emulating J2ME on other systems. For the inverse, see Emulators on J2ME.
A free cross-platform language capable of working in devices with highly reduced capabilities. It was basically Java stripped down to the bare essentials. While originally not intended for games (until its more advanced game-oriented API came), it became the de facto market standard for cell phone gaming - due in no small part to the SDK being free and without licensing costs.
Mascot Capsule 3D is a proprietary 3D graphics engine developed by Hi Corporation. It was mostly used in Japanese cellphone devices, but it also made it overseas featured in many Sony Ericsson devices. Many developers made use of this tech to bring higher quality 3D graphics on the Sony Ericsson version of their J2ME games.
Emulators
Currently, the Android-exclusive J2ME Loader is able to run most of the 2D and 3D (with Mascot Capsule 3D exclusive) J2ME games. On desktops KEmulator and FreeJ2ME should suffice for most games, but there's a minority of games making use of obscure vendor-specific APIs supported only on their respective SDK tools. Given the scarcity of such tools, this list aims to comprehensively list the available ones for convenience.
Name | Platform(s) | Version | Mascot Capsule 3D | Accuracy | VM | Derived from | FLOSS | Active | Recommended |
---|---|---|---|---|---|---|---|---|---|
PC / x86 (Emulators) | |||||||||
KEmulator | 1.0.3 2.12.8 (nnmod) |
✓(nnmod)[1] | Mid | Host JVM | — | ✗ | ✓ (nnmod only) | ✓ | |
FreeJ2ME | git | ~ | Mid | Host JVM | — | ✓ | ✓ | ✓ | |
SJ Boy | Beta 4 Special Edition |
✗ | Mid-Low | — | — | ? | ✗ | ~ | |
EKA2L1 | Automatic CI builds | ✗ | Mid | — | ✓ | ✓ | ✓ (Only MIDP 1.0 - S60v1) | ||
SquirrelJME | 0.4.0 | ✗ | Aims for 100% | Custom (Java) | — | ✓ | ✓ | ? (WIP) | |
Jademula | 0.23git | ✗ | Mid | Host JVM | ? | ✓ | ✗ | ✗ | |
ME4SE | 2.2.0 | ✗ | Mid | Host JVM | ? | ✓ | ✗ | ✗ | |
Pstros | 1.5.2 1.6.1 |
✗ | Mid | Host JVM | ? | ? | ✗ | ✗ | |
Micro Emulator | git2.0.4 | ✗ | Mid | Host JVM | — | ✓ | ✗ | ✗ | |
Minisoyo | 0.0.2 | ✗ | Low | ? | ? | ✗ | ✗ | ✗ | |
MidpX (NHAL Win32 Emulator) | 1.0.1 midp2exe |
✗ | Low | ? | ? | ✗ | ✗ | ✗ | |
MPowerPlayer MPowerPlayer SDK |
2.0 Build 1185 |
✗ | Low | ? | ? | ✗ | ✗ | ✗ | |
Midp-Emulator | 1.31git | ✗ | Low | ? | ? | ✗ | ✗ | ✗ | |
GameMagic S60 | 1.2.1 | ✗ | Low | ? | ? | ✗ | ✗ | ✗ | |
N-GAGE COOL! | 1.2.1 (Trial) ($) | ✗ | Low | ? | ? | ✗ | ✗ | ✗ | |
midp-emulator | git | ✗ | Low | Host JVM | — | ✓ | ✓ | ? | |
PC / x86 (SDKs) | |||||||||
Nokia SDKs | Part 1 Part 2 Part 3 |
✗ | Mid | ? | ? | ✗ | ✗ | ~ | |
Sony Ericsson SDKs | 2.5.0.6 Mirror |
✓ | Mid | ? | ? | ✗ | ✗ | ~ | |
Siemens SDKs | Site 1 Site 2 |
✗ | Mid | ? | ? | ✗ | ✗ | ~ | |
Motorola SDKs | 4.1 5.2.1 |
✗ | Mid | ? | ? | ✗ | ✗ | ~ | |
Motorola iDEN SDK | Mirror | ✗ | Mid | ? | ? | ✗ | ✗ | ~ | |
LG SDK | 1.5 Mirror | ✗ | Mid | ? | ? | ✗ | ✗ | ~ | |
Samsung Java SDK | 1.2.2 Mirror | ✗ | Mid | ? | ? | ✗ | ✗ | ~ | |
Zucotto Wireless Whiteboard SDK | 2.0 | ✗ | Low | ? | ? | ✗ | ✗ | ✗ | |
Mobile / ARM | |||||||||
J2ME Loader | 1.7.9 |
✓ | High | Host JVM (Dalvik dynarec) |
— | ✓ | ✓ | ✓ | |
JL-Mod (JL fork) | git |
✓ | High | Host JVM (Dalvik dynarec) |
J2ME-Loader | ✓ | ✓ | ✓ | |
Zhixiaoyou (JL fork) | 1.2 | ✗ | Mid | Host JVM (Dalvik dynarec) |
J2ME-Loader | ✗ | ✗ | ✗ | |
J2ME Runner | 2.0.3.7 Netmite.com midp2apk |
✗ | Low | ? | ? | ✗ | ✗ | ✗ | |
Jbed | 2.3.1 (Android) 2010 (WinMobile) |
✗ | Low | ? | ? | ✗ | ✗ | ✗ | |
Jblend | 0.1 (Android) Full-screen (WinMobile) |
✗ | Low | ? | ? | ✗ | ✗ | ✗ | |
Project Kava | git | ✗ | Low | ? | J2meJS | ✗ | ✗ | ✗ | |
J2meJS | git | ✗ | Low | ? | ? | ✗ | ✓ | ✗ | |
phoneME | - | SVN Dump | Vendor Specific | Reference Implementation |
KVM (Reference Implementation) |
Reference Implementation |
✓ | ✗ | ✗ |
phoneME (unofficial) | |
git b168 rev20547 |
✗ | Low | PhoneME | PhoneME Advanced (unofficial) |
✗ | ✗ | ✗ |
KarinME (Based on MicroEmu) | 3.0.1 | ✗ | Mid | ? | ? | ✗ | ✗ | ~ | |
midpath4dingoo | 3.0 | ✗ | ? | ? | ? | ✓ | ✗ | ✗ | |
midp4palm | 1.0 | ✗ | ? | ? | ? | ✓ | ✗ | ✗ | |
Coretek Delta java manager | 2006d | ✗ | ? | ? | ? | ✗ | ✗ | ✗ | |
Esmertec Java (jeodek) | 20070425 build | ✗ | ? | ? | ? | ✗ | ✗ | ✗ | |
TAO Intent Java MIDlet manager | 1.1 build | ✗ | ? | ? | ? | ✗ | ✗ | ✗ | |
IBM J9 | 6.1.0 | ✗ | ? | ? | ? | ✗ | ✗ | ✗ | |
Mitac JVM | Build | ✗ | ? | ? | ? | ✗ | ✗ | ✗ | |
CrEme JVM | 4.12 | ✗ | ? | ? | ? | ✗ | ✗ | ✗ | |
Micro Emulator (Converter) | Android Maemo |
✗ | Low | Host JVM | — | ✓ | ✗ | ✗ | |
phoneME-feature devices (unofficial) | git | ✗ | Low | phoneME CLDC | phoneME Feature | ✓ | ✗ | ✗ | |
Consoles | |||||||||
PSPKVM | 0.5.5 Final Edition git |
✗ | Mid | phoneME CLDC | phoneME Feature | ✓ | ✗ | ✓ | |
Bittboy-J2ME | (Miyoo) |
git | ✗ | Mid | phoneME CLDC | phoneME Advanced | ✓ | ✓ | ~ |
Midpath | git | ✗ | Mid | ? | ? | ✓ | ✓ | ~ | |
phoneME (unofficial) | |
git | ✗ | Mid | phoneME CLDC | phoneME Feature | ✓ | ~ | ~ |
Pstros-nds | 0.7.2 r6git | ✗ | Low | ? | ? | ✓ | ✗ | ✗ | |
Browser | |||||||||
JS2ME | git | ✗ | ? | ? | ? | ✓ | ✓ | ? | |
Pluotsorbet | git | ✗ | ? | ? | ? | ✓ | ✓ | ? |
- To play J2ME games on Emulator through Emulator.
Name | Platform(s) | Version | Through | Mascot Capsule 3D | Accuracy | VM | Derived? | FLOSS | Active | Recommended |
---|---|---|---|---|---|---|---|---|---|---|
J2ME Loader | 1.7.9 |
Windows/Linux : Android emulators Nintendo Switch : |
✓ | High | Host JVM (Dalvik dynarec) |
— | ✓ | ✓ | ✓ | |
JL-Mod (JL fork) | git |
Windows/Linux : Android emulators Nintendo Switch : |
✓ | High | Host JVM (Dalvik dynarec) |
J2ME-Loader | ✓ | ✓ | ✓ | |
PSPKVM | [N 1] |
0.5.5 Final Edition git |
Vita : Adrenaline Others : PPSSPP |
✗ | Mid | phoneME CLDC | phoneME Feature | ✓ | ✗ | ✓ |
SquirrelJME | [N 2] |
0.4.0 | RetroArch | ✗ | Aims for 100% | Custom (Java) | — | ✓ | ✓ | ? (WIP) |
SJ Boy | Beta 4 Special Edition |
Wine | ✗ | Mid-Low | ? | ? | ? | ✗ | ~ |
- FreeJ2ME — Open-source
- Has fewer features than KEmulator, but better compatibility. It's recommended for games that don't work with KEmulator. It has an optional libretro core and development is active. Games that freeze on KEmulator, such as Wolfenstein RPG and Doom 2 RPG, run on FreeJ2ME with no issues, although compatibility and accuracy are not as good as J2ME Loader. Some games run too fast and require tinkering with the frame rate options. No 3D support.
- KEmulator — Closed-source
- Has more features than others, as well as 3D emulation (Compared with SJ Boy and midp2exe, KEmulator has better performance). It's feature-packed with debugging features, like HTTP proxying. Requires Java Runtime Environment installed. It is a recommended emulator if you're on a Windows, although some games (such as Wolfenstein RPG and Doom 2 RPG) freeze indefinitely on the loading screen. Last update was in 2012, brought by Gameloft.
- J2ME Loader & JL-Mod (Compatibility) — Open-source
- This is currently the highest compatibility J2ME emulator available. Converts
.JAR
files offline using its own resources. Easily launches both 2D & 3D apps. Samsung & Nokia API implemented. Supports different keyboard layouts and customization. It is highly accurate, with the right frame rate for each game, as well as vibration. Has slightly improved performance through hardware acceleration, but games won't run too fast. Runs almost every Nokia game, even ones that don't work with KEmulator or FreeJ2ME, but as well as Sony Ericsson's 3D engine (Mascot Capsule 3D).
- Nokia SDKs
- A set of different device emulators released by Nokia along with their J2ME SDKs. Keyboard bindings are not friendly for playing games. Some of them are buggy. The Nokia 3410 SDK emulator is capable of running some ancient black & white J2ME games no other emulator can.
- Sony Ericsson SDKs
- Device emulators released by Sony Ericsson along their J2ME SDKs. Some of them have support for Mascot Capsule 3D APIs. Can run some games at better framerates than the original devices.
- Siemens SDKs
- Device emulators released by Siemens along their J2ME SDKs. Can run some older games that depend on old Siemens APIs.
- Motorola SDKs
- J2ME development kits released by Motorola. Can run some older games that depend on Motorola-specific APIs.
- Motorola iDEN SDK
- J2ME development kit released by Motorola. Can run some older games that depend on iDEN-specific APIs.
- Samsung Java SDK
- J2ME development kit released by Samsung. Can run some older games that depend on Samsung-specific APIs, mostly Samsung AudioClip.
- LG SDK
- J2ME development kit released by LG for their devices.
- Zucotto Wireless Whiteboard SDK
- J2ME development kit released by Zucotto Wireless, provider of hardware-based Java bytecode execution solutions.
- Pstros
- Haves support for some obscure vendor-specific APIs that other emulators don't support.
- SJ Boy
- More compatible than MidpX. Can take snapshots. More resolutions (but still buggy). Appears to run correctly some older games FreeJ2ME and KEmulator don't and available for Windows only (play SJ Boy on Linux and Mac through Wine ). Also available Special Edition, it has chinese bootleg games support.
- Minisoyo
- Experimental emulator from the SJ Boy authors. Appears to properly emulate transparency on older games making use of Nokia APIs. To open a game, drag and drop the
.JAR
file onto the MiniSoyo window.
- MidpX
- One of the older emulators. Fixed low resolution (176x220) and compatibility, no handler app support. The installer may contain adware.
- MPowerPlayer (MPowerPlayer SDK)
- Emulator from a company that used to develop solutions to allow users to try J2ME game demos on their computer before purchasing them. Doesn't have any known advantageous features. Requires : JRE.
- N-GAGE COOL! — Paid ($)
- Early attempt at a commercial J2ME and N-Gage emulator. Haves no real benefits over other offerings.
- Micro Emulator — Open-source
- It's a pure Java implementation of Java ME.
- SquirrelJME — Open-source
- Project developing a full JVM implementation + Java ME 8 APIs. Full compatibility with old J2ME software and high portability are among its main goals. Under heavy development.
- J2ME Runner
- Old tool, launches J2ME Applications on Android using native library. Apps have to be converted first, using Netmite.com. Overall 2D stability is acceptable, but 3D support almost does not work. Different types of keyboard & screen stics are included. Unfortunately, often experiences troubles with .JAR conversion Here and Catalog of games for Java J2ME Runner
- Netmite.com
- This is a Android J2ME Runner so that any J2ME or MIDP applications can run without modification. Developers can enter the Android Market quickly. You can use your familiar development environment such as J2ME and MIDP or easily port your existing J2ME Application to Android with minimum code change. Users can use java applications directly inside Android. J2ME apps converted found here
- PSPKVM
- Might be the first one that's open-source. Last update was in 2011. PSPKVM is a J2ME emulator for PlayStation Portable, port of Sun's open-source JavaME implementation phoneME Feature.
- phoneME
- This is the reference implementation of J2ME made initially by Sun Microsystems, now owned by Oracle Corporation.
- phoneME (unofficial ports)
- phoneME for Windows CE/Mobile and Android is an implementation of the phoneME open source J2ME application platform for your Windows Mobile phone or Android mobile device. There are two different platforms of the phoneME Virtual machine : phoneME Feature and phoneME Advanced. Beyond precompiled binaries of these VMs for WinCE and Android based operating systems, this website provides information, patches and instructions in order to compile the phoneME sources yourself.
Symbian and N-Gage
Developer | Nokia |
---|---|
Type | Cellphone & Mobile |
Generation | 6th generation |
Release date | 7 October 2003 |
Discontinued | 24 February 2006 |
Successor | N-Gage 2.0 |
Emulated | ✓ |
- This page is about emulating Symbian/N-Gage on other systems. For the inverse, see Emulators on Symbian.
N-Gage is a mobile phone and a handheld game device developed and designed by Nokia Corporation,
announced on 4 November 2002 and released on 7 October 2003.
N-Gage QD introduced in 2004 as a redesign of the original "N-Gage Classic", fixing widely criticized issues and design problems. 'N-Gage' was discontinued in February 2006, with Nokia moving its gaming capabilities onto selected Series 60 smartphones.
N-Gage 2.0 was announced in 2007.
Originally a joint Nintendo-Nokia cellphone handheld hybrid project slated for 2005, Nintendo backed away from the project (and its plans for NES/Game Boy ports for mobile were repurposed for their Virtual Engine project). Nokia continued the project on their own anyways and released N-Gage on October 7, 2003, for $299 as the most powerful handheld of its time, that is up until the DS and PSP came along and ended Nokia's hopes at dominating the handheld gaming market. It had an ARM920T CPU at 104 MHz.
However, while gaining support through GBA/PS1 ports (including the only English version of the JP-only Xanadu series until 2016) and a few original exclusives, the thing suffered from huge design flaws, from the button layout to the display and cell phone functionality.
Has a revision called the QD which was unveiled on April 14, 2004, with an ARM9E CPU. ROM dumps of Symbian and N-Gage games are available.
Emulators
Name | Platform(s) | Version | N-Gage | N-Gage 2.0 | Accuracy | FLOSS | Active | Recommended | |
---|---|---|---|---|---|---|---|---|---|
PC / x86 | |||||||||
EKA2L1 | Automatic CI builds | ✓ | ~[N 1] | Mid | ✓ | ✓ | ✓ | ||
Engemu | git | ? | ✗ | ? | ✓ | ✗ | ✗ | ||
NGEmu | git | ? | ✗ | ? | ✓ | ✗ (see below) | ✗ | ||
N-GAGE COOL! | 1.2.1 ($) | ? | ✗ | Low | ✗ | ✗ | ✗ | ||
Mobile / ARM | |||||||||
EKA2L1 | Automatic CI builds 0.0.9 |
✓ | ~[N 1] | Mid | ✓ | ✓ | ✓ |
- ↑ 1.0 1.1 Required: N-Gage 2.0 Installer
- EKA2L1
- An open-source high-level Symbian and N-Gage emulator, supported OS S60v1, S60v2, S60v3, S60v5, S^3 and S80.
- Engemu
- A Nokia N-Gage focused emulator with low-level emulation.
- NGEmu
- The first known Nokia N-Gage emulator (with high-level emulation), although it is currently on hiatus due to a lack of information required to further development. Linux support is planned for the future.
- N-GAGE COOL! — Paid ($)
- Early attempt at a commercial N-Gage emulator. Haves no real benefits over other offerings
Execution Engine (ExEn)
ExEn was a freeware solution developed by French company In-Fusio around 2000 and later the company re-developed the ExEn V2 engine in 2002, which further improved the speed and expressiveness of mobile. It was first Java-based game engine entirely dedicated to mobile devices itself as an alternative to the limitations of J2ME's game development (offering missing feautures like sprite zooming, parallax scrolling, rotations).
The API is based on Java and is very similar to J2ME, but is optimized for game development and deployment instead. Even the programming style is almost the same. Its significance is very similar to the Mophun platform. The ExEn API has various gaming specific classes that are absent from J2ME. ExEn was the first mass market downloadable game engine to be made available in Europe. It achieved relative success and widespread hardware support in Europe, and was also used in China. It's not as widely distributed though, and according to In-Fusio's website, it isn't available on Nokia, Sony Ericsson, Samsung or Motorola handsets.
Emulators
Name | Platform(s) | Version | Accuracy | FLOSS | Recommended |
---|---|---|---|---|---|
EXEN-V2 Generic Simulator | 0.1 | Low | ✗ | ✗ |
- EXEN-V2 Generic Simulator
- A very old emulator for ExEn software, taken from SDK. While many games will go in-game, they'll crash at various points and fps drop.
Classic BlackBerry OS
A QNX based operating system used in BlackBerry devices.
Emulators
Name | Platform(s) | Version | FLOSS | Recommended |
---|---|---|---|---|
BlackBerry Simulator Series | BlackBerry 10 Blackberry 7 Blackbery 6 Various (Official)‡ Various (B8kifB73erD's archive) Lunar (The BlackBerry Preservation Project) CrackBerry Forum |
? | ✓ |
Palm, Inc.
webOS (Palm Pre/Pixi)
Palm launched webOS, then called Palm webOS, in January 2009 as the successor to Palm OS. The first webOS device was the original Palm Pre, released by Sprint in June 2009. In April 2010, HP acquired Palm, then in 2013 LG acquired them to make webOS for TV, Smartwatch, and Smartfridge. For LG's webOS see Smart TV Emulators.
Emulators
TODO: this section is broken, check the history of this section and restore the present metadata but keep the emulator images.
Name | Platform(s) | Version | Accuracy | FLOSS | Active | Recommended |
---|---|---|---|---|---|---|
Preenv | here | Mid | ✓ | ✗ | ~ | |
webOS Emulator images | Wiki0.6.9 preenv 0.1.7git |
High? | ✗ | ✗ | ✓ |
Also see https://liliputing.com/phoenix-devices-gets-open-webos-to-run-as-an-android-app/
PalmOS
PalmOS is a mobile operating system developed by Palm, Inc., for personal digital assistants (PDAs) in 1996.
Emulators
Name | Platform(s) | Version | Accuracy | FLOSS | Active | Recommended |
---|---|---|---|---|---|---|
PC / x86 | ||||||
Mu | 1.0.0git | Mid | NC | ✓ | ✓ | |
StyleTap | 0.8.033 ($) | ? | ✗ | ✗ | ~ | |
POSE | Varies | ? | ? | ~ | ✗ | |
Palm Simulator | Varies | ? | ? | ~ | ✗ | |
cloudpilot | 1.8.14 | Mid | ✓ | ✓ | ~ | |
Mobile / ARM | ||||||
StyleTap | 0.8.034 ($) 0.8.034 (Cracked) (Android only) |
? | ✗ | ✓ (Android only) | ~ | |
PHEM | git | ? | ✓ | ✓ | ~ | |
PalmOS Emulator | 1.0.2.0 | ? | ✗ | ✗ | ~ | |
Garnet VM | Maemo | ? | ✗ | ✗ | ~ | |
QCopilot | 0.5 | ? | ✓ | ✗ | ~ |
Mediatek Runtime Environment (MRE) / MAUI
Being the turnkey solutions firm that they are known for, as their chips are used on millions and millions of el-cheapo "Shanzhai" devices all over the world (especially counterfeit Nokias and Goophones among other things), Mediatek has also come up with their own mobile platform and API known as the Mediatek Runtime Environment, aka MAUI. It is targeted for so-called "smart" feature phones, i.e. those that offer similar functionality to standard mobile operating systems like Android, but are watered down for entry-level users. Games and applications for this platform are in .VXP
format and other applications appear to be available on the usual WAP sites.
Emulators
Name | Platform(s) | Version | Accuracy | FLOSS | Recommended |
---|---|---|---|---|---|
Mediatek MRE SDK | 3.0.00.20 | Mid | ✗ | ✓ |
Motorola
MotoEZX/OpenEZX
MotoMAGX
Mophun
Mophun is an even more hardware-efficient free European-centric mobile gaming solution developed by Swedish company Synergenix Interactive AB. There are two versions of Mophun, 2D for low-end (Sony Ericsson T2xx, T3xx and T6xx series) and 3D for high-end handsets (Symbian S60 and UIQ3 phones), and it's often used to provide embedded (pre-installed) games on mobile phone handsets.
Emulators
Name | Platform(s) | Version | FLOSS | Accuracy | Active | Recommended |
---|---|---|---|---|---|---|
PC / x86 | ||||||
Mophun emulator | 2.5.4 alpha 2 | ✗ | Mid | ~ (Tuxality mod) |
✓ | |
nofun | 0.0.3 | ✓ | Mid | ✓ | ✓ | |
4Mophun | 1.1 | ✗ | Mid | ✗ | ✓ | |
Mophun SDK | 2.5 | ✗ | Mid | ✗ | ~ | |
MoRePhun | N/A | git | ✓ | ? | ✗ | ✗ |
Mophun ActiveX Control | 1.0 | ✗ | ? | ✗ | ? | |
Mobile / ARM | ||||||
nofun | 0.0.3 | ✓ | Mid | ✓ | ✓ | |
Mophun Games Launcher | 1.01 | ✗ | Mid | ✗ | ✓ |
- Mophun Games Launcher
- Only compatible with 13 games, all of which use the 3D engine and were released for Symbian S60 and UIQ devices.
- 4Mophun
- Does not work with games that are locked (e.g. have a predefined IMEI recognition algorithm) or do not use the 3D engine.
- mophun
- An official emulator, designed for development and demos. As such, encrypted or compressed games do not boot. However, this has been worked around, both by decrypting the files and decompressing them (except for compressed resources), and modifying the emulator to perform decryption on the fly, albeit only when opening them via the Open menu. Exile is not known to work in any found version of the emulator.
- MoRePhun
- A new, open source emulator by Luca91. It is only a proof of concept, as only a few opcodes and a couple of SDK APIs are emulated, and there is no heap. There is sprite and input support, as well as support for the collision API. It is compatible with a few small homebrews. Luca91 mentions the SDK API handler needs to be better organized.
- Mophun ActiveX Control
- The official website for the platform, mophun.com, used to host development demos playable in the browser using the ActiveX platform (crawled demo files here). The mophun plugin itself can run unencrypted .mpn files. Although it is not playable through the web archives of the site, it is expected to be curated for Flashpoint.
Adobe
Flash Lite
Name | Platform(s) | Version | FLOSS | Active | Recommended | ||
---|---|---|---|---|---|---|---|
Desktop | |||||||
Ruffle | git | ✓ | ✓ | ✓ | |||
Mobile | |||||||
Ruffle | 1.0 | ✓ | ✓ | ✓ |
Japanese cellphones
Several Japanese-centric mobile game technologies spawned during the 2000's as part of convoluted all-in-one technological solutions, mostly based on Java.
- NTT DoCoMo released DoJa (later renamed to Star), based on Java ME CLDC, but not MIDP. Applications come in the form of .JAR files accompained by a .JAM descriptor.
- KDDI released ezplus (later renamed to "EZ-appli (Java)"), based on Java ME extended with proprietary APIs. Applications come in the form of .KJX files. It was later replaced with a BREW-based solution called "EZ-appli (BREW)"
- J-PHONE released J-SKY, based on standard J2ME MIDP extended with several proprietary 3D/sound/gfx APIs. It was later renamed to "Vodafone Live!" and "Yahoo! Keitai" as the company got purchased by Vodafone and SoftBank, respectively. Applications come in the form of .JAR and .JAD files.
It is possible to develop applications that work both under ezplus, J-SKY and standard J2ME devices by using only MIDP1.0 APIs
i-mode (DoJa/Star)
Japanese mobile manufacturer NTT DoCoMo released DoJa (DoCoMo's Java) as part of their i-mode set of standards for mobile telephony. It is based on Java ME CLDC, but not MIDP. The profile received several updates, being later renamed to "Star". It was used on DoCoMo's mova and FOMA series of mobile phones, being first featured on the mova 503i from 2001.
While i-mode phones were made available in a limited fashion in Europe, the game apps weren't exported, the i-mode specific features were mainly used for enhancing web pages for mobile browsers and even the Java API is the different more limited "Overseas Edition". The main reason behind this was the fierce push back by Nokia and other western mobile hardware manufacturers refusing to support the DoJa software standard until very late.
DeNa (Mobage), Namco (Tales of Mobile) and Level-5 (RoiD) set up Steam-like game distribution portals specific to some cell-phone models yet i-mode based. The different names are to confuse dirty gaijin, probably.
Applications were denominated "i-αppli" (Japanese : iアプリ) and come in the form of .JAR
files accompained by a .JAM
descriptor text file.
Emulators
Name | Platform(s) | Version | Accuracy | FLOSS | Active | Recommended |
---|---|---|---|---|---|---|
PC / x86 | ||||||
DoJa SDKs | Various | Mid | ✗ | ✗ | ~ | |
DoJa Overseas Edition SDK | 1.03 | Low (DoJa 2.5 Overseas Edition) | ✗ | ✗ | ✗ | |
i-JADE | 1.2.3 | Low (DoJa 1.X) | ✗ | ✗ | ✗ | |
Jade | 0.1.7 | Low (DoJa 1.5) | ✗ | ✗ | ✗ | |
SquirrelJME | 0.4.0 | Aims for 100% | ✓ | ✓ | ? | |
Mobile / ARM | ||||||
説明 懐かしのiアプリをお手軽実況プレイ!iアプリ・アーカイブス | 2.6 | Low | ✗ | ✗ | ✗ | |
Doja iAppli エミュレータ (Browser) | 1.1.2 | ? | ✗ | ~ | ? |
- DoJa SDKs
- Official development kit from NTT DoCoMo, featuring a device emulator. Several releases were archived by Wayback Machine ::DoJa 1.5 DoJa 2.? DoJa 2.1 DoJa 3.0 DoJa 3.5 DoJa 4.0 DoJa 4.1 (111) DoJa 4.1 (201) DoJa 5.0 Star 2.0
- DoJa Overseas Edition SDK
- SDK for the stripped down Overseas Edition DoJa profile
- i-JADE
- iappli development kit from Zentek
- Jade
- Open-source project implementing several DoJa 1.5 APIs. Low compatibility
- SquirrelJME
- Open source emulator that can run J2ME software, will be adding i-Mode support in 2022.
KDDI EZplus
Japanese carrier KDDI/Au released ezplus as part of their EZweb set of standards for mobile telephony. It is based on Java ME extended with proprietary APIs. The first device supporting it was released on 2001 (Hitachi C451H). ezplus was later renamed to "EZ-appli (Java)" (Japanese : "EZアプリ (Java)") and gradually replaced with a BREW-based solution called "EZ-appli (BREW)" until 2004 when the last ezplus device was released.
In 2006 an Open Application Player (Japanese: オープンアプリプレイヤー) feature was added allowing to run MIDP 2.0 Java apps on the BREW devices, which were often denominated as オープンアプリ. It lacks support for the original proprietary extensions of ezplus. On 2011, Open Application Player was updated and renamed to "EZ-appli (J)" along EZ-appli (BREW) which became "EZ-appli (B)"
Applications were denominated "ezplus アプリ" (during the ezplus name era) and come in the form of .KJX
files.
Emulators
Name | Platform(s) | Version | Accuracy | FLOSS | Active | Recommended |
---|---|---|---|---|---|---|
PC / x86 | ||||||
ezplus emulator | 1.0 | Mid | ✗ | ✗ | ~ | |
Mobile / ARM | ||||||
J2ME Loader | 1.7.9 |
Mid | ✓ | ✓ | ✓ | |
JL-Mod (JL fork) | git | Mid | ✓ | ✓ | ✓ |
- ezplus emulator
- Official development tool from KDDI, developed by Zentek.
- J2ME Loader
- Now J2ME Loader support ezplus apps that only support 128x160 resolution and font option recommend is (9 - 13 - 15).Installation guid and here
J-SKY
Japanese service provider 'J-PHONE' released the J-SKY platform as part of their set of standards for mobile telephony. It was based on J2ME and MIDP extended with several proprietary 3D/sound/gfx APIs called JSCL. J-PHONE had been purchased by Vodafone on 2001, which two years later took over the original branding renaming the carrier to Vodafone KK. The J-SKY technology became then known as "Vodafone Live!" and it was extended with the VSCL set of APIs. On 2006, Vodafone KK was purchased by SoftBank Group, getting this technology rebranded again as "Yahoo! Keitai".
Applications were called "Java™ App" (Japanese : Java™アプリ) during the J-SKY era, "V-Appli" (Japanese : Vアプリ) during the Vodafone era and "S! Appli" (Japanese : S!アプリ) during the SoftBank era. They come in the form of .JAR
accompained by a .JAD
descriptor text file.
Emulators
Name | Platform(s) | Version | Accuracy | FLOSS | Recommended |
---|---|---|---|---|---|
J-SKY Application Emulator | 1.3B | Mid | ✗ | ~ |
- J-SKY Application Emulator
- Official development tool from J-PHONE, developed by Zentek. It does not supports any of the later APIs.
Korean cellphones
SKT (Sunkyong Telecom) provided two development platforms: GVM and SK-VM. GVM based on Mobile C, and SK-VM based on Java. SK-VM was a Java-based development platform, but the execution speed was slower than GVM due to the nature of Java. SK-VM is a J2ME (Java 2 Micro Eidtion) Java execution environment developed
GVM (General Virtual Machine): GVM1X, GVM2X Mobile platform created based on Mobile C (modified to fit the mobile environment, such as reduction of pointer and union functions in the existing C language) developed by Shinji Soft.
GNEX (General & Next Multimedia Player): GVM3X A mobile platform that eliminates the limitations of the existing GVM and further strengthens functions such as file system, network, and graphics. GNEX is an upgraded version of GVM, and has the advantage of having few capacity restrictions and fast speed, but its penetration has fallen significantly compared to GVM. Therefore, when releasing a GNEX version of a game, we developed both the GVM version and the GNEX version to support phones that do not support GNEX
KTF (Korea Telecom Freete) provided Qualcomm's BREW. The biggest advantage is that it is based on C/C++, and unlike other development platforms, it is executed in the form of a native binary rather than being executed based on a VM. it is an integrated platform, but it has been divided into SKT-WIPI, KT-WIPI, and LGT-WIPI. For example, SKT-WIPI and LGT-WIPI supported C/C++, while KTF-WIPI supported only C. Aside from that, many other aspects differed from carrier to carrier.
LGT (Lucky Goldstar Telecom) - MIDP [JAVA] A mobile platform that adds additional functions such as sound to J2ME (Java 2 Micro Edition) of LG MIDP JAVA SUN. LGT's platform is sometimes called MIDP and JAVA
- SKT's WIPI-JAVA
- SKT's WIPI-C
- KTF's WIPI-JAVA
- KTF's WIPI-C
- LGT's WIPI-JAVA (LGT does not support WIPI-C)
Wireless Internet Platform for Interoperability (WIPI)
WIPI a national middleware platform standard in South Korea. Almost all cellphone games released in South Korea from 2002 to 2009 were developed as WIPI. SKT (GNEX, SKVM), KTF (BREW), LGT (MIDP-JAVA), etc. are these, and they are currently converting to an integrated platform called WIPI. After conversion to an integrated platform called WIPI, mobile games have higher quality graphics and game ability than before.
Emulators
Name | Platform(s) | Version | FLOSS | Accuracy | Active | Recommended |
---|---|---|---|---|---|---|
PC / x86 | ||||||
WIE (WIPI Emulator) | git | ✓ | ? | ✓ | ? | |
AROMA WIPI Emulator | 1.1.1.8 | ✗ | ? | ✗ | ✓ | |
KTF WIPI | 1.1 | ✗ | ? | ✗ | ✓ |
Chinese Mobiles
MiniJ (MRP platform)
MiniJ is a lightweight mobile platform developed by Hangzhou Sky Network Technology Co., Ltd. and it's widespread in China (and in some other countries). It has excellent overall performance and could run applications and games smoothly with very limited hardware resources. MiniJ applications are written in C programming language.
Games and applications for this platform are in .mrp
format.
Emulators
Name | Platform(s) | Version | Accuracy | FLOSS | Active | Recommended |
---|---|---|---|---|---|---|
PC / x86 | ||||||
vmrp | git | Mid | ✓ | ✓ | ✓ | |
iacEmuMrp | 0.3.30.3.3[A 1] | Mid | ✗ | ✓ | ~ | |
Mobile / ARM | ||||||
Mythras | git 2018 2021 |
Mid | ✓ | ✓ | ✓ | |
iacMrp | 1.9.561.9.56[A 1] | Mid | ✗ | ✓ | ~ | |
Mrpoid2 | 3.2.10 | Mid | ✗ | ✗ | ~ | |
iacEmu
(iacMrp2) |
? | ? | ✗ | ? | TBD | |
iacMrp | 0.7.6 | ? | ✗ | ✗ | ~ |
KaiOS
KaiOS is a mobile Linux distribution for keypad feature phones. It is developed by KaiOS Technologies (Hong Kong) Limited.
Name | Platform(s) | Version | Active | FLOSS | Recommended |
---|---|---|---|---|---|
KaiOS RunTime Simulator (Kaiosrt) | simulator | ✓ | ✓ | ✓ |
Binary Runtime Environment for Wireless (BREW)
A mobile development platform by Qualcomm, originally intended for CDMA handsets such as those sold by Verizon. Unlike Java ME, applications and games for BREW use native code as opposed to running in a virtual machine in the case of Java ME. Also, BREW development has a higher barrier to entry due to stringent certification requirements, which led it to be significantly less popular than Java ME even in markets where CDMA has a significant market share, such as in North America. To top it all off, downloaded BREW apps are tied to an individual handset via a digital signature, making piracy or sideloading difficult; it is however possible to unlock certain BREW-enabled CDMA phones to run backups and pirated apps, though downloads for BREW apps and games are rare and hard to find compared to Java ME.
Zeebo is a brazilian video game console and online distribution platform developed and released with developing markets in mind, also runs on BREW. Dumps of the Zeebo and its games exist, and gameplay footage of them have been uploaded on YouTube.
Emulators
Name | Platform(s) | Version | Zeebo | Accuracy | Active | FLOSS | Recommended |
---|---|---|---|---|---|---|---|
Melange | git Builds |
✗ | Mid | ✓ | ~[N 1] | ✓ | |
Infuse | ? | ✓ | Low | ✓ | ✓ | TBD |
- ↑ Contains proprietary Qualcomm components
Danger OS
Developed by Danger Incorporated. Danger OS was a Java-based OS used on phones that Danger designed themselves. These devices were sold under many names such as Hiptop, Mobiflip, Sharp Jump, and (most notably) T-Mobile Sidekick. While it could run some J2ME apps (from version 2.3 onward), it also used its own proprietary J2SE-based APIs and SDK; for this reason, anything built using these APIs won't run on a standard J2ME emulator. To aid third-party software design, Danger has released a comprehensive SDK that contains a Hiptop simulator, development installation utilities, and Danger API information.
Danger OS uses special files called "bundles". Bundle files have the extension .bndl
. Bundles have inside a custom resource format for storing assets and code which is converted from Java bytecode into a custom bytecode format. Each bundle file is linked to a specific operating system version and build number. For example, a bundle file for v3.4/155053 (T-Mobile Sidekick 3) would be denied installation on a v3.3/149695 device (T-Mobile Sidekick iD). Installation of bundles require a developer key to be installed on your device if you are using a Production OS. Internal OS builds do not require developer keys.
Emulators
Name | Platform(s) | Version | Active | FLOSS | Recommended |
---|---|---|---|---|---|
Danger Hiptop/Sidekick SDK Simulator | SDKs | Mid | ✗ | ~ |
- Danger Hiptop/Sidekick SDK Simulator
- Official SDK from Danger Inc with built-in simulators for testing. These simulators can't run the special bytecode format used on real devices.
Dark Age of Monochrome mobile phones
Earlier black & white cellphone games (both in Japan and worldwide) didn't get as much love either when it comes to emulation and preservation of game binaries. There were, however, recreations of Snake and Space Impact for Nokia phones on their website at one time, along with remakes of the aforementioned games for Android and iOS. There are several Nokia phone models with MAME support, though they are preliminary at best with most models displaying a "CONTACT SERVICE" error if not a white screen.
There however exists an SDK for the Nokia 3410, an enhanced variant of the infamous 3310 with a higher-resolution screen and support for MIDP applications. A fixed rip of the simulator can be downloaded on the Internet Archive, though it may have some issues especially on later Windows versions.
Emulators
Name | Platform(s) | Version | Accuracy | FLOSS | Recommended |
---|---|---|---|---|---|
Nokia 3410 SDK | 1.0 | Mid | ✗ | ~ |
Maemo
Emulators
Name | Platform(s) | Version | FLOSS | Active | Recommended |
---|---|---|---|---|---|
The Maemulator | 23.2.25 | ? | ✓ | ~ |
- The Maemulator
- A compatibility layer for running Bounce Evolution on modern Linux-based systems using qemu user-space emulation. This is not an official port.
- QEMU
- See http://www.rkeene.org/projects/info/wiki/106 for how to do it
Windows Mobile & Windows Phone series
Windows Mobile (PocketPC)
Released in 2000 by Microsoft as their first mobile OS, originally called "Pocket PC" and made to run on PDA's, the name changed to Windows Mobile when the PDA market began to shrink. WM was initially based on Windows CE before evolving into something unique. It was mainly designed for business users, so it didn't have a lot of games for it.
Emulators
Name | Platform(s) | Version | FLOSS | Recommended |
---|---|---|---|---|
Microsoft Device Emulator | ? | ✓ |
Windows Mobile 6.1.4 Emulator Images
Windows Phone & Windows 10 Mobile
Emulators
Name | Platform(s) | Version | FLOSS | Recommended |
---|---|---|---|---|
Windows 10 SDK | 10.0.15254.1 Visual Studio 2017 |
✗ | ✓ | |
WPR (WP7-8) | git mediaexplorer74's fork |
✓ | ~ |
TTPcom's Wireless Games Engine (WGE)
Firefox OS
Emulators
THERE ARE CURRENTLY NO EMULATORS FOR THIS OS. ANY YOUTUBE VIDEOS CLAIMING TO OFFER THEM ARE SCAMS!
Fire OS
Fire OS is a mobile operating system developed by Amazon for their Fire line of devices. It is basically a heavily-modified Android distribution with extensive dependency on Amazon services. Apps sold on the Amazon App Store should run fine on any Android emulator with little to no issue.
Tizen
Emulators
Name | Platform(s) | Version | FLOSS | Accuracy | Active | Recommended |
---|---|---|---|---|---|---|
Tizen SDK | SDK | ? | Mid | ✗ | ~ |
Bada OS
Bada (바다) is a mobile operating system developed by Samsung Electronics for devices such as mid- to high-end smartphones and tablet computers. The name is derived from "바다 (bada)", meaning "ocean" or "sea" in Korean. All phones running Bada were branded with the name Wave, unlike Samsung's Android devices which are branded as Galaxy.
Emulators
Name | Platform(s) | Version | FLOSS | Active | Recommended |
---|---|---|---|---|---|
Bada SDK | 2.0.6 | ? | ✗ | ~ |
Acknowledgments
- Micro Java Game Development, mentions Japanese i-mode emulators that are currently dead, like i-tool.
- A 2003 article from GameDev.net about the major Western mobile phone systems.
- Article about DoCoMo Java programming.
See Also
- Kahvibreak - preservation project focusing on games for J2ME. Also has Mophun and Nokia 3310 software.
- Cellphone games preservation