Thx Cyberman. I know C/C++ would be the better alternative and there are actually Gameboy emus for phones with SymbianOS that run in fullspeed (even a SNES emu, that claims to run fullspeed, didnt test it though), but i wanted to try the whole thing in Java to make it more compatible. As you see in the phone emulator running my emu, it is perfectly playable this way. On my real phone i never expect it to be playable, i mostly wanted to make an emu at all ,and see, that it can be done on this limited platform.
Profiling it, i can see, that most of the time is spent in the actual method to draw the screen with j2me, as a new image is created out of the pixeldata every frame. that is not acceptable speedwise, so i will try to tweak that and gain some speed from that.
Sound is the other issue. it is emulated, but not interfaced with j2me yet.
dont know if i will be able to do that at all, maybe some monotone sounds, but no real interpretation. there is a j2me nes emu though with sound, maybe i can look into that...
frame limiting is actually implemented, the screens were taken with a version though that had a 'bug' in showing the fps, as the emulation loop as well as the 'canvas-loop' were updating the screen, which also caused some flickering, anyway this is solved now.
The memory to work with is really a pain ... Zelda wouldnt work on my phone for example, as the heap size is too small to load the rom, just smaller games work. You really needed a high end phone to make something of this, but i am sure, not too far in the future this might actually be playable on real phones.
Actually i ported javaboy now, to compare its speed with my emu and its a bit slower, but well, it was not designed for j2me.
I am thinking of porting a C64 emu and maybe GameGear emu now, or to do one from scratch. We'll see.
Anyway, i am really enjoying this working in emulation, will see what will become of it.
My ultimate goal is to make a working Saturn emu

h34r: (not in J2ME of course

)
but thats quite a way to go.