Manager / device:Nokia N95 ROM version v11.0.026Esmertec Jeodek 20070115.1.1 (the one coming with the HTC Vox / s710 pre-installed) Esmertec Jbed 20070622.2.1 (Schap) / 20070802.2.1 (Cloudyfa)IBM J9 6.1.1TAO Intent 11.1.7.1036Aplix JBlend v3.2.8 20061016c (and JblendFullScreen (JBFS))
Price / availabilityOEM; Symbian S60 v3 FP1; NOT for Windows Mobile!OEM; "hacked" dFine1107 version can be separately downloaded HERE (mirrored HERE). Note that there are some other (for example, jasjamming) versions at XDA-Dev HERE and HERE. These are NOT recommended if you plan to keep a lot of MIDlets on your handheld because they can't be installed on a storage card and keep their deployed MIDlets in the main storage, unlike the dFine1107 version. Note that thereís another, M3G-capable, a bit older version out there; youíll want to prefer it to run M3G-based games.OEM; "hacked" version can be separately downloaded (mirror HERE). Schapís version is timebombed (youíll need to set back the clock to pre-September, 2007 dates before starting it; note that you can set back the clock immediately after starting it to the current date so that, for example, Opera Mini 4, which doesn't start on devices set back to an old clock, also starts) but, in some cases (when the cookie storage problems become annoying with Jbed with the newer version), youíll want to prefer it to Cloudyfaís, non-timebombed version.

Availability-wise, Handango also has some Jbed distros (THIS being the most related), but theyíre all outdated and itís still not known whether Esmertec plans to update them, or has entirely gone OEM-only.

$25 at Handango (QVGA, VGA) (used to be $5.99); no trial at Handango, only at IBM. The latter, unfortunately, requires registration, on top of which youíll need a review process if you live outside of the States because of the export laws Ė all in all, getting the trial is a real pain in the back. (I havenít been contacted back at all Ė IBM might have messed this up ROYALLY, their old approach (instant trial download at both Handango and their homepage) was far better).

As IBM J9, as opposed to all the other KVM's, is available for purchase (but, again, it seems non-Americans can't download a trial), I don't provide download links to unofficial distributions.

OEM; "hacked" version can be separately downloaded. Note that, it seems, the latest (1036) version can only be installed on WM6 PPC (PE?)'s, not on even (official) WM5 AKU 3.3 ones like the HTC Wizard with the AKU3.3 T-Mo update. (The same TAO installs OK on a Wizard with mfrazzzís XDA Mobile 6 Release 3 - that is, a WM6 ROM.) Therefore, if you have a WM5 device, you MUST get Risidoro's 1034 instead. The two CAB files are also mirrored HERE.

See the WM2003 / Smartphone compatibility section for non-WM5 & non-PPC downloads.

OEM; "hacked" (mirror HERE). JBFS (mirror HERE), as opposed to the recommended Jblend, is pretty old and VERY restricted (no Network access); its only advantage is the support for real full screen which may prove to be useful with some, strictly QVGA games. Unfortunately, the developer doesn't want to release it as a purchasable, non-OEM product.
Platform compatibility: non-phone PPCn/a (Symbian only)- by default; if you copy "Phone.dll" from THIS (also mirrored HERE) to the home directory of Jeodek, it'll run. WM5+See with Jeodek (here, the home directory being \Windows, unless you relocate the KVM by hand, which is HIGHLY recommended); now, however, you'll need to transfer Sms.dll too.WM2003+- by default; the sms / phone.dll hack (see Esmertec) works just great. Historically, there has also been another (but, now, not recommended any more) hack: with the elate.dll hack applicable to all 11-series versions. It's already in the 1023 version; with later versions (for example, 1034 or, if you can install it, 1036) you must get the elate.dll hack and overwrite the original, installed elate.dll with the one in the \elate_tao_11171023\ elate_NO_SMS_by_ZuRiUs\ directory in the ZIP file)- by default; however, with the hacked phone and SMS DLL's (see the Esmertec columns), it works just great
PPC PE?n/a (Symbian only)WM5+WM5+ (tested on both the Universal and the Wizard). Note that it exits at once after trying to launch any of the deployed MIDlets with some locales like Slovak (but not with English; I've also tested this with Estonian and Finnish; both worked). That is, if it's unable to execute MIDlets, just play with the system locale - for example, set it to English (any English sub-locale will do). This also applies to the SP version. WM2003+ (even the latest, 6.1.1 is compatible with these "old" OS'es, despite what the official homepage states)+; there are some older versions compatible with WM2003(SE) too HERE (mirror HERE)WM5+
SP?n/a (Symbian only)WM5+. The M3G-enabled version, in addition to the taskbar at the top, puts a useless command bar at the bottom on the SP platform (unlike on PPC). This severely reduces the available screen estate. HERE is a possible solution; note that it didnít work with my Smartphones.WM5+ (tested on Vox); on the Vox, the bottom-most 20-30 pixels are hidden with some (but not all!) midlets; this also means hiding active content (for example, menus) as can be seen in THIS (Portrait) and THIS (LS). The case is the same on the Moto Q with the Intent TAO v10.1.7.561 - see THIS. Fortunately, several games and Opera Mini aren't affected by this bug.SP2003+ (separate SP version). You will need to get THIS file if you want to install TAO Intent (v10.1.7.561) on your WM5+ Smartphone. Should you need a WM2003 one, get THIS (v10.1.0.14) instead.Only the older, less capable 10.x series is compatible with the SP. HERE is the SP2003 and HERE is the WM5 version (mirrored HERE)WM5+
Generic compliance with standards: CLDC
ME Configuration CLDC-1.1
ME Profiles MIDP-2.0
CLDC Version 1.1
Platform NokiaN95/12.0.013; NokiaN95/10.0.005; NokiaN95/11.0.026; NokiaN95/12.0.014; NokiaN95/1.43.049; NokiaN95/10.0.018; NokiaN95/10.0.004; NokiaN95/10.0.015; NokiaN95-3/10.2.006; NokiaN95/10.0.010; NokiaN95/12.0.010; NokiaN95/10.2.001; NokiaN95/10.0.002; NokiaN95/10.0.014; NokiaN95/SPP 31.31 20 BL; NokiaN95/11.0.025
ME Encoding ISO-8859-1
1.11.11.11.11.1
MIDP
MIDP Version 2.0
MSA version No
ME Comports USB0,USB1,COM0,IR0, BT0,BT1,..,BT63; USB0,COM0,IR0, BT0,BT1,Ö,BT63; USB0, COM0, IR0, BT0,BT1,Ö,BT63; COM0,IR0,USB0, BT0,BT1,Ö,BT63
ME Locale pl-PL; et-EE; sr-YU; en-US; zh-HK; en; cs-CZ; ro-RO; sv; de; lv-LV; es-ES; it; lt-LT; zh-CN; pt-PT; he-IL; no-NO; ru-RU; nl-NL; fi-FI; sl-SI; fr
2.02.02.02.02.0
JVM Multimedia (JSR 135)
MMAPI Version 1.1
MMAPI Mixing true
MMAPI Audio-capture true
MMAPI Video-capture true; false
MMAPI Recording true
MMAPI Audio Encodings None; encoding= audio/amr encoding= audio/basic encoding= audio/x-au encoding= audio/au encoding= audio/x-basic encoding= audio/wav encoding= audio/x-wav encoding= pcm encoding= ulaw encoding= gsm
MMAPI Video Encodings encoding= video/3gpp2 encoding= video/mp4 encoding= video/3gpp; None
MMAPI Snapshot Encodings encoding= png encoding= jpeg encoding= image/png encoding= image/jpeg encoding= image/jpg encoding= image/gif encoding= image/bmp
MMAPI Streamable Contents None
AMMS Version 1.0
AMMS Music true
AMMS Audio 3D true
AMMS Image Encoding false
AMMS Image Postprocessing false
AMMS Camera false
AMMS Tuner false
AMMS Audio 3D Simultaneous Locations 4
AMMS Audio Samplerates 8000 16000
MMAPI Version 1.0
MMAPI Mixing true
MMAPI Audio-capture false
MMAPI Video-capture false
MMAPI Recording false
MMAPI Audio Encodings None
MMAPI Video Encodings None
MMAPI Snapshot Encodings None
MMAPI Streamable Contents None
AMMS Version No
MMAPI Version 1.1
MMAPI Mixing true
MMAPI Audio-capture false
MMAPI Video-capture false
MMAPI Recording false
MMAPI Audio Encodings None
MMAPI Video Encodings None
MMAPI Snapshot Encodings None
MMAPI Streamable Contents None
AMMS Version No
MMAPI Version No
AMMS Version No
MMAPI Version 1.1
MMAPI Mixing true
MMAPI Audio-capture true
MMAPI Video-capture false
MMAPI Recording true
MMAPI Audio Encodings pcm&rate=22050 &bits=16 &channels=1 pcm&rate=11025 &bits=16 &channels=1 pcm&rate=8000 &bits=16 &channels=1 pcm&rate=22050 &bits=16 &channels=2 pcm&rate=11025 &bits=16 &channels=2 pcm&rate=8000 &bits=16 &channels=2
MMAPI Video Encodings None
MMAPI Snapshot Encodings png jpeg
MMAPI Streamable Contents None
AMMS Version No
MMAPI Version 1.1
MMAPI Mixing true
MMAPI Audio-capture true
MMAPI Video-capture false
MMAPI Recording true
MMAPI Audio Encodings encoding= audio/amr
MMAPI Video Encodings None
MMAPI Snapshot Encodings None
MMAPI Streamable Contents None
AMMS Version No
JVM Memory (approximate numbers; it's worth checking out the Tao Intent 11.x series reports far (two orders of magnitude) more free memory than the others424960 - 883072 (adaptive or dynamic; independent of the free RAM size). Note that, independent of this, it seems it's able to allocate far more (6...8 Mbytes) of RAM memory - this is why most (except for some tests in the 3D low-level test package) of the JBenchmarks, packed into one huge JAR file per category (for example, the Composite tests totalling 1.6 Mbytes), ran1857212419424015728641342177284M by default; can be changed at HKEY_CURRENT_USER\ Software\JBlend\ JavaHeapSize. Sometimes, itís useful to increase this; for example, with the 2D Java Benchmarks, while the original 4M doesnít suffice for all tests; 10M does the trick. With all "real" MIDlets out there, however, the default 4M is more than sufficient.
JVM Display
Color Display true
Double Buffered Screen true
Number of Colors 16777216
Alpha Levels 256
Form Size 308x192; 231x234; 228x229
Canvas Size 320x198; 240x235
Canvas Full Size 320x240; 240x320
GameCanvas Size 320x198; 240x235
GameCanvas Full Size 320x240; 240x320
Color Display true
Double Buffered Screen true
Number of Colors 65536
Alpha Levels 256
Form Size 320x187
Canvas Size 320x187
Canvas Full Size 320x213
GameCanvas Size 320x213
GameCanvas Full Size 320x213
Color Display true
Double Buffered Screen true
Number of Colors 65536
Alpha Levels 256
Form Size 320x240
Canvas Size 320x188
Canvas Full Size 320x240
GameCanvas Size 320x240
GameCanvas Full Size 320x240
Color Display true
Double Buffered Screen true
Number of Colors 65536
Alpha Levels 2
Form Size 240x268
Canvas Size 240x268
Canvas Full Size 240x268
GameCanvas Size 320x320
GameCanvas Full Size 320x320
Color Display true
Double Buffered Screen true
Number of Colors 65536
Alpha Levels 256
Form Size 240x268
Canvas Size 240x268
Canvas Full Size 240x268
GameCanvas Size 240x268
GameCanvas Full Size 240x268
Color Display true
Double Buffered Screen true
Number of Colors 32768
Alpha Levels 2
Form Size 480x515
Canvas Size 480x536
Canvas Full Size 480x588
GameCanvas Size 480x588
GameCanvas Full Size 480x588
JVM WMA (Wireless Messaging API; JSR 120)2.0-1.1-1.11.1
JVM M3G (JSR-184 Mobile 3D Graphics API)
M3G Version 1.1
M3G Antialiasing true
M3G True Color false
M3G Dithering false
M3G Mipmapping true
M3G Perspective Correction true
M3G Local Camera Lighting false
M3G Max. Lights 8
M3G Max. Viewport Dimension 1024
M3G Max. Viewport Width 1024
M3G Max. Viewport Height 1024
M3G Max. Texture Dimension 1024
M3G Max. Spritecrop Dimension 1024
M3G Max. Transforms per Vertex 4
M3G Max. Texture Units 2
- with the newer Jeodek builds, + with an older, 2006, otherwise, for non-gamers, not really recommended version; see THIS for a complete overview & tutorial. --1.0;
M3G Version 1.0
M3G Antialiasing false
M3G True Color false
M3G Dithering true
M3G Mipmapping false
M3G Perspective Correction true
M3G Local Camera Lighting false
M3G Max. Lights 8
M3G Max. Viewport Dimension 2048
M3G Max. Texture Dimension 512
M3G Max. Spritecrop Dimension 512
M3G Max. Transforms per Vertex 4
M3G Max. Texture Units 2
JBFS doesn't support it; JB does:
M3G Version 1.1
M3G Antialiasing false
M3G True Color false
M3G Dithering false
M3G Mipmapping false
M3G Perspective Correction true
M3G Local Camera Lighting true
M3G Max. Lights 256
M3G Max. Viewport Dimension 1024
M3G Max. Viewport Width 0
M3G Max. Viewport Height 0
M3G Max. Texture Dimension 1024
M3G Max. Spritecrop Dimension 1024
M3G Max. Transforms per Vertex 2
M3G Max. Texture Units 2
JVM PIM (PIM database and the File System access, JSR 75) 1.0-1.0- by default; also see the File Connection group.1.01.0
JVM SATSA1.0-1.0---
JVM Bluetooth (JSR 82)Tested with 3D Constructo Combat between an N95 and a Nokia 6680; worked just great (unlike with the N95 Java vs. native WM version, where connection attempts failed).

Bluetooth Version 1.0
Obex Version N/A
Bluetooth Master Switch false
Bluetooth Connected Inquiry Scan false
Bluetooth Connected Page Scan false
Bluetooth Connected Inquiry false
Bluetooth Connected Page false
Bluetooth SD Attr. Retrievable Max. 65535
Bluetooth Connected Devices Max. 7
Bluetooth I2Cap Receive MTU Max. 672
Bluetooth SD Trans. Max. 1

--It used to have two third-party BT add-on libraries, but they no longer exist. See THIS for more info.--
JVM LocationME Location Version: 1.0; Location Version: 1.0-----
JVM Web Parser1.0-----
JVM Web RPC1.0-----
JVM JTWI (JSR 185)1.0-1.0-1.01.0
JVM SIP1.0.1-----
JVM SVG
ME SVG Version 1.0
M2G Version 1.1
SVG Base Profile tiny
SVG Version 1.1
-----
JVM I18N------
JVM Content Handler (CHAPI)No; 1.0-----
JVM Payment------
JVM Mobile TelephonyMobile Telephony Charging version: No; Mobile Telephony version: No-----
JVM Sensor------
JVM Contactless Communication------
JVM OpenGL ES Environment Variables------
JVM EGL Variables------
JVM CDC---
Java Installation Directory /SD Card/J9-MIDP
Java Class Path /My Documents /temp/ G11885887 60742V .jar
Operating System Name Windows CE
Operating System Architecture arm
Operating System Version 5.1 build 195
List of Paths to Search when Loading Libraries /SD Card/J9-MIDP/bin/;/
Default Temp File Path TEMP
--
JVM CDC - RMI------
JVM File Connection (part of JSR 75): Reported version
ME FileConnection API Version 1.0
Photos Directory file:///C:/Data/ Images/
Videos Directory file:///C:/Data/ Videos/
Graphics Directory file:///C:/Data/ Images/ Pictures/
Tones Directory file:///C:/Data/ Sounds/
Music Directory file:///C:/Data/ Sounds/
Recordings Directory file:///C:/Data/ Sounds/ Digital/
-1.0- by default; (1.0) file support must be manually added:
  • get THIS file (mirrored HERE)
  • copy fc.jar to /lib/ jclMidp20 /ext/
  • copy fileconn.dll to /bin/ (both directories under the home of J9)
  • 1.01.0
    File Connection test 1 with a specific MIDlet I've written (which writes out a byte to a file and, then, reads it back and prints it); source HERE, deployable JAR versions HERE and HERE; the first JAR has manifest / JAD-based permission requests to filter out non-capable KVM's right at install time; the second doesn't.n/t-: javax. microedition .io. Connection NotFound Exception; no file permission setting capabilities - pretty much understandable as Jeodek completely lacks file support-: SecurityException; no file access permissions can be set(both JAR versions). The selector.utf hacks donít help with file access either Ė while for example Net access is always allowed, thereís no security setting for file system access as can be seen in HERE+-: Asks for read permission only (doesnít touch the file); throws an IOException later (both JAR versions); doesnít display version at the start, unlike all other KVM's- with both JAR versions. With the one without the manifest-based requirements, runtime java.lang. SecurityException: javax. microedition. io.Connector. file.read was denied. With the JAR with explicitly defined permissions in the JAD file, refused to be deployed entirely.
    File Connection test 2 with the built-in download support of the unsigned Russian Opera Mini Mod 2.04 using the same File Connection framework+, worked flawlessly in all testsAs Jeodek has no File Connection support, by default, OM Mod stores the downloaded files in the standard Record Store; hence the RMS: prefix. This means encoded files under \Windows\AppDb. The store only adds headers at the beginning so, for example, ZIP files (which are processed from the end) can be easily decompressed when stored in the Record Store. This, however, doesnít necessarily apply to non-ZIP files. It has no direct file access; that is, trying to save the file in the file system (in exactly the same way as with the patched J9) results in a StringIndexOut OfBoundsException -: SecurityException (1 2). Note that the 4PDA folks also state it supports File Connection (see for example daemonpnz, 29.09.07 06:54:32) but they don't explicitly state it's working. Interestingly, with other, 2.05-based page saving and reading tests, it worked OK.+: 1 2 3 4 -: an Exception is thrown -: the same error as with the test with my test app
    Storage usage: Where can it be installed to?n/aAnywhere (with the recommended dFine1107 version; NOT with the XDA-Dev versions!)Main storage by default. However, it's pretty easy (and, if you plan to install a lot of MIDlets, highly recommended) to relocate it after installing to a storage card. To do this, with, for example, Resco Explorer (desktop tools like Total Commander with the WinCE FS plug-in won't work because of security issues) move every file dated 08/10/2007 from \Windows to any directory (I recommend \Program Files\Jbed) on the storage card. Here's a screenshot of selecting all the files (make sure you allow for seeing system files AND make Resco order by date so that you can easily transfer the files in one step!). After that, reconstruct the JAR / JAD associations by importing THIS Registry import file (modify it if you've put the files in another directory and not \Storage Card\Program Files\Jbed). There is also an older CAB file that is supposed to be installable to storage cards, together with the appdb directory; I haven't tested it. Anywhere AnywhereIn theory, anywhere. In practoice, however, even if you try to install it in the main memory, it'll always install itself into \Storage Card\Program Files\Jblend if you select the built-in storage as the installation target. That is, the path \Storage Card is hard-coded into Jblend. This will cause a lot of problems if your handheld has a single storage card without a card when you install the KVM - because of the name clash, the card will be renamed to Storage Card2 upon reinsertion, causing problems. That is, ONLY install Jblend with the storage card in! If yours is a dual-slot device (almost all Dell Axims, some iPAQ's etc.), then, as Stroage Card doesn't clash with any of the card names (CF / SD Card), it'll be installed to the main memory.

    With devices Jblend is coming with as an OEM KVM, its data files are in \Windows\Java.

    Where are deployed MIDlets kept?Both the storage card and built-in memoryWith the recommended dFine1107 version, an appdb subdirectory of the home of the MIDlet Manager. With other versions, main storage only (\Windows\appdb), can't be relocated. Note that thereís a related Registry value set by both the Jeodek and Jbed installer, HKEY_CLASSES_ROOT\ jarfile\Shell\ Save\Save Location\@. Its default value is "Personal" with Jeodek and "\Windows\appdb" with Jbed. Changing it, however, has no effect on the home directory.The same as with Esmertec Jeodek; compilation results in additional *.obj files in the same directory, making memory usage even worse. Again, if you manually relocate it onto a storage card, it's on the card that it'll keep its deployed MIDlets on!Main storage only, can't be relocated: \My Documents\temp contains the JAR files; if you delete them by hand, youíll no longer be able to run, not even delete them, unless you also clean up \My Documents\ recordStores, which contains additional (small-size) information on the deployed JAR filesWith preinstalled Taoís, \Application Data\Tao\ intent\app\ jam\midlets\; with post-installed ones (like the 1023/ 1036), under the home directory (that is, even on a storage card, which is VERY good news). That is, itíll be in [optional storage card; if not present, main storage]\Program Files\TAO\intent\app\jam\midlets\ . Note that midlets take up quite a bit of storage space because theyíre also stored in a less-compressed format too. Keep this in mind if youíre running out of built-in storage. Also note that, in the Registry, if you modify (or add if it doesnít exist) HKEY_LOCAL_MACHINE\ Software\Tao\ JMM\DataPath with the String value of for example "\Storage Card\ Application Data\ Tao\intent", you can redirect your MIDlet repository to your storage card. In this case, you also have to move the file rofs_target.zip in there (also see tobbbieís related comments HERE)InstalledMidlets subdir under the home (that is, it can be, therefore, on a storage card too if you install Jblend right there); it's possible it can be set in the Registry too (under HKEY_CURRENT_USER\ Software\JBlend, where there are several path-related settings. I haven't tested them though. Incidentally, there are for example font size and auto-connect settings in there - might be worth looking at them)
    Text input: cut/paste? (SIP Ctrl-C/V; on Smartphone, tools like VITOís excellent CopyPaste)n/a++ +- (you canít even select text)+
    Known text input-related bugs? Maximal editable pre-populated text area size - see THIS test pageOpera Mini 4 b2: 4k max.; at 8k, everything is shown but no longer editable; Opera Mini Mod 2.05: 1k max; at 2k, the rest is chopped off and not shown; no bugs known. Opera Mini 4 b2: can only have about 2.5 kbytes of text in a text area; should you exceed it, youíll have problems: it won't be saved. With Opera Mini Mod 2.05, the situation is even worse: you can't enter text into 1k text areas either.See JeodekOM4b2: 4k max; with 8k, nothing can be added; OM Mod 2.05: 1k max, longer texts are chopped & nothing can be addedOM4b2: Only able to edit text areas if they don't contain line breaks. If they do, it won't be able to edit it. The 10.1 on Smartphones, on the other hand, worked just great (screenshot 1 2)Should the text area already contain some text, it wonít have new lines in it (meaning, for example, you canít just go to the end of it easily, without having to scroll, awkwardly, with the D-pad there) and only the first, visible part of the text will be, finally, submitted back to the server. Very bad!
    Display: Cleartype / font smoothing?-+ when using Small characters, - otherwise (see particularly the QVGA screenshots). This isnít REAL ClearType as it uses the nearby pixel and strictly of the same, but brighter color (gray with black, for example). Note that the post HERE states the opposite, that is, the Esmertec KVMís donít have font smoothing.See Jeodek- ; strangely, the left screenshot HERE shows there IS ClearType Ė at least on the Smartphone platform . In my tests, there was no smoothing, not even when small chars are used.+ as with Esmertec (and unlike IBM J9 / Jblend), when small charsize is used; - otherwise-, not even with the smallest charset
    Opera Mini 4 beta 2 fonts - VGA?n/a1 2 3 4 1 2 3 4 1 2 3 4 Ė as can be seen, even if you use the VGA version, the screen will be treated as QVGA. Hence the huge fonts and the complete lack of bold chars Ė even using the smallest font size. While the text isnít pixel doubled, IBM J9 considers VGA devices as a low-res ones; therefore, images are also low-res (pixel doubled) as can for example be seen HERE. Forcing J9MIDP20.EXE (or, for that matter, ANY .EXE's) doesn't help, as opposed to earlier, 5.7-series J9 versions. The only way to get high-res support is switching to Real VGA mode and using the QVGA version of J9 (NOT the VGA version - the latter won't execute your deployed MIDlets at all!). An example screenshot of this is HERE (using Large characters). Note that, as the QVGA and VGA versions can co-exist on the same machine and will use the same deployed MIDlets, this seems to be a usable solution to get hi-res support when you really need it (and, at the same time, can live without hardware softkey support - you'll need to use the on-screen menus to issue commands, unlike with the VGA version. At least this was the case on my VGA Universal.).1 2 3 4. Note that there is a hack (originally published HERE) that greatly increases font sizes (unless you use the "Small" size) and also makes it possible to still be able to see bold characters even when using pretty large fonts (as opposed to the non-hacked case, where "Extra Large" characters lack bold). Just import THIS Registry file. The results of the hack: OM4 Medium and Large font size. (Small isn't affected by the hack.)1 2 3 4
    Opera Mini 4 beta 2 fonts - QVGA? See THIS: "The only disadvantage with Esmertec jbed is that the "medium font size" setting on Opera mini, look quite small while the "large font size" make the fonts VERY large." Tested with THIS test pageThe font sizes are pretty OK; in small size, thereís font smoothing, as with some WM MIDlet managers. Note that, with OpMini Mod 2.05, small fonts arenít used Ė theyíre equally large as medium ones1 2 3 4 1 2 3 4 Ė I didnít find much difference between the Medium and Large setting here either.1 2 3 4 1 2 3 4 (taken on the HTC Vox Smartphone because with the ROM version I use on my Wizard I wasnít able to run any OM4b2 versions under Jblend): 1 2 3 4
    Display-related bugs?---On VGA, itís pixel doubling - must be run in true (native) VGA mode to get rid of this bug-Text overlaps with different styles in OM4b2; SIP icon always visible on Pocket PCís in the (missing) bottom command / menu bar; major problems with many MIDlets in Landscape mode (as opposed to all the other KVMís)
    Keyboard, SIP, softkeys: SIP can be brought up even if thereís no text input field/area to focus to (see Opera Mini hotkey control with Pocket PCís without dialpads / keyboards like the Trinity / HTC P3600)n/a--. However, if in Settings / Buttons, you assign a hardware button to < Input Panel >, Jbed will work GREAT: keep the just-associated hotkey depressed, click SHIFT and, then, 8 on the SIP. Note that this in no way works on Jeode.+ (bottom command bar, along with the SIP icon, always visible)+ (bottom command bar, along with the SIP icon, always visible)+ (while the bottom command bar is hidden, the SIP icon is always visible. In no way the prettiest solution, but, in cases, it might turn out to be preferable over the no-SIP-accessible-at-all Jbed)
    Softkey support?+ (very good!)+ (very good!)See with JeodekHardware keys, generally, donít work (an exception is Opera Mini Mod 2.04); on-screen taps do with several apps. Also see THISSo-so (hardware keys do work with OM4b2 and some other app, but the vast majority of games donít; this also stands for the inability to use the touchscreen for pressing them, which is the case with most titles, except for for example Opera Mini Mod 2.04, where they are registered). Also see THIS, THIS and THIS+ (very good!)
    Can you use an external tool (MortScript's SendKeys, VJKeyPress or PQzII) to "inject" keypresses into the emulator?n/a++MortScript, which is needed for entering *, on the Universal, very rarely worked Ė about 1 of 20-30 times, tried both single and dual. "2", on the other hand, always worked (with VJKeyPress). On the hx4700, it always worked, but ALWAYS requires double presses, with some 1 sec waiting in between. Unfortunately, using the sleep() function in MortScript (as in SendKeys("*"); Sleep(4000); SendKeys("*")) didnít help. On the Dell Axim x51v, it has never worked with MortScript (tested with both VITO BM and the default) and VJ in no way worked; only with PQzII (but the latter is unable to send *).+PQzII works great with alphanumeric input (but not with non-alphanumeric input like *'s as it doesn't support them). As far as external apps like MortScript or VJKeyPress are concerned (invoked and run each time), Jblend pauses every time and the focus switches to Today. As entering * on the SIP doesn't work either (unlike with, say, Jbed), this is a major PIA.
    Selective (app-specific) button assignment for input with VITO ButtonMappern/a++-: (tested on the hx4700, which (see above) proved to be the best platform for input): no app-specific button assignments for EMULATOR.exe+-: Pauses at once and the focus is moved to Today (see above)
    MIDlet installation, separation, direct invocation, uninstall: menu-based deployment support for local files (all MMís are able to deploy local MIDlet JARís via file association!)n/a (no MIDlet manager interface at all, unlike with all the WM MIDlet managers)+; note that, it only lists 220...250 MIDlets at once (another screenshot); no alphabetic sorting eitherHas a tendency of NOT finding some subdirectories (not to mention it doesn't use alphabetical sorting) - much fewer than Jeodek+ (but thereís no browsing Ė you must directly enter the full filename + path, along with file:// - very awkward! Screenshot)+; note that, on storage cards, it only finds MIDlets in the root and My Documents\My Midlet in the main storage Ė not very nice- (probably via entering a file:// URL in the browser?)
    JAD file also needed for installing JAR files in the local file system? (As can be seen, only the disqualified CrEme and the two MIDlet Managers coming with BenQ P50 and the Gigabyte GSmarts (iaJET, III iJet) require it)--See Esmertec Jeodek ---
    Over-The-Air (OTA) (non local JAR file-based) JAD-based installation (for example, from http://mini.opera.com/beta/ )+++++-: exits at starting to download
    Possible to use folders for better midlet separation?+ (Options / Move into folder; into system-level folders!)+; you can create new folders upon deploying a new midlet (1 2 3; accessing them 1 2)See Esmertec Jeodek -+ (in version 11.1; still not in 10.1). (screenshots: 1 2 3 4)-
    Direct, system-level links (shortcuts) to midlets Ė a better alternative to third-party macroing / screen tap / button press simulator solutions like Mortscript.++: \Windows\jeodek.exe" -run s1_. Excerpt from HERE: "The magic portion is the number after the the letter "s" in the shortcut target. This is the list position of the Java MIDlet in the Jeodek/Jbed application list. If you install Jeodek/Jbed as a fresh install (non Mogul users), and then directly install Opera Mini, just use the number "0" to refer to Opera Mini ("\windows\jbed.exe -run s0_"). If you install another MIDlet (after Opera Mini), its index will become 1, then the next installed MIDlet will have an index of 2, and so on."See Esmertec Jeodek ; the only difference is that you must invoke \Windows\jbed.exe and not jeodek.exe. (Of course, if you install / relocate them to a storage card, change \Windows to the real path.)+; very easy to create; "\<Installdir>\emulator.exe" "-Xjam:run=1", where 1 is the first app in the list etc.; also see for example THIS+; a bit more complicated to create. See THIS, THIS, THIS and THIS. An example with OM4: 199#"\Storage Card\Program Files\TAO\Jmm.exe" -r"Opera Mini 4 beta","Opera Software ASA","Opera Mini 4 beta". For your convenience, I've created two direct link files for you: HERE is the non-beta Opera Mini pre-4 and HERE the Opera Mini 4 beta 2.?
    Registry import files to quickly reassociate JAR / JAD files (so that you can go on deploying them by simply clicking them in the file system / on the Web) with the given KVM, should be there another, more recently installed KVM on the same handheld, un-associating these filesn/aHERE for internal-storage installations; for storage card-based installations, HEREHEREHERE (for Storage Card-based installations)HEREHERE
    Uninstallation: Uninstall All at once? (Useful when testing a lot of MIDlets; note that without the explicit support for this, you can, in most cases, simply get rid of all the files in the deployment directory of the MIDlet)n/a (no MIDlet manager interface at all)+ (Menu / Uninstall All)See with Jeodek- (albeit deleting everything from the related directories works)-+: Menu / Application / Delete all
    Security: Allow permanent Net access without prompting ("Blanket" security model, as opposed to "Session" / "Oneshot")? - (absolutely no config capabilities)+, "Blanket" model easily and automatically hackable; see THIS. An except: "1.) Copy the file \windows\appdb\ selector.utf to your PC (make sure backup this file first in case something goes wrong!)
    2.) Remove read-only attribute
    3.) Open the file with a hex editor, and find the line "domain=untrusted, \". Replace the text untrusted with the text tckmax. Add space characters between the x (in tckmax) and the comma (otherwise connection warnings or a nullpointerexception error may occur). The above line may appear multiple times in the "selector.utf" file, each corresponds to a different Java MIDlet you have installed in JBed. If hex editing is too blackhat for you, g-funkster has created a desktop application that can do this for you automatically! You can find it HERE". Also cross-posted to HERE. Note that, in addition to this, an app can be not only untrusted, but also midp1 (see daemonpnz 29.09.07 08:14:43 at 4PDA) - hack these accordingly.
    See Esmertec Jeodek + by directly editing editing the security.policy file in the lib subdirectory: change session(session): NetAccess to allow: NetAccess (if you only need to allow OM4 to communicate; should you need to run other apps with, for example, local access, also change everythig to Ďallowí); also see THIS See dFine1107's excellent tutorial and explanation on 24.07.07 05:57:06 and, then, 12:15:26 at 4PDA; note that I haven't tested this hackNote that the current version only supports the One Shot model, which makes Web browsing quite a PIA (and, on top of that, Jblend doesnít seem to support (self-)signed JARís). JBFS supported even blanket - too bad its Network access doesnít work at all
    Midlet-level security prompt fine-tuning?-Menu / Actions / Security; only local / remote connections and auto starting may be configured (1 2). Doesn't allow for question-less remote connections; local ones can be allowed.

    Note that the JVM also allows for listing & quickly en/disabling already-imported certificates (1 2)

    See Esmertec Jeodek The complete list is HERE; file access can be configured to be always allowed; Internet connections, unfortunately, can not be Ė HERE, a HTTP connection is shown; the case is the same with all other Internet connections. However, by manually editing /lib/security.policy, you can grant any rights to anything.Both the newest, 11.x series (where it has been moved out of the main menu to a context menu).

    Note that the currently available, downloadable .1034 version is buggy: you need to answer the question every time you access a new page with .1034. As can clearly be seen in the security fine tuner dialog, only "Oneshot" is available Ė not only with Net access, but also with other settings Ė even with Local connectivity. Opposed to this are all the other (former) 11.x versions, where "Session" and, with local access, "Blanket" are also available. With .1029 and the latest (and most recommended) .1036, fortunately, this is session-based Ė you only need to answer it once each time you run an Internet client.

    Screenshots of the older, 10.x series (for example, version 10.1.7.693 coming with many cooked ROMís): Menu / Manage / Security. The full list is HERE. Unfortunately, Net Access can only be Session, One Shot or None; itís only Local Connectivity that has a "Blanket" setting.

    ?
    Compatibility with the MXit LifeStyle-signed JARís like OM4b2 HERE (and, in the thread HERE and HERE, some other MIDlets; for example, TeaShark and other OM versions). Note that with some (cooked) ROMs like some AKU3.5 Wizard ROMs; then, not even signed MIDlets will work under Jblend. With other MIDlet managers, this JAR file is regarded as signed. (Incidentally, under the same ROM version, TAO Intent 1036 wonít be installed, also because of security problems. 1034, on the other hand, can be installed).n/t+; note that, however, you MUST manually set Net connection to "Always" in (with the signed MIDlet highlighted) Menu / Actions / Security; otherwise, youíll get an exception +; See with Jeodek; Jbed screenshot of the needed setting HERE - -: canít even install it -
    Misc (sound, compatibility with some popular apps, proxy, etc): Full screen?+-+ ---; JBFS: + (ALWAYS, which is a problem in several cases)
    Sound? (see for example DoomRPG1)+; mono only in the menu of the game+Stereo, great quality Ė in general, the best of all++Jblend has very limited sound and no music support; JBFS has better music support, but itís still far inferior to that of Jbed
    Executing more than one MIDlets at the same time; switching between them (also see the comments HERE; at 4PDA (dFine1107, 21.06.07 21:18:01 and volta_john, 21.06.07 23:31:23))+ (the OS handles MIDlets as regular programs; therefore, you can start them to run concurrently and use the same system tools to switch to / kill)- (but, if you install Jbed or any other MIDlet manager, you'll be able to run your MIDlets under it - that is, one MIDlet under Jeodek, one under Jbed and any number under J9 or TAO in parallel)- (see the Jeodek comments; able to work concurrently with Jeodek)+; a bit more complicated to switch between concurrently running MIDlets as, in task managers, they don't have a name (listed as an empty string) - at least when started from Emulator.exe. Example screenshot HERE (acbTaskMan screenshot))+ (absolutely the best support: the TAO Intent main program has an inner "Running" tab, which lists the currently (in the background) running MIDlets, making it very simple to switch between them. THIS screenshot shows Opera Mini and Opera Mini Mod running at the same time, a single tap will activate the given MIDlet. In addition, you can stop all the running MIDlets with the ďStop AllĒ menu item only available in the Running pane. As can clearly be seen in HERE, the two MIDlets will remain in the same process (as opposed to J9); hence the only one jmm.exe instance.)-
    Running in the background (especially useful with networking like lengthy page downloads with Opera Mini or periodic mail checking with the Gmail MIDlet)+++++- (forces a pause on even non-games)
    Advanced, config file-based configuration (for example, forced connection dropping capabilities to, for example, reduce battery usage): (also see THIS and the comments HERE)-++---
    Proxy support (see THIS) Ė tested with my own HTTP tester (source HERE; should you need a small server printing out the IP address of the client, get THIS source.). Tested both the system-level setting and, wherever possible, command-line parameters and/or /lib/internal.config.n/t- (system-level proxy)+: The system-level proxy setting is used System-level setting: -

    Direct invocation: + ("\\emulator.exe" "-Xj9arg:-Dhttp.proxyHost=" "-sXj9arg:-Dhttp.proxyPort=" "-Xjam:run=1")

    As far as other parameters are concerned, "-Dcom.sun.midp. io.http.proxy" (as in "199#"\SD Card\ J9-MIDP\bin\ emulator.exe" "-Xj9arg:-Dcom.sun.midp. io.http.proxy= HOST:PORT" "-Xjam:run=2""); see THIS and THIS) didnít work in my tests.)

    Creating a /lib/ internal.config file (see THIS and THIS) with the contents

    http.proxyHost: HOST
    http.proxyPort: PORT
    com.sun.midp. io.http.proxy.host: HOST
    com.sun.midp. io.http.proxy.port: PORT

    didnít work either (tested with both the first and second pair of attributes)

    System-level setting: -, not even when Menu / Choose Network Type is explicitly set to the one with the proxy

    Other hacks: While THIS states itís possible to configure a proxy in the Registry (\HKEY_LOCAL_MACHINE\ SOFTWARE\ Tao\intent\conf\ protocol\http\ scheme[http]\ proxy_host= ""193.113.200.195" and proxy_host.port= "port"). No success.

    System-level: -

    I donít know of direct invocation capabilities and there doesnít seem to be other ways of passing parameters.

    Auto-initiate network connection? If it isnít supported, youíll need Vijay555's excellent VJVolubilis utility Ė more precisely, the "-gprson" command (and, if you want to programmatically stop the connection Ė without long-pressing the Red phone button -, use the "-gprsoff" command after the KVMís exit). If you have a MM with direct link capabilities (TAO, IBM J9), then, you can just create a link file with nScriptm or MortScript to run these two apps in turn; if it doesnít support invocation, then, just start the KVM itself. Also see THIS +-+-+-
    Full Gmail midlet (1.5.0 / 1.1.1 (download of the latter HERE)) compliance?+ / +1.5.0: - (exception thrown during install); 1.1.1: +Both +Both +1.5.0: - (fails to run it; tested it under 10.1.7.680 (factory Smartphone version), it didn't work either and even messed up TAO completely: all previously installed MIDlets got deleted); 1.1.1 :+ JB: 1.5.0: + (albeit almost useless because of the constant net access authorization requests - it seems this happens upon downloading each mail header!) / 1.1.1: n/t; JBFS: because of the lack of network access, - (while it starts, it crashes after pressing "Done" after entering the username); in another occasion, Iíve encountered an ?? Invalid JAR error message
    Full Opera Mini Mod 2.04 / 2.05 English (sorry, I don't give you the URL to protect the original authors, that is, Opera)+; also tested with 2.05++ +++; HW softkeys work; no file download
    Full Opera Mini 4 beta2 compliance? (Including screen dragging with the stylus on touchscreen-enabled devices)++See Esmertec Jeodek ++ +, albeit (almost?) always collects font information after restarting, which takes a LOT of time. This bug, along with the One Shot net access security model, really makes this KVM useless for running OM4.