UPDATE 2: KDSBest has released the following information. "Let's call it beta (SPU emulation). Tested with my own elf alot commands if they work properly. Disabled buttons depending on state. And last but not least, if you press run a new thread is spawned. Now you are able to press pause and it stops the run ofc. The performance get a super boost with the threading. " You can download below.
UPDATE: SPU Emulation Alpha2 has been released: mBox implemented and MFC prepared, bugfixes, breakpoints implemented and all commands for metldr as far as KDSBest knows. Developer KDSBest has shared with us today his new SPU Emulation tool (still in it's pre-alpha stages), and application that will emulate the PS3's SPU from the comfort of your x86 machines. The reason behind the early release, is for support and feedback; so please do not hesitate to help if you can. Please note, this tool is meant for developers, and should only be used if one knows what they are doing.
I wanted to contribute to the scene , so I coded a tool that might help the community our members and fellow devís.
This Tool is intended for devís so please be careful if you donít know what you do.
I will not be held responsible for any harm
My tool is a emulator for PS3 modules (e.g metldr), it is in pre alpha stage but I thought, it would be great to get some community feedback.
How to use:
Not all SPU Commands are implemented yet, but it is easily extendable and I will make it support DMA, all SPU Commands and SPU Mailbox soon.
First open a .kds file. Check out the metldr.kds to see an example. The rest is like a normal debugger.
If you put dumps of your reversed functions in the KnownFunctions folder, it will detect it and mark that function for you.
Just for example Mark the whole cellSpuAesDecryptCbcCfb128 function in HexView in IDA -> Right Click -> Save to File
Name the File "cellSpuAesDecryptCbcCfb128" without extension and copy it to the KnownFunctions Directory of the Emulator. Now all similar functions get automatic detected!
"Step" Executes next command, "Run" runs till breakpoint (Breakpoints are not implemented yet).
Debug SPU Code in Windows.
Just get back to me at twitter
PS: Thx for MK and cfwprophet (Team acid)
and of course to fail0verflow for anergistic, which helps alot with it and even uses some functions of them.
Project Update: alpha2 > pre alpha so it is not in pre alpha stage anymore. It detecs code modifications on the fly too. The new feature list is not complette that's my fault I guess.
Thanks for the news update. I need some infos from some reversers to create the next stunning feature:
Crypto dumping... dumps all crypto calls... Let's call it function parameter dumping cause it will work for everything and will implement a callback on known functiins which will make dumping at certain calls possible.
I try to implement this and GET/PUT DMA commands this weekend. I think I can't finish it this weekend, but this will be the beta stage. V0.9 should then just implement the rest of the commands that anergistic implements.
After that it is unknown what I do and so on. Since then my reversing starts to get more focus.
Direct Download (Archive)
Download: SPU Emulation BETA 2
LIKE/VOTE for this Entry in this month's Contest!