TASEmulators / freej2me-plus

A free J2ME emulator with libretro, awt and sdl2 frontends.
https://tasemulators.github.io/freej2me-plus/
Other
0 stars 0 forks source link

FreeJ2ME could benefit from a Web Player, even if limited in capability and performance #6

Open AShiningRay opened 3 days ago

AShiningRay commented 3 days ago

Thanks to CheerpJ, it is possible to run FreeJ2ME in a browser. With a local proof of concept working just fine:

image

It is, however, rather limited, being much slower than a native JVM, and also lacking features such as MIDI support, not to mention AWT being littered with glitches on it.

Furthermore, quite a bit of work will be needed in order for it to be usable, as FreeJ2ME can't access the user's Filesystem directly, and so it falls to JavaScript to call upon a file picker to then pass the jar into FreeJ2ME's virtual FS inside CheerpJ.

There's also some usability tweaks to be made, so that it doesn't feel too detached from the webpage itself, but it's not a critical task... at least the possibility is there.

zb3 commented 2 days ago

No MIDI support? They say they've implemented the whole OpenJDK and on discord I saw they mention "Audio Support" :(

AShiningRay commented 2 days ago

No MIDI support? They say they've implemented the whole OpenJDK and on discord I saw they mention "Audio Support" :(

Nope, midi simply fails to load no matter what, and to be fair their AWT support is also very bad (file picker doesn't work, the UI can break rather easily, so on), swing seems a bit better, but is overkill for FreeJ2ME. Unfortunately, this means that the web version will either be restricted compared to the standalone version, or some kind of translation from midi to wav (didn't check if wav works, but if there's any kind of audio support, this should at least be there) will have to happen. In any case, for a proof of concept, it's fine so far.