This is the repository for the Operating System used in Pip-Boy products. It contains the kernel, an humble implementation of libc, and a tiny user-space environment.
A ROM is a packaged version of the OS with pre-configured user applications. You will need a ROM for a fully functional OS (in order to get a terminal access at startup for example). ROM developers are responsible of including binaries of this project next to their package when they release their product to the public.
The official ROM developed by Robco Industries is Deitrix, and can be found in our repositories. It's a separated repository to permit people to develop custom environments by themselves. For more informations about Deitrix, please refer to its repository : https://github.com/RobCo-Industries/Deitrix
The kernel is compatible with the following Broadcom boards, as they share the same underlying architecture :
- BCM2835
- BCM2836
- BCM2837
The model BCM2711 should be supported in the future.
cd build
export BCM=2837 # Build for Raspberry Pi 3 board
make clean
make
make run # Requires QEMU installed on your machine
-
Peripheral manual for BCM2835 ARM chip (useful to get Memory Mapped IO addresses BCM2835 ARM Peripherals
-
Circle - A C++ bare metal environment for Raspberry Pi by rsta2 https://github.com/rsta2/circle
-
Raspberry Pi 3 tutorial by bztsrc https://github.com/bztsrc/raspi3-tutorial
-
Raspberry Pi test environment by mrvn https://github.com/mrvn/test
-
Bare metal Raspberry Pi 2 by Rohansi https://github.com/Rohansi/RaspberryPi
-
Building an OS for Raspberry Pi by jsandler18 https://jsandler18.github.io/
-
OSDev's Raspberry Pi Bare Bones https://wiki.osdev.org/Raspberry_Pi_Bare_Bones
-
Learning OS development using Linux kernel and Raspberry Pi by s-matyukevich https://github.com/s-matyukevich/raspberry-pi-os