Esoteric - my thesis project

Hello.
I’m working on a SH-4 processor implementation in Java (same as on the Dreamcast console) as a subject for my thesis…it is not very advanced yet, but it already shows something. About the speed, everything is slooow (at least on my athlon xp) but speed hasn’t been a concern yet…

Imgur

This is a demo called 256b.bin for the Sega Dreamcast console (don’t quite remember the author now).

For more info

http://code.google.com/p/esotericemu/wiki/Esotericwiki

Bye :slight_smile:

PS : thanks to MathiasM and void256 from the lwjgl irc channel for helping me find some really stupid bugs…

Screenshot could be bigger :wink:

If you press All Sizes you can choose the size of the pic

After a lot of work things are looking better

http://alunos.uevora.pt/~l17822/back4.jpg

For a bigger screen go http://alunos.uevora.pt/~l17822/back4.jpg

When do you plan to release the source code? Do you use only pure Java or do you use an external API?

Hello.
An old version of the source code is available at the project page. This thursday i’m going a to upload a newer source…
What to you mean by pure java? Well i have to use lwjgl for the opengl and openal bindings.I also had to develop a lib in C to access the cdrom drives and several types of cd images (using libcdio). I also did a cdi (discjuggler) image parser in java but the C lib allows me to do HLE boot (not using the bios to boot cdroms). When the bios is emulated probably a java only, read no bindings, will be possible and the way to go :slight_smile:

All the best

After a while and bug fixing stupid bugs i did i got the ip.bin (the piece of software every dc game loads before executing)

http://alunos.uevora.pt/~l17822/back5.jpg

Very cool! I personally have no idea how emulators work, but this seems very promising.

wow, can’t believe i missed this thread, looks like one awesome projects. Looking forward to play some of my dc games with it :slight_smile:

Very cool, I’ll be watching this one too… and I’ve a ton of DC games to play on it for testing purposes :slight_smile:

Bill

Thanks :slight_smile:

I’m currently working on improving the emulation of the power vr card to enable support for 3d demos and games. Also the bytecode generator needs a lot more work. Please keep in mind that i’m developing this as a basis for my thesis and there are some things that won’t get emulated till i present it (namely the sound core) and i’m not sure if commercial games will boot without it.
That said compatibility with KallistiOS (opensource homebrew OS) applications is already really nice.
Also you’ll also need a powerful pc when it reaches the stage to play commercial games. From my tests, with no bytecode generator, a native 64 bit OS makes a big difference. On the same laptop running Vista 32 bits and linux 64 bits the difference is really impressive.
I also plan to introduce multicore optimizations, which will most likely give a nice speed boost on dual core machines which are becoming commonplace :slight_smile:
I have tested it on Windows XP (32 | 64), Vista, Linux (32 | 64) but it is being designed to run every where ((lwjgl | java) !=0). There is a binding of a C lib using libcdio so i can access cd rom drives and several isos, and that will be the only non java component of this project.
It will also be possible to use the applet features of lwjgl (i guess people who develop dreamcast homebrew games) will like the ability to place them on a webpage for people to have a look :slight_smile:

Got a 3d demo to work (others still need a bit of bugfixing on the emu core) using immediate mode (optimizations come after). Hopefully tomorrow i’ll get those bug fixed and add texture mapping up and running :).

A few more screens showing some of the progress

A Sega Saturn emulator for the Dreamcast

An opensource pang clone DcPang!

My place at flickr :slight_smile:

Imgur

nice job! Do you intend for it to become a complete saturn emulator ?

Its Dreamcast :slight_smile: That screen shows yabause which is an Sega Saturn emulator for the Sega Dreamcast.
To answer your question, it may take its time, but i hope to be able to get it to a state where it can execute dreamcast games :slight_smile: