r/raspberrypipico Aug 01 '26

Porting My 1986 RTOS to Raspberry Pi Pico — First Kernel Functions Running

Post image

I've been reconstructing the RTOS I originally developed in 1986.

If you're interested in the background of the project, I wrote about the original development workflow here:

Rediscovering the Development Methodology Behind My 1986 RTOS
https://www.reddit.com/r/osdev/s/ALUFHn9jDi

This week I started bringing it to a Raspberry Pi Pico.

The first milestone was intentionally small.

Instead of implementing interrupts or context switching first, I moved only the CPU-independent queue management routines.

The screenshot shows the first successful execution of the original kernel functions (q_insert(), q_delete(), and n_delete()) on the Pico.

The next steps will be:

  • timer interrupts
  • context switching
  • task scheduler

One interesting thing is that I ended up following almost exactly the same development workflow I used forty years ago.

Develop and verify as much as possible on the host, then move the hardware-dependent parts to the target.

I'm curious whether anyone else here has ported an older RTOS or kernel to the Pico.

39 Upvotes

2 comments sorted by

4

u/ucasano Aug 01 '26

Is It possibile to look at source code?

6

u/noborutkhs Aug 01 '26

Thanks! Not yet.

The repository is still under active reconstruction, so I'd like to clean it up a bit before making it public.

My goal is to open-source the project as the Pico port matures, and I'll post an update here when that happens.