Source code from http://www.jamesmolloy.co.uk/tutorial_html/index.html with improved build system. Tested on Ubuntu 14.04.
Source code from http://www.jamesmolloy.co.uk/tutorial_html/index.html with improved build system and some simplifications.
Behaviour is very close to the tutorial so you can still follow along. This mostly cleans and DRYes up the build.
Improvements from upstream:
floppy.img
: use grub-mkrescue
and the distro provided xorriso
insteadupdate_image.sh
and run_bochs.sh
into the Makefile.asm
instead of .s
warning: 'struct' declared inside parameter list
Usage:
sudo apt-get install bochs bochs-sdl build-essential qemu nasm xorriso
# Build and run current directory with QEMU.
cd 3_screen
make qemu
cd ../4_gdt
make qemu
# With Bochs.
make bochs
# Clean current directory.
make clean
# From toplevel.
cd ../
# Clean all.
make clean
# Make all.
make
Tested on Ubuntu 14.04 AMD64.
TODO:
This is an OS development tutorial that creates progressively complex OSes based on the code of the previous one.
It uses GRUB and C.
Since Molloy did not use source control + bug tracker, a list of known bugs grew at: http://wiki.osdev.org/James_Molloy's_Tutorial_Known_Bugs