Gravis UltraSound or GUS is a sound card for the IBM PC compatible system platform, made by Canada-based Advanced Gravis Computer Technology Ltd. It was very popular in the demo scene in the 1990s, due to its superior sound quality compared to similarly-priced soundcards of its time.
The Gravis UltraSound was unique at the time of its launch (1992) with its use of 'wavetable' sample-based music synthesis technology on the IBM PC platform — the ability to use real-world sound recordings rather than artificial computer-generated waveforms to base a musical instrument on; so a piano sounds like an actual real piano, a trumpet like an actual trumpet, etc. The GUS was remarkable for MIDI playback quality with a large set of instrument patches that could be stored in its own RAM, having up to 32 hardware audio channels.
The cards (all manufactured on red PCBs, similar to fellow Canadian company ATI) were very agreeably priced, although a little more expensive than Creative cards; they undercut many equivalent professional cards aimed at musicians by a huge margin, and brought CD quality audio reproduction (44.1 kHz ; 16-bit ; stereo) within the grasp of home PC users.
UltraSound (Classic) 
The first UltraSound was released in early October 1992, along with the Gravis PC GamePad. The initial card didn't fully conform to the Multimedia PC requirement, due to absence of 16-bit audio recording and onboard analog mixer (used to control volume of analog CD, line-in etc. inputs). The final revision (v3.74) of the GUS Classic featured 256 kB of onboard RAM (upgradeable to 1024 kB through DIP sockets), hardware analog mixer, and support for 16-bit recording through a separate daughterboard based on the Crystal Semiconductor CS4231 audio codec.
UltraSound MAX 
Released in 1994, a version of GUS with CS4231 codec on board, 512 kB of RAM on board (upgradeable to 1024 kB with a single SOJ chip) and Panasonic/Sony/Mitsumi CD-ROM interface slots. CS4231 provided support for Windows Sound System specs (although the IO port range didn't match the WSS hardware) and could be used for SoundBlaster emulation. The software CD included a demo that featured "3D holographic sound" through the use of software HRTF filters.
UltraSound Plug & Play (PnP) 
Released in 1995, a new card based on AMD InterWave technology with a completely different sound set. Featured 1 MB of sound ROM, no onboard RAM (although it could be expanded to 8 MB with two 30-pin SIMMs), and ATAPI CD-ROM interface. A 'Pro' version added 512 kB of on-board RAM required for compatibility with GUS Classic.
UltraSound ACE (Audio Card Enhancer) 
Released in 1995, a budget version of UltraSound Classic with 512 kB of RAM (upgradable to 1024 kB, just as the MAX); had no game port or recording. Marketed as a competitor to Wave Blaster-compatible cards, it was supposed to be installed alongside a SoundBlaster Pro/16 card as a 'wavetable synthesis' upgrade. Prototype of this card was named "Sound Buddy".
UltraSound CD3 
An OEM version of UltraSound Classic with 512 – 1024 kB of RAM; featuring AT-BUS CD-ROM interfaces: Sony, Mitsumi and MKE/Panasonic standards. Produced by Synergy. This is the only Gravis soundcard with green circuit board and is similar to a few card clones, including the Primax SoundStorm Wave (model Sound M-16B) and the AltraSound.
UltraSound Extreme 
Released in 1996, 3rd party OEM solution that combined UltraSound Classic with an ESS AudioDrive ES1688 sound chip for Sound Blaster Pro and AdLib emulation. Produced by Synergy as the ViperMAX. It has 1 MB RAM by default, but cannot be upgraded any further.
UltraSound Clones and OEM cards 
All clones used original Gravis GF1 or AMD InterWave soundchip.
- Primax SoundStorm Wave (GF1) - there were two variants of cards from the well known scanner and mouse producer. Re-labeled Altrasound as Sound M-16B and different Sound M-16C with 4x CD-ROM Interfaces.
- Synergy ViperMAX (GF1) - same card later repacked as UltraSound Extreme, but with only 512 kB RAM on board.
- Expertcolor MED3201 (InterWave LC) - probably the only card with cut-down variant of GFA1 chip - AM78C200 InterWave LC. First series was with standard Am78C201KC.
- Compaq Ultra-Sound 32 (InterWave) - one of the last InterWave cards was designed for Compaq Presario desktops. Newer "C" revision of InterWave - AM78C201AKC and TEA6330T fader. Produced by STB Systems.
- STB Systems Soundrage 32 (InterWave) - standard InterWave card missing SIMM slots and IDE interface. There was "Pro" variant with 512 kB RAM. AM78C201KC chip.
- Core Dynamics DYNASonix 3D/PRO (InterWave) - featured additional DSP chip that offered a graphic equalizer and additional sound FX presets.
- Philips PCA761AW (InterWave)
The GF1 was co-developed by Advanced Gravis and Forte Technologies (creator of the VFX1 Headgear virtual reality helmet) and produced by Integrated Circuit Systems under the ICS11614 moniker. The chip was actually derived from the Ensoniq OTTO (ES5506) chip, a next-generation version of the music-synthesizer chip found in the Ensoniq ESQ-1 and Mirage, as well as the Apple IIGS.
The GF1 was purely a sample-based synthesis chip with the polyphony of 32 oscillators, so it could mix up to 32 mono PCM samples (or 16 stereo samples) entirely in hardware. The chip had no built-in codec, so the sounds had to be downloaded to onboard RAM before they could be played back. Sound compression algorithms such as IMA ADPCM were not supported, so compressed samples had to be decompressed prior to loading.
The sound-quality of the GF1 was not constant, and depended on the selected level of polyphony. A CD-quality 44.1 kHz sample rate was maintainable up to 14-voice polyphony; the sample rate progressively deteriorated until 19.2 kHz at the maximum 32-voice polyphony. The polyphony level was software programmable, so the programmer could choose the appropriate value to best match the application. Advanced sound effects such as reverb and chorus were not supported in hardware, although software simulation was possible (a basic "echo" effect could be simulated with additional tracks, and some trackers could program effects using additional hardware voices as accumulators).
Sample RAM 
The UltraSound offered MIDI playback by loading instrument patches into adapter RAM located on the card, not unlike how instruments are stored in ROM on sample-based 'wavetable' cards. The card came with a 5.6 MB set of instrument patch (*.PAT) files; most the patches were sampled at 16-bit resolution and looped to save space. The patch files were continuously tweaked and updated in each software release.
The card's various support programs used .INI files to describe what patches should be loaded for each program change event. This architecture allowed Gravis to incorporate a General MIDI-compatible mapping scheme. Windows 95/98 drivers used UltraSound.INI to load the patch files on demand. In DOS, the loading of the patches could be handled by UltraMID, a middleware TSR solution provided by Gravis that removed the need to handle the hardware directly. (Programmers were free to include the static version of the UltraMID library in their applications, eliminating the need for the TSR.) The application programmer could choose to preload all patches from disk (resizing as necessary to fit into the UltraSound's on-board RAM), or have the middleware track the patch change events and dynamically load them on demand. This latter strategy, while providing better sound quality, introduced a noticeable delay when loading patches, so most applications just preloaded a predefined set.
Each application could have their own UltraMID.INI which contained a set of patch substitutions for every possible amount of sample RAM (256/512/768/1024 kB), so that similar instruments were used when there was not enough RAM to hold all of the patches needed (even after resampling to smaller sizes), and unused instruments were never loaded. This concept was similar to the handling of sample banks in digital samplers; some games — including Doom, Doom II and Duke Nukem 3D — came with their own optimised UltraMID.INI.
The UltraSound cards gained great popularity in the PC tracker music community. The tracker format was originally developed on the Commodore Amiga personal computer in 1987, but due to the PC becoming more capable of producing high quality graphics and sound, the demo scene spilled out onto the platform in droves and took the tracker format with it. Typical tracker formats of the era included MOD, S3M and, later, XM. The format stores the notes and the instruments digitally in the file instead of relying on a sound card to reproduce the instruments. A tracker song, when saved to disk, typically incorporates all the sequencing data plus samples, and typically the composer would incorporate his or her assumed name into the list of samples. This primitive precursor to the modern sampler opened the way for Gravis to enter the market, because the requirements matched the capabilities of the GF1 chip ideally. The problem with the other sound cards playing this format was that they had to downmix voices into one or both of its output channels in software, further deteriorating the quality of 8-bit samples in process. An UltraSound card was able to download the samples to its RAM and mix them using fast and high-quality hardware implementation, offloading the CPU from the task. Gravis realized early on that the demo scene support could be a sales booster and they gave away 6000 cards for free to the most famous scene groups and people in the scene.
As the GF1 chip does not contain AdLib-compatible OPL2 circuitry or a codec chip, Sound Blaster compatibility was difficult to achieve at best. Consumers were expected to learn how to tweak the emulation software used to emulate other standards, an activity not necessary with many other cards that emulated the Sound Blaster through their sound hardware. The emulation software ran as a huge TSR that was difficult to manage in the pre-Windows days of complicated DOS extenders.
Although there was native support for many popular games which used middleware sound libraries like HMI Sound Operating System, the Miles Audio Interface Libraries (AIL), the Miles Sound System and others, the user had to patch the games by replacing the existing sound drivers with the UltraSound versions provided on the installation CD. Also, the UltraSound required two DMA channels for full-duplex operation, and 16-bit channels were generally faster so many users chose to use them, but this led to errors for games that used the DOS/4GW DOS extender, which was common in the UltraSound's era.
The two principal software sound emulators included with software package were:
- SBOS, Sound Board OS — Sound Blaster Pro 8-bit stereo emulation and AdLib FM synthesis. It was a real-mode software emulator that recreated the AdLib's OPL2 FM synth chip and required that the user had, at the least, a 286 processor. There were special versions for the UltraSound MAX (MAXSBOS) and AMD InterWave-based cards (IWSBOS), which made use of the CS4231 codec chip instead.
- Mega-Em — advanced emulation software that required at least a 386 processor and EMM manager with DPMI/VCPI support. Mega-Em emulated the 8-bit Sound Blaster circuitry for sound effects and the Roland MT-32/LAPC-I or Roland Sound Canvas/MPU-401 for music. It supported UltraMID TSR functionality.
Developer support 
In contrast to the competing Creative Labs Sound Blaster, which generated music through FM synthesis, the GF1 chip produced music through playback of digitized audio samples. Therefore, the Gravis UltraSound could produce far more acoustically complex game audio. However, most PC software had audio engines designed and implemented for the Sound Blaster programming model (FM synthesis for music and frequent sound effects, with an occasional PCM sample for rare high-value sounds.) At this time, many DOS game developers had already adopted Middleware audio packages (such as Miles Audio Design), to remove them from the burden of writing low-level audio routines. For most developers, exploiting the Gravis's PCM capabilities would have required a complete rewrite or an additional, dedicated codebase. Although many middleware standards added support for the GUS over time, these were largely just reworkings of the generic General MIDI support, without any custom samples to take advantage of the UltraSound's RAM-based architecture, and support for these more-advanced features was slow to come and were rare. Most of the middleware standards adhered to the Sound Blaster programming model, using the Gravis card for improved MIDI playback with the occasional PCM sound effect. Only a handful of games supported the UltraSound's native mode for 'freeform' PCM playback, but those that did used it to great effect (Star Control 2 is one example).
AMD InterWave 
The great potential of the original UltraSound enabled Advanced Gravis to license the new GFA1 chip and software to AMD, who were trying to make it into the sound chip market at the time. The chip, released in 1995, was named AMaDeus, with the AMD part number of Am78C201 and was marketed as InterWave. It was enhanced to handle up to 16 MB of onboard memory, IMA ADPCM-compressed samples, have no sample rate drop at full 32 voices, and featured additional logic to support hardware emulation of FM synthesis and simple delay-based digital sound effects such as reverb and chorus. It was compatible with CS4231 codec installed in the UltraSound MAX or 16-bit recording daughterboard for the UltraSound Classic.
The sound "patch set" was reworked from a collection of individual instrument .PAT files to a unified .FFF/.DAT sound bank format, resembling SoundFont, which could be either ROM or RAM based. There were 4 versions of the sound bank: a full 16-bit 4 MB with 8-bit downsampled 2 MB version, and 16-bit 2 MB (different sample looping) with 8-bit downsampled 1 MB version. A converter utility, GIPC, was provided for making .FFF/.DAT banks out of .PAT/.INI collections.
The reference card contained 1 MB μ-law ADPCM compressed sound ROM, which contained basic General MIDI voices and sound samples to help FM emulation, and 2 slots for RAM expansion through 30-pin SIMMs. The IWSBOS emulator was reworked to include Mega-Em features such as General MIDI emulation, and the SBOS kernel was included in Windows 95 drivers to provide emulation in a DOS Box window.
The process of patching middleware sound 'drivers' was greatly simplified with PREPGAME utility, which could fix most known DOS games automatically either by correctly installing and configuring native InterWave drivers or replacing the binaries for some rare devices like Covox. It could also update DOS/4GW extender to work around its 16-bit DMA bug.
The GFA1 featured a GUS/MAX compatibility mode, but base card was not compatible with UltraSound Classic unless some memory was installed.
The InterWave technology was used in Gravis UltraSound PnP line of cards. It was also licensed to various OEMs such as STB Systems, Reveal, Compaq, Dynasonic and ExpertColor. Some high-end OEM variants contained full-blown 4 MB patch set in ROM and proprietary hardware DSPs to enable features like additional sound effect algorithms and graphic equalizer.
Software drivers for the InterWave were written by eTek Labs, containing the same development team as the earlier Forte Technologies effort. eTek Labs was split off from Forte Technologies just prior to this effort. In August 1999, eTek Labs was acquired by Belkin and is currently their research and development team.
Despite the groundbreaking features, the Gravis's unique sample-RAM architecture proved too much for the industry. Some game developers of the time noted problems with the software development kit and the product's hardware design. On the user-side, the Sound Blaster emulation was especially hard to get right out of the box, and this resulted in a substantially high number of product returns at the store level and thus soured the retail channel on the product. Bundled software was refined over time, but Gravis could not distribute updates effectively.
The company itself also created its own trouble. When Gravis's list of promised supporting game titles failed to materialize, the company lost credibility with consumers and commercial developers. Several publishers and developers threatened to sue the company over misrepresentation of their products — pointing to outright fabrication of Gravis's list.
The shareware games industry embraced the Gravis more than the retail games industry. Famous companies which did this in an early stage were publisher Apogee and developers id software and Epic Megagames. Gravis can also claim victory in the demo scene, which had taken the GUS to its heart, ensuring a dedicated, cult following for a number of years. But without the marketing and developer presence of Creative Labs, Gravis could not generate either the sales or support required for the Gravis soundcard to compete in the mainstream market against the de facto standard Soundblaster.
Although the InterWave chip was a substantially improved version of the GF1 chip, this new design was not able to hold up with the Sound Blaster AWE32. More than that, AMD was facing financial troubles at the time so it was forced to close many projects, including the InterWave.
Due to dwindling sales, Gravis was eventually forced out of the soundcard business, and the UltraSound's failure nearly took the entire company down with it. Advanced Gravis, once one of the dominant players in the PC peripherals marketplace, had bet much of the future of the company on the UltraSound and paid the price for its demise. Shareholders sued the company charging gross incompetence by its management, in regards to the entire UltraSound effort. After significant restructuring, including acquisition by competitor Kensington Technology Group (via its parent, ACCO World Corp), the company retreated to its core-market, the one which had made it a success — joysticks and gamepads.
See also 
- DOSBox – DOS emulator that contains built-in emulation of the GUS
- QEMU – PC emulator that contains built-in emulation of the GUS
- TiMidity++ – a software MIDI synthesizer which can use GUS patches
- GF1 Museum - information on GUS models
- GUS Emulator
- Gravis UltraSound WDM Driver Project
- FreePats – a free collection of GUS-compatible patches by Eric A. Welsh
- The History of PC Game MIDI by Eric Wing
- Phonomenal... a retrospective view on sound card history
- GravisUltrasound.com The Gravis Ultrasound Archives. Source for files & drivers.
- Gravis Software Gravis Ultrasound Software and Patches.