Skip to content

A demo operating system/kernel for the Rapsberry Pi 4B

License

Notifications You must be signed in to change notification settings

caoimhebyrne/phosphene

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

phosphene

A demo OS for the Raspberry Pi 4B (and partially the Raspberry Pi 3).

Building

Make sure you have the aarch64-elf toolchain. On macOS, you can install it using Homebrew:

$ brew install aarch64-elf-gcc

Then, you can run Scripts/setup.sh and Scripts/build.sh to make a kernel8.img

Running in QEMU

At the moment, QEMU doesn't have support for the RPi4, so we will use the 3B machine.

Warning When I add interrupt support, the RPi3 won't be supported as it doesn't use the GIC-400 interrupt controller.

$ qemu-system-aarch64 -M raspi3b -serial stdio -kernel Build/kernel8.img

Where did the name phosphene come from?

Here.

Where did the name for the stdlib, Fluorescent come from?

You guessed it! Here.

Credits

  • rpi4os.com: Getting started with bootstrapping (src/boot/boot.S & src/linker.ld)
  • OSDev Wiki: Providing values for the different raspberry pi board types

About

A demo operating system/kernel for the Rapsberry Pi 4B

Resources

License

Stars

Watchers

Forks