[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Curiosity about what low-level things GUS can do



In article <rdippold.726342110@cancun> rdippold@cancun.qualcomm.com (Ron Dippold) writes:
> I'm crossposting this to comp.sys.apple2 since I have heard that the
> chip used in the Gravis Ultrasound is the same (or very similar) to
> the one used to generate the great Apple //gs sound.  For those Apple
> // users, we're wondering just what the heck the capabilities of the
> Ensoniq chip are... what does it do besides sample playback?

[This will probably be one of countless dozen responses to your query. :-)]

The Ensoniq.  Hm, where do I start?

The full name is "Ensoniq 5503 Digital Osciallator Chip" (DOC for short).

At the most basic level, the Ensoniq simply plays back digitized or
synthesized waveforms.  There are 32 'oscillators', each of which can
play part of a waveform, giving you a maximum of 32 voices, but with
limited capabilities.  By pairing the oscillators, more flexible
operation is possible.  A pair of oscillators is termed a 'generator'.
Using generators, a maximum of 16 voices are available.

You have up to 16 output channels.  All channels are multiplexed onto
a single sound output, with a channel number available in parallel for
external demultiplexers.  (The IIgs is limited to 8 output channels.  A
stock IIgs has mono output, but third-party stereo cards are available.
I'm not aware of any cards that support more than two channels.)

Each oscillator has:

- volume register, used to attenuate the waveform
- frequency register, used to vary the playback rate.
- control register, used to set the operation mode, interrupt mode, and
select the output channel.
- wavetable size register, used to set the size of the waveform and
the resolution of the table.

The Ensoniq has dedicated RAM, accessed in a dual-port fashion.  The
computer writes wavetables into the RAM, then uses the DOC's registers
to control the operation of each oscillator.  More than one oscillator
can play the same waveform at the same time, using different register
settings if desired.

The IIgs has 64k of sound RAM, but the Ensoniq can support 128k.  The
maximum size of a single waveform is 32k.


Playing back a digitized sample requires no computer overhead (except
for copying additional portions of the sample into sound RAM).  Far
more complicated operation is possible, with the computer dynamically
adjusting the Ensoniq's volume and frequency registers to simulate a
typical envelope generator, and to play different notes using the same
instrument.


That covers the basics (but I've hardly done it justice).  No doubt
more will be revealed...
-- 
David Empson

Internet: David.Empson@bbs.actrix.gen.nz    EMPSON_D@kosmos.wcc.govt.nz
Snail mail: P.O. Box 27-103, Wellington, New Zealand