A simple operating system for the Clockwork PicoCalc, written in Rust.
This project provides a minimal kernel, ABI, and user-space applications to experiment with OS development on constrained hardware.
Basic synchronous applications are working great.
Current focus is on expanding the ABI syscalls and fixing the MSC/USB-SCSI driver to make application development easier and smoother.
kernel/
– The core OS kernel (task scheduling, drivers, memory, etc.)abi_sys/
– Shared application binary interface definitions for kernel ↔ userspace (Repr "C")abi/
– Rust focused ABI helpers and abstractions for easier developmentuser-apps/
– Collection of userspace programs (calculator, snake, etc.)
- Minimal Rust-based kernel targeting the PicoCalc
- Custom ABI for safe communication between kernel and applications
- Support for multiple user-space applications
- Hardware drivers tailored for the PicoCalc
git clone https://github.com/LegitCamper/picocalc-os-rs.git
cd picocalc-os-rs
just userapps
# copy the build applications from target/thumbv8m.main-none-eabihf/release-binary/application to the sdcard and rename them to app.bin
just kernel-release # keep in mind that https://github.com/StripedMonkey/elf2uf2-rs version is required until https://github.com/JoNil/elf2uf2-rs/pull/41 is merged