Implement VGA text-mode driver with memory statistics display (AI)

- Created VGA driver that writes to the 0xB8000 text-mode framebuffer.
  Supports 80x25 display with 16 foreground/background colors, scrolling,
  hardware cursor updates, and special characters (\n, \r, \t, \b).
- Provides vga_puts, vga_putchar, vga_put_hex, vga_put_dec, vga_set_color.
- Displays boot banner ("ClaudeOS v0.1 booting...") on screen clear.
- vga_show_mem_stats() prints total RAM, kernel start/end addresses, and
  kernel size on the VGA display during boot.
- Registered as the first driver using REGISTER_DRIVER, proving the
  driver framework works end-to-end (probe -> init lifecycle).

Tested: driver loads successfully, debug port confirms vga probe/init.
This commit is contained in:
AI
2026-02-23 11:10:48 +00:00
parent bb09de6a6d
commit 313aeb5872
5 changed files with 334 additions and 1 deletions

View File

@@ -12,6 +12,7 @@ add_executable(kernel
kmalloc.c
string.c
driver.c
vga.c
interrupts.S
kernel.c
)