Difference between revisions of "J2ME Loader"
(Tags: Mobile edit, Mobile web edit) |
(Tags: Mobile edit, Mobile web edit) |
||
Line 32: | Line 32: | ||
* Fast emulation | * Fast emulation | ||
* High compatibility | * High compatibility | ||
− | * KDDI ezplusアプリ <code>.kjx</code> games are support. Required 128x160 resulation (ezplus | + | * KDDI ezplusアプリ <code>.kjx</code> games are support. Required 128x160 resulation (ezplus has small size games) and font option recommend: <small>(9 - 13 - 15)</small> |
* Bluetooth API support | * Bluetooth API support | ||
− | * Touchscreen input support (Play | + | * Touchscreen input support <small>(Play touch games)</small> |
− | * Supports external virtual keyboards and QWERTY input (PC keyboard / GameKeyboard+) | + | * Supports external virtual keyboards and QWERTY input <small>(PC keyboard / GameKeyboard+)</small> |
* 3D support | * 3D support | ||
* Supported formats .JAR, .JAD and .KJX | * Supported formats .JAR, .JAD and .KJX | ||
* Menu key remapping support | * Menu key remapping support | ||
+ | * Buttons customisation support | ||
* Supports different keyboard layouts and customization | * Supports different keyboard layouts and customization | ||
* Individual settings for each application. | * Individual settings for each application. | ||
− | * Highly accurate, with the right frame rate (FPS support) for each game, as well as vibration. | + | * 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) | + | * Hardware acceleration <small>(Graphics mode: OpenGL ES / windows / surface)</small> support (but games won't run too fast) |
+ | * Screen gravity support <small>(Up / Down / Left / Right)</small> | ||
+ | * Screen orientation <small>(Default / Auto / Portrait / Landscape)</small> | ||
* Accelerometer support | * Accelerometer support | ||
* Scaling support | * Scaling support | ||
+ | * Immediate processing mode | ||
+ | * | ||
; → <i>Add support of external shaders filters</i> | ; → <i>Add support of external shaders filters</i> | ||
Line 315: | Line 320: | ||
|} | |} | ||
− | ==Known | + | ==APIs== |
+ | {| class="wikitable mw-sortable" | ||
+ | |- | ||
+ | |<b>API</b> | ||
+ | |<b>JSR</b> | ||
+ | |<b>Support</b> | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/cldc-1.1 CLDC 1.1] | ||
+ | | | ||
+ | |✓ | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr75 FileConnection API] | ||
+ | |JSR-75 | ||
+ | |✓ | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr75-pim Personal Information Management API] | ||
+ | |JSR-75 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr82_1.1.1_javadoc Bluetooth API] | ||
+ | |JSR-82 | ||
+ | |✓ | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr120 Wireless Messaging API] | ||
+ | |JSR-120 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr135 Mobile Media API] | ||
+ | |JSR-135 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr172 Web Services Specification] | ||
+ | |JSR-172 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr177 Security and Trust Services API] | ||
+ | |JSR-177 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr179_LocationUtil LocationUtil API] | ||
+ | |JSR-179 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr179-1_1-mrel-javadoc Location API] | ||
+ | |JSR-179 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr180-1_3-mrel-javadoc SIP API] | ||
+ | |JSR-180 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr184 Mobile 3D Graphics API] | ||
+ | |JSR-184 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr205 Wireless Messaging API 2.0] | ||
+ | |JSR-205 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr211 Content Handler API] | ||
+ | |JSR-211 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr226 Scalable 2D Vector Graphics API] | ||
+ | |JSR-226 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr234-1_1_1-mrel-javadoc Advanced Multimedia Supplements API] | ||
+ | |JSR-234 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr238-spec-fr-1_0 Mobile Internationalization API] | ||
+ | |JSR-238 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr239 Java Binding for the OpenGL® ES API] | ||
+ | |JSR-239 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr256 Mobile Sensor API] | ||
+ | |JSR-256 | ||
+ | |✓ | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr257 Contactless Communication API] | ||
+ | |JSR-257 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/jsr280_1.0_spec XML API] | ||
+ | |JSR-280 | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/midp-2.0 MIDP 2.0] | ||
+ | | | ||
+ | |✓ | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/midp-3_0-fr-javadoc MIDP 3.0] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Maps_API Here Maps API] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/ezplus_2.5 KDDI ezPlus API 2.5] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/ezplus_3 KDDI ezPlus API 3] | ||
+ | | | ||
+ | |✓ | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/LG_MMPP_API LG MMPP API] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Mascot_Capsule_API Mascot Capsule API] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Motorola3D_API Motorola 3D API] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Motorola_FunLights_API_1_0 Motorola FunLights API 1.0] | ||
+ | | | ||
+ | |✓ | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Motorola_Gaming_API Motorola Gaming API] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Motorola_iDEN_API Motorola iDEN API] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/VibeLight Motorola VibeLight API] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Nokia_IAPInfo Nokia IAPInfo API] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/nokiainapp Nokia In-App Payment API] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Nokia_SMS_API_0_9 Nokia SMS API 0.9] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Nokia_UI_API_1_1 Nokia UI API 1.1] | ||
+ | | | ||
+ | |✓ | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/nokiaapi2 Nokia UI API 2.0] | ||
+ | | | ||
+ | |✓ | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Capuchin Project Capuchin API] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Samsung_API_1_0 Samsung API 1.0] | ||
+ | | | ||
+ | |✓ | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Siemens_API Siemens API] | ||
+ | | | ||
+ | |✓ | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Vodafone_API_1_0 Vodafone API 1.0] | ||
+ | | | ||
+ | |✓ | ||
+ | |- | ||
+ | |[https://nikita36078.github.io/J2ME_Docs/docs/Vodafone_API_2_0 Vodafone API 2.0] | ||
+ | | | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | ==Known issue with workrounds == | ||
→ <b><i>[[JL-Mod#Mascot Capsule 3D compatibility list|Mascot Capsule 3D V3]]</b></i> games doesn't works. | → <b><i>[[JL-Mod#Mascot Capsule 3D compatibility list|Mascot Capsule 3D V3]]</b></i> games doesn't works. | ||
★ Mascot Capsule 3D V3 is only few way to emulated : | ★ Mascot Capsule 3D V3 is only few way to emulated : | ||
− | <b>1.</b> [https://archive.org/details/semc_java_me_cldc_sdk.2-5-0-6 Sony Ericsson SDK] for Windows, it doesn't work on X64. | + | <b>1.</b> [https://archive.org/details/semc_java_me_cldc_sdk.2-5-0-6 Sony Ericsson SDK/JDK] for Windows, it doesn't work on X64. |
<b>2.</b> [[JL-Mod]] - Mascot Capsule 3D V3 partially implemented on JL-Mod but you can play almost every game, few games doesn't work properly or slow speed. | <b>2.</b> [[JL-Mod]] - Mascot Capsule 3D V3 partially implemented on JL-Mod but you can play almost every game, few games doesn't work properly or slow speed. | ||
− | <b>3.</b> [[KEmulator]] for windows, | + | <b>3.</b> [[KEmulator]] for windows, regular version 0.9.3 doesn't supported but 1.0.3 modded version + Mascot Capsule 3D support [https://drive.google.com/file/d/1T-xZO_iY46zx3JN1hYxAiIHY5lhvAhG0/view here] |
; → <i>Tips</i> | ; → <i>Tips</i> | ||
Line 330: | Line 515: | ||
* Image flickering issues can be fixed by enabling the<code> Immediate processing mode</code> option. | * Image flickering issues can be fixed by enabling the<code> Immediate processing mode</code> option. | ||
+ | |||
+ | ; → <i>Future request / unimplemented</i> | ||
==How to use== | ==How to use== |
Revision as of 10:43, 15 December 2021
Developer(s) | Nikita Shakarun (nikita36078) |
---|---|
Latest version | 1.7.9 |
Active | Yes |
Platform(s) | Android |
Emulates | J2ME ezplusアプリ |
Support ($) | PayPal |
Programmed in | Java, C |
License | Apache 2.0 |
Source code | GitHub |
J2ME Loader is a free and open-source Java 2 Micro Edition and ezplusアプリ emulator [N 1] for Android It's written in Java and C. This project is a fork of J2meLoader.
Overview
Released in 2017, the emulator is currently capable of playing around lot of games. This is currently the highest compatibility J2ME / ezplusアプリ emulator available. 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, but fails with Sony Ericsson 3D engine (Mascot Capsule 3D V3), due to the fact that the Mascot Capsule 3D V3 is almost difficult to port. This is partially implemented with JL-Mod emulator.
★ System requirements : Android 4.0 +
Features / Settings
- Fast emulation
- High compatibility
- KDDI ezplusアプリ
.kjx
games are support. Required 128x160 resulation (ezplus has small size games) and font option recommend: (9 - 13 - 15) - Bluetooth API support
- Touchscreen input support (Play touch games)
- Supports external virtual keyboards and QWERTY input (PC keyboard / GameKeyboard+)
- 3D support
- 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 (Graphics mode: OpenGL ES / windows / surface) support (but games won't run too fast)
- Screen gravity support (Up / Down / Left / Right)
- Screen orientation (Default / Auto / Portrait / Landscape)
- Accelerometer support
- Scaling support
- Immediate processing mode
- → Add support of external shaders filters
Only shaders for PPSSPP (.vsh format) are supported to use, you need to put them in the J2ME-Loader/shaders
folder in the working folder of the emulator, further in the game settings, select the graphics output mode: HW acceleration (OpenGL ES)
and select the shader of interest A small collection of compatible shaders can be taken in this repository: shaders
- → Start Menu
- → Font Option (small — midium — large)[N 2]
Here you can set the sizes of small, medium and large fonts that will be used by the MIDlet. 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 240 x 320 pixels.
The Presets button allows you to quickly set the font sizes that are most suitable for a given virtual screen resolution:
Resulation | 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 MIDlet. Many MIDlets are optimized for a specific screen resolution (usually 240 x 320) 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 960 x 540)
Resulation | 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 MIDlets 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 MIDlet 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
Resulation | Devices |
480x800 | Samsung GT-S8000 Samsung Galaxy S II |
480x360 | BlackBerry 9360 / 9700 / 9020 / 9780 |
360x640 / 640x360 | Nokia 5800 Xpress Music / 5530 Xpress Music Nokia 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 |
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 / W595a / Z750i / W595 / W910i, Nokia 6280 / 6300 / 5300 / 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 / U600 / GT-C3312R / GT-C3310 LG KS360 Motorola RAZR V8 / ROKR Z6 / E2 |
176x220 | LG U8360 / GU230 / GU280 / GB230 / GB280 / A133 / GM205 Motorola RAZR V3 / L7 / KRZR K1 Sony Ericsson W810i Samsung SGH-L700 |
176x208 | Nokia N70 / 7610 |
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 |
- → FPS
FPS |
- → Force full-screen
Normal | Force Fullscreen |
- → Button Shape
- Rounded Rectangle
L1 | L2 | L3 | L4 |
- Oval
L1 | L2 | L3 | L4 |
- Rectangle
L1 | L2 | L3 | L4 |
- → Keyboard Type
- Rounded Rectangle
L1 | L2 |
- Oval
L1 | L2 |
- Rectangle
L1 | L2 |
- → Scale Type
As is | Fit to window | Fill window (ignore aspect ratio) |
APIs
Known issue with workrounds
→ Mascot Capsule 3D V3 games doesn't works.
★ Mascot Capsule 3D V3 is only few way to emulated :
1. Sony Ericsson SDK/JDK for Windows, it doesn't work on X64.
2. JL-Mod - Mascot Capsule 3D V3 partially implemented on JL-Mod but you can play almost every game, few games doesn't work properly or slow speed.
3. KEmulator for windows, regular version 0.9.3 doesn't supported but 1.0.3 modded version + Mascot Capsule 3D support here
- → Tips
- 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.
- → Future request / unimplemented
How to use
- → Installation (J2ME / ezplusアプリ)
Automatic Builds | |
GitHubF-Droid | |
Play Store |
Download a latest version of J2ME Loader on your Android device.
Next,
Click (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)
- → Java ME (J2ME)
Sites | Rating |
Dedomil.in | ★★★★★ |
Phoneky.com | ★★★★★ |
RuGame Archive | ★★★★ |
Seclub | ★★★ |
Dertz.in | ★★★ |
oldhandhelds.com | ★★★ |
Spaces.im | ★★★ |
Mobile24.co | ★★★ |
Siemensx70.narod.ru (For Siemens only) | ★★★ |
- Also recommend Archive.org full set collections here
- → 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.
Package |
---|
283 .kjx games |
* A Collection of Rare / Lost Games
Key binding / mapping
Keys : Default
Key | Action |
D-PAD Up | ↑
|
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
|
* | *
|
# | #
|
Screenshots
Compatibility
J2ME Loader is currently high compatible and capable of playing thousands of J2ME games (Runs almost every Nokia games, especially GameLoft games) with ezplusアプリ games are support, more than 96.8% of the J2ME library with supports most 2D games and also 3D with some limitations (Mascot Capsule 3D V3 games don't work).
List of The Tested Java Games (Touchscreen)
List of The Tested Java Games (Non Touchscreen)
List of The Java Games with Bugs
References
- ↑ It's not exactly an emulator. It converts MIDlets to Android API and makes J2ME applications to run almost natively in Dalvik or Android Runtime
- ↑ FAQ
See also
External links
- Official Discord server - If you have any questions about future request or J2ME games related then ask on discord server. It a great place to discuss for J2ME stuffs.
- 4pda.ru Discussion
- Xda-dev Discussion
- Crowdin - You can help Translation J2ME-Loader .xml file in your native language by using crowdin.