- New splash unit (src/prog/splash.pas) displays a centered logo, progress bar and status label during kernel boot. Manually drives LVGL rendering + video.Flush since gfxd isn't running yet. - Embed img/asuro.tga into the kernel via NASM incbin stub (src/stub/splash_tga.asm), assembled in compile_stub.sh. - Build an lv_image_dsc_t at runtime from the decoded TGA pixel data and display it at 50% scale using lv_image_set_scale(128). - Move LVGL init earlier in kernel.pas (right after video enable) so the splash screen is available before VFS/drivers/network init. - Sprinkle splash.update() calls throughout kmain to show boot progress (VFS → drivers → buses → network → tests → desktop). - Fix targa.pas parser: rename Magic→IDLength, remove erroneous Data pointer field, compute pixel offset correctly (buffer+18+IDLength), advance source pointer per pixel, handle bottom-to-top origin flip. - Unit tests moved before desktop.init; splash.teardown called at 100% just before handing off to the desktop environment.
1.0 MiB
1.0 MiB