    KORG POLY 800
    -------------

This is a low cost hybrid synth, somewhere between the Korg PolySix and their
Mono/Poly in that is polyphonic but only has one filter rather than one per
voice that came with the PolySix. It may have also used organ divider circuits
rather than individual oscillators - it did not have glide as a feature which
would be indicative of a divider circuit.

It featured 8 oscillators that could be applied as either 4 voices with dual
osc or 8 voices with a single osc. The architecture was verging on the
interesting since each oscillator was fead into an individual envelope generator
(described below) and then summed into the single filter, the filter having
another envelope generator, 9 in total. This lead to cost reduction over having
a filter per voice however the single filter leads to breathing, also discussed
below. The envelopes were digitally generated by an on-board CPU.

The control panel has a volume, global tuning control and a 'Bend' control
that governs the depth of the pitch bend from the joystick and the overall 
amount of DCO modulation applied by the joystick. There is no sequencer in
this emulation largely because there are far better options now available than
this had but also due to a shortage of onscreen realestate.

The Poly, Chord and Hold keys are emulated, hold being a sustain key. The
Chord relearn function works follows:

    Press the Hold key
    Press the Chord key with 2 seconds
        Press the notes on the keyboard (*)
    Press the Chord key again

After that the single chord can be played from a single note as a monophonic
instrument. The Chord is saved individually with each memory.
* Note that the chord is only saved if (a) it was played from the GUI keyboard
or (b) the GUI was linked up to any MIDI device as well as the engine. The 
reason is that the GUI maintains memories and so if a chord is played on your
actual keyboard then both the engine and the GUI needs a copy, the engine to
be able to play the notes and the GUI to be able to save them.

The keypanel should function very similar to the original. There is a Prog 
button that selects between Program selection or Parameter selection and an 
LED should show where the action is. There is the telephone keyboard to enter
program or parameters numbers and an up/down selector for parameter value.
The Bank/Hold selector also works, it fixes the bank number so programs can
be recalled from a single bank with a single button press. The Write function
is as per the original - Press Write, then two digits to save a memory.

The front panel consists of a data entry panel and a silkscreen of the parameter
numbers (this silkscreen is active in the emulation). Fifty parameters are
available from the original instrument:

    DE 11 DCO1 Octave transposition +2 octaves
    DE 12 DCO1 Waveform Square or Ramp
    DE 13 DCO1 16' harmonic
    DE 14 DCO1 8' harmonic
    DE 15 DCO1 4' harmonic
    DE 16 DCO1 2' harmonic
    DE 17 DCO1 level

    DE 18 DCO Double (4 voice) or Single (8 voice)

    DE 21 DCO2 Octave transposition +2 octaves
    DE 22 DCO2 Waveform Square or Ramp
    DE 23 DCO2 16' harmonic
    DE 24 DCO2 8' harmonic
    DE 25 DCO2 4' harmonic
    DE 26 DCO2 2' harmonic
    DE 27 DCO2 level
    DE 31 DCO2 semitone transpose
    DE 32 DCO2 detune

    DE 33 Noise level

    DE 41 Filter cutoff frequency
    DE 42 Filter Resonance
    DE 43 Filter Keyboard tracking off/half/full
    DE 44 Filter Envelope polarity
    DE 45 Filter Envelope amount
    DE 46 Filter Envelope retrigger

    DE 48 Chorus On/Off

    DE 51 Env-1 DCO1 Attack
    DE 52 Env-1 DCO1 Decay
    DE 53 Env-1 DCO1 Breakpoint
    DE 54 Env-1 DCO1 Slope
    DE 55 Env-1 DCO1 Sustain
    DE 56 Env-1 DCO1 Release

    DE 61 Env-2 DCO2 Attack
    DE 62 Env-2 DCO2 Decay
    DE 63 Env-2 DCO2 Breakpoint
    DE 64 Env-2 DCO2 Slope
    DE 65 Env-2 DCO2 Sustain
    DE 66 Env-2 DCO2 Release

    DE 71 Env-3 Filter Attack
    DE 72 Env-3 Filter Decay
    DE 73 Env-3 Filter Breakpoint
    DE 74 Env-3 Filter Slope
    DE 75 Env-3 Filter Sustain
    DE 76 Env-3 Filter Release

    DE 81 Mod LFO Frequency
    DE 82 Mod Delay
    DE 83 Mod DCO
    DE 84 Mod VCF

    DE 86 Midi channel
    DE 87 Midi program change enable
    DE 88 Midi OMNI

Of these 25 pararmeters, the emulation has changed 88 to be OMNI mode rather 
than the original sequence clock as internal or external. This is because the
sequencer function was dropped as explained above.

Additional to the original many of the controls which are depicted as on/off
are actually continuous. For example, the waveform appears to be either square
or ramp. The emulator allows you to use the up/down Value keys to reproduce
this however if you use the potentiometer then you can gradually move from one
wave to the next. The different harmonics are also not on/off, you can mix
each of them together with different amounts and if you configure a mixture
of waveforms and a bit of detune the sound should widen due to addition of a
bit of phasing within the actual oscillator.

The envelope generators are not typical ADSR. There is an initial attack from
zero to max gain then decay to a 'Breakpoint'. When this has been reached then
the 'Slope' parameter will take the signal to the Sustain level, then finally
the release rate. The extra step of breakpoint and slope give plenty of extra
flexibility to try and adjust for the loss of a filter per voice and the 
emulation has a linear step which should be the same as the original. The
ninth envelope is applied to the single filter and also as the envelope for 
the noise signal level.

The single filter always responded to the highest note on the keyboard. This
gives a weaker overall sound and if playing with two hands then there is a
noticible effect with keytracking - left hand held chords will cause filter
breathing as the right hand plays solos and the keyboard tracking changes 
from high to low octaves. Note that the emulator will implement a single
filter if you select DE 46 filter envelope retrigger to be single trigger, it
will be played legato style. If multiple triggers are selected then the
emulator will produce a filter and envelope for each voice.

Bristol adds a number of extra parameters to the emulator that are not
available from the mouse on the silkscreen and were not a part of the design
of the poly800. You have to select Prog such that the LED is lit next to the
Param display, then select the two digit parameter from the telephone keyboard:

    DE 28 DCO Sync 2 to 1
    DE 34 DCO-1 PW
    DE 35 DCO-1 PWM
    DE 36 DCO-2 PW
    DE 37 DCO-2 PWM
    DE 38 DCO temperature sensitivity
    DE 67 DCO Glide

    DE 85 Mod - Uni/Multi per voice or globally

    DE 57 Envelope Touch response

    DE 47 Chorus Parameter 0
    DE 58 Chorus Parameter 1
    DE 68 Chorus Parameter 2
    DE 78 Chorus Parameter 3

If DataEntry 28 is selected for oscillator sync then LFO MOD to DCO-1 is no
longer applied, it only goes to DCO-2. This allows for the interesting sync
modulated slow vibrato of DCO-2. The LFO mod is still applied via the joystick.

DE 38 global detune will apply both temperature sensitivity to each oscillator
but also fatten out the harmonics by detuning them independently. It is only 
calculated at 'note on' which can be misleading - it has no effect on existing
notes which is intentional if misleading.

DE 57 is a bitmask for the three envelopes to define which ones will give a
response to velocity with a default to '3' for velocity tracking oscillator
gain:

    value    DEG1    DEG2    DEG3
             DCO1    DCO2    FILT

      0       -        -       -
      1       V        -       -
      2       -        V       -
      3       V        V       -
      4       -        -       V
      5       V        -       V
      6       -        V       V
      7       V        V       V

This gives some interesting velocity tracking capabilities where just one osc
can track velocity to introduce harmonic content keeping the filter at a fixed
cutoff frequence. Having a bit of detune applied globally and locally will keep
the sound reasonably fat for each oscillator.

The filter envelope does not track velocity for any of the distributed voices,
this was intentional since when using high resonance it is not desirable that
the filter cutoff changes with velocity, it tends to be inconsistently 
disonant.

If you want to use this synth with controller mappings then map the value 
entry pot to your easiest to find rotary, then click the mouse on the membrane
switch to select which parameter you want to adjust with that control each time.
The emulator is naturally not limited to just 4/8 voices, you can request more
in which case single oscillator will give you the requested number of voices
and double will give you half that amount.

The Bristol Poly-800 is dedicated to Mark.
