/jsemu

A list of emulators written in the JavaScript programming language

Emulators written in JavaScript

A list of emulators written in the JavaScript programming language.

This list started as a compilation of JavaScript emulators posted to Echo JS over the years. If you know about any missing emulators, please consider adding them to the collection: the source for this page is available on GitHub. Thank you in advance.

Acorn

Altair

Amstrad

Apple

Atari

Commodore

Data General

DEC

Nintendo

  • 1964js - JavaScript port of the 1964 N64 emulator for Windows
  • CycloaJS - JavaScript NES Emulator (Source)
  • em-fceux - an Emscripten port of FCEUX, an emulator of NES, Famicom, Famicom Disk System (FDS), and Dendy consoles. Demo site
  • GBA.js - Game Boy Advance in the Browser (Source)
  • IodineGBA - A GameBoy Advance emulator written entirely in JavaScript (Source)
  • gba.ninja - JavaScript port of VisualBoyAdvance-M, a GameBoy Advance emulator (Source)
  • JSNES - A JavaScript NES emulator (Source)
  • NESNES - JavaScript NES emulator, also available as a web component (Source)
  • Nezulator - A NES emulator in JavaScript
  • XNES - Experimental JavaScript Super Nintendo emulators (Source)
  • jsGB - A GameBoy emulator in JavaScript (Source)
  • jsGBC - GameBoy Color Emulator written in JavaScript (Source)
  • mupen64plus - A port of the popular Nintendo 64 emulator for the Web (Source)
  • n64js - An N64 emulator in JavaScript (Source)
  • pinky - A Rust based NES emulator ported to the web via WebAssembly (Source)

Robotron / VEB Mikroelektronik

Sega

Sinclair

Sony

  • PSeudo - JavaScript/WebGL/WebAudio browser based PLAYSTATION emulator (aka PSX) (needs boot ROM image, not supplied) (Source)

Tandy

Multi-system Emulators

  • JSMESS examples - The JavaScript MESS (Multi Emulator Super System) (Source) (Notes)
  • PCE - PC emulators in JavaScript (Atari ST, IBM PC 5150, Macintosh, RC759 Piccoline)
  • RetroArch - JavaScript port of RetroArch (bundles Gambatte (Gameboy), Genesis Plus GX, Handy (Lynx), Snes9x Next, VBA Next (GameBoy Advance), Tyrquake and FinalBurn Alpha)
  • RetroWeb - collection of Javascript emulators and boot media, including Apple-IIe (VisiCalc), Macintosh (System 1.0), Atari 1040ST, Commodore 64, Amiga 500 (Workbench 1.3), IBM PC Model 5150 (PC-DOS, CP/M-86, Cassette Basic), IBM PC XT (DOS, GEM 1.2, VisiCalc, Windows 1.01, 8088 Corruption demo), RC759 Piccoline (Eliza, Bil-simulation, Concurrent CP/M-86), TRS-80.
  • YAKC - Z1013, Z9001, KC85/2 family, Speccy, CPC, Acorn Atom, C64, with integrated debugging UI (source)
  • Tiny Emulators - based on the same chip- and system-emulator source code as YAKC, but as minimal WASM apps without fluff (source)

PC Emulators

  • Em-DOSBox - An Emscripten port of DOSBox (Demo)
  • js-dos - WebAssembly port of DOSBox (fork of Em-DOSBox with better js API) (Demo,Source)
  • JS/Linux - JavaScript PC emulator
  • JsDOSBox - JavaScript PC DOS emulator (Source)
  • PCjs - IBM PC Model 5150 emulator
  • Virtual x86 - An x86 emulator written in JavaScript (Source)
  • jemul8 - An object-oriented JavaScript x86 emulator for Node.js and the Browser (Source)
  • jsbochs - Bochs PC emulator for the Browser (Source)

Bare CPUs

Early machines

Calculator emulators

Microcode-level calculators

Workalike calculators

Miscellaneous

Adventure Game Engines

  • Emscripten ScummVM - Emscripten fork of the ScummVM engine (Source)
  • IFVMS - Infocom/Inform Web interpreter
  • Parchment - Infocom/Inform Web interpreter
  • ZZTJS - ZZT game engine in JavaScript
  • ngPAWS - Professional Adventure Writer (PAW) Web interpreter

See also (lists of JavaScript emulators elsewhere)

Additional Information

This resource collection is maintained by Frederic Cambus.

License

CC0

To the extent possible under law, Frederic Cambus has waived all copyright and related or neighboring rights to this work.