Skip to content

jankfactor/arculator

 
 

Repository files navigation

Arculator

Arculator is an Acorn Archimedes emulator originally written by Sarah Walker. It emulates the Acorn Archimedes series of computers, including models like the A3000, A3010, A3020, A4000, A5000, and more.

⚠️ This is a fork of the original project but using CMake instead of automake to assist with cross-platform development. It is currently heavily in progress! ⚠️

Building

Arculator uses CMake as its build system.

  • On Linux, dependencies are resolved from system packages by default (ARCULATOR_BUNDLE_DEPENDENCIES=OFF).
  • On Windows/macOS, dependencies are bundled from source by default (ARCULATOR_BUNDLE_DEPENDENCIES=ON).

Prerequisites

  • CMake 3.20 or later
  • A C/C++ compiler:
    • Linux/macOS: GCC or Clang
    • Windows: MSYS2 with MinGW64 or UCRT64 toolchain (MSVC is not supported)
  • Ninja (recommended) or Make

Quick Start

# Configure with default preset (Release build with Ninja)
cmake --preset default

# Build and install
cmake --build build --target install

The executable will be installed into an install in the root of this project, with the roms, and podules copied in.

Platform-Specific Build Guides

Available Presets

Preset Description
default Release build using Ninja generator
debug Debug build with symbols and debug logging
no-podules Build without podule plugins
msys2-mingw64 Build using MSYS2 MINGW64 toolchain (Windows)
msys2-ucrt64 Build using MSYS2 UCRT64 toolchain (Windows)

Build Options

Option Default Description
ARCULATOR_BUILD_PODULES ON Build expansion podule plugins
ARCULATOR_BUNDLE_DEPENDENCIES OFF on Linux, ON elsewhere Use bundled (CPM-fetched) dependencies instead of system libraries

Running

Before running Arculator, you'll need appropriate ROM files placed in the roms/ directory. See the roms/ subdirectories for details on which ROM files are expected.

License

See COPYING for license information.

About

Arculator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C 93.9%
  • C++ 4.4%
  • Other 1.7%