PDA

View Full Version : DSonPSP beta 3 - Nintendo DS Emulator for PSP



Sektor
August 25th, 2009, 09:57
Yoshihiro has updated DSonPSP (Nintendo DS emulator for Sony PSP). It's still too slow to play anything.

http://www.pspgen.com/forums/dsonpsp-beta-3-emu-ds-release-en-telechargement-t176934.html

...:::BETA 3:::...

Updated GPU, MMU, DMA, RTC and branch code
Some small speedups
Updated gfx3d core to DeSmume core 9.4
Added debug information, so you can give your results when your games freeze
Removed CPU Ratio Hack


Download Here (http://www.dcemu.co.uk/DSONPSP_Beta3.rar) and Give Feedback Via Comments

ojdon
August 25th, 2009, 16:52
Wow. Amazing, Truly Amazing.

Nokiaman
August 25th, 2009, 20:03
Amazing!

sappo
August 25th, 2009, 20:12
I'd say useless and stupid.

The PSP doesn't have enough power to do this, and even if it had, without a touchscreen and/or separate screens most games would still miss their entire purpose.

This is done just to please the PSP fanboys.

There are a lot of emus that still require work on the PSP, why waste time on this? It's not like it'll ever be in a playable state.

Nokiaman
August 25th, 2009, 20:20
I'd say useless and stupid.

The PSP doesn't have enough power to do this, and even if it had, without a touchscreen and/or separate screens most games would still miss their entire purpose.

This is done just to please the PSP fanboys.

There are a lot of emus that still require work on the PSP, why waste time on this? It's not like it'll ever be in a playable state.
Someone is raging.

Sektor
August 25th, 2009, 20:20
The "amazing" posts look like spammers but maybe they just didn't try it. It would be amazing if it was near full speed but right now it's just a novelty. I like really like novelties though and it's interesting to see what optimizations can be done.

Nokiaman
August 25th, 2009, 20:56
The "amazing" posts look like spammers
I am not spammer and I never was. For me every emu that can do at least something is amazing.

Salvy
August 25th, 2009, 20:58
What I been wondering is if he's breaking the GNU General Public License.... for not releasing the source?

What I heard this a port of DeSmuME...?

Exophase
August 25th, 2009, 21:02
Yes, it's a port of DesMuME.

It would be amazing to me if he (or anyone else) did a much more aggressively optimized DS emulator by himself, or at least did some optimizations to DesMuME worth talking about. Not that I know what was done for this one, but nothing deemed "small speedups" can be worth talking about. Of course, I'm speaking purely from a standpoint of my own personal interest - I can't assume other people won't be excited by a very slow emulator becoming slightly less very slow.

It'd still run unsatisfactorily, but at least I'd be impressed.

Kind of like Yabause getting a pretty good SH2->MIPS dynarec, something I think no one cared about. Actually, I haven't even heard any feedback of how it runs on PSP, aside from "doesn't." I'd love to know how it performs on a game it actually works on.

And yes, he's breaking the GPL if there isn't a clear way to get the source. I don't know French so I don't know if there is or not. But I think this is why people got mad at him 3+ years ago. Then again, a lot of ports to PSP are breaking the GPL so what point is there singling this guy out?

B2K24
August 26th, 2009, 00:19
Kind of like Yabause getting a pretty good SH2->MIPS dynarec, something I think no one cared about. Actually, I haven't even heard any feedback of how it runs on PSP, aside from "doesn't." I'd love to know how it performs on a game it actually works on.


I read on another forum Chilly Willy or J.L.F on this forum ran Panzer Dragoon at 1 FPS and it took 90 minuntes to clear the first stage. This is if i recall correctly.

wraggster
August 26th, 2009, 00:41
i remember the days when GBA Emulation was very poor on the PSP then some bloke called exophase came along and stunned the emulation community, amazing things do happen now and again in emulation.

Although i still cant see a full speed ds or saturn emulator ever happening for PSP, now for pandora that might one day be doable

Exophase
August 26th, 2009, 08:34
I read on another forum Chilly Willy or J.L.F on this forum ran Panzer Dragoon at 1 FPS and it took 90 minuntes to clear the first stage. This is if i recall correctly.

There was a Yabause port years ago by Sofiyacat that would have been extremely slow. The more internal dev-team work to include very significant PSP specific optimized code happened only in the last few months. It's a lot more likely that whoever was testing was using the old one.

If anyone does put a lot of energy into a faster DS emulator it'd be nice if they focused on making it available on PC as well. I think there's a lot of viability in this right now, especially with netbooks being really popular.

gelon
August 26th, 2009, 11:45
http://www.youtube.com/watch?v=1w9h60Y_vl4 i've made time ago of the very-first version of Yabause running Deep Fear, its slow, but i'm impressed that it works like this

Yoshihirox
August 26th, 2009, 16:34
Hi here the beta4 with the source code ;) if someone want play with desmume there are no breaking the GNU General Public License.


Sorry i've used megaupload because i cant upload on your forum i use my 3G+ connection on my laptop.
DSONPSP beta 4 + Source Code (http://www.megaupload.com/?d=DL96GUAB)

wraggster
August 26th, 2009, 16:39
what sort of speeds are people getting who are testing this emulator ?

also how the heck do you emulate the touchscreen ?

Yoshihirox
August 26th, 2009, 18:05
Hi wraggers i can get 15fps for some games in 2d only and 8 fps in 3D only for some games too and for emulate the touchscreen i use the analog for the directional stuff and the NOTE button for confirmed my choice .

Sektor
August 26th, 2009, 18:10
Zookeeper runs at around 4.6fps in game and it's one of the most simple games. In some apps, there might be the occasional 15fps peak on a still screen but it's usually much less than that.

That test was with beta 3. The "show fps" option doesn't work in beta 4.

wraggster
August 26th, 2009, 18:12
what can be done from a developers point of view to speed things up, i take it the emulator is already running at 333mhz ?

Sektor
August 26th, 2009, 18:20
Dynamic recompilation would help.

wraggster
August 26th, 2009, 18:31
are there any dynarecs for any ds emulators apart from x86

Yoshihirox
August 26th, 2009, 18:34
No one exist but it's wierd because on my fat psp i got a better speed like under DBZ title screen 15Fps but all other i've asked with a pspslim the game can only run at 11FPS max .

Sektor
August 26th, 2009, 18:34
The PC version of desmume doesn't even do dynarec yet.

Mr. Shizzy
August 26th, 2009, 18:43
No one exist but it's wierd because on my fat psp i got a better speed like under DBZ title screen 15Fps but all other i've asked with a pspslim the game can only run at 11FPS max .

yoshi, first of all thanks for working on the PSP again. I know you are a knowledgeable and respected dev in the community. :)

Odd how you say it performs so much worse on PSP SLIM. I have a SLIM, so I'll post my results when I get the time to do some testing. Also, I'll have a look over the source, to see if my eyes can see anything.

Any plans of a SLIM specific edition, that allows for the SLIM's extra memory to be used?

Yoshihirox
August 26th, 2009, 18:53
yoshi, first of all thanks for working on the PSP again. I know you are a knowledgeable and respected dev in the community. :)

Odd how you say it performs so much worse on PSP SLIM. I have a SLIM, so I'll post my results when I get the time to do some testing. Also, I'll have a look over the source, to see if my eyes can see anything.

Any plans of a SLIM specific edition, that allows for the SLIM's extra memory to be used?

yes that can be done i will see if i can enable an auto detection with kubridge the get model function

wraggster
August 26th, 2009, 19:00
i wonder if the extra memory will provide much of a speed boost ?

would exophases GBA dynarec be of any use to this emulator , (do i sound like a noob or what :P)

Yoshihirox
August 26th, 2009, 19:11
i wonder if the extra memory will provide much of a speed boost ?

would exophases GBA dynarec be of any use to this emulator , (do i sound like a noob or what :P)

Like that not really need to be rewrite for teh arm9 because the arm9 it's different CPU and i dont know if it's a good idea to run a a ARM7 dynarec in same time with a arm9 dynarec because the DS use 2 CPU but only one arm9 dynarec can really help

Sektor
August 26th, 2009, 19:12
DS emulators don't really need as much RAM as GBA emulators or any system that loads data from fast ROM since the DS loads files from a slow file system, no faster than a PSP memory stick duo.

Emulating an entire ARM7 isn't really needed since official DS developers aren't allowed to change the ARM7 binary. The ARM7 handles touchscreen, wifi and sound. All of those don't need to be emulated fully at this early stage.

wraggster
August 26th, 2009, 19:23
hm, could the memory stick on PSP be used as virtual memory for the DS Emulator, im sure some app or emulator actually uses the mem card (unless im mistaken :D)

Sektor
August 26th, 2009, 19:27
No need for virtual memory, DS has 4MB RAM and PSP phat has 16MB. A swap file on a flash device would also wear it out with too much writing.

I guess you might need the 32MB in the Slim if you wanted to emulate a DS with a RAM expansion and run Opera web browser or something crazy like that. There's always some use for more RAM.

Veskgar
August 26th, 2009, 21:25
Its great to see so much enthusiasm and talk regarding this... or any emulator on PSP for that matter. Reminds me of the good ol' days.

Exophase
August 27th, 2009, 03:01
I made a post on gp32x about areas in which DesMuME is lacking, and a faster DS emulator would need to correct:

http://www.gp32x.com/board/index.php?/topic/49175-2-players-simultaneusly-nds-question/page__view__findpost__p__749781

None of these things would be straightforward modifications to DesMuME but would involve massive overhauling.

Another thing I'd like to add to that list is better geometry processing. DesMuME processes geometry in separate function calls called from external memory interfaces, which at first glance is fine but really has a lot of overhead for trapping and loading state. It's essential that a DS emulator processes DMA to the geometry processor in batch and keeps state like current vertex and global matrices in local variables for a while, otherwise there's going to be constant state swapping for something that can happen hundreds of thousands of times a second.

There are also some PSP specific improvements that can be done. In general DesMuME could offer OpenGL support for vertex transformation and lighting, which the PSP can then do in hardware. Global matrix manipulation can be accelerated with on the PSP's VFPU. Several of DS's texture formats can be used natively w/o caching, with some others converting to more condensed forms than the 16bpp formats converted to by DesMuME's texture cache.

At the extreme end of things, 2D processing can be batched and moved to the media engine, along with ARM7. This would be very far from trivial to do while maintaining the same level of accuracy. But my guess is that DS games at least suffer fewer 2D VRAM writes per frame than GBA ones sometimes do, especially 3D games.

However, I firmly believe that all of the optimizations in the world will not make this good enough for PSP. It'd need to be a good 10x faster to really be feasible... and I think there are things that the DS can do in 3D that the PSP never will be able to do with its accelerator, since it's fixed function.

gpSP's recompiler can be adapted to this in some sense, but it's far from a direct fit. All of the ARM9 features would have to be added and the memory subsystem code would have to be pretty dramatically changed. Updates would have to be changed too, and there'd have to be some task switching magic to support both cores (unless the other really was on the Media Engine). It'd take someone who very seriously knows what they're doing and has the time to dedicate to something like this.

BTW, although developers aren't allowed to put their own code on the ARM7, they're still linking against libraries that have several revisions. So it's not a matter of having functionality on ROM. Emulating this at a high level might be problematic. Also, you need the ARM7 to access the X/Y buttons (stupid Nintendo..)