Home - cressie176/Load64 GitHub Wiki

LoadC64 Wiki

Welcome to the LoadC64 wiki. LoadC64 is a C64 game launcher and emulator frontend that simplifies controller configuration, game management, and VICE emulator integration.

What is LoadC64?

LoadC64 addresses the complexity of bridging modern gaming controllers with C64 emulation. It provides:

  • Stable controller configuration across reconnections and system restarts
  • Flexible game management with support for multi-disk games and snapshots
  • Reusable configuration templates through controller families and launch profiles
  • Predictable VICE integration with automatic VJM file generation and argument merging

Getting Started

  1. LoadC64 Configuration - Configure VICE binaries and data directories
  2. Controller Families - Define reusable templates for controller brands or series
  3. Controllers - Set up specific controller devices
  4. Controller Controls - Button and axis mappings for controller families and controllers
  5. Games - Add and configure games in your library

Core Concepts

Configuration Architecture

LoadC64 uses a layered architecture to separate concerns:

  • Layer 1: Controller Hardware - Physical buttons and controls
  • Layer 2: OS / Driver - Device GUIDs, indices, and event streams
  • Layer 3: LoadC64 - Canonical controls and game models
  • Layer 4: Emulator Integration - VJM files and VICE command line arguments

This separation makes controller mappings predictable, portable, and maintainable.

Game Features

  • Systems - Supported Commodore platforms and VICE binaries
  • Games - Game library entries with metadata, media, and launch configuration
  • ROMs - ROM sets and multi-disk support with runtime swapping
  • Media - Screenshots and game artwork
  • Snapshots - Quickstart and manual snapshots

Controls & Configuration

  • Game Controls - Named inputs a game exposes for controller mapping, including per-player controls
  • Controller Control Assignments - Physical controller button bindings for game and player controls
  • Profiles - Reusable launch configuration shared across games
  • Launch Configuration - Per-game emulator settings, controller assignments, and VICE arguments
  • VICE Arguments - VICE command line arguments defined on profiles and launch configurations
  • Key Mappings - Host keyboard key remappings for profiles and launch configurations
  • Environment Variables - OS environment variables set when launching VICE

External Data

  • Catalogues - Links to third party game catalogues such as GameBase64
  • Session - Runtime game state and configuration
  • State - Persistent application state across launches

Appendix