logoalt Hacker News

wren6991 • today at 4:19 PM • 4 replies • view on HN

> PSP games running in the browser without an emulator. The game's MIPS machine code is translated ahead of time into C++, compiled to WebAssembly, and linked against a small reimplementation of the PSP's operating system and graphics chip that draws with WebGL2.

Feels slightly pedantic to point this out, but this describes an emulation stack. A lot of emulators are already doing some kind of lift+JIT on the target's machine code (just not through WASM)


Replies

gzalo • today at 4:34 PM

Most people would say that Ahead-of-time (AOT) compilation or static recompilation is not considered traditional emulation.

➕ show 2 replies
Rohansi • today at 7:29 PM

That's almost what WINE does which is, apparently, not an emulator. Small reimplementation of Windows userspace and translates DirectX to Vulkan/OpenGL. So if I do x86 -> ARM binary translation AOT and run that with WINE, is it an emulator?

wvenable • today at 6:36 PM

It appears to me like an emulator where the binary is just compiled in based on the huge amount of code like this:

https://github.com/jessicanataliagta/PSPRecomp/blob/main/pro...

➕ show 1 reply
tra3 • today at 4:23 PM

I think of an emulator as a separate project/product typically. Perhaps that's what they are saying?

➕ show 1 reply