Skip to content
yapesdl

yapesdl

COMMODORE 64 AMIGA EMULATOR

yapesdl

YapeSDL is an open-source, SDL-based multiplatform emulator for several 8‑bit Commodore home computers (Plus/4, C16, VIC‑20 and Commodore 64 support is present in the repository). It is a desktop-focused native emulator with source available on GitHub and prebuilt releases published on that repository's Releases page.

commodore 64 amigaPRIMARY SYSTEM
History documentedPROJECT BEGAN
Open sourcePROJECT MODEL

WHY IT MATTERS

Why consider YapeSDL?

YapeSDL is a compact, native C++ emulator that brings the long-running YAPE codebase to SDL2 and a variety of host platforms. It exposes many low-level device files in its source tree (CPU, video, audio, IEC/drive, tape and disk code) and includes project files for Visual Studio, Xcode and plain Makefile builds, so it is useful for users who want a reasonably faithful, hackable emulator with cross‑platform build options.

BEST FOR

Best use cases

– Running Commodore Plus/4 and C16 software on modern desktops where a small, source‑friendly emulator is preferred. – Developers or retro‑enthusiasts wanting to build or modify an emulator (the repo contains the core device implementations). – Users who want a lightweight SDL2 front-end alternative to larger projects (for experimentation or platform ports).

The Secret of Monkey Island gameplay on Amiga
Gameplay from The Secret of Monkey Island on Amiga.

The people behind yapesdl

History & status

YapeSDL is the SDL2/multiplatform continuation of the YAPE family of emulators. The yapesdl repository on GitHub contains many years of changes (the repository shows a multi‑hundred commit history and multiple platform project files). The project is actively hosted on GitHub with releases published there; the source tree includes implementations for CPU, video (VIC/TED), sound chips and multiple I/O devices. I could not find an authoritative single founding year in the repository metadata available during this review, so the project history is best explored via the repository commit log and Releases page for exact dates and authorship details. Current activity and latest release information should be checked on the repository's Releases page before use.

What yapesdl supports

  • Commodore Plus/4
  • Commodore 16
  • Commodore 64 (code present in repo)
  • VIC‑20

Download and availability

OFFICIAL DOWNLOADS

Get yapesdl

Official downloads and prebuilt packages are published on the project's GitHub Releases page. Source code and build instructions live in the repository.

Get yapesdl ↗

DOCUMENTATION

Official documentation

Read the official configuration, compatibility, and troubleshooting material before changing advanced options.

Read official documentation ↗
Broken or missing download? Emulator projects move and official links sometimes change. Please contact Retro Replay so the source can be verified and updated.

yapesdl setup guide

Setup note: Practical setup notes and a build/run checklist for YapeSDL. This guide assumes you will build from source; prebuilt binaries (when available) are on the GitHub Releases page and can be used instead to skip the build steps.

  1. 1) Get the source or a release: Visit the project's GitHub repository to either download a source snapshot or grab a prebuilt archive from Releases. If you prefer the latest development head, clone the repository with git clone https://github.com/calmopyrin/yapesdl.git.
  2. 2) Install dependencies: YapeSDL is written in C++ and uses SDL2. On Unix-like systems install SDL2 development packages (for example: libsdl2-dev on Debian/Ubuntu), plus a standard C++ toolchain and make. On Windows use Visual Studio (project files for VS2010/VS14 are present in the repository) or build with MinGW/MSYS if you prefer. For macOS the repository contains Xcode project files. Confirm any additional libraries in the Makefile or project files (audio or optional OpenGL code may require extra dev packages).
  3. 3) Build from source: Unix/Linux: open a terminal in the repository root and run make (the repo provides a Makefile). Windows: open the supplied Visual Studio solution that matches your Visual Studio version and build. macOS: open the Xcode project (if using Xcode) or use make with compatible toolchain and SDL2 installed. The repository contains multiple project files and a Makefile — consult the top‑level Makefile and README.SDL file in the source tree for build targets and flags.
  4. 4) Prepare media (ROMs, disk/tape images): YapeSDL expects computer ROMs and user software images in common Commodore formats (PRG, D64, T64, TAP and similar). The project does not include commercial game or firmware ROMs; you must provide any required system ROMs or game images yourself. Place your images in a folder you will point the emulator to or use the emulator's command‑line / interface options to open images. The repository contains files named like c64rom.h and vic20rom.h indicating the emulator's ROM handling code, but do not assume the project bundles redistributable firmware.
  5. 5) Running the emulator: Start the built binary (or a downloaded release binary). The emulator exposes options and an interface file set in the source (look for README.SDL and the Makefile for command‑line options). Use the emulator UI or command line to load PRG or disk images. For hardware peripherals (floppy/tape) load appropriate image files through the emulator's drive/tape controls.
  6. 6) Controls, configuration and save states: The repository includes code for keyboard mapping and save states. Check the README.SDL and any README or Changes files in the repo for the exact key mappings, how to create and restore save states, and any platform‑specific configuration files. On many builds SDL key mapping and joystick settings can be adjusted at runtime or via configuration files if provided.
  7. 7) Troubleshooting and tips: If the build fails, confirm SDL2 development headers are installed and the compiler toolchain matches the project files you selected (Makefile vs Visual Studio vs Xcode). If sound or video problems occur try alternate audio backends or run with minimal options. For platform packaging look at the Releases page to see if community builds exist for your OS.

Software reminder: YapeSDL does not include commercial game ROMs, BIOS or firmware. Provide your own legal copies of any required system ROMs or game images.

Sources and further reading

Detailed guides and tutorials

Explore step-by-step guides for yapesdl as they are published.