9 releases
| new 0.3.3-rc.1 | Nov 11, 2024 |
|---|---|
| 0.3.2 | Oct 16, 2024 |
| 0.3.2-rc.1 | Nov 11, 2024 |
| 0.2.0 | Jul 16, 2024 |
| 0.1.2 | May 20, 2024 |
#210 in Robotics
440 downloads per month
Used in 2 crates
(via vexide)
650KB
3K
SLoC
Contains (static library, 505KB) link/libm.a
vexide-startup
Startup primitives for the vexide runtime. This project provides a bare-metal entrypoint that freestanding Rust binaries can leverage to run on the VEX V5 Brain.
This includes:
- Stack setup
- Code signature/program header types
- BSS section handling
- Global allocator setup for
vexide_core. - vexos background processing
lib.rs:
This crate provides a minimal startup routine for user code on the VEX V5 Brain.
-
User code begins at an assembly routine called
_boot, which sets up the stack section before jumping to a user-provided_startsymbol, which should be your rust entrypoint. -
From there, the Rust entrypoint may call the
startupfunction to finish the startup process by clearing the.bsssection (intended for uninitialized data) and initializing vexide's heap allocator.
This crate is NOT a crt0 implementation. No global constructors are called.
Dependencies
~2–9.5MB
~87K SLoC