Mac Boy, on 24 April 2011 - 02:25 AM, said:
Copy and paste the above old-school listing to a plain text file called txt, then recreate the binary with this command:
xxd -r txt boot0
Install
You'll notice that the file length is 512 bytes: the first 440 are for the MBR executable code, the next 4 are reserved for the disk signature, and the remaining 68 are for the partition table. Please verify that the MD5 of the newly created boot0 is 97a61d25dd69f0cf87d91f40607f1258, then install it as follows:
sudo fdisk -uy -f boot0 /dev/disk0
Windows 7 Install
If you dual boot, the above command will overwrite your disk signature. To avoid that use these commands:
dd if=boot0 of=mbr bs=440 count=1
sudo fdisk -uy -f mbr /dev/disk0
Now when you reboot, you'll notice that the BIOS will go through it's various stages, and the text will be large and stretched -- just as it always was. But once the new MBR code is loaded and executed, the text will not be stretched and it will be very sharp. It may look like a text window in the center of the display, but it's not. Here you may see the boot0: Unstretch message if you are quick. Then the Chameleon boot screen will appear and you'll see sharp text (especially if you use -v) and a one to one pixel ratio.
Conclusion
If you have a recent nVidia video card AND a digital LCD connected via DVI, you can install the above boot sector and enjoy an undistorted Chameleon boot screen. Once your chosen OS boots up and loads it's own drivers, they will take over and set the resolution and video mode.
Works as advertised... Sort of.
The dual boot work around didn't work for me. "sudo fdisk -uy -f mbr /dev/disk0" command didn't work for me. I got the same "fdisk cannot read MBR" error that other people got. If you are dual booting with Win 7 on the same disk be sure to have a Win 7 recovery disk around. You will probably need it. I finally got the thing to work after some trial and error. I don't remember exactly what I did. It involved hosing my MBR, fixing it with a Win 7 recovery disk and reinstalling chameleon.
A critical step in recovery is setting the Win 7 partition as "active" prior to repairing the MBR. I used the diskpart utility at the command line. You must then make the OS X directory active after you have performed the Win 7 repair otherwise Chameleon never boots. It just goes straight to the Windows 7 directory. I did this with an Asus nVidia 210 Silent 1 GB. Question is why didn't you just attach the boot0 file if it is the same for everyone? I inserted mine below. Verify the MD5 guys and then use it if it matches
97a61d25dd69f0cf87d91f40607f1258.
If you want to make it yourself for some bizarre reason just open TextEdit. Copy just the Hexdump in the OP. Do not copy any extra spaces. TextEdits default file format is rich text. The text appears green on my Hackintosh just like in the OP. In text edit go to the "Format" menu and click "Make Plain Text." Save the file as "txt". I saved the file to the desktop. Next open terminal. Then type "xxd -r ". Then drag and drop the file named "txt" into the Terminal window. Make sure there is at least one space between "xxd -r" and the file named "txt". Type a space after "txt" if there is not one already and then type "boot0". Hit "Enter". You have now created the "boot0" binary in the folder /Users/"Your name here"/. You don't really need to know that. But if you are curios that is where the file is. Now type "md5 boot0" and hit enter. Terminal should spit out a number that matches
97a61d25dd69f0cf87d91f40607f1258. Okay now type "sudo fdisk -uy -f boot0 /dev/disk0". That should be it.
md5 boot0
If you just use the boot0 I made be sure to verify the md5. Go into terminal. Type "md5". Make sure there is one space after "md5" and then just drag and drop my "boot0" file into terminal. The number that Terminal spits out should match. If it does then use the "sudo fdisk -uy -f
boot0 /dev/disk0" except while you are typing it in when you get to where "boot0" is just drag and drop my verified "boot0" into terminal. Then finish typing the command. It should work.
"md5 boot0" output should look like this...
MD5 (boot0) = 97a61d25dd69f0cf87d91f40607f1258
OOPS!!! I am not permitted to upload that kind of file.
Sorry folks.
Oh well. I hope this post at least fills in some missing steps for noobs.