From 7bd3459f4f8bae69509202e5aa0dbd04a42c656f Mon Sep 17 00:00:00 2001 From: salmonik Date: Mon, 17 Aug 2026 20:28:48 +0200 Subject: vt → per-instance Terminal rendering into a pixel buffer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Refactor vt.rs into a per-instance Terminal struct (owned cell/rendered grids, cursor, ANSI parser, scroll state), rendering glyphs into a caller-owned pixel buffer with dirty-region blitting - Add gop buffer primitives (buffer_glyph_px, buffer_shift_up) and keep the legacy vt:: API as thin wrappers around the home terminal - Remove the now-obsolete scroll hook and shadow scroll path - Home terminal renders into its own buffer; window_id stays None until the WM integration lands --- rsdos/src/main.rs | 8 -------- 1 file changed, 8 deletions(-) (limited to 'rsdos/src/main.rs') diff --git a/rsdos/src/main.rs b/rsdos/src/main.rs index 89df5ea..b147e63 100644 --- a/rsdos/src/main.rs +++ b/rsdos/src/main.rs @@ -410,14 +410,6 @@ pub unsafe extern "efiapi" fn efi_main(image_handle: Handle, system_table: *mut // park in poll_key with a fixed frame, so the watchdog's boot-phase spin // rule for task 0 is disarmed (boot-phase hangs already panicked). rsnix::sched::mark_shell_running(); - // Shell-entry self-check: verify the vt grid structs are sane right - // before the shell's first print. The OptiPlex crashes in the first - // banner write when the cells VecData (or the shadow) holds the - // firmware's 0xAA fill instead of real values — this line shows - // whether the corruption is already present at shell entry or lands - // later, and prints the exact field values when it is. - rsnix::vt::debug_verify(); - // Windowed GUI: initialise the window manager and its input pump. // The console (vt) stays layer 0; GUI apps are windows composited on top. rsnix::wm::init(); -- cgit v1.2.3