windows-cesplash-screenplatform-builder

Customize bootloader splash screen for non x86 targets


I'm building an OS in Windows CE 6.0R3 targeted for the ARM9 architecture (Specifically it's for the iMX28 series) and I'd like to change the boot screen to display a custom image when the device is first booted up.

How can I do this? I read through some rather vague and sparse bits of documentation that suggest you need to create it in the .bmx format and enable video, but nowhere do I see how to actually change the splash screen shown when the device is booted up.


Solution

  • It depends. Generally speaking it's the bootloader that controls initialization of the display controller and sending data to the controller for the initial image that appears before the OS is loaded and it's display driver takes over. In a typical x86 target device using the out-of-the-box BIOS bootloader that ships with Platform Builder, it will load the splash.bmx (a compressed BMP) and display that.

    In all ARM-based cases I'm aware of, BIOS bootloader is not what is used to load the image, but instead is a BSP or vendor-specific loadr. I've seen a variety of things from custom OEM bootloaders to derivatives of redboot. In those cases, you have to know how the bootloader is set up to display a splash image and how to configure it (if you even can - some are hard-coded).

    Since we don't know what bootloader you're using, I won't even hazard a guess as to the specifics for how yours works. Your best bet is to either check with your platform documentation and see if it's described, or check with the OEM. If you happen to be the OEM, you'll have to look into the source code for whatever bootloader you are using.