Windows 98 / 95 Animated Logo Screens

As many people are no doubt aware, anyone can replace the startup logo screen shown by Windows 98 / 95 with one of their own, the only problem has been that it isn't widely known how to create an animated startup screen (Those pretty moving blue bars at the bottom of the standard screen.) While some people may not feel this is important, and many simply disable the logo screen completely, with my extremely unstable system (Strange Hardware), it is important to me to know the that the system is still doing something rather than just sitting there during startup. Until now this has left me STUCK with the default startup logo which has bothered me because I KNOW I'm running Window 95, and don't need to be reminded every time I boot (Happens quite often). As it turns out, creating an animated startup screen is a rather simple though time consuming task.


What's required:

  1. The desire to get rid of that annoying Windows Logo.
  2. A picture to animate, this should be a 256 Color 320 x 400 Windows BMP, this seems a strange size because the startup screen uses a mode that puts that resolution on the screen. I tend to do my designing on a 640 x 400 image then scale it using a graphics utility, this makes it easier to get the proportions correct.
  3. A graphics Utility that can directly edit the Palette of an image. (I have yet to decide what is the best for this, I've been trying out a few different ones, and think the final choice will be Paint Shop Pro)
  4. A hex editor. or the XrX Animated Logo Utility (822KB) which allows you to view animations without rebooting, and does all the hex editing automatically, check out the XrX Animated Logo Tools Page for more info.
  5. Patience, getting all the right colors in all the right places can be time consuming.

Steps to create Animated Logo:

First a word about the 'animation' this is not true animation, this is palette animation, this means that only the colors of areas on the screen change, not the shape of the areas. This is accomplished by the manipulation of the pictures palette, so far I have got 2 scenarios figured out, the first simply rotates the palette from a selected starting point through to the end continuously, this is the method used by the default startup logo. The second seems to step through the palette to the end and back again. Designing an animation using this technique can be a bit of a challenge.

  1. Create, borrow or whatever, just get yourself a picture to animate. A good place to get some ideas is Steve Kremer's Windows 95 & Mac Joke Wallpaper etc. Page One of my first attempts was a bitmap of flowers, simple but appealing. I found a JPG that's 640 x 480 TrueColor.

  2. Correct the size of your picture. Resize the image to 320 x 400 using your choice of tools.
  3. You will need a few unused colors in the palette to use for your animation. So at this point you want to reduce the color depth of your image to something under 256. I'm going to use the same kind of animation that the default logo uses at the bottom of my image so I'm going to need 20 colors. (If you count you'll find that there are 20 boxes across the screen) So I need to reduce the number of colors in my image to 236. I find that doing this step after resizing generally results in a better image.
  4. At this point I generally go in and set the unused colors I'm going to be animating (Must be at the END of the palette) to unique colors that are not used anywhere else in the picture. This makes it easier to do the editing because some editors will use the first matching color in the palette rather than the one selected. This can get quite frustrating, you think you've set that last box to a specific color to be animated, and it never changes because it actually got set to a non animated color earlier in the palette.

  5. Now add the elements to be animated to your picture, in this case I am putting 20 boxes across the bottom of the picture, and setting them to each successive color I set in the previous step.

  6. Now go back and set those colors to what you actually want them to be. In my case I started with black, faded to green and back to black in those last 20 palette entries.

  7. Save your picture as a 256 color Windows Bitmap (.BMP), it will have to be renamed later.
  8. Load the file you just saved into your Hex Editor. Changing the following Bytes:
  9. Save your original LOGO.SYS if any.
  10. Rename your file to LOGO.SYS (This is in the Root Directory of your boot drive (If your boot drive is compressed LOGO.SYS can be found on the HOST drive) by the way.)

  11. Reboot. If your lucky everything should work just the way you want.

This is a 'simple' example, and most of the grudge work can be done automatically using a small utility I've created, XrX Addbar, which adds the animated bar to the bottom of an appropriately sized bitmap, to download this and other XrX Tools, check out the XrX Animated Logo Tools page.


Good luck creating your own logo's, I wouldn't mind seeing other peoples work, or if you have any comments you can send me E-Mail. Karl McMurdo (XrX) - kmcmurdo@nucleus.com

Check out some Sample Logos (Over 400 and counting)

One final note here, I got serious about figuring out the animated logo screen after seeing some interesting themes available on the net for MS Plus, and deciding that a theme in my mind couldn't be complete without a tied in startup screen. One of the better sources I've found for themes is Dale's Window 95 Theme Page With new themes being added all the time...


Changing the Windows 95 logo


What you should know before reading this:

To animate the logo you created, you should know, how Palette animation works and you should be able to use a Hex-Editor.


Introduction:

There are different full-screen bitmaps in Windows 95, so there are different files for them. The startup logo is embedded in the file c:\io.sys. If you are using an extended version of Windows 95 (for example "Plus!") then you probably have a (hidden) file called c:\logo.sys. This file has a sys-extension but is a normal bmp-file. To find out, if it really is the startup logo, open it in Paint, it should work. The logo-bitmap in io.sys is on every Windows 95 system but the logo.sys-file exists just in non-standard versions. If both are present (a valid logo-bitmap in logo.sys and another one in io.sys), then the logo.sys-bitmap is displayed. For Details about how the "logo-display-mechanism" during the booting works, see section booting - pseudo code.
There are two other full-screen bitmaps: the one that says 'Please wait while your computer shuts down' (c:\windows\logow.sys) and the other one that tells you that it is now safe to turn off the computer (c:\windows\logos.sys). Sometimes there also is the bitmap available for the screen that you see when you start Windows 95 the first time (c:\windows\logo1st.sys). All three of them are normal .bmp-files with a sys-extension. They all have to be in a special format: width 320, height 400, colors 256.
Some programs store their full-screen bitmaps the same way (bmp file with sys-extension, format: 320x400x256) . For example Norton AntiVirus uses the two files c:\windows\nlogow.sys and c:\windows\nlogos.sys. If you have another program that stores its logos this way please contact me. I'll add a note to this page.


How to change the logo:

Maybe you want to restore the original logo later, so make a backup of the logo.sys-file. Then you will have to create a bitmap with the format 320x400x256. Note that the bitmap must be exactly this format to be displayed. - An alternative to creating your own bitmap is to go to the XrX Animated Logo Collection. There are a lot of logos to download for free. - Then you save the bitmap you have created/downloaded as "c:\logo.sys". When you now reboot the system, your logo is displayed instead of the default logo.


Animation during booting:

The standard logo includes an animation (the line at the bottom). This animation is a simple Palette Animation (Colorcycling) which starts at a certain palette entry and ends at the last(255th) palette entry. To use animation in your own logo-bitmap, you need to use an image-editing program that allows you to edit the palette manually (MS Paint doesn't let you do that). When modifying the palette, you have to place the entries which you want to animate at the end of the palette (including the last entry). Then you have to modify the bitmap-file in a hex-editor. You need to specify the palette index at which the colorcycling starts. You have to change the following bytes:
Offset: hex 32 - This byte must contain the first palette-entry you want to animate
Offset: hex 33 - must be set to zero.
If you have done all this properly, the animation will start automatically during the booting. The colorcycling runs from the higher palette indexes to the lower, for example: if the lowest animated palette entry is at index 250: 251 becomes 250, 252 becomes 251, 253 becomes 252 and so on.
View Example


"logo-display-mechanism" - Pseudo Code:

This is what I found out with experimenting a little bit. I don't know wether it is complete or the if-conditions are in the correct order but this way it seems to be okay.
if (line "Logo=0" in section '[Options]' of 'c:\msdos.sys' exists)
    don't display a logo
else
    if ('logo.sys' exists)
        if (logo.sys contains a valid(320x400x256) bitmap)
            display the logo.sys-bitmap
        else
            don't display a logo
    else
        display the io.sys-bitmap
As you can see you can prevent that the logo is displayed if you add the line "Logo=0" to the '[Options]' section of the file 'c:\msdos.sys'. Another way to prevent that a logo is displayed is to create an empty 'logo.sys' (actually, the file could contain any data but an 320x400x256 bitmap). This way the "logo-display-mechanism" would end at the "don't display a logo' in line 8 (because logo.sys doesn't contain a valid (320x400x256) bitmap). If you do not want the system to display a logo, prevent it using one of the methods metioned above, but do not delete 'io.sys'!. The file 'io.sys' contains data (beside the logo) which is absolutely necessary to run Windows 95.

Back to the main page


Boot Splashes

How to create those animated startup and shutdown screens.

Boot splashes and shutdown screens are nothing more than bitmaps. There are three files in all:

  1. C:\LOGO.SYS*
  2. C:\Windows\LOGOW.SYS
  3. C:\Windows\LOGOS.SYS

* Note: Windows 98 has no LOGO.SYS, by default. The image you see is actually embedded in the IO.SYS binary file (as it is in Windows 95). No reason has yet been given for the absence of an editable version of the default boot splash in Windows 98. Note that if you do have a LOGO.SYS in your root, it isn't a Windows 98 one (perhaps the Plus! pack or some other third-party software put it there).

If you rename these files, changing the extension from .SYS to .BMP, you'll be able to open them up in your graphics application. The first thing that'll strike you is the size: 320x400. The image seems "squashed". Don't worry, though. This is quite normal because IO.SYS will stretch the image to 640x480 at bootup (and shutdown).

The important part to note is that there are only 256 colours. All boot splashes must therefore conform to the following specification:

320 wide by 400 high, 256 colours.

So much for specification. "How's the animation achieved?", I hear you cry.

Simple. The 51st byte in the file (offset 50 decimal, 32 hex) specifies the first colour in the palette to be animated. All colours beyond this one will be animated, while all preceding colours will be fixed. The 52nd byte (offset 51 decimal, 33 hex) dictates the cycle order: 0 for continuous, 1 for back and forth.

Therefore, if offset 50 is set to 236, then palette colours 0 to 235 will be fixed, while the remaining 20 colours (palette colours 236 to 255) will be animated.

When you come to create your own images, first resize the image to 320x400 (using anti-aliasing, to achieve better quality). Next, decide how many colours you want to animate (10 to 30 is usually fine) and reduce the palette size by that amount. In other words, if you want 20 colours for cycling (same as the default splash), reduce the colour depth to 236 colours. The first colour in the palette is colour 0, so your range of colours will be 0-235, with the remainder up to colour 255 being used for cycling.

The 20 unused colours at the end of the palette should then be set to unique colours. Although it's important that these 20 colours are not currently used by the image, it doesn't matter what colours you use at this stage.

Now, add the elements you want to animate, using the 20 colours at the end of the palette. For example, to create the moving bar at the bottom of the default splash, create 20 boxes using each successive colour.

To finish off, change the 20 colours to the actual colours you want to use. For the moving bar example, you'd want to use gradually darker colours towards the 10th (the middle), and then back to lighter colours towards the 20th. Your image should show a dark area in the middle, gradually lightening towards each end.

When you're happy, save the image as a 256 colour image.

Finally, open the newly saved image into your hex editor. Change the 51st byte (offset 50 decimal, 32 hex) to 236 decimal (EC hex). If you want back and forth cycling, change the next byte to 1 decimal (01 hex), otherwise set it to 0 (00 hex).

Save the file and rename it LOGO.SYS. If you have a LOGO.SYS in your root, copy it somewhere safe (or rename it), then put your new boot splash in the root.

When you reboot, you'll have your very own animated boot splash.


Changing the logo screen in Windows 95 is even simpler than in Windows 3.x, as it doesn't involve using the uncommon RLE format. The screen can be stored in the file LOGO.SYS, in the root directory of the boot drive. If it's present, load this file into Paint after making a backup copy. You'll find it's a squashed-looking, 320-by-400, 256-color bitmap. During the loading process, Windows 95 stretches it to 640-by-400. To edit the existing screen, select Stretch/Skew from the Image menu and stretch the image to 200 percent horizontally. If you want to create an all-new logo bitmap, start with a 640-by-400, 256-color image. In either case, use the Stretch/Skew tool to reduce the file by 50 percent horizontally before saving it.

The standard logo screen has a color bar across the bottom that seems to move. This animation is produced by cycling the colors assigned to the last 20 entries in the 256-color palette. If you make changes to LOGO.SYS and save it, however, the animation disappears. To restore the animation, load LOGO.SYS into DEBUG and enter these commands at the prompt:

    E CS:132 EC
    W
    Q

You can actually expand on this feature to animate your own logo screen. Just start with the existing logo screen and erase everything except the animated color bar. Use the dropper tool in Paint to pick up color from a portion of the animated bar, then paint something else on the screen with that color. Whatever you paint will change color along with the animated color bar.

-- Neil J. Rubenking
From the 2/18/97 issue of PC Magazine