Forums GAMERGEN

NullDC-360 : des news sur cette émulateur dreamcast

NullDC-360 : des news sur cette émulateur dreamcast

Message non lupar tribale76 » 02 Sep 2012, 10:59

Image


Gligli ce nom sonne comme celui du hack qu'il a inventé le RGH

Par l'intermédiaire de son blog il donne quelques nouvelles concernant le portage de son emulateur Dreamcast, NullDC-360.

Apparemment c'est sur la partie son que ce dernier à rencontré le plus de problème.
D’ailleurs voici ces mots " l'architecture du chip sonore est complexe sur la dreamcast" .

Mais en tout cas, ça fonctionne, la vitesse d'émulation est quant à elle identique même avec l'ajout du son.
ce dernier annonce que la première version sera bientôt disponible !!!!!!

[youtube]http://www.youtube.com/watch?v=dYWGTBvzd38&feature=player_embedded[/youtube]

Hey, as you might have noticed, I resumed my work on nulldc-360 and libxenon not long ago.

I’m currently working on 3 things: compatibility/sound/speed.

6 months ago I was badly stuck on 2 bugs, one texture endianess problem, and one random crash/infinite loop in the dynarec.
First thing I did was to look at that texture bug, in a few days I found the exact case where it happened and fixed it for good.
Then I fixed the dynarec one, it was quite an awful one: I forgot to save/restore the SH4 condition flag on dreamcast interruptions, so it was randomly corrupted as the emulated console handled its IRQs!
I fixed a few more bugs until it was clear I needed proper sound emulation for more games to boot.

Adding sound was relatively straightforward, of course there were the usual endianess related bugs, but I guess I’m getting used to it ^^
The Dreamcast sound chip (AICA) is a complex design, it has an ARM processor core, a 64 channel sound generator, and a DSP.
I don’t emulate the DSP for now, many games don’t really need it.
Main problem with sound is the induced emulator slowness, though thanks to the 360 multicore cpu, I was able to make it almost free.

Updating peripherals in the dynarec works that way: each code block knows how many SH4 cpu cycles it emulates, and each time a fixed number of cycles (448) is reached, it calls a procedure that updates those peripherals.
To multithread sound, and by the way, other peripherals, I run parts of that update on a separate core.
It runs concurently with the dynarec, and, basically, every 448 SH4 cycles both get sychronized. so as long as peripherals emulation takes less time than SH4 emulation, the dynarec doesn’t have to wait for them!
So that makes them almost free to emulate, almost because they still stress the 360 L2 cache and memory controller a little.

Anyway, compatibility seems pretty good now, sound works, speed is more or less the same it was before sound emulation, a proper binary release *might* not be that far ;)



source: http://www.homebrew-connection.org/
Avatar de l’utilisateur tribale76 Gamer Pro
Gamer Pro
Messages: 211
Inscription: 19 Nov 2008, 22:01
Localisation: Seine maritime
Prénom: nicolas
Pays: France
Sexe: Homme

Re: NullDC-360 : des news sur cette émulateur dreamcast

Message non lupar Edward L. » 02 Sep 2012, 14:19

Merci pour la news, hate de voir cela :)
Ex-Kysshin87
Image
Avatar de l’utilisateur Edward L. Ancien Administrateur
Ancien Administrateur
Messages: 32839
Inscription: 24 Jan 2009, 16:12
Localisation: Zuid-Holland
Pays: Pays-Bas
Sexe: Homme


 

Retourner vers Jeux vidéo, Consoles et PC