Boot Screens in XP SP2


Recommended Posts

Would a moderator be able to top this subject, please?

Over the last few days, there has been a significant amount of members here who were having problems porting their boot screens to SP2. I happened to be experimenting with the SP2 boot screen lately and fortunately, I am pleased to mention that I have been able to successfully create a boot screen that works in SP2 that will be submitted onto ThemeXP later today. The purpose of this post is to state the problem and the workarounds.

Problem: Say you are using a program such as BootEditor. It allows you to compile most of the resources into the boot screen, move the progress bar to the desired location, and embed the colour palette. However, Service Pack 2 for Windows XP is released and when the boot screen is loaded after being compiled, the colours are screwed up.

Cause: When I previewed a SP2 boot screen compiled in BootEditor, I took a snapshot of the compiled boot screen as it loaded up on startup and compared it to the original. I noted that the first two colours have been bumped off (translated to black) and therefore, the rest of the palette has been shifted two spots towards the left. Yesterday, I checked the default NTOSKRNL.EXE file and the compiled NTOSKRNL.EXE file in UltraEdit and I noted that Microsoft programmed the boot screen palette does not start at the beginning of line 00075690h as BootEditor was programmed to read, but rather at the ninth hex couplet of line 00075680h (A line consists of 16 hex couplets). So, we understand now that BootEditor is only programmed to read the palette codes starting at the first hex couplet of a line.

Solution: Once you have made the graphics, converted them to indexes, and transferred the graphics to BootEditor to compile it for SP2; you will need a hex editor like UltraEdit. You load up the hex editor to open the SP2 boot screen file and look for the line that says 00075680h on the left. Go to the ninth hex couplet and start typing everything in order listed from lines 00075690h to 000756c0h. When you get to the last eight hex couplets of line 000756c0h after typing the 64 hex couplets, type the following:

01 00 00 00 FF FF FF FF

Save the changes and you are ready to test the boot screen.

If you decide to not use BootEditor to insert the images, note that when you load up the hex editor to type in the palette, the sequence is Blue Hex Value, Green Hex Value, Red Hex Value, 00 and NOT Red HV, Green HV, Blue HV, 00. And yes, the palette is typed in order from index 0 to 15.

Hope this helps for you all and I'll be doing some deeper boot screen hacking, which some of the info may interest you in the future.

Link to comment
Share on other sites

I signed up on this site to say thanks Webgraph for the info. Now I am able to make all my screens compat w/ the new sp 2 kernel. Its gonna take a few moew moments to complete a screen w/ this kernel but untill a easier way comes along, we will have to live w/ it.

Double H

Link to comment
Share on other sites

...sooooo... does anyone have a .pal palette that i can load into paint shop to do my editing with? the old/sp1 ones are obviously non-working and i have no clue how to put all this information together to make a new one.

give me a laser or a router and i'm fine - tell me to correct the colors on an image in photoshop and my brain freaks out :blush:

Link to comment
Share on other sites

I signed up on this site to say thanks Webgraph for the info. Now I am able to make all my screens compat w/ the new sp 2 kernel. Its gonna take a few moew moments to complete a screen w/ this kernel but untill a easier way comes along, we will have to live w/ it.

Double H

You have my gratitude, Double H, and welcome to Neowin. ;)

Link to comment
Share on other sites

...sooooo... does anyone have a .pal palette that i can load into paint shop to do my editing with? the old/sp1 ones are obviously non-working and i have no clue how to put all this information together to make a new one.

give me a laser or a router and i'm fine - tell me to correct the colors on an image in photoshop and my brain freaks out :blush:

I used the same palette that I had for sp0 & sp1 & its working fine frm here.

Double H

Link to comment
Share on other sites

Ok, I tried this and the colors changed on the boot screen I made. However, they still aren't the proper colors. I'm not sure if I made any mistakes or not seeing as I rarely have the opportunity to use a hex editor, but I did it twice and the results were the same. Is there any other way possible to fix this? Thanks in advance for any help.

Link to comment
Share on other sites

Ok, I tried this and the colors changed on the boot screen I made. However, they still aren't the proper colors. I'm not sure if I made any mistakes or not seeing as I rarely have the opportunity to use a hex editor, but I did it twice and the results were the same. Is there any other way possible to fix this? Thanks in advance for any help.

As I know of, the hex editor is the only way of doing this until BootEditor releases an update that will accomodate SP2 boot screens. Perhaps you may be able to post the boot screen bitmap and a picture of what it's turning out to be here (or links to the images)?

Link to comment
Share on other sites

Ok, seems I got it working. Chances are I just goofed up the first couple times.

Something I noticed is that up in the left top corner there is this little black box, I don't suppose you know what that is from, or how to get rid of it?

Edited by X PsychoTron X
Link to comment
Share on other sites

Humm ok, I seem to have stumbled upon another problem. You see I just built this new computer for my girlfriend who is going of to college in sep, and I wanted to make something really unique for her. So I decided I would go ahead and just tweak everything out. New login & Password images, boot screen ect with her school seal, colors and her name. So while doing all of this I did it all on my computer which is running xp pro, same as hers, as well as the same exact version of SP2. I got everything running just great on my computer and once I did I transferred it all over to hers and set it up. But for some reason it wouldn?t boot with the file I had made.

So I decided to just run through all the steps on her computer and I found out something rather strange. I have no idea why the kernel file would be any different but in the location you give everything is completely different from the one I made on my computer. I went ahead and changed it anyways, and it would boot however the colors are all still messed up.

hex.jpg

I?m not quite sure what to make of this, but I?ll post a link to the new kernel I made and if you want you can poke around. Any help would be greatly appreciated.

PS. I don?t know if this would have any relevance to the type of kernel, but I use a CRT monitor and her computer uses an LCD.

##NTOSKRNL DOWNLOAD##

Link to comment
Share on other sites

Why don't you PM me a link to the image you're trying to create and the palette you intended to use?

Humm well that is the thing. I got it working fine on my computer using your guide, however on hers there seems to be a different ntoskrnl file because the color information doesn't apear to be where you said it was. Just take a look at the current ntoskrnl file download I've provided. Chances are if you were to put it together for me I would run into the same probelm I had using the one I created on my computer.

Link to comment
Share on other sites

Why not just use BootSkin? Works fine on SP2, and no chance of breaking anything. :whistle:

Hummmmmmm! I wasn't aware this program was in exsistance. Guess I should look into it. Thanks dude.

Link to comment
Share on other sites

Well, bootskin seems alright. Not quite as good as a real windows boot image. Kind of flickers into view, also I don't like the way the progress meter animates. However, I'm just going to tinker around with it and change a few things, maybe I can come up with something that will better suit the way bootskin works.

Link to comment
Share on other sites

I kinda liked the fade-in effect, but that's just me...:whistle: The progress bar can be customized, you're not stuck with the default. I use BootSkin & Logon Loader(Also free fron StarDock) to gt a completely themed startup.

Link to comment
Share on other sites

X PsychoTron X, as soon as I downloaded your kernal frm here & opened it up in Boot Editor, I seen all your probs, & it all starts w/ the palette that your trying to use.

First off the black square you are getting in the top left corner is the first color (COLOR 0) of your pallette that your using is black. Heres a def of color 0-> Color No. 0 (first color) is the also the color for a stupid small rectangle with a size of 23x10 pixels in the left upper corner (I think this area will be used in the memory to show the running progress bar), a 8 pixels broad border around the whole boot screen and the background color for the progress bar.

Now since the background of the top left corner of your screen is purple, change the first color in your palette to the exact same purple. Also I would suggest to change the background in your Progess bar, where you have it black now, to the purple also. For example, look @ this screen I made, thats avail on Themexp.org

http://www.themexp.org/preview.php?mid=623...name=Beauty.zip

Now for this example My bg is white & see how I made the background for the progress bar white also, cant see her leg through the p bar area.

Now on the color palette the second color (Color 1) has to be BLACK (0,0,0). Nothing less then black has to go here. Def of color 1-> Color No. 1 (second color) is always black (also if you give another color than black, the color will be not considered and this areas will displayed black)

Fix these 2 errors in your editing software, being Photoshop, Paint Shop Pro or whatever, on the main bitmap, dont forget to apply that FIXED palette to your progress bar also. Then open BootEditor & apply those images to the ntoskrnl file in there. Then take that kernal into Ultra Edit, & you will be able to fix that bootscreen kernal in UE w/out a prob.

Double H

Link to comment
Share on other sites

Humm ok, I seem to have stumbled upon another problem. You see I just built this new computer for my girlfriend who is going of to college in sep, and I wanted to make something really unique for her. So I decided I would go ahead and just tweak everything out. New login & Password images, boot screen ect with her school seal, colors and her name. So while doing all of this I did it all on my computer which is running xp pro, same as hers, as well as the same exact version of SP2. I got everything running just great on my computer and once I did I transferred it all over to hers and set it up. But for some reason it wouldn?t boot with the file I had made.

So I decided to just run through all the steps on her computer and I found out something rather strange. I have no idea why the kernel file would be any different but in the location you give everything is completely different from the one I made on my computer. I went ahead and changed it anyways, and it would boot however the colors are all still messed up.

http://www.information21.com/upload/psycho-tron/hex.jpg

I?m not quite sure what to make of this, but I?ll post a link to the new kernel I made and if you want you can poke around. Any help would be greatly appreciated.

PS. I don?t know if this would have any relevance to the type of kernel, but I use a CRT monitor and her computer uses an LCD.

##NTOSKRNL DOWNLOAD##

Does that computer use hyperthreading technology by chance? If so, it doesn't use the normal ntoskrnl.exe. During setup, if windows detects a dual processor/hyperthreading it renames ntkrnlmp.exe to ntoskrnl.exe and uses that as the kernel. The palette as well as progress bar postitions are in a different place.

The offset for the palette is: 79C08

First progress bar string: 3984C; 3B072; 3B08C (62 01 00 00); These three locations contain the vertical postitioning of the progress bar.

Second progress bar string: 398CA; 3B082 (6A 01 00 00) These two locations contains the vertial postitioning as well as the progress bar height.

Looking at a copy of ntkrnlmp.exe here looks like the screenshot you posted...

Link to comment
Share on other sites

Ahh, thanks for the replies. Seems there is no email notification on this forum so I never know when to check back. You guys have shed a lot of light on things for me, thanks a ton. jrzycrim --> You're right, that computer does use HT. However I just ended up using boot skin on her computer and made her a boot screen with no progress bar because I don't like how the progress bar in boot skin animates. But everything you guys have told me should help in the future with my own computer so thanks a ton. :D

Link to comment
Share on other sites

w00t!

The guy who makes boot editor hooked me up with a copy that supports service pack 2, it's not on his site yet and I don't think I should distribute it, but just wanted to let you guys know to expect it soon I guess. He changed the format around a little and now it only saves .zip files, but if you need .exe's what you do is set a test screen and just snag the new .exe out of the system 32 folder. I guess he did it to make file sizes smaller and to make it so everyone makes their own using their own kernel, which would mean if you shared the zip's I guess you would need his program to put everything back together.

Link to comment
Share on other sites

That's good news. I figured there would be a new version released soon. I saw a couple of posts by UserXP the other day and he has a new version of his Loginui/boot randomizer.

---------

Some folk'll never eat a skunk but then again some folk'll,

like Cletus the slacked-jawed yokel. :laugh:

Edited by jrzycrim
Link to comment
Share on other sites

Well thanks for the heads up, PsychoTron, but I think I'll stick to doing things the raw way. Meanwhile, I am considering checking out how to modify the diagnostic screens so the NTOSKRNL.EXE will be tweaked all the way to the hilt.

Link to comment
Share on other sites

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.