DraStic Nintendo DS emulator teaser video


@ Exophase: will your emulator feature some kind of "dynarec" (ARM9 > Cortex A8 instructions), or is it not necessary ?
 
Is there or could there be any benefit from the fact that the Pandora and the NDS are both using ARM processors (And the NDS actualy a pretty slow one)?
 
@ Exophase: will your emulator feature some kind of "dynarec" (ARM9 > Cortex A8 instructions), or is it not necessary ?
It's using an ARM to ARM dynarec, let's just say it's very necessary. That is considering that the interpreter DraStic has is very slow, especially since it does a lot of profiling.

Is there or could there be any benefit from the fact that the Pandora and the NDS are both using ARM processors (And the NDS actualy a pretty slow one)?
It helps somewhat. I can do things like flags calculations and caching, (some) predications, and inlined shifts faster than I could on most other ISAs. In the future I'll be able to leverage address adjust and block load/store to some extent as well. However, if I had the choice between this and something that had fast flags save/restore (Cortex-A8 doesn't) and a ton of registers (like 32) I'd probably pick the latter, assuming that it the rest of the ISA was close enough.

It doesn't directly run code (ie virtualization). I've talked about it before in other threads but IMO this isn't a good fit, both for usability/compatibility reasons and performance reasons.
 
The 3D engine is placing dialog text on the screen? Extremely complicated...uh...alpha calculations for the individual letters?

Still, and once again: Amazing stuff!
 
The 3D engine is placing dialog text on the screen? Extremely complicated...uh...alpha calculations for the individual letters?
It's probably easier to work some rendering engines to use the 3D like a glorified 2D blitter than to use sprites or background layers. This is especially true for translucent blits, because the 2D blending works like it does on GBA, where it can only blend the top two things (and can't blend different sprites against each other at all).

In theory, if the emulator can detect this (and the blits are big enough) it could actually be faster to emulate this than 2D sprite rendering.
 
that would be perfect for me as the the only games i really enjoyed on the nds are pure 2d
 
Wow, really impressive work!

In another thread I believe you mentioned picking up the new Samsung ARM based Chromebook.  Have you tried running it there?
 
Wow, really impressive work!

In another thread I believe you mentioned picking up the new Samsung ARM based Chromebook.  Have you tried running it there?
Yes I have, in fact it has been my primary vehicle for development. A few years ago I did development on an Atom netbook (when I was away from my desktop, that is; mainly in car rides to and from work), and while it worked it wasn't great and was limited in how much I could do with it since it wasn't ARM. In summer 2011 I used it to first start coding the ASM for gpu_neon while I was out of town, which involved sshing into my home computer then sshing into my Pandora. It was really a nightmare. Being able to do that coding straight on the netbook would have been much, much nicer.

And it's just a better device in general, than the old Eee I was using anyway - a bit of a bigger screen, a lot thinner and lighter, a lot faster, and a nicer keyboard. The OS situation is pretty hacked, but it works far my limited needs. I've basically spent a lot of time testing ARM code on the Chromebook, then moved it over to Pandora only to performance tune it for Cortex-A8.

DraStic runs pretty well on it so far. Things tend to be around 4-6 times faster than the Pandora at 600MHz, and this is while only running on one thread (so only one of the two cores is being utilized). This doesn't apply to 3D emulation, which is something like 10-20 times faster.. I'm not sure exactly but it's a huge difference. The reason why is because my 3D code is using floating point, and there's no NEON optimization for it (current Pandora toolchain is probably too old for that), and the scalar floats on Cortex-A8 are very slow. So just take that as a major sign that the 3D performance right now isn't really representative of anything.

Still, the slow 3D even gets that port, where last I tried Castlevania: Dawn of Sorrow was only at like 70%. My old Conroe-based Pentium was under 50% performance with this game but that was slower code so it's hard to compare. Suffice it to say that the 3D is slow. I was able to play the whole game fullspeed on my i5-2500K, though, so it's at least not THAT slow.

On the other hand, NSMB, which uses a small amount of 3D, currently runs about 3x fullspeed on the Chromebook.
 
Last edited by a moderator:
just a question that came to my mind - do you plan creating some plugin API so that others whenever you release a binary can fiddle around a bit with 2d or 3d or whatever ?
 
Exo, once again you have blown us away with your hard work, talent and skill!

Thank you, I cannot wait to try out DraStic on my classic unit too.

Speaking from ignorance here, could it be configured so 3D is disabled with a press of a key? I'm thinking of those games which you mentioned had unknown usage of 3D.
 
Wow, looks amazing, great to hear that DS homebrew will also run.

Amazing level of performance on the 2D games, tried this DS emulator on my Nexus 7 and NSMB was really slow so I was expecting a slideshow on Pandora @ 600Mhz for even the least demanding of games. Watched the teaser video and mind = blown.

Best of luck with the Android & Ios emulators, hope you make plenty of sales, huge respect for planning to release this on Pandora first.

A couple of general questions :

1) Do you have a 1Ghz / Rebirth Pandora to test this on? My understanding is that there is a different revision of GPU on these boards + extra Ram, not sure what sort of impact this would have on performance / stability.

2) What sort of performance boost do you see for DrasTic if you run your Pandora at 1Ghz instead of 600Mhz? No need for benchmarks, just curious if overclocking has obvious benefits.
 
Holy cow, Sir. Exophase.  :wub:

thou never stop to surprise me, looks like 2013 is another big year for pandora.

Plz accept a bit of my gratitude, not much but it is my sincere thanks and appreciation. 

Oh, Happy new year, my dear heavenly brother.
 
Wait a prostate shrinking moment, you don't have a paypal account do you? :blink:

Come to think about it; I've never seen you upload anything to the repo under your name.

Even you have achieved great things. Hurry up, dude, set it up so people can send you donations! :wacko:
 
Absolutely stunning!

Are you by the way also planning a Android release (I'm sure if you charge a couple of dollars, that should get you a nice income in no time) or are you making it Pandora-exclusive for now to help Pandora sales?
 
In the first post Exo said he'll make it also for Android but exclusive for Pandora for the first month.
 
Back
Top