Replace the blocking main render loop in kernel.pas with two new
timer-hooked units that are driven by the 1024Hz PIT interrupt:
graphicsrefresh: calls desktop.update, uidebug.update, lvgl_handler
and video.Flush every 4 ticks (~256 FPS target).
usbhotplug: calls usbcore.usb_check_hotplug every 1024 ticks (~1Hz).
The kernel main procedure now registers both timer hooks and enters an
idle STI/HLT loop (kernel.yield), allowing the CPU to sleep between
interrupts instead of busy-spinning.
Also removes the unused myUserLandFunction and reorders early syslog
init calls for clarity.
Replace the blocking main render loop in kernel.pas with two new
timer-hooked units that are driven by the 1024Hz PIT interrupt:
- graphicsrefresh: calls desktop.update, uidebug.update, lvgl_handler
and video.Flush every 4 ticks (~256 FPS target).
- usbhotplug: calls usbcore.usb_check_hotplug every 1024 ticks (~1Hz).
The kernel main procedure now registers both timer hooks and enters an
idle STI/HLT loop (kernel.yield), allowing the CPU to sleep between
interrupts instead of busy-spinning.
Also removes the unused myUserLandFunction and reorders early syslog
init calls for clarity.
Replace the blocking main render loop in kernel.pas with two new
timer-hooked units that are driven by the 1024Hz PIT interrupt:
- graphicsrefresh: calls desktop.update, uidebug.update, lvgl_handler
and video.Flush every 4 ticks (~256 FPS target).
- usbhotplug: calls usbcore.usb_check_hotplug every 1024 ticks (~1Hz).
The kernel main procedure now registers both timer hooks and enters an
idle STI/HLT loop (kernel.yield), allowing the CPU to sleep between
interrupts instead of busy-spinning.
Also removes the unused myUserLandFunction and reorders early syslog
init calls for clarity.
admin
merged commit 4bd0a2dfbf into develop2026-03-02 19:19:48 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Replace the blocking main render loop in kernel.pas with two new
timer-hooked units that are driven by the 1024Hz PIT interrupt:
and video.Flush every 4 ticks (~256 FPS target).
The kernel main procedure now registers both timer hooks and enters an
idle STI/HLT loop (kernel.yield), allowing the CPU to sleep between
interrupts instead of busy-spinning.
Also removes the unused myUserLandFunction and reorders early syslog
init calls for clarity.