COMMODORE 64 AMIGA EMULATOR
C-swifty4
C-swifty4 is a Swift-written, cycle-aware Commodore 64 emulator targeting macOS, iOS and tvOS. It is a personal/educational project in progress and requires the user to provide their own C64 ROM images and program files to build and run.

WHY IT MATTERS
Why this project exists
Author wanted to learn Swift and build an emulator from scratch; the repository is a side project and explicitly described as incomplete and experimental.
BEST FOR
What it's good for
Learning and research: studying a Swift implementation of many C64 subsystems (CPU, video, disk image handling) and building the project in Xcode for macOS/iOS/tvOS. It can boot BASIC and run some programs and disk images for testing and development purposes.
The people behind C-swifty4
History and status
The repository is hosted on GitHub and contains source for separate Xcode targets/folders for macOS, iOS and tvOS. The README states the project is a work-in-progress and 'in no way near complete.' The project implements CPU, video and disk image loading features but lacks sound, full input support and other functionality; the README lists what works and what doesn't. The codebase includes ROM, Programs and platform-specific targets and is released under an MIT license. Users must supply their own official C64 ROM dumps and program files to use the emulator. The project appears to be a personal/educational effort rather than a finished, maintained emulator suitable for complete game play.
What C-swifty4 supports
- macOS (Xcode)
- iOS (device/simulator via Xcode)
- tvOS (via Xcode)
- .prg and .p00 program files
- .d64 disk images (standard)
Download and availability
OFFICIAL DOWNLOADS
Get C-swifty4
Official source and any release assets are hosted on GitHub. Clone the repository or fetch releases from the repository's Releases page. Note: the project requires building in Xcode and does not include C64 ROM images or commercial game files.
Get C-swifty4 ↗DOCUMENTATION
Official documentation
Read the official configuration, compatibility, and troubleshooting material before changing advanced options.
Read official documentation ↗C-swifty4 setup guide
Setup note: Practical setup requires Xcode and user-supplied C64 ROM dumps. Follow these exact steps to build and run a basic environment for testing and development.
- 1) Get the source: Clone or download the repository from the project's GitHub page (the repository contains Xcode projects and platform folders for macOS, iOS and tvOS).
- 2) Install Xcode / Swift compatibility: The README states the project requires Swift 4 and Xcode 9 or higher. Use a compatible Xcode toolchain that supports Swift 4 or newer. Open the provided .xcodeproj in Xcode.
- 3) Provide C64 ROM files: You must supply your own C64 ROM dumps. Replace the files in the repository ROM folder with your own images. The README specifies sizes: KERNAL and BASIC must be 8192 bytes, CHARGEN 4096 bytes, and the 1541 ROM 16384 bytes. The project will not run without correct ROM images.
- 4) Put programs/disk images in the expected folders: For the iOS target the README notes the iOS build looks for program files in the Programs folder. Supported file formats listed in the README include .prg, .p00 (those are dumped directly into memory), .txt (typed in as text), and standard .d64 disk images.
- 5) Select target and build: Open the Xcode project, choose the desired scheme (macOS / iOS / tvOS) and build/run. The README warns the emulator currently runs as fast as it can (no FPS limiting implemented) so expect unthrottled execution without frame limiting.
- 6) Known missing features and debugging: According to the README, sound is not implemented, Joystick 1 is not implemented, tape loading is not implemented, joystick 2 and keyboard support are partial, and many opcodes may be missing or untested. Expect limited compatibility for playing commercial games. Use the Tests.md (if present) and repository source to inspect subsystems and add features.
- 7) Licensing and redistribution: The repository includes an MIT license. Do not include or redistribute commercial ROMs, BIOS or game files with any distributed builds — the project README explicitly instructs users to provide their own ROM dumps.
Software reminder: This project requires Xcode and a compatible Swift toolchain. You must supply legally-obtained C64 ROM images and any game/software you want to run; those are not provided with the source.
Sources and further reading
Detailed guides and tutorials
Explore step-by-step guides for C-swifty4 as they are published.
Retro Replay Retro Gaming History, Reviews & Emulation
