Found in 5 comments on Hacker News
qingcharles · 2023-05-20 · Original thread
It's funny - I remember doing pretty much the same thing. I wrote my own GUI OS from scratch in x86 based partially on the following book, in about 1998:

And then wrote my own Game Gear emulator for it one night, just for shits and giggles, like you did. It was also my first attempt at writing a whole system emulator, and the GG, like the GB, was incredibly well understood even back then.

For anyone interested in emulation I think it is a great little project to write a video game emulator. It is enormously fun to watch one of your favorite video games boot up in code that you wrote. And it is fun (for me) to try and debug all the little glitches where you've made errors or omissions in your emulator.

kingcharles · 2022-01-16 · Original thread
I did this in the mid-90s when this book came out:

I knew x86 well from demo scene coding, and I had the Linux and NetBSD sources to help, but the hardest bit was just getting all the boot sector stuff going properly and getting the processor into 386 mode as soon as possible.

I wrote an entire OS that booted into a windowed GUI, multi-threaded, file system support etc, etc and my goal was the whole thing booting happily to the desktop in 4Mb of RAM from a 1.44Mb 3.5" floppy, which it did. Every line was written from scratch in x86 assembler, because I was a masochist like that.

I called it Tinkerbell, for reasons lost to time, and it was hosted at back when I owned that domain. I just checked but sadly they didn't grab it when it was around.

EDIT: 32-bit OS book and the source are here:

kingcharles · 2021-10-08 · Original thread
This is the book I learned from in the 90s:

It's basically "Writing an Operating System from Scratch for Dummies".

I actually wrote my own graphical x86 OS starting from the code in there.

Back in the 90s they used to do these quite often. I remember reading one for the same reasons, self taught network engineer and programmer and wanted to get under the hood. I say do it and bring the concept upto date.

Here's an example

There is an old(er) book called "Developing Your Own 32-Bit Operating System" that does a good job (assuming you're targeting the x86 platform) of laying the foundation and explaining the typical layers of code you'll need to write to build an O/S from scratch (as opposed to just a new Linux distro, etc.).

It's a bit dated, but so is the x86 platform :) I think most of it is relevant, especially someone asking these sorts of questions about OS development.

Here's a link to the book on Amazon:

If you get somewhere be sure to update us on your progress!

Fresh book recommendations delivered straight to your inbox every Thursday.