- Rust 100%
- Nix <1%
DIRT-16 #
DIRT-16 (Dynamic Instruction and Register Toolkit - 16 bit) is a 16-bit fantasy computer for recreational computing and retro-inspired game development. It uses the LOAM (Logic Operations And Mechanics) ISA, which has been designed for this project.
The backend, machine and frontend are rust crates: the backend implements the LOAM CPU (pure processor, memory goes through a Bus trait), the machine crate is the DIRT-16 computer itself (RAM, devices, the bus between CPU and chipset), and the frontend is the interactive shell (screen, input, cartridges). The programs in ./toolchain are (at least intended to eventually be) programs that run on the DIRT-16 itself.
The spec is designed to be emulated as opposed to run on hardware, though part of the design philosophy is that nothing should be out of the blue for a prospective FPGA implementation.
Project Goals #
- 16-bit CPU, 24-bit address space
- 32MHz CPU clock
- Emulator that runs on binaries
- Provides OS with file system and shell
- Provides assembler and compiler for developing on the OS
- Capable of graphics and sound (rudimentary 3d software rendering if possible)
- Frontend that emulates screen and data cartridge interface