From 9716f950b859507709e5d8672b6365615d101d8c Mon Sep 17 00:00:00 2001 From: isometimes Date: Tue, 5 Jul 2022 12:15:30 +0100 Subject: [PATCH] Added other backlinks --- part10-multicore/README.md | 4 +++- part11-breakout-smp/README.md | 2 ++ part12-wgt/README.md | 2 ++ part13-interrupts/README.md | 2 ++ part14-spi-ethernet/README.md | 2 ++ part15-tcpip-webserver/README.md | 2 ++ part2-building/README.md | 2 ++ part3-helloworld/README.md | 2 ++ part4-miniuart/README.md | 2 ++ part5-framebuffer/README.md | 2 ++ part6-breakout/README.md | 2 ++ part7-bluetooth/README.md | 2 ++ part8-breakout-ble/README.md | 2 ++ part9-sound/README.md | 2 ++ 14 files changed, 29 insertions(+), 1 deletion(-) diff --git a/part10-multicore/README.md b/part10-multicore/README.md index 09ed953..6a0570a 100644 --- a/part10-multicore/README.md +++ b/part10-multicore/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 10) ==================================================================== +[< Go back to part9-sound](../part9-sound) + Using multiple CPU cores ------------------------ Instead of a background DMA transfer, I suggested that we might use a second CPU core to play the audio whilst our main core continues on. I also said it would be hard on the Raspberry Pi 4... and it is. @@ -158,4 +160,4 @@ _As you run this, you'll see that these functions run in parallel on their respe Coming up in part 11, we'll put all of this work together for a multi-core version of our Breakout game. -[Go to part11-breakout-smp>](../part11-breakout-smp) +[Go to part11-breakout-smp >](../part11-breakout-smp) diff --git a/part11-breakout-smp/README.md b/part11-breakout-smp/README.md index ca0cf54..47224c0 100644 --- a/part11-breakout-smp/README.md +++ b/part11-breakout-smp/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 11) ==================================================================== +[< Go back to part10-multicore](../part10-multicore) + Putting it all together ----------------------- Frankly, I'm unlikely to write much documentation for this part. I'm also only providing a Clang _Makefile_ for now. If you're using gcc, have a go at putting your own _Makefile_ together, referencing the previous parts. diff --git a/part12-wgt/README.md b/part12-wgt/README.md index 42d5de7..dca618b 100644 --- a/part12-wgt/README.md +++ b/part12-wgt/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 12) ==================================================================== +[< Go back to part11-breakout-smp](../part11-breakout-smp) + Porting the WordUp Graphics Toolkit ----------------------------------- Back in the mid-1990s (when I was young!), programmers who wanted to build their own games didn't have rich frameworks like Unity. Perhaps the closest we got was the WordUp Graphics Toolkit, which I came across on the Hot Sound & Vision CD-ROM - a BBS archive. If you have a moment, perhaps use Google to see what "bulletin board systems" were... nostaglia awaits! diff --git a/part13-interrupts/README.md b/part13-interrupts/README.md index 22dda22..b865475 100644 --- a/part13-interrupts/README.md +++ b/part13-interrupts/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 13) ==================================================================== +[< Go back to part12-wgt](../part12-wgt) + What are interrupts? -------------------- If you've spent any time looking at the Bluetooth code in these tutorials, you'll notice we're always "polling" for updates. In fact, in _part11-breakout-smp_ we tie up an entire core just waiting around for something to happen. This clearly isn't the best use of CPU time. Fortunately, the world solved that problem for us years ago with _interrupts_. diff --git a/part14-spi-ethernet/README.md b/part14-spi-ethernet/README.md index be82a9d..9c40a7c 100644 --- a/part14-spi-ethernet/README.md +++ b/part14-spi-ethernet/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 14) ==================================================================== +[< Go back to part13-interrupts](../part13-interrupts) + Bare metal Ethernet for under £10 --------------------------------- It's exciting to build your own OS, but until you give it the ability to communicate with the outside world, your possibilities are limited. Indeed, our simple Bluetooth comms got us up and running - but if we're to do anything meaningful then we need proper networking. diff --git a/part15-tcpip-webserver/README.md b/part15-tcpip-webserver/README.md index cba7996..e559708 100644 --- a/part15-tcpip-webserver/README.md +++ b/part15-tcpip-webserver/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 15) ==================================================================== +[< Go back to part14-spi-ethernet](../part14-spi-ethernet) + Adding a TCP/IP stack --------------------- Having achieved "proof of life" from our Ethernet module in _part14-spi-ethernet_, you're doubtless wondering how to go from there to serving web pages, posting tweets on Twitter or perhaps even just simply responding to a ping! diff --git a/part2-building/README.md b/part2-building/README.md index ccf9986..1ae1548 100644 --- a/part2-building/README.md +++ b/part2-building/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 2) =================================================================== +[< Go back to part1-bootstrapping](./part1-bootstrapping/) + Making a makefile ----------------- diff --git a/part3-helloworld/README.md b/part3-helloworld/README.md index e8e37c1..bff241e 100644 --- a/part3-helloworld/README.md +++ b/part3-helloworld/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 3) =================================================================== +[< Go back to part2-building](../part2-building) + Making something happen ----------------------- diff --git a/part4-miniuart/README.md b/part4-miniuart/README.md index 2e47804..eeef6f3 100644 --- a/part4-miniuart/README.md +++ b/part4-miniuart/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 4) =================================================================== +[< Go back to part3-helloworld](../part3-helloworld) + Memory-Mapped I/O ----------------- diff --git a/part5-framebuffer/README.md b/part5-framebuffer/README.md index 950c59a..cd0c27b 100644 --- a/part5-framebuffer/README.md +++ b/part5-framebuffer/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 5) =================================================================== +[< Go back to part4-miniuart](../part4-miniuart) + Working with the screen ----------------------- diff --git a/part6-breakout/README.md b/part6-breakout/README.md index 39bd6d2..f8bf563 100644 --- a/part6-breakout/README.md +++ b/part6-breakout/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 6) =================================================================== +[< Go back to part5-framebuffer](../part5-framebuffer) + Introducing Breakout -------------------- diff --git a/part7-bluetooth/README.md b/part7-bluetooth/README.md index 247d112..ee96225 100644 --- a/part7-bluetooth/README.md +++ b/part7-bluetooth/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 7) =================================================================== +[< Go back to part6-breakout](../part6-breakout) + Getting Bluetooth up -------------------- diff --git a/part8-breakout-ble/README.md b/part8-breakout-ble/README.md index 643bdaa..80bab66 100644 --- a/part8-breakout-ble/README.md +++ b/part8-breakout-ble/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 8) =================================================================== +[< Go back to part7-bluetooth](../part7-bluetooth) + Receiving Bluetooth data ------------------------ So we've mastered advertising and we're broadcasting data out into the World. But that's only half the story! In this part, we'll be exploring how to receive data from an external source. This is much more exciting as we can begin to use other devices as remote controllers. diff --git a/part9-sound/README.md b/part9-sound/README.md index 29217b9..c802506 100644 --- a/part9-sound/README.md +++ b/part9-sound/README.md @@ -1,6 +1,8 @@ Writing a "bare metal" operating system for Raspberry Pi 4 (Part 9) =================================================================== +[< Go back to part8-breakout-ble](../part8-breakout-ble) + Playing sound from the audio jack --------------------------------- One thing our game is missing is the excitement of sound! Some beeps and squeaks would be a wonderful addition to make the gameplay more compelling. Let's work to do just that!