Embedded-graphics
display drivers for retro computers from Commodore, Atari, Nintendo etc.
This can be used to run embedded graphics on very old hardware and access
geometric shapes, large fonts etc.
The screenshot below shows an example running on the
Commodore 64 from 1982.
- Commodore 64:
- Simple PETSCII color display driver (40 x 25 character "pixels")
- VIC-II color palette with
const
conversion from/toembedded-graphics
colors - Bitmapped display driver
The project requires rust-mos and a docker image is available: mrkits/rust-mos. See also the llvm-mos wiki.
The easiest way is to use the provided .devcontainer.json
configuration for Visual Studio Code.
Before starting up VSC, you may want to edit .devcontainer.json
to point to a recent, tagged image of mrkits/rust-mos
.
In particular, if you're on an ARM architecture, e.g. Apple Silicon, make sure to use an image compiled for
linux/arm64
as emulating x86 in Docker is painfully slow.
- Install and start Docker
- Configure Visual Studio Code with the Remote - Containers extension:
When asked, re-open in Dev container.
cd retro-display/ code --install-extension ms-vscode-remote.remote-containers code .
- Inside a VSC terminal, build with:
cargo build --release --target mos-c64-none --example demo
- Find the binary in
target/
and run in an emulator or transfer to real hardware.