summaryrefslogtreecommitdiff
path: root/src/drivers
AgeCommit message (Collapse)Author
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-16introduced classes of driver types (graphics, mouse, keyboard, network, etc.)Andreas Baumann
removed direct vga_init from kernel.c, using pci for this now, get the driver of type graphics from driver_manager
2017-07-16moved registering of mouse/keyboard interrupts into the driver activation ↵Andreas Baumann
instead of having them directly in kernel.c also more standardization of the driver init functions (mouse set_resolution instead of constructor parameters res_x and res_y)
2017-07-15started to make driver construtors similar (keyboard, mouse)Andreas Baumann
passing context around to pci scanning function for driver initialization
2017-07-15reworked driver init and vtable, taking the interrupt manager and the contextAndreas Baumann
as parameters when creating a driver
2017-07-15mouse and keyboard are now allocated driver pointersAndreas 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-14removed stddef.h and limits.h (come with the compiler header files)Andreas Baumann
added a stub stdint.h (only sometimes comes with the compiler) added a guide on cross compiling adapted to cross compilation, for now tcc works
2017-07-12added segment_size to vga mode structure, using for memcpy in Z bufferAndreas Baumann
refreshing the video memory and when allocating the Z buffer
2017-07-10VGA Z-buffer is now dynamically allocated and freedAndreas Baumann
memory management can reuse the last pointer malloced if freed again
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-05removed superfluous context in vga driver (was not used)Andreas Baumann
added dummy methods and driver_init for anonymous driver initialization
2017-07-02started to add task schedulingAndreas Baumann
2017-07-02added ESC key in PS/2 keyboard driverAndreas Baumann
allow pressing ESC in graphics mode to return to text mode
2017-07-02simplified some driver manager code around calling virtual driver methodsAndreas Baumann
declared method tables const per class
2017-07-02some more vtable initialization fixesAndreas Baumann
2017-07-01tested with pcc, worksAndreas Baumann
removed some weird comments in vga_font.h troubling pcc
2017-07-01added a preprocessor guard to vga_font.hAndreas Baumann
2017-06-30almost got a complete mode switch (vga graphics back to text) workingAndreas Baumann
some cleanup in VGA driver code
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-30playing with Z buffering in VGA driverAndreas Baumann
2017-06-30added a third widget (for drawing fonts)Andreas Baumann
fixed drawing races due to mouse interrupts
2017-06-30added a VGA wait for retrace in graphics modeAndreas Baumann
2017-06-25we have a flickering mouse cursor and terrible redrawing of the desktop now :-)Andreas Baumann
removed the font window for now, far too slow!
2017-06-25put the mouse object into the global context so we can adjust theAndreas Baumann
resolution when switching video modes
2017-06-24printing whole ASCII font in VGA graphics modeAndreas Baumann
2017-06-24made VGA graphical font smaller (we only want ASCII for now)Andreas Baumann
some performance improvements in VGA graphics mode
2017-06-24started to make some things in graphical VGA driver fasterAndreas Baumann
2017-06-21improved VGA colorsAndreas Baumann
added basics of a desktop widget class
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-16switching mode text/graphics, text is distortedAndreas Baumann
2017-06-16first character printed in graphics modeAndreas Baumann
2017-06-16added embedded VGA fonts, not so sure about the 8 heads for USB imagesAndreas Baumann
2017-06-15added a clear screen method to graphics mode VGA driverAndreas 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-14got switch to graphical VGA mode workingAndreas Baumann
2017-06-13.Andreas 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