!!!!!!!!!!                 WARNING               !!!!!!!!!!

Don't use this tool if you have no way to recover from a 
bad flash! I have tested it, but not every possible BIOS 
patch. A bogus profile entry will either cause the 
patcher to fail, or hose the BIOS file.

Use this software at your own risk.

Thanks to Paul Bartholomew for xbflash, to superfro for 
his BIOS mods, and to k3rn3l and MomDad for ideas, 
info and support. Thanks to SantMat for his ultra-smooth
no-animation patch. Without these people, XBtool would, at 
best, be much less functional than it is, and, at worst, 

Extracts, compiles, and patches XBOX BIOS/kernel files.

You'll need to supply your own RC4 key for older BIOSes. If 
you are working with a BIOS which works with both the old 
xbox and the "1.1" xbox then you don't need an RC4 key.

I have included profiles for the basic X2 4974 Multiver 
BIOS, and EvolutionX D.6. More will be added later.

Note: the profiles.ini file format is still changing. The 
basic principles are the same, but keywords and key formats
have changed.

The DVD checkbox is used to disable the DVD check so that 
the Xbox will boot with no DVD drive installed. This might 
be useful if your DVD drive is dead.

The x logo checkbox is used to disable the big 'X' logo. 
Unchecking this automatically disables animation, otherwise
you get a blank screen but still hear the animation sounds.
When the logo is off, don't panic when the screen remains
black for a few seconds after booting. This is normal.

The splash logo is that little graphic that fades in right 
before the dash appears.
Some things NOT to do with this:

-Don't encrypt a BIOS that was originally unencrypted. 
 (I've added *some* protection against doing so.)

-Don't add your own BIOS profile if you don't fully 
 understand what you're doing.

-Don't make an F boot bios if you don't have a dashboard on
This is a beta. Expect bugs. If you 
don't like bug then don't use beta software.

The ini files are probably not very fault tolerant at this

Things to do:


-More boot partition options.

-Better documentation.

-Lots of code clean up and error control/notification.

-Release the source code
 (after final 1.0 version release)


0.9 --

-Completely rewrote the patch engine.

-Completely rewrote the BIOS recognition routines.

-Profiles no longer needed (due to the changes mentioned

-Removed the function for manually choosing the base BIOS
 type (no longer needed as per above).

-Fixed what was probably a long standing bug in the 4975
 patch profile (I never was able to test 4975 because it
 hung my machine).

-Fixed broken terminology. What was the lip spot color is
 now correctly (I think) termed the lip color. What was
 the lip color is now termed the lip highlights. I think
 it's a more accurate terminolgy. Preset files not

0.8.52 --

-Yet another preset bug. (Thanks MomDad)

0.8.51 --

-Bugfix: version 1 presets weren't being read properly.

0.8.50 --

-SantMat's power LED color patches.
-Base profile types wrapped into the exe.
-Added menu command to allow manual choice of the base 
 profile type for an unknown BIOS.
-Bug fix: RC4Processing was broken.
-Bugfix: BIOS extraction was broken.
-Bugfix: display bugs.

-Major internal code overhaul. (Watch out for bugs!)
-Warning: LED color patches not fully tested on all
 supported BIOS types.

-Warning! I'm too tired/lazy to test all possible options
 and BIOS types so don't flash if you can't fix it!

0.8.27 --

-Bad news: the preset format changed. I didn't plan to make
 another release so soon, but I figured since the preset
 format changed and people will lose their old presets,
 sooner was better than later.

-Preset format changed. I really didn't want to
 do it, but it was needed for a bug that could cause
 problems later. Sorry, but that's beta for you. I hope the
 formats for presets and profiles won't change again, but
 no guarantees. I've provisioned for backward
 compatiblity for non buggy formats.

-Delete preset button.

-Fixed BIOS MD5 to match Evox (I broke it somewhere along
 the line)

-Much code cleanup. I may be able to do a 1.0 final soon
 and release the source.

0.8.25 --

-Presets (stored in individual files so they can be
 exchanged with other users).

0.8.20 --

-Profiles in individual files.

-Saves profile when BIOS is saved.

-Profile saving allows modded BIOS files to be loaded.

-Reads BIOS features from the kernel.

-DVD check checkbox disabled on x2 BIOS's (It's always

0.8.11 --

-Added back the no splash logo patch which I (wrongly) 
 thought didn't work. (thanks MomDad)

0.8.10 --

-SantMat's no logo patch.

-SantMat's no dvd drive check patch.

-Color pickers for full control of the two inner X colors.

-Fixed: bug in profiles.ini made the TM symbol off when 
 the option was checked. --

-Protection from patching an unknown BIOS.

0.8.9 --

-New, totally silent noani patch

0.8.8 --

-Color picker for lip spotlight.

-Two-color X logo system. 

0.8.7 --

-fixed multimonitor issue with the color popup

-text error in the color popup

0.8.6 --

-Color picker for X edge

-Purple option

-Automatically sets appropriate edge and "XBOX" colors 
 when a color radio button is clicked, so you don't have to 
 go through the color pickers if you just want a matching 
 motif (you can then change these if you like).

-Profiles.ini changed again. I didn't have time to do a D.6
 profile, due to the many changes in the way the 
 profiles.ini works.

-Various internal reworkings.

0.8.5 --

-Color picker for setting the color of the word XBOX

0.8.4 --

-Better error messages

-Fixed Profiles.ini for D.6

0.8.2 --

-BIOS sizing.

-Separate settings for X logo color and XBOX color.

-Changed Profiles.ini for seperate color patching.

-Lots of internal reworkings (possibly added bugs).

-Fixed bug where .bin was being added to bios files even 
 when they already had a .bin extension. 

0.8 --

-MD5 for ID of BIOS files and kernel versions.

-Patches BIOS if a BIOS profile is available.

-Patching of for color/animation/logo/boot-drive.

-User editable profiles in "Profiles.ini" allows for 
 support of any BIOS.

-RC4.ini allow up to 9 users supplied RC4 keys.

-Copy MD5 to clipboard.

-Numerous other internel changed.

0.2 --

-Initial release.

The flash packing/unpacking code is based on 
Paul Bartholomew's xbflash util.