Commit Graph
13 Commits
Author SHA1 Message Date
daniel b1c55073c7 fix: kernel concurrency, interrupt context, and user VA safety 2026-08-01 15:43:38 +02:00
danielandClaude Fable 5 182520a585 feat: vblank IRQ and double-buffered page flip for Intel GPU
Add tear-free scanout to the Intel GPU driver: a second kernel-allocated
scanout buffer, DSPASURF flips latched at vblank, and a vblank interrupt
delivered over MSI (Gen 11+ master/display/pipe IRQ chain) with a
monotonic vblank counter and WaitVblank().

Expose it as SYS_FBFLIP (150): index selects the front buffer, -1
queries support, flags bit0 waits for the flip to latch. fb_map() now
maps buffer 1 right after buffer 0 when flipping is available, and
gui::Framebuffer draws to the off-screen buffer and flips with vsync,
falling back to the direct copy when unsupported.

Scanout is restored to buffer 0 when the flip-owning process exits and
on panic, so the terminal and panic box never land on the invisible
buffer.

Co-Authored-By: Claude Fable 5 <[email protected]>
2026-07-13 21:53:06 +02:00
daniel 94433d679b feat: S3 sleep, PDF viewer graphics rendering, live user environment 2026-03-15 18:46:54 +01:00
daniel 9ca51596ea feat: userspace overhaul, Intel GPU driver, and more 2026-02-19 15:46:49 +01:00
daniel 18ab628682 feat(Terminal): Enhance terminal UI with panel updates and new BoxUI utility functions
feat(Timekeeping): Implement time initialization and month string representation
refactor(Panic): Improve panic output formatting and add boxed UI elements
refactor(UEFI): Expand UEFI header and structure definitions for better clarity
refactor(IoPort): Comment out unimplemented IO functions for future work
2025-08-14 12:36:56 +02:00
Daniel Hammer 2515149f28 feat(vmm): Add Paging support 2025-04-17 21:54:25 +02:00
Daniel Hammer cc094a9172 fix(kcp, IDT, Heap, kernel): Various fixes, scrap broken memory allocator 2025-03-11 20:00:04 +01:00
Daniel Hammer b774f82625 fix(IDT): Fix use of runtime loop 2025-03-08 10:46:19 +01:00
Daniel Hammer 942adef65f feat(IDT): IDT and exception handling support 2025-03-08 10:40:12 +01:00
Daniel Hammer 04087ff188 fix: Resolve warnings in multiple components 2025-03-08 00:19:16 +01:00
Daniel Hammer 8cbb8d4472 fix: Various general fixes and changes 2025-03-07 23:57:20 +01:00
Daniel Hammer 17d0bbf1bb Allocator improvements, kernel C++ platform, streaming 2025-03-01 03:31:14 +04:00
Daniel Hammer 6f1c6f1316 GDT, page frame allocator 2025-02-27 19:48:03 +04:00