Skip to content

Commodore 64

Commodore 64 icon Commodore 64 logo

Overview

The Commodore 64 is one of the best-selling home computers ever. Released in 1982, it paired a 1 MHz MOS 6510 CPU with the VIC-II graphics and SID sound chips, giving it advanced graphics, smooth scrolling and legendary audio. REG-Linux treats the platform as the c64 group and runs multiple VICE variants plus specialized cores for the C64-DTV and SuperCPU enhancements.

Technical specifications

  • CPU: MOS Technology 6510 at 1.023 MHz (PAL) / 0.985 MHz (NTSC)
  • Memory: 64 KB RAM plus 20 KB ROM (BASIC, KERNAL, character data)
  • Graphics: VIC-II chip with 320×200 resolution, 16 colors, hardware sprites and raster tricks
  • Sound: SID 6581/8580 with three oscillators and programmable filters

Supported ROM extensions

d64, d71, d81, crt, prg, tap, t64, m3u, zip, 7z, nib, g64

Quick reference

  • ROM folder: /userdata/roms/c64
  • Accepted formats: .d64, .d81, .crt, .prg, .tap, .t64, .m3u, .zip, .7z
  • ROM metadata: filename can include tags such as PAL, NTSC, JAP to hint the desired video mode
  • Emulators: libretro: VICE_X64 / VICE_X64SC, VICE: X64 / X64DTV / XSCPU64
  • BIOS: built-in with VICE; no extra files needed

ROM details

Programs (.prg)

PRG files load directly into memory. Most titles are “crunched” and require some time to unpack, which is visible as flickering borders. Simply LOAD and RUN when prompted, or rely on the emulator to auto-run.

Cartridges (.crt)

Cartridges range from small 8 KB ROMs to bank-switched EasyFlash images. In the standalone VICE builds, attach a cartridge via the [START] → Cartridge → Attach CRT image menu. In RetroArch, use Advanced Game Options → Cartridge to specify the image so it loads automatically.

Tapes (.tap, .t64)

Tape images reproducethe original loading process. Use the virtual tape controls ([Select] for fast forward/rewind) or the separate Tape menu in standalone VICE. Many .t64 files wrap multiple programs—select the desired entry from the emulator’s UI.

Disks (.d64, .d81)

Load disk images with the classic LOAD "*",8,1 / RUN. Some multi-disk games can be grouped in .zip or .m3u playlists; RetroArch’s Disc Control menu (Quick Menu -> Disc Control) lets you swap disks ([HOTKEY] + [R2]/[L2]). Creating .m3u entries with custom labels (DISK_FILE|DISK_LABEL) helps identify each disk.

Saves

Define save disks by adding a #SAVEDISK: line to your .m3u playlist. RetroArch stores them under save/ using the playlist name; each #SAVEDISK slot generates a separate .d64 file representing an emulated floppy.

Emulators

The default is libretro: VICE_X64, which integrates well with REG-Linux. For higher accuracy use VICE_X64SC or the standalone VICE builds (X64, X64DTV, XSCPU64).

RetroArch configuration

Standardized features: c64.videomode, c64.ratio, c64.smooth, c64.shaders, c64.pixel_perfect, c64.decoration, c64.game_translation.

ES setting name REG-Linux.conf_key Description => ES option key_value
GRAPHICS BACKEND c64.gfxbackend Select OpenGL (compatibility) or Vulkan (performance).
AUDIO LATENCY c64.audio_latency Raise to combat pops/crackling, lower to reduce lag.
THREADED VIDEO c64.video_threaded Offload video rendering; helps underpowered systems.

Core-specific options

libretro: VICE_X64 exposes per-model options such as c64.c64_model, c64.external_palette, c64.aspect_ratio, c64.zoom_mode_c64, c64.vice_joyport, c64.vice_joyport_type, c64.keyboard_pass_through. Use these to match a PAL/NTSC board, choose joystick ports, or enable virtual keyboard shortcuts.

Standalone VICE

The standalone VICE builds (X64, X64DTV, XSCPU64) expose additional features like accurate soundchip emulation, DTV-specific enhancements or SuperCPU acceleration. They are useful for edge cases but require manual configuration via the emulator’s menu. REG-Linux still surfaces the basic c64.noborder zoom toggle and other shared keys.

Video modes and border handling

Switch between PAL/NTSC modes and toggle the zoom (hide borders) using Advanced Options. Use PAL for European releases, NTSC for US/Japanese titles. Zoom (hide borders) will cut off extra graphics that developers used for status bars—turn it off if you need the full border. Custom palettes are also settable per system or per game.

Controls

Default mappings were updated in REG-Linux v33 for accessibility. The Retropad maps to joystick directions, fire, special keys (Shift, Run/Stop, Restore), disk swapping and the virtual keyboard.

c64 controller overlay

Special functions include [SELECT] for the virtual keyboard/status bar/fast forward, [L2]+[HOTKEY] and [R2]+[HOTKEY] for disk swapping, [L3] to swap joystick ports and [R3] to toggle the virtual keyboard. Use RetroArch’s Quick Menu or VICE’s input menu for further customization.

Troubleshooting

  • Games may assume PAL timing; switch to PAL and enable HI-RES ARTIFACTING in the core options if the picture looks wrong.
  • Some disks require selecting the right program manually via the emulator’s menu; refer to the manual for LOAD commands if the wrong file starts.
  • Multi-disk titles benefit from .m3u playlists and the Disc Control menu (Quick Menu -> Disc Control).
  • If a cartridge fails, set it as the default via VICE’s Cartridge menu or assign it through Advanced Game Options.
  • Consult the VICE documentation at https://vice-emu.sourceforge.io/vice_toc.html for deeper configuration details.