summaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)Author
2018-04-05tested on old OS X 10.8 with MacportsAndreas Bauman
2018-01-05some preliminary work on an UDP netconsoleAndreas Baumann
2017-10-29some docu fixesAndreas Baumann
2017-09-15more other OS linksAndreas Baumann
2017-08-24moved cross compilation docu to doc dirAndreas Baumann
2017-08-24added bridging howtoAndreas Baumann
2017-08-10some renamed in ethernet/rtl8139Andreas Baumann
don't try tp play with the ethernet CRCs, they belong to layer 2 OSI, the firmware of the network card rtl8139: computing packet size correctly (sizeof uint32_t of the CRC was part of the payload len)
2017-08-02added an IPv4 module, currently containg an address to string functionAndreas Baumann
started to add ARP packet definition, reading and printing ARP request now some renames in networking layer
2017-08-02introduced a network library, added ethernet structure, movedAndreas Baumann
generic stuff out of the network driver, kernel now sees ARP messages and prints src and dst MAC addresses
2017-08-01correctly receiving data in the rtl8139 driver and passing it to the networkAndreas Baumann
handler, in Qemu user network we see complete ARP requests now (sent by Qemu itself presumably to update it's 'router' table (an external telnet localhost 8080 is needed to trigger that)
2017-07-22started to code RTL8139 network driver, for now setting io_base and IRQAndreas Baumann
2017-07-20added links to memory managementAndreas Baumann
2017-07-15reworked driver init and vtable, taking the interrupt manager and the contextAndreas Baumann
as parameters when creating a driver
2017-07-14some linkage tweaking, the kernel is not linked against libssp (whichAndreas Baumann
is using linux/glibc), we provide our own SSP guards leading to kernel_panic (for now). per default build the kernel with ld (as we need precise control how we link it) the libc tests are per default linked with the same compiler as provided with $(CC) using #include_next of gcc/clang to include the real stdint.h header file in stdint.h stub
2017-07-13added an exit functionAndreas Baumann
added Linux syscall stubs for exit and write adapted all tests added a printf test made stdio work on Linux or AbaOs syscalls
2017-07-08added dedicated kernel entry to avoid address reordering under compiler ↵Andreas Baumann
optimization affect the entry poin 0x8800 of kernel_main (now kernel_entry)
2017-07-02more documentation on doing OOP in CAndreas Baumann
2017-07-02simplified some driver manager code around calling virtual driver methodsAndreas Baumann
declared method tables const per class
2017-06-24made VGA graphical font smaller (we only want ASCII for now)Andreas Baumann
some performance improvements in VGA graphics mode
2017-06-18started the widget frameworkAndreas Baumann
2017-06-17added the most complex VGA mode (640x480x4, only timings for now)Andreas Baumann
added graphics and text mode type parameter to vga_mode_t
2017-06-16added docu for font drawing in protected mode (VGA fonts)Andreas Baumann
2017-06-15updated buglist and docuAndreas Baumann
2017-06-14got switch to graphical VGA mode workingAndreas Baumann
2017-06-13added some linksAndreas Baumann
2017-06-10renamed text VGA module to vgatextAndreas Baumann
2017-06-10tried some error handling around disk geometry detection, this feature seems ↵Andreas Baumann
to be mainly broken!
2017-06-09tried to probe disk geometry with mixed success (emulated FDD modeAndreas Baumann
on USB not working). Code in stage1 gets too complex to fit 512 bytes, so we most likely must load stage2 with a simple algorithm (maybe 8 sectors every bios 13h/2h function is able to deliver). Then we load the kernel in a second, more complex loading step
2017-06-09fixed stage 1 boot loader problems (worked in some BIOSes acrossAndreas Baumann
the 2 times sector/track limit). loading sectors one by one now fixed also spin down problem after loading stage 2 and the kernel for now tested with 1.44 MB floppies (both real and in bochs/qemu)
2017-06-08added driver managerAndreas Baumann
keyboard and mouse are now "derived" from driver_t reading and printing more PCI members
2017-06-07added another boot loader tutorial linkAndreas Baumann
2017-06-07some cleanup in serial console initializationAndreas Baumann
2017-06-07careful with gaps in PCI functions (see WYOOS tutorial, Ep.11)Andreas Baumann
2017-06-07scanning and printing PCI bus devicesAndreas Baumann
2017-06-07added 32-bit port functionsAndreas Baumann
started to add PCI functions (for now read/write only) added help menu in boot kernel input mode
2017-06-03more tests with eeepc to enable A20 gate, not successful so farAndreas Baumann
2017-06-02some work on keyboard initializationAndreas Baumann
2017-06-01started with keyboard driverAndreas Baumann
split registration of interrupts in a gate registration and a handler registration
2017-06-01introducted a interrupt handler objectAndreas Baumann
2017-05-31interrupt separation between CPU exceptions and hardware IRQs by the PIC,Andreas Baumann
started to program the PICs for interrupt delivery
2017-05-31added a setjmp implementationAndreas Baumann
kernel_panic uses a longjmp to terminate the kernel entry function some segfault in scroll_screen
2017-05-21added implementation of interrupts (IDT construction and loading), currently notAndreas Baumann
working yet. added A20 gate check reorganized some code, so it's easier to debug interrupt handlers in assembly
2017-05-20started with interrupts, some struct cleanupAndreas Baumann
2017-05-18..Andreas Baumann
2017-05-18added some links all around interruptsAndreas Baumann
2017-05-17better magic signature detection (using a compile stamp with date and time)Andreas Baumann
using local labels where possible, some renames in assembly code added a console_put_hex and serial_put_hex better call to qemu printing the status of the host when crashing the emulator
2017-05-14some small fixes, clang image overload (magic doesn't work, most likely becauseAndreas Baumann
memory is not wiped between qemu invocations)
2017-05-14added a simple serial console output to qemu run modeAndreas Baumann
reading and writing the VGA cursor correctly on hardware
2017-05-11better documentation for the boot loading process and how muchAndreas Baumann
sectors each part needs, fixed truncation problem started a magic signature at the end of the image and started to check it in stage 2 of the boot loader to avoid truncated images in the future
2017-05-01more fooling around with VGA moduleAndreas Baumann