Skip to content
SPECIFICTION
Get listed

NES Emulator + 6502 Studio

github.com

WebLinuxSelf-hosted
Visit github.com
Spec score 7.1 #18 of 26 in NES Emulators

Spec sheet

Purpose
NES Emulator + 6502 Studio is a C++ Nintendo Entertainment System emulator compiled to WebAssembly with a browser debugger called NES Studio.Read 9 Oct 2026 · github.com
Intended users
The project describes its headless library, Python environment and live-agent workflow as suitable for scripting, training agents, development and research.Read 4 Oct 2026 · github.com
License
The repository states that the software is licensed under GPL v3.Read 9 Oct 2026 · github.com
Maker
The GitHub profile identifies the maker as Maxwell Knight, a fullstack engineer based in Israel.Read 9 Oct 2026 · github.com
Agent and Python tools
The project provides a C-ABI shared library, a Python package with a Gymnasium-style Super Mario Bros environment, and an optional Gymnasium adapter for stable-baselines3.Read 9 Oct 2026 · github.com
Agent integration
NES Studio can replay .nesmovie recordings and can show live agent play through a Python streaming server; the live-agent button is hidden in production builds unless a backend URL is configured.Read 4 Oct 2026 · github.com
Build requirements
The README recommends Docker, or lists a C++17 compiler, CMake 3.14 or newer, and GoogleTest for a native build.Read 9 Oct 2026 · github.com
Cartridge support
The emulator supports NROM, MMC1, UxROM, CNROM and MMC3 mappers.Read 4 Oct 2026 · github.com
CPU
The 6502 core implements all 151 official opcodes and documented illegal opcodes, and the README says it passes nestest and blargg instruction tests.Read 9 Oct 2026 · github.com
Debugger
NES Studio includes stepping, running, breakpoints, live disassembly, a memory editor, CPU and PPU state displays, pattern, nametable and OAM viewers, and full-screen Play mode.Read 9 Oct 2026 · github.com
Game compatibility
The README describes Super Mario Bros. as fully playable through level 1-1 and Super Mario Bros. 3 as booting with its attract demo playing.Read 9 Oct 2026 · github.com
Graphics and sound
The PPU supports backgrounds, sprites, OAM and DMA, scrolling, sprite-0 hit, and four mirroring modes; the APU has pulse, triangle, and noise channels wired to WebAudio.Read 9 Oct 2026 · github.com
Headless and deterministic use
A C-ABI shared library exposes independent NES instances with deterministic stepping, and the project includes a Python package with a Gymnasium-style Super Mario Bros environment.Read 4 Oct 2026 · github.com
Known limitation
The PPU renders a whole scanline at a time, so the ppu_vbl_nmi dot-timing conformance ROM is not yet passing.Read 9 Oct 2026 · github.com
Live agent feature
Live agent streaming requires a Python server on the user's machine, and the Spawn Agent button is hidden in production builds unless a backend URL is configured.Read 9 Oct 2026 · github.com
Mapper support
The emulator supports NROM, MMC1, UxROM, CNROM, and MMC3 with scanline IRQ.Read 9 Oct 2026 · github.com
Security and support
The opened project page provides no security or compliance claims and no dedicated support terms.Read 4 Oct 2026 · github.com
Setup
The project documents Docker and front-end setup using pnpm and Node 20+, plus a native build requiring a C++17 compiler, CMake 3.14+ and GoogleTest.Read 4 Oct 2026 · github.com
Testing
The project reports 32 native gtest tests and 211 web Vitest tests, with conformance test ROMs fetched on demand and run in CI.Read 4 Oct 2026 · github.com

Where Specifiction places it

Alternatives to NES Emulator + 6502 StudioAll alternatives →