summaryrefslogtreecommitdiff
path: root/src/Makefile
AgeCommit message (Collapse)Author
2020-01-24a 386 is enough actuallyAndreas Baumann
2020-01-24use -nostdlib compile flagsAndreas Baumann
2018-08-25fixed linking flags for 64bit host, added QEMU makefile variableAndreas Baumann
2018-04-05tested on old OS X 10.8 with MacportsAndreas Bauman
2017-08-10more testing with UDPAndreas Baumann
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-01we can receive network events, but the receive buffer remains emptyAndreas Baumann
this is because we must enable DMA transfering on the PCI bus (bus master enable)
2017-07-27receiving the first network interruptsAndreas Baumann
2017-07-23added qemu network debbuging to MakefileAndreas Baumann
2017-07-20started to abstract video driversAndreas Baumann
2017-07-20added a virtual network driver interface, made the dummy RTL8139 driver a ↵Andreas Baumann
specialization of it (nothing is functional there yet)
2017-07-20added a virtual keyboard driver interface, made the PS/2 keyboard a ↵Andreas Baumann
specialization of it
2017-07-18added a virtual mouse driver interface, made the PS/2 mouse a specialization ↵Andreas Baumann
of it
2017-07-16added USB to qemuAndreas Baumann
2017-07-15added an OPT parameter to the build makefile, default is -O0Andreas Baumann
2017-07-15added a dummy RTL8139 network driverAndreas Baumann
added register interrupt handler methods to drivers (but I'm pretty unsure about them) setting network in qemu startup and using RTL8139 emulation drivers
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-13separated C library implementations with an OS_ABAOS define (for now),Andreas Baumann
we cannot test stdio and memory management in the hosted environment yet this way
2017-07-09added a ld entry optionAndreas Baumann
2017-07-09back to O0 no optimizationAndreas Baumann
2017-07-09fixed the vga_refresh bug. the problem is under optimization theAndreas Baumann
code gets so fast that we get races in the task refershing the VGA screen. For now we fix also high CPU usage in idle tasks with a 'kernel_halt' (well, later a yield or a more clever task scheduler should help). This is a hacky solution for now..
2017-07-09setting exlicitely the CPU to a 486 in qemuAndreas Baumann
2017-07-09made kernel boot with optimizations on (clang), reason where theAndreas Baumann
use of MMX registers
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-05small fix around vga.h incusionAndreas Baumann
2017-07-05'mem' command shows memory usage of kernel heap nowAndreas Baumann
implemented a malloc/free and memory manager (simplest possible implementation, just allocating linearly and never freeing)
2017-07-02started to add task schedulingAndreas Baumann
2017-07-01readded -Werror and fixed some cast errors around memcpyAndreas Baumann
2017-06-30text widget has a constant buffer and owns the string to draw nowAndreas Baumann
(passing a const char * from a local stack context is not really a good idea!) added more efficiet draw method for characters in vga driver protected desktop for now against too often redraws (boolean global variable needs_redraw, this is later a soffisticated set-of-areas-to -redraw algorithm)
2017-06-30added a window to gui which is draggable by the mouseAndreas Baumann
2017-06-24started to implement a widget showing text, the problem currentlyAndreas Baumann
is the inheritance method in draw is not working correctly
2017-06-21improved VGA colorsAndreas Baumann
added basics of a desktop widget class
2017-06-21added the widget and the composite widget classesAndreas Baumann
2017-06-18added graphic context (stub)Andreas Baumann
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-16playing with VGA font distance and characters bei being on the head or mirroredAndreas Baumann
2017-06-16added embedded VGA fonts, not so sure about the 8 heads for USB imagesAndreas Baumann
2017-06-15adapted kernel size to fit clangAndreas Baumann
2017-06-15increased size of stage 2 bootloader by 1024 bytesAndreas 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-14got switch to graphical VGA mode workingAndreas Baumann
2017-06-13added some linksAndreas 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..