diff options
| author | salmonik <salmonik@tuta.io> | 2026-08-17 20:28:48 +0200 |
|---|---|---|
| committer | salmonik <salmonik@tuta.io> | 2026-08-17 20:28:48 +0200 |
| commit | 7bd3459f4f8bae69509202e5aa0dbd04a42c656f (patch) | |
| tree | 20ce28490635941d3dd88df5732300e3a0689d51 /rsdos/src/main.rs | |
| parent | Terminal-app design (ADR 0005) + disk-write controller (diff) | |
| download | rs-dos-7bd3459f4f8bae69509202e5aa0dbd04a42c656f.tar.gz rs-dos-7bd3459f4f8bae69509202e5aa0dbd04a42c656f.zip | |
vt → per-instance Terminal rendering into a pixel buffer
- 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
Diffstat (limited to '')
| -rw-r--r-- | rsdos/src/main.rs | 8 |
1 files changed, 0 insertions, 8 deletions
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 | |||
| 410 | // park in poll_key with a fixed frame, so the watchdog's boot-phase spin | 410 | // park in poll_key with a fixed frame, so the watchdog's boot-phase spin |
| 411 | // rule for task 0 is disarmed (boot-phase hangs already panicked). | 411 | // rule for task 0 is disarmed (boot-phase hangs already panicked). |
| 412 | rsnix::sched::mark_shell_running(); | 412 | rsnix::sched::mark_shell_running(); |
| 413 | // Shell-entry self-check: verify the vt grid structs are sane right | ||
| 414 | // before the shell's first print. The OptiPlex crashes in the first | ||
| 415 | // banner write when the cells VecData (or the shadow) holds the | ||
| 416 | // firmware's 0xAA fill instead of real values — this line shows | ||
| 417 | // whether the corruption is already present at shell entry or lands | ||
| 418 | // later, and prints the exact field values when it is. | ||
| 419 | rsnix::vt::debug_verify(); | ||
| 420 | |||
| 421 | // Windowed GUI: initialise the window manager and its input pump. | 413 | // Windowed GUI: initialise the window manager and its input pump. |
| 422 | // The console (vt) stays layer 0; GUI apps are windows composited on top. | 414 | // The console (vt) stays layer 0; GUI apps are windows composited on top. |
| 423 | rsnix::wm::init(); | 415 | rsnix::wm::init(); |
