mirror of
https://github.com/LegitCamper/picocalc-os-rs.git
synced 2025-12-27 07:45:28 +00:00
6e88feb9a78b0d1f4ece0880bef84d602f664db0
…
…
…
…
…
PicoCalc OS (Rust)
A simple kernel and applications for the Clockwork PicoCalc, written in Rust.
This project provides a minimal kernel, syscall table, and user-space applications to experiment with kernel development on constrained hardware.
Status
Basic synchronous applications are working great.
Current focus is on exanding applications and porting software, finding bugs in ffi, and making sure the kernel is as stable as possible.
Project Structure
kernel/– The core OS kerneluserlib_sys/– C FFI bindings for kernel syscalluserlib/– Rust wrapper on top ofuserlib_syspicolib/– Built withjust newlib, and provides libc symbols when linking with C librariesuser_apps/– Collection of userspace programs (gif player, wav player, calculator, snake, etc.)
Features
- Minimal Rust-based kernel targeting the PicoCalc
- Custom ABI for Mostly safe communication between kernel and applications
- Support for multiple user-space applications
- Hardware drivers tailored for the PicoCalc( Audio, Display, Keyboard, ans Storage )
Getting Started
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
# has builds for the official rp2350 board and the pimoroni2w board
just kernel-release rp235x # keep in mind that https://github.com/StripedMonkey/elf2uf2-rs version is required until https://github.com/JoNil/elf2uf2-rs/pull/41 is merged
Languages
Rust
99%
Just
1%