Skip to content

X65/emu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

15e34c4 · Feb 24, 2025
Feb 5, 2025
Feb 8, 2025
Jan 29, 2025
Feb 20, 2025
Feb 24, 2025
Feb 24, 2025
Feb 8, 2025
Feb 14, 2025
Feb 19, 2025
Feb 6, 2025
Feb 23, 2025
Feb 5, 2025
Feb 5, 2025
Feb 5, 2025
Oct 14, 2024

Repository files navigation

X65 emulator

This is Emu Emu The X65 Computer Emulator.

Based on chips emulators by Andre Weissflog.

The USP of the chip emulators is that they communicate with the outside world through a 'pin bit mask': A 'tick' function takes an uint64_t as input where the bits represent the chip's in/out pins, the tick function inspects the pin bits, computes one tick, and returns a (potentially modified) pin bit mask.

A complete emulated computer then more or less just wires those chip emulators together just like on a breadboard.

This emulator started as a hard fork of C64 emulator example and it shows in places - it is still a work-in-progress. Machine is being gradually transitioned to X65 emulator, by replacing chips modules and "rewiring" the system shell.

Dependencies

Fedora:

dnf install libX11-devel libXi-devel libXcursor-devel mesa-libEGL-devel alsa-lib-devel

Ubuntu:

apt install libx11-dev libxi-dev libxcursor-dev libegl1-mesa-dev libasound2-dev

Build

CMake on multiple platforms

Build using CMake and a modern C/C++ compiler.

WASM

Install Emscripten toolchain. Next, run the following commands:

mkdir wasm
cd wasm
emcmake cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build .