From The iPhone Wiki
Revision as of 20:17, 6 November 2009 by Rusmac (talk | contribs) (reverting vandalism)
Jump to: navigation, search
"Drag To Unlock" screen. Text is "Drag To Unlock" and "Shut Down"
After "Drag To Unlock" screen, when you "Drag To Unlock", you get this screen. In order, "Start Burnin", "Reset Test Enviroment", and "Quit"
boot logo

BurnIn is codename for a tool used by Apple. Nothing is really known about it, but somebody on Hackint0sh got their iPhone back with BurnIn on it, suggesting that it is a diagnotstics or a repair tool.

What it does

Leftover strings on firmware 2.1 have told me this; Apple restores a special firmware to the iPhone, but it is based on a regular firmware. At boot, /AppleInternal/Applications/SwitchBoard/BurnIn.app/BurnIn will run. It checks /AppleInternal/Diags/purpleskank/config.plist for configuration information, such as version (v3.0 in this case), where to store the logs (/Library/Logs/BurnIn/ in this case), what level to set the backlight to, and also, some kind of cleanup script is defined (/AppleInternal/Diags/Utilities/burnin_cleanup.sh). What it actually does is still not known though. Two log files are also left by it, by doing whatever is done. They are /Library/Logs/BurnIn/burning_log.xml and /Library/Logs/BurnIn/burnin_log.txt.

On the old iPhone prototypes, BurnIn is launched by the /AppleInternal/Applications/SkankPhone.app/SkankPhone, a SpringBoard replacement. It starts the /AppleInternal/Diags/purpleskank/factoryharness, which loads the configuration from config.plist file in the same directory. Factoryharness loads the index.plist file from location specified in config.plist (default is /AppleInternal/Diags/purpleskank/tables/index.plist) and begins to execute the tests specified in index.plist ("Burnin process"). When tests are successful, logs from burnin process are saved to /AppleInternal/Diags/Logs/ (or to other directory that can be set in config.plist). In case of failure, a failures.plist file is created in Logs directory. If Burnin process has not been completed, file state.plist is parsed by factoryharness and it continues the burnin process. If burnin process has failed, Skankphone.app shows a FAILURE screen and displays contents of burnin_log.txt. To get rid of that screen, user must select the Reset Test Environment option in SkankPhone - it executes the /AppleInternal/Diags/Utilities/burnin_cleanup.sh.

BurnIn on iPod touch

The day of the launch, numerous iPod touches shipped with BurnIn on it. In order to get it off them, you just did a restore. A few of these were sold on eBay.

Video: http://www.youtube.com/watch?v=nVMY1aC1kk4