At my request, Yaya has added some new features into grub4dos 0.4.6a (new version should be released today/tomorrow).
You may know that the new setmenu command can be used to set the menu size/position/borders/numbering, etc. and position text at any place on the screen (see attached image).
Now it has a new additional feature to change the length of the menu highlight bar from short (only text has background colour) to fully across the screen (like the old grub4dos 0.4.5c did).
However, we also now have some new splashimage functions
--fill-color allows us to fill the whole screen with any RGB colour we like (this is much faster than loading a bitmap file). We could even fill the screen with a colour and then load a smaller splashimage background for just a portion of the screen.
Also, we have a --offset feature. This allows us to 'stamp' or overwrite the current graphics wallpaper with another graphics image. This allows us to display a logo or boiler plate on top of the wallpaper - for instance we could have a different 'boilerplate' on different menus, but use the same wallpaper for each menu. We can 'stamp' the background with as many images as we like.
Finally we have an --animated feature. This tells grub4dos to display a sequence of bitmaps or jpg files (from xxx01.bmp to xxxx99.bmp) and cycle them. Thus an animated graphic can be displayed either on the menu (infinite cycles) or immediately (1-15 cycles).
Each frame is loaded from the source drive, however, if we make a floppy disk image .ima file which contains all of the bitmap frames, we can load the whole floppy disk image into grub4dos memory and run the animation from memory. This means the animation does not have to continuously load the files from disk.
map --mem --read-only /ExplodedGIF.IMA (fd3) map --hook # ANIMATE - displays a sequence - first file must be end in 01.xxx (can be compressed bitmap using gzip or LZMA) - must use .bmp or .jpg as extension # trans=transparent, infinite=animate on menu or add 1-15 for number of cycles, disable playing menu type=0x0 # 18 delay units = 1 second, x and y in pixels, last = last frame number in sequence 01-99.xxx # display sequence on menu (with transparent background) set trans=0x80 && set infinite=0x10 set /A type=%infinite% + %trans% > nul # play sequence 3 times immediately ###set /A type=%trans% + 3 > nul set delay=0x3 set last=09 set x=650 set y=40 # use (bd) for boot drive or (hd0,0), so that if root drive changes it continues to load from correct drive. # if images are inside a disk image, specify (fd3) set FILE=(fd3)/frame_0001.bmp set ANIMATE=%type%=%delay%=%last%=%x%=%y%=%FILE% splashimage --animated=%ANIMATE% set trans= && set infinite= && set delay= && set type= && set last= && set y= && set x= && set FILE= && set ANIMATE=
The latest Beta of Easy2Boot takes advantage of these new features.
Suitable frames can easily be extracted from a GIF file using IrfanView and a floppy disk image .ima file can be made using WinImage or ImDisk. The bmp files can be compressed to .GZip format (or use the LZMA special utility for better compression) but the file extension MUST be three letters (e.g. xxx01.bmp or xxx01.bgf or whatever). You can make your own animated GIF by using a suitable web site (there are quite a few around).