Get the latest tech news

Snowdrop OS – a homebrew operating system from scratch, in assembly language


Introduction section Welcome to the pages of Snowdrop OS, my homebrew operating system project. Snowdrop OS was born of my childhood curiosity around what happens when a PC is turned on, the mysteries of bootable disks, and the hidden aspects of operating systems.

Snowdrop OS was born of my childhood curiosity around what happens when a PC is turned on, the mysteries of bootable disks, and the hidden aspects of operating systems. Snowdrop OS can also be installed to a hard disk - prompting the user to do so during boot - if it detects one. Some interesting areas in the source code are: v1 - initial version, single tasking, shell, aSMtris v2 - PS/2 mouse driver and mouse test apps v3 - basic multi-tasking support and virtual display support v4 - FAT12 driver write/delete, file manager, text editor v5 - serial port driver, formatting utilities, file copy support v6 - multiplayer snake game (over serial port) v7 - slide show presentation app v8 - "keep memory" task lifetime mode, for custom services v9 - parallel port driver, BMP image support, sprites v10 - system timer frequency change v11 - animated sprites, sound driver (internal speaker) v12 - keyboard driver v13 - more sprites functionality, Storks game v14 - kernel config, program arguments, file utilities v15 - 16x2 LCD controller app, text editor fixes v16 - GUI framework v17 - Snowmine (Minesweeper-like game) v18 - BASIC interpreter and linker v19 - install to hard disk v20 - BASIC and text editor improvements v21 - integration of BASIC and GUI framework v22 - x86 assembler, multi-disk support, file view utilities v23 - x86 debugger v24 - service loading v25 - dynamic memory and data structures v26 - installer improvements, pseudo-mouse driver v27 - kernel and inter-task messaging v28 - GUI higher resolution, draw application, desktop application v29 - data compression, Hangman game v30 - pseudo-mouse driver improvements v31 - runtime libraries (RTL), BASIC interpreter RTL

Get the Android app

Or read this on Hacker News

Read more on:

Photo of Scratch

Scratch

Photo of assembly language

assembly language

Photo of Snowdrop OS

Snowdrop OS

Related news:

News photo

Building a Medieval Castle from Scratch

News photo

Show HN: I made an open-source laptop from scratch

News photo

Diffusion training from scratch on a micro-budget