diff --git a/readme.txt b/readme.txt new file mode 100644 index 0000000..4d0f7ee --- /dev/null +++ b/readme.txt @@ -0,0 +1,89 @@ +HOS - Holtrop's Operating System +-------------------------------- + +HOS is (in the process of becoming) a 32-bit, protected mode, graphical, multitasking operating system. +It was written by me, Josh Holtrop, with help from a few others along the way. + + +Goals: (A = accomplished, P = in progress, T = todo) +---------------------------------------------------- +(A) Custom bootloader to load kernel from FAT-formatted boot media, options for video mode/ram disk +(A) Multiboot compliance - kernel can be loaded by GRUB +(A) 32-bit protected mode environment +(A) VESA Support for graphics modes +(A) PS/2 keyboard & mouse drivers +(A) Utilize x86's paging architecture for virtual memory management + +(P) Console Manager +(P) VFS abstraction layer for a single file system +(P) ram disk driver +(P) devfs file system driver +(P) ext2 file system support + +(T) vfat file system support +(T) Multitasking support +(T) HASH command shell +(T) Window Manager +(T) Various other utilities/applications +(T) Hard Drive (ATA) driver +(T) cdrom (ATAPI) driver + + +Change Log +---------- +0.16 +12/16/04 - initrd going to be loaded as a gzipped ext2 image (kernel module) - faster loading! + +0.15 +07/10/04 - Multiboot support added, loadable by GRUB + +0.14 +05/21/04 - C++ support in kernel, can use classes & templates +04/04/04 - video_line function for diagonal lines +03/16/04 - new VFS design with support for a loop device +03/01/04 - Thanks to Ben Meyer for helping me get a Makefile working and building on linux to work! + +0.13 +01/26/04 - functions added to read/write CMOS clock date and time +01/19/04 - fixed bug GDTR/IDTR pointing to physical rather than linear table base address +01/07/04 - fixed bug not reading sectors correctly from floppy +12/28/03 - fixed bug not storing eax on interrupt +12/25/03 - fixed bug in mm_palloc() +12/25/03 - incorporated output functions as regular functions rather than as part of a linked library +12/23/03 - re-written physical memory manager using bitmap instead of stack +12/22/03 - kernel relocated to 3gb linear / 1mb+24kb physical to allow for app. address space + +0.12 +12/21/03 - sample bmp loader tested, works (tests loading a kernel of size ~ 932kb) +12/20/03 - GDT/IDT now located at 1mb physical, before kernel +10/30/03 - turns floppy motor off +10/30/03 - keyboard LEDs working +10/29/03 - paging functions working +10/15/03 - physical memory management page allocators working + +0.11 +10/09/03 - PS/2 mouse driver + +0.10 +09/11/03 - Rewritten C and assembly kernel with VESA GUI mode support, keyboard driver + +0.05 +05/14/03 - HGUI24/HGUI32 commands finished for testing GUI on both 24bpp and 32bpp graphics cards +05/14/03 - first web release! + +0.04 +03/09/03 - added VM shortcut command +03/09/03 - press up to fill retrieve last inputted command for Nate Scholten +03/08/03 - press clear to clear console input +03/07/03 - added "shortcut" commands PC, IC, ? for Nate Scholten +03/06/03 - added PROMPTC, INPUTC commands + +0.03 +12/30/02 - Command Line Interface working, accepting basic commands + +0.02 +12/11/02 - Assembly bootsector can load stage2 ("console") + +0.01 +12/01/02 - Real mode assembly bootsector boots from floppy disk successfully +