The alphaSyntauri Instrument:
A modular and software programmable digital synthesizer system
paper by Robin J. Jigour, Charlie Kellner, and Ellen V. B. Lapham

published by IEEE Computer Society in the Proceedings of the Symposium on Computers in the Arts, Philadelphia, Pennsylvania, November, 1981.

ABSTRACT

Based on an inexpensive, widely accepted microcomputer, the alphaSyntauritm system provides musicians, sound engineers, educators, composers, and computer enthusiasts with a flexible digital synthesizer.

INTRODUCTION

The alphaSyntauri instrument is a modular, software programmable digital synthesizer system based on the Apple II microcomputer. The philosophy behind the alphaSyntauri design was to create a truly general purpose digital synthesizer by taking advantage of the flexibility and capabiliteis of a microcomputer system. By using the software programmability and expandable hardware interface, the alphaSyntauri system alleviates product obsolescence, allowing a continual upgrade path for new applications, performance features, and functions.

BACKGROUND

Historically, sound synthesizing devices have been hardware based. The programming of early synthesizers was accomplished using either hardwired equipment or patch bays, such as in the original Moog synthesizer.

Dependence on circuitry and hardware has inherent limitations. First, the 'programming' is not easily changed. Patch bays can become complex and on-the-road modifications require hardware expertise, time, and patience. Second, the cost of the instrument increases as a function of size and complexity -- thus expansions and modifications can be expensive. For these reasons, early synthesizers were limited to large, fixed installations such as universities and studios.

Today, digital technologies are opening horizons for music exploration and control, and sound synthesis controllers range from dedicated microprocessors to large-scale general purpose computer systems. Microprogrammed synthesizers have been effectively 'hard wired' at the software level: the user typically does not have access to the microprocessor to make programming and control changes.

To gain flexibility, and to take advantage of computer system technologies, designers of the Fairlight and Synclavier synthesizers both use sophisticated techniques such as disk storage and programmability to achieve a greater degree of user control than was available but a few years ago.

The alphaSyntauri, designed in 1979, uses a general purpose computer system, the Apple II, which is designed simply for information handling for a multitude of purposes. Here, by intent, the system software designer has put control in the user's hands through software-based instructions, letting the user modeify (or even create from scratch) his own musical instrument.

For instance, users may additively create ten timbres by using a built-in software module which is standard with the instrument. Then, saving these timbres to diskette is accomplished using standard Apple II disk utilities.

The alphaSyntauri system hardware

Primary system components are the keyboard (input device), software (operating system and utilities), interface hardware (between the music keyboard and the Apple II standard bus), and oscillators (sound synthesis devices available from numerous sources). Additionally, the system must include an Apple II computer with disk drive and monitor, and an audio system as illustrated below:

(place diagram image here)

The alphaSyntauri instrument achieves variability through the user selecting the oscillator/software combination which will achieve the required musical result. For instance, polyphonic voicing can range from as few as three to a maximum of 15 separate voices with the square-wave-based ALF cards. Or, utilizing the Mountain Computer Music System product results in an eight-voice fully waveform controllable instrument. Operating systems are tailored to get the most musical and flexible results from each oscillator set. And, because the Apple II is especially suited to adding new hardware components on the bus, new oscillators and outboard controllers are feasible and likely.

The alphaSyntauri system software

The key to the entire alphaSyntauri system is its operating system software which handles the user interface and controls the hardware. The operating system performs all the functions that a traditional hardware-based synthesizer does with switches, knobs, patch cords, and circuitry to control envelope generators, mixers, and filters.

The bulk of the operating system software is written in 6502 assembly language to optimize speed through the instrument's hardware control processing loop of 16 milliseconds duration. The rest of the operating system, which is less speed dependent, was written in BASIC for ease of implementation and access to standard Apple II functions.

Operating system process

Within the alphaSyntauri system, there are multiple processes (or tasks) performed essentially simultaneously. The computer system, and the 6502 processor in particular, are sufficiently fast that all of these tasks, and their attendant decisions, are executed without impairing the sound quality.

System tasks include reading the 61-note organ style keyboard input device, determining which key was pressed, reading tables (envelopes, waveforms, scales) and updating the output oscillators.

(flowchart: thumbnail appears here, link to full size)

The oscillator update task is the most fundamental process in the alphaSyntauri system. The update tells the output hardware to produce a sound at a certain volume and frequency until the next update cycle, when the oscillator control(s) may be changed to reflect new keys pressed, new envelope stages, timbre modifications, or note terminations.

The keyboard event, the pressing of a key during live play, is the trigger for many system control tasks. This event, interestingly enough, is treated as an exception since its detection and determination of what to do with the event information takes less than 1% of the total process loop time available.

Software controlled parameters and features

alphaSyntauri operating system software defines the performance capabilities and features possible on the instrument, given the hardware oscillators (synthesis cards) being used. The current operating systems, alpha III and alphaPlustm, provide functions equal to and beyond those of many traditional synthesizers, including:

The following examples were selected to demonstrate the range of features and control options achievable using the general purpose microcomputer, the Apple II. Extensive use is made of the Apple's utilities, memory handling, and disk operations to extend the alphaSyntauri instrument beyond what would have been possible using dedicated electronic components:

Record and variable speed playback. Since all keyboard activity is monitored by the computer for oscillator hardware control, the computer's natural function is the logging of keyboard events as they occur. The alphaSyntauri record feature does exactly that: Each event and its duration is logged into what is called a "notes file". A sequence of up to 3,000 events can be recorded into a single file (file size is limited by available RAM space for the recording buffer). Once an event sequence is completed, it can be played back digitally at speeds varying from 1 to 800% of the original recording input speed. A notes file may be repeated indefinitely, beginning immediately after it completes for sequencing, for use in setting up bass lines and rhythms. Finally, notes files can be saved or loaded from diskettes using Apple II disk drives or any mass storage device plug compatible with the Apple II bus.
Velocity sensing. Each key on the alphaSyntauri keyboard has two electrical contacts, one of which makes [contact] about one-third of the key-down travel, the other of which makes [contact] at the bottom. When a key is pressed, the following occurs:
  1. The lower contact closes. A count register in the Apple II's memory which is assigned and maintained for each key is set to zero. No other action takes place.
  2. The upper contact closes. The accumulated count value in the key's timing register is used to index into the velocity assignment table. Attack rate and attack target volume (envelope) of the oscillators are determined. (Note, both attack rate and attack volume are varied. Psychoacoustic research tells us that we perceive loudness to increase not only with absolute loudness increase, but also as a function of the rate of increase and the linearity of the curve.)
  3. A new oscillator is assigned for the key which has been pressed.
To achieve audible results, both attack rate and volume are used. Typically, the attack rate and volume for a given key are inversely proportional to the time between contact closures; velocity is the inverse of transition time. Actual changes to attack rate and volume are handled by a look-up table which is automatically loaded by the operating system software into a pre-assigned memory location.
To achieve keyboard sensitivity, setting the loudness changes to emulate a stiff or a loose keyboard, a program value may be set by the user to make the look-up tables more or less linear. The loosest keyboard has the most linear curve, the stiffest has the most logarithmic. Thus, in the stiffest keyboard, a key has to be struck very fast and sharply to get a marked volume change.
Different velocity-sensing results are also possible by completely reworking the look-up table. Further, because the design of this dynamic control parameter is general, the velocity-sensing software could be altered to affect the sustain level / decay rate rather than the attack rate / target volume.
Additive synthesis waveform definition and analysis. Unlike analog synthesizers which use voltage-controlled oscillators to produce a sine, triangle, sawtooth, or square waveform, the alphaSyntauri system (with Mountain Computer oscillators) constructs digital duplications of any simple or complex waveform in blocks (256 bytes by 8 bits) of memory. A digital to analog converter (DAC) transforms the stored waveform into audio signals.
Waveforms are created in the standard alphaSyntauri operating system when users specify wavetypes, harmonics, and amplitudes. For example, a complex wave might be created as follows: Called "wave" in the operating system, this program takes the defined waveform parameters and creates the waveform block through additive synthesis, finally storing the waveform on diskette for later use.
Because the creation of waveforms has been treated in the most general case within the system, a number of unusual approaches to sound creation are possible. The number of harmonics, for instance, is limited only by the mathematical capabilities of the computer system itself (and, by the design of the particular oscillator set being used). Additionally, the process for waveform table creation itself can be tailored to suit available knowledge and techniques within the music profession. Two utilities, "B-3" and "Make Pulse" lets users define a special class of waveforms known as pulse waves. Freehand drawing of an arbitrary waveform is also feasible: Use of this technique is valid only if the user judges that the resulting sounds are useful.
Waveform analysis is also possible using the built-in "Analyzer" program of the alphaSyntauri synthesizer. The Analyzer program takes any predefined, stored waveform and results in a Fourier analysis listing of the harmonic sine components up to the twentieth and their relative amplitudes. Here, again, the limits on the analysis are imposed by the resolution of the computer system, and the programmer's decision to analyze through the first twenty harmonics.
User created program interfacing. The main process control loop (see illustration) contains what is called "an unconditional JSR" (jump to a user-written subroutine). This allows any user familiar with the 6502 assembly code to devise his/her own special effects and controls.
Once written and inserted into the main process loop, this JSR routine is always accessed and acted upon prior to any oscillator update. In keeping with the goal of producing realistic and pleasant sound effects, the time taken to perform the user's subroutine should be kept under one millisecond.
A typical JSR has been contributed by a user, composer Laurie Spiegel, who created the Pitch Sweep effects in the alphaPlus operating system. To generate complex timbres and repeating patterns of pitches from a single keypress, a form of digital frequency modulation is used. Envelope values already present (and accessed) within the system are AND-ed to the Apple analog controller setting to rapidly vary the pitch. The resulting sounds range from swoops to jangling, aliassed patterns: The extremes of the effects are achieved precisely because the computer-based digital system imposes few conceptual limits on musicians seeking individual musical expression.

Back to top

Back to Documents


Home | Documents | Tech Gallery | People Gallery | About