zodttd
Solving your premature emulation since the Tapwave
EDITED April 2, 07:
You may find the latest work in progress builds at: http://www.spookysoftsite.com/psx4gp2x/
Hi everyone,
I recently went back to the old psx4gp2x code and rewrote the dynarec and with Unai's new code plus my new dynarec things are much better. Some games are more compatible now as well.
Games such as Final Fantasy Tactics are running twice as fast as the fastest interpreter we wrote (which was faster than the old dynarec ). For instance, the 3D cathedral scene runs at a steady 20 FPS. This is an actual framerate as we are recording the frametimes.
Things I did to improve performance:
- Fixed the clearing of the icache/dcache
- Went from 8 regs for dynamic caching to 10!
- Changed the way immediates are loaded, and how branching is done.
- Redid so much ugly code it's hard to explain.
Though I made this dynarec very basic it is functional and I can build with it. I still have a lot of work to do on it. I am actually working on it right now even. Unai and Exophase have been a great help!
I am about to add performance to games using 3D routines in the GTE. I also have a lot of other tricks and tweaks to do so I'll update as much as possible. Some hard to run games such as Wipeout XL and Wipeout 1 run at 12 to 15 FPS in-game. And Tactics Ogre runs at more than 40 FPS though I didnt test long enough to get through the annoying long intro scene. But it's still about twice as fast.
So good stuff. I'll test FF7 next since I know thats what I'll get asked for.
You may find the latest work in progress builds at: http://www.spookysoftsite.com/psx4gp2x/
Hi everyone,
I recently went back to the old psx4gp2x code and rewrote the dynarec and with Unai's new code plus my new dynarec things are much better. Some games are more compatible now as well.
Games such as Final Fantasy Tactics are running twice as fast as the fastest interpreter we wrote (which was faster than the old dynarec ). For instance, the 3D cathedral scene runs at a steady 20 FPS. This is an actual framerate as we are recording the frametimes.
Things I did to improve performance:
- Fixed the clearing of the icache/dcache
- Went from 8 regs for dynamic caching to 10!
- Changed the way immediates are loaded, and how branching is done.
- Redid so much ugly code it's hard to explain.
Though I made this dynarec very basic it is functional and I can build with it. I still have a lot of work to do on it. I am actually working on it right now even. Unai and Exophase have been a great help!
I am about to add performance to games using 3D routines in the GTE. I also have a lot of other tricks and tweaks to do so I'll update as much as possible. Some hard to run games such as Wipeout XL and Wipeout 1 run at 12 to 15 FPS in-game. And Tactics Ogre runs at more than 40 FPS though I didnt test long enough to get through the annoying long intro scene. But it's still about twice as fast.
So good stuff. I'll test FF7 next since I know thats what I'll get asked for.