Need for high-level emulation


Eridger

Active Member
Joined
Oct 25, 2010
Messages
532
I was reading a topic on the gp32x forums about a new psx emulator being released (link: http://www.gp32x.de/board/index.php?/topic/57973-pcsx-rearmed-merry-psx-mas/ ) and the users there started mentioning the use of HLE in that particular emulator. I looked up some information about different types of emulation and am wondering why HLE is being used in any emulator on the Pandora.


From what I've read, this type of emulation is very hard to preform. Sure, it's incredibly efficient, but compatibility is pretty limited from what I've read, and any programmer willing to make this type of emulator would need to spend an awful lot of time coding to get any decent level of compatibility out of the program.


Do other emulators for the Pandora do HLE? If they do, does this explain why compatibility for the more intensive emulators is so low? I honestly don't know of any other emulators that do this, and I'm assuming it's because HLE so hard to code. Is this true?
 
Last edited by a moderator:
From what I've read, this type of emulation is very hard to preform. Sure, it's incredibly efficient, but compatibility is pretty limited from what I've read, and any programmer willing to make this type of emulator would need to spend an awful lot of time coding to get any decent level of compatibility out of the program.

Don't assume that generalities in emulator descriptions at all apply to a specific emulator.


Some emulators are only possible with reasonable speed when using HLE.


HLE is not a precursor for a failed emulator nor is it an approach that can be used in all cases.


No one is going to HLE a NES or a SNES.


HLE is more suited to N64 and the like (or take JayFoxRox's PSP emulator, that could HLE a lot as well.) Older systems do things like self-modify code, and other assembly tricks. Newer systems tend to be written using SDKs and a higher level language like C, so HLE is possible.

Do other emulators for the Pandora do HLE? If they do, does this explain why compatibility for the more intensive emulators is so low? I honestly don't know of any other emulators that do this, and I'm assuming it's because HLE so hard to code. Is this true?
You need to go into more detail over which emulators you're talking about, what kind of compatibility you're expecting, things like that. A general question is just going to get a general answer.


A short answer to your question about HLE being the culprit is almost definitely "no". HLE doesn't necessarily need to be harder to code than low level emulation. It's just that for some systems it's impossible or not worth the effort. But for the systems where HLE can be utilized, it is most likely a reasonable approach.
 
It's just used for BIOS emulation. The reason it's there is so you don't need a BIOS image to use the emulator, not to make it more efficient. It's optional - you can still use a BIOS in cases where there are compatibility issues with the emulation. But since it's just limited to emulating the functionality on a single ROM it isn't akin to the kind of undertaking you're thinking of. That's not to say PS1's BIOS functionality isn't fairly substantial, though.
 
Back
Top