01-10-2014, 06:17 PM -
(01-10-2014, 11:50 AM)InoriRus Wrote: Successful dynamic recompilation requires one simple thing: optimization. PowerPC 64 and x86 are completely different architectures. There is no way to efficiently map registers and instructions on-the-fly to make produced code faster than interpreter. You need to write good optimizer. And this is the task comparable with developing a real compiler. With static approach you can use some real compiler: for example, gcc, as it's done in short waves.Since you are here , you may tell us more about how you achieve that static recompilation: offline or online?
And by the way, all those samples works such high speed without recompiling - it is just a single interpreter. A manual on how to use recompilation will be available later.
offline: you have an external tool to generate a native source from a binary game that you include in your emulator when building it (emulator binary per game) or do you build a separate dll to be optionally fetched when launching a game?
online: do you build a dll at the time you launch the game so the emulator dynamically loads it then executes the game through the dll.