Next Generation Emulation banner

Comparison of PSX emulators and their accuracy

9.9K views 3 replies 4 participants last post by  Exophase  
#1 · (Edited)
Hi, this is more like a curiosity. For some time I tried to find what PlayStation emulators represent pixels accurately, because as I realized according to my testing game - Crash Bash - that it is all different.

For test I used certain image from in-game that is always same and static. First I tried Xebra, ePSXe, no$psx and MESS. What did I see? All the pixels where represented differently. To be sure which one is correct just like real PSX hardware I had to compare it with something trustworthy. I was too lazy to take out my real PSX so I used emulator of PSX on PSP - it is made by Sony so it must be accurate as it is written with all the hardware documentation.

Pixels on PSP screen are small but I had no problem to see that they are exactly the same with only one emulator that I tested - Xebra. But my curiosity was not completely satisfied - I took another PSX emulator that is considered to be very accurate, that is Mednafen (I used Mednafen core on Retroarch but it is the same). What did I see? Xebra and Mednafen represented pixels exactly the same so what some people write about most accurate PSX emulators being Xebra and Mednafen is true - at least in this aspects. But there are many examples to prove it. I also comapred their timing and it is also the same - only a tiny, nearly invisible difference but only because my processor is heating up too much when too such demanding emulators are running at the same time. It is also worth noting, that ePSXe can represent pixels very accurately but only with proper plugin used. The plugin name is "gpuBladeSoft" - the author stated it should have pixel geometry accurate and in fact it seems true. I compared it with Xebra (before comparing with Mednafen), and it was like 99% same as Xebra. Anyway it still doesnt make ePSXe accurate (it is well known anyway) as for example in Crash Bash there are some images (like when you press start button during gameplay) where you dont see anything. ePSXe, no$psx, PCSX Reloaded dont show there anything - only Xebra and Mednafen.

In attachment there is a comparision between Xebra and Mednafen. There is only one difference that I can see but it doesnt have anything to do with pixels accuracy. It is not about different characters nor the black bar at the upper part as it doesnt matter :) Have fun finding it.

It is very interesting that after so many years and so many attempts to write PSX emulator, only two are accurate - but still not being cycle accurate as it will take some time and a lot of processor power.
 

Attachments

#2 ·
Please do post for each test, the method and steps to reproduce it. That way, it might help anyone interested in correcting such inaccuracies.

Also, try and post screenshots of the other examples used for comparison. That way we can also see the result of each tested subject.
 
#4 ·
I can tell you that when I did the NEON-based rendering plugin for PCSX-reARMed back in 2011 I used framebuffer dumps captured from a PS1. My test set was about 29 dumps from 21 games, and I made sure the pixel output matched exactly. I didn't know of any emulators at the time that did this - Xebra looked close but was slightly different. I think this was still before Mednafen's PS1 support was public. The situation with other emulators is probably different now, that was kind of a long time ago. I know Mednafen's author was very interested in getting rendering correct.

In practice, this level of accuracy doesn't really mean anything for playing the games since it'd be really hard to notice the changes. But it's nice to have when developing (especially when optimizing) since it makes it a lot easier to do regression testing. Still, was kind of hard (at least for me) to get the internal precisions and stuff right...