summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2017-06-15added a clear screen method to graphics mode VGA driverAndreas Baumann
2017-06-15adapted kernel size to fit clangAndreas Baumann
2017-06-15increased size of stage 2 bootloader by 1024 bytesAndreas Baumann
2017-06-15some speed testsAndreas Baumann
2017-06-15made framebuffer segment a member of vga_mode_t, computing it onceAndreas Baumann
when vga_set_mode is called (because it will not change after every pixel)
2017-06-15added a memcpy function (clang needs it to copy structs in assignments)Andreas Baumann
2017-06-14got switch to graphical VGA mode workingAndreas Baumann
2017-06-13.Andreas Baumann
2017-06-13added some linksAndreas Baumann
2017-06-13added empty stub for generic VGA driverAndreas Baumann
2017-06-10some big renames into subdirs of aspectsAndreas Baumann
updated README removed size_t in sys/types.h and sys/types.h itself, size_t is in stddef.h
2017-06-10moved bootloader to subdirectoryAndreas Baumann
2017-06-10renamed text VGA module to vgatextAndreas Baumann
2017-06-10preparations for driver loading with PCI (BARs for I/O)Andreas Baumann
2017-06-10using int13h/8h only for floppies for now, geometry on emulated USBAndreas Baumann
disks seems to be completly wrong. Probing on real machine for first non-readable sector hangs the machine or creates reboots, no clue. Writing a boot loader is not the scope of the project. For me it runs where it has to run for now..
2017-06-10trying to fix up disk geometryAndreas Baumann
2017-06-10tried some error handling around disk geometry detection, this feature seems ↵Andreas Baumann
to be mainly broken!
2017-06-10better messages in boot loader about disk loadingAndreas Baumann
another test in bochs with a ATA hard disk without LCHS/PCHS translation (doens't boot yet)
2017-06-10rearranged boot loader: first load 3 sectors of stage 2 in simpleAndreas Baumann
int 13h read. then in stage 2 do a much better detection of disk geometries in the future (for now, it's the same) and load the kernel sectors with a more complex loading routine
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-09clang kernel.bin size bumpAndreas Baumann
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-09reverted drive resetAndreas Baumann
2017-06-09testing reseting driveAndreas Baumann
2017-06-09added backspace handling in pre-boot cli (sort of)Andreas Baumann
2017-06-08some interface changes for PCI driver handlingAndreas Baumann
2017-06-08some driver deinit cleanupAndreas Baumann
2017-06-08drivers can print info now ('driver' pre-boot command)Andreas Baumann
2017-06-08added driver managerAndreas Baumann
keyboard and mouse are now "derived" from driver_t reading and printing more PCI members
2017-06-08updated some documentationAndreas Baumann
2017-06-08retested with all 3 C compilersAndreas Baumann
2017-06-08unified mouse and keyboard driver interface (towards a generic driver ↵Andreas Baumann
manager interface
2017-06-08fixed mouse cursor when typingAndreas Baumann
added vga functions to show and hide the mouse cursor as well as remembering it's old position fixed keyboard context passing
2017-06-07some small code cleanupsAndreas Baumann
2017-06-07\r \n in serial_put_newline, got basic console output working in minicomAndreas Baumann
between two real machines
2017-06-07ignore PCI devices with device_id == 0 too (not only 0xFFFF)Andreas 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-05some cleanup in boot loader code and changed order of A20 gate methodsAndreas Baumann
2017-06-05startup to add a simple terminal in the kernel, knowing quit for nowAndreas Baumann
2017-06-05added deinit in driversAndreas Baumann
added some debug flags and code in drivers 32 sectors size of kernel
2017-06-05added detection of 3/4 mouse data packetsAndreas Baumann
2017-06-04added sort of a text cursor by toggling the background/foreground colors on ↵Andreas Baumann
the VGA screen
2017-06-04moved output outside keyboard and mouse driver using event handlersAndreas Baumann
2017-06-04emitting mouse events now, printing them for now, later this will beAndreas Baumann
the text mode cursor
2017-06-03initial work on the mouse: cursor position worksAndreas Baumann
2017-06-03added mouse driverAndreas Baumann
changed acknoledgment of interrupts, if we acknowledge an interrupt originating from the slave PIC we also have to acknoledge the master PIC
2017-06-03more tests with eeepc to enable A20 gate, not successful so farAndreas Baumann