While the sound itself has been disabled, I found the iconic chime is still part of the firmware itself (File GUID: 03C70B0D-67E6-5C16-8E57-312DF246A961) as part of the MacBookPro13,1 (and 13,2 or 13,3) firmware. You can find it yourself with the following steps:
- Download macOS Sierra Build 16B2657 from the appStore
- Right-click on it and select Show Package Content
- Open InstallESD.dmg in Contents -> SharedSupport
- Go to Packages -> EFIPayloads
- Copy MBP131_0205_B02_LOCKED.fd (for the MacBookPro13,1) somewhere on your machine
- Launch UEFITool and open the file and click on “Intel Image”.
- Search for “03C70B0D-67E6-5C16-8E57-312DF246A961” (GUID)
- Double-click a result
- Right-click on the Raw section and select “Extract as is” and safe it somewhere
- Strip the 1st 4 bytes in hex editor for example (everything before the ‘caff’ identifier)
- Rename your file with a ‘.caf’ extension
- Play it using Quicktime
It seems that on its 2016 MacBook Pro’s Apple has deactivated it’s famous startup sound / chime.
This cought my attention and I was interested to find out where this sound is stored (on older Mac’s). As I learned it is (or used to be at least) part of the Macs firmware. While so far I couldn’t find a way to extract the sound from an Intel / EFI based firmware, there seem to be ways to get the sound from PowerPC based Macs.
This is roughly how to do it:
- Get a firmware from a PowerPC Mac as these are based on OpenFirmware (not EFI) and thus easier to extract. For example this one from the Xserve G5 XServeFirmwareUpdate.dmg
- Open the downloaded DMG file
- Look for the file XServeFirmwareUpdate.pkg and show its package contents
- In the sub folder named Contents is the file: Archive.pax.gz
- Extract Archive.pax.gz (for ex. double click it in finder)
- In the extracted folder locate Applications\Utilities\Xserve Firmware-Updater and show its package contents
- locate the file Contents\Resources\BootROMFirmware
Well the BootROMFirmware contains the famous startup sound / chime.
The sound chime has a size of 0xE4B4 (58548) bytes and starts at offset 0xC881C (=821276). So we can just use dd in terminal to extract it:
dd if=~/Desktop/BootROMFirmware of=~/Desktop/start-chime.raw bs=1 skip=821276 count=58548
So now you have the extracted raw start-chime of 58,548 bytes file size. It is encoded using Apple’s version (IMA 4:1) of the IMA ADPCM compression format. To play it you would have to mux it into an AIFF file with correct header and chunk data (FORM, COMM, SSND,…) . You can use also ocenaudio to preview the sound (in messy quality).
If someone finds an easy way to play the raw file, just post a comment 🙂
Update: Seems you can convert the raw file on Mac OS 9 and SndSampler 5.4
You need these settings:
- Sample Bits: 16
- Channels: Mono
- Sample Rate: 44,100
- Compression: IMA 4:1
- Data Offset: 16 (Sun Audio / Next)
So far I couldn’t get a decent raw sound import on a more current application & platform.
There seems to be a pastebin of the startup sound raw file here.
Its base64 encoded so to decode:
openssl base64 -d -in paste.txt -out snd.raw
I just updated to the latest Bios (3.30) on my E3C226D2I and since then OSX stops booting at pci configuration begin. Or even with CPU Sensor issues.
OSXeon:UEFIPatch_0.3.8_osx userone$ ./UEFIPatch ../226D2IL3.30
patch: replaced 10 bytes at offset 114Ah 75080FBAE80F89442430 -> EB080FBAE80F89442430
EFI Boot ROM and SMC firmware are documented here https://github.com/gdbinit/firmware_vault and here https://support.apple.com/en-us/HT201518
I recently discovered MBA41_0077_B12_LOCKED.scap on the EFI partition of my MBA (/EFI/APPLE/FIRMWARE/MBA41_0077_B12_LOCKED.scap)
The header of the file looks interesting.
$IBIOSI$ MBA41.88Z.0077.B12.1506081728 Copyright (c) 2005-2015 Apple Inc. All rights reserved.
Apple ROM Version
Board ID: MBA41
Built by: root@saumon
Date: Mon Jun 8 17:28:51 PDT 2015
Revision: svn 39297 (B&I)
Buildcave ID: 232
ROM Version: 0077_B12
Apples uses all kind of source control tools: git, Subversion (like the group / guy building the firmware above), probably even someone is still using CVS.
All (large) projects are managed using a centralized build system known as B&I (Build & Integration) – that the revision info.