Author
| Java MSX Emulator
|
freakazoid msx friend Posts: 6 | Posted: February 28 2005, 13:56   |
Sorry folks about the delay, but my son's birth made me stop all working and hobby threads 
I finished a version but it was to big for my siemens S55 JVM take care. I got a "OutOfMemory" exception on face.
I will need to make a clearing on adapted code for a better image generation and ROM load.
I'll send news ASAP.
|
|
evulopah msx addict Posts: 464 | Posted: February 28 2005, 15:03   |
hehehe, you say it the right way: made me stop.... for 'crying' out loud!!!!!!!
|
|
freakazoid msx friend Posts: 6 | Posted: March 07 2005, 14:17   |
NEWS. It worked on Sun SMTK, but it was tooooo slowwww. But I got a happy moment besides it took 5 minutes to start up the ROM BIOS and more several minutes to go to BASIC interpreter shell. (On a Sony VAIO P4 2.8Ghz)
I optimized the drawing, but its not good yet.
The instruction dictionary must be optimized, but i dont know how.
May be switch case doesnt work well in J2ME. And it is using MIDP 1.0 API. Does exist Game Graphics classes like MIDP 2 in MIDP 1?I guess there is a specialized way of drawing bits in Siemens Mobiles. I will search a way out.
|
|
Guillian msx professional Posts: 647 | Posted: March 07 2005, 14:55   |
I think actual (common) phones are not fast enough for running a j2me MSX emulator. Moreover, they have a limited heap memory, JAR restrictions, etc. which means it is a hell to try it. Furthermore, MIDP 1.0 is quite limited with graphics; you can't have pixels access and the only available methods are drawing (copying) images, drawing primitives (lines, rectangles...) and a few more.
You can try to focus the emulator in a concrete model or family like Nokia S40, S60 in order to get some special API's for sound and graphics. But I think it will not be enough for doing a decent MSX emulator.
|
|
freakazoid msx friend Posts: 6 | Posted: March 16 2005, 14:14   |
Besides I got a S60 model (nokia 7650), I still interested in developing a pure J2ME emulator. It worked here, but too slow. No sound and a horrible sprite drawing routine, but it did work  (I saw Konami´s Nemesis on screen). Im trying to imagine a way to optimize the Zilog Z80 CPU emulation. The original decompiled is a "big switch" in the 256 instructions. Im working in make a more inteligent instruction match using a statistical approuch or a way of grouping instructions in sub sets for a kinda of hash matche. Any ideias? |
|
cax
 msx master Posts: 1028 | Posted: March 16 2005, 14:19   |
Did you try to run profiling on the code ? If yes, was the mentioned code section identified as a bottleneck ?
|
|
snout
 msx legend Posts: 4992 | Posted: March 16 2005, 14:21   |
If you have a S60 phone, why not use the wonderful fMSX/S60 emulator?  |
|
freakazoid msx friend Posts: 6 | Posted: March 16 2005, 14:56   |
Why not fMSX?
J2ME can be spread around any J2ME device. Symbian rocks, but I love challenge. In future, it can grow to a sofisticated emulation in JAVA. Sun will love this.
About CAS question, I used System.getCurrentTimeMillis(), I will try to use the profilling tool to confirm the bottleneck.
The worse bottleneck is not in Graphics, but in CPU. It takes minutes to start VDP.
I boosted the code just with bit operations to multiply and div some values, but it far from a good emulation.
I will try other optimizations techniques.
|
|
[D-Tail]
 msx guru Posts: 3020 | Posted: March 16 2005, 18:00   |
Does the object code (the classes) differ in various compilers? Maybe you need some more sophisticated compiler, which uses many optimisation techniques.
Maybe we should all code JAVA in bytecode  |
|
genergabasa msx friend Posts: 1 | Posted: November 13 2008, 07:06   |
This post is already old and I believe lots of people here have already ported Arnon's J2SE MSX emulator in J2ME. But if not then just try mine:
http://genergabasa.php0h.com/upload.php
Also, on that page are other java emulators ported to J2ME.
Enjoy!! |
|
|
|
|