# Gravis UltraSound

The 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 demoscene during the 1990s.
The Gravis UltraSound was notable at the time of its 1992 launch for providing the IBM PC platform with sample-based music synthesis technology (marketed as "wavetable"), that is the ability to use real-world sound recordings rather than artificial computer-generated waveforms as the basis of a musical instrument. Samples of pianos or trumpets, for example, sound more like their real respective instruments. With up to 32 hardware audio channels, the GUS was notable for MIDI playback quality with a large set of instrument patches that could be stored in its own RAM.
The cards were all manufactured on red PCBs, similar to fellow Canadian company ATI. They were only a little more expensive than Creative cards, undercutting many equivalent professional cards aimed at musicians by a huge margin.

## Versions
### UltraSound (Classic)

The first UltraSound was released in early October 1992, along with the Gravis PC GamePad. The Ultrasound was one of the first PC soundcards to feature 16-bit, 44.1 kHz stereo. The final revision (v3.74) of the GUS Classic features 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.

#### Reception

Computer Gaming World in 1993 criticized the UltraSound's Sound Blaster emulation and lack of native support in games, stating that "it is hard to recommend this card to anyone other than a Windows MIDI musician".

### UltraSound MAX

Released in 1994, UltraSound Max is a version of the GUS with a CS4231 codec on board, 512 kB of onboard RAM (upgradeable to 1024 kB with a single SOJ chip), and Panasonic/Sony/Mitsumi CD-ROM interface slots. CS4231 provides support for Windows Sound System specs, although the IO port range doesn't match the WSS hardware, and can be used for SoundBlaster emulation. The software CD includes a demo that featured "3D holographic sound" through the use of software HRTF filters.

### UltraSound Plug & Play (PnP)

Released in 1995, the Ultrasound Plug & Play was a new card based on AMD InterWave technology with a completely different sound set. Supposedly Synergy acted as the ODM-producer for it (as evidenced by their logo on the rear side of the card, although early and now very rare GUS PnP cards did not have the Synergy logo). The card features 1 MB of sound ROM, no onboard RAM (although it can be expanded to 8 MB with two 30-pin SIMMs), and an ATAPI CD-ROM interface. A 'Pro' version adds 512 kB of on-board RAM required for compatibility with the GUS Classic. In 2014, a RAM adapter for the 72-pin SIMM was produced by retro-computer enthusiasts that made it possible to install 16 MB of RAM on the 'Pro' version without any modifications to the card.

### UltraSound ACE (Audio Card Enhancer)

Released in 1995, this budget version of UltraSound Classic has 512 kB of RAM (upgradable to 1024 kB, just as is the MAX), and has no game port or recording ability. Marketed as a competitor to Wave Blaster-compatible cards, it is supposed to be installed alongside a SoundBlaster Pro/16 card as a sample-based synthesis (marketed as 'wavetable synthesis') upgrade. A prototype of this card was named "Sound Buddy".

### UltraSound CD3

An OEM version of UltraSound Classic produced by Synergy, with 512 – 1024 kB of RAM. It features AT-BUS CD-ROM interfaces following Sony, Mitsumi and MKE/Panasonic standards. This is the only Gravis sound card with a green circuit board. It is similar to a few card clones, including the Primax SoundStorm Wave (model Sound M-16B) and the AltraSound.

### UltraSound Extreme

Released in 1996, the UltraSound Extreme is a 3rd party OEM system combining the UltraSound Classic with an ESS AudioDrive ES1688 sound chip for Sound Blaster Pro and AdLib emulation. It was produced by Synergy as was the ViperMAX. It has 1 MB RAM by default, but cannot be upgraded any further.

### UltraSound Clones and OEM cards

All clones use the original Gravis GF1 or the AMD InterWave soundchip.
* Primax SoundStorm Wave (GF1) - there are 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.
* D&B UltraWave (GF1) - this card has 512 kB onboard RAM by default, upgradeable to 1024 kB RAM using a 512 kB SOJ-40 DRAM chip. Has a DIP socket for a 16 kB boot ROM (optional) and an IDE interface (secondary).
* 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) - features additional DSP chip that offered a graphic equalizer and additional sound FX presets.
* Philips PCA761AW (InterWave) - card design closely resembles the "AMD InterWave OEM Design" prototype. Has a footprint for 512kb RAM, often left unpopulated. AM78C201KC chip.
* Reveal WAVExtreme 32 (InterWave) - AM78C201KC based design. Comes without RAM and has no sockets/footprints to add any.
* As of February 2015 there have been efforts by hobbyists to produce a new InterWave based UltraSound compatible soundcard named ARGUS.
* PicoGUS (OpenSource) - Pico Pi based design started in 2022 by Ian Scott. Community support built up over the subsequent years. As of 2024 its emulation has similar compatibility to an original GUS. The PicoGUS also includes support for Tandy 3 Voice like the Tandy 1000, Game Blaster / Sound Blaster 2.0 (Sound Blaster), and intelligent mode MPU-401 support.

## GF1

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 derived from the Ensoniq OTTO (ES5506) chip, a next-generation version of the music-synthesizer chip found in the Ensoniq VFX and its successors.
The GF1 is purely a sample-based synthesis chip with the polyphony of 32 oscillators, so it can mix up to 32 mono PCM samples or 16 stereo samples entirely in hardware. The chip has no built-in codec, so the sounds must be downloaded to onboard RAM prior to playback. Sound compression algorithms such as IMA ADPCM are not supported, so compressed samples must be decompressed prior to loading.
The sound quality of the GF1 is not constant and depends on the selected level of polyphony. A CD-quality 44.1 kHz sample rate is maintainable with up to 14-voice polyphony; the sample rate progressively deteriorates until 19.2 kHz at the maximum of 32-voice polyphony. The polyphony level is software-programmable, so the programmer can choose the appropriate value to best match the application. Advanced sound effects such as reverberation and chorus are not supported in hardware. However, software simulation is possible; a basic "echo" effect can be simulated with additional tracks, and some trackers can program effects using additional hardware voices as accumulators.

### Sample RAM

The UltraSound offers MIDI playback by loading instrument patches into adapter RAM located on the card, not unlike how instruments are stored in ROM on other sample-based cards (marketed as "wavetable" cards). The card comes with a 5.6 MB set of instrument patch (*.PAT) files; most patches are sampled at 16-bit resolution and looped to save space. The patch files can be continuously tweaked and updated in each software release.
The card's various support programs use .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 and 98 drivers use UltraSound.INI to load the patch files on demand. In DOS, the loading of the patches can be handled by UltraMID, a middleware TSR system provided by Gravis that removes the need to handle the hardware directly. Programmers are free to include the static version of the UltraMID library in their applications, eliminating the need for the TSR. The application programmer can 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, introduces a noticeable delay when loading patches, so most applications just preload a predefined set.
Each application can have its own UltraMID.INI containing a set of patch substitutions for every possible amount of sample RAM (256/512/768/1024 kB), so that similar instruments are used when there is not enough RAM to hold all of the patches needed (even after resampling to smaller sizes). Unused instruments are never loaded. This concept is similar to the handling of sample banks in digital samplers. Some games — including Doom, Doom II and Duke Nukem 3D — come with their own optimized 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 demoscene 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 instruments digitally in the file instead of relying on a sound card to reproduce the instruments. A tracker module, when saved to disk, typically incorporates all the sequencing data and samples, and typically the composer would incorporate their 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 other sound cards playing these formats 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 the 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.

### Compatibility

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 use the included emulation software 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 that used middleware sound libraries like HMI (Human Machine Interfaces) Sound Operating System, the Miles Audio Interface Libraries (AIL), the Miles Sound System or 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 have a 286 processor or better. 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.

## 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 enter 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 a 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 the base card was not compatible with the UltraSound Classic unless some memory was installed.
The InterWave technology was used in the Gravis UltraSound PnP line of cards. It was also licensed to various OEMs such as STB Systems, Reveal, Compaq, Core Dynamics, Philips and ExpertColor. Some high-end OEM variants contained a 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.

## Demise

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. 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 demoscene, 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 declining 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.

## Software supporting GUS patches

Emulators with GUS support:
* DOSBox
* MAME
* PCem
* QEMU
Software synthesizers which can use GUS patches:
* PatMan, one of the built-in instruments in LMMS
* TiMidity++
* WildMIDI