💾 Archived View for mirrors.apple2.org.za › archive › apple.cabi.net › Music.and.Sound › SYNTHCREATE… captured on 2024-06-16 at 14:08:14.

View Raw

More Information

⬅️ Previous capture (2023-01-29)

-=-=-=-=-=-=-


_______________________________________________________________________________

This file gives you information on how to create your instruments.  For more

specific information, please purchase SynthLab from APDA.  It will give you

over 100 pages of information on SynthLab/MidiSynth!

Quick definitions:

Inst bank = xxx.BNK.  Everything SynthLab/etc needs to know about a set
                      of instruments.  Maximum of 16 instruments.

Wave bank = xxx.WAV.  All the sampled sounds in a wavebank.  Contains 64k
                      of DOC ram data, consisting of multiple waveforms,
                      each forming a distinct sound (ie, the word HELLO or
                      a trumpet).

MidiSynth = TOOL035.  A new toolset by Mark Cecys/Apple Computer that
            harnesses the power of the Apple IIgs sound system (insert more
            hype here).  

SynthLAB  = a demo application for MidiSynth;a rudimentary sequencer and
            a powerful instrument synthesizer.  You can order it from APDA
            for $25, part code # is A0250LL/A.

APDA = Apple Developers & Programmers Association.  Your basic warehouse of
       programming stuff.  Used to be owned by Call-Apple, now owned by
       Apple Computer, Inc.

       1-800-282-2732 (US)
       1-800-637-0029 (Canada)
       408-562-3910   (International)
_______________________________________________________________________________

       In essence, there are three parts to creating the instruments:
_______________________________________________________________________________

                                  Part I

Digitize and clean up the sound(s).  Use your favorite digitizing program,

like AudioZap (an excellent program, available on all online services) or

HyperStudio's SoundShop program.  Remember to trim down the sound as small

as possible!

_______________________________________________________________________________

                                 Part II

Form a wavebank out of the sound(s), using SynthCreate.  Use the LOAD SOUND

button in the main menu to perform this function.  As noted in the program,

you MUST load sounds in ascending size order (that is, small sounds first).

The reason is that SynthLab requires waveforms (digitized sounds) to be

placed in byte boundries associated with their sizes.  IE,A 4k sound must begin

on a 4k boundry, and with 63.5k of DOC ram available, that can cramp

things up!  The following sizes are available:

256 bytes       0.25k 
512 bytes       0.5k
1024 bytes      1k
4096 bytes      4k
8192 bytes      8k
16384 bytes     16k
32768 bytes     32k

SynthCreate will round up sound sizes; that is, a 4097 byte sound will be

treated as a 8k sample, or a 25000 byte sound will be treated as a 32k 

sample.  The maximum size is 32k, and SynthCreate will chop off anything

extra.

After you have loaded in all the sounds you wish to include, click on SAVE.

SynthLab will create a wavebank (default name is MY.WAV) which holds all

the sampled sounds.  It will ALSO create a temporary instrument definition

file (default name is MY.BNK) which lets you play around with the sounds

you have created inside SynthLab.

There isn't much more to SynthCreate, its merely a utility to combine

sounds into one file that can be loaded by SynthLab/etc.

_______________________________________________________________________________

                                 Part III

                  Perfecting the instruments with SynthLab...


This is the most difficult part, and can consume many hours.  You should

first familiarize yourself with the interface of SynthLab, and play around

with the many options available to you.  This section is not meant to

replace the documentation, but merely to supplant it.  Its recommended you

get ahold of the documentation (either from APDA or at a developers

conference) if you plan to work a lot with SynthLab.

There are three main screens for SynthLab, each accessed with a click on the

PAGE BUTTONS (the one that looks like a tapedeck, a funny wave, and a sharp

angled wave).  The first is the Sequencer page, the second the WaveList Edit

page, and the third the Envelope Edit page.  The sequencer page doesn't

interest us very much in creating instruments (its used mainly to create

and play songs).  The WaveList Edit page is where you'll spend most of your

time setting up all the information about a instrument.  The Envelope Edit

page holds fairly esoteric information, useful for fine-tuning a instrument

into perfection.


The first thing to do is load up the .BNK file SynthCreate made by clicking on

"Load Instruments..." once you have booted up SynthLab.  Now, the instruments

menu should be totally changed.  It used to contain all the instruments in

SYNTH.BNK (default synthlab bank), now it contains the temporary instruments

SynthCreate has made.  Wow.


Click on the WAVELIST EDIT icon now (remember, the wavy list button next to

the tapedeck button), and you'll be presented with a screenful of junk.  

First you should see a wee little keyboard to the top left of the screen.

This is a "test" keyboard you can use to see how a instrument sounds.  Below

that is a button, highlighting either Gen 1 or Gen 2.  Each instrument is

made up of eight wavelists (see the WAVELIST menu at the top) and each wavelist

is made up of two generators.  You must edit the information on each generator

seperately (there isn't enough room on the screen to edit both).  More info

on wavelists in a few paragraphs.  Below the gen buttons there are two icons,

Osc A and Osc B (each can be associated with a different icon).  The generator

mentioned above are divided into two units, namely oscillators.  So basically

an instrument is made up of 2 generators, each of which is made up of 2

oscillators (or 4 oscillators in all).  Amazing.  There are two basic modes

for each oscillator, LOOP (a little oval surrounds the osc box) or ONE SHOT

(a little arrow is under the osc box).  LOOP means a sound plays repeatedly,

ie "HELLOHELLOHELLOHELLO".  ONE SHOT means the sound is played once and then

stops, ie "HELLO".  There is one more thing to note, since a generator is

made up of two oscillators you can either play them both simulationeously

(the osc A box is on top of the B) or you can play A first and then B 

(the osc A box is next to the B box, and a fuzzy arrow is between them).  

In all, there are six different modes a generator can use, play around with

them to see how they sound.  Most of the time, you'll have both oscillators

play in one shot mode (Osc A is on top of Osc B, and both have a arrow 

underneath them).  This way you hear them simultaneously and clearly.

Now lets look at the right side of the screen.  First is OCTAVE A and

OCTAVE B (we'll look at the A&B portions of everything simultaneously, it

makes life shorter).  The octave is a common term in the music industry,

and its definition completely escapes me.  I only know that you have seven

available values (0-6), middle C is set at 3 (440 hz), and the instrument is

different depending on whether its higher or lower.  I'm sure the musicians

out there can help you out there with that.  The same goes for the Semi and

Fine tuning, where Semi is in terms of Semitones and the fine tuning is in

terms of 1/64th of asemitone (wow, small number!).  Anyways, these parameters

affect how "squeeky" or how "lowwww" your instrument sounds.  


The WAVE A/B parameter is the most crucial parameter on this screen.  Click

on the depressed box holding the name (ie, SINE WAVE) and suprise, a popup

screen will appear (as long as you hold down the mouse) listing the available

sounds.  You can scroll up or down and select the sound you want oscillator

A or B to play.  For most purposes, you'll want A & B to play the same

sound to create a "full, rich sound".  But thats not all!  By combining

various sounds, you can create NEW ONES!!!  This can go either mathematically

or musically.  What I mean is you can combine a sine wave and cosine wave

to produce white noise, or a saw tooth and a triangle wave to produce ???.  

Likewise, who knows what dreadful sound will emit when a bassoon and a 

tuba are combined?  Its up to you to find out.  


At the bottom left of the screen, there is the VOL A/B parameter (from 0-31,

0 being "inaudible").  This is a good way to have only one oscillator or one

generator play; set the waves you DON'T wish to play to a 0 volume.  However,

due to some cross-talk between the oscillators, you should set the waveform

to something like a sine wave, and set the octave/semi/fine tuning to zero.

Otherwise you may hear a high pitch or reeaal ugly sound.  Ignore the DETUNE

parameter, its not documented at the present.  The stereo display has only

two useful values, 0 and 1.  Although values up to 7 are supported, no

stereo card plays anything other than 2 channels (Left & Right).  Most

instruments have one generator playing in the left channel (STEREO 0) and

the other generator in the right channel (STEREO 1).  You can also set a

entire instrument to one channel (set both generators to the same STEREO)

but try to have some variety; ie all the drums in the left channel and all

the string instruments in the right.  It makes life more interesting.


The final parameter on this screen is the TOP KEY.  The Top Key is connected

to the WaveList.  There are 8 seperate wavelists, and strangely enough,

8 seperate entries in the TOP KEY screen!  Could it be a coincidence?  Nah.

The technical term is "Multi-Sampling".  You can assign each wavelist

to be active in only a certain pitch range.  There are 128 total pitch ranges,

with 60 being middle C (0-127).  When an instrument starts playing, it'll

look at the wavelists and play the wavelist which has a top key greater or

equal to the pitch its supposed to play at.  Thats why at the top of the TOPKEY

screen is a keyboard, you're supposed to set the wavelists by the keyboard

keys.


This is best explained by example, so lets say you have WaveList 1 set to 40,

WaveList 2 set to 80, WaveList 3 set to 105, and WaveList 4 set to 127 (the

last key; approximate the rest!).  Now, when you plunk on the key to the far

left of a MIDI keyboard, SynthLab will look at the wavelists and say "0 is

inside WaveList 1, therefore I shall use wavelist 1".  Similiarly, if you

plunk on the middle key (64), it'll use WaveList 2 (40<60<80).  For beginning

instrumenters, you may wish to leave it the way SynthCreate made it... that

is, all instruments are played using wavelist 1 only (WaveList 1 is set to

the max value).  This means you only have to setup WaveList one.  If you

do decide to use multiple waves, remember to DEFINE each wave.  Just pull down

the WAVELIST menu, select a wavelist to work on, and you're back at the

WaveList Edit page (ohh, ahh).

That wraps up the WaveList edit page.  The last one is the Envelope Edit

page, which is frequently misunderstood (ok, I don't understand it at all).

You've got the two generators to work on again, the test-keyboard, and a

bunch of little sliding bars on the right side of the screen.  At the bottom

left, there is the DECAY GAIN, which is how fast a sound "dies out".  

Its not very important for low notes, as low notes tend to decay very

slowly.  However, for high notes, a high decay gain value will cause it to

decay faster and resonate slower (thereby providing a longer sound).  The

VELOCITY GAIN is how sensitive the instrument is to MIDI velocity data.

You shouldn't be terribly concerned with it, its mainly intended for MIDI

keyboards and the like.  If you like to pound on your keyboard, leave the

velocity at zero.  If you are a "tapper", and gently depress your keys,

ramp up the velocity gain (SynthLab will be more sensitive to the incoming

data).  The last parameter is PITCH BEND RANGE, and it is HIGHLY RECOMMENDED

YOU SET THIS TO ZERO!  Thats because MidiSynth requires more CPU time to

if Pitch Bend is enabled.


Now for the difficult part, the various sliding bars.  Basically these

parameters control the envelope of the sound, which is a fancy word for the

volume.  When a note is started, it begins at zero volume and increases to

the ATTACK LEVEL (VAtk) with a slope (change) set by the Attack Rate (Atk).

It then goes to the decay 1 level (VD1) at the decay 1 rate (Dk1).  Next it

moves to the decay 2 level (VD2) with the decay 2 rate (VD2).  It then uses

the decay 3 rate (Dk3) and reaches the sustain level.  It now stops changing

and waits for the key to be released.  It then begins a downwards climb,

going to Release Level 1 (VR1) using Release Rate 1 (Rel1), down to Release

Level 2 (VR2) using Release Rate 2 (Rel2) down to 0 using Release Rate 3.  

Wow!  Just draw a mountain peak (/\) and imagine the above on paper.  

The important thing to note is that the envelope will stop (silence itself)

when it reaches a zero level.  For most purposes, keeping the sustain at two

will end the sound, and you can use Atk and DK1/2 to build up and keep the

sound playing, and then have the sound go from DK2 down to sustain using

DK3 (which may be a small number - the larger it is, the faster the sound

will stop).  At any rate, its up to you how you control these, you have 8

steps for your sound to weave up and down, make judacious use of them.  
_______________________________________________________________________________

Now then, you've (hopefully) gotten the basics of creating an instrument.

I have undoubtedly forgotten a few things, but remember these key points:

 o  an instrument is made up of 8 wavelists
 o  a wavelist is made up of 2 generators
 o  a generator is made up of 2 oscillators
 o  each oscillator ("A" & "B") can play a unique sound (called a "WAVE")

Have fun!  And don't forget to upload your songs to America Online!  Keyword

AMS.


                                                                    Parik Rao
                                                             March 11th, 1991

Special thanks to:

Joyce,Greg,Gene,Eddie,Lindsay,Dennis,Mike
        (beta testers from hell)