mirror of
https://github.com/gbowne1/ClassicOS.git
synced 2025-05-15 09:01:27 -07:00
ClassicOS
ClassicOS is a 32-bit Intel x86 operating system built from scratch using C, NASM, and GCC.
Designed for 386, 486, and Pentium-class CPUs, it runs in protected mode, outputs to VGA text mode and serial ports, and supports floppy/HDD boot with basic FAT support.
✨ Features
- MBR bootloader at
0x7C00
- Switch to protected mode with GDT
- A20 gate enabling
- Simple FAT12/FAT16 disk loader stub
- VGA text output (
0xB8000
) - Serial COM1 support (
0x3F8
) - Basic kernel (
kmain
) written in C - Makefile-based build system
- Bootable floppy image for testing in QEMU
⚙️ Requirements
You’ll need the following tools installed:
nasm
gcc
(targeting i386)ld
make
qemu-system-i386
Optional:
gdb
vncviewer
(TigerVNC or similar)
🛠️ Building ClassicOS
Clone and build:
git clone https://github.com/gbowne1/ClassicOS.git
cd ClassicOS
make
Description
An x86 32 biit Operating System for 386, 486, Pentium class (P-60 to 233MHz, Pentium II, P3, P4, etc)
Readme
185 MiB
Languages
C
91%
Assembly
6.9%
Makefile
2.1%