FMC Synthesizer

About FMC

FMC was a sample-generating software synthesizer for the Amiga, written in 1990. It featured freeform algorithms, which meant you could create your own audio synthesizer.

Uniquely, it could combine many synthesis techniques, using any sound sources; not just sine waves, but PCM sound files and wave tables. Its suite of components could emulate the algorithms of mainstream synthesizers of the time (Yamaha DX, Roland D, Korg M). FMC was designed as a sample generator for real-time synthesizers, so did not have a sequencing element.

The FMC program occupied about 45 KB of disk space, along with 120 KB of hypertext documentation, and 200 KB of patch files.

The best bits?

  • Frequency modulation of any source by any signal, including PCM files and wave tables.
  • Freeform modular algorithms, pre-dating software synths like Reason.
  • 16-bit export at any sample rate, for high-end samplers of the time.
  • Delay gates modulated by an input.

FMC Modular synthesizer Features

Algorithm Structure

  • Up to 32 oscillators/operators per algorithm
  • 20 operator types
  • free connections between operators


  • 8-bit or 16-bit (either byte order) PCM ouptut,
  • Frequency spectrum analysis
  • Waveform plots

Editing Transfer

  • PCM wave editor
  • Wave table editor
  • Interpolated transfer between wave tables and PCM files

Operator Types

  • Wave tables as oscillator sources
  • PCM samples as oscillator sources
  • Additive synthsis
  • Subtractive (filter) synthesis
  • Envelopes
  • Multi-sampling
  • Frequency modulation (FM) synthesis
  • Source switching (splicing)
  • Fade mixing
  • Ring modulation (x)
  • Delay gate
  • Implicit feedback loops
  • Global pitch control
  • Clip
  • Rectification
  • Threshold subtraction
  • Compression


  • Custom hypertext help system with graphics, providing tutorials and technical documentation
  • Upward- and downward-compatible file format


Screenshots are shown at 50% resolution. Original resolution was 640 x 512, in 4 colours.

Main editing screen

The main screen shows an algorithm circuit diagram, below the controls. An operator is highlighted, and its parameters shown just above the circuit diagram.

Waveform Editing

Banks of wave tables could be edited, straightforwardly by drawing with the mouse. Buttons provided: scaling to use full amplitude –1 to +1, a sine wave, load and save waves, and the PCM editor.

PCM File Editing

This screen takes a view on any file, allowing sounds to be lifted from plain binaries or samples. The displayed portion could be edited with the mouse, and committed to the file or rejected.

The wave tables could be copied into the file, or the a segment of the file copied into the wave table; this was interpolated, and used sub-sample precision, so that smooth waveforms could be used from relatively coarse original material.

Choosing PCM samples as sources

Operators could take their sources from PCM wave files, 8-bit or 16-bit. Here, a slot is being changed to use another file.

The flexibility of the synthesizer allowed, for example, one PCM file to frequency-modulate another, which is a great advance on the DX-type operators which could only use sine waves.

Envelope Editing

FMC envelopes were relatively trivial, as they did not need 'performance' parameters; they were simple 16-stage envelopes.

The editor could a time range, and allow scaling of the range in time, and normalizing of the amplitude.

Frequency Spectrum Output

This screen offered audio and visual preview of the generated sound. The display is a fourier transform, shown as harmonics of the tuned frequency.

In this example, the algorithm comprises two operators: The first operator is a sine wave of frequency 8, being frequency-modulated by operator 2, a sine wave of frequency 2. The envlope of operator 2 starts at level 0, increasing towards level 100 at the end.

The result can be clearly seen as a Bessel function, that is characteristic of frequency modulation.