Holy butts. Porting PCSX2 will be quite an undertaking. PCSX2 is one of the most x86 dependent abominations I've ever looked at.
So the first step would be abstracting away as much x86 mess as possible so you can build the core project without an sort of x86 dependency.
Dolphin has a "Generic" build path which strips away anything host specific, so it'll build/run on any platform as long as it's little endian and at least 32bit.
After the year or two of doing that work and getting the code upstreamed, now is when you'll have "real" work to do.
The dynamic recompiler isn't "ported" to ARM, I had to generate a new one with some basic ideas taken from the existing JIT64. You'll have to do the same thing with PCSX2's. Of course the first step would be just getting their interpreter running on a ARM host.
CPU emulation is of course only one step of the problem, GPU emulation is another large bit that will have to be worked out. I haven't really looked in to what the minimum requirements of PCSX2's OpenGL renderer is, but I'm expecting it to use fairly new features, so it'll probably also require a OpenGL ES 3.0 GPU to use it correctly.
Seeing as how their OpenGL renderer was also initially written by ZeroFrog, I would be inclined to think that they are using Nvidia CG still, which would need to be stripped out of their code base and replaced with GLSL.
It'll be a long and painful project, just like Dolphin Mobile is.
To make your life easier in the porting process to ARM, I'd recommend getting a ARM development board that supports OpenGL ES 3.0 and runs Linux. HardKernel should be releasing one in a month or two that does and is a 8 core machine so compiling won't take decades.
So the first step would be abstracting away as much x86 mess as possible so you can build the core project without an sort of x86 dependency.
Dolphin has a "Generic" build path which strips away anything host specific, so it'll build/run on any platform as long as it's little endian and at least 32bit.
After the year or two of doing that work and getting the code upstreamed, now is when you'll have "real" work to do.
The dynamic recompiler isn't "ported" to ARM, I had to generate a new one with some basic ideas taken from the existing JIT64. You'll have to do the same thing with PCSX2's. Of course the first step would be just getting their interpreter running on a ARM host.
CPU emulation is of course only one step of the problem, GPU emulation is another large bit that will have to be worked out. I haven't really looked in to what the minimum requirements of PCSX2's OpenGL renderer is, but I'm expecting it to use fairly new features, so it'll probably also require a OpenGL ES 3.0 GPU to use it correctly.
Seeing as how their OpenGL renderer was also initially written by ZeroFrog, I would be inclined to think that they are using Nvidia CG still, which would need to be stripped out of their code base and replaced with GLSL.
It'll be a long and painful project, just like Dolphin Mobile is.
To make your life easier in the porting process to ARM, I'd recommend getting a ARM development board that supports OpenGL ES 3.0 and runs Linux. HardKernel should be releasing one in a month or two that does and is a 8 core machine so compiling won't take decades.
