LockerGnomeTech news and nostalgia for today's technology professionals
Subscribe

Search

RetroTechHistory

The Macintosh chime got a software filter. Its speaker hole got a Steve Jobs veto.

Andy Hertzfeld’s recollection and surviving assembly listing expose two very different ways to improve a startup sound.

Chris holding the original Macintosh as a smooth chime wave rises, spirograph
Illustration: LockerGnome

Charlie Kellner took a Macintosh prototype home and came back with measurements, better sound and an extra hole. Steve Jobs heard the comparison. The hole didn’t make the cut (or the case).

Andy Hertzfeld’s Boot Beep account puts Kellner in the Mac group while Hertzfeld was experimenting with a new startup sound. Kellner suggested filling a buffer with a square wave, then repeatedly averaging neighboring samples. Hertzfeld implemented the repeated averaging, tried the resulting sound and found the pleasant quality he and Kellner were after.

The surviving 68000 assembly listing makes the operation inspectable. Its comments call for an “attractive beep” that indicates the CPU works. Farther down, the filtering loop combines sample values, counts the middle one twice and divides by four, with a rounding adjustment. The routine fills and processes its own waveform buffer, which gives a reader interested in sound synthesis something much smaller to follow than a complete music application.

Repeated averaging reduces differences among neighboring values. Picture a row of cups with different water levels, each adjustment sharing some of the neighbors’ influence. The sharp changes become less sharp. That comparison explains the smoothing operation; the particular sound still depends on the starting pattern and how the routine applies it.

The code’s comments describe filtering “for a nice fade.” They also expose the work that surrounds the arithmetic: filling the buffer, copying values and waiting for blanking before another pass. A sound’s character lives in that sequence too. If you want to reproduce this sound, reading only the averaging instruction leaves out how often the routine updates the buffer and where it waits between updates, both visible in the listing.

Kellner’s second experiment concerned the physical path to the listener. Hertzfeld recalls him measuring the case’s effect and drilling a small opening. Hertzfeld heard an improvement, though a less dramatic one than Kellner did. Jobs rejected the hole. This is Hertzfeld’s account of the disagreement, including his own comparatively muted reaction.

That difference in reactions deserves space. A measurement can establish a change without establishing how much a person values it. A product review still has to identify the listener, the listening conditions and the cost of the physical alteration. Otherwise people can agree that the graph improved and leave the room thinking the other person ignored the evidence.

The same separation will matter for any compact device whose enclosure affects an alert or speaker. Software processing cannot show what a listener hears through the final case. Testing the finished assembly keeps the beautiful prototype from receiving credit for sound the customer never gets.

Kellner’s hole remained a rejected improvement. The source code survived, so anyone curious about the other half of the experiment can still inspect the routine. The case dispute has no equivalent shared listening test on the page.

An attractive beep, per specification.

More Retro

Every Retro story →