refactor/feature/fix: Major refactor of codebase
refactor(stdio): replace console/terminal command system with buffer-based stdio - Introduced stdio.pas as the unified command I/O layer. - All 31 command procedures across 15 files now receive stdin_buf, stdout_buf, and stderr_buf (POutBuf) instead of a single outbuf. - vterminal.pas creates all three buffers per command invocation and displays both stdout and stderr. - Deleted console.pas, terminal.pas, and 9 obsolete windowing programs (shell, splash, edit, memview, themer, netlog, vmlog, vmstate, udpcat). - Migrated all registerCommand calls to stdio, rewrote vterminal processCommand to use stdio.findCommand, and added proper error routing to stderr for invalid params, bad paths, and system errors. refactor(syslog): replace console logging with serial-backed syslog - Introduced syslog.pas for kernel-level logging over serial/dev. - Migrated all boot logging in kernel.pas from console.outputln/ writestringln to syslog.logln/writestringln. - Converted 19 fault handlers, hashmap, lists, scheduler, tracer, net, udp, and all driver init paths to use syslog. - Rewrote BSOD in util.pas (50+ calls) from console to syslog. - Removed CONSOLE_SLOW_REDRAW, TRGB565, TRGB565Pair, and HWND from system.pas. fix(keyboard): add ring buffer and proper press/release cycling for LVGL input - Replaced the single last_key/key_pressed slot in lvgl.pas with a 16-entry ring buffer (kb_buf, kb_head, kb_tail) to prevent ISR overwrites when typing fast. - Added a kb_pending_release flag so each keystroke gets a full PRESSED->RELEASED cycle before the next key is consumed — LVGL requires this pairing and was silently dropping intermediate keys when receiving consecutive PRESSED events without intervening releases. feat(vterminal): use Hack monospace font for terminal output - Added Hack Regular 14px (hack_14.c) as a custom LVGL font. - Removed the .static_bitmap field from the generated font file (not present in LVGL 9.2 lv_font_t struct). - Declared the hack_14 external symbol in lvgl.pas and switched vterminal's text label from lv_font_montserrat_14 to hack_14 for proper monospace terminal rendering.
This commit is contained in:
1 parent
dbe6e958e2
commit
f752be48ce
92 files changed
+14917
-5797
No files matched your search
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(true);
|
||||
BSOD('AC', 'Alignment Check Exception.');
|
||||
console.writestringln('Alignment Check Exception.');
|
||||
syslog.writestringln('Alignment Check Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(false);
|
||||
BSOD('BE', 'Breakpoint Exception.');
|
||||
console.writestringln('Breakpoint Exception');
|
||||
syslog.writestringln('Breakpoint Exception');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(true);
|
||||
BSOD('TSS', 'Bad TSS Exception.');
|
||||
console.writestringln('Bad TSS Exception.');
|
||||
syslog.writestringln('Bad TSS Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(false);
|
||||
BSOD('CF', 'Coprocessor Fault Exception.');
|
||||
console.writestringln('Coprocessor Fault Exception.');
|
||||
syslog.writestringln('Coprocessor Fault Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(false);
|
||||
BSOD('CSO', 'Coprocessor Seg Overrun Exception.');
|
||||
console.writestringln('Coprocessor Seg Overrun Exception.');
|
||||
syslog.writestringln('Coprocessor Seg Overrun Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(false);
|
||||
BSOD('DE', 'Debug Exception');
|
||||
console.writestringln('Debug Exception.');
|
||||
syslog.writestringln('Debug Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(false);
|
||||
BSOD('DBZ', 'Divide By Zero Exception.');
|
||||
console.writestringln('Divide by Zero Exception.');
|
||||
syslog.writestringln('Divide by Zero Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(true);
|
||||
BSOD('DF', 'Double Fault.');
|
||||
console.writestringln('Double Fault.');
|
||||
syslog.writestringln('Double Fault.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -41,7 +41,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(true);
|
||||
BSOD('GPF', 'General Protection Fault.');
|
||||
console.writestringln('General Protection Fault.');
|
||||
syslog.writestringln('General Protection Fault.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(false);
|
||||
BSOD('IDO', 'Into Detected Overflow Exception.');
|
||||
console.writestringln('IDO Exception.');
|
||||
syslog.writestringln('IDO Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(false);
|
||||
BSOD('IO', 'Invalid OPCode Exception.');
|
||||
console.writestringln('Invalid OPCode Exception.');
|
||||
syslog.writestringln('Invalid OPCode Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(false);
|
||||
BSOD('MC', 'Machine Check Exception.');
|
||||
console.writestringln('Machine Check Exception.');
|
||||
syslog.writestringln('Machine Check Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(false);
|
||||
BSOD('NC', 'No Coprocessor Exception.');
|
||||
console.writestringln('No Coprocessor Exception.');
|
||||
syslog.writestringln('No Coprocessor Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(false);
|
||||
BSOD('NMI', 'Non-Maskable Interrupt Exception.');
|
||||
console.writestringln('NMI Exception.');
|
||||
syslog.writestringln('NMI Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(false);
|
||||
BSOD('OOB', 'Out of Bouunds Exception.');
|
||||
console.writestringln('OOB Exception.');
|
||||
syslog.writestringln('OOB Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(true);
|
||||
BSOD('PF', 'Page Fault.');
|
||||
console.writestringln('Page Fault.');
|
||||
syslog.writestringln('Page Fault.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(true);
|
||||
BSOD('SF', 'Stack Fault Exception.');
|
||||
console.writestringln('Stack Fault Exception.');
|
||||
syslog.writestringln('Stack Fault Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(true);
|
||||
BSOD('SNS', 'Segment Not Present Exception.');
|
||||
console.writestringln('Segment Not Present Exception.');
|
||||
syslog.writestringln('Segment Not Present Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
+2
-2
@@ -23,7 +23,7 @@ interface
|
||||
|
||||
uses
|
||||
util,
|
||||
console,
|
||||
syslog,
|
||||
isr_types,
|
||||
isrmanager,
|
||||
IDT;
|
||||
@@ -40,7 +40,7 @@ begin
|
||||
CLI;
|
||||
correctInterruptRegisters(false);
|
||||
BSOD('UI', 'Unknown Interrupt Exception.');
|
||||
console.writestringln('Unknown Interrupt Exception.');
|
||||
syslog.writestringln('Unknown Interrupt Exception.');
|
||||
util.halt_and_catch_fire;
|
||||
end;
|
||||
|
||||
|
||||
Reference in new issue
Block a user