So there’s a Hard Drive Update 1.0 update out from Apple! Put on your mining hats and let’s go spelunking… first stop the package .dist file has some strings of interest:
if( model.match(/ST3500641AS/) )
if( revision.match(/3.BTD/) )
if( model.match(/ST3750640AS/) )
if( revision.match(/3.BTF/) )
This refers to Seagate’s 750GB & 500GB drives
What else can we find? Once we open the archive.pax.gz there’s the actual Hard Drive Update 1.0 Cocoa app, which has a very scary sounding readme.rtf file inside the Contents/Resources/
Warning: It is strongly recommended that you back up the data on your hard drives to an external drive or removable media before running this update. Do not reset, shut down, or turn off power to your computer while performing this update. If an error occurs during the update process, your hard drive(s) may become unusable and all data could be lost. If you have not backed up your data, click Quit and do so now.
As Count Floyd would say: “Oooh Scary”
Next up is the MacOS/Hard Drive Update 1.0 binary and a selection of strings:
installEFIUpdater:
%@/%@/hdfw.efi
This computer is not connected to an AC power source.
It uses an EFI application that will update the firmware on the drives (the AC line makes me chuckle, to think of what the battery life of a Mac Pro would be?! Obviously they used a template for this.)
Inside hdfw.efi are strings that refer to Cygwin, interesting what platform they are using to develop this with: a Windows box emulating *nix
C:\cygwin\home\Loki\Platform\Apple\Common\Application\ATAHDFWUtil\ATAHDFWUtil.c
C:\cygwin\home\Loki\Platform\IntelMpg\AppleTools\Build\X64\ATAHDFWUtil.pdb
Inside the Hard Drive Update 1.0.app/Contents/Resources/System/HDFW directory are hives of model names with single string files (FWAlias & FWCurrent) and the actual firmwares (FW01):
ST3500641AS__P 3_BTD/FWAlias
ST3500641AS__P 3_BTE/FWCurrent
ST3500641AS__P_3_BTE/FW01
ST3500641AS__Q 3_BTD/FWAlias
ST3500641AS__Q 3_BTE/FWCurrent
ST3500641AS__Q_3_BTE/FW01
ST3750640AS_P 3_BTF/FWAlias
ST3750640AS_P 3_BTH/FWCurrent
ST3750640AS_P_3_BTH/FW01
ST3750640AS_Q 3_BTF/FWAlias
ST3750640AS_Q 3_BTH/FWCurrent
ST3750640AS_Q_3_BTH/FW01
Here’s an amusing edited list of strings :D
0000000000000c96 Lube Event
0000000000000d28 Virgin Sector Cleaned
0000000000000e8f Enter DateOfBirth YYWW
0000000000000eaa Enter 64Bit WorldWideName
000000000000534c DRIVE HAS BEEN SET-STUFFED -%1
00000000000058ca Invalid caller to SaveStuffToDisk()! Write not done! %x
0000000000006c1a !! Going Offlimits !!
0000000000006c31 Sleep?
Sounds like a date gone wrong! You really should get the DOB before initiating a lube event on a virgin sector… *ahem* let me try and get back on track with a couple informative strings about the guts of the drive:
0000000000012b4b Orig Code = BTG4H1 TONKA2_GX_4H1.0GC.0B9
0000000000012e87 Built for GALAXY4D,PITKIN,Redback,TI1810 PreAmp,Agere7531 PreAmp,McKinleyDT,4Disk,220 Servos,7200RPM,8Pole,133MHz
Well, enough spelunking I’m headed topside now.