The title is a tiny bit misleading. Indeed all of those are JavaScript emulators, but not all of them were written in JS. At least one on the list (mupen64plus) is transpiled from C++ using the (amazing) emscripten.
Oh neat! I've been dabbling with a similar project for the TI Voyage 200... the Emscripten version isn't in the repo, but it's relatively straightforward to make work.
Intresting that SNES is missing from the nintendo list. There's a good bit of literature on the underlying implementation for SNES roms: https://github.com/bttf/snes_dev
(Full disclosure: I spent a little time accumulating aforementioned literature)
How many of them are proper, accurate emulators though (and not emscriptened ones like mupen64)? Parsing bytes and mapping them to instructions is easy, and I believe that's why most of them are for very simple machines. We're still very far away from having multiple PS1/N64 era that are running at a tolerable framerate.
Except 1964js, which works in a way that both amazes me and makes me feel dirty at the same time.
19 comments
[ 3.8 ms ] story [ 58.3 ms ] threadasm.js: http://floooh.github.io/virtualkc/index.html
WebAssembly: http://floooh.github.io/virtualkc/index_wasm.html
https://github.com/KnightOS/z80e
https://github.com/duskwuff/v200
(Full disclosure: I spent a little time accumulating aforementioned literature)
[1] http://tjwei.github.io/xnes/
https://blog.dantup.com/2016/06/dachip8js-my-csharp-chip8-in...
Except 1964js, which works in a way that both amazes me and makes me feel dirty at the same time.
https://github.com/fcambus/jsemu
fullscreen, "Unix-like virtual shell", u.a. ssh(!?); ping(ok) "-": no c&p, http://cb.vu/
think, there are some more Linux & unix Emulators in js? would be nice, find some in next comments. :-)
The latter one even has complete network support.