Toad King wrote:Adding GLES support will not help SNES emulation, SNES emulation is just too intense for the rpi's relatively weak CPU. Frameskipping can help but then you get a stuttering game which a lot of people (myself included) can't stand.
Please let me politely dissent. SNES emulation can be divided in 3 parts (not talking authoritatively here, just by my knowledge):
- gameplay + graphical frames generation
- DSP sound emulation
- cartridge-specific chips emulation
The order is least-to-most difficult to emulate.
In regards to (1), adding GLES
will add - in my opinion - a substantial improvement over any other indirect rendering. However (1) is not even the problem here..I am quite sure it's (2) draining the CPU.
I will ignore (3) for now for simplicity. (2) will need some hacks, so I expect the end result to be playable but with sub-optimal audio.
Toad King wrote:Yes, emulating a 20-year old system is too much for the Rpi. That's what you get with an old ARM11 CPU. That added on top of the fact that the SNES is very complicated and difficult to emulate, plus with almost no work done in ARM optimization for SNES emulators, and the ones with work done are either closed-source forks of SNES9x (which is against its license I'm pretty sure) or open-source but the ARM optimizations break compatibility too much and both still depend on frameskipping to get full speed on Pi-level hardware anyway.
Still, I do not agree with you fully. We are not talking about BSNES-level emulation (that is: best 1-to-1 emulation), that has been proven to need a 3 GhZ processor at least. Here I'm talking about the kind of emulation that I could enjoy with ZSNES on a 500Mhz x86 (yes, I know, ZSNES is highly optimized).
So yes, something will be lost, but I will not give up on this idea.
Which closed-source forks are you referring to? Can you name some, just for curiosity?