#=----------------------------------------------------------------------------=# # GNU GPL OS/K # # # # Desc: Project ChangeLog # # # # # # Copyright © 2018-2019 The OS/K Team # # # # This file is part of OS/K. # # # # OS/K is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # # the Free Software Foundation, either version 3 of the License, or # # any later version. # # # # OS/K is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY# without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # # along with OS/K. If not, see . # #=----------------------------------------------------------------------------=# 2018-10-00 @os-k-team Started talking about making our own OS 2018-11-00 @os-k-team Name decided & creation of os-k.eu 2018-12-06 @os-k-team Actually started project, began MBR, decided directories organization, created this file and others 2018-12-08 @os-k-team * MBR : actually supports Long Mode Compatibility Verification * A20 line Enabling : added 2018-12-21 @os-k-team Boot in two stages * First stage : 512B MBR code that loads second stage loader from FAT16 * Second stage : enables A20, switches into lm and write colored text =D [...] Time Skip 2019-03-17 @os-k-team Migration to GRUB * Kernel : boots, prepared by the loader. Both are loaded by GRUB * Multiboot : chose to use v1 because the v2 lacks on documentation * Architecture Support : x86_64 ONLY 2019-03-25 @os-k-team Memory and terminal * Memory map and basic malloc function : functionnal * Buffer library : implemented for terminal * Stack : 8MB long and isn't anymore in conflict with the kernel space * sprintf functions : created 2019-04-09 @os-k-team * Terminal : now buffered (static) * Whole Project Tree : big reorganization * Makefile : suffered a lot, so we improved it * (KeStartPanic) : doesn't need to lock the terminal * Basic heap and memory allocator : created 2019-04-24 @os-k-team Interrupts and I/O * IDT, ISR exception handler : created * RTC time based ticks : created but buggy * Keyboard IRQ handling (TODO buffer BStdIn) : functionnal 2019-04-27 @os-k-team IDT Overhaul * IDT : can now register new IRQ handlers at runtime * Exception handler : crashdumps with registers * RTC time based ticks : functionnal 2019-05-06 @os-k-team IDT Overhaul * IDT : can now register new IRQ and Exception handlers at runtime * Exception handler : now called early 2019-05-07 @os-k-team * Exception handler : actual crashdumps register when panic * PC Speaker : we can emit a little beep, and we have some music * RTC : basic timer wait() 2019-05-08 @os-k-team * Shell : basic shell with some commands built-in (8) * Power management : implementation of shutdown on qemu, virtualbox etc * Terminal : actual scroll up and down 2019-05-14 @os-k-team * Whole Project Tree : big reorganization * Makefile : dependencies automated 2019-05-21 @os-k-team * VGA and Shell and bprintf: Color support * GDT : CS and TSS works * IDT : Double Fault and Stack Segment Fault have a separate stack * Stack : guard pages are now fully functionnal [...] Time Skip 2019-11-08 @os-k-team * Compilation process : beginning the modernization 2019-11-11 @os-k-team * Compilation process : "unrooting" and enhancing the compilation process scripts * ProjectTree : better tree, without useless stuff