emudore
emudore is a free, open-source Commodore 64 emulator written in C++11 with SDL2.
What emudore is
emudore is a free, open-source Commodore 64 emulator written in C++11 with SDL2. The project says it runs on Linux, Windows, macOS, and in a browser, where JavaScript and WebAssembly demos include one that starts in CBM BASIC and another that loads a Monopole PRG. It can load PRG files and type BASIC listings, though special keys are not supported for listings. The VIC-II implementation covers four of the five official graphics modes, as well as smooth scrolling, sprites, raster interrupts, and badlines. Screen refresh is synchronized to approximately 50 Hz for PAL. Debug builds on Linux and macOS support radare2 for reading and modifying emulator memory. The project is licensed under Apache 2.0. Compatibility has limits: undocumented MOS 6510 opcodes are unsupported, and some advanced games may fail because hardware features remain unimplemented. The project also cautions that graphics emulation is not pixel-exact, so some demo effects may look wrong. SID sound and VIC-1541 floppy drive support are listed as possible future work.
Good
- Runs on Linux, Windows, macOS, and in a browser.
- Loads PRG files and types BASIC listings.
- Implements four official VIC-II graphics modes.
- Debug builds on Linux and macOS support radare2.
Watch out
- Special keys are unsupported for BASIC listings.
- Undocumented MOS 6510 opcodes are unsupported.
- Some advanced games may fail due to incomplete hardware features.
- Emulation is not pixel-exact.
Who it suits
emudore may suit people interested in exploring Commodore 64 software on Linux, Windows, macOS, or in a browser. Its stated learning focus also makes it relevant to people curious about computer architecture, graphics, and C++.
Verdict
emudore provides browser and desktop access to a Commodore 64 emulator with several VIC-II graphics features. Its opcode, hardware, and visual-accuracy limits may affect compatibility with advanced software.
The facts
Each one read from emudore's own pages, with the date it was checked.
What it does
- Basic programs
- The BASIC ROM runs and most simple programs run without issues.checked 11 Oct 2026
- Debugger integration
- Debug builds on Linux and OSX support radare2 for reading and modifying memory.checked 4 Oct 2026
- Debug integration
- Linux and macOS debug builds support radare2, which can read and modify emulator memory.checked 11 Oct 2026
- Emulation limitations
- Undocumented MOS 6510 opcodes are not supported, and some advanced games may not work because hardware features are unimplemented.checked 11 Oct 2026
- Graphics
- Four of the five official VIC-II graphics modes are supported, along with smooth scrolling, sprites, raster interrupts, and badline emulation.checked 11 Oct 2026
- Intended audience
- The maker says the project was written to learn about computer architecture, graphics, and C++ while having fun.checked 11 Oct 2026
- Known limitations
- The README says illegal opcodes are unsupported and advanced games or demos may fail because hardware features are incomplete and emulation is not pixel-exact.checked 4 Oct 2026
- License
- The project is licensed under Apache 2.0.checked 11 Oct 2026
- PRG and BASIC files
- emudore can load PRG files and type BASIC listings, though special keys are not supported for BASIC listings.checked 11 Oct 2026
- Program loading
- It can load PRG files and type BASIC listings, though special keys are not supported yet.checked 4 Oct 2026
- Purpose
- emudore is a Commodore 64 emulator written from scratch using C++11 and SDL2.checked 11 Oct 2026
- Sound and disk support
- The maker lists SID sound and VIC-1541 floppy drive support as features they would like to work on later.checked 11 Oct 2026
- Supported systems
- The README says it builds and runs on Linux, Windows with Visual Studio, macOS, and in a browser.checked 11 Oct 2026
- Timing
- The emulator synchronizes its screen refresh to approximately 50 Hz (PAL) using vertical refresh synchronization.checked 4 Oct 2026
- Video features
- The VIC-II implementation supports four of five official graphics modes, plus smooth scrolling, sprites, raster interrupts, and badlines.checked 4 Oct 2026
- Visual accuracy
- The README cautions that emulation is not pixel-exact and some graphics effects, especially in demos, may be emulated poorly.checked 11 Oct 2026
Where it runs
- Browser builds
- The project links to browser demos that boot into CBM BASIC or load a Monopole PRG, including WebAssembly builds.checked 11 Oct 2026
- Platform support
- The project says it builds and runs on Linux, Windows, OSX, and in a browser; it may also work on SDL2-supported platforms with a C++11 compiler.checked 4 Oct 2026
Money
- Planned capabilities
- The README lists SID sound and VIC-1541 floppy drive support as features the author would like to work on.checked 4 Oct 2026
Alternatives to emudore
- 1
TRX64
Free planOpen sourceWebAPILinuxmacOS7.5Free plan - 2
Frodo
Free planOpen sourceAndroidLinuxmacOSSelf-hosted7.4Free plan - 3
Avidemux
Free planOpen sourceWebLinuxmacOSWindows7.3Free plan - 4
VICE
Free planAndroidLinuxmacOSWindows7.1Free plan - 5
Power64
macOS6.7$30 one-time - 6
C64 Forever
Free planWindows6.6$19.95 one-time
