<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: AdrianBolt</title>
    <description>The latest articles on DEV Community by AdrianBolt (@adrian-thebolt).</description>
    <link>https://dev.to/adrian-thebolt</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4051899%2F8f7ef380-8bf3-4bc1-a8a3-446498e86335.jpeg</url>
      <title>DEV Community: AdrianBolt</title>
      <link>https://dev.to/adrian-thebolt</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/adrian-thebolt"/>
    <language>en</language>
    <item>
      <title>I Built a 64-Bit OS from Scratch: BIOS/UEFI, GUI, Networking, a Browser, and DOOM</title>
      <dc:creator>AdrianBolt</dc:creator>
      <pubDate>Thu, 10 Sep 2026 02:29:39 +0000</pubDate>
      <link>https://dev.to/adrian-thebolt/i-built-a-64-bit-os-from-scratch-biosuefi-gui-networking-a-browser-and-doom-4j90</link>
      <guid>https://dev.to/adrian-thebolt/i-built-a-64-bit-os-from-scratch-biosuefi-gui-networking-a-browser-and-doom-4j90</guid>
      <description>&lt;h2&gt;
  
  
  BoltOS: a from-scratch 64-bit operating system
&lt;/h2&gt;

&lt;p&gt;I built &lt;strong&gt;BoltOS&lt;/strong&gt; as a 64-bit operating system in C and x86-64 assembly, starting with the boot chain rather than an existing kernel or bootloader. It supports both legacy BIOS and UEFI boot paths—no GRUB, no Multiboot, and no external OS libraries.&lt;/p&gt;

&lt;p&gt;This is an active project with roughly 41,000 lines of first-party code. I am sharing it to get feedback from people interested in operating systems, systems programming, and bare-metal development.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2gu0rlsmzo6zn988rmky.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2gu0rlsmzo6zn988rmky.png" alt="BoltOS desktop screenshot" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What is implemented
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;A custom BIOS MBR and UEFI boot chain that enters a 64-bit higher-half kernel&lt;/li&gt;
&lt;li&gt;ACPI, APIC, SMP, preemptive scheduling, ring-3 userland, ELF loading, and syscalls&lt;/li&gt;
&lt;li&gt;Physical and virtual memory management, ASLR, SMAP/SMEP, swap, and stack canaries&lt;/li&gt;
&lt;li&gt;A graphical desktop with a compositor, window manager, TrueType rendering, clipboard, file manager, IDE, task manager, and 24 apps&lt;/li&gt;
&lt;li&gt;Persistent storage through a VFS and block layer, with ATA, AHCI SATA, NVMe, EXT2, and FAT32 support&lt;/li&gt;
&lt;li&gt;An in-kernel network stack with DHCP, TCP/UDP, DNS, HTTP, TLS 1.2/1.3, and X.509 verification&lt;/li&gt;
&lt;li&gt;A browser engine with a DOM, CSS cascade, box/flex/grid layout, and a from-scratch JavaScript interpreter&lt;/li&gt;
&lt;li&gt;A playable DOOM port, audio support, USB HID, and a PE32+ loader for Windows x86-64 console executables&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;The first source release is available at &lt;a href="https://github.com/adriantips/boltossource/releases/tag/v0.1.0" rel="noopener noreferrer"&gt;BoltOS v0.1.0 — Initial Public Preview&lt;/a&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/adriantips/boltossource.git
&lt;span class="nb"&gt;cd &lt;/span&gt;boltossource
bash build.sh
bash run.sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The repository includes QEMU launchers and a separate UEFI path:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;bash run-uefi.sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  I would love feedback on
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;The boot and kernel architecture&lt;/li&gt;
&lt;li&gt;Drivers and hardware coverage&lt;/li&gt;
&lt;li&gt;The browser, networking, and userland design&lt;/li&gt;
&lt;li&gt;Build reproducibility and documentation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Source and screenshots: &lt;a href="https://github.com/adriantips/boltossource" rel="noopener noreferrer"&gt;https://github.com/adriantips/boltossource&lt;/a&gt;&lt;/p&gt;

</description>
      <category>c</category>
      <category>opensource</category>
      <category>showdev</category>
      <category>networking</category>
    </item>
    <item>
      <title>BoltOS: The new era of challenging hobby OS development. (FULL DOOM PORT AND DRIVERS!)</title>
      <dc:creator>AdrianBolt</dc:creator>
      <pubDate>Tue, 28 Jul 2026 19:53:06 +0000</pubDate>
      <link>https://dev.to/adrian-thebolt/boltos-the-new-era-of-challenging-hobby-os-development-full-doom-port-and-drivers-1gn8</link>
      <guid>https://dev.to/adrian-thebolt/boltos-the-new-era-of-challenging-hobby-os-development-full-doom-port-and-drivers-1gn8</guid>
      <description>&lt;p&gt;Building an operating system from scratch is one of the ultimate challenges for a software engineer. Recently, I came across BoltOS (hosted on GitHub at adriantips/boltossource), a fascinating 64-bit higher-half hobby operating system written entirely in C and Assembly.&lt;br&gt;
Instead of just recycling legacy tutorials, BoltOS aims for a modern environment—skipping old limitations to support advanced hardware and even running Windows binaries natively.&lt;br&gt;
Here is a quick breakdown of what makes this project so cool:&lt;br&gt;
🚀 Technical Highlights&lt;br&gt;
Dual Bootloaders: Supports both a custom legacy BIOS bootloader (entering long mode via unreal mode) and a UEFI bootloader (BOOTX64.EFI) handling GOP and memory maps, mapping the kernel to 0xFFFFFFFF80100000.&lt;br&gt;
Modern Storage Stack: Features a generic block layer with functional drivers for ATA/IDE PIO, AHCI (SATA), and crucially, NVMe (featuring hardware MSI/MSI-X interrupts with polling fallback).&lt;br&gt;
VFS &amp;amp; Persistent Storage: Includes a native RAM file system (BoltFS), read-only EXT2, and read-write FAT32 support where files and user accounts actually survive reboots.&lt;br&gt;
Native PE32+ Executable Loader: One of the wilder features—the kernel can parse PE32+ headers, bind import tables against an in-kernel kernel32 shim, and run real Windows x86-64 console .exe files directly inside the OS!&lt;br&gt;
GUI &amp;amp; TrueType Font Rasterizer: Features a custom windowed GUI powered by a from-scratch TrueType (.ttf) rasterizer that parses bezier outlines, alongside PCI display controller probing (Bochs DISPI/VBE).&lt;br&gt;
Networking &amp;amp; Web Browsing: Packs a network stack, a custom browser engine, and a port of NetSurf.&lt;br&gt;
Of Course... DOOM: It wouldn't be a proper OS project without it. BoltOS successfully runs a port of doomgeneric using a tiny in-house freestanding libc shim.&lt;br&gt;
Check it out&lt;br&gt;
If you are into low-level systems programming, OS dev, or just want to dig into how a hobbyist implements NVMe drivers and Windows binary translation from scratch, check out the repository:&lt;br&gt;
🔗 GitHub: &lt;a href="https://github.com/adriantips/boltossource" rel="noopener noreferrer"&gt;https://github.com/adriantips/boltossource&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This OS I found, is made by very much, ME!&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>c</category>
      <category>assembly</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
