A technical exploration of how audio capabilities were discovered and implemented on an obscure HP workstation, revealing the hidden history of workstation audio development.
In the late 1980s, as the Internet began expanding beyond academic circles and workstations grew more powerful, computer engineers started imagining what seemed like science fiction: using computers to record, transmit, and play back voice messages. This vision became reality when workstation manufacturers began adding audio capabilities to their hardware, starting with phone-quality (8KHz mono, 8-bit u-law encoding) and later advancing to CD-quality (44.1KHz stereo, 16-bit) as CD-ROM drives became commonplace.
Among the early adopters of workstation audio were machines like the NeXT Computer in 1988, but other companies were also experimenting. An incomplete list of workstations with phone-quality audio devices included Digital VAXstation 4000 pizza boxes, Digital Personal DECstation 5000 series, Digital DEC series Alpha, HP 9000/705 and 9000/710 PA-RISC, and various Sun SPARCstations. Interestingly, most of these machines (except HP's) used the AMD 7930 chip as their audio codec.
For CD-quality audio, the list expanded to include HP 9000/712, 9000/715, 9000/735, SGI Personal Iris with Magnum option, Indigo, Indy, Indigo2, and various Sun SPARCstations. Notably absent from these lists were Motorola 68000-based workstations, with one exception: the HP 9000/425e system.
The HP 9000/425e: An Unlikely Audio Pioneer
The HP 9000/425e stands out as the last machine in the 9000/400 series, designed as a bridge for customers not ready to transition to PA-RISC processors. This machine used the same case and motherboard form factor as the cheaper 9000/705 and 9000/710 PA-RISC entry-level workstations. The 9000/400 series itself was unusual, created after HP acquired Apollo but before completely abandoning Apollo's customer base.
These systems were designed to run both Domain/OS (Apollo's operating system) and HP-UX, featuring dual-mode ROMs with both HP-UX and Domain/OS personalities. They included both Apollo Domain keyboard connectors and HP-HIL connectors, plus at least one ISA slot for Apollo's Token Ring network controller. The 9000/425e, with its 25MHz MC68040 CPU, was particularly interesting because it had audio input and output jack connectors on the back, despite being a 68000-based system.
The Discovery Process
When booting the 425e under OpenBSD, kernel messages revealed something intriguing: "digital audio at dio0 scode 8 not configured." This suggested the presence of audio hardware, but it wasn't immediately functional. The machine eventually became a build machine for OpenBSD/hp300 snapshots and releases due to its lower power consumption compared to the 425t previously used for this purpose.
In 2010, developer Alexandre Ratchov made a joke in a commit message about audio capabilities on VAX and hp300 platforms, which ironically motivated further investigation. By September 2011, audio support had been added to OpenBSD/vax for VAXstation 4000/VLC and VAXstation 4000/60, using the AMD 7930 chip. This success prompted exploration of hp300 audio capabilities.
Uncovering the PSB2160 Chip
The investigation began with examining HP-UX system headers from a backup of an HP-UX 9.05 installation. These headers revealed two types of audio hardware support: AUDIO_ID_PSB2160 (1) and AUDIO_ID_CS4215 (2). The PSB2160 was clearly the candidate for the 425e's audio hardware.
Further examination of register layouts in the headers showed that audio1_reg matched the expected configuration for series 300 systems, while audio2_reg matched the Crystal Semiconductors CS4215 used in PA-RISC systems. The defines in the headers provided crucial information about card IDs and interrupt levels, confirming that AUDIO_1_CARD_ID (0x13) matched the known DIO board ID reported as "digital audio" in kernel messages.
Physical inspection of the 425e motherboard revealed the PSB2160 chip, manufactured by Siemens and labeled "ARCOFI" (Audio Receive COdec FIlter). This chip was designed for telephony equipment but could operate in 16-bit mode for better sound quality.
Technical Implementation Challenges
The PSB2160 chip itself was simple but had no buffering capabilities, requiring 8000 interrupts per second - far too many for a 68040 processor. HP engineers solved this by adding a 128-byte FIFO logic, reducing the interrupt frequency to 62.5 interrupts per second. For smoother processing, the driver was configured to interrupt when the FIFO was half-empty (playback) or half-full (recording), resulting in 125 interrupts per second (250 for 16-bit samples).
Initial testing revealed a critical issue: the machine would lock up when attempting to play audio. The problem was traced to interrupt handling at level 6, which had previously only been used for clock interrupts. The solution involved modifying the interrupt handler to call intr_dispatch for level 6 interrupts when audio was present, preventing the kernel from getting stuck in a loop.
Volume Control and Final Refinements
Implementing volume control proved challenging because the PSB2160 required logarithmic gain values using fixed-point notation, while OpenBSD's audio subsystem exposed a linear volume scale. Initial attempts using a gain table from a related chip (PSB2163) failed completely.
The solution came from examining the HP-UX audio driver, where a private_audio_gain_tab data block provided compatible values. These values, ranging from -60 to +14 dB, worked correctly with the PSB2160, providing smooth volume attenuation as expected.
Legacy and Impact
The driver was eventually split into machine-independent code with separate attachment glue for hp300 and hppa ports. Testing confirmed the PSB2160's presence in HP 9000/705 and 9000/710 systems as well. The driver was committed to OpenBSD in December 2011, ending jokes about audio capabilities on hp300 platforms.
This journey revealed several important lessons: the importance of thorough hardware investigation, the value of cross-platform code sharing, and the unexpected consequences of seemingly harmless jokes in commit messages. The PSB2160, originally designed for telephony, found new life in these HP workstations, demonstrating how specialized hardware can be repurposed for broader applications.
The story of audio on the HP 9000/425e illustrates the complex history of workstation development, where companies like HP navigated acquisitions, customer transitions, and technological evolution. It also shows how dedicated developers can uncover and preserve the capabilities of obscure hardware, ensuring that even forgotten machines can find new purpose in modern computing environments.

Comments
Please log in or register to join the discussion