Remove Chameleon Debug Message

In recently updating my Dell 1525 Hackintosh to Snow Leopard 10.6.3, when installing Chameleon 2 RC3 (or RC4, for that matter), I noticed when booting that I’d get a quick flashing debug message stating, ‘efi_inject_get_devprop_string NULL trying stringdata‘.  The message was fine, it didn’t make the install fail to boot or not work.  Things operated exactly as they should, however, being the perfectionist, I didn’t want to see it.  So, I set about trying to figure out what it meant and how to get rid of it.  After much searching, there really wasn’t any one good — EASY — solution. . .

The Dell 1525, when loaded and configured correctly for Snow Leopard, doesn’t require any ‘device-properties’ string injection, which is great and makes things much easier when installing to this particular machine.  Chameleon, being the excellent bootloader that it is, allows for this; and, many platforms require usage of it to work and operate correctly.  However, when the Chameleon developers compiled up RC3 and RC4, they inadvertently left the debug message noted above being shown on boot regardless of whether or not you were booting verbose or quick and quiet.  And, for the 1525, the message means nothing as the platform doesn’t require any injection, so it’s just completely benign debug output logging.

One solution to get rid of the message was to recompile Chameleon 2 RC3 or RC4, changing the ‘printf’ that displays this debug message all the time to a verbose logging message so that it only displayed when booting verbose.  Well. . . Recompiling the whole bootloader was way more effort than I wanted to get into just to get rid of some cosmetic “blip” that was annoying when booting.  Still, I wanted the message gone!  So, I came up with the following fix. . . which seems to work fine for me, and should for any other Dell 1525 Hackintosh user out there that’s not using device injection (and, you shouldn’t need to on the 1525), but that is using Chameleon 2 RC3 or RC4.

So, a quick and dirty way of getting rid of the message. . .

Download and launch EFIStudio (Google it up and download it.  It’s a great utility to have even outside of this post…) and look for your Ethernet adapter through the ‘Select Device’ combo box. Click the ‘Add Device’ button; you will see some hex output in the lower window of the dialog that presents.  Copy this string by selecting it or just use the ‘Hex String to Clipboard’ button.  Then, we need to add the following code to your com.apple.Boot.plist in /Extra off the root of your Leopard/Snow Leopard volume.  The code you need to add should look like this:

<key>EthernetBuiltIn</key>
<string>Yes</string>
<key>device-properties</key>
<string>4b00000001000000010000003f000000
0100000002010c00d041030a000000000101060
0001c0101060000007fff04001600000062007500
69006c0074002d0069006e0000000500000001</string>

Of course, the string variable you use for ‘device-properties’ should be your own (and not formatted as the above is), or in other words, use whatever was returned to you from EFIStudio.  It might be the same as the above, might not.  Either way, when you’re done adding this, save the file.

When you next reboot, you’ll notice that the debug message is now gone and you’ll have a nice, clean boot, absent of any debug output — as you’ll satisfy the bootloader, giving it something other than the NULL injection it was complaining about.  I tested the above fix — or better, work-around — for a while and from what I found there are no adverse effects to using this method to get rid of the debug boot string.

This entry was posted in Computer, Hackintosh, Ramblings and tagged , , , , , , .

One Comment

  1. Palash April 10, 2011 at 3:03 am #

    Hi there, I m trying to get rid of my – Dell N5010 such problem. But yet not make it possible.Hope your sugg. might be enough.

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*