EVERYTHING XIAOMI
Get listed

minimal64

minimal64 is a plain C emulator for Commodore 64 programs that avoid the Kernal, BASIC, and Character ROMs.

Place
#20 of 31
Score
5.6
minimal64's website

What minimal64 is

minimal64 is a plain C emulator for Commodore 64 programs that avoid the Kernal, BASIC, and Character ROMs. The project is aimed at running new software rather than the C64 back catalog, with cycle accuracy listed as a goal. It supports PRG files and selected CRT cartridge formats: standard 8KB and 16KB, Ocean Type 1, C64GS, and Magic Desk. A web build provides JavaScript and WebAssembly files for embedding in an HTML document, and JavaScript wrappers are shown as an API example. The emulator includes a 252-byte custom Kernal, while its included BASIC and Character ROM banks contain no data; functions allow user-supplied ROMs to be loaded. C64 colors use settable RGB values rather than PAL/NTSC color encoding or CRT effects. Datasette, disk drives, the user port, and parallel port are not emulated. Programs relying on the custom Kernal will not run on real C64 hardware. The project aims for a 90 KB JavaScript build, or 36 KB gzipped, and is published under GPL-2.0 by nopsta.

Good

  • Plain C implementation with web build
  • Supports PRG and listed CRT formats
  • User-supplied ROM loading functions
  • Cycle accuracy is a stated aim
  • GPL-2.0 open source

Watch out

  • Not aimed at the C64 back catalog
  • Several hardware devices are not emulated
  • Custom-Kernal programs will not run on real C64s
  • No PAL/NTSC or CRT effects

Who it suits

It suits developers building or embedding focused C64 software in web projects. It is intended for new programs that fit its supported formats and emulation boundaries.

Verdict

minimal64 is a compact emulator for selected C64 software, especially web-integrated projects. Its format support and custom Kernal are defined clearly, but compatibility is limited by omitted hardware and ROM behavior.

The facts

Each one read from minimal64's own pages, with the date it was checked.

What it does

API
The README points to example/m64-wrappers.js for an API.checked 11 Oct 2026
Audience
The README says that if a PRG or CRT runs on minimal64, it should also run on real C64 hardware or C64 emulators.checked 11 Oct 2026
Color
It uses RGB values for the C64's 16 colors and provides functions to set them; PAL/NTSC color encoding and CRT effects are not emulated.checked 11 Oct 2026
Compatibility caveat
Programs that rely on minimal64's custom Kernal will not run on real C64 hardware.checked 4 Oct 2026
Custom Kernal
minimal64 includes a 252-byte custom Kernal and does not include BASIC or Character ROM data.checked 4 Oct 2026
Cycle accuracy
Cycle accuracy is listed as an aim of the project.checked 4 Oct 2026
Emulation limits
Datasette, disk drives, analog color encoding, CRT effects, the user port and parallel port are not emulated.checked 4 Oct 2026
File formats
It supports PRG files and standard 8 KB/16 KB, Ocean Type 1, C64GS and Magic Desk cartridge formats.checked 11 Oct 2026
Hardware limits
Datasette, disk drives, the user port and parallel port are not emulated, and cartridge support is limited to listed formats.checked 11 Oct 2026
Implementation
The emulator is written in plain C and has a custom 252-byte Kernal.checked 11 Oct 2026
Intended use
The project is intended to run new software rather than the C64 software back catalog.checked 11 Oct 2026
License
The repository is published under the GPL-2.0 license.checked 11 Oct 2026
License and author
The repository identifies nopsta as the author and lists a GPL-2.0 license.checked 4 Oct 2026
Program formats
The emulator supports PRG files and selected CRT cartridge formats, including standard 8KB and 16KB cartridges, Ocean Type 1, C64GS and Magic Desk.checked 4 Oct 2026
Purpose
minimal64 is a small Commodore 64 emulator for programs that do not use the Kernal, BASIC or Character ROMs.checked 11 Oct 2026
ROMs
The emulator can load user-supplied Kernal, BASIC and Character ROMs; the included BASIC and Character ROM banks contain no data.checked 11 Oct 2026
Size aim
The project aims to compile to 90 KB of JavaScript, or 36 KB gzipped.checked 11 Oct 2026
Timing
Cycle accuracy is one of the project's stated aims.checked 11 Oct 2026
User-supplied ROMs
The project provides functions to load user-supplied Kernal, BASIC and Character ROMs.checked 4 Oct 2026
Web build
The build includes JavaScript and WebAssembly files that can be used in an HTML document.checked 4 Oct 2026

Where it runs

Browser example
The repository describes a simple web page with file controls for loading PRG and CRT files.checked 11 Oct 2026

Alternatives to minimal64

All alternatives
  1. 1

    TRX64

    Free planOpen sourceWebAPILinuxmacOS
    7.5Free plan
  2. 2

    Frodo

    Free planOpen sourceAndroidLinuxmacOSSelf-hosted
    7.4Free plan
  3. 3

    Avidemux

    Free planOpen sourceWebLinuxmacOSWindows
    7.3Free plan
  4. 4

    VICE

    Free planAndroidLinuxmacOSWindows
    7.1Free plan
  5. 5

    Power64

    macOS
    6.7$30 one-time
  6. 6

    C64 Forever

    Free planWindows
    6.6$19.95 one-time