Quick Jump Daily Digest
Thank you for your interest in the Quick Jump Daily Digest. Get notified of all new content on QJ in our free Daily Digest. To subscribe, enter your email address below and click the subscribe button.
Daedalus R10 release date and plan of action |
Listed in: Homebrew Development, Homebrew Emulators, Emulators Tags: Daedalus, emulation, N64, psp homebrews, StrmnNrmn
Ó
A couple of weeks ago, homebrew developer StrmnNrmn released a new version of Daedalus, his Nintendo 64 (N64) emulator for the PSP. But we guess we don't have to remind you about that as who would've missed that release? The homebrew developer even asked you what improvements you'd like to see in Daedalus R10.StrmnNrmn just announced that he has finished collating all your responses and is now ready to work on the next version. He mentioned that most users commented that speed of this homebrew emulator should be improved as well as compatibility and save game support. The coder would like to assure everyone that all suggestions have been taken into consideration.
Lastly, here's the plan of action StrmnNrmn wants to take for the new release: He promised that Daedalus R10 should be ready before March ends.
Daedalus R10 Plan of Action
- In many games, a lot of the time spent executing dynamically recompiled code is doing things which can potentially be emulated at a high level. For instance, over 5% of the time spent executing dynarec code in Mario64 is just converting matrices from floating point to fixed point format. Another 4-5% of the time is spent in a loop invalidating areas of the data cache (which is irrelevant in an emulator.)
- Some of the most expensive fragments are those which branch to themselves (i.e. those doing many loops). I can optimise for this to avoid loading and flushing cached registers on each iteration through the loop.
- I can implement a frameskip option (I had intended to implement this for R9, but forgot!)
- I can make use of the Media Engine (as Exophase suggested in conversation, as the ME can't access VRAM, it might make more sense to execute Audio and Display Lists on the main CPU, and run the N64 CPU emulation on the PSP ME)
- There are certain situations where I fail to create fragments in the dynamic recompiler - for instance if the code being recompiled writes to a hardware register, this triggers an interrupt and causes fragment generation to be aborted. I should be able to deal with situations such as this more gracefully.
- The fragment generator can do a lot more to improve register caching, and eliminating redundant 64-bit operations.
- There are many situations where N64 roms busy wait. I detect very simple occurrences of this, but not all of them. If I manually identify more complex examples I can have the fragment generator optimise them away.
- Some roms are causing the dynarec fragment cache to be repeatedly dumped and recreated (I think Banjo Kazooie is one example of this). Fixing this may just involve tweaking a couple of magic numbers.
- I currently optimise memory accesses under the assumption that most accesses are in the range 0x80000000 - 0x80800000, which is incorrect in the case of roms that make heavy use of virtual memory, or access RAM through the mirrored range at 0xa0000000. I can improve the trace recorder to collect information on which range a memory access fell in, and generate code to speculatively optimise for this.
- Now that the dynarec engine is producing much better code, the cost of display list processing is becoming more significant, and may finally be worth profiling and optimising.
| This story sucks? This story rocks! |
|
|












Comments
Reply
Reply
Reply
Reply
Reply
Reply
Reply
It's fairly helpful, and explains that this release may well reach 100% speed on some games.
Reply
Reply
Reply
it's practically full speed already b4 it crashes at the menu!!
and also...
why is it that some games parts seem like it's going faster than it should?
Reply
Reply
Reply
Reply
Reply
Reply
Without sound it runs fairly ok, but who would wanna play a game without sound.
Anyhow, Keep up the good work StrmnNrmn.
Reply
Reply
Reply
Reply
http://rapidshare.com/files/19765901/DaedalusR9_frameskip.zip.html
frameskip is the first option in Rom Settings.
Reply
Reply
Reply
or slow down gameplay any way it best fits you
Reply
Reply
One more thing, if it isn't just too much, would it be possible to get WWF No Mercy compatible? The sound and everything apparently works, but the graphics don't; it's just a black screen.
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Reply
-Super Mario 64
-Banjo Kazooie
-Mario Kart 64
-Smash Bros.
-Zelda OoT ( Or MM )
-Star Fox
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Actually, even with sound on the game seemed to run at full speed or better within levels and not just in the castle. I cant wait until R10 with its speed boost plus frameskip. Thanks Strmnnrmn and Thanks to whoever edited that edition of R9 and posted it on Rapidshare :)
Reply
Reply
hours and hours and hours and hours and hours and hours of fun
Reply
But seriously ocarina of time, if you got that to work I will send you Danzig dollars.
Reply
Reply
Reply
Reply
Reply
most of the games dont save so savestates would be so helpful
Reply
that game was siiiiccccccckkk kkkk asss helllll1!!
Reply
Laughing is fun.
Reply
Reply
Reply
Reply
Reply
I think it's not making each individual game work, it's making the emulator work in such a way that it handles certain calls the good way, so that it works for any game that makes that call.
It's just like VisualBoyAdvanc e, when some new GBA game comes out, it works. This is, I think, because of the good emulation. Now I really don't know how hard it will be to do the same for N64 emulation, as there are still bugs in Project64 too (that's 10 year after the launch of the N64), but I think most games do calls in a similar way. So if that call is emulated well, and fast, it won't be a problem for other games making that same call.
Reply
Reply
Reply
Reply
2. Turok (all 4 games)
3. Banjo-Kazooie
4. Star Fox 64
5. Donkey Kong 64
6. Super Mario 64
7. Doom 64
8. Road Rash 3D
9. Killer Instinct Gold
10 Cruis'n USA
Reply
Reply
Reply
Reply
Reply
Reply
Reply
And you payed extra attention to your grammar on that post just because someone spelled coherent wrong against someone who shared the same opinion as you.
Reply
Reply
i dont think emulating the n64 is worth the time
who plays n64 anymore? we know the psp can
emulate (ps1) 100% so we know the n64 will work
just fine, but if you want to waste your life doing
somthing already proven GO ahead..
why dont you concentrate on running a graphic engine
emulating off a external memory card that can run
ps2
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Star Fox 64/Lylat Wars GoldenEye 007 The Legend of Zelda: Ocarina of Time
Yoshi's Story Space Station Silicon Valley Banjo-Kazooie Banjo-Tooie
1080 Snowboarding F-Zero X Super Smash Bros. Star Wars: Rogue Squadron
World Driver Championship Perfect Dark Ogre Battle 64 WWF No Mercy
Harvest Moon 64 Star Wars: Battle for Naboo Paper Mario Conker's Bad Fur Day Diddy Kong Racing Donkey Kong 64
Reply
Reply
Reply
Reply
try playing Star Fox or Kirby Super Star or Mario RPG and tell me how fast those games run
Reply
Reply
Reply
your one crazy *****
but i was dissapointed with the sound in r9
seriously it makes it run a little bit faster but what was the point of sound
at least make it playable before you add sound
whats the point of haveing crackly ***** while playing a slow boring game
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Reply