Clearing some confusion about ARK: PSX games

January 13, 2013

One of the biggest questions that users have surrounding ARK is compatibility with PSX games. In this post I’ll explain why psx doesn’t work natively on the vita, and how ARK managed to make it work.

First of all, we must know why PSX games won’t work natively, unlike ISOs or Homebrews.
This due to the fact that the PSP used it’s second processor, the Media Engine, to emulate PSX sound, effectively taking some load off the processor and keeping a decent framerate. The problem we are facing on the Vita is the lack of Media Engine, the Vita does not emulate the Media Engine.

So when a PSX game tries to run, it calls the Media Engine functions, but Media Engine doesn’t exists, so the functions don’t either, causing a crash. But, if PSX games crash because of no sound, how are able to make it work? the answer lies in hacking.
In ARK, Coldbird managed to hack POPS to make it accept custom sound plugins (if you have ever used an emulator, you’ll know what a plugin is). For this version of ARK, Coldbird simply injected a dummy sound plugin, meaning there will be no sound, but the game won’t crash cause the dummy plugin will return a generic ok signal, even if it has done absolutely nothing.

Ok so the first step is done, we are able to get PSX games running without crashes, but there is no sound, and we can’t make sound working cause there is no ME, which means to get sound working a plugin must be coded and it must be ran by the CPU.
The only open source sound plugin that came to Coldbird’s mind was PEOPS, so he got to work on it. Did he get any sound at all coming out of PSX games? I’ll let this video answer the question:

So lets sum this up:
– PSX compatibility in ARK should be very good, close to PSp compatibility, but without any sound.
– A port of PEOPS was being worked on (and made awesome progress), but it stopped because Coldbird left.
I hope this solves your confusion about PSX games in ARK (and the vita in general).

Tweet this!Tweet this!

Previous post:

Next post: