J2ME Loader

From Emulation General Wiki
Jump to navigation Jump to search
J2ME Loader
Developer(s) Nikita Shakarun (nikita36078)
Latest version 1.7.9 [+]
Active Yes
Platform(s) Android
Emulates J2ME
Mascot Capsule 3D
EZplus アプリ
Support ($) PayPal
Programmed in Java, C
License Apache 2.0
Source code GitHub

J2ME Loader is an open-source Java 2 Micro Edition (with support 3D engine "Mascot Capsule V3") and EZplusアプリ compatibility layer[N 1] for Android. This project is a fork of J2meLoader.


Released in 2017. JL-Mod merged with J2ME Loader, which also added open-source Mascot Capsule implementation in 2022.

System requirements : Android 4.0 +


DR.jpg SU.jpg Bounce.jpg WWE10.jpg C4D.jpg MI3.jpg
SM3.jpg CMI.jpg 1942.jpg POP08.jpg GOWB.jpg Asterix.jpg
BJW3.jpg SVB.jpg Shadowalker.jpg Madagascar3.jpg UMK3.jpg AASO.jpg
SHP1.jpg KFP3.jpg Pac-manCE.jpg BJWT.jpg G4R.jpg NinjaP.jpg
SCPT3D.jpg BOM3D.jpg 3DBM.jpg NFSH3D.jpg DMC3D.jpg TML3D.jpg
3DChess.jpg TBX3D.jpg Gladiator3D.jpg NFSP3D.jpg Deep3D.jpg F4 3D.jpg
DAD3D.jpg MLD3D.jpg 3DSQ.jpg TCM3D.jpg AOG3D.jpg Asphalt3D.jpg
3DAR.jpg Stalker3D.jpg CC3D.jpg NFSS3D.jpg REM3D.jpg LRH3D.jpg
PMK3D.jpg SW3D.jpg SW1.jpg 3DSW.jpg SR3D.jpg AEM3D.jpg
3DRCU.jpg 3DMGL.jpg MOH3D.jpg TRU3D.jpg MM33D.jpg Rush3D.jpg
BS3D.jpg Juiced3D.jpg NFST3D.jpg 3DTM.jpg Eliminator.jpg RBH3D.jpg
TT3D.jpg RB3D.jpg AW23D.jpg NFSU3D.jpg CBX3D.jpg GPB3D.jpg


J2ME Loader is high compatible and capable of playing thousands of J2ME games (Runs almost every Nokia games, especially Gameloft games), more than 96.8% of the J2ME library with supports 2D games and also 3D with Mascot Capsule 3D games. Converts .JAR and .KJX 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

See J2ME Loader compatibility list

Features / Settings

  • Fast emulation
  • MIDP 1.0 & 2.0 support
  • M3G 1.0 support
  • Mascot Capsule 3D support
  • High compatibility
  • KDDI EZplus アプリ support
  • Bluetooth API support
  • Touchscreen input support
  • Symbian^3 multi touch support
  • Supports external virtual keyboards and QWERTY input
  • Supported formats .JAR, .JAD and .KJX
  • Menu key remapping support
  • Buttons customisation support
  • Supports different keyboard layouts and customization
  • Individual settings for each application.
  • Highly accurate, with the right frame rate (FPS limit support) for each game, as well as vibration.
  • Hardware acceleration support (but games won't run too fast)
  • Screen gravity support
  • Screen orientation
  • Accelerometer support
  • Scaling support
  • Immediate processing mode
Using shaders (image post-processing filters)

Shaders are GPU microprograms that affect the game in one way or another in order to improve it or replicate the visual features of some on-screen devices, such as displays on portable consoles or old tube TVs. Shaders can significantly alter the game, but also reduce performance. In addition, shaders can have customizable parameters, if there are such an icon for accessing them will be displayed on the far right side and opposite the name of the selected shader.

Supports the same shader format as PPSSPP To use, you need to put them in the shaders folder in the working directory of the emulator, then in the game profile, select the graphics output mode: Hardware acceleration (OpenGL ES) and select the desired shader. Some shaders have settings - when you select one, an icon will appear next to the name, when you click on it, a window with settings will open A small collection of compatible shaders can be found Here

Original LCD Dot (LCD) GreyScale
JL Original.jpg JL LCD.jpg JL Dot.jpg JL grayscale.jpg
Inverse Color Sharpen Bloom Cartoon
JL Inverse.jpg JL Sharpen.jpg JL bloom.jpg JL cartoon.jpg
Game setting
JL sm1.jpg
JL sm2.jpg
JL sm3.jpg
JL sm4.jpg
★ In JL setting ★

Q. Enable Action bar
JL menu ab.png

– Enable display of screenshot button, side menu

★ In game setting ★

Q. Resolution
JL ej.jpg

A. Set the resolution of the loaded game. Select in the game settings and also specify any resolution, specify any for 3D and touch games, since they often have auto-scale, supports 4k.

Q. Background
JL tm bg.jpg

A. Choosing a background color under the main game.

Q. Scale
A. Image scale from the specified resolution.

Q. Screen gravity
JL so.png

Q. Screen orientation
JL sg.png

A. Changes screen orientation: Landscape, Portrait, Auto

Q. Filter
A. This function increases the quality of the game, but may also decrease the performance.

Q. Graphic mode
A. Selecting the render mode The graphics mode only affects the final scaling of the frame and the way it is delivered to the screen

JL gm.png

1. Software - Used by CPU to output 2D and 3D graphics

2. Hardware OpenGL ES - The mode uses OpenGL ES 2.0 directly - this can be more profitable if the device does not supports newer versions

3. Hardware window - Outputs a frame in a way that is used for buttons, lists, progress bars and other UI

4. Hardware Surface - Available since Android 6.0+ uses the interface that is usually used for video output

Q. FPS limit
A. When game running fast, it allows you to reduce fps for a comfortable game, for example: Rayman 3 128x128.

Q. Touch input
JL tinput.jpg

A. Used in games with touch controls, Ex. 640x360 / 800x480 resolution games.

You can also disable the button overlay, as they are not needed

Q. Save / Load state supported?
A. No, because It's impossible, J2ME Loader doesn't emulate hardware, so it can't save the CPU/RAM state.

Button Colors
Original Labels Buttons
JL b original.jpg JL b lables.jpg JL b buttons.jpg
Outline Labels (P) Buttons (P)
JL b outline.jpg JL b lables(p).jpg JL b buttons(p).jpg
Font option (Small — Medium — Large)[N 2]

Here you can set the sizes of small, medium and large fonts that will be used by the Games. Dimensions are in pixels.

If the Scaled Pixel Sizes check box is selected , the specified dimensions will be adjusted by Android to provide the same visible text size on screens with different resolutions. It is recommended to enable this setting when using virtual screen resolutions of more than 240x320 pixels.

The Presets button allows you to quickly set the font sizes that are most suitable for a given virtual screen resolution:

Resolution Font
240x320 18 — 22 — 26
176x220 15 — 18 — 22
128x160 13 — 15 — 20
128x128 9 — 13 — 15
Screen option
  • Width and Height set the size of the virtual screen that will be available to the games. Many Games are optimized for a specific screen resolution (usually 240x320) and may not display correctly at other resolutions.
  • Scale if virtual screen resolution does not match smartphone screen resolution:

enabled - the virtual screen is scaled to fit the smartphone screen off - the virtual screen is located in the center of the smartphone screen without resizing

  • Maintain aspect ratio when scaling:

— Enabled - the virtual screen fits into the smartphone screen while maintaining the aspect ratio, possibly occupying only a part of it

— Off - the virtual screen is stretched to fill the entire smartphone screen, possibly with distortion of the displayed graphics

  • Screen filtering when scaling improves image quality, but requires more hardware resources

Presets allow you to quickly set the default resolution of the virtual display. The table below shows a list of standard resolutions (for example, HTC Evo 3D, screen resolution 960x540)

Resolution Scale Aspect ratio and

screen orientation

128x128 4.21875: 1 1: 1
128x160 3.375: 1 Portrait 3.2: 4
132x176 3.068: 1 Portrait 3: 4
176x220 2.454: 1 Portrait 3.2: 4
240x320 1.6875: 1 Portrait 3: 4
202x270 2: 1 Portrait 3: 4
360x270 2: 1 Landscape 4: 3
405x540 1: 1 Portrait 3: 4
720x540 1: 1 Landscape 4: 3
960x540 1: 1 Landscape 16: 9
  • Options 1 through 5 correspond to standard screen resolutions for mobile phones. They provide the greatest compatibility (most games are optimized for one of these resolutions), but when scaling to the smartphone screen, the graphics quality may decrease slightly.
  • Choices 8, 9, and 10 provide the best graphics quality because they are calculated based on the smartphone screen resolution and do not use scaling. However, if the games is not optimized for these resolutions, it may not work correctly or not work at all. In this case, it is recommended to select a lower resolution.
  • Options 5 and 6 are intermediate in quality and compatibility. They are calculated based on the resolution of the smartphone screen so that there are exactly four physical pixels for each virtual pixel. This removes distortion when scaling. When using these options, it is recommended that you turn off screen filtering to sharpen the picture.

The Background button allows you to select the background color of the screen. This color will fill the stripes at the edges of the screen if it is not completely occupied by the virtual screen.

Recommended Devices
Resolution Devices
960x540 * HTC Evo 3D
480x800 * Samsung GT-S8000 / Galaxy S II / Omnia Pro
* Sony Ericsson X1i
* HTC HD2 / Leo
480x360 * BlackBerry 9360 / 9700 / 9020 / 9780
640x480 * Nokia E6-00
360x640 / 640x360 * Nokia 5800 Xpress Music / 5530 Xpress Music / N8 / C7
* Sony Ericsson SATIO / U5i Vivaz
320x480 * Samsung GT-S5292 / GT-S5296 / GT-S5380K / S7250
* Sony Ericsson Xperia X8
320x240 * Nokia E71 / E72 / C3-00 / Asha 201
* BlackBerry 8520 / 9220 / 9220 Curve/ 9300
* Samsung GT-S3350 / GT-S3353 / SGH-i617
352x416 * Nokia N80
240x432 * Sony Ericsson Aino
240x400 * Samsung GT-5230 / GT-S5230
* Nokia Asha 305 / 306 / 308 / 311
* LG KU990 / GS290 / GS205 / KP500 / GT505 / GT400
240x320 * Sony Ericsson K800i / K660 / W595a / Z750i / W595 / W910i
* Nokia 6280 / 6300 / 5300 / 5310XM / N73 / N95 / N85 / X3-02 / X2-00 / X2-05 / X2-02 / 5000d / C2-03 / 2700 Classic / C2-01 / 220 / 216 / 215 / 222 / 225 / Asha 303 / 503 / 500DS / 202 / 300
* Samsung SGH-F480 / GT-S5222 / SGH-D900 / E900 / F400 / U600 / D600 / GT-C3312R / GT-C3310
* LG KS360
* Motorola RAZR V8 / ROKR Z6 / E2 / E1000 / E398 / V500 / V635
* Panasonic VS3 / MX7
208x208 * Nokia 6230i
176x220 * LG U8360 / GU230 / GU280 / GB230 / GB280 / A133 / GM205
* Sony Ericsson W810i
* Samsung SGH-L700
176x208 * Nokia N91 / N70 / 7610 / 3250 / 6630 / 6681
176x204 * Motorola RAZR V3 / L7 / KRZR K1
176x205 * Samsung Z300 / Z500
128x160 * Nokia 5200 / 2300 / 2720 / 3110x / 3110 Classic / 6101 / C1-01 / Asha 110 / 2600 Classic / 2630
* Motorola L6
* Samsung SGH-E250i / J700 / E215L / E258 / F250L / GT-B2100 / C3050 / E2210 / E2210L / E2510 / M2310
* Sony Ericsson W200i
128x128 * Nokia 6030 / 3220
* Samsung GT-E2121 / E2120
Theme / UI
Dark White
JL dark.jpg JL white.jpg
JL FPS.png

– Shows the number of frames per second

Force full-screen
Normal Force Fullscreen
Force nm.jpg Force fs.jpg

– Vibrates the forced full screen for the application

Button Shape
  • Rounded Rectangle
L1 L2 L3 L4
JL k1.jpg JL k2.jpg JL k3.jpg JL k4.jpg
  • Oval
L1 L2 L3 L4
JL k5.jpg JL k6.jpg JL k7.jpg JL k8.jpg
  • Rectangle
L1 L2 L3 L4
JL k9.jpg JL k10.jpg JL k11.jpg JL k12.jpg
Keyboard Type
  • Rounded Rectangle
L1 L2
JL i1.jpg JL i2.jpg
  • Oval
L1 L2
JL i3.jpg JL i4.jpg
  • Rectangle
L1 L2
JL i5.jpg JL i6.jpg
Scale Type
As is Fit to window Fill window (ignore aspect ratio)
JL s1.png JL s2.png JL s3.png


API JSR Support
CLDC 1.1
FileConnection API JSR-75
Personal Information Management API JSR-75
Bluetooth API JSR-82
Wireless Messaging API JSR-120
Mobile Media API JSR-135
Web Services Specification JSR-172
Security and Trust Services API JSR-177
LocationUtil API JSR-179
Location API JSR-179
Mobile 3D Graphics API JSR-184
Wireless Messaging API 2.0 JSR-205
Content Handler API JSR-211
Scalable 2D Vector Graphics API JSR-226
Advanced Multimedia Supplements API JSR-234
Mobile Internationalization API JSR-238
Java Binding for the OpenGL® ES API JSR-239
Mobile Sensor API JSR-256
Contactless Communication API JSR-257
MIDP 2.0
MIDP 3.0
Here Maps API
KDDI ezPlus API 2.5
KDDI ezPlus API 3
Mascot Capsule API
Motorola 3D API
Motorola FunLights API 1.0
Motorola Gaming API
Motorola iDEN API
Motorola VibeLight API
Nokia IAPInfo API
Nokia In-App Payment API
Nokia SMS API 0.9
Nokia UI API 1.1
Nokia UI API 2.0
Project Capuchin API
Samsung API 1.0
Siemens API
Vodafone API 1.0
Vodafone API 2.0
→ Mascot Capsule V3 support

implementation is not accurate, there are unresolved problems.

In some games (seen in "Medal of Honor") the 3D scene may not be displayed due to the overlap with the 2D background. Try adding the following line to the "System Properties" field: micro3d.v3.render.no-mix2D3D: true

Another one property turns on the texture filter (built into OpenGL), but this can generate distortion in the form of extra texels being captured at the edges of polygons: micro3d.v3.texture.filter: true without this setting, the quality of the textures is as close to the original as possible and looks more vintage.

Known issue

  • Enabling filtering in some cases can greatly reduce performance. Disable this option if game is too slow.
  • Image flickering issues can be fixed by enabling the Immediate processing mode option.

How to use


Download a latest version of J2ME Loader on your Android device.

Android Automatic Builds
Android GitHubF-Droid
Android Play Store

Next, Click JL +.png (button) at the lower right corner in the main J2ME-Loader Windows and select the .JAR or .KJX program on your file manager, after setup your game configures.

BT Installation
  • Requirements :

Bluetooth API implemented and use key mapping
- 2 Android Devices
- BT Controller

Download (Apps)


Site(s) Rating
dedomil.net ★★★★★
phoneky.com ★★★★
RuGame Archive ★★★★
seclub.org ★★★
oldfag.top ★★★
series40.kiev.ua ★★★
sleza-mobile.ru ★★★
dertz.in ★★★
oldhandhelds.com ★★★
spaces.im ★★★
mobile24.co ★★★
se.tom.ru ★★★
240x320m.ar.ua ★★★
siemensx70.narod.ru (siemens only) ★★★

→ Also recommends Archive.org J2ME collection Cellphone games preservation

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 propietary APIs. The first device supporting it was released on 2001 (Hitachi C451H).

Applications were denominated "EZplusアプリ" (during the ezplus name era) and come in the form of .KJX files.

.KJX Games Collection

Mascot Capsule Ver.3

Mascot capsule 3d.png

Mascot Capsule is a proprietary 3D engine developed by Hi Corporation (Japan), written in C and compiled for all platforms known at the time. It was mostly used in Japanese devices such as i-mode, J-PHONE, EZweb, and others, but it also made it overseas featured in many Sony Ericsson and Motorola devices. Many developers made use of this tech to bring higher quality 3D graphics on the Sony Ericsson version of their J2ME games.

Mascot Capsule 3D games collection

Key binding / mapping

JL px.jpg

Keys : Default

Key Action
D-PAD Down
D-PAD Left
D-PAD Right
D-PAD Center F
D-PAD Left-Up
D-PAD Right-Up
D-PAD Left-Down
D-PAD Right-Down
LEFT-Soft Key L
RIGHT-Soft Key R
NUM1 1
NUM2 2
NUM3 3
NUM4 4
NUM5 5
NUM6 6
NUM7 7
NUM8 8
NUM9 9
NUM0 0
* *
# #


  1. Strictly speaking, it is not exactly an emulator. It converts MIDlets to Android API and makes J2ME applications to run almost natively in Dalvik or Android Runtime
  2. FAQ

See also

External links