gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS development > Which emulator resembles the NDS hardware the most?

#173225 - gusano - Sun Mar 28, 2010 9:02 am

I am running my code on No$Gba, on DesMuMe, and on hardware...

1. On No$Gba, it runs as I would expect it to (but the Errors window shows about 120 errors per second)... expected output is several quads on screen.
2. On DesMume, I see absolutely no output (black or white screen)
3. On hardware, I see graphics, but with major flicker (there's a black stripe on the top half of the screen...)


which should I pay closer attention to, DesMume or No$Gba ? Both? None?

Thanks

#173226 - DiscoStew - Sun Mar 28, 2010 9:53 am

imo, I'd go with No$GBA. I can't remember the post/thread, but I'm sure I read somewhere that the reason why No$GBA is building up errors is because of some rearranging of the toolkits/libnds.
_________________
DS - It's all about DiscoStew

#173227 - wintermute - Sun Mar 28, 2010 10:40 am

Post was here http://forum.gbadev.org/viewtopic.php?p=171636#171636

It's basically because I had to do some memory layout rearranging for DSi.
_________________
devkitPro - professional toolchains at amateur prices
devkitPro IRC support
Personal Blog

#173242 - gauauu - Sun Mar 28, 2010 8:01 pm

In my testing with the DS version of Anguna, I found that things often worked fine in DesMuMe (which I primarily tested with), but failed on both no$ and hardware (And failed the same way on both).

Overall, no$ seemed the most reliable. There were a few cases, though, where no$ was wrong (sprite blending, if I recall correctly).

#173262 - sverx - Mon Mar 29, 2010 9:49 am

gauauu wrote:
Overall, no$ seemed the most reliable. There were a few cases, though, where no$ was wrong (sprite blending, if I recall correctly).


Yes, that bug on semitransparent sprites is the major problem, IMHO.
But you should also remember that No$GBA doesn't emulate ARM9 caches (so maybe you won't see your sprite appear on the screens on the hardware if you write directly to OAM and you don't flush the cache...)

#173265 - wintermute - Mon Mar 29, 2010 10:29 am

Actually, direct writes to OAM don't go through the cache, you can't write to OAM outside blanking periods though.
_________________
devkitPro - professional toolchains at amateur prices
devkitPro IRC support
Personal Blog

#173270 - sverx - Mon Mar 29, 2010 1:09 pm

Yeah, right. My mistake. I meant to say that before you DMA-copy your 'local' OAM memory to the 'real' OAM (in VBlank) you should remember to flush the data cache -or at least partially-.

You can 'forget' that on No$gba with no problem, because it doesn't emulate any cache. (mmm... I guess there are no emulators that emulate the cache...)

Right now, wm? ;D