Notion - Figma - Github Projects
A homage to `90s User interface design, combined with modern development. Arial is centered around creating an operating system that is simple, beautiful and accessible.
Whilst Milestone 1 is far away this serves a nice goal post before i tackle more complex problems like paging and threading for milestone 2.
- Refine toolchain for compatibility on Linux.
- Graphics rendering using VBE.
-
printf
function to get better debug information. - Support to draw different shapes. Squares, circles, individual pixels and text.
- Render a basic version of arial's logo using graphics library.
- Draw a color image.
- Create a text mode fallback.incase VBE doesn't start properly.
-
- GDT, IDT and Interrupts.
- Create and flush GDT and IDT tables
- Get hardware interrupts.
- Map software interrupts.
- Simple PS/2 driver for keyboard and mouse.
- Get interrupts 1 and 12 for activity on input devices.
- Spawn relevant events for each device after their interrupts.
- Get basic keyboard driver working and draw characters to screen.
- Get basic mouse driver working and draw cursor to screen.
- Handle clicks / modifier keys and store that information in event
- Key stroke buffer for keyboard
- General house keeping
- Get a system timer created. Create a clock from interrupt 33 or something?
- Create function to find the SMBios.
- Use SMBios to get information about cpu, bios and manufacture of machine.
arial build: ebf615d running on QEMU 6.2