Home » Archimedes archive » Acorn Computing » 1992 12 Mega Disk.adf » !_92_12 » SFXM/SFXMDocs

SFXM/SFXMDocs

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Archimedes archive » Acorn Computing » 1992 12 Mega Disk.adf » !_92_12
Filename: SFXM/SFXMDocs
Read OK:
File size: C7C8 bytes
Load address: 0000
Exec address: 0000
File contents
4. !SFXM, the sample creator.
    
4.1. Getting started.

After you loaded the !SFXM application (and the !SFXED application), a click on it's icon on the iconbar will show you the two !SFXM windows (see figure 7). The two windows are titled '<Untitled>', which is the main editing window and 'Stats', which gives information about the sample length, sample type and the author of the sample.

figure 7. main editing window and stats window.

On the main editing window you can edit a so called 'sheet', which is merely a collection of objects and wires. If this is done in a meaningful way, !SFXM will be able to calculate a sample from it. To load a sheet give a double click, drag it's file into the edit window or onto the icon on the iconbar. 
                           
ICON BAR Menu

Info: gives you the latest information on the version, date etc.
Save: allows you to save the sheet that you are working on. Type in the name you want to use and drag the icon to a directory.
Restart: will clear all your current work in the sheet and allow you to start on a new sheet. Make sure that you save your sheet before using this option.
Quit: will remove the !SFXM icon from the icon bar.
        
                                        
4.2. Editing functions, building a sheet.

To the left of the edit window is a toolbox, which gives an easy access to various edit functions. These functions are also available in the edit menu. These functions are from top to bottom:

- Place, go to place mode.
- Connect, go to connect mode.
- Select, go to select mode.
- Delete selected objects.
- Delete inputs of selected objects.
- Select all objects.
- Clear selection of all objects.
- Swap selection of all objects.
- Calculate the sample!

Hereafter follows a description of the various edit functions. After reading this, try out some functions to get familiar with them.

4.3. Placing objects.

To place an object, click on the place icon in the toolbox window. Now a menu appears from which you can select the object you want to place. You can also choose the object from the edit menu. Once you have done this you will find the object attached to your mouse pointer. The editor now is in 'place mode'. To place the object on the sheet just click with select at the desired position.
     

4.4. Selecting objects.

For the editor, each object has two states. An object is either selected or not selected. If an object is selected it will be green, if not it will be grey. To alter the state of one or more objects, the editor must be in 'select mode'. To make the editor go to select mode, click on the select icon in the toolbox window, or choose the 'select' entry from the edit menu (don't go to the sub-menu). Now an object can be selected or deselected by clicking with the select button on it.
All objects can be selected at once by clicking the 'select all' icon in the toolbox window. All objects can be deselected at once by double clicking with select elsewhere on the sheet (not on an object), or by clicking the 'select clear' icon in the toolbox window. The state of all objects can be swapped by clicking the 'select swap' icon in the toolbox window. These functions are also available from the edit menu.      
 
4.5. Moving objects.

Objects which are placed on the sheet can be moved if they are not at the desired position. To do this, the editor must be in select mode and the objects you want to move must be selected (green). To move one or more object, hold down the select button at the start position, move (drag) with the mouse to the end position and release the select button. Whilst doing this you will see a line, which indicates the relative movement of the selected objects.
                          
4.6. Deleting objects.

To delete one or more objects, select the object(s) you want to delete. Now click on the 'delete object' icon in the toolbox window, or choose this menu function from the edit menu.

4.7. Editing the contents of an object.

Most objects contain values. These values can be changed by clicking with adjust on the appropriate object (the editor must be in select mode). Now a window will appear with the contents of the object, for example an oscillator holds the waveform it will produce and a constant generator holds a constant. After you have changed it, close the window or click on the 'OK' icon appropriately.

4.8. Connecting objects.                   

Each object has inputs and/or an output. Inputs are the arrows at the left side of an object. Outputs are the arrows at the right side of an object. We can connect these inputs and outputs together with wires. Notice that you can only connect an input with an output. You can't connect two inputs or two outputs together, because you would then get a shortcircuit. To be able to make connections, the editor must be in 'connect mode'. A click on the connect icon in the toolbox window or this selection from the edit menu will place the editor in connect mode.
To make a connection click with select on the start point and then with select on the end point. A wire will now be seen to connect the two points. You will notice that after the first click there is a line attached to the desired input/output. If you have made an error and you want to get rid of this line, just click on the connect icon again.
Clicking with adjust on an input changes the placing of the wire connected to that input. There are four different placings (see figure 8).

figure 8. the four different connections.

With this function you can make sure a wire won't go through another object (this doesn't really matter, but it looks a bit messy). If you still can't get a tidy wire path, just move the objects a little bit further apart.
       
4.9. Deleting connections.

If you want to delete one or more connections you have to use the 'delete inputs' icon in the toolbox window, or choose this menu entry from the edit window. The 'delete inputs' function deletes the wires connected to the inputs of the selected objects. For two-input objects, both connections are deleted. If you just want to delete one of them, delete both connections and reconnect the one you didn't want to delete.


4.10. Calculation.

This chapter probably is the most difficult one to understand. Therefore read through it very carefully and make sure that you examine the example sheets if you don't get it immediately. The most important thing about this package is learning(!), so don't be disappointed if you don't get the right sound at the first attempt.

The chapter 'digital sound' explained how a sample is stored in our computer. So if we want to create a sample, we must create a series of values (samples). First we must determine the length of the sample, or the number of values to be calculated. This value can be set in the 'Stats' window. Let's assume we set this value to 64. This means that !SFXM will calculate 64 values. It begins calculating the first one, then the second one etc. until it has calculated all 64 values. After every calculated value, the value is passed on to !SFXED, which places this value after the previous calculated one. When the calculation is finished !SFXED will show you the final sample. Calculation can be started by clicking on the 'calculate' icon in the toolbox window, or by choosing the menu entry in the edit menu.


4.11. Description of the objects.


Output
 
We get the calculated values sent to !SFXED by using the output object. Every value which goes in to this object is passed to !SFXED. So if we want to make, for example, a sine wave, we have to get the sine wave values (see figure 6) one after another into the output object. Figure 9 shows the range of values which the output object accepts.

figure 9. output value range.

The maximum value which may go into the output object is '+1' and the minimum value is  '-1'. If a value outside this range is put into this object then the value will be 'clipped'. For example, a value of 1234 will be clipped to +1, whereas a value of -10000 will be clipped to -1.


Constant Generator

The constant generator is used for generating constants. The value it will produce is determined by its contents. You can alter this constant by pressing the adjust button over this object on the sheet (see section 'Editing the contents of an object'). Now a window like in figure 10 appears.

figure 10. the constant generator window.

You can enter the value at the caret position. Click on the 'OK' icon to accept it. (note: the second time you open this window, the value inside it may not be the same because of internal rounding, but the error should not be significant)       

So having described the output and the constant generator object, we now are ready to make a sample! Namely a sample which entirely consist of constants. Load the example sheet 1 and make sure you fully understand it. Try altering the constant value to for example 1, 0,    -0.5, 123 and -100 (don't forget to calculate each time). Notice that the values of 123 and      -100 are clipped (changed to 1 and -1)?


Adder

With !SFXM we can also do some arithmetic. The adder object will add two values together. These values must be offered on it's inputs. The added result will be present at it's output. Load example sheet 2 and alter the two constants to see how it works. Try adding 1 and -0.5 together (=0.5).

                     
Subtractor
          
The subtractor object subtracts the value at the RED input from the value at the BLACK input and outputs the result. If you want to understand this better, try changing the adder from example sheet 2 to a subtractor. Don't forget to connect it properly to the constants and the output. Now try for example to subtract 1.5 from 2 (=0.5), or -0.5 from 0.25 (=0.75).

                    
Multiplier

This object multiplies the values at the inputs and outputs the result. Change the adder from example sheet 2 to a multiplier and see how it works.


Constant Multiplier 

Often you want to multiply a signal by a constant factor. This can be done of course by a multiplier object, but then you also need a constant generator. This object will spare you the constant generator, because the constant is held inside it. The constant multiplier will multiply the input value with this constant and will output the result. This value can of course be altered. To do this pop up the window like in figure 11.
figure 11. the constant multiplier window.

The eleven icons numbered 1 to 11 represent the relative distance between two notes. These can be uses to make chords. More of this later on. Load example sheet 3 to see how this object works.

                                  
Envelope Generator                     

The constant generator described earlier is a generator which generates only one value. The value it produces is the same throughout the calculation. The envelope generator is able to produce changing values. These values are represented graphically in a window (see     figure 12).

figure 12. an envelope waveform.

This window can be popped up by pressing the adjust mouse button over the object while in select mode. The vertical axis is the amplitude axis, while the horizontal axis is the time axis. The bottom of the window means a value of 0 and the top of the window means a value of 1, so the Envelope Generator outputs values between 0 and 1. These values, which you can draw into the window, are stretched over the entire sample, no matter how long the actual sample is. To make things more clear, load example sheet 4 and calculate the sample. You now see a wave like figure 12. Change the sample size to for example 10000 and calculate again. The wave should look the same as after the previous calculation, but the sample now is much longer. So the envelope generator generates a predefined signal which is stretched over the entire sample.
You can change the wave of the envelope generator by drawing with the mouse. To draw single points, draw in the window with the select button down. To draw connected points, draw with the adjust button down. It is also possible to draw straight lines. To do this follow these instructions:

1- move the mousepointer to the start point.
2- press adjust.
3- press <shift>.
4- drag the mousepointer to the end point.
5- release <shift>.

The line is now drawn. If you want to connect another line to it go to step 3 again.

6- release adjust.

If you draw single points and the mousestep is set to a value higher than two, you won't be able to reach all the points on the screen. To overcome this problem draw with adjust, or set the mousestep to two.


Oscillator

The oscillator object is used for generating predefined waves like a sine wave, a square wave etc. or a hand drawn wave. Figure 13 shows the oscillator window. 

figure 13. oscillator window.

The waveform is defined by 256 values. The top of the waveform area means a value of 1, and the bottom means a value of -1, so the Oscillator is capable of producing values between -1 and 1. These values appear on its output. The oscillator also has two inputs. The upper input (BLACK) is used to define the frequency of the output wave and the lower input (RED) is used for synchronising the oscillator to another oscillator. 
The frequency input determines the length of the output wave. The length of the output wave is 256/(frequency input) values.
To see how this works, take a look at figure 14.

figure 14. example of an output wave of the oscillator. 

In figure 14a the frequency input is 1 and therefore the output wave is 256 values long. In figure 14b the frequency input is 2 and so the output wave is 128 values long. Because the waveform in figure 14b is compressed by a factor of two, the frequency of this wave will be twice as high. So the higher the frequency input, the shorter the output wave and the higher the frequency of it. To experiment with this a little bit, load example sheet 5. Calculate the sheet with constant values of for example 0.5, 1, 2, 4 etc. and examine the result. You can also try to alter the waveform of the oscillator (read on to find out how to do this).
The exact frequency of the output wave can't be determined by !SFXM, because the program doesn't know at what sample rate the calculated sample will be played. The sample rate in most cases will be determined by a music application, which will play the sample. For example: If we have a sine wave of 256 values and it is played at a sample rate of 20000 samples per second, the actual frequency will be: 20000/256 = 78 Hz. If we played the sample at a rate of 40000 samples per second, the frequency is: 40000/256 = 156 Hz. You don't really have to know anything about all this, because the best way to determine the frequency is listen to the sample. If the sample sounds too low or too high, just alter the value at the frequency input of the oscillator. For most cases a frequency value from 2 to 16 will give an acceptable pitch.

The other input (RED) of the Oscillator is the synchronising input. The function of this input is best explained by example sheet 6.

The main oscillator produces a sine wave with a frequency of 2. The second oscillator produces a square wave with a frequency of 3. The output of the second oscillator is connected to the synchronising input of the first oscillator. This causes the first oscillator to oscillate at a frequency of 3! Notice that the output wave isn't quite a sine wave anymore. What happens is that when the synchronising input of the first oscillator goes from negative (-1) to positive (+1) the oscillator 'resets' internally, and therefore takes over the frequency at its synchronising input. Because the output wave gets somewhat distorted it will not sound the same as the original sine wave. If you want to use this function often, experiment a bit with the example sheet, else you may leave the synchronising input unconnected.

The icon functions in the oscillator window (figure 13) are:

Sin: makes the waveform a sine.
Tri: makes the waveform a triangle.
Ramp: makes the waveform a ramp up/down by clicking with select/adjust.
Sqr: make the waveform a square.
Cons: makes the waveform a constant 1/0/-1 by clicking with select/menu/adjust.
<<<<: compresses the waveform by a factor 2, thus making the frequency twice as high.
>>>>: expands the waveform by a factor 2. The last 128 values are lost.
*/2: multiplies/divides (select/adjust) the amplitude of the waveform by a factor 2. If the amplitude becomes too big, the edges are clipped.
+-90: rotates the waveform by +90 or -90 (select/adjust) degrees.
Rand: fills the waveform with random numbers.             

You can also draw the waveform by hand. To do this, draw in the area where the waveform is shown. The drawing rules are the same as in the envelope generator window, so you can draw points, connected points and straight lines.

There is no undo function, so be careful.


Noise Generator

This object is also a generator object. It is used to produce random numbers between -1 and +1, which appear on its output. The input of the noise generator is used to control the rate at which the random numbers are generated. If a value of 1 is applied to this input a random value is generated every calculation on the final sample. If a value of for example 0.25 if applied, a random value is generated within every four calculations. Load example sheet 7 and change the constant value to for example 1, 0.5, 0.25, 0.1 and see what happens.


Pulse Generator

This generator is used for generating waves like in figure 15.

figure 15. waves that can be generated by the pulse generator.
 
All these waves are called pulse waves. They appear on the output of the pulse generator. This object also has two inputs. The upper input (BLACK) controls the frequency of the output wave, while the lower input (RED) is to control the width of the pulse.



















The frequency input acts like the frequency input of the oscillator, so a value of 1 on this input will cause the pulse generator to generate a pulse with a length of 256 values. More generally: the length of the output wave is 256/(frequency input) values. Read the explanation of the frequency input of the oscillator for more information about this.

The pulse width input is used for defining the width of the output pulse. For example a value of 0.25 on this input will give a 25% high, 75% low pulse. This means that if the total pulse length is for example 64 (a value of 4 on the frequency input), there will be after another 16 values 1 and then 48 values -1 (example sheet 8). A square wave (50% high, 50% low) can be obtained by applying a value of 0.5 on this input. To experiment a bit with the pulse generator, load example sheet 8. Try to make a pulse which has a length of 128 values and a 75% high, 25% low width.

   
Low Pass Filter

This object is used to filter out the high frequency components (see chapter 1) of a sound wave. This only leaves the lower frequency components in the output wave, and so the output wave will have a less 'sharp' sound. This is best explained by a figure. 

figure 16. low pass filtering a square wave.


Figure 16 shows the filtering of a square wave. The original square wave is shown in figure 16a and the filtered ones in figure 16b and 16c. Notice that the sharp edges are rounded off. The square wave will therefore have a less sharp sound.                                                       

To experiment with this object, load example sheet 9. The original wave from the oscillator is fed into the upper input (BLACK) of the filter. The amount of filtering is controlled by the lower (RED) input of the filter. If a value of 1 is applied to this input, no filtering takes place and the original wave is just passed through the filter. To show what other values do to the filtering, change the filter constant of this sheet to 0.5, 0.25, 0.1, 0.05 and 0. Examine the final waveform. You can listen to the final sound by pressing the 'Y' key on the keyboard, after you have clicked on the 'Loop' icon in the keyboard window. Also try filtering a triangle wave, a ramp wave, a sine wave and your own hand-drawn wave.


High Pass Filter           

This object works opposite to the low pass filter. It is used to filter out the low frequency components of a sound wave. This only leaves the higher frequency components in the output wave, and so the output wave will sound sharper. Figure 17 shows how high pass filtering a square wave affect the waveform. Notice that the sharp edges are made even sharper.

figure 17. high pass filtering a square wave.

To experiment with this object, load example sheet 10. Again the original wave from the oscillator is fed into the upper input (BLACK) of the filter and the amount of filtering is controlled by the lower (RED) input of the filter. There also is a constant multiplier which multiplies the output signal by 0.5, so that the 'spikes' won't be clipped. This time, a value of 0 applied to this input, will cause no filtering to take place, so this works opposite to the way that the low pass filter works. To show what other values do to the filtering change the filter constant of this sheet to 0.01, 0.05, 0.5, and 1. Examine and listen to the final waveform. Also try filtering a triangle wave, a ramp wave, a sine wave and your own hand-drawn wave.


General Function       

The function of this object is to apply a user defined function on a signal. The output value of this object can be written as a function of the input signal: O = f(I). The function is determined by a graphical representation on a grid. Take a look at figure 18. This is the General Function window and is used to define this function. 

figure 18. General Function window.

The horizontal axis is the input axis in the range from -1 (left) to +1 (right) and the vertical axis is the output axis also in the range from -1 (bottom) to +1 (top).  If you are not familiar with functions take a look at an example function in figure 19.
figure 19. the output value is a function of the input value.

This example shows how output values are determined by input values of: -0.5 -0.25 and 0.75. The output values are respectively 0.5, 0.25 and -0.5. Input values out of the range from -1 to 1 are clipped. So an input value of for example -100 will be clipped to -1 and an input value of 50 will be clipped to +1. The default function is the identity function, so the output value will be the input value.

The general function object can be used for transforming one wave to a different one. Figure 20 gives some examples of how a sine wave can be distorted. The figure shows the applied function and the output wave. Try to make a sheet which produces these results (use a constant generator, an oscillator, a general function and an output object).

figure 20. distortion of a sine wave.






Delay Line

This object delays the input signal (BLACK) by a maximum of 64 values. The amount of delay is controlled by the control signal (RED). For example a value of 0 at the control input doesn't delay the signal, while a value of 0.5 delays the input signal by 32 values. This means that an input value will arrive 32 calculations later at the output. If you want more delay, add more delay blocks to form a sort of pipeline. Example sheet 11 gives an example of the Delay Line object. When the calculation starts, the delay object is filled with zero's (this is done by !SFXM). At the control input is a value of 0.5 which delays the input signal, in this example '+1', by 32 values. When you calculate the sample, you will see that the first 32 values are 0, while the last 32 values are 1 (the sample size is set to 64). This object can be used for example to make echo's (see later on).


Sample & Hold
                                                         
This object has a kind of memory function. It can be used to remember a value during the calculation. The value to be stored should be present at the signal input (BLACK). When the control input (RED) goes from negative to positive the value at the signal input is stored and will be present at the output. This value at the output will remain the same until the next negative to positive transition at the control input. To make things more clear, load example sheet 12. Have a look at the contents of the oscillators and the constants. Calculate the sheet and examine the result. Now change the lower constant to 64. Calculate and examine the result again. 
 

Input                                     

With !SFXM it is also possible to perform calculations on sample files. This can be done by using the Input object. This object outputs the contents of a sample file. Figure 21 shows you the input window.
figure 21. the input window.



You can enter the filename of the sample file here, or drag the sample file into this window, which has the same effect. Don't forget to set the set the correct sample type. Only raw data files can be used. If the sample length in the 'Stats' window isn't equal to the size of the sample file, the sample file will be stretched or compressed so that it will fit into the calculated sample. This will only happen if the 'Stretch Sample' icon is 'on'. If it is 'off' this will not be the case. If you want the base pitch of the input-sample to remain the same, make the sample length in the 'Stats' window equal to the size of the sample file.



5. Advanced techniques.
                    

This chapter describes the techniques which have been used to create all the samples in the 'Sheets' directory. The examples are quite interesting on their own, but they are even more interesting when you combine them. With each example comes a sheet, which resides in the directory Sheets.Examples.Advanced. Make sure you understand the function of the sheet by examining and experimenting with it.


5.1. Envelopes.

An envelope is the variation of the volume of a sound. Most instruments have an ADSR envelope, which stands for Attack, Decay, Sustain and Release. A typical ADSR envelope is shown in figure 22.
figure 22. an ADSR envelope.                           

The attack phase is the time that the signal goes from zero volume to maximum volume. In the decay phase, the volume goes from maximum level to sustain level. When the sustain level is reached, the volume remains the same for a while in the sustain phase. After the sustain phase comes the release phase, where the signal drops to zero volume.

Obviously the best way to create envelopes is to use the envelope generator. This object is used in the example sheet 'Envelope'. Load this sheet and examine the contents of the envelope generator. You will see that it genarates an ADSR envelope. This envelope generator is controlling the outgoing signal of the oscillator, which generates a ramp wave with a frequency of 4. 

Experiments:
-change the envelope waveform and examine how this affects the sound.
-alter the waveform of the oscillator.


5.2. Amplitude Modulation.      

Amplitude modulation is, like the envelope generation, variation of the volume of a sound wave. This time we are not going to use the envelope generator, but an oscillator to do this. Load the example sheet 'AM'. The upper oscillator is generating the signal we want to modulate. It is a square wave with a frequency of 8. The modulation signal comes from the lower oscillator. This oscillator generates a sine wave with a frequency of 0.25. Out of the oscillator comes a signal which lies between -1 and 1. This signal isn't quite suitable for modulation. If we add 1 to the signal using an adder, and then multiply the signal by 0.5, the outgoing signal lies between 0 and 1 (ok?). Now its a suitable modulation signal and we can use it to modulate using a multiplier.

Experiments:
-change the constant at the lower oscillator to for example 0.5 (faster modulation).
-modulate a different sound wave, by changing the waveform of the upper oscillator.
-change the modulating signal by altering the waveform of the lower oscillator (for example to a ramp wave).
-change the constant at the adder and the constant multiplier after it, so that the outgoing signal lies between 0.5 and 1 (this is changing the 'depth of the modulation', so less modulation).


5.3. Frequency Modulation.

Frequency modulation means varying the frequency of a sound wave. This can be done in several ways.

In example sheet 'FM1' modulation is done by an envelope generator. The envelope generator generates a signal which goes from 1 to 0 and then from 0 to 1 (just have a look at its contents). Connected to the envelope generator is a constant multiplier which multiplies by 32, so the output signal of the envelope generator and the multiplier together lies between 0 and 32. This signal is used for controlling the frequency of the oscillator, which produces a sine wave.

Experiments:
-change the shape of the envelope waveform.
-alter the constant multiplier, so you will get a different frequency range.
-alter the oscillator waveform.

Example sheet 'FM2' shows you how modulation can be done by an oscillator. The left oscillator generates a modulating sine wave with a frequency of 0.125. The constant, adder and multiplier make the output of the oscillator (-1 to 1) go from 16 to 32 (check it). This signal controls the frequency of the right oscillator, which also generates a sine wave. 

Experiments:
-change the speed of modulation by altering the constant, which controls the modulating oscillator.
-alter the constant at the adder and the constant multiplier to get a different frequency range.
-change the waveform of the modulating oscillator.

If we put up the speed of modulation dramatically we can make some quite interesting effects. This is shown in example sheet 'FM3'. Note that this is the same sheet as 'FM2'.

Experiments:
-change the constant at the adder to 5 and the constant multiplier to 4.
-change the constant at the left oscillator to 4.

Example sheet 'FM4' shows you that you can also control the speed of modulation by an envelope generator.

Experiments:
-change the constant multiplier after the envelope generator to 1, 4 or even 16.
-alter the constant at the adder and the multiplier after the adder to change the depth of modulation.
-try replacing the constant at the adder by an envelope generator and a constant multiplier. Now you can control the depth of the modulation by the envelope generator. Find a nice value for the constant multiplier.
-you can even try to put up a third oscillator on the sheet to control the modulating oscillator (move all the objects to the right to make place). An FM synthesizer like the Yamaha DX7 uses methods like these to create its sounds.
 

5.4. Variable Pulse Width.

Example sheet 'PulseWidth' shows you how you can use the pulse generator object. The constant controls the frequency, and the envelope generator controls the pulse width. Just take a look at the envelope waveform to see how it controls the pulse width. Calculate the sample and listen to the outcome. Click on the 'Multiple' icon in the keyboard window, now press F2 and then 'Y', 'N' and 'I' simultaneously. That�s a nice string sound, isn't it? You can also make other chords like: 'I' 'P' and ']' together. This method of combining pulse generators is used in the sheet 'Strings6'. This sheet uses two pulse generators with frequencies of 4 and 8 to make a nice string sound.  


5.5. Filtering.

With a filter you can alter the timbre of a sound. Load example sheet 'Filter1', calculate the sample and listen to the result. The oscillator generates a square wave with a frequency of 2. The upper envelope generator is used to control the low-pass filter, while the lower envelope generator is used to control the high-pass filter. Have a look at these waveforms and listen to the calculated sound. Can you recognise what the filters do to the sound? The reason why there are two filters after each other is that you then get better filtering.

We can also use the low-pass filter together with an envelope generator to control the envelope of a sound. Load example sheet 'Filter2' to see how this is done. By the way, you get this kind of oscillator waveform by clicking on the 'Rand' icon in the oscillator window and then 3 clicks on the '>>>>' icon. It is a wave which has a lot of high harmonics in it.

Experiments: 
-alter the envelopes and work out how this affects the sound.


5.6. Synchronising Oscillators.

Example sheet 'Synchro' gives an example of how to use the synchronising input of the oscillator. The frequency input of the upper oscillator goes from (about) 0 to 6 and back to 0 again. This oscillator is synchronised by the lower oscillator at a frequency of 4, so the frequency which comes out of the upper oscillator remains 4 all the time. Have a close look at the waveform to understand this better (read the !SFXED chapter for info about zooming in etc.). The waveform is changing all the time, but the frequency stays the same. Because of this, you get a very lively sound.

Experiments:
-alter the waveform of the upper oscillator.
-change the constant multiplier to 8, 16, 32, or even 64. 
-change the constant at the synchronising oscillator to for example 2, 8 etc (this will alter the base frequency of the sound).


5.7. Phase Shifting.   

Another way to make a sound more lively is to pass it through a phase shifter. A phase shifter delays the incoming waveform a bit and then mixes it with the original signal. How to do this is show in example sheet 'Phase1' and 'Phase2'. 

Load example sheet 'Phase1', calculate the sample and listen to it. Notice that you get a kind of 'floating' sound?

The oscillator generates a rather edgy hand-drawn wave, so it has a lot of high frequency components in it. This signal goes into the delay object, where it is being delayed a bit. The amount of delay is controlled by an envelope generator. Take a look at the envelope waveform to see how it controls the delay. The adder is used for mixing the original signal with the delayed signal. After the adder is a constant multiplier to avoid clipping.

Experiments:
-change the oscillator waveform to your own hand-drawn waveform.
-change the envelope waveform to another slow changing wave. Do you notice any difference in the sound?
-make the envelope generator generate a constant wave by drawing a horizontal line in it. The 'floating' effect should now be gone. Why is that?

Example sheet 'Phase2' applies phase shifting on a noise waveform. It gives a very clear phasing effect.

Experiments:
-alter the envelope waveform.
-alter the constant generator to for example 0.5, 0.25, 0.125


5.8. Echoes.

In the previous section we used the delay line for the phasing effect. This time we are going to use it to create echoes.

Load example sheet 'Echo', calculate the sample and listen to the result. Nice echo right?

The oscillator generates the signal we want to make echoes of. The envelope generator together with the multiplier makes this signal into a very short burst (check the envelope waveform). The very short burst goes into the adder, which passes this signal directly to the output. This signal is also fed back into the pipe-line of delay objects, where it comes out some time later. This delayed signal is then added to the original signal, goes to the output object and is fed back into the delay again etc. If you don't understand this immediately, just follow the signal route from the oscillator to the adder, through the delay objects, to the adder, through the delay objects etc. Notice that the signal loops? This is called feedback. 

The amount of feedback is controlled by the constant multiplier. This is set to 0.75, so the volume of the next echo is 75% of the volume of the previous one. If you set the constant multiplier to for example 0.5, the echo volume will halve each time.

The amount of delay, so the time between two echoes, is controlled by the constant generator which is connected to the delay lines.

Experiments:
-change the waveform of the envelope generator which controls the volume of the oscillator.
-alter the amount of feedback.
-alter the delay time.
-replace the oscillator by an input object. You now can make very sophisticated echoes on your own sample files. Don't forget to set the sample length equal to the file size, else the base pitch of your sample will be changed.


5.9. Distortion.

Distortion is also used for making a sound more interesting. Distortion changes the shape of the waveform, so that it get more higher harmonics.

Load example sheet 'Distortion'. In this example, we use the general function object to distort a sine wave. The sine wave is generated by the oscillator. It is amplified by the envelope generator together with the multiplier and constant multiplier. The maximum amplification is 4 (check the constant multiplier). The amplified signal goes through the general function, where it gets transformed into a different signal. A transformation like this is show in figure 20 (in the section General Function). Because the amplification is controlled by an envelope generator, we can control the amount of distortion with it. The more the amplification, the more the signal gets distorted. At the start of the sample there is much distortion, while at the end of the sample there is hardly any distortion (check the waveform of the envelope generator, also have a close look at the calculated sample). 

If we make a general function like in example 'Distort2' or 'Distort3', we even get more distortion.

Experiments:
-change the oscillator waveform.
-alter the general function (some nice straight lines, or just make a mess of it).


5.10. Fourier Synthesis.

In the chapter about sound, we stated that every sound signal can be made up of pure sine waves. So, if we want to make a sound we might as well only use sine waves to do this.

This is done in example sheet 'FourSynth'. There are four oscillators generating sine waves. The frequencies are determined by the constants. The amplitude of the sine waves are controlled by the envelope generators (notice that the envelope generators are connected to the multipliers, not the synchronising inputs of the oscillators). Have a look at these envelope generators, to see what kind of wave they produce. 

With this kind of technique you have an almost infinite number of possibilities. Experiment a lot with it!.

Experiments:
-change the constants.
-alter the waveforms or the envelope generators.
-add more oscillators.
-experiment with the sheets: 'BlubZing', 'Bells', 'Celeste', 'Choir', 'Claves', 'Marimba', 'Organ'.


5.11. Tuned Noise.

It is very difficult to make a nice sound with the noise generator. This is because the noise sound is too sharp. You can get rid of the sharpness by using a low-pass filter, but then the high frequencies are gone as well. We can overcome this problem if we tune the noise using an oscillator. How to do this is shown in example sheet 'TuneNoise1'.

The noise from the noise generator gets filtered by the low pass filter. This filter is controlled by a constant generator. The actual tuning is done by an oscillator and a multiplier. After the multiplier comes a constant multiplier which amplifies the signal.

With the filter you can control the bandwidth of the noise. With the oscillator you can control the tuning.

Experiments:
-Change the constant which controls the filter to: 0.075, 0.05 and 0.02.
-Change the constant which controls the oscillator to: 16, 32 and 96.

In example sheet 'TuneNoise2' both the oscillator and the filter are controlled by an envelope generator.


5.12. Chords.

You have probably already noticed that sometimes, if you press two or three keys simultaneously you get a very nice sound. This is called a chord. With !SFXM we can quite easily make samples which are chords by using the constant multiplier. Load example sheet 'Chord1' to see how this works.

There are three oscillators to simulate three keys pressed simultaneously. The base frequency is determined by the constant. The two constant multipliers to the oscillators control the other frequencies. For example, if you calculate the sample and press the 'Q' key, the sample sounds like you press the 'E' and the 'T' key as well. Here is how it works: the first constant multiplier is set to 1.25... You get this constant by clicking on the box with '4' in it. This means that the second oscillator oscillates at a frequency that is 4 halftones higher than the first one. Likewise, the third oscillator oscillates at a frequency that is 7 halftones higher.

There are a lot of chords you can make. Example sheet 'Chord2' generates a minor chord, like pressing 'Q', '#' and 'T' together. See if you can find out what kind of chords 'Chord3', 'Chord4' and 'Chord5' are.



6. !SFXED, the sample editor.

6.1. Getting started.

To start the application double click on the !SFXED icon. If you have started up the !SFXM application first, the !SFXED will automatically be loaded.

If you want to load a sample into the editor, either drag it onto the !SFXED icon on the iconbar, or drag it into the !SFXED waveform window. 

A click on the !SFXED icon on the iconbar will bring up the waveform window and the keyboard window.


figure 23. The waveform window and the keyboard window.


6.2. The waveform and the keyboard window.
                                      
The waveform window is the window where the sample editing takes place. You can select an area of sample data by pressing either select or adjust over the waveform, and then drag to the desired position. Alternatively use the left button to select the start and the right button to define the end of the selection.

To set the left loop pointer (green) press select on the area above the waveform. Set the right loop pointer (red) by using adjust. If you hold down the <shift> key, the distance between the left and right loop pointer is kept constant, allowing you to drag the selected loop area around the window.

The position icon indicates the absolute sample position within the sample. You can also click on this icon to toggle between hexadecimal and decimal representation. 

The sample rate can be set by using the SRate icon.


The keyboard window is used to play the sample data. To be able to play, the keyboard must have the 'input focus' (title bar should be yellow). This can be done by clicking with select or adjust in the window (clicking with adjust will also cause !SFXED to stop playing).
          
The keyboard window has the following icons which are activated by clicking on them:

Play: What to play when you press a key.

All : will play the whole sample.
Loop : will play a loop of the area selected by the loop pointers.
Sel : will play the selected area.
->Loop : will play the sample form start to the right loop pointer, then it will play the loop (this is used for example by 'Tracker' and 'EMR' files).

Keys:

Release : if release is on, the volume will fade after a key is released.
Multiple : allows multiple key playing (up to three channels).

Hitting the spacebar will stop the sample playing.

It is also possible to play the sample from the editor window by clicking on the 'All', 'Sel' and 'Window' icons. Clicking on the 'X' icon will stop the sample playing.

The function keys set the octave for the sample to play. F1 is the lowest and F5 the highest. This gives a total pitch range of over 6 octaves.


6.3. Waveform window menu functions.

The waveform window menu functions are:

Misc:

Info : gives info about memory, pointers etc.
Sample Type : allows you to set the sample type.
Set Buffer : set the buffer length. If you wish to use a particularly large sample, you will have to set the buffer to the appropriate size. The maximum buffer size is currently set to 1Mb. You can change the default buffersize by altering the !Run file in the !SFXED directory. Use: Set SFXED$BufferSize <Size>.
Restart : clears everything. MAKE SURE YOU HAVE SAVED!.

Save:
       
All : this saves the whole sample.
Selection : only saves the selected area.
Clipboard : saves the clipboard (from 'Cut' or 'Copy').

!SFXED saves in the following formats:

Tracker: Tracker file.
Tracker_NH : Tracker file without header.
Armadeus : Armadeus file.
DSEdit : DSEdit file.
EMR : EMR file.
Raw : raw data file.
Module : creates a module from sample data.

For some file types, the sample must be of the correct form (eg. Tracker files must be logarithmic). If the are not, !SFXED will warn you that it cannot perform your action. 

Note on modules: the loop pointers will only be used in the module if the 'Loop' icon is on and when the Save -> All menu entry is used.
                                    
Edit:

Cut : cuts the selected area onto the clipboard.
Copy : copies the selected area onto the clipboard.
Paste : pastes the clipboard at the right select pointer.
Delete : deletes the selected area.
Delete* : deletes everything that is NOT selected.
DeleteL : deletes everything to the left of the left select pointer.
DeleteR : deletes everything to the right of the right select pointer.

There is NO undo function!

Select:

Select : click on Select (without going to the sub-menu) will clear any selection.
All : selects the whole sample.
Loop : selects the area indicated by the loop pointers.
Left : selects everything to the left of the left select pointer.
Right : selects everything to the right of the right select pointer.
Window : selects the current window.
Clear : clears the selection (this is the same as Select without sub-menu).


Zoom:

Zoom : click on Zoom (without sub-menu) will zoom in to the selected area. It is possible to zoom into one byte of sample data.
All : views the whole sample.
Out : zooms out to view some more sample data.
Loop : zoom in on the loop.
Selected : Zoom in and view the selected area (this is the same as Zoom without sub-menu).                                                             
Remember : remembers the state of the current window. If you want to go back to this particular section use...
Recall : will zoom into the selection you have 'Remembered'.
                       
Loop:

All : sets the loop pointers to the whole sample.
Window : sets the loop pointers to the current window.
Selected : sets the loop pointers to the current selection.
Half : halves the distance between the loop pointers (handy for making 'songs' from only one sample).
Double : doubles the distance between the loop pointers.        
Remember : remembers the loop pointer positions.
Recall : recalls the 'Remembered' loop pointer positions.

Goodies:

These functions work on the selected area, or (if nothing is selected) on the whole sample. Some functions are only available for linear samples. If you want to use these functions on a logarithmic sample, you have to convert the sample from log to lin, perform the function and then convert from lin to log.
             
Signed : converts signed <-> unsigned.
Lin->Log : converts linear to logarithmic.
Log->Lin : converts logarithmic to signed linear.
Reverse : will reverse the sample data (to play it backwards).
Low Pass : will filter out the higher frequencies. A value of 0 will filter everything, while a value of 255 will filter nothing.
High Pass : will filter out the lower frequencies. A value of 0 will filter nothing, while a value of 255 will filter everything.
Amplify : scale the amplitude in %. eg 50% will halve the volume.
Echo/Reverb : echo (multiple echo's)/reverb (only one echo). For example a decay of 50% every 1024 bytes means that the echo on a 10K sample will repeat 10 times, halving the amplitude each repeat.
Fade In/Out : fade from start volume to end volume in %.
Stretch : stretch the sample in %. This allows you to change the base pitch of a sample or section of a sample. For example a stretch of 50% will double the base pitch.
Silence : this will zero any chosen section, the result being silence.
FFT : This allows you a graphic format of your sample, where each frequency has a different position on the grid. This is provided to help the more experienced user to create samples with !SFXM from a sampled sound. There is a frequency axis, a time axis and an amplitude axis. The frequency axis ranges from 0 to 128 (frequency at an !SFXM Oscillator object). The selected sample area is stretched over the time axis. The amplitude can be set by the scale value.                                                                       
Add Clipboard : merges the selected area with the sound currently in the clipboard.
     

Song:

A song is a collection of loops from a sample, which can be played in a sequence.

Play : plays the currently loaded song.
Show : pops up the song window.
Save : for saving the song (Armadeus compatible).
Save Module : saves the song as a relocatable module.
Clear : clears the current song from memory.
Repeat : choosing this item will add a 'tick'. When this option is on, the song will repeat infinitely.

6.4. Creating a song.

To bring up the song window use 'Show' from the song menu. You are now ready to create a song from the sample currently in the waveform window.

Next set the loop pointers for the section that you want to play.

Click the cursor in the song window at the point marked <Untitled> and give the loop a name. This yellow box section of the window is where all the editing takes place. When you hit <return> the cursor will move to the next icon, where you can type in the number of times the loop must repeat. The loop will play at the pitch which you last played using the keyboard window. ie. if you want to change the pitch of the current loop that you are editing, do so with the keyboard window. Hit <return> again and now specify the volume from 1 to 255. To save all of this, click on the white section below the yellow box with the menu button and click on 'append'.

The loop will now appear as '1'.

Now repeat the above in the yellow box for the next loop and append it. 

This loop will now appear as '2'.

If you wish to edit any of your loops, click on the white box containing the loop and edit it in the yellow box at the top of the window.

Menu options in the loop window.

Insert Loop : This will automatically add the current loop in the editor in the previous loop position. ie if you click on loop 3 and insert the current loop, the current loop becomes 3 and all loops above 3 are incremented by 1.
Append Loop : will add the current loop at the end of all loops.
Overwrite Loop : will overwrite the selected loop with the loop currently in the edit box.
Delete Loop : will delete the selected loop.
Play to End : this will play the song from the selected loop to the end of the song.
Play Song : plays the whole song.

7. File Formats.

Tracker : logarithmic.
Tracker_NH : any type.
Armadeus : signed linear.
DSEdit : unsigned linear.
EMR : signed linear.
Maestro : RM (any type).
Notate : RM (any type).
Rhapsody : RM (any type).
Coconiser : logarithmic.
Raw : any type.

00000000  34 2e 20 21 53 46 58 4d  2c 20 74 68 65 20 73 61  |4. !SFXM, the sa|
00000010  6d 70 6c 65 20 63 72 65  61 74 6f 72 2e 0a 20 20  |mple creator..  |
00000020  20 20 0a 34 2e 31 2e 20  47 65 74 74 69 6e 67 20  |  .4.1. Getting |
00000030  73 74 61 72 74 65 64 2e  0a 0a 41 66 74 65 72 20  |started...After |
00000040  79 6f 75 20 6c 6f 61 64  65 64 20 74 68 65 20 21  |you loaded the !|
00000050  53 46 58 4d 20 61 70 70  6c 69 63 61 74 69 6f 6e  |SFXM application|
00000060  20 28 61 6e 64 20 74 68  65 20 21 53 46 58 45 44  | (and the !SFXED|
00000070  20 61 70 70 6c 69 63 61  74 69 6f 6e 29 2c 20 61  | application), a|
00000080  20 63 6c 69 63 6b 20 6f  6e 20 69 74 27 73 20 69  | click on it's i|
00000090  63 6f 6e 20 6f 6e 20 74  68 65 20 69 63 6f 6e 62  |con on the iconb|
000000a0  61 72 20 77 69 6c 6c 20  73 68 6f 77 20 79 6f 75  |ar will show you|
000000b0  20 74 68 65 20 74 77 6f  20 21 53 46 58 4d 20 77  | the two !SFXM w|
000000c0  69 6e 64 6f 77 73 20 28  73 65 65 20 66 69 67 75  |indows (see figu|
000000d0  72 65 20 37 29 2e 20 54  68 65 20 74 77 6f 20 77  |re 7). The two w|
000000e0  69 6e 64 6f 77 73 20 61  72 65 20 74 69 74 6c 65  |indows are title|
000000f0  64 20 27 3c 55 6e 74 69  74 6c 65 64 3e 27 2c 20  |d '<Untitled>', |
00000100  77 68 69 63 68 20 69 73  20 74 68 65 20 6d 61 69  |which is the mai|
00000110  6e 20 65 64 69 74 69 6e  67 20 77 69 6e 64 6f 77  |n editing window|
00000120  20 61 6e 64 20 27 53 74  61 74 73 27 2c 20 77 68  | and 'Stats', wh|
00000130  69 63 68 20 67 69 76 65  73 20 69 6e 66 6f 72 6d  |ich gives inform|
00000140  61 74 69 6f 6e 20 61 62  6f 75 74 20 74 68 65 20  |ation about the |
00000150  73 61 6d 70 6c 65 20 6c  65 6e 67 74 68 2c 20 73  |sample length, s|
00000160  61 6d 70 6c 65 20 74 79  70 65 20 61 6e 64 20 74  |ample type and t|
00000170  68 65 20 61 75 74 68 6f  72 20 6f 66 20 74 68 65  |he author of the|
00000180  20 73 61 6d 70 6c 65 2e  0a 0a 66 69 67 75 72 65  | sample...figure|
00000190  20 37 2e 20 6d 61 69 6e  20 65 64 69 74 69 6e 67  | 7. main editing|
000001a0  20 77 69 6e 64 6f 77 20  61 6e 64 20 73 74 61 74  | window and stat|
000001b0  73 20 77 69 6e 64 6f 77  2e 0a 0a 4f 6e 20 74 68  |s window...On th|
000001c0  65 20 6d 61 69 6e 20 65  64 69 74 69 6e 67 20 77  |e main editing w|
000001d0  69 6e 64 6f 77 20 79 6f  75 20 63 61 6e 20 65 64  |indow you can ed|
000001e0  69 74 20 61 20 73 6f 20  63 61 6c 6c 65 64 20 27  |it a so called '|
000001f0  73 68 65 65 74 27 2c 20  77 68 69 63 68 20 69 73  |sheet', which is|
00000200  20 6d 65 72 65 6c 79 20  61 20 63 6f 6c 6c 65 63  | merely a collec|
00000210  74 69 6f 6e 20 6f 66 20  6f 62 6a 65 63 74 73 20  |tion of objects |
00000220  61 6e 64 20 77 69 72 65  73 2e 20 49 66 20 74 68  |and wires. If th|
00000230  69 73 20 69 73 20 64 6f  6e 65 20 69 6e 20 61 20  |is is done in a |
00000240  6d 65 61 6e 69 6e 67 66  75 6c 20 77 61 79 2c 20  |meaningful way, |
00000250  21 53 46 58 4d 20 77 69  6c 6c 20 62 65 20 61 62  |!SFXM will be ab|
00000260  6c 65 20 74 6f 20 63 61  6c 63 75 6c 61 74 65 20  |le to calculate |
00000270  61 20 73 61 6d 70 6c 65  20 66 72 6f 6d 20 69 74  |a sample from it|
00000280  2e 20 54 6f 20 6c 6f 61  64 20 61 20 73 68 65 65  |. To load a shee|
00000290  74 20 67 69 76 65 20 61  20 64 6f 75 62 6c 65 20  |t give a double |
000002a0  63 6c 69 63 6b 2c 20 64  72 61 67 20 69 74 27 73  |click, drag it's|
000002b0  20 66 69 6c 65 20 69 6e  74 6f 20 74 68 65 20 65  | file into the e|
000002c0  64 69 74 20 77 69 6e 64  6f 77 20 6f 72 20 6f 6e  |dit window or on|
000002d0  74 6f 20 74 68 65 20 69  63 6f 6e 20 6f 6e 20 74  |to the icon on t|
000002e0  68 65 20 69 63 6f 6e 62  61 72 2e 20 0a 20 20 20  |he iconbar. .   |
000002f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000300  20 20 20 20 20 20 20 20  0a 49 43 4f 4e 20 42 41  |        .ICON BA|
00000310  52 20 4d 65 6e 75 0a 0a  49 6e 66 6f 3a 20 67 69  |R Menu..Info: gi|
00000320  76 65 73 20 79 6f 75 20  74 68 65 20 6c 61 74 65  |ves you the late|
00000330  73 74 20 69 6e 66 6f 72  6d 61 74 69 6f 6e 20 6f  |st information o|
00000340  6e 20 74 68 65 20 76 65  72 73 69 6f 6e 2c 20 64  |n the version, d|
00000350  61 74 65 20 65 74 63 2e  0a 53 61 76 65 3a 20 61  |ate etc..Save: a|
00000360  6c 6c 6f 77 73 20 79 6f  75 20 74 6f 20 73 61 76  |llows you to sav|
00000370  65 20 74 68 65 20 73 68  65 65 74 20 74 68 61 74  |e the sheet that|
00000380  20 79 6f 75 20 61 72 65  20 77 6f 72 6b 69 6e 67  | you are working|
00000390  20 6f 6e 2e 20 54 79 70  65 20 69 6e 20 74 68 65  | on. Type in the|
000003a0  20 6e 61 6d 65 20 79 6f  75 20 77 61 6e 74 20 74  | name you want t|
000003b0  6f 20 75 73 65 20 61 6e  64 20 64 72 61 67 20 74  |o use and drag t|
000003c0  68 65 20 69 63 6f 6e 20  74 6f 20 61 20 64 69 72  |he icon to a dir|
000003d0  65 63 74 6f 72 79 2e 0a  52 65 73 74 61 72 74 3a  |ectory..Restart:|
000003e0  20 77 69 6c 6c 20 63 6c  65 61 72 20 61 6c 6c 20  | will clear all |
000003f0  79 6f 75 72 20 63 75 72  72 65 6e 74 20 77 6f 72  |your current wor|
00000400  6b 20 69 6e 20 74 68 65  20 73 68 65 65 74 20 61  |k in the sheet a|
00000410  6e 64 20 61 6c 6c 6f 77  20 79 6f 75 20 74 6f 20  |nd allow you to |
00000420  73 74 61 72 74 20 6f 6e  20 61 20 6e 65 77 20 73  |start on a new s|
00000430  68 65 65 74 2e 20 4d 61  6b 65 20 73 75 72 65 20  |heet. Make sure |
00000440  74 68 61 74 20 79 6f 75  20 73 61 76 65 20 79 6f  |that you save yo|
00000450  75 72 20 73 68 65 65 74  20 62 65 66 6f 72 65 20  |ur sheet before |
00000460  75 73 69 6e 67 20 74 68  69 73 20 6f 70 74 69 6f  |using this optio|
00000470  6e 2e 0a 51 75 69 74 3a  20 77 69 6c 6c 20 72 65  |n..Quit: will re|
00000480  6d 6f 76 65 20 74 68 65  20 21 53 46 58 4d 20 69  |move the !SFXM i|
00000490  63 6f 6e 20 66 72 6f 6d  20 74 68 65 20 69 63 6f  |con from the ico|
000004a0  6e 20 62 61 72 2e 0a 20  20 20 20 20 20 20 20 0a  |n bar..        .|
000004b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
000004d0  20 20 20 20 20 20 20 20  0a 34 2e 32 2e 20 45 64  |        .4.2. Ed|
000004e0  69 74 69 6e 67 20 66 75  6e 63 74 69 6f 6e 73 2c  |iting functions,|
000004f0  20 62 75 69 6c 64 69 6e  67 20 61 20 73 68 65 65  | building a shee|
00000500  74 2e 0a 0a 54 6f 20 74  68 65 20 6c 65 66 74 20  |t...To the left |
00000510  6f 66 20 74 68 65 20 65  64 69 74 20 77 69 6e 64  |of the edit wind|
00000520  6f 77 20 69 73 20 61 20  74 6f 6f 6c 62 6f 78 2c  |ow is a toolbox,|
00000530  20 77 68 69 63 68 20 67  69 76 65 73 20 61 6e 20  | which gives an |
00000540  65 61 73 79 20 61 63 63  65 73 73 20 74 6f 20 76  |easy access to v|
00000550  61 72 69 6f 75 73 20 65  64 69 74 20 66 75 6e 63  |arious edit func|
00000560  74 69 6f 6e 73 2e 20 54  68 65 73 65 20 66 75 6e  |tions. These fun|
00000570  63 74 69 6f 6e 73 20 61  72 65 20 61 6c 73 6f 20  |ctions are also |
00000580  61 76 61 69 6c 61 62 6c  65 20 69 6e 20 74 68 65  |available in the|
00000590  20 65 64 69 74 20 6d 65  6e 75 2e 20 54 68 65 73  | edit menu. Thes|
000005a0  65 20 66 75 6e 63 74 69  6f 6e 73 20 61 72 65 20  |e functions are |
000005b0  66 72 6f 6d 20 74 6f 70  20 74 6f 20 62 6f 74 74  |from top to bott|
000005c0  6f 6d 3a 0a 0a 2d 20 50  6c 61 63 65 2c 20 67 6f  |om:..- Place, go|
000005d0  20 74 6f 20 70 6c 61 63  65 20 6d 6f 64 65 2e 0a  | to place mode..|
000005e0  2d 20 43 6f 6e 6e 65 63  74 2c 20 67 6f 20 74 6f  |- Connect, go to|
000005f0  20 63 6f 6e 6e 65 63 74  20 6d 6f 64 65 2e 0a 2d  | connect mode..-|
00000600  20 53 65 6c 65 63 74 2c  20 67 6f 20 74 6f 20 73  | Select, go to s|
00000610  65 6c 65 63 74 20 6d 6f  64 65 2e 0a 2d 20 44 65  |elect mode..- De|
00000620  6c 65 74 65 20 73 65 6c  65 63 74 65 64 20 6f 62  |lete selected ob|
00000630  6a 65 63 74 73 2e 0a 2d  20 44 65 6c 65 74 65 20  |jects..- Delete |
00000640  69 6e 70 75 74 73 20 6f  66 20 73 65 6c 65 63 74  |inputs of select|
00000650  65 64 20 6f 62 6a 65 63  74 73 2e 0a 2d 20 53 65  |ed objects..- Se|
00000660  6c 65 63 74 20 61 6c 6c  20 6f 62 6a 65 63 74 73  |lect all objects|
00000670  2e 0a 2d 20 43 6c 65 61  72 20 73 65 6c 65 63 74  |..- Clear select|
00000680  69 6f 6e 20 6f 66 20 61  6c 6c 20 6f 62 6a 65 63  |ion of all objec|
00000690  74 73 2e 0a 2d 20 53 77  61 70 20 73 65 6c 65 63  |ts..- Swap selec|
000006a0  74 69 6f 6e 20 6f 66 20  61 6c 6c 20 6f 62 6a 65  |tion of all obje|
000006b0  63 74 73 2e 0a 2d 20 43  61 6c 63 75 6c 61 74 65  |cts..- Calculate|
000006c0  20 74 68 65 20 73 61 6d  70 6c 65 21 0a 0a 48 65  | the sample!..He|
000006d0  72 65 61 66 74 65 72 20  66 6f 6c 6c 6f 77 73 20  |reafter follows |
000006e0  61 20 64 65 73 63 72 69  70 74 69 6f 6e 20 6f 66  |a description of|
000006f0  20 74 68 65 20 76 61 72  69 6f 75 73 20 65 64 69  | the various edi|
00000700  74 20 66 75 6e 63 74 69  6f 6e 73 2e 20 41 66 74  |t functions. Aft|
00000710  65 72 20 72 65 61 64 69  6e 67 20 74 68 69 73 2c  |er reading this,|
00000720  20 74 72 79 20 6f 75 74  20 73 6f 6d 65 20 66 75  | try out some fu|
00000730  6e 63 74 69 6f 6e 73 20  74 6f 20 67 65 74 20 66  |nctions to get f|
00000740  61 6d 69 6c 69 61 72 20  77 69 74 68 20 74 68 65  |amiliar with the|
00000750  6d 2e 0a 0a 34 2e 33 2e  20 50 6c 61 63 69 6e 67  |m...4.3. Placing|
00000760  20 6f 62 6a 65 63 74 73  2e 0a 0a 54 6f 20 70 6c  | objects...To pl|
00000770  61 63 65 20 61 6e 20 6f  62 6a 65 63 74 2c 20 63  |ace an object, c|
00000780  6c 69 63 6b 20 6f 6e 20  74 68 65 20 70 6c 61 63  |lick on the plac|
00000790  65 20 69 63 6f 6e 20 69  6e 20 74 68 65 20 74 6f  |e icon in the to|
000007a0  6f 6c 62 6f 78 20 77 69  6e 64 6f 77 2e 20 4e 6f  |olbox window. No|
000007b0  77 20 61 20 6d 65 6e 75  20 61 70 70 65 61 72 73  |w a menu appears|
000007c0  20 66 72 6f 6d 20 77 68  69 63 68 20 79 6f 75 20  | from which you |
000007d0  63 61 6e 20 73 65 6c 65  63 74 20 74 68 65 20 6f  |can select the o|
000007e0  62 6a 65 63 74 20 79 6f  75 20 77 61 6e 74 20 74  |bject you want t|
000007f0  6f 20 70 6c 61 63 65 2e  20 59 6f 75 20 63 61 6e  |o place. You can|
00000800  20 61 6c 73 6f 20 63 68  6f 6f 73 65 20 74 68 65  | also choose the|
00000810  20 6f 62 6a 65 63 74 20  66 72 6f 6d 20 74 68 65  | object from the|
00000820  20 65 64 69 74 20 6d 65  6e 75 2e 20 4f 6e 63 65  | edit menu. Once|
00000830  20 79 6f 75 20 68 61 76  65 20 64 6f 6e 65 20 74  | you have done t|
00000840  68 69 73 20 79 6f 75 20  77 69 6c 6c 20 66 69 6e  |his you will fin|
00000850  64 20 74 68 65 20 6f 62  6a 65 63 74 20 61 74 74  |d the object att|
00000860  61 63 68 65 64 20 74 6f  20 79 6f 75 72 20 6d 6f  |ached to your mo|
00000870  75 73 65 20 70 6f 69 6e  74 65 72 2e 20 54 68 65  |use pointer. The|
00000880  20 65 64 69 74 6f 72 20  6e 6f 77 20 69 73 20 69  | editor now is i|
00000890  6e 20 27 70 6c 61 63 65  20 6d 6f 64 65 27 2e 20  |n 'place mode'. |
000008a0  54 6f 20 70 6c 61 63 65  20 74 68 65 20 6f 62 6a  |To place the obj|
000008b0  65 63 74 20 6f 6e 20 74  68 65 20 73 68 65 65 74  |ect on the sheet|
000008c0  20 6a 75 73 74 20 63 6c  69 63 6b 20 77 69 74 68  | just click with|
000008d0  20 73 65 6c 65 63 74 20  61 74 20 74 68 65 20 64  | select at the d|
000008e0  65 73 69 72 65 64 20 70  6f 73 69 74 69 6f 6e 2e  |esired position.|
000008f0  0a 20 20 20 20 20 0a 0a  34 2e 34 2e 20 53 65 6c  |.     ..4.4. Sel|
00000900  65 63 74 69 6e 67 20 6f  62 6a 65 63 74 73 2e 0a  |ecting objects..|
00000910  0a 46 6f 72 20 74 68 65  20 65 64 69 74 6f 72 2c  |.For the editor,|
00000920  20 65 61 63 68 20 6f 62  6a 65 63 74 20 68 61 73  | each object has|
00000930  20 74 77 6f 20 73 74 61  74 65 73 2e 20 41 6e 20  | two states. An |
00000940  6f 62 6a 65 63 74 20 69  73 20 65 69 74 68 65 72  |object is either|
00000950  20 73 65 6c 65 63 74 65  64 20 6f 72 20 6e 6f 74  | selected or not|
00000960  20 73 65 6c 65 63 74 65  64 2e 20 49 66 20 61 6e  | selected. If an|
00000970  20 6f 62 6a 65 63 74 20  69 73 20 73 65 6c 65 63  | object is selec|
00000980  74 65 64 20 69 74 20 77  69 6c 6c 20 62 65 20 67  |ted it will be g|
00000990  72 65 65 6e 2c 20 69 66  20 6e 6f 74 20 69 74 20  |reen, if not it |
000009a0  77 69 6c 6c 20 62 65 20  67 72 65 79 2e 20 54 6f  |will be grey. To|
000009b0  20 61 6c 74 65 72 20 74  68 65 20 73 74 61 74 65  | alter the state|
000009c0  20 6f 66 20 6f 6e 65 20  6f 72 20 6d 6f 72 65 20  | of one or more |
000009d0  6f 62 6a 65 63 74 73 2c  20 74 68 65 20 65 64 69  |objects, the edi|
000009e0  74 6f 72 20 6d 75 73 74  20 62 65 20 69 6e 20 27  |tor must be in '|
000009f0  73 65 6c 65 63 74 20 6d  6f 64 65 27 2e 20 54 6f  |select mode'. To|
00000a00  20 6d 61 6b 65 20 74 68  65 20 65 64 69 74 6f 72  | make the editor|
00000a10  20 67 6f 20 74 6f 20 73  65 6c 65 63 74 20 6d 6f  | go to select mo|
00000a20  64 65 2c 20 63 6c 69 63  6b 20 6f 6e 20 74 68 65  |de, click on the|
00000a30  20 73 65 6c 65 63 74 20  69 63 6f 6e 20 69 6e 20  | select icon in |
00000a40  74 68 65 20 74 6f 6f 6c  62 6f 78 20 77 69 6e 64  |the toolbox wind|
00000a50  6f 77 2c 20 6f 72 20 63  68 6f 6f 73 65 20 74 68  |ow, or choose th|
00000a60  65 20 27 73 65 6c 65 63  74 27 20 65 6e 74 72 79  |e 'select' entry|
00000a70  20 66 72 6f 6d 20 74 68  65 20 65 64 69 74 20 6d  | from the edit m|
00000a80  65 6e 75 20 28 64 6f 6e  27 74 20 67 6f 20 74 6f  |enu (don't go to|
00000a90  20 74 68 65 20 73 75 62  2d 6d 65 6e 75 29 2e 20  | the sub-menu). |
00000aa0  4e 6f 77 20 61 6e 20 6f  62 6a 65 63 74 20 63 61  |Now an object ca|
00000ab0  6e 20 62 65 20 73 65 6c  65 63 74 65 64 20 6f 72  |n be selected or|
00000ac0  20 64 65 73 65 6c 65 63  74 65 64 20 62 79 20 63  | deselected by c|
00000ad0  6c 69 63 6b 69 6e 67 20  77 69 74 68 20 74 68 65  |licking with the|
00000ae0  20 73 65 6c 65 63 74 20  62 75 74 74 6f 6e 20 6f  | select button o|
00000af0  6e 20 69 74 2e 0a 41 6c  6c 20 6f 62 6a 65 63 74  |n it..All object|
00000b00  73 20 63 61 6e 20 62 65  20 73 65 6c 65 63 74 65  |s can be selecte|
00000b10  64 20 61 74 20 6f 6e 63  65 20 62 79 20 63 6c 69  |d at once by cli|
00000b20  63 6b 69 6e 67 20 74 68  65 20 27 73 65 6c 65 63  |cking the 'selec|
00000b30  74 20 61 6c 6c 27 20 69  63 6f 6e 20 69 6e 20 74  |t all' icon in t|
00000b40  68 65 20 74 6f 6f 6c 62  6f 78 20 77 69 6e 64 6f  |he toolbox windo|
00000b50  77 2e 20 41 6c 6c 20 6f  62 6a 65 63 74 73 20 63  |w. All objects c|
00000b60  61 6e 20 62 65 20 64 65  73 65 6c 65 63 74 65 64  |an be deselected|
00000b70  20 61 74 20 6f 6e 63 65  20 62 79 20 64 6f 75 62  | at once by doub|
00000b80  6c 65 20 63 6c 69 63 6b  69 6e 67 20 77 69 74 68  |le clicking with|
00000b90  20 73 65 6c 65 63 74 20  65 6c 73 65 77 68 65 72  | select elsewher|
00000ba0  65 20 6f 6e 20 74 68 65  20 73 68 65 65 74 20 28  |e on the sheet (|
00000bb0  6e 6f 74 20 6f 6e 20 61  6e 20 6f 62 6a 65 63 74  |not on an object|
00000bc0  29 2c 20 6f 72 20 62 79  20 63 6c 69 63 6b 69 6e  |), or by clickin|
00000bd0  67 20 74 68 65 20 27 73  65 6c 65 63 74 20 63 6c  |g the 'select cl|
00000be0  65 61 72 27 20 69 63 6f  6e 20 69 6e 20 74 68 65  |ear' icon in the|
00000bf0  20 74 6f 6f 6c 62 6f 78  20 77 69 6e 64 6f 77 2e  | toolbox window.|
00000c00  20 54 68 65 20 73 74 61  74 65 20 6f 66 20 61 6c  | The state of al|
00000c10  6c 20 6f 62 6a 65 63 74  73 20 63 61 6e 20 62 65  |l objects can be|
00000c20  20 73 77 61 70 70 65 64  20 62 79 20 63 6c 69 63  | swapped by clic|
00000c30  6b 69 6e 67 20 74 68 65  20 27 73 65 6c 65 63 74  |king the 'select|
00000c40  20 73 77 61 70 27 20 69  63 6f 6e 20 69 6e 20 74  | swap' icon in t|
00000c50  68 65 20 74 6f 6f 6c 62  6f 78 20 77 69 6e 64 6f  |he toolbox windo|
00000c60  77 2e 20 54 68 65 73 65  20 66 75 6e 63 74 69 6f  |w. These functio|
00000c70  6e 73 20 61 72 65 20 61  6c 73 6f 20 61 76 61 69  |ns are also avai|
00000c80  6c 61 62 6c 65 20 66 72  6f 6d 20 74 68 65 20 65  |lable from the e|
00000c90  64 69 74 20 6d 65 6e 75  2e 20 20 20 20 20 20 0a  |dit menu.      .|
00000ca0  20 0a 34 2e 35 2e 20 4d  6f 76 69 6e 67 20 6f 62  | .4.5. Moving ob|
00000cb0  6a 65 63 74 73 2e 0a 0a  4f 62 6a 65 63 74 73 20  |jects...Objects |
00000cc0  77 68 69 63 68 20 61 72  65 20 70 6c 61 63 65 64  |which are placed|
00000cd0  20 6f 6e 20 74 68 65 20  73 68 65 65 74 20 63 61  | on the sheet ca|
00000ce0  6e 20 62 65 20 6d 6f 76  65 64 20 69 66 20 74 68  |n be moved if th|
00000cf0  65 79 20 61 72 65 20 6e  6f 74 20 61 74 20 74 68  |ey are not at th|
00000d00  65 20 64 65 73 69 72 65  64 20 70 6f 73 69 74 69  |e desired positi|
00000d10  6f 6e 2e 20 54 6f 20 64  6f 20 74 68 69 73 2c 20  |on. To do this, |
00000d20  74 68 65 20 65 64 69 74  6f 72 20 6d 75 73 74 20  |the editor must |
00000d30  62 65 20 69 6e 20 73 65  6c 65 63 74 20 6d 6f 64  |be in select mod|
00000d40  65 20 61 6e 64 20 74 68  65 20 6f 62 6a 65 63 74  |e and the object|
00000d50  73 20 79 6f 75 20 77 61  6e 74 20 74 6f 20 6d 6f  |s you want to mo|
00000d60  76 65 20 6d 75 73 74 20  62 65 20 73 65 6c 65 63  |ve must be selec|
00000d70  74 65 64 20 28 67 72 65  65 6e 29 2e 20 54 6f 20  |ted (green). To |
00000d80  6d 6f 76 65 20 6f 6e 65  20 6f 72 20 6d 6f 72 65  |move one or more|
00000d90  20 6f 62 6a 65 63 74 2c  20 68 6f 6c 64 20 64 6f  | object, hold do|
00000da0  77 6e 20 74 68 65 20 73  65 6c 65 63 74 20 62 75  |wn the select bu|
00000db0  74 74 6f 6e 20 61 74 20  74 68 65 20 73 74 61 72  |tton at the star|
00000dc0  74 20 70 6f 73 69 74 69  6f 6e 2c 20 6d 6f 76 65  |t position, move|
00000dd0  20 28 64 72 61 67 29 20  77 69 74 68 20 74 68 65  | (drag) with the|
00000de0  20 6d 6f 75 73 65 20 74  6f 20 74 68 65 20 65 6e  | mouse to the en|
00000df0  64 20 70 6f 73 69 74 69  6f 6e 20 61 6e 64 20 72  |d position and r|
00000e00  65 6c 65 61 73 65 20 74  68 65 20 73 65 6c 65 63  |elease the selec|
00000e10  74 20 62 75 74 74 6f 6e  2e 20 57 68 69 6c 73 74  |t button. Whilst|
00000e20  20 64 6f 69 6e 67 20 74  68 69 73 20 79 6f 75 20  | doing this you |
00000e30  77 69 6c 6c 20 73 65 65  20 61 20 6c 69 6e 65 2c  |will see a line,|
00000e40  20 77 68 69 63 68 20 69  6e 64 69 63 61 74 65 73  | which indicates|
00000e50  20 74 68 65 20 72 65 6c  61 74 69 76 65 20 6d 6f  | the relative mo|
00000e60  76 65 6d 65 6e 74 20 6f  66 20 74 68 65 20 73 65  |vement of the se|
00000e70  6c 65 63 74 65 64 20 6f  62 6a 65 63 74 73 2e 0a  |lected objects..|
00000e80  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000e90  20 20 20 20 20 20 20 20  20 20 0a 34 2e 36 2e 20  |          .4.6. |
00000ea0  44 65 6c 65 74 69 6e 67  20 6f 62 6a 65 63 74 73  |Deleting objects|
00000eb0  2e 0a 0a 54 6f 20 64 65  6c 65 74 65 20 6f 6e 65  |...To delete one|
00000ec0  20 6f 72 20 6d 6f 72 65  20 6f 62 6a 65 63 74 73  | or more objects|
00000ed0  2c 20 73 65 6c 65 63 74  20 74 68 65 20 6f 62 6a  |, select the obj|
00000ee0  65 63 74 28 73 29 20 79  6f 75 20 77 61 6e 74 20  |ect(s) you want |
00000ef0  74 6f 20 64 65 6c 65 74  65 2e 20 4e 6f 77 20 63  |to delete. Now c|
00000f00  6c 69 63 6b 20 6f 6e 20  74 68 65 20 27 64 65 6c  |lick on the 'del|
00000f10  65 74 65 20 6f 62 6a 65  63 74 27 20 69 63 6f 6e  |ete object' icon|
00000f20  20 69 6e 20 74 68 65 20  74 6f 6f 6c 62 6f 78 20  | in the toolbox |
00000f30  77 69 6e 64 6f 77 2c 20  6f 72 20 63 68 6f 6f 73  |window, or choos|
00000f40  65 20 74 68 69 73 20 6d  65 6e 75 20 66 75 6e 63  |e this menu func|
00000f50  74 69 6f 6e 20 66 72 6f  6d 20 74 68 65 20 65 64  |tion from the ed|
00000f60  69 74 20 6d 65 6e 75 2e  0a 0a 34 2e 37 2e 20 45  |it menu...4.7. E|
00000f70  64 69 74 69 6e 67 20 74  68 65 20 63 6f 6e 74 65  |diting the conte|
00000f80  6e 74 73 20 6f 66 20 61  6e 20 6f 62 6a 65 63 74  |nts of an object|
00000f90  2e 0a 0a 4d 6f 73 74 20  6f 62 6a 65 63 74 73 20  |...Most objects |
00000fa0  63 6f 6e 74 61 69 6e 20  76 61 6c 75 65 73 2e 20  |contain values. |
00000fb0  54 68 65 73 65 20 76 61  6c 75 65 73 20 63 61 6e  |These values can|
00000fc0  20 62 65 20 63 68 61 6e  67 65 64 20 62 79 20 63  | be changed by c|
00000fd0  6c 69 63 6b 69 6e 67 20  77 69 74 68 20 61 64 6a  |licking with adj|
00000fe0  75 73 74 20 6f 6e 20 74  68 65 20 61 70 70 72 6f  |ust on the appro|
00000ff0  70 72 69 61 74 65 20 6f  62 6a 65 63 74 20 28 74  |priate object (t|
00001000  68 65 20 65 64 69 74 6f  72 20 6d 75 73 74 20 62  |he editor must b|
00001010  65 20 69 6e 20 73 65 6c  65 63 74 20 6d 6f 64 65  |e in select mode|
00001020  29 2e 20 4e 6f 77 20 61  20 77 69 6e 64 6f 77 20  |). Now a window |
00001030  77 69 6c 6c 20 61 70 70  65 61 72 20 77 69 74 68  |will appear with|
00001040  20 74 68 65 20 63 6f 6e  74 65 6e 74 73 20 6f 66  | the contents of|
00001050  20 74 68 65 20 6f 62 6a  65 63 74 2c 20 66 6f 72  | the object, for|
00001060  20 65 78 61 6d 70 6c 65  20 61 6e 20 6f 73 63 69  | example an osci|
00001070  6c 6c 61 74 6f 72 20 68  6f 6c 64 73 20 74 68 65  |llator holds the|
00001080  20 77 61 76 65 66 6f 72  6d 20 69 74 20 77 69 6c  | waveform it wil|
00001090  6c 20 70 72 6f 64 75 63  65 20 61 6e 64 20 61 20  |l produce and a |
000010a0  63 6f 6e 73 74 61 6e 74  20 67 65 6e 65 72 61 74  |constant generat|
000010b0  6f 72 20 68 6f 6c 64 73  20 61 20 63 6f 6e 73 74  |or holds a const|
000010c0  61 6e 74 2e 20 41 66 74  65 72 20 79 6f 75 20 68  |ant. After you h|
000010d0  61 76 65 20 63 68 61 6e  67 65 64 20 69 74 2c 20  |ave changed it, |
000010e0  63 6c 6f 73 65 20 74 68  65 20 77 69 6e 64 6f 77  |close the window|
000010f0  20 6f 72 20 63 6c 69 63  6b 20 6f 6e 20 74 68 65  | or click on the|
00001100  20 27 4f 4b 27 20 69 63  6f 6e 20 61 70 70 72 6f  | 'OK' icon appro|
00001110  70 72 69 61 74 65 6c 79  2e 0a 0a 34 2e 38 2e 20  |priately...4.8. |
00001120  43 6f 6e 6e 65 63 74 69  6e 67 20 6f 62 6a 65 63  |Connecting objec|
00001130  74 73 2e 20 20 20 20 20  20 20 20 20 20 20 20 20  |ts.             |
00001140  20 20 20 20 20 20 0a 0a  45 61 63 68 20 6f 62 6a  |      ..Each obj|
00001150  65 63 74 20 68 61 73 20  69 6e 70 75 74 73 20 61  |ect has inputs a|
00001160  6e 64 2f 6f 72 20 61 6e  20 6f 75 74 70 75 74 2e  |nd/or an output.|
00001170  20 49 6e 70 75 74 73 20  61 72 65 20 74 68 65 20  | Inputs are the |
00001180  61 72 72 6f 77 73 20 61  74 20 74 68 65 20 6c 65  |arrows at the le|
00001190  66 74 20 73 69 64 65 20  6f 66 20 61 6e 20 6f 62  |ft side of an ob|
000011a0  6a 65 63 74 2e 20 4f 75  74 70 75 74 73 20 61 72  |ject. Outputs ar|
000011b0  65 20 74 68 65 20 61 72  72 6f 77 73 20 61 74 20  |e the arrows at |
000011c0  74 68 65 20 72 69 67 68  74 20 73 69 64 65 20 6f  |the right side o|
000011d0  66 20 61 6e 20 6f 62 6a  65 63 74 2e 20 57 65 20  |f an object. We |
000011e0  63 61 6e 20 63 6f 6e 6e  65 63 74 20 74 68 65 73  |can connect thes|
000011f0  65 20 69 6e 70 75 74 73  20 61 6e 64 20 6f 75 74  |e inputs and out|
00001200  70 75 74 73 20 74 6f 67  65 74 68 65 72 20 77 69  |puts together wi|
00001210  74 68 20 77 69 72 65 73  2e 20 4e 6f 74 69 63 65  |th wires. Notice|
00001220  20 74 68 61 74 20 79 6f  75 20 63 61 6e 20 6f 6e  | that you can on|
00001230  6c 79 20 63 6f 6e 6e 65  63 74 20 61 6e 20 69 6e  |ly connect an in|
00001240  70 75 74 20 77 69 74 68  20 61 6e 20 6f 75 74 70  |put with an outp|
00001250  75 74 2e 20 59 6f 75 20  63 61 6e 27 74 20 63 6f  |ut. You can't co|
00001260  6e 6e 65 63 74 20 74 77  6f 20 69 6e 70 75 74 73  |nnect two inputs|
00001270  20 6f 72 20 74 77 6f 20  6f 75 74 70 75 74 73 20  | or two outputs |
00001280  74 6f 67 65 74 68 65 72  2c 20 62 65 63 61 75 73  |together, becaus|
00001290  65 20 79 6f 75 20 77 6f  75 6c 64 20 74 68 65 6e  |e you would then|
000012a0  20 67 65 74 20 61 20 73  68 6f 72 74 63 69 72 63  | get a shortcirc|
000012b0  75 69 74 2e 20 54 6f 20  62 65 20 61 62 6c 65 20  |uit. To be able |
000012c0  74 6f 20 6d 61 6b 65 20  63 6f 6e 6e 65 63 74 69  |to make connecti|
000012d0  6f 6e 73 2c 20 74 68 65  20 65 64 69 74 6f 72 20  |ons, the editor |
000012e0  6d 75 73 74 20 62 65 20  69 6e 20 27 63 6f 6e 6e  |must be in 'conn|
000012f0  65 63 74 20 6d 6f 64 65  27 2e 20 41 20 63 6c 69  |ect mode'. A cli|
00001300  63 6b 20 6f 6e 20 74 68  65 20 63 6f 6e 6e 65 63  |ck on the connec|
00001310  74 20 69 63 6f 6e 20 69  6e 20 74 68 65 20 74 6f  |t icon in the to|
00001320  6f 6c 62 6f 78 20 77 69  6e 64 6f 77 20 6f 72 20  |olbox window or |
00001330  74 68 69 73 20 73 65 6c  65 63 74 69 6f 6e 20 66  |this selection f|
00001340  72 6f 6d 20 74 68 65 20  65 64 69 74 20 6d 65 6e  |rom the edit men|
00001350  75 20 77 69 6c 6c 20 70  6c 61 63 65 20 74 68 65  |u will place the|
00001360  20 65 64 69 74 6f 72 20  69 6e 20 63 6f 6e 6e 65  | editor in conne|
00001370  63 74 20 6d 6f 64 65 2e  0a 54 6f 20 6d 61 6b 65  |ct mode..To make|
00001380  20 61 20 63 6f 6e 6e 65  63 74 69 6f 6e 20 63 6c  | a connection cl|
00001390  69 63 6b 20 77 69 74 68  20 73 65 6c 65 63 74 20  |ick with select |
000013a0  6f 6e 20 74 68 65 20 73  74 61 72 74 20 70 6f 69  |on the start poi|
000013b0  6e 74 20 61 6e 64 20 74  68 65 6e 20 77 69 74 68  |nt and then with|
000013c0  20 73 65 6c 65 63 74 20  6f 6e 20 74 68 65 20 65  | select on the e|
000013d0  6e 64 20 70 6f 69 6e 74  2e 20 41 20 77 69 72 65  |nd point. A wire|
000013e0  20 77 69 6c 6c 20 6e 6f  77 20 62 65 20 73 65 65  | will now be see|
000013f0  6e 20 74 6f 20 63 6f 6e  6e 65 63 74 20 74 68 65  |n to connect the|
00001400  20 74 77 6f 20 70 6f 69  6e 74 73 2e 20 59 6f 75  | two points. You|
00001410  20 77 69 6c 6c 20 6e 6f  74 69 63 65 20 74 68 61  | will notice tha|
00001420  74 20 61 66 74 65 72 20  74 68 65 20 66 69 72 73  |t after the firs|
00001430  74 20 63 6c 69 63 6b 20  74 68 65 72 65 20 69 73  |t click there is|
00001440  20 61 20 6c 69 6e 65 20  61 74 74 61 63 68 65 64  | a line attached|
00001450  20 74 6f 20 74 68 65 20  64 65 73 69 72 65 64 20  | to the desired |
00001460  69 6e 70 75 74 2f 6f 75  74 70 75 74 2e 20 49 66  |input/output. If|
00001470  20 79 6f 75 20 68 61 76  65 20 6d 61 64 65 20 61  | you have made a|
00001480  6e 20 65 72 72 6f 72 20  61 6e 64 20 79 6f 75 20  |n error and you |
00001490  77 61 6e 74 20 74 6f 20  67 65 74 20 72 69 64 20  |want to get rid |
000014a0  6f 66 20 74 68 69 73 20  6c 69 6e 65 2c 20 6a 75  |of this line, ju|
000014b0  73 74 20 63 6c 69 63 6b  20 6f 6e 20 74 68 65 20  |st click on the |
000014c0  63 6f 6e 6e 65 63 74 20  69 63 6f 6e 20 61 67 61  |connect icon aga|
000014d0  69 6e 2e 0a 43 6c 69 63  6b 69 6e 67 20 77 69 74  |in..Clicking wit|
000014e0  68 20 61 64 6a 75 73 74  20 6f 6e 20 61 6e 20 69  |h adjust on an i|
000014f0  6e 70 75 74 20 63 68 61  6e 67 65 73 20 74 68 65  |nput changes the|
00001500  20 70 6c 61 63 69 6e 67  20 6f 66 20 74 68 65 20  | placing of the |
00001510  77 69 72 65 20 63 6f 6e  6e 65 63 74 65 64 20 74  |wire connected t|
00001520  6f 20 74 68 61 74 20 69  6e 70 75 74 2e 20 54 68  |o that input. Th|
00001530  65 72 65 20 61 72 65 20  66 6f 75 72 20 64 69 66  |ere are four dif|
00001540  66 65 72 65 6e 74 20 70  6c 61 63 69 6e 67 73 20  |ferent placings |
00001550  28 73 65 65 20 66 69 67  75 72 65 20 38 29 2e 0a  |(see figure 8)..|
00001560  0a 66 69 67 75 72 65 20  38 2e 20 74 68 65 20 66  |.figure 8. the f|
00001570  6f 75 72 20 64 69 66 66  65 72 65 6e 74 20 63 6f  |our different co|
00001580  6e 6e 65 63 74 69 6f 6e  73 2e 0a 0a 57 69 74 68  |nnections...With|
00001590  20 74 68 69 73 20 66 75  6e 63 74 69 6f 6e 20 79  | this function y|
000015a0  6f 75 20 63 61 6e 20 6d  61 6b 65 20 73 75 72 65  |ou can make sure|
000015b0  20 61 20 77 69 72 65 20  77 6f 6e 27 74 20 67 6f  | a wire won't go|
000015c0  20 74 68 72 6f 75 67 68  20 61 6e 6f 74 68 65 72  | through another|
000015d0  20 6f 62 6a 65 63 74 20  28 74 68 69 73 20 64 6f  | object (this do|
000015e0  65 73 6e 27 74 20 72 65  61 6c 6c 79 20 6d 61 74  |esn't really mat|
000015f0  74 65 72 2c 20 62 75 74  20 69 74 20 6c 6f 6f 6b  |ter, but it look|
00001600  73 20 61 20 62 69 74 20  6d 65 73 73 79 29 2e 20  |s a bit messy). |
00001610  49 66 20 79 6f 75 20 73  74 69 6c 6c 20 63 61 6e  |If you still can|
00001620  27 74 20 67 65 74 20 61  20 74 69 64 79 20 77 69  |'t get a tidy wi|
00001630  72 65 20 70 61 74 68 2c  20 6a 75 73 74 20 6d 6f  |re path, just mo|
00001640  76 65 20 74 68 65 20 6f  62 6a 65 63 74 73 20 61  |ve the objects a|
00001650  20 6c 69 74 74 6c 65 20  62 69 74 20 66 75 72 74  | little bit furt|
00001660  68 65 72 20 61 70 61 72  74 2e 0a 20 20 20 20 20  |her apart..     |
00001670  20 20 0a 34 2e 39 2e 20  44 65 6c 65 74 69 6e 67  |  .4.9. Deleting|
00001680  20 63 6f 6e 6e 65 63 74  69 6f 6e 73 2e 0a 0a 49  | connections...I|
00001690  66 20 79 6f 75 20 77 61  6e 74 20 74 6f 20 64 65  |f you want to de|
000016a0  6c 65 74 65 20 6f 6e 65  20 6f 72 20 6d 6f 72 65  |lete one or more|
000016b0  20 63 6f 6e 6e 65 63 74  69 6f 6e 73 20 79 6f 75  | connections you|
000016c0  20 68 61 76 65 20 74 6f  20 75 73 65 20 74 68 65  | have to use the|
000016d0  20 27 64 65 6c 65 74 65  20 69 6e 70 75 74 73 27  | 'delete inputs'|
000016e0  20 69 63 6f 6e 20 69 6e  20 74 68 65 20 74 6f 6f  | icon in the too|
000016f0  6c 62 6f 78 20 77 69 6e  64 6f 77 2c 20 6f 72 20  |lbox window, or |
00001700  63 68 6f 6f 73 65 20 74  68 69 73 20 6d 65 6e 75  |choose this menu|
00001710  20 65 6e 74 72 79 20 66  72 6f 6d 20 74 68 65 20  | entry from the |
00001720  65 64 69 74 20 77 69 6e  64 6f 77 2e 20 54 68 65  |edit window. The|
00001730  20 27 64 65 6c 65 74 65  20 69 6e 70 75 74 73 27  | 'delete inputs'|
00001740  20 66 75 6e 63 74 69 6f  6e 20 64 65 6c 65 74 65  | function delete|
00001750  73 20 74 68 65 20 77 69  72 65 73 20 63 6f 6e 6e  |s the wires conn|
00001760  65 63 74 65 64 20 74 6f  20 74 68 65 20 69 6e 70  |ected to the inp|
00001770  75 74 73 20 6f 66 20 74  68 65 20 73 65 6c 65 63  |uts of the selec|
00001780  74 65 64 20 6f 62 6a 65  63 74 73 2e 20 46 6f 72  |ted objects. For|
00001790  20 74 77 6f 2d 69 6e 70  75 74 20 6f 62 6a 65 63  | two-input objec|
000017a0  74 73 2c 20 62 6f 74 68  20 63 6f 6e 6e 65 63 74  |ts, both connect|
000017b0  69 6f 6e 73 20 61 72 65  20 64 65 6c 65 74 65 64  |ions are deleted|
000017c0  2e 20 49 66 20 79 6f 75  20 6a 75 73 74 20 77 61  |. If you just wa|
000017d0  6e 74 20 74 6f 20 64 65  6c 65 74 65 20 6f 6e 65  |nt to delete one|
000017e0  20 6f 66 20 74 68 65 6d  2c 20 64 65 6c 65 74 65  | of them, delete|
000017f0  20 62 6f 74 68 20 63 6f  6e 6e 65 63 74 69 6f 6e  | both connection|
00001800  73 20 61 6e 64 20 72 65  63 6f 6e 6e 65 63 74 20  |s and reconnect |
00001810  74 68 65 20 6f 6e 65 20  79 6f 75 20 64 69 64 6e  |the one you didn|
00001820  27 74 20 77 61 6e 74 20  74 6f 20 64 65 6c 65 74  |'t want to delet|
00001830  65 2e 0a 0a 0a 34 2e 31  30 2e 20 43 61 6c 63 75  |e....4.10. Calcu|
00001840  6c 61 74 69 6f 6e 2e 0a  0a 54 68 69 73 20 63 68  |lation...This ch|
00001850  61 70 74 65 72 20 70 72  6f 62 61 62 6c 79 20 69  |apter probably i|
00001860  73 20 74 68 65 20 6d 6f  73 74 20 64 69 66 66 69  |s the most diffi|
00001870  63 75 6c 74 20 6f 6e 65  20 74 6f 20 75 6e 64 65  |cult one to unde|
00001880  72 73 74 61 6e 64 2e 20  54 68 65 72 65 66 6f 72  |rstand. Therefor|
00001890  65 20 72 65 61 64 20 74  68 72 6f 75 67 68 20 69  |e read through i|
000018a0  74 20 76 65 72 79 20 63  61 72 65 66 75 6c 6c 79  |t very carefully|
000018b0  20 61 6e 64 20 6d 61 6b  65 20 73 75 72 65 20 74  | and make sure t|
000018c0  68 61 74 20 79 6f 75 20  65 78 61 6d 69 6e 65 20  |hat you examine |
000018d0  74 68 65 20 65 78 61 6d  70 6c 65 20 73 68 65 65  |the example shee|
000018e0  74 73 20 69 66 20 79 6f  75 20 64 6f 6e 27 74 20  |ts if you don't |
000018f0  67 65 74 20 69 74 20 69  6d 6d 65 64 69 61 74 65  |get it immediate|
00001900  6c 79 2e 20 54 68 65 20  6d 6f 73 74 20 69 6d 70  |ly. The most imp|
00001910  6f 72 74 61 6e 74 20 74  68 69 6e 67 20 61 62 6f  |ortant thing abo|
00001920  75 74 20 74 68 69 73 20  70 61 63 6b 61 67 65 20  |ut this package |
00001930  69 73 20 6c 65 61 72 6e  69 6e 67 28 21 29 2c 20  |is learning(!), |
00001940  73 6f 20 64 6f 6e 27 74  20 62 65 20 64 69 73 61  |so don't be disa|
00001950  70 70 6f 69 6e 74 65 64  20 69 66 20 79 6f 75 20  |ppointed if you |
00001960  64 6f 6e 27 74 20 67 65  74 20 74 68 65 20 72 69  |don't get the ri|
00001970  67 68 74 20 73 6f 75 6e  64 20 61 74 20 74 68 65  |ght sound at the|
00001980  20 66 69 72 73 74 20 61  74 74 65 6d 70 74 2e 0a  | first attempt..|
00001990  0a 54 68 65 20 63 68 61  70 74 65 72 20 27 64 69  |.The chapter 'di|
000019a0  67 69 74 61 6c 20 73 6f  75 6e 64 27 20 65 78 70  |gital sound' exp|
000019b0  6c 61 69 6e 65 64 20 68  6f 77 20 61 20 73 61 6d  |lained how a sam|
000019c0  70 6c 65 20 69 73 20 73  74 6f 72 65 64 20 69 6e  |ple is stored in|
000019d0  20 6f 75 72 20 63 6f 6d  70 75 74 65 72 2e 20 53  | our computer. S|
000019e0  6f 20 69 66 20 77 65 20  77 61 6e 74 20 74 6f 20  |o if we want to |
000019f0  63 72 65 61 74 65 20 61  20 73 61 6d 70 6c 65 2c  |create a sample,|
00001a00  20 77 65 20 6d 75 73 74  20 63 72 65 61 74 65 20  | we must create |
00001a10  61 20 73 65 72 69 65 73  20 6f 66 20 76 61 6c 75  |a series of valu|
00001a20  65 73 20 28 73 61 6d 70  6c 65 73 29 2e 20 46 69  |es (samples). Fi|
00001a30  72 73 74 20 77 65 20 6d  75 73 74 20 64 65 74 65  |rst we must dete|
00001a40  72 6d 69 6e 65 20 74 68  65 20 6c 65 6e 67 74 68  |rmine the length|
00001a50  20 6f 66 20 74 68 65 20  73 61 6d 70 6c 65 2c 20  | of the sample, |
00001a60  6f 72 20 74 68 65 20 6e  75 6d 62 65 72 20 6f 66  |or the number of|
00001a70  20 76 61 6c 75 65 73 20  74 6f 20 62 65 20 63 61  | values to be ca|
00001a80  6c 63 75 6c 61 74 65 64  2e 20 54 68 69 73 20 76  |lculated. This v|
00001a90  61 6c 75 65 20 63 61 6e  20 62 65 20 73 65 74 20  |alue can be set |
00001aa0  69 6e 20 74 68 65 20 27  53 74 61 74 73 27 20 77  |in the 'Stats' w|
00001ab0  69 6e 64 6f 77 2e 20 4c  65 74 27 73 20 61 73 73  |indow. Let's ass|
00001ac0  75 6d 65 20 77 65 20 73  65 74 20 74 68 69 73 20  |ume we set this |
00001ad0  76 61 6c 75 65 20 74 6f  20 36 34 2e 20 54 68 69  |value to 64. Thi|
00001ae0  73 20 6d 65 61 6e 73 20  74 68 61 74 20 21 53 46  |s means that !SF|
00001af0  58 4d 20 77 69 6c 6c 20  63 61 6c 63 75 6c 61 74  |XM will calculat|
00001b00  65 20 36 34 20 76 61 6c  75 65 73 2e 20 49 74 20  |e 64 values. It |
00001b10  62 65 67 69 6e 73 20 63  61 6c 63 75 6c 61 74 69  |begins calculati|
00001b20  6e 67 20 74 68 65 20 66  69 72 73 74 20 6f 6e 65  |ng the first one|
00001b30  2c 20 74 68 65 6e 20 74  68 65 20 73 65 63 6f 6e  |, then the secon|
00001b40  64 20 6f 6e 65 20 65 74  63 2e 20 75 6e 74 69 6c  |d one etc. until|
00001b50  20 69 74 20 68 61 73 20  63 61 6c 63 75 6c 61 74  | it has calculat|
00001b60  65 64 20 61 6c 6c 20 36  34 20 76 61 6c 75 65 73  |ed all 64 values|
00001b70  2e 20 41 66 74 65 72 20  65 76 65 72 79 20 63 61  |. After every ca|
00001b80  6c 63 75 6c 61 74 65 64  20 76 61 6c 75 65 2c 20  |lculated value, |
00001b90  74 68 65 20 76 61 6c 75  65 20 69 73 20 70 61 73  |the value is pas|
00001ba0  73 65 64 20 6f 6e 20 74  6f 20 21 53 46 58 45 44  |sed on to !SFXED|
00001bb0  2c 20 77 68 69 63 68 20  70 6c 61 63 65 73 20 74  |, which places t|
00001bc0  68 69 73 20 76 61 6c 75  65 20 61 66 74 65 72 20  |his value after |
00001bd0  74 68 65 20 70 72 65 76  69 6f 75 73 20 63 61 6c  |the previous cal|
00001be0  63 75 6c 61 74 65 64 20  6f 6e 65 2e 20 57 68 65  |culated one. Whe|
00001bf0  6e 20 74 68 65 20 63 61  6c 63 75 6c 61 74 69 6f  |n the calculatio|
00001c00  6e 20 69 73 20 66 69 6e  69 73 68 65 64 20 21 53  |n is finished !S|
00001c10  46 58 45 44 20 77 69 6c  6c 20 73 68 6f 77 20 79  |FXED will show y|
00001c20  6f 75 20 74 68 65 20 66  69 6e 61 6c 20 73 61 6d  |ou the final sam|
00001c30  70 6c 65 2e 20 43 61 6c  63 75 6c 61 74 69 6f 6e  |ple. Calculation|
00001c40  20 63 61 6e 20 62 65 20  73 74 61 72 74 65 64 20  | can be started |
00001c50  62 79 20 63 6c 69 63 6b  69 6e 67 20 6f 6e 20 74  |by clicking on t|
00001c60  68 65 20 27 63 61 6c 63  75 6c 61 74 65 27 20 69  |he 'calculate' i|
00001c70  63 6f 6e 20 69 6e 20 74  68 65 20 74 6f 6f 6c 62  |con in the toolb|
00001c80  6f 78 20 77 69 6e 64 6f  77 2c 20 6f 72 20 62 79  |ox window, or by|
00001c90  20 63 68 6f 6f 73 69 6e  67 20 74 68 65 20 6d 65  | choosing the me|
00001ca0  6e 75 20 65 6e 74 72 79  20 69 6e 20 74 68 65 20  |nu entry in the |
00001cb0  65 64 69 74 20 6d 65 6e  75 2e 0a 0a 0a 34 2e 31  |edit menu....4.1|
00001cc0  31 2e 20 44 65 73 63 72  69 70 74 69 6f 6e 20 6f  |1. Description o|
00001cd0  66 20 74 68 65 20 6f 62  6a 65 63 74 73 2e 0a 0a  |f the objects...|
00001ce0  0a 4f 75 74 70 75 74 0a  20 0a 57 65 20 67 65 74  |.Output. .We get|
00001cf0  20 74 68 65 20 63 61 6c  63 75 6c 61 74 65 64 20  | the calculated |
00001d00  76 61 6c 75 65 73 20 73  65 6e 74 20 74 6f 20 21  |values sent to !|
00001d10  53 46 58 45 44 20 62 79  20 75 73 69 6e 67 20 74  |SFXED by using t|
00001d20  68 65 20 6f 75 74 70 75  74 20 6f 62 6a 65 63 74  |he output object|
00001d30  2e 20 45 76 65 72 79 20  76 61 6c 75 65 20 77 68  |. Every value wh|
00001d40  69 63 68 20 67 6f 65 73  20 69 6e 20 74 6f 20 74  |ich goes in to t|
00001d50  68 69 73 20 6f 62 6a 65  63 74 20 69 73 20 70 61  |his object is pa|
00001d60  73 73 65 64 20 74 6f 20  21 53 46 58 45 44 2e 20  |ssed to !SFXED. |
00001d70  53 6f 20 69 66 20 77 65  20 77 61 6e 74 20 74 6f  |So if we want to|
00001d80  20 6d 61 6b 65 2c 20 66  6f 72 20 65 78 61 6d 70  | make, for examp|
00001d90  6c 65 2c 20 61 20 73 69  6e 65 20 77 61 76 65 2c  |le, a sine wave,|
00001da0  20 77 65 20 68 61 76 65  20 74 6f 20 67 65 74 20  | we have to get |
00001db0  74 68 65 20 73 69 6e 65  20 77 61 76 65 20 76 61  |the sine wave va|
00001dc0  6c 75 65 73 20 28 73 65  65 20 66 69 67 75 72 65  |lues (see figure|
00001dd0  20 36 29 20 6f 6e 65 20  61 66 74 65 72 20 61 6e  | 6) one after an|
00001de0  6f 74 68 65 72 20 69 6e  74 6f 20 74 68 65 20 6f  |other into the o|
00001df0  75 74 70 75 74 20 6f 62  6a 65 63 74 2e 20 46 69  |utput object. Fi|
00001e00  67 75 72 65 20 39 20 73  68 6f 77 73 20 74 68 65  |gure 9 shows the|
00001e10  20 72 61 6e 67 65 20 6f  66 20 76 61 6c 75 65 73  | range of values|
00001e20  20 77 68 69 63 68 20 74  68 65 20 6f 75 74 70 75  | which the outpu|
00001e30  74 20 6f 62 6a 65 63 74  20 61 63 63 65 70 74 73  |t object accepts|
00001e40  2e 0a 0a 66 69 67 75 72  65 20 39 2e 20 6f 75 74  |...figure 9. out|
00001e50  70 75 74 20 76 61 6c 75  65 20 72 61 6e 67 65 2e  |put value range.|
00001e60  0a 0a 54 68 65 20 6d 61  78 69 6d 75 6d 20 76 61  |..The maximum va|
00001e70  6c 75 65 20 77 68 69 63  68 20 6d 61 79 20 67 6f  |lue which may go|
00001e80  20 69 6e 74 6f 20 74 68  65 20 6f 75 74 70 75 74  | into the output|
00001e90  20 6f 62 6a 65 63 74 20  69 73 20 27 2b 31 27 20  | object is '+1' |
00001ea0  61 6e 64 20 74 68 65 20  6d 69 6e 69 6d 75 6d 20  |and the minimum |
00001eb0  76 61 6c 75 65 20 69 73  20 20 27 2d 31 27 2e 20  |value is  '-1'. |
00001ec0  49 66 20 61 20 76 61 6c  75 65 20 6f 75 74 73 69  |If a value outsi|
00001ed0  64 65 20 74 68 69 73 20  72 61 6e 67 65 20 69 73  |de this range is|
00001ee0  20 70 75 74 20 69 6e 74  6f 20 74 68 69 73 20 6f  | put into this o|
00001ef0  62 6a 65 63 74 20 74 68  65 6e 20 74 68 65 20 76  |bject then the v|
00001f00  61 6c 75 65 20 77 69 6c  6c 20 62 65 20 27 63 6c  |alue will be 'cl|
00001f10  69 70 70 65 64 27 2e 20  46 6f 72 20 65 78 61 6d  |ipped'. For exam|
00001f20  70 6c 65 2c 20 61 20 76  61 6c 75 65 20 6f 66 20  |ple, a value of |
00001f30  31 32 33 34 20 77 69 6c  6c 20 62 65 20 63 6c 69  |1234 will be cli|
00001f40  70 70 65 64 20 74 6f 20  2b 31 2c 20 77 68 65 72  |pped to +1, wher|
00001f50  65 61 73 20 61 20 76 61  6c 75 65 20 6f 66 20 2d  |eas a value of -|
00001f60  31 30 30 30 30 20 77 69  6c 6c 20 62 65 20 63 6c  |10000 will be cl|
00001f70  69 70 70 65 64 20 74 6f  20 2d 31 2e 0a 0a 0a 43  |ipped to -1....C|
00001f80  6f 6e 73 74 61 6e 74 20  47 65 6e 65 72 61 74 6f  |onstant Generato|
00001f90  72 0a 0a 54 68 65 20 63  6f 6e 73 74 61 6e 74 20  |r..The constant |
00001fa0  67 65 6e 65 72 61 74 6f  72 20 69 73 20 75 73 65  |generator is use|
00001fb0  64 20 66 6f 72 20 67 65  6e 65 72 61 74 69 6e 67  |d for generating|
00001fc0  20 63 6f 6e 73 74 61 6e  74 73 2e 20 54 68 65 20  | constants. The |
00001fd0  76 61 6c 75 65 20 69 74  20 77 69 6c 6c 20 70 72  |value it will pr|
00001fe0  6f 64 75 63 65 20 69 73  20 64 65 74 65 72 6d 69  |oduce is determi|
00001ff0  6e 65 64 20 62 79 20 69  74 73 20 63 6f 6e 74 65  |ned by its conte|
00002000  6e 74 73 2e 20 59 6f 75  20 63 61 6e 20 61 6c 74  |nts. You can alt|
00002010  65 72 20 74 68 69 73 20  63 6f 6e 73 74 61 6e 74  |er this constant|
00002020  20 62 79 20 70 72 65 73  73 69 6e 67 20 74 68 65  | by pressing the|
00002030  20 61 64 6a 75 73 74 20  62 75 74 74 6f 6e 20 6f  | adjust button o|
00002040  76 65 72 20 74 68 69 73  20 6f 62 6a 65 63 74 20  |ver this object |
00002050  6f 6e 20 74 68 65 20 73  68 65 65 74 20 28 73 65  |on the sheet (se|
00002060  65 20 73 65 63 74 69 6f  6e 20 27 45 64 69 74 69  |e section 'Editi|
00002070  6e 67 20 74 68 65 20 63  6f 6e 74 65 6e 74 73 20  |ng the contents |
00002080  6f 66 20 61 6e 20 6f 62  6a 65 63 74 27 29 2e 20  |of an object'). |
00002090  4e 6f 77 20 61 20 77 69  6e 64 6f 77 20 6c 69 6b  |Now a window lik|
000020a0  65 20 69 6e 20 66 69 67  75 72 65 20 31 30 20 61  |e in figure 10 a|
000020b0  70 70 65 61 72 73 2e 0a  0a 66 69 67 75 72 65 20  |ppears...figure |
000020c0  31 30 2e 20 74 68 65 20  63 6f 6e 73 74 61 6e 74  |10. the constant|
000020d0  20 67 65 6e 65 72 61 74  6f 72 20 77 69 6e 64 6f  | generator windo|
000020e0  77 2e 0a 0a 59 6f 75 20  63 61 6e 20 65 6e 74 65  |w...You can ente|
000020f0  72 20 74 68 65 20 76 61  6c 75 65 20 61 74 20 74  |r the value at t|
00002100  68 65 20 63 61 72 65 74  20 70 6f 73 69 74 69 6f  |he caret positio|
00002110  6e 2e 20 43 6c 69 63 6b  20 6f 6e 20 74 68 65 20  |n. Click on the |
00002120  27 4f 4b 27 20 69 63 6f  6e 20 74 6f 20 61 63 63  |'OK' icon to acc|
00002130  65 70 74 20 69 74 2e 20  28 6e 6f 74 65 3a 20 74  |ept it. (note: t|
00002140  68 65 20 73 65 63 6f 6e  64 20 74 69 6d 65 20 79  |he second time y|
00002150  6f 75 20 6f 70 65 6e 20  74 68 69 73 20 77 69 6e  |ou open this win|
00002160  64 6f 77 2c 20 74 68 65  20 76 61 6c 75 65 20 69  |dow, the value i|
00002170  6e 73 69 64 65 20 69 74  20 6d 61 79 20 6e 6f 74  |nside it may not|
00002180  20 62 65 20 74 68 65 20  73 61 6d 65 20 62 65 63  | be the same bec|
00002190  61 75 73 65 20 6f 66 20  69 6e 74 65 72 6e 61 6c  |ause of internal|
000021a0  20 72 6f 75 6e 64 69 6e  67 2c 20 62 75 74 20 74  | rounding, but t|
000021b0  68 65 20 65 72 72 6f 72  20 73 68 6f 75 6c 64 20  |he error should |
000021c0  6e 6f 74 20 62 65 20 73  69 67 6e 69 66 69 63 61  |not be significa|
000021d0  6e 74 29 20 20 20 20 20  20 20 0a 0a 53 6f 20 68  |nt)       ..So h|
000021e0  61 76 69 6e 67 20 64 65  73 63 72 69 62 65 64 20  |aving described |
000021f0  74 68 65 20 6f 75 74 70  75 74 20 61 6e 64 20 74  |the output and t|
00002200  68 65 20 63 6f 6e 73 74  61 6e 74 20 67 65 6e 65  |he constant gene|
00002210  72 61 74 6f 72 20 6f 62  6a 65 63 74 2c 20 77 65  |rator object, we|
00002220  20 6e 6f 77 20 61 72 65  20 72 65 61 64 79 20 74  | now are ready t|
00002230  6f 20 6d 61 6b 65 20 61  20 73 61 6d 70 6c 65 21  |o make a sample!|
00002240  20 4e 61 6d 65 6c 79 20  61 20 73 61 6d 70 6c 65  | Namely a sample|
00002250  20 77 68 69 63 68 20 65  6e 74 69 72 65 6c 79 20  | which entirely |
00002260  63 6f 6e 73 69 73 74 20  6f 66 20 63 6f 6e 73 74  |consist of const|
00002270  61 6e 74 73 2e 20 4c 6f  61 64 20 74 68 65 20 65  |ants. Load the e|
00002280  78 61 6d 70 6c 65 20 73  68 65 65 74 20 31 20 61  |xample sheet 1 a|
00002290  6e 64 20 6d 61 6b 65 20  73 75 72 65 20 79 6f 75  |nd make sure you|
000022a0  20 66 75 6c 6c 79 20 75  6e 64 65 72 73 74 61 6e  | fully understan|
000022b0  64 20 69 74 2e 20 54 72  79 20 61 6c 74 65 72 69  |d it. Try alteri|
000022c0  6e 67 20 74 68 65 20 63  6f 6e 73 74 61 6e 74 20  |ng the constant |
000022d0  76 61 6c 75 65 20 74 6f  20 66 6f 72 20 65 78 61  |value to for exa|
000022e0  6d 70 6c 65 20 31 2c 20  30 2c 20 20 20 20 2d 30  |mple 1, 0,    -0|
000022f0  2e 35 2c 20 31 32 33 20  61 6e 64 20 2d 31 30 30  |.5, 123 and -100|
00002300  20 28 64 6f 6e 27 74 20  66 6f 72 67 65 74 20 74  | (don't forget t|
00002310  6f 20 63 61 6c 63 75 6c  61 74 65 20 65 61 63 68  |o calculate each|
00002320  20 74 69 6d 65 29 2e 20  4e 6f 74 69 63 65 20 74  | time). Notice t|
00002330  68 61 74 20 74 68 65 20  76 61 6c 75 65 73 20 6f  |hat the values o|
00002340  66 20 31 32 33 20 61 6e  64 20 20 20 20 20 20 2d  |f 123 and      -|
00002350  31 30 30 20 61 72 65 20  63 6c 69 70 70 65 64 20  |100 are clipped |
00002360  28 63 68 61 6e 67 65 64  20 74 6f 20 31 20 61 6e  |(changed to 1 an|
00002370  64 20 2d 31 29 3f 0a 0a  0a 41 64 64 65 72 0a 0a  |d -1)?...Adder..|
00002380  57 69 74 68 20 21 53 46  58 4d 20 77 65 20 63 61  |With !SFXM we ca|
00002390  6e 20 61 6c 73 6f 20 64  6f 20 73 6f 6d 65 20 61  |n also do some a|
000023a0  72 69 74 68 6d 65 74 69  63 2e 20 54 68 65 20 61  |rithmetic. The a|
000023b0  64 64 65 72 20 6f 62 6a  65 63 74 20 77 69 6c 6c  |dder object will|
000023c0  20 61 64 64 20 74 77 6f  20 76 61 6c 75 65 73 20  | add two values |
000023d0  74 6f 67 65 74 68 65 72  2e 20 54 68 65 73 65 20  |together. These |
000023e0  76 61 6c 75 65 73 20 6d  75 73 74 20 62 65 20 6f  |values must be o|
000023f0  66 66 65 72 65 64 20 6f  6e 20 69 74 27 73 20 69  |ffered on it's i|
00002400  6e 70 75 74 73 2e 20 54  68 65 20 61 64 64 65 64  |nputs. The added|
00002410  20 72 65 73 75 6c 74 20  77 69 6c 6c 20 62 65 20  | result will be |
00002420  70 72 65 73 65 6e 74 20  61 74 20 69 74 27 73 20  |present at it's |
00002430  6f 75 74 70 75 74 2e 20  4c 6f 61 64 20 65 78 61  |output. Load exa|
00002440  6d 70 6c 65 20 73 68 65  65 74 20 32 20 61 6e 64  |mple sheet 2 and|
00002450  20 61 6c 74 65 72 20 74  68 65 20 74 77 6f 20 63  | alter the two c|
00002460  6f 6e 73 74 61 6e 74 73  20 74 6f 20 73 65 65 20  |onstants to see |
00002470  68 6f 77 20 69 74 20 77  6f 72 6b 73 2e 20 54 72  |how it works. Tr|
00002480  79 20 61 64 64 69 6e 67  20 31 20 61 6e 64 20 2d  |y adding 1 and -|
00002490  30 2e 35 20 74 6f 67 65  74 68 65 72 20 28 3d 30  |0.5 together (=0|
000024a0  2e 35 29 2e 0a 0a 20 20  20 20 20 20 20 20 20 20  |.5)...          |
000024b0  20 20 20 20 20 20 20 20  20 20 20 0a 53 75 62 74  |           .Subt|
000024c0  72 61 63 74 6f 72 0a 20  20 20 20 20 20 20 20 20  |ractor.         |
000024d0  20 0a 54 68 65 20 73 75  62 74 72 61 63 74 6f 72  | .The subtractor|
000024e0  20 6f 62 6a 65 63 74 20  73 75 62 74 72 61 63 74  | object subtract|
000024f0  73 20 74 68 65 20 76 61  6c 75 65 20 61 74 20 74  |s the value at t|
00002500  68 65 20 52 45 44 20 69  6e 70 75 74 20 66 72 6f  |he RED input fro|
00002510  6d 20 74 68 65 20 76 61  6c 75 65 20 61 74 20 74  |m the value at t|
00002520  68 65 20 42 4c 41 43 4b  20 69 6e 70 75 74 20 61  |he BLACK input a|
00002530  6e 64 20 6f 75 74 70 75  74 73 20 74 68 65 20 72  |nd outputs the r|
00002540  65 73 75 6c 74 2e 20 49  66 20 79 6f 75 20 77 61  |esult. If you wa|
00002550  6e 74 20 74 6f 20 75 6e  64 65 72 73 74 61 6e 64  |nt to understand|
00002560  20 74 68 69 73 20 62 65  74 74 65 72 2c 20 74 72  | this better, tr|
00002570  79 20 63 68 61 6e 67 69  6e 67 20 74 68 65 20 61  |y changing the a|
00002580  64 64 65 72 20 66 72 6f  6d 20 65 78 61 6d 70 6c  |dder from exampl|
00002590  65 20 73 68 65 65 74 20  32 20 74 6f 20 61 20 73  |e sheet 2 to a s|
000025a0  75 62 74 72 61 63 74 6f  72 2e 20 44 6f 6e 27 74  |ubtractor. Don't|
000025b0  20 66 6f 72 67 65 74 20  74 6f 20 63 6f 6e 6e 65  | forget to conne|
000025c0  63 74 20 69 74 20 70 72  6f 70 65 72 6c 79 20 74  |ct it properly t|
000025d0  6f 20 74 68 65 20 63 6f  6e 73 74 61 6e 74 73 20  |o the constants |
000025e0  61 6e 64 20 74 68 65 20  6f 75 74 70 75 74 2e 20  |and the output. |
000025f0  4e 6f 77 20 74 72 79 20  66 6f 72 20 65 78 61 6d  |Now try for exam|
00002600  70 6c 65 20 74 6f 20 73  75 62 74 72 61 63 74 20  |ple to subtract |
00002610  31 2e 35 20 66 72 6f 6d  20 32 20 28 3d 30 2e 35  |1.5 from 2 (=0.5|
00002620  29 2c 20 6f 72 20 2d 30  2e 35 20 66 72 6f 6d 20  |), or -0.5 from |
00002630  30 2e 32 35 20 28 3d 30  2e 37 35 29 2e 0a 0a 20  |0.25 (=0.75)... |
00002640  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002650  20 20 20 0a 4d 75 6c 74  69 70 6c 69 65 72 0a 0a  |   .Multiplier..|
00002660  54 68 69 73 20 6f 62 6a  65 63 74 20 6d 75 6c 74  |This object mult|
00002670  69 70 6c 69 65 73 20 74  68 65 20 76 61 6c 75 65  |iplies the value|
00002680  73 20 61 74 20 74 68 65  20 69 6e 70 75 74 73 20  |s at the inputs |
00002690  61 6e 64 20 6f 75 74 70  75 74 73 20 74 68 65 20  |and outputs the |
000026a0  72 65 73 75 6c 74 2e 20  43 68 61 6e 67 65 20 74  |result. Change t|
000026b0  68 65 20 61 64 64 65 72  20 66 72 6f 6d 20 65 78  |he adder from ex|
000026c0  61 6d 70 6c 65 20 73 68  65 65 74 20 32 20 74 6f  |ample sheet 2 to|
000026d0  20 61 20 6d 75 6c 74 69  70 6c 69 65 72 20 61 6e  | a multiplier an|
000026e0  64 20 73 65 65 20 68 6f  77 20 69 74 20 77 6f 72  |d see how it wor|
000026f0  6b 73 2e 0a 0a 0a 43 6f  6e 73 74 61 6e 74 20 4d  |ks....Constant M|
00002700  75 6c 74 69 70 6c 69 65  72 20 0a 0a 4f 66 74 65  |ultiplier ..Ofte|
00002710  6e 20 79 6f 75 20 77 61  6e 74 20 74 6f 20 6d 75  |n you want to mu|
00002720  6c 74 69 70 6c 79 20 61  20 73 69 67 6e 61 6c 20  |ltiply a signal |
00002730  62 79 20 61 20 63 6f 6e  73 74 61 6e 74 20 66 61  |by a constant fa|
00002740  63 74 6f 72 2e 20 54 68  69 73 20 63 61 6e 20 62  |ctor. This can b|
00002750  65 20 64 6f 6e 65 20 6f  66 20 63 6f 75 72 73 65  |e done of course|
00002760  20 62 79 20 61 20 6d 75  6c 74 69 70 6c 69 65 72  | by a multiplier|
00002770  20 6f 62 6a 65 63 74 2c  20 62 75 74 20 74 68 65  | object, but the|
00002780  6e 20 79 6f 75 20 61 6c  73 6f 20 6e 65 65 64 20  |n you also need |
00002790  61 20 63 6f 6e 73 74 61  6e 74 20 67 65 6e 65 72  |a constant gener|
000027a0  61 74 6f 72 2e 20 54 68  69 73 20 6f 62 6a 65 63  |ator. This objec|
000027b0  74 20 77 69 6c 6c 20 73  70 61 72 65 20 79 6f 75  |t will spare you|
000027c0  20 74 68 65 20 63 6f 6e  73 74 61 6e 74 20 67 65  | the constant ge|
000027d0  6e 65 72 61 74 6f 72 2c  20 62 65 63 61 75 73 65  |nerator, because|
000027e0  20 74 68 65 20 63 6f 6e  73 74 61 6e 74 20 69 73  | the constant is|
000027f0  20 68 65 6c 64 20 69 6e  73 69 64 65 20 69 74 2e  | held inside it.|
00002800  20 54 68 65 20 63 6f 6e  73 74 61 6e 74 20 6d 75  | The constant mu|
00002810  6c 74 69 70 6c 69 65 72  20 77 69 6c 6c 20 6d 75  |ltiplier will mu|
00002820  6c 74 69 70 6c 79 20 74  68 65 20 69 6e 70 75 74  |ltiply the input|
00002830  20 76 61 6c 75 65 20 77  69 74 68 20 74 68 69 73  | value with this|
00002840  20 63 6f 6e 73 74 61 6e  74 20 61 6e 64 20 77 69  | constant and wi|
00002850  6c 6c 20 6f 75 74 70 75  74 20 74 68 65 20 72 65  |ll output the re|
00002860  73 75 6c 74 2e 20 54 68  69 73 20 76 61 6c 75 65  |sult. This value|
00002870  20 63 61 6e 20 6f 66 20  63 6f 75 72 73 65 20 62  | can of course b|
00002880  65 20 61 6c 74 65 72 65  64 2e 20 54 6f 20 64 6f  |e altered. To do|
00002890  20 74 68 69 73 20 70 6f  70 20 75 70 20 74 68 65  | this pop up the|
000028a0  20 77 69 6e 64 6f 77 20  6c 69 6b 65 20 69 6e 20  | window like in |
000028b0  66 69 67 75 72 65 20 31  31 2e 0a 66 69 67 75 72  |figure 11..figur|
000028c0  65 20 31 31 2e 20 74 68  65 20 63 6f 6e 73 74 61  |e 11. the consta|
000028d0  6e 74 20 6d 75 6c 74 69  70 6c 69 65 72 20 77 69  |nt multiplier wi|
000028e0  6e 64 6f 77 2e 0a 0a 54  68 65 20 65 6c 65 76 65  |ndow...The eleve|
000028f0  6e 20 69 63 6f 6e 73 20  6e 75 6d 62 65 72 65 64  |n icons numbered|
00002900  20 31 20 74 6f 20 31 31  20 72 65 70 72 65 73 65  | 1 to 11 represe|
00002910  6e 74 20 74 68 65 20 72  65 6c 61 74 69 76 65 20  |nt the relative |
00002920  64 69 73 74 61 6e 63 65  20 62 65 74 77 65 65 6e  |distance between|
00002930  20 74 77 6f 20 6e 6f 74  65 73 2e 20 54 68 65 73  | two notes. Thes|
00002940  65 20 63 61 6e 20 62 65  20 75 73 65 73 20 74 6f  |e can be uses to|
00002950  20 6d 61 6b 65 20 63 68  6f 72 64 73 2e 20 4d 6f  | make chords. Mo|
00002960  72 65 20 6f 66 20 74 68  69 73 20 6c 61 74 65 72  |re of this later|
00002970  20 6f 6e 2e 20 4c 6f 61  64 20 65 78 61 6d 70 6c  | on. Load exampl|
00002980  65 20 73 68 65 65 74 20  33 20 74 6f 20 73 65 65  |e sheet 3 to see|
00002990  20 68 6f 77 20 74 68 69  73 20 6f 62 6a 65 63 74  | how this object|
000029a0  20 77 6f 72 6b 73 2e 0a  0a 20 20 20 20 20 20 20  | works...       |
000029b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000029c0  20 20 20 20 20 20 20 20  20 20 20 0a 45 6e 76 65  |           .Enve|
000029d0  6c 6f 70 65 20 47 65 6e  65 72 61 74 6f 72 20 20  |lope Generator  |
000029e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000029f0  20 20 20 0a 0a 54 68 65  20 63 6f 6e 73 74 61 6e  |   ..The constan|
00002a00  74 20 67 65 6e 65 72 61  74 6f 72 20 64 65 73 63  |t generator desc|
00002a10  72 69 62 65 64 20 65 61  72 6c 69 65 72 20 69 73  |ribed earlier is|
00002a20  20 61 20 67 65 6e 65 72  61 74 6f 72 20 77 68 69  | a generator whi|
00002a30  63 68 20 67 65 6e 65 72  61 74 65 73 20 6f 6e 6c  |ch generates onl|
00002a40  79 20 6f 6e 65 20 76 61  6c 75 65 2e 20 54 68 65  |y one value. The|
00002a50  20 76 61 6c 75 65 20 69  74 20 70 72 6f 64 75 63  | value it produc|
00002a60  65 73 20 69 73 20 74 68  65 20 73 61 6d 65 20 74  |es is the same t|
00002a70  68 72 6f 75 67 68 6f 75  74 20 74 68 65 20 63 61  |hroughout the ca|
00002a80  6c 63 75 6c 61 74 69 6f  6e 2e 20 54 68 65 20 65  |lculation. The e|
00002a90  6e 76 65 6c 6f 70 65 20  67 65 6e 65 72 61 74 6f  |nvelope generato|
00002aa0  72 20 69 73 20 61 62 6c  65 20 74 6f 20 70 72 6f  |r is able to pro|
00002ab0  64 75 63 65 20 63 68 61  6e 67 69 6e 67 20 76 61  |duce changing va|
00002ac0  6c 75 65 73 2e 20 54 68  65 73 65 20 76 61 6c 75  |lues. These valu|
00002ad0  65 73 20 61 72 65 20 72  65 70 72 65 73 65 6e 74  |es are represent|
00002ae0  65 64 20 67 72 61 70 68  69 63 61 6c 6c 79 20 69  |ed graphically i|
00002af0  6e 20 61 20 77 69 6e 64  6f 77 20 28 73 65 65 20  |n a window (see |
00002b00  20 20 20 20 66 69 67 75  72 65 20 31 32 29 2e 0a  |    figure 12)..|
00002b10  0a 66 69 67 75 72 65 20  31 32 2e 20 61 6e 20 65  |.figure 12. an e|
00002b20  6e 76 65 6c 6f 70 65 20  77 61 76 65 66 6f 72 6d  |nvelope waveform|
00002b30  2e 0a 0a 54 68 69 73 20  77 69 6e 64 6f 77 20 63  |...This window c|
00002b40  61 6e 20 62 65 20 70 6f  70 70 65 64 20 75 70 20  |an be popped up |
00002b50  62 79 20 70 72 65 73 73  69 6e 67 20 74 68 65 20  |by pressing the |
00002b60  61 64 6a 75 73 74 20 6d  6f 75 73 65 20 62 75 74  |adjust mouse but|
00002b70  74 6f 6e 20 6f 76 65 72  20 74 68 65 20 6f 62 6a  |ton over the obj|
00002b80  65 63 74 20 77 68 69 6c  65 20 69 6e 20 73 65 6c  |ect while in sel|
00002b90  65 63 74 20 6d 6f 64 65  2e 20 54 68 65 20 76 65  |ect mode. The ve|
00002ba0  72 74 69 63 61 6c 20 61  78 69 73 20 69 73 20 74  |rtical axis is t|
00002bb0  68 65 20 61 6d 70 6c 69  74 75 64 65 20 61 78 69  |he amplitude axi|
00002bc0  73 2c 20 77 68 69 6c 65  20 74 68 65 20 68 6f 72  |s, while the hor|
00002bd0  69 7a 6f 6e 74 61 6c 20  61 78 69 73 20 69 73 20  |izontal axis is |
00002be0  74 68 65 20 74 69 6d 65  20 61 78 69 73 2e 20 54  |the time axis. T|
00002bf0  68 65 20 62 6f 74 74 6f  6d 20 6f 66 20 74 68 65  |he bottom of the|
00002c00  20 77 69 6e 64 6f 77 20  6d 65 61 6e 73 20 61 20  | window means a |
00002c10  76 61 6c 75 65 20 6f 66  20 30 20 61 6e 64 20 74  |value of 0 and t|
00002c20  68 65 20 74 6f 70 20 6f  66 20 74 68 65 20 77 69  |he top of the wi|
00002c30  6e 64 6f 77 20 6d 65 61  6e 73 20 61 20 76 61 6c  |ndow means a val|
00002c40  75 65 20 6f 66 20 31 2c  20 73 6f 20 74 68 65 20  |ue of 1, so the |
00002c50  45 6e 76 65 6c 6f 70 65  20 47 65 6e 65 72 61 74  |Envelope Generat|
00002c60  6f 72 20 6f 75 74 70 75  74 73 20 76 61 6c 75 65  |or outputs value|
00002c70  73 20 62 65 74 77 65 65  6e 20 30 20 61 6e 64 20  |s between 0 and |
00002c80  31 2e 20 54 68 65 73 65  20 76 61 6c 75 65 73 2c  |1. These values,|
00002c90  20 77 68 69 63 68 20 79  6f 75 20 63 61 6e 20 64  | which you can d|
00002ca0  72 61 77 20 69 6e 74 6f  20 74 68 65 20 77 69 6e  |raw into the win|
00002cb0  64 6f 77 2c 20 61 72 65  20 73 74 72 65 74 63 68  |dow, are stretch|
00002cc0  65 64 20 6f 76 65 72 20  74 68 65 20 65 6e 74 69  |ed over the enti|
00002cd0  72 65 20 73 61 6d 70 6c  65 2c 20 6e 6f 20 6d 61  |re sample, no ma|
00002ce0  74 74 65 72 20 68 6f 77  20 6c 6f 6e 67 20 74 68  |tter how long th|
00002cf0  65 20 61 63 74 75 61 6c  20 73 61 6d 70 6c 65 20  |e actual sample |
00002d00  69 73 2e 20 54 6f 20 6d  61 6b 65 20 74 68 69 6e  |is. To make thin|
00002d10  67 73 20 6d 6f 72 65 20  63 6c 65 61 72 2c 20 6c  |gs more clear, l|
00002d20  6f 61 64 20 65 78 61 6d  70 6c 65 20 73 68 65 65  |oad example shee|
00002d30  74 20 34 20 61 6e 64 20  63 61 6c 63 75 6c 61 74  |t 4 and calculat|
00002d40  65 20 74 68 65 20 73 61  6d 70 6c 65 2e 20 59 6f  |e the sample. Yo|
00002d50  75 20 6e 6f 77 20 73 65  65 20 61 20 77 61 76 65  |u now see a wave|
00002d60  20 6c 69 6b 65 20 66 69  67 75 72 65 20 31 32 2e  | like figure 12.|
00002d70  20 43 68 61 6e 67 65 20  74 68 65 20 73 61 6d 70  | Change the samp|
00002d80  6c 65 20 73 69 7a 65 20  74 6f 20 66 6f 72 20 65  |le size to for e|
00002d90  78 61 6d 70 6c 65 20 31  30 30 30 30 20 61 6e 64  |xample 10000 and|
00002da0  20 63 61 6c 63 75 6c 61  74 65 20 61 67 61 69 6e  | calculate again|
00002db0  2e 20 54 68 65 20 77 61  76 65 20 73 68 6f 75 6c  |. The wave shoul|
00002dc0  64 20 6c 6f 6f 6b 20 74  68 65 20 73 61 6d 65 20  |d look the same |
00002dd0  61 73 20 61 66 74 65 72  20 74 68 65 20 70 72 65  |as after the pre|
00002de0  76 69 6f 75 73 20 63 61  6c 63 75 6c 61 74 69 6f  |vious calculatio|
00002df0  6e 2c 20 62 75 74 20 74  68 65 20 73 61 6d 70 6c  |n, but the sampl|
00002e00  65 20 6e 6f 77 20 69 73  20 6d 75 63 68 20 6c 6f  |e now is much lo|
00002e10  6e 67 65 72 2e 20 53 6f  20 74 68 65 20 65 6e 76  |nger. So the env|
00002e20  65 6c 6f 70 65 20 67 65  6e 65 72 61 74 6f 72 20  |elope generator |
00002e30  67 65 6e 65 72 61 74 65  73 20 61 20 70 72 65 64  |generates a pred|
00002e40  65 66 69 6e 65 64 20 73  69 67 6e 61 6c 20 77 68  |efined signal wh|
00002e50  69 63 68 20 69 73 20 73  74 72 65 74 63 68 65 64  |ich is stretched|
00002e60  20 6f 76 65 72 20 74 68  65 20 65 6e 74 69 72 65  | over the entire|
00002e70  20 73 61 6d 70 6c 65 2e  0a 59 6f 75 20 63 61 6e  | sample..You can|
00002e80  20 63 68 61 6e 67 65 20  74 68 65 20 77 61 76 65  | change the wave|
00002e90  20 6f 66 20 74 68 65 20  65 6e 76 65 6c 6f 70 65  | of the envelope|
00002ea0  20 67 65 6e 65 72 61 74  6f 72 20 62 79 20 64 72  | generator by dr|
00002eb0  61 77 69 6e 67 20 77 69  74 68 20 74 68 65 20 6d  |awing with the m|
00002ec0  6f 75 73 65 2e 20 54 6f  20 64 72 61 77 20 73 69  |ouse. To draw si|
00002ed0  6e 67 6c 65 20 70 6f 69  6e 74 73 2c 20 64 72 61  |ngle points, dra|
00002ee0  77 20 69 6e 20 74 68 65  20 77 69 6e 64 6f 77 20  |w in the window |
00002ef0  77 69 74 68 20 74 68 65  20 73 65 6c 65 63 74 20  |with the select |
00002f00  62 75 74 74 6f 6e 20 64  6f 77 6e 2e 20 54 6f 20  |button down. To |
00002f10  64 72 61 77 20 63 6f 6e  6e 65 63 74 65 64 20 70  |draw connected p|
00002f20  6f 69 6e 74 73 2c 20 64  72 61 77 20 77 69 74 68  |oints, draw with|
00002f30  20 74 68 65 20 61 64 6a  75 73 74 20 62 75 74 74  | the adjust butt|
00002f40  6f 6e 20 64 6f 77 6e 2e  20 49 74 20 69 73 20 61  |on down. It is a|
00002f50  6c 73 6f 20 70 6f 73 73  69 62 6c 65 20 74 6f 20  |lso possible to |
00002f60  64 72 61 77 20 73 74 72  61 69 67 68 74 20 6c 69  |draw straight li|
00002f70  6e 65 73 2e 20 54 6f 20  64 6f 20 74 68 69 73 20  |nes. To do this |
00002f80  66 6f 6c 6c 6f 77 20 74  68 65 73 65 20 69 6e 73  |follow these ins|
00002f90  74 72 75 63 74 69 6f 6e  73 3a 0a 0a 31 2d 20 6d  |tructions:..1- m|
00002fa0  6f 76 65 20 74 68 65 20  6d 6f 75 73 65 70 6f 69  |ove the mousepoi|
00002fb0  6e 74 65 72 20 74 6f 20  74 68 65 20 73 74 61 72  |nter to the star|
00002fc0  74 20 70 6f 69 6e 74 2e  0a 32 2d 20 70 72 65 73  |t point..2- pres|
00002fd0  73 20 61 64 6a 75 73 74  2e 0a 33 2d 20 70 72 65  |s adjust..3- pre|
00002fe0  73 73 20 3c 73 68 69 66  74 3e 2e 0a 34 2d 20 64  |ss <shift>..4- d|
00002ff0  72 61 67 20 74 68 65 20  6d 6f 75 73 65 70 6f 69  |rag the mousepoi|
00003000  6e 74 65 72 20 74 6f 20  74 68 65 20 65 6e 64 20  |nter to the end |
00003010  70 6f 69 6e 74 2e 0a 35  2d 20 72 65 6c 65 61 73  |point..5- releas|
00003020  65 20 3c 73 68 69 66 74  3e 2e 0a 0a 54 68 65 20  |e <shift>...The |
00003030  6c 69 6e 65 20 69 73 20  6e 6f 77 20 64 72 61 77  |line is now draw|
00003040  6e 2e 20 49 66 20 79 6f  75 20 77 61 6e 74 20 74  |n. If you want t|
00003050  6f 20 63 6f 6e 6e 65 63  74 20 61 6e 6f 74 68 65  |o connect anothe|
00003060  72 20 6c 69 6e 65 20 74  6f 20 69 74 20 67 6f 20  |r line to it go |
00003070  74 6f 20 73 74 65 70 20  33 20 61 67 61 69 6e 2e  |to step 3 again.|
00003080  0a 0a 36 2d 20 72 65 6c  65 61 73 65 20 61 64 6a  |..6- release adj|
00003090  75 73 74 2e 0a 0a 49 66  20 79 6f 75 20 64 72 61  |ust...If you dra|
000030a0  77 20 73 69 6e 67 6c 65  20 70 6f 69 6e 74 73 20  |w single points |
000030b0  61 6e 64 20 74 68 65 20  6d 6f 75 73 65 73 74 65  |and the mouseste|
000030c0  70 20 69 73 20 73 65 74  20 74 6f 20 61 20 76 61  |p is set to a va|
000030d0  6c 75 65 20 68 69 67 68  65 72 20 74 68 61 6e 20  |lue higher than |
000030e0  74 77 6f 2c 20 79 6f 75  20 77 6f 6e 27 74 20 62  |two, you won't b|
000030f0  65 20 61 62 6c 65 20 74  6f 20 72 65 61 63 68 20  |e able to reach |
00003100  61 6c 6c 20 74 68 65 20  70 6f 69 6e 74 73 20 6f  |all the points o|
00003110  6e 20 74 68 65 20 73 63  72 65 65 6e 2e 20 54 6f  |n the screen. To|
00003120  20 6f 76 65 72 63 6f 6d  65 20 74 68 69 73 20 70  | overcome this p|
00003130  72 6f 62 6c 65 6d 20 64  72 61 77 20 77 69 74 68  |roblem draw with|
00003140  20 61 64 6a 75 73 74 2c  20 6f 72 20 73 65 74 20  | adjust, or set |
00003150  74 68 65 20 6d 6f 75 73  65 73 74 65 70 20 74 6f  |the mousestep to|
00003160  20 74 77 6f 2e 0a 0a 0a  4f 73 63 69 6c 6c 61 74  | two....Oscillat|
00003170  6f 72 0a 0a 54 68 65 20  6f 73 63 69 6c 6c 61 74  |or..The oscillat|
00003180  6f 72 20 6f 62 6a 65 63  74 20 69 73 20 75 73 65  |or object is use|
00003190  64 20 66 6f 72 20 67 65  6e 65 72 61 74 69 6e 67  |d for generating|
000031a0  20 70 72 65 64 65 66 69  6e 65 64 20 77 61 76 65  | predefined wave|
000031b0  73 20 6c 69 6b 65 20 61  20 73 69 6e 65 20 77 61  |s like a sine wa|
000031c0  76 65 2c 20 61 20 73 71  75 61 72 65 20 77 61 76  |ve, a square wav|
000031d0  65 20 65 74 63 2e 20 6f  72 20 61 20 68 61 6e 64  |e etc. or a hand|
000031e0  20 64 72 61 77 6e 20 77  61 76 65 2e 20 46 69 67  | drawn wave. Fig|
000031f0  75 72 65 20 31 33 20 73  68 6f 77 73 20 74 68 65  |ure 13 shows the|
00003200  20 6f 73 63 69 6c 6c 61  74 6f 72 20 77 69 6e 64  | oscillator wind|
00003210  6f 77 2e 20 0a 0a 66 69  67 75 72 65 20 31 33 2e  |ow. ..figure 13.|
00003220  20 6f 73 63 69 6c 6c 61  74 6f 72 20 77 69 6e 64  | oscillator wind|
00003230  6f 77 2e 0a 0a 54 68 65  20 77 61 76 65 66 6f 72  |ow...The wavefor|
00003240  6d 20 69 73 20 64 65 66  69 6e 65 64 20 62 79 20  |m is defined by |
00003250  32 35 36 20 76 61 6c 75  65 73 2e 20 54 68 65 20  |256 values. The |
00003260  74 6f 70 20 6f 66 20 74  68 65 20 77 61 76 65 66  |top of the wavef|
00003270  6f 72 6d 20 61 72 65 61  20 6d 65 61 6e 73 20 61  |orm area means a|
00003280  20 76 61 6c 75 65 20 6f  66 20 31 2c 20 61 6e 64  | value of 1, and|
00003290  20 74 68 65 20 62 6f 74  74 6f 6d 20 6d 65 61 6e  | the bottom mean|
000032a0  73 20 61 20 76 61 6c 75  65 20 6f 66 20 2d 31 2c  |s a value of -1,|
000032b0  20 73 6f 20 74 68 65 20  4f 73 63 69 6c 6c 61 74  | so the Oscillat|
000032c0  6f 72 20 69 73 20 63 61  70 61 62 6c 65 20 6f 66  |or is capable of|
000032d0  20 70 72 6f 64 75 63 69  6e 67 20 76 61 6c 75 65  | producing value|
000032e0  73 20 62 65 74 77 65 65  6e 20 2d 31 20 61 6e 64  |s between -1 and|
000032f0  20 31 2e 20 54 68 65 73  65 20 76 61 6c 75 65 73  | 1. These values|
00003300  20 61 70 70 65 61 72 20  6f 6e 20 69 74 73 20 6f  | appear on its o|
00003310  75 74 70 75 74 2e 20 54  68 65 20 6f 73 63 69 6c  |utput. The oscil|
00003320  6c 61 74 6f 72 20 61 6c  73 6f 20 68 61 73 20 74  |lator also has t|
00003330  77 6f 20 69 6e 70 75 74  73 2e 20 54 68 65 20 75  |wo inputs. The u|
00003340  70 70 65 72 20 69 6e 70  75 74 20 28 42 4c 41 43  |pper input (BLAC|
00003350  4b 29 20 69 73 20 75 73  65 64 20 74 6f 20 64 65  |K) is used to de|
00003360  66 69 6e 65 20 74 68 65  20 66 72 65 71 75 65 6e  |fine the frequen|
00003370  63 79 20 6f 66 20 74 68  65 20 6f 75 74 70 75 74  |cy of the output|
00003380  20 77 61 76 65 20 61 6e  64 20 74 68 65 20 6c 6f  | wave and the lo|
00003390  77 65 72 20 69 6e 70 75  74 20 28 52 45 44 29 20  |wer input (RED) |
000033a0  69 73 20 75 73 65 64 20  66 6f 72 20 73 79 6e 63  |is used for sync|
000033b0  68 72 6f 6e 69 73 69 6e  67 20 74 68 65 20 6f 73  |hronising the os|
000033c0  63 69 6c 6c 61 74 6f 72  20 74 6f 20 61 6e 6f 74  |cillator to anot|
000033d0  68 65 72 20 6f 73 63 69  6c 6c 61 74 6f 72 2e 20  |her oscillator. |
000033e0  0a 54 68 65 20 66 72 65  71 75 65 6e 63 79 20 69  |.The frequency i|
000033f0  6e 70 75 74 20 64 65 74  65 72 6d 69 6e 65 73 20  |nput determines |
00003400  74 68 65 20 6c 65 6e 67  74 68 20 6f 66 20 74 68  |the length of th|
00003410  65 20 6f 75 74 70 75 74  20 77 61 76 65 2e 20 54  |e output wave. T|
00003420  68 65 20 6c 65 6e 67 74  68 20 6f 66 20 74 68 65  |he length of the|
00003430  20 6f 75 74 70 75 74 20  77 61 76 65 20 69 73 20  | output wave is |
00003440  32 35 36 2f 28 66 72 65  71 75 65 6e 63 79 20 69  |256/(frequency i|
00003450  6e 70 75 74 29 20 76 61  6c 75 65 73 2e 0a 54 6f  |nput) values..To|
00003460  20 73 65 65 20 68 6f 77  20 74 68 69 73 20 77 6f  | see how this wo|
00003470  72 6b 73 2c 20 74 61 6b  65 20 61 20 6c 6f 6f 6b  |rks, take a look|
00003480  20 61 74 20 66 69 67 75  72 65 20 31 34 2e 0a 0a  | at figure 14...|
00003490  66 69 67 75 72 65 20 31  34 2e 20 65 78 61 6d 70  |figure 14. examp|
000034a0  6c 65 20 6f 66 20 61 6e  20 6f 75 74 70 75 74 20  |le of an output |
000034b0  77 61 76 65 20 6f 66 20  74 68 65 20 6f 73 63 69  |wave of the osci|
000034c0  6c 6c 61 74 6f 72 2e 20  0a 0a 49 6e 20 66 69 67  |llator. ..In fig|
000034d0  75 72 65 20 31 34 61 20  74 68 65 20 66 72 65 71  |ure 14a the freq|
000034e0  75 65 6e 63 79 20 69 6e  70 75 74 20 69 73 20 31  |uency input is 1|
000034f0  20 61 6e 64 20 74 68 65  72 65 66 6f 72 65 20 74  | and therefore t|
00003500  68 65 20 6f 75 74 70 75  74 20 77 61 76 65 20 69  |he output wave i|
00003510  73 20 32 35 36 20 76 61  6c 75 65 73 20 6c 6f 6e  |s 256 values lon|
00003520  67 2e 20 49 6e 20 66 69  67 75 72 65 20 31 34 62  |g. In figure 14b|
00003530  20 74 68 65 20 66 72 65  71 75 65 6e 63 79 20 69  | the frequency i|
00003540  6e 70 75 74 20 69 73 20  32 20 61 6e 64 20 73 6f  |nput is 2 and so|
00003550  20 74 68 65 20 6f 75 74  70 75 74 20 77 61 76 65  | the output wave|
00003560  20 69 73 20 31 32 38 20  76 61 6c 75 65 73 20 6c  | is 128 values l|
00003570  6f 6e 67 2e 20 42 65 63  61 75 73 65 20 74 68 65  |ong. Because the|
00003580  20 77 61 76 65 66 6f 72  6d 20 69 6e 20 66 69 67  | waveform in fig|
00003590  75 72 65 20 31 34 62 20  69 73 20 63 6f 6d 70 72  |ure 14b is compr|
000035a0  65 73 73 65 64 20 62 79  20 61 20 66 61 63 74 6f  |essed by a facto|
000035b0  72 20 6f 66 20 74 77 6f  2c 20 74 68 65 20 66 72  |r of two, the fr|
000035c0  65 71 75 65 6e 63 79 20  6f 66 20 74 68 69 73 20  |equency of this |
000035d0  77 61 76 65 20 77 69 6c  6c 20 62 65 20 74 77 69  |wave will be twi|
000035e0  63 65 20 61 73 20 68 69  67 68 2e 20 53 6f 20 74  |ce as high. So t|
000035f0  68 65 20 68 69 67 68 65  72 20 74 68 65 20 66 72  |he higher the fr|
00003600  65 71 75 65 6e 63 79 20  69 6e 70 75 74 2c 20 74  |equency input, t|
00003610  68 65 20 73 68 6f 72 74  65 72 20 74 68 65 20 6f  |he shorter the o|
00003620  75 74 70 75 74 20 77 61  76 65 20 61 6e 64 20 74  |utput wave and t|
00003630  68 65 20 68 69 67 68 65  72 20 74 68 65 20 66 72  |he higher the fr|
00003640  65 71 75 65 6e 63 79 20  6f 66 20 69 74 2e 20 54  |equency of it. T|
00003650  6f 20 65 78 70 65 72 69  6d 65 6e 74 20 77 69 74  |o experiment wit|
00003660  68 20 74 68 69 73 20 61  20 6c 69 74 74 6c 65 20  |h this a little |
00003670  62 69 74 2c 20 6c 6f 61  64 20 65 78 61 6d 70 6c  |bit, load exampl|
00003680  65 20 73 68 65 65 74 20  35 2e 20 43 61 6c 63 75  |e sheet 5. Calcu|
00003690  6c 61 74 65 20 74 68 65  20 73 68 65 65 74 20 77  |late the sheet w|
000036a0  69 74 68 20 63 6f 6e 73  74 61 6e 74 20 76 61 6c  |ith constant val|
000036b0  75 65 73 20 6f 66 20 66  6f 72 20 65 78 61 6d 70  |ues of for examp|
000036c0  6c 65 20 30 2e 35 2c 20  31 2c 20 32 2c 20 34 20  |le 0.5, 1, 2, 4 |
000036d0  65 74 63 2e 20 61 6e 64  20 65 78 61 6d 69 6e 65  |etc. and examine|
000036e0  20 74 68 65 20 72 65 73  75 6c 74 2e 20 59 6f 75  | the result. You|
000036f0  20 63 61 6e 20 61 6c 73  6f 20 74 72 79 20 74 6f  | can also try to|
00003700  20 61 6c 74 65 72 20 74  68 65 20 77 61 76 65 66  | alter the wavef|
00003710  6f 72 6d 20 6f 66 20 74  68 65 20 6f 73 63 69 6c  |orm of the oscil|
00003720  6c 61 74 6f 72 20 28 72  65 61 64 20 6f 6e 20 74  |lator (read on t|
00003730  6f 20 66 69 6e 64 20 6f  75 74 20 68 6f 77 20 74  |o find out how t|
00003740  6f 20 64 6f 20 74 68 69  73 29 2e 0a 54 68 65 20  |o do this)..The |
00003750  65 78 61 63 74 20 66 72  65 71 75 65 6e 63 79 20  |exact frequency |
00003760  6f 66 20 74 68 65 20 6f  75 74 70 75 74 20 77 61  |of the output wa|
00003770  76 65 20 63 61 6e 27 74  20 62 65 20 64 65 74 65  |ve can't be dete|
00003780  72 6d 69 6e 65 64 20 62  79 20 21 53 46 58 4d 2c  |rmined by !SFXM,|
00003790  20 62 65 63 61 75 73 65  20 74 68 65 20 70 72 6f  | because the pro|
000037a0  67 72 61 6d 20 64 6f 65  73 6e 27 74 20 6b 6e 6f  |gram doesn't kno|
000037b0  77 20 61 74 20 77 68 61  74 20 73 61 6d 70 6c 65  |w at what sample|
000037c0  20 72 61 74 65 20 74 68  65 20 63 61 6c 63 75 6c  | rate the calcul|
000037d0  61 74 65 64 20 73 61 6d  70 6c 65 20 77 69 6c 6c  |ated sample will|
000037e0  20 62 65 20 70 6c 61 79  65 64 2e 20 54 68 65 20  | be played. The |
000037f0  73 61 6d 70 6c 65 20 72  61 74 65 20 69 6e 20 6d  |sample rate in m|
00003800  6f 73 74 20 63 61 73 65  73 20 77 69 6c 6c 20 62  |ost cases will b|
00003810  65 20 64 65 74 65 72 6d  69 6e 65 64 20 62 79 20  |e determined by |
00003820  61 20 6d 75 73 69 63 20  61 70 70 6c 69 63 61 74  |a music applicat|
00003830  69 6f 6e 2c 20 77 68 69  63 68 20 77 69 6c 6c 20  |ion, which will |
00003840  70 6c 61 79 20 74 68 65  20 73 61 6d 70 6c 65 2e  |play the sample.|
00003850  20 46 6f 72 20 65 78 61  6d 70 6c 65 3a 20 49 66  | For example: If|
00003860  20 77 65 20 68 61 76 65  20 61 20 73 69 6e 65 20  | we have a sine |
00003870  77 61 76 65 20 6f 66 20  32 35 36 20 76 61 6c 75  |wave of 256 valu|
00003880  65 73 20 61 6e 64 20 69  74 20 69 73 20 70 6c 61  |es and it is pla|
00003890  79 65 64 20 61 74 20 61  20 73 61 6d 70 6c 65 20  |yed at a sample |
000038a0  72 61 74 65 20 6f 66 20  32 30 30 30 30 20 73 61  |rate of 20000 sa|
000038b0  6d 70 6c 65 73 20 70 65  72 20 73 65 63 6f 6e 64  |mples per second|
000038c0  2c 20 74 68 65 20 61 63  74 75 61 6c 20 66 72 65  |, the actual fre|
000038d0  71 75 65 6e 63 79 20 77  69 6c 6c 20 62 65 3a 20  |quency will be: |
000038e0  32 30 30 30 30 2f 32 35  36 20 3d 20 37 38 20 48  |20000/256 = 78 H|
000038f0  7a 2e 20 49 66 20 77 65  20 70 6c 61 79 65 64 20  |z. If we played |
00003900  74 68 65 20 73 61 6d 70  6c 65 20 61 74 20 61 20  |the sample at a |
00003910  72 61 74 65 20 6f 66 20  34 30 30 30 30 20 73 61  |rate of 40000 sa|
00003920  6d 70 6c 65 73 20 70 65  72 20 73 65 63 6f 6e 64  |mples per second|
00003930  2c 20 74 68 65 20 66 72  65 71 75 65 6e 63 79 20  |, the frequency |
00003940  69 73 3a 20 34 30 30 30  30 2f 32 35 36 20 3d 20  |is: 40000/256 = |
00003950  31 35 36 20 48 7a 2e 20  59 6f 75 20 64 6f 6e 27  |156 Hz. You don'|
00003960  74 20 72 65 61 6c 6c 79  20 68 61 76 65 20 74 6f  |t really have to|
00003970  20 6b 6e 6f 77 20 61 6e  79 74 68 69 6e 67 20 61  | know anything a|
00003980  62 6f 75 74 20 61 6c 6c  20 74 68 69 73 2c 20 62  |bout all this, b|
00003990  65 63 61 75 73 65 20 74  68 65 20 62 65 73 74 20  |ecause the best |
000039a0  77 61 79 20 74 6f 20 64  65 74 65 72 6d 69 6e 65  |way to determine|
000039b0  20 74 68 65 20 66 72 65  71 75 65 6e 63 79 20 69  | the frequency i|
000039c0  73 20 6c 69 73 74 65 6e  20 74 6f 20 74 68 65 20  |s listen to the |
000039d0  73 61 6d 70 6c 65 2e 20  49 66 20 74 68 65 20 73  |sample. If the s|
000039e0  61 6d 70 6c 65 20 73 6f  75 6e 64 73 20 74 6f 6f  |ample sounds too|
000039f0  20 6c 6f 77 20 6f 72 20  74 6f 6f 20 68 69 67 68  | low or too high|
00003a00  2c 20 6a 75 73 74 20 61  6c 74 65 72 20 74 68 65  |, just alter the|
00003a10  20 76 61 6c 75 65 20 61  74 20 74 68 65 20 66 72  | value at the fr|
00003a20  65 71 75 65 6e 63 79 20  69 6e 70 75 74 20 6f 66  |equency input of|
00003a30  20 74 68 65 20 6f 73 63  69 6c 6c 61 74 6f 72 2e  | the oscillator.|
00003a40  20 46 6f 72 20 6d 6f 73  74 20 63 61 73 65 73 20  | For most cases |
00003a50  61 20 66 72 65 71 75 65  6e 63 79 20 76 61 6c 75  |a frequency valu|
00003a60  65 20 66 72 6f 6d 20 32  20 74 6f 20 31 36 20 77  |e from 2 to 16 w|
00003a70  69 6c 6c 20 67 69 76 65  20 61 6e 20 61 63 63 65  |ill give an acce|
00003a80  70 74 61 62 6c 65 20 70  69 74 63 68 2e 0a 0a 54  |ptable pitch...T|
00003a90  68 65 20 6f 74 68 65 72  20 69 6e 70 75 74 20 28  |he other input (|
00003aa0  52 45 44 29 20 6f 66 20  74 68 65 20 4f 73 63 69  |RED) of the Osci|
00003ab0  6c 6c 61 74 6f 72 20 69  73 20 74 68 65 20 73 79  |llator is the sy|
00003ac0  6e 63 68 72 6f 6e 69 73  69 6e 67 20 69 6e 70 75  |nchronising inpu|
00003ad0  74 2e 20 54 68 65 20 66  75 6e 63 74 69 6f 6e 20  |t. The function |
00003ae0  6f 66 20 74 68 69 73 20  69 6e 70 75 74 20 69 73  |of this input is|
00003af0  20 62 65 73 74 20 65 78  70 6c 61 69 6e 65 64 20  | best explained |
00003b00  62 79 20 65 78 61 6d 70  6c 65 20 73 68 65 65 74  |by example sheet|
00003b10  20 36 2e 0a 0a 54 68 65  20 6d 61 69 6e 20 6f 73  | 6...The main os|
00003b20  63 69 6c 6c 61 74 6f 72  20 70 72 6f 64 75 63 65  |cillator produce|
00003b30  73 20 61 20 73 69 6e 65  20 77 61 76 65 20 77 69  |s a sine wave wi|
00003b40  74 68 20 61 20 66 72 65  71 75 65 6e 63 79 20 6f  |th a frequency o|
00003b50  66 20 32 2e 20 54 68 65  20 73 65 63 6f 6e 64 20  |f 2. The second |
00003b60  6f 73 63 69 6c 6c 61 74  6f 72 20 70 72 6f 64 75  |oscillator produ|
00003b70  63 65 73 20 61 20 73 71  75 61 72 65 20 77 61 76  |ces a square wav|
00003b80  65 20 77 69 74 68 20 61  20 66 72 65 71 75 65 6e  |e with a frequen|
00003b90  63 79 20 6f 66 20 33 2e  20 54 68 65 20 6f 75 74  |cy of 3. The out|
00003ba0  70 75 74 20 6f 66 20 74  68 65 20 73 65 63 6f 6e  |put of the secon|
00003bb0  64 20 6f 73 63 69 6c 6c  61 74 6f 72 20 69 73 20  |d oscillator is |
00003bc0  63 6f 6e 6e 65 63 74 65  64 20 74 6f 20 74 68 65  |connected to the|
00003bd0  20 73 79 6e 63 68 72 6f  6e 69 73 69 6e 67 20 69  | synchronising i|
00003be0  6e 70 75 74 20 6f 66 20  74 68 65 20 66 69 72 73  |nput of the firs|
00003bf0  74 20 6f 73 63 69 6c 6c  61 74 6f 72 2e 20 54 68  |t oscillator. Th|
00003c00  69 73 20 63 61 75 73 65  73 20 74 68 65 20 66 69  |is causes the fi|
00003c10  72 73 74 20 6f 73 63 69  6c 6c 61 74 6f 72 20 74  |rst oscillator t|
00003c20  6f 20 6f 73 63 69 6c 6c  61 74 65 20 61 74 20 61  |o oscillate at a|
00003c30  20 66 72 65 71 75 65 6e  63 79 20 6f 66 20 33 21  | frequency of 3!|
00003c40  20 4e 6f 74 69 63 65 20  74 68 61 74 20 74 68 65  | Notice that the|
00003c50  20 6f 75 74 70 75 74 20  77 61 76 65 20 69 73 6e  | output wave isn|
00003c60  27 74 20 71 75 69 74 65  20 61 20 73 69 6e 65 20  |'t quite a sine |
00003c70  77 61 76 65 20 61 6e 79  6d 6f 72 65 2e 20 57 68  |wave anymore. Wh|
00003c80  61 74 20 68 61 70 70 65  6e 73 20 69 73 20 74 68  |at happens is th|
00003c90  61 74 20 77 68 65 6e 20  74 68 65 20 73 79 6e 63  |at when the sync|
00003ca0  68 72 6f 6e 69 73 69 6e  67 20 69 6e 70 75 74 20  |hronising input |
00003cb0  6f 66 20 74 68 65 20 66  69 72 73 74 20 6f 73 63  |of the first osc|
00003cc0  69 6c 6c 61 74 6f 72 20  67 6f 65 73 20 66 72 6f  |illator goes fro|
00003cd0  6d 20 6e 65 67 61 74 69  76 65 20 28 2d 31 29 20  |m negative (-1) |
00003ce0  74 6f 20 70 6f 73 69 74  69 76 65 20 28 2b 31 29  |to positive (+1)|
00003cf0  20 74 68 65 20 6f 73 63  69 6c 6c 61 74 6f 72 20  | the oscillator |
00003d00  27 72 65 73 65 74 73 27  20 69 6e 74 65 72 6e 61  |'resets' interna|
00003d10  6c 6c 79 2c 20 61 6e 64  20 74 68 65 72 65 66 6f  |lly, and therefo|
00003d20  72 65 20 74 61 6b 65 73  20 6f 76 65 72 20 74 68  |re takes over th|
00003d30  65 20 66 72 65 71 75 65  6e 63 79 20 61 74 20 69  |e frequency at i|
00003d40  74 73 20 73 79 6e 63 68  72 6f 6e 69 73 69 6e 67  |ts synchronising|
00003d50  20 69 6e 70 75 74 2e 20  42 65 63 61 75 73 65 20  | input. Because |
00003d60  74 68 65 20 6f 75 74 70  75 74 20 77 61 76 65 20  |the output wave |
00003d70  67 65 74 73 20 73 6f 6d  65 77 68 61 74 20 64 69  |gets somewhat di|
00003d80  73 74 6f 72 74 65 64 20  69 74 20 77 69 6c 6c 20  |storted it will |
00003d90  6e 6f 74 20 73 6f 75 6e  64 20 74 68 65 20 73 61  |not sound the sa|
00003da0  6d 65 20 61 73 20 74 68  65 20 6f 72 69 67 69 6e  |me as the origin|
00003db0  61 6c 20 73 69 6e 65 20  77 61 76 65 2e 20 49 66  |al sine wave. If|
00003dc0  20 79 6f 75 20 77 61 6e  74 20 74 6f 20 75 73 65  | you want to use|
00003dd0  20 74 68 69 73 20 66 75  6e 63 74 69 6f 6e 20 6f  | this function o|
00003de0  66 74 65 6e 2c 20 65 78  70 65 72 69 6d 65 6e 74  |ften, experiment|
00003df0  20 61 20 62 69 74 20 77  69 74 68 20 74 68 65 20  | a bit with the |
00003e00  65 78 61 6d 70 6c 65 20  73 68 65 65 74 2c 20 65  |example sheet, e|
00003e10  6c 73 65 20 79 6f 75 20  6d 61 79 20 6c 65 61 76  |lse you may leav|
00003e20  65 20 74 68 65 20 73 79  6e 63 68 72 6f 6e 69 73  |e the synchronis|
00003e30  69 6e 67 20 69 6e 70 75  74 20 75 6e 63 6f 6e 6e  |ing input unconn|
00003e40  65 63 74 65 64 2e 0a 0a  54 68 65 20 69 63 6f 6e  |ected...The icon|
00003e50  20 66 75 6e 63 74 69 6f  6e 73 20 69 6e 20 74 68  | functions in th|
00003e60  65 20 6f 73 63 69 6c 6c  61 74 6f 72 20 77 69 6e  |e oscillator win|
00003e70  64 6f 77 20 28 66 69 67  75 72 65 20 31 33 29 20  |dow (figure 13) |
00003e80  61 72 65 3a 0a 0a 53 69  6e 3a 20 6d 61 6b 65 73  |are:..Sin: makes|
00003e90  20 74 68 65 20 77 61 76  65 66 6f 72 6d 20 61 20  | the waveform a |
00003ea0  73 69 6e 65 2e 0a 54 72  69 3a 20 6d 61 6b 65 73  |sine..Tri: makes|
00003eb0  20 74 68 65 20 77 61 76  65 66 6f 72 6d 20 61 20  | the waveform a |
00003ec0  74 72 69 61 6e 67 6c 65  2e 0a 52 61 6d 70 3a 20  |triangle..Ramp: |
00003ed0  6d 61 6b 65 73 20 74 68  65 20 77 61 76 65 66 6f  |makes the wavefo|
00003ee0  72 6d 20 61 20 72 61 6d  70 20 75 70 2f 64 6f 77  |rm a ramp up/dow|
00003ef0  6e 20 62 79 20 63 6c 69  63 6b 69 6e 67 20 77 69  |n by clicking wi|
00003f00  74 68 20 73 65 6c 65 63  74 2f 61 64 6a 75 73 74  |th select/adjust|
00003f10  2e 0a 53 71 72 3a 20 6d  61 6b 65 20 74 68 65 20  |..Sqr: make the |
00003f20  77 61 76 65 66 6f 72 6d  20 61 20 73 71 75 61 72  |waveform a squar|
00003f30  65 2e 0a 43 6f 6e 73 3a  20 6d 61 6b 65 73 20 74  |e..Cons: makes t|
00003f40  68 65 20 77 61 76 65 66  6f 72 6d 20 61 20 63 6f  |he waveform a co|
00003f50  6e 73 74 61 6e 74 20 31  2f 30 2f 2d 31 20 62 79  |nstant 1/0/-1 by|
00003f60  20 63 6c 69 63 6b 69 6e  67 20 77 69 74 68 20 73  | clicking with s|
00003f70  65 6c 65 63 74 2f 6d 65  6e 75 2f 61 64 6a 75 73  |elect/menu/adjus|
00003f80  74 2e 0a 3c 3c 3c 3c 3a  20 63 6f 6d 70 72 65 73  |t..<<<<: compres|
00003f90  73 65 73 20 74 68 65 20  77 61 76 65 66 6f 72 6d  |ses the waveform|
00003fa0  20 62 79 20 61 20 66 61  63 74 6f 72 20 32 2c 20  | by a factor 2, |
00003fb0  74 68 75 73 20 6d 61 6b  69 6e 67 20 74 68 65 20  |thus making the |
00003fc0  66 72 65 71 75 65 6e 63  79 20 74 77 69 63 65 20  |frequency twice |
00003fd0  61 73 20 68 69 67 68 2e  0a 3e 3e 3e 3e 3a 20 65  |as high..>>>>: e|
00003fe0  78 70 61 6e 64 73 20 74  68 65 20 77 61 76 65 66  |xpands the wavef|
00003ff0  6f 72 6d 20 62 79 20 61  20 66 61 63 74 6f 72 20  |orm by a factor |
00004000  32 2e 20 54 68 65 20 6c  61 73 74 20 31 32 38 20  |2. The last 128 |
00004010  76 61 6c 75 65 73 20 61  72 65 20 6c 6f 73 74 2e  |values are lost.|
00004020  0a 2a 2f 32 3a 20 6d 75  6c 74 69 70 6c 69 65 73  |.*/2: multiplies|
00004030  2f 64 69 76 69 64 65 73  20 28 73 65 6c 65 63 74  |/divides (select|
00004040  2f 61 64 6a 75 73 74 29  20 74 68 65 20 61 6d 70  |/adjust) the amp|
00004050  6c 69 74 75 64 65 20 6f  66 20 74 68 65 20 77 61  |litude of the wa|
00004060  76 65 66 6f 72 6d 20 62  79 20 61 20 66 61 63 74  |veform by a fact|
00004070  6f 72 20 32 2e 20 49 66  20 74 68 65 20 61 6d 70  |or 2. If the amp|
00004080  6c 69 74 75 64 65 20 62  65 63 6f 6d 65 73 20 74  |litude becomes t|
00004090  6f 6f 20 62 69 67 2c 20  74 68 65 20 65 64 67 65  |oo big, the edge|
000040a0  73 20 61 72 65 20 63 6c  69 70 70 65 64 2e 0a 2b  |s are clipped..+|
000040b0  2d 39 30 3a 20 72 6f 74  61 74 65 73 20 74 68 65  |-90: rotates the|
000040c0  20 77 61 76 65 66 6f 72  6d 20 62 79 20 2b 39 30  | waveform by +90|
000040d0  20 6f 72 20 2d 39 30 20  28 73 65 6c 65 63 74 2f  | or -90 (select/|
000040e0  61 64 6a 75 73 74 29 20  64 65 67 72 65 65 73 2e  |adjust) degrees.|
000040f0  0a 52 61 6e 64 3a 20 66  69 6c 6c 73 20 74 68 65  |.Rand: fills the|
00004100  20 77 61 76 65 66 6f 72  6d 20 77 69 74 68 20 72  | waveform with r|
00004110  61 6e 64 6f 6d 20 6e 75  6d 62 65 72 73 2e 20 20  |andom numbers.  |
00004120  20 20 20 20 20 20 20 20  20 20 20 0a 0a 59 6f 75  |           ..You|
00004130  20 63 61 6e 20 61 6c 73  6f 20 64 72 61 77 20 74  | can also draw t|
00004140  68 65 20 77 61 76 65 66  6f 72 6d 20 62 79 20 68  |he waveform by h|
00004150  61 6e 64 2e 20 54 6f 20  64 6f 20 74 68 69 73 2c  |and. To do this,|
00004160  20 64 72 61 77 20 69 6e  20 74 68 65 20 61 72 65  | draw in the are|
00004170  61 20 77 68 65 72 65 20  74 68 65 20 77 61 76 65  |a where the wave|
00004180  66 6f 72 6d 20 69 73 20  73 68 6f 77 6e 2e 20 54  |form is shown. T|
00004190  68 65 20 64 72 61 77 69  6e 67 20 72 75 6c 65 73  |he drawing rules|
000041a0  20 61 72 65 20 74 68 65  20 73 61 6d 65 20 61 73  | are the same as|
000041b0  20 69 6e 20 74 68 65 20  65 6e 76 65 6c 6f 70 65  | in the envelope|
000041c0  20 67 65 6e 65 72 61 74  6f 72 20 77 69 6e 64 6f  | generator windo|
000041d0  77 2c 20 73 6f 20 79 6f  75 20 63 61 6e 20 64 72  |w, so you can dr|
000041e0  61 77 20 70 6f 69 6e 74  73 2c 20 63 6f 6e 6e 65  |aw points, conne|
000041f0  63 74 65 64 20 70 6f 69  6e 74 73 20 61 6e 64 20  |cted points and |
00004200  73 74 72 61 69 67 68 74  20 6c 69 6e 65 73 2e 0a  |straight lines..|
00004210  0a 54 68 65 72 65 20 69  73 20 6e 6f 20 75 6e 64  |.There is no und|
00004220  6f 20 66 75 6e 63 74 69  6f 6e 2c 20 73 6f 20 62  |o function, so b|
00004230  65 20 63 61 72 65 66 75  6c 2e 0a 0a 0a 4e 6f 69  |e careful....Noi|
00004240  73 65 20 47 65 6e 65 72  61 74 6f 72 0a 0a 54 68  |se Generator..Th|
00004250  69 73 20 6f 62 6a 65 63  74 20 69 73 20 61 6c 73  |is object is als|
00004260  6f 20 61 20 67 65 6e 65  72 61 74 6f 72 20 6f 62  |o a generator ob|
00004270  6a 65 63 74 2e 20 49 74  20 69 73 20 75 73 65 64  |ject. It is used|
00004280  20 74 6f 20 70 72 6f 64  75 63 65 20 72 61 6e 64  | to produce rand|
00004290  6f 6d 20 6e 75 6d 62 65  72 73 20 62 65 74 77 65  |om numbers betwe|
000042a0  65 6e 20 2d 31 20 61 6e  64 20 2b 31 2c 20 77 68  |en -1 and +1, wh|
000042b0  69 63 68 20 61 70 70 65  61 72 20 6f 6e 20 69 74  |ich appear on it|
000042c0  73 20 6f 75 74 70 75 74  2e 20 54 68 65 20 69 6e  |s output. The in|
000042d0  70 75 74 20 6f 66 20 74  68 65 20 6e 6f 69 73 65  |put of the noise|
000042e0  20 67 65 6e 65 72 61 74  6f 72 20 69 73 20 75 73  | generator is us|
000042f0  65 64 20 74 6f 20 63 6f  6e 74 72 6f 6c 20 74 68  |ed to control th|
00004300  65 20 72 61 74 65 20 61  74 20 77 68 69 63 68 20  |e rate at which |
00004310  74 68 65 20 72 61 6e 64  6f 6d 20 6e 75 6d 62 65  |the random numbe|
00004320  72 73 20 61 72 65 20 67  65 6e 65 72 61 74 65 64  |rs are generated|
00004330  2e 20 49 66 20 61 20 76  61 6c 75 65 20 6f 66 20  |. If a value of |
00004340  31 20 69 73 20 61 70 70  6c 69 65 64 20 74 6f 20  |1 is applied to |
00004350  74 68 69 73 20 69 6e 70  75 74 20 61 20 72 61 6e  |this input a ran|
00004360  64 6f 6d 20 76 61 6c 75  65 20 69 73 20 67 65 6e  |dom value is gen|
00004370  65 72 61 74 65 64 20 65  76 65 72 79 20 63 61 6c  |erated every cal|
00004380  63 75 6c 61 74 69 6f 6e  20 6f 6e 20 74 68 65 20  |culation on the |
00004390  66 69 6e 61 6c 20 73 61  6d 70 6c 65 2e 20 49 66  |final sample. If|
000043a0  20 61 20 76 61 6c 75 65  20 6f 66 20 66 6f 72 20  | a value of for |
000043b0  65 78 61 6d 70 6c 65 20  30 2e 32 35 20 69 66 20  |example 0.25 if |
000043c0  61 70 70 6c 69 65 64 2c  20 61 20 72 61 6e 64 6f  |applied, a rando|
000043d0  6d 20 76 61 6c 75 65 20  69 73 20 67 65 6e 65 72  |m value is gener|
000043e0  61 74 65 64 20 77 69 74  68 69 6e 20 65 76 65 72  |ated within ever|
000043f0  79 20 66 6f 75 72 20 63  61 6c 63 75 6c 61 74 69  |y four calculati|
00004400  6f 6e 73 2e 20 4c 6f 61  64 20 65 78 61 6d 70 6c  |ons. Load exampl|
00004410  65 20 73 68 65 65 74 20  37 20 61 6e 64 20 63 68  |e sheet 7 and ch|
00004420  61 6e 67 65 20 74 68 65  20 63 6f 6e 73 74 61 6e  |ange the constan|
00004430  74 20 76 61 6c 75 65 20  74 6f 20 66 6f 72 20 65  |t value to for e|
00004440  78 61 6d 70 6c 65 20 31  2c 20 30 2e 35 2c 20 30  |xample 1, 0.5, 0|
00004450  2e 32 35 2c 20 30 2e 31  20 61 6e 64 20 73 65 65  |.25, 0.1 and see|
00004460  20 77 68 61 74 20 68 61  70 70 65 6e 73 2e 0a 0a  | what happens...|
00004470  0a 50 75 6c 73 65 20 47  65 6e 65 72 61 74 6f 72  |.Pulse Generator|
00004480  0a 0a 54 68 69 73 20 67  65 6e 65 72 61 74 6f 72  |..This generator|
00004490  20 69 73 20 75 73 65 64  20 66 6f 72 20 67 65 6e  | is used for gen|
000044a0  65 72 61 74 69 6e 67 20  77 61 76 65 73 20 6c 69  |erating waves li|
000044b0  6b 65 20 69 6e 20 66 69  67 75 72 65 20 31 35 2e  |ke in figure 15.|
000044c0  0a 0a 66 69 67 75 72 65  20 31 35 2e 20 77 61 76  |..figure 15. wav|
000044d0  65 73 20 74 68 61 74 20  63 61 6e 20 62 65 20 67  |es that can be g|
000044e0  65 6e 65 72 61 74 65 64  20 62 79 20 74 68 65 20  |enerated by the |
000044f0  70 75 6c 73 65 20 67 65  6e 65 72 61 74 6f 72 2e  |pulse generator.|
00004500  0a 20 0a 41 6c 6c 20 74  68 65 73 65 20 77 61 76  |. .All these wav|
00004510  65 73 20 61 72 65 20 63  61 6c 6c 65 64 20 70 75  |es are called pu|
00004520  6c 73 65 20 77 61 76 65  73 2e 20 54 68 65 79 20  |lse waves. They |
00004530  61 70 70 65 61 72 20 6f  6e 20 74 68 65 20 6f 75  |appear on the ou|
00004540  74 70 75 74 20 6f 66 20  74 68 65 20 70 75 6c 73  |tput of the puls|
00004550  65 20 67 65 6e 65 72 61  74 6f 72 2e 20 54 68 69  |e generator. Thi|
00004560  73 20 6f 62 6a 65 63 74  20 61 6c 73 6f 20 68 61  |s object also ha|
00004570  73 20 74 77 6f 20 69 6e  70 75 74 73 2e 20 54 68  |s two inputs. Th|
00004580  65 20 75 70 70 65 72 20  69 6e 70 75 74 20 28 42  |e upper input (B|
00004590  4c 41 43 4b 29 20 63 6f  6e 74 72 6f 6c 73 20 74  |LACK) controls t|
000045a0  68 65 20 66 72 65 71 75  65 6e 63 79 20 6f 66 20  |he frequency of |
000045b0  74 68 65 20 6f 75 74 70  75 74 20 77 61 76 65 2c  |the output wave,|
000045c0  20 77 68 69 6c 65 20 74  68 65 20 6c 6f 77 65 72  | while the lower|
000045d0  20 69 6e 70 75 74 20 28  52 45 44 29 20 69 73 20  | input (RED) is |
000045e0  74 6f 20 63 6f 6e 74 72  6f 6c 20 74 68 65 20 77  |to control the w|
000045f0  69 64 74 68 20 6f 66 20  74 68 65 20 70 75 6c 73  |idth of the puls|
00004600  65 2e 0a 0a 0a 0a 0a 0a  0a 0a 0a 0a 0a 0a 0a 0a  |e...............|
00004610  0a 0a 0a 0a 0a 0a 54 68  65 20 66 72 65 71 75 65  |......The freque|
00004620  6e 63 79 20 69 6e 70 75  74 20 61 63 74 73 20 6c  |ncy input acts l|
00004630  69 6b 65 20 74 68 65 20  66 72 65 71 75 65 6e 63  |ike the frequenc|
00004640  79 20 69 6e 70 75 74 20  6f 66 20 74 68 65 20 6f  |y input of the o|
00004650  73 63 69 6c 6c 61 74 6f  72 2c 20 73 6f 20 61 20  |scillator, so a |
00004660  76 61 6c 75 65 20 6f 66  20 31 20 6f 6e 20 74 68  |value of 1 on th|
00004670  69 73 20 69 6e 70 75 74  20 77 69 6c 6c 20 63 61  |is input will ca|
00004680  75 73 65 20 74 68 65 20  70 75 6c 73 65 20 67 65  |use the pulse ge|
00004690  6e 65 72 61 74 6f 72 20  74 6f 20 67 65 6e 65 72  |nerator to gener|
000046a0  61 74 65 20 61 20 70 75  6c 73 65 20 77 69 74 68  |ate a pulse with|
000046b0  20 61 20 6c 65 6e 67 74  68 20 6f 66 20 32 35 36  | a length of 256|
000046c0  20 76 61 6c 75 65 73 2e  20 4d 6f 72 65 20 67 65  | values. More ge|
000046d0  6e 65 72 61 6c 6c 79 3a  20 74 68 65 20 6c 65 6e  |nerally: the len|
000046e0  67 74 68 20 6f 66 20 74  68 65 20 6f 75 74 70 75  |gth of the outpu|
000046f0  74 20 77 61 76 65 20 69  73 20 32 35 36 2f 28 66  |t wave is 256/(f|
00004700  72 65 71 75 65 6e 63 79  20 69 6e 70 75 74 29 20  |requency input) |
00004710  76 61 6c 75 65 73 2e 20  52 65 61 64 20 74 68 65  |values. Read the|
00004720  20 65 78 70 6c 61 6e 61  74 69 6f 6e 20 6f 66 20  | explanation of |
00004730  74 68 65 20 66 72 65 71  75 65 6e 63 79 20 69 6e  |the frequency in|
00004740  70 75 74 20 6f 66 20 74  68 65 20 6f 73 63 69 6c  |put of the oscil|
00004750  6c 61 74 6f 72 20 66 6f  72 20 6d 6f 72 65 20 69  |lator for more i|
00004760  6e 66 6f 72 6d 61 74 69  6f 6e 20 61 62 6f 75 74  |nformation about|
00004770  20 74 68 69 73 2e 0a 0a  54 68 65 20 70 75 6c 73  | this...The puls|
00004780  65 20 77 69 64 74 68 20  69 6e 70 75 74 20 69 73  |e width input is|
00004790  20 75 73 65 64 20 66 6f  72 20 64 65 66 69 6e 69  | used for defini|
000047a0  6e 67 20 74 68 65 20 77  69 64 74 68 20 6f 66 20  |ng the width of |
000047b0  74 68 65 20 6f 75 74 70  75 74 20 70 75 6c 73 65  |the output pulse|
000047c0  2e 20 46 6f 72 20 65 78  61 6d 70 6c 65 20 61 20  |. For example a |
000047d0  76 61 6c 75 65 20 6f 66  20 30 2e 32 35 20 6f 6e  |value of 0.25 on|
000047e0  20 74 68 69 73 20 69 6e  70 75 74 20 77 69 6c 6c  | this input will|
000047f0  20 67 69 76 65 20 61 20  32 35 25 20 68 69 67 68  | give a 25% high|
00004800  2c 20 37 35 25 20 6c 6f  77 20 70 75 6c 73 65 2e  |, 75% low pulse.|
00004810  20 54 68 69 73 20 6d 65  61 6e 73 20 74 68 61 74  | This means that|
00004820  20 69 66 20 74 68 65 20  74 6f 74 61 6c 20 70 75  | if the total pu|
00004830  6c 73 65 20 6c 65 6e 67  74 68 20 69 73 20 66 6f  |lse length is fo|
00004840  72 20 65 78 61 6d 70 6c  65 20 36 34 20 28 61 20  |r example 64 (a |
00004850  76 61 6c 75 65 20 6f 66  20 34 20 6f 6e 20 74 68  |value of 4 on th|
00004860  65 20 66 72 65 71 75 65  6e 63 79 20 69 6e 70 75  |e frequency inpu|
00004870  74 29 2c 20 74 68 65 72  65 20 77 69 6c 6c 20 62  |t), there will b|
00004880  65 20 61 66 74 65 72 20  61 6e 6f 74 68 65 72 20  |e after another |
00004890  31 36 20 76 61 6c 75 65  73 20 31 20 61 6e 64 20  |16 values 1 and |
000048a0  74 68 65 6e 20 34 38 20  76 61 6c 75 65 73 20 2d  |then 48 values -|
000048b0  31 20 28 65 78 61 6d 70  6c 65 20 73 68 65 65 74  |1 (example sheet|
000048c0  20 38 29 2e 20 41 20 73  71 75 61 72 65 20 77 61  | 8). A square wa|
000048d0  76 65 20 28 35 30 25 20  68 69 67 68 2c 20 35 30  |ve (50% high, 50|
000048e0  25 20 6c 6f 77 29 20 63  61 6e 20 62 65 20 6f 62  |% low) can be ob|
000048f0  74 61 69 6e 65 64 20 62  79 20 61 70 70 6c 79 69  |tained by applyi|
00004900  6e 67 20 61 20 76 61 6c  75 65 20 6f 66 20 30 2e  |ng a value of 0.|
00004910  35 20 6f 6e 20 74 68 69  73 20 69 6e 70 75 74 2e  |5 on this input.|
00004920  20 54 6f 20 65 78 70 65  72 69 6d 65 6e 74 20 61  | To experiment a|
00004930  20 62 69 74 20 77 69 74  68 20 74 68 65 20 70 75  | bit with the pu|
00004940  6c 73 65 20 67 65 6e 65  72 61 74 6f 72 2c 20 6c  |lse generator, l|
00004950  6f 61 64 20 65 78 61 6d  70 6c 65 20 73 68 65 65  |oad example shee|
00004960  74 20 38 2e 20 54 72 79  20 74 6f 20 6d 61 6b 65  |t 8. Try to make|
00004970  20 61 20 70 75 6c 73 65  20 77 68 69 63 68 20 68  | a pulse which h|
00004980  61 73 20 61 20 6c 65 6e  67 74 68 20 6f 66 20 31  |as a length of 1|
00004990  32 38 20 76 61 6c 75 65  73 20 61 6e 64 20 61 20  |28 values and a |
000049a0  37 35 25 20 68 69 67 68  2c 20 32 35 25 20 6c 6f  |75% high, 25% lo|
000049b0  77 20 77 69 64 74 68 2e  0a 0a 20 20 20 0a 4c 6f  |w width...   .Lo|
000049c0  77 20 50 61 73 73 20 46  69 6c 74 65 72 0a 0a 54  |w Pass Filter..T|
000049d0  68 69 73 20 6f 62 6a 65  63 74 20 69 73 20 75 73  |his object is us|
000049e0  65 64 20 74 6f 20 66 69  6c 74 65 72 20 6f 75 74  |ed to filter out|
000049f0  20 74 68 65 20 68 69 67  68 20 66 72 65 71 75 65  | the high freque|
00004a00  6e 63 79 20 63 6f 6d 70  6f 6e 65 6e 74 73 20 28  |ncy components (|
00004a10  73 65 65 20 63 68 61 70  74 65 72 20 31 29 20 6f  |see chapter 1) o|
00004a20  66 20 61 20 73 6f 75 6e  64 20 77 61 76 65 2e 20  |f a sound wave. |
00004a30  54 68 69 73 20 6f 6e 6c  79 20 6c 65 61 76 65 73  |This only leaves|
00004a40  20 74 68 65 20 6c 6f 77  65 72 20 66 72 65 71 75  | the lower frequ|
00004a50  65 6e 63 79 20 63 6f 6d  70 6f 6e 65 6e 74 73 20  |ency components |
00004a60  69 6e 20 74 68 65 20 6f  75 74 70 75 74 20 77 61  |in the output wa|
00004a70  76 65 2c 20 61 6e 64 20  73 6f 20 74 68 65 20 6f  |ve, and so the o|
00004a80  75 74 70 75 74 20 77 61  76 65 20 77 69 6c 6c 20  |utput wave will |
00004a90  68 61 76 65 20 61 20 6c  65 73 73 20 27 73 68 61  |have a less 'sha|
00004aa0  72 70 27 20 73 6f 75 6e  64 2e 20 54 68 69 73 20  |rp' sound. This |
00004ab0  69 73 20 62 65 73 74 20  65 78 70 6c 61 69 6e 65  |is best explaine|
00004ac0  64 20 62 79 20 61 20 66  69 67 75 72 65 2e 20 0a  |d by a figure. .|
00004ad0  0a 66 69 67 75 72 65 20  31 36 2e 20 6c 6f 77 20  |.figure 16. low |
00004ae0  70 61 73 73 20 66 69 6c  74 65 72 69 6e 67 20 61  |pass filtering a|
00004af0  20 73 71 75 61 72 65 20  77 61 76 65 2e 0a 0a 0a  | square wave....|
00004b00  46 69 67 75 72 65 20 31  36 20 73 68 6f 77 73 20  |Figure 16 shows |
00004b10  74 68 65 20 66 69 6c 74  65 72 69 6e 67 20 6f 66  |the filtering of|
00004b20  20 61 20 73 71 75 61 72  65 20 77 61 76 65 2e 20  | a square wave. |
00004b30  54 68 65 20 6f 72 69 67  69 6e 61 6c 20 73 71 75  |The original squ|
00004b40  61 72 65 20 77 61 76 65  20 69 73 20 73 68 6f 77  |are wave is show|
00004b50  6e 20 69 6e 20 66 69 67  75 72 65 20 31 36 61 20  |n in figure 16a |
00004b60  61 6e 64 20 74 68 65 20  66 69 6c 74 65 72 65 64  |and the filtered|
00004b70  20 6f 6e 65 73 20 69 6e  20 66 69 67 75 72 65 20  | ones in figure |
00004b80  31 36 62 20 61 6e 64 20  31 36 63 2e 20 4e 6f 74  |16b and 16c. Not|
00004b90  69 63 65 20 74 68 61 74  20 74 68 65 20 73 68 61  |ice that the sha|
00004ba0  72 70 20 65 64 67 65 73  20 61 72 65 20 72 6f 75  |rp edges are rou|
00004bb0  6e 64 65 64 20 6f 66 66  2e 20 54 68 65 20 73 71  |nded off. The sq|
00004bc0  75 61 72 65 20 77 61 76  65 20 77 69 6c 6c 20 74  |uare wave will t|
00004bd0  68 65 72 65 66 6f 72 65  20 68 61 76 65 20 61 20  |herefore have a |
00004be0  6c 65 73 73 20 73 68 61  72 70 20 73 6f 75 6e 64  |less sharp sound|
00004bf0  2e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00004c00  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00004c20  20 20 20 20 20 20 20 20  0a 0a 54 6f 20 65 78 70  |        ..To exp|
00004c30  65 72 69 6d 65 6e 74 20  77 69 74 68 20 74 68 69  |eriment with thi|
00004c40  73 20 6f 62 6a 65 63 74  2c 20 6c 6f 61 64 20 65  |s object, load e|
00004c50  78 61 6d 70 6c 65 20 73  68 65 65 74 20 39 2e 20  |xample sheet 9. |
00004c60  54 68 65 20 6f 72 69 67  69 6e 61 6c 20 77 61 76  |The original wav|
00004c70  65 20 66 72 6f 6d 20 74  68 65 20 6f 73 63 69 6c  |e from the oscil|
00004c80  6c 61 74 6f 72 20 69 73  20 66 65 64 20 69 6e 74  |lator is fed int|
00004c90  6f 20 74 68 65 20 75 70  70 65 72 20 69 6e 70 75  |o the upper inpu|
00004ca0  74 20 28 42 4c 41 43 4b  29 20 6f 66 20 74 68 65  |t (BLACK) of the|
00004cb0  20 66 69 6c 74 65 72 2e  20 54 68 65 20 61 6d 6f  | filter. The amo|
00004cc0  75 6e 74 20 6f 66 20 66  69 6c 74 65 72 69 6e 67  |unt of filtering|
00004cd0  20 69 73 20 63 6f 6e 74  72 6f 6c 6c 65 64 20 62  | is controlled b|
00004ce0  79 20 74 68 65 20 6c 6f  77 65 72 20 28 52 45 44  |y the lower (RED|
00004cf0  29 20 69 6e 70 75 74 20  6f 66 20 74 68 65 20 66  |) input of the f|
00004d00  69 6c 74 65 72 2e 20 49  66 20 61 20 76 61 6c 75  |ilter. If a valu|
00004d10  65 20 6f 66 20 31 20 69  73 20 61 70 70 6c 69 65  |e of 1 is applie|
00004d20  64 20 74 6f 20 74 68 69  73 20 69 6e 70 75 74 2c  |d to this input,|
00004d30  20 6e 6f 20 66 69 6c 74  65 72 69 6e 67 20 74 61  | no filtering ta|
00004d40  6b 65 73 20 70 6c 61 63  65 20 61 6e 64 20 74 68  |kes place and th|
00004d50  65 20 6f 72 69 67 69 6e  61 6c 20 77 61 76 65 20  |e original wave |
00004d60  69 73 20 6a 75 73 74 20  70 61 73 73 65 64 20 74  |is just passed t|
00004d70  68 72 6f 75 67 68 20 74  68 65 20 66 69 6c 74 65  |hrough the filte|
00004d80  72 2e 20 54 6f 20 73 68  6f 77 20 77 68 61 74 20  |r. To show what |
00004d90  6f 74 68 65 72 20 76 61  6c 75 65 73 20 64 6f 20  |other values do |
00004da0  74 6f 20 74 68 65 20 66  69 6c 74 65 72 69 6e 67  |to the filtering|
00004db0  2c 20 63 68 61 6e 67 65  20 74 68 65 20 66 69 6c  |, change the fil|
00004dc0  74 65 72 20 63 6f 6e 73  74 61 6e 74 20 6f 66 20  |ter constant of |
00004dd0  74 68 69 73 20 73 68 65  65 74 20 74 6f 20 30 2e  |this sheet to 0.|
00004de0  35 2c 20 30 2e 32 35 2c  20 30 2e 31 2c 20 30 2e  |5, 0.25, 0.1, 0.|
00004df0  30 35 20 61 6e 64 20 30  2e 20 45 78 61 6d 69 6e  |05 and 0. Examin|
00004e00  65 20 74 68 65 20 66 69  6e 61 6c 20 77 61 76 65  |e the final wave|
00004e10  66 6f 72 6d 2e 20 59 6f  75 20 63 61 6e 20 6c 69  |form. You can li|
00004e20  73 74 65 6e 20 74 6f 20  74 68 65 20 66 69 6e 61  |sten to the fina|
00004e30  6c 20 73 6f 75 6e 64 20  62 79 20 70 72 65 73 73  |l sound by press|
00004e40  69 6e 67 20 74 68 65 20  27 59 27 20 6b 65 79 20  |ing the 'Y' key |
00004e50  6f 6e 20 74 68 65 20 6b  65 79 62 6f 61 72 64 2c  |on the keyboard,|
00004e60  20 61 66 74 65 72 20 79  6f 75 20 68 61 76 65 20  | after you have |
00004e70  63 6c 69 63 6b 65 64 20  6f 6e 20 74 68 65 20 27  |clicked on the '|
00004e80  4c 6f 6f 70 27 20 69 63  6f 6e 20 69 6e 20 74 68  |Loop' icon in th|
00004e90  65 20 6b 65 79 62 6f 61  72 64 20 77 69 6e 64 6f  |e keyboard windo|
00004ea0  77 2e 20 41 6c 73 6f 20  74 72 79 20 66 69 6c 74  |w. Also try filt|
00004eb0  65 72 69 6e 67 20 61 20  74 72 69 61 6e 67 6c 65  |ering a triangle|
00004ec0  20 77 61 76 65 2c 20 61  20 72 61 6d 70 20 77 61  | wave, a ramp wa|
00004ed0  76 65 2c 20 61 20 73 69  6e 65 20 77 61 76 65 20  |ve, a sine wave |
00004ee0  61 6e 64 20 79 6f 75 72  20 6f 77 6e 20 68 61 6e  |and your own han|
00004ef0  64 2d 64 72 61 77 6e 20  77 61 76 65 2e 0a 0a 0a  |d-drawn wave....|
00004f00  48 69 67 68 20 50 61 73  73 20 46 69 6c 74 65 72  |High Pass Filter|
00004f10  20 20 20 20 20 20 20 20  20 20 20 0a 0a 54 68 69  |           ..Thi|
00004f20  73 20 6f 62 6a 65 63 74  20 77 6f 72 6b 73 20 6f  |s object works o|
00004f30  70 70 6f 73 69 74 65 20  74 6f 20 74 68 65 20 6c  |pposite to the l|
00004f40  6f 77 20 70 61 73 73 20  66 69 6c 74 65 72 2e 20  |ow pass filter. |
00004f50  49 74 20 69 73 20 75 73  65 64 20 74 6f 20 66 69  |It is used to fi|
00004f60  6c 74 65 72 20 6f 75 74  20 74 68 65 20 6c 6f 77  |lter out the low|
00004f70  20 66 72 65 71 75 65 6e  63 79 20 63 6f 6d 70 6f  | frequency compo|
00004f80  6e 65 6e 74 73 20 6f 66  20 61 20 73 6f 75 6e 64  |nents of a sound|
00004f90  20 77 61 76 65 2e 20 54  68 69 73 20 6f 6e 6c 79  | wave. This only|
00004fa0  20 6c 65 61 76 65 73 20  74 68 65 20 68 69 67 68  | leaves the high|
00004fb0  65 72 20 66 72 65 71 75  65 6e 63 79 20 63 6f 6d  |er frequency com|
00004fc0  70 6f 6e 65 6e 74 73 20  69 6e 20 74 68 65 20 6f  |ponents in the o|
00004fd0  75 74 70 75 74 20 77 61  76 65 2c 20 61 6e 64 20  |utput wave, and |
00004fe0  73 6f 20 74 68 65 20 6f  75 74 70 75 74 20 77 61  |so the output wa|
00004ff0  76 65 20 77 69 6c 6c 20  73 6f 75 6e 64 20 73 68  |ve will sound sh|
00005000  61 72 70 65 72 2e 20 46  69 67 75 72 65 20 31 37  |arper. Figure 17|
00005010  20 73 68 6f 77 73 20 68  6f 77 20 68 69 67 68 20  | shows how high |
00005020  70 61 73 73 20 66 69 6c  74 65 72 69 6e 67 20 61  |pass filtering a|
00005030  20 73 71 75 61 72 65 20  77 61 76 65 20 61 66 66  | square wave aff|
00005040  65 63 74 20 74 68 65 20  77 61 76 65 66 6f 72 6d  |ect the waveform|
00005050  2e 20 4e 6f 74 69 63 65  20 74 68 61 74 20 74 68  |. Notice that th|
00005060  65 20 73 68 61 72 70 20  65 64 67 65 73 20 61 72  |e sharp edges ar|
00005070  65 20 6d 61 64 65 20 65  76 65 6e 20 73 68 61 72  |e made even shar|
00005080  70 65 72 2e 0a 0a 66 69  67 75 72 65 20 31 37 2e  |per...figure 17.|
00005090  20 68 69 67 68 20 70 61  73 73 20 66 69 6c 74 65  | high pass filte|
000050a0  72 69 6e 67 20 61 20 73  71 75 61 72 65 20 77 61  |ring a square wa|
000050b0  76 65 2e 0a 0a 54 6f 20  65 78 70 65 72 69 6d 65  |ve...To experime|
000050c0  6e 74 20 77 69 74 68 20  74 68 69 73 20 6f 62 6a  |nt with this obj|
000050d0  65 63 74 2c 20 6c 6f 61  64 20 65 78 61 6d 70 6c  |ect, load exampl|
000050e0  65 20 73 68 65 65 74 20  31 30 2e 20 41 67 61 69  |e sheet 10. Agai|
000050f0  6e 20 74 68 65 20 6f 72  69 67 69 6e 61 6c 20 77  |n the original w|
00005100  61 76 65 20 66 72 6f 6d  20 74 68 65 20 6f 73 63  |ave from the osc|
00005110  69 6c 6c 61 74 6f 72 20  69 73 20 66 65 64 20 69  |illator is fed i|
00005120  6e 74 6f 20 74 68 65 20  75 70 70 65 72 20 69 6e  |nto the upper in|
00005130  70 75 74 20 28 42 4c 41  43 4b 29 20 6f 66 20 74  |put (BLACK) of t|
00005140  68 65 20 66 69 6c 74 65  72 20 61 6e 64 20 74 68  |he filter and th|
00005150  65 20 61 6d 6f 75 6e 74  20 6f 66 20 66 69 6c 74  |e amount of filt|
00005160  65 72 69 6e 67 20 69 73  20 63 6f 6e 74 72 6f 6c  |ering is control|
00005170  6c 65 64 20 62 79 20 74  68 65 20 6c 6f 77 65 72  |led by the lower|
00005180  20 28 52 45 44 29 20 69  6e 70 75 74 20 6f 66 20  | (RED) input of |
00005190  74 68 65 20 66 69 6c 74  65 72 2e 20 54 68 65 72  |the filter. Ther|
000051a0  65 20 61 6c 73 6f 20 69  73 20 61 20 63 6f 6e 73  |e also is a cons|
000051b0  74 61 6e 74 20 6d 75 6c  74 69 70 6c 69 65 72 20  |tant multiplier |
000051c0  77 68 69 63 68 20 6d 75  6c 74 69 70 6c 69 65 73  |which multiplies|
000051d0  20 74 68 65 20 6f 75 74  70 75 74 20 73 69 67 6e  | the output sign|
000051e0  61 6c 20 62 79 20 30 2e  35 2c 20 73 6f 20 74 68  |al by 0.5, so th|
000051f0  61 74 20 74 68 65 20 27  73 70 69 6b 65 73 27 20  |at the 'spikes' |
00005200  77 6f 6e 27 74 20 62 65  20 63 6c 69 70 70 65 64  |won't be clipped|
00005210  2e 20 54 68 69 73 20 74  69 6d 65 2c 20 61 20 76  |. This time, a v|
00005220  61 6c 75 65 20 6f 66 20  30 20 61 70 70 6c 69 65  |alue of 0 applie|
00005230  64 20 74 6f 20 74 68 69  73 20 69 6e 70 75 74 2c  |d to this input,|
00005240  20 77 69 6c 6c 20 63 61  75 73 65 20 6e 6f 20 66  | will cause no f|
00005250  69 6c 74 65 72 69 6e 67  20 74 6f 20 74 61 6b 65  |iltering to take|
00005260  20 70 6c 61 63 65 2c 20  73 6f 20 74 68 69 73 20  | place, so this |
00005270  77 6f 72 6b 73 20 6f 70  70 6f 73 69 74 65 20 74  |works opposite t|
00005280  6f 20 74 68 65 20 77 61  79 20 74 68 61 74 20 74  |o the way that t|
00005290  68 65 20 6c 6f 77 20 70  61 73 73 20 66 69 6c 74  |he low pass filt|
000052a0  65 72 20 77 6f 72 6b 73  2e 20 54 6f 20 73 68 6f  |er works. To sho|
000052b0  77 20 77 68 61 74 20 6f  74 68 65 72 20 76 61 6c  |w what other val|
000052c0  75 65 73 20 64 6f 20 74  6f 20 74 68 65 20 66 69  |ues do to the fi|
000052d0  6c 74 65 72 69 6e 67 20  63 68 61 6e 67 65 20 74  |ltering change t|
000052e0  68 65 20 66 69 6c 74 65  72 20 63 6f 6e 73 74 61  |he filter consta|
000052f0  6e 74 20 6f 66 20 74 68  69 73 20 73 68 65 65 74  |nt of this sheet|
00005300  20 74 6f 20 30 2e 30 31  2c 20 30 2e 30 35 2c 20  | to 0.01, 0.05, |
00005310  30 2e 35 2c 20 61 6e 64  20 31 2e 20 45 78 61 6d  |0.5, and 1. Exam|
00005320  69 6e 65 20 61 6e 64 20  6c 69 73 74 65 6e 20 74  |ine and listen t|
00005330  6f 20 74 68 65 20 66 69  6e 61 6c 20 77 61 76 65  |o the final wave|
00005340  66 6f 72 6d 2e 20 41 6c  73 6f 20 74 72 79 20 66  |form. Also try f|
00005350  69 6c 74 65 72 69 6e 67  20 61 20 74 72 69 61 6e  |iltering a trian|
00005360  67 6c 65 20 77 61 76 65  2c 20 61 20 72 61 6d 70  |gle wave, a ramp|
00005370  20 77 61 76 65 2c 20 61  20 73 69 6e 65 20 77 61  | wave, a sine wa|
00005380  76 65 20 61 6e 64 20 79  6f 75 72 20 6f 77 6e 20  |ve and your own |
00005390  68 61 6e 64 2d 64 72 61  77 6e 20 77 61 76 65 2e  |hand-drawn wave.|
000053a0  0a 0a 0a 47 65 6e 65 72  61 6c 20 46 75 6e 63 74  |...General Funct|
000053b0  69 6f 6e 20 20 20 20 20  20 20 0a 0a 54 68 65 20  |ion       ..The |
000053c0  66 75 6e 63 74 69 6f 6e  20 6f 66 20 74 68 69 73  |function of this|
000053d0  20 6f 62 6a 65 63 74 20  69 73 20 74 6f 20 61 70  | object is to ap|
000053e0  70 6c 79 20 61 20 75 73  65 72 20 64 65 66 69 6e  |ply a user defin|
000053f0  65 64 20 66 75 6e 63 74  69 6f 6e 20 6f 6e 20 61  |ed function on a|
00005400  20 73 69 67 6e 61 6c 2e  20 54 68 65 20 6f 75 74  | signal. The out|
00005410  70 75 74 20 76 61 6c 75  65 20 6f 66 20 74 68 69  |put value of thi|
00005420  73 20 6f 62 6a 65 63 74  20 63 61 6e 20 62 65 20  |s object can be |
00005430  77 72 69 74 74 65 6e 20  61 73 20 61 20 66 75 6e  |written as a fun|
00005440  63 74 69 6f 6e 20 6f 66  20 74 68 65 20 69 6e 70  |ction of the inp|
00005450  75 74 20 73 69 67 6e 61  6c 3a 20 4f 20 3d 20 66  |ut signal: O = f|
00005460  28 49 29 2e 20 54 68 65  20 66 75 6e 63 74 69 6f  |(I). The functio|
00005470  6e 20 69 73 20 64 65 74  65 72 6d 69 6e 65 64 20  |n is determined |
00005480  62 79 20 61 20 67 72 61  70 68 69 63 61 6c 20 72  |by a graphical r|
00005490  65 70 72 65 73 65 6e 74  61 74 69 6f 6e 20 6f 6e  |epresentation on|
000054a0  20 61 20 67 72 69 64 2e  20 54 61 6b 65 20 61 20  | a grid. Take a |
000054b0  6c 6f 6f 6b 20 61 74 20  66 69 67 75 72 65 20 31  |look at figure 1|
000054c0  38 2e 20 54 68 69 73 20  69 73 20 74 68 65 20 47  |8. This is the G|
000054d0  65 6e 65 72 61 6c 20 46  75 6e 63 74 69 6f 6e 20  |eneral Function |
000054e0  77 69 6e 64 6f 77 20 61  6e 64 20 69 73 20 75 73  |window and is us|
000054f0  65 64 20 74 6f 20 64 65  66 69 6e 65 20 74 68 69  |ed to define thi|
00005500  73 20 66 75 6e 63 74 69  6f 6e 2e 20 0a 0a 66 69  |s function. ..fi|
00005510  67 75 72 65 20 31 38 2e  20 47 65 6e 65 72 61 6c  |gure 18. General|
00005520  20 46 75 6e 63 74 69 6f  6e 20 77 69 6e 64 6f 77  | Function window|
00005530  2e 0a 0a 54 68 65 20 68  6f 72 69 7a 6f 6e 74 61  |...The horizonta|
00005540  6c 20 61 78 69 73 20 69  73 20 74 68 65 20 69 6e  |l axis is the in|
00005550  70 75 74 20 61 78 69 73  20 69 6e 20 74 68 65 20  |put axis in the |
00005560  72 61 6e 67 65 20 66 72  6f 6d 20 2d 31 20 28 6c  |range from -1 (l|
00005570  65 66 74 29 20 74 6f 20  2b 31 20 28 72 69 67 68  |eft) to +1 (righ|
00005580  74 29 20 61 6e 64 20 74  68 65 20 76 65 72 74 69  |t) and the verti|
00005590  63 61 6c 20 61 78 69 73  20 69 73 20 74 68 65 20  |cal axis is the |
000055a0  6f 75 74 70 75 74 20 61  78 69 73 20 61 6c 73 6f  |output axis also|
000055b0  20 69 6e 20 74 68 65 20  72 61 6e 67 65 20 66 72  | in the range fr|
000055c0  6f 6d 20 2d 31 20 28 62  6f 74 74 6f 6d 29 20 74  |om -1 (bottom) t|
000055d0  6f 20 2b 31 20 28 74 6f  70 29 2e 20 20 49 66 20  |o +1 (top).  If |
000055e0  79 6f 75 20 61 72 65 20  6e 6f 74 20 66 61 6d 69  |you are not fami|
000055f0  6c 69 61 72 20 77 69 74  68 20 66 75 6e 63 74 69  |liar with functi|
00005600  6f 6e 73 20 74 61 6b 65  20 61 20 6c 6f 6f 6b 20  |ons take a look |
00005610  61 74 20 61 6e 20 65 78  61 6d 70 6c 65 20 66 75  |at an example fu|
00005620  6e 63 74 69 6f 6e 20 69  6e 20 66 69 67 75 72 65  |nction in figure|
00005630  20 31 39 2e 0a 66 69 67  75 72 65 20 31 39 2e 20  | 19..figure 19. |
00005640  74 68 65 20 6f 75 74 70  75 74 20 76 61 6c 75 65  |the output value|
00005650  20 69 73 20 61 20 66 75  6e 63 74 69 6f 6e 20 6f  | is a function o|
00005660  66 20 74 68 65 20 69 6e  70 75 74 20 76 61 6c 75  |f the input valu|
00005670  65 2e 0a 0a 54 68 69 73  20 65 78 61 6d 70 6c 65  |e...This example|
00005680  20 73 68 6f 77 73 20 68  6f 77 20 6f 75 74 70 75  | shows how outpu|
00005690  74 20 76 61 6c 75 65 73  20 61 72 65 20 64 65 74  |t values are det|
000056a0  65 72 6d 69 6e 65 64 20  62 79 20 69 6e 70 75 74  |ermined by input|
000056b0  20 76 61 6c 75 65 73 20  6f 66 3a 20 2d 30 2e 35  | values of: -0.5|
000056c0  20 2d 30 2e 32 35 20 61  6e 64 20 30 2e 37 35 2e  | -0.25 and 0.75.|
000056d0  20 54 68 65 20 6f 75 74  70 75 74 20 76 61 6c 75  | The output valu|
000056e0  65 73 20 61 72 65 20 72  65 73 70 65 63 74 69 76  |es are respectiv|
000056f0  65 6c 79 20 30 2e 35 2c  20 30 2e 32 35 20 61 6e  |ely 0.5, 0.25 an|
00005700  64 20 2d 30 2e 35 2e 20  49 6e 70 75 74 20 76 61  |d -0.5. Input va|
00005710  6c 75 65 73 20 6f 75 74  20 6f 66 20 74 68 65 20  |lues out of the |
00005720  72 61 6e 67 65 20 66 72  6f 6d 20 2d 31 20 74 6f  |range from -1 to|
00005730  20 31 20 61 72 65 20 63  6c 69 70 70 65 64 2e 20  | 1 are clipped. |
00005740  53 6f 20 61 6e 20 69 6e  70 75 74 20 76 61 6c 75  |So an input valu|
00005750  65 20 6f 66 20 66 6f 72  20 65 78 61 6d 70 6c 65  |e of for example|
00005760  20 2d 31 30 30 20 77 69  6c 6c 20 62 65 20 63 6c  | -100 will be cl|
00005770  69 70 70 65 64 20 74 6f  20 2d 31 20 61 6e 64 20  |ipped to -1 and |
00005780  61 6e 20 69 6e 70 75 74  20 76 61 6c 75 65 20 6f  |an input value o|
00005790  66 20 35 30 20 77 69 6c  6c 20 62 65 20 63 6c 69  |f 50 will be cli|
000057a0  70 70 65 64 20 74 6f 20  2b 31 2e 20 54 68 65 20  |pped to +1. The |
000057b0  64 65 66 61 75 6c 74 20  66 75 6e 63 74 69 6f 6e  |default function|
000057c0  20 69 73 20 74 68 65 20  69 64 65 6e 74 69 74 79  | is the identity|
000057d0  20 66 75 6e 63 74 69 6f  6e 2c 20 73 6f 20 74 68  | function, so th|
000057e0  65 20 6f 75 74 70 75 74  20 76 61 6c 75 65 20 77  |e output value w|
000057f0  69 6c 6c 20 62 65 20 74  68 65 20 69 6e 70 75 74  |ill be the input|
00005800  20 76 61 6c 75 65 2e 0a  0a 54 68 65 20 67 65 6e  | value...The gen|
00005810  65 72 61 6c 20 66 75 6e  63 74 69 6f 6e 20 6f 62  |eral function ob|
00005820  6a 65 63 74 20 63 61 6e  20 62 65 20 75 73 65 64  |ject can be used|
00005830  20 66 6f 72 20 74 72 61  6e 73 66 6f 72 6d 69 6e  | for transformin|
00005840  67 20 6f 6e 65 20 77 61  76 65 20 74 6f 20 61 20  |g one wave to a |
00005850  64 69 66 66 65 72 65 6e  74 20 6f 6e 65 2e 20 46  |different one. F|
00005860  69 67 75 72 65 20 32 30  20 67 69 76 65 73 20 73  |igure 20 gives s|
00005870  6f 6d 65 20 65 78 61 6d  70 6c 65 73 20 6f 66 20  |ome examples of |
00005880  68 6f 77 20 61 20 73 69  6e 65 20 77 61 76 65 20  |how a sine wave |
00005890  63 61 6e 20 62 65 20 64  69 73 74 6f 72 74 65 64  |can be distorted|
000058a0  2e 20 54 68 65 20 66 69  67 75 72 65 20 73 68 6f  |. The figure sho|
000058b0  77 73 20 74 68 65 20 61  70 70 6c 69 65 64 20 66  |ws the applied f|
000058c0  75 6e 63 74 69 6f 6e 20  61 6e 64 20 74 68 65 20  |unction and the |
000058d0  6f 75 74 70 75 74 20 77  61 76 65 2e 20 54 72 79  |output wave. Try|
000058e0  20 74 6f 20 6d 61 6b 65  20 61 20 73 68 65 65 74  | to make a sheet|
000058f0  20 77 68 69 63 68 20 70  72 6f 64 75 63 65 73 20  | which produces |
00005900  74 68 65 73 65 20 72 65  73 75 6c 74 73 20 28 75  |these results (u|
00005910  73 65 20 61 20 63 6f 6e  73 74 61 6e 74 20 67 65  |se a constant ge|
00005920  6e 65 72 61 74 6f 72 2c  20 61 6e 20 6f 73 63 69  |nerator, an osci|
00005930  6c 6c 61 74 6f 72 2c 20  61 20 67 65 6e 65 72 61  |llator, a genera|
00005940  6c 20 66 75 6e 63 74 69  6f 6e 20 61 6e 64 20 61  |l function and a|
00005950  6e 20 6f 75 74 70 75 74  20 6f 62 6a 65 63 74 29  |n output object)|
00005960  2e 0a 0a 66 69 67 75 72  65 20 32 30 2e 20 64 69  |...figure 20. di|
00005970  73 74 6f 72 74 69 6f 6e  20 6f 66 20 61 20 73 69  |stortion of a si|
00005980  6e 65 20 77 61 76 65 2e  0a 0a 0a 0a 0a 0a 0a 44  |ne wave........D|
00005990  65 6c 61 79 20 4c 69 6e  65 0a 0a 54 68 69 73 20  |elay Line..This |
000059a0  6f 62 6a 65 63 74 20 64  65 6c 61 79 73 20 74 68  |object delays th|
000059b0  65 20 69 6e 70 75 74 20  73 69 67 6e 61 6c 20 28  |e input signal (|
000059c0  42 4c 41 43 4b 29 20 62  79 20 61 20 6d 61 78 69  |BLACK) by a maxi|
000059d0  6d 75 6d 20 6f 66 20 36  34 20 76 61 6c 75 65 73  |mum of 64 values|
000059e0  2e 20 54 68 65 20 61 6d  6f 75 6e 74 20 6f 66 20  |. The amount of |
000059f0  64 65 6c 61 79 20 69 73  20 63 6f 6e 74 72 6f 6c  |delay is control|
00005a00  6c 65 64 20 62 79 20 74  68 65 20 63 6f 6e 74 72  |led by the contr|
00005a10  6f 6c 20 73 69 67 6e 61  6c 20 28 52 45 44 29 2e  |ol signal (RED).|
00005a20  20 46 6f 72 20 65 78 61  6d 70 6c 65 20 61 20 76  | For example a v|
00005a30  61 6c 75 65 20 6f 66 20  30 20 61 74 20 74 68 65  |alue of 0 at the|
00005a40  20 63 6f 6e 74 72 6f 6c  20 69 6e 70 75 74 20 64  | control input d|
00005a50  6f 65 73 6e 27 74 20 64  65 6c 61 79 20 74 68 65  |oesn't delay the|
00005a60  20 73 69 67 6e 61 6c 2c  20 77 68 69 6c 65 20 61  | signal, while a|
00005a70  20 76 61 6c 75 65 20 6f  66 20 30 2e 35 20 64 65  | value of 0.5 de|
00005a80  6c 61 79 73 20 74 68 65  20 69 6e 70 75 74 20 73  |lays the input s|
00005a90  69 67 6e 61 6c 20 62 79  20 33 32 20 76 61 6c 75  |ignal by 32 valu|
00005aa0  65 73 2e 20 54 68 69 73  20 6d 65 61 6e 73 20 74  |es. This means t|
00005ab0  68 61 74 20 61 6e 20 69  6e 70 75 74 20 76 61 6c  |hat an input val|
00005ac0  75 65 20 77 69 6c 6c 20  61 72 72 69 76 65 20 33  |ue will arrive 3|
00005ad0  32 20 63 61 6c 63 75 6c  61 74 69 6f 6e 73 20 6c  |2 calculations l|
00005ae0  61 74 65 72 20 61 74 20  74 68 65 20 6f 75 74 70  |ater at the outp|
00005af0  75 74 2e 20 49 66 20 79  6f 75 20 77 61 6e 74 20  |ut. If you want |
00005b00  6d 6f 72 65 20 64 65 6c  61 79 2c 20 61 64 64 20  |more delay, add |
00005b10  6d 6f 72 65 20 64 65 6c  61 79 20 62 6c 6f 63 6b  |more delay block|
00005b20  73 20 74 6f 20 66 6f 72  6d 20 61 20 73 6f 72 74  |s to form a sort|
00005b30  20 6f 66 20 70 69 70 65  6c 69 6e 65 2e 20 45 78  | of pipeline. Ex|
00005b40  61 6d 70 6c 65 20 73 68  65 65 74 20 31 31 20 67  |ample sheet 11 g|
00005b50  69 76 65 73 20 61 6e 20  65 78 61 6d 70 6c 65 20  |ives an example |
00005b60  6f 66 20 74 68 65 20 44  65 6c 61 79 20 4c 69 6e  |of the Delay Lin|
00005b70  65 20 6f 62 6a 65 63 74  2e 20 57 68 65 6e 20 74  |e object. When t|
00005b80  68 65 20 63 61 6c 63 75  6c 61 74 69 6f 6e 20 73  |he calculation s|
00005b90  74 61 72 74 73 2c 20 74  68 65 20 64 65 6c 61 79  |tarts, the delay|
00005ba0  20 6f 62 6a 65 63 74 20  69 73 20 66 69 6c 6c 65  | object is fille|
00005bb0  64 20 77 69 74 68 20 7a  65 72 6f 27 73 20 28 74  |d with zero's (t|
00005bc0  68 69 73 20 69 73 20 64  6f 6e 65 20 62 79 20 21  |his is done by !|
00005bd0  53 46 58 4d 29 2e 20 41  74 20 74 68 65 20 63 6f  |SFXM). At the co|
00005be0  6e 74 72 6f 6c 20 69 6e  70 75 74 20 69 73 20 61  |ntrol input is a|
00005bf0  20 76 61 6c 75 65 20 6f  66 20 30 2e 35 20 77 68  | value of 0.5 wh|
00005c00  69 63 68 20 64 65 6c 61  79 73 20 74 68 65 20 69  |ich delays the i|
00005c10  6e 70 75 74 20 73 69 67  6e 61 6c 2c 20 69 6e 20  |nput signal, in |
00005c20  74 68 69 73 20 65 78 61  6d 70 6c 65 20 27 2b 31  |this example '+1|
00005c30  27 2c 20 62 79 20 33 32  20 76 61 6c 75 65 73 2e  |', by 32 values.|
00005c40  20 57 68 65 6e 20 79 6f  75 20 63 61 6c 63 75 6c  | When you calcul|
00005c50  61 74 65 20 74 68 65 20  73 61 6d 70 6c 65 2c 20  |ate the sample, |
00005c60  79 6f 75 20 77 69 6c 6c  20 73 65 65 20 74 68 61  |you will see tha|
00005c70  74 20 74 68 65 20 66 69  72 73 74 20 33 32 20 76  |t the first 32 v|
00005c80  61 6c 75 65 73 20 61 72  65 20 30 2c 20 77 68 69  |alues are 0, whi|
00005c90  6c 65 20 74 68 65 20 6c  61 73 74 20 33 32 20 76  |le the last 32 v|
00005ca0  61 6c 75 65 73 20 61 72  65 20 31 20 28 74 68 65  |alues are 1 (the|
00005cb0  20 73 61 6d 70 6c 65 20  73 69 7a 65 20 69 73 20  | sample size is |
00005cc0  73 65 74 20 74 6f 20 36  34 29 2e 20 54 68 69 73  |set to 64). This|
00005cd0  20 6f 62 6a 65 63 74 20  63 61 6e 20 62 65 20 75  | object can be u|
00005ce0  73 65 64 20 66 6f 72 20  65 78 61 6d 70 6c 65 20  |sed for example |
00005cf0  74 6f 20 6d 61 6b 65 20  65 63 68 6f 27 73 20 28  |to make echo's (|
00005d00  73 65 65 20 6c 61 74 65  72 20 6f 6e 29 2e 0a 0a  |see later on)...|
00005d10  0a 53 61 6d 70 6c 65 20  26 20 48 6f 6c 64 0a 20  |.Sample & Hold. |
00005d20  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00005d50  20 20 20 20 20 20 20 20  0a 54 68 69 73 20 6f 62  |        .This ob|
00005d60  6a 65 63 74 20 68 61 73  20 61 20 6b 69 6e 64 20  |ject has a kind |
00005d70  6f 66 20 6d 65 6d 6f 72  79 20 66 75 6e 63 74 69  |of memory functi|
00005d80  6f 6e 2e 20 49 74 20 63  61 6e 20 62 65 20 75 73  |on. It can be us|
00005d90  65 64 20 74 6f 20 72 65  6d 65 6d 62 65 72 20 61  |ed to remember a|
00005da0  20 76 61 6c 75 65 20 64  75 72 69 6e 67 20 74 68  | value during th|
00005db0  65 20 63 61 6c 63 75 6c  61 74 69 6f 6e 2e 20 54  |e calculation. T|
00005dc0  68 65 20 76 61 6c 75 65  20 74 6f 20 62 65 20 73  |he value to be s|
00005dd0  74 6f 72 65 64 20 73 68  6f 75 6c 64 20 62 65 20  |tored should be |
00005de0  70 72 65 73 65 6e 74 20  61 74 20 74 68 65 20 73  |present at the s|
00005df0  69 67 6e 61 6c 20 69 6e  70 75 74 20 28 42 4c 41  |ignal input (BLA|
00005e00  43 4b 29 2e 20 57 68 65  6e 20 74 68 65 20 63 6f  |CK). When the co|
00005e10  6e 74 72 6f 6c 20 69 6e  70 75 74 20 28 52 45 44  |ntrol input (RED|
00005e20  29 20 67 6f 65 73 20 66  72 6f 6d 20 6e 65 67 61  |) goes from nega|
00005e30  74 69 76 65 20 74 6f 20  70 6f 73 69 74 69 76 65  |tive to positive|
00005e40  20 74 68 65 20 76 61 6c  75 65 20 61 74 20 74 68  | the value at th|
00005e50  65 20 73 69 67 6e 61 6c  20 69 6e 70 75 74 20 69  |e signal input i|
00005e60  73 20 73 74 6f 72 65 64  20 61 6e 64 20 77 69 6c  |s stored and wil|
00005e70  6c 20 62 65 20 70 72 65  73 65 6e 74 20 61 74 20  |l be present at |
00005e80  74 68 65 20 6f 75 74 70  75 74 2e 20 54 68 69 73  |the output. This|
00005e90  20 76 61 6c 75 65 20 61  74 20 74 68 65 20 6f 75  | value at the ou|
00005ea0  74 70 75 74 20 77 69 6c  6c 20 72 65 6d 61 69 6e  |tput will remain|
00005eb0  20 74 68 65 20 73 61 6d  65 20 75 6e 74 69 6c 20  | the same until |
00005ec0  74 68 65 20 6e 65 78 74  20 6e 65 67 61 74 69 76  |the next negativ|
00005ed0  65 20 74 6f 20 70 6f 73  69 74 69 76 65 20 74 72  |e to positive tr|
00005ee0  61 6e 73 69 74 69 6f 6e  20 61 74 20 74 68 65 20  |ansition at the |
00005ef0  63 6f 6e 74 72 6f 6c 20  69 6e 70 75 74 2e 20 54  |control input. T|
00005f00  6f 20 6d 61 6b 65 20 74  68 69 6e 67 73 20 6d 6f  |o make things mo|
00005f10  72 65 20 63 6c 65 61 72  2c 20 6c 6f 61 64 20 65  |re clear, load e|
00005f20  78 61 6d 70 6c 65 20 73  68 65 65 74 20 31 32 2e  |xample sheet 12.|
00005f30  20 48 61 76 65 20 61 20  6c 6f 6f 6b 20 61 74 20  | Have a look at |
00005f40  74 68 65 20 63 6f 6e 74  65 6e 74 73 20 6f 66 20  |the contents of |
00005f50  74 68 65 20 6f 73 63 69  6c 6c 61 74 6f 72 73 20  |the oscillators |
00005f60  61 6e 64 20 74 68 65 20  63 6f 6e 73 74 61 6e 74  |and the constant|
00005f70  73 2e 20 43 61 6c 63 75  6c 61 74 65 20 74 68 65  |s. Calculate the|
00005f80  20 73 68 65 65 74 20 61  6e 64 20 65 78 61 6d 69  | sheet and exami|
00005f90  6e 65 20 74 68 65 20 72  65 73 75 6c 74 2e 20 4e  |ne the result. N|
00005fa0  6f 77 20 63 68 61 6e 67  65 20 74 68 65 20 6c 6f  |ow change the lo|
00005fb0  77 65 72 20 63 6f 6e 73  74 61 6e 74 20 74 6f 20  |wer constant to |
00005fc0  36 34 2e 20 43 61 6c 63  75 6c 61 74 65 20 61 6e  |64. Calculate an|
00005fd0  64 20 65 78 61 6d 69 6e  65 20 74 68 65 20 72 65  |d examine the re|
00005fe0  73 75 6c 74 20 61 67 61  69 6e 2e 20 0a 20 0a 0a  |sult again. . ..|
00005ff0  49 6e 70 75 74 20 20 20  20 20 20 20 20 20 20 20  |Input           |
00006000  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006010  20 20 20 20 20 20 20 20  20 20 0a 0a 57 69 74 68  |          ..With|
00006020  20 21 53 46 58 4d 20 69  74 20 69 73 20 61 6c 73  | !SFXM it is als|
00006030  6f 20 70 6f 73 73 69 62  6c 65 20 74 6f 20 70 65  |o possible to pe|
00006040  72 66 6f 72 6d 20 63 61  6c 63 75 6c 61 74 69 6f  |rform calculatio|
00006050  6e 73 20 6f 6e 20 73 61  6d 70 6c 65 20 66 69 6c  |ns on sample fil|
00006060  65 73 2e 20 54 68 69 73  20 63 61 6e 20 62 65 20  |es. This can be |
00006070  64 6f 6e 65 20 62 79 20  75 73 69 6e 67 20 74 68  |done by using th|
00006080  65 20 49 6e 70 75 74 20  6f 62 6a 65 63 74 2e 20  |e Input object. |
00006090  54 68 69 73 20 6f 62 6a  65 63 74 20 6f 75 74 70  |This object outp|
000060a0  75 74 73 20 74 68 65 20  63 6f 6e 74 65 6e 74 73  |uts the contents|
000060b0  20 6f 66 20 61 20 73 61  6d 70 6c 65 20 66 69 6c  | of a sample fil|
000060c0  65 2e 20 46 69 67 75 72  65 20 32 31 20 73 68 6f  |e. Figure 21 sho|
000060d0  77 73 20 79 6f 75 20 74  68 65 20 69 6e 70 75 74  |ws you the input|
000060e0  20 77 69 6e 64 6f 77 2e  0a 66 69 67 75 72 65 20  | window..figure |
000060f0  32 31 2e 20 74 68 65 20  69 6e 70 75 74 20 77 69  |21. the input wi|
00006100  6e 64 6f 77 2e 0a 0a 0a  0a 59 6f 75 20 63 61 6e  |ndow.....You can|
00006110  20 65 6e 74 65 72 20 74  68 65 20 66 69 6c 65 6e  | enter the filen|
00006120  61 6d 65 20 6f 66 20 74  68 65 20 73 61 6d 70 6c  |ame of the sampl|
00006130  65 20 66 69 6c 65 20 68  65 72 65 2c 20 6f 72 20  |e file here, or |
00006140  64 72 61 67 20 74 68 65  20 73 61 6d 70 6c 65 20  |drag the sample |
00006150  66 69 6c 65 20 69 6e 74  6f 20 74 68 69 73 20 77  |file into this w|
00006160  69 6e 64 6f 77 2c 20 77  68 69 63 68 20 68 61 73  |indow, which has|
00006170  20 74 68 65 20 73 61 6d  65 20 65 66 66 65 63 74  | the same effect|
00006180  2e 20 44 6f 6e 27 74 20  66 6f 72 67 65 74 20 74  |. Don't forget t|
00006190  6f 20 73 65 74 20 74 68  65 20 73 65 74 20 74 68  |o set the set th|
000061a0  65 20 63 6f 72 72 65 63  74 20 73 61 6d 70 6c 65  |e correct sample|
000061b0  20 74 79 70 65 2e 20 4f  6e 6c 79 20 72 61 77 20  | type. Only raw |
000061c0  64 61 74 61 20 66 69 6c  65 73 20 63 61 6e 20 62  |data files can b|
000061d0  65 20 75 73 65 64 2e 20  49 66 20 74 68 65 20 73  |e used. If the s|
000061e0  61 6d 70 6c 65 20 6c 65  6e 67 74 68 20 69 6e 20  |ample length in |
000061f0  74 68 65 20 27 53 74 61  74 73 27 20 77 69 6e 64  |the 'Stats' wind|
00006200  6f 77 20 69 73 6e 27 74  20 65 71 75 61 6c 20 74  |ow isn't equal t|
00006210  6f 20 74 68 65 20 73 69  7a 65 20 6f 66 20 74 68  |o the size of th|
00006220  65 20 73 61 6d 70 6c 65  20 66 69 6c 65 2c 20 74  |e sample file, t|
00006230  68 65 20 73 61 6d 70 6c  65 20 66 69 6c 65 20 77  |he sample file w|
00006240  69 6c 6c 20 62 65 20 73  74 72 65 74 63 68 65 64  |ill be stretched|
00006250  20 6f 72 20 63 6f 6d 70  72 65 73 73 65 64 20 73  | or compressed s|
00006260  6f 20 74 68 61 74 20 69  74 20 77 69 6c 6c 20 66  |o that it will f|
00006270  69 74 20 69 6e 74 6f 20  74 68 65 20 63 61 6c 63  |it into the calc|
00006280  75 6c 61 74 65 64 20 73  61 6d 70 6c 65 2e 20 54  |ulated sample. T|
00006290  68 69 73 20 77 69 6c 6c  20 6f 6e 6c 79 20 68 61  |his will only ha|
000062a0  70 70 65 6e 20 69 66 20  74 68 65 20 27 53 74 72  |ppen if the 'Str|
000062b0  65 74 63 68 20 53 61 6d  70 6c 65 27 20 69 63 6f  |etch Sample' ico|
000062c0  6e 20 69 73 20 27 6f 6e  27 2e 20 49 66 20 69 74  |n is 'on'. If it|
000062d0  20 69 73 20 27 6f 66 66  27 20 74 68 69 73 20 77  | is 'off' this w|
000062e0  69 6c 6c 20 6e 6f 74 20  62 65 20 74 68 65 20 63  |ill not be the c|
000062f0  61 73 65 2e 20 49 66 20  79 6f 75 20 77 61 6e 74  |ase. If you want|
00006300  20 74 68 65 20 62 61 73  65 20 70 69 74 63 68 20  | the base pitch |
00006310  6f 66 20 74 68 65 20 69  6e 70 75 74 2d 73 61 6d  |of the input-sam|
00006320  70 6c 65 20 74 6f 20 72  65 6d 61 69 6e 20 74 68  |ple to remain th|
00006330  65 20 73 61 6d 65 2c 20  6d 61 6b 65 20 74 68 65  |e same, make the|
00006340  20 73 61 6d 70 6c 65 20  6c 65 6e 67 74 68 20 69  | sample length i|
00006350  6e 20 74 68 65 20 27 53  74 61 74 73 27 20 77 69  |n the 'Stats' wi|
00006360  6e 64 6f 77 20 65 71 75  61 6c 20 74 6f 20 74 68  |ndow equal to th|
00006370  65 20 73 69 7a 65 20 6f  66 20 74 68 65 20 73 61  |e size of the sa|
00006380  6d 70 6c 65 20 66 69 6c  65 2e 0a 0a 0a 0a 35 2e  |mple file.....5.|
00006390  20 41 64 76 61 6e 63 65  64 20 74 65 63 68 6e 69  | Advanced techni|
000063a0  71 75 65 73 2e 0a 20 20  20 20 20 20 20 20 20 20  |ques..          |
000063b0  20 20 20 20 20 20 20 20  20 20 0a 0a 54 68 69 73  |          ..This|
000063c0  20 63 68 61 70 74 65 72  20 64 65 73 63 72 69 62  | chapter describ|
000063d0  65 73 20 74 68 65 20 74  65 63 68 6e 69 71 75 65  |es the technique|
000063e0  73 20 77 68 69 63 68 20  68 61 76 65 20 62 65 65  |s which have bee|
000063f0  6e 20 75 73 65 64 20 74  6f 20 63 72 65 61 74 65  |n used to create|
00006400  20 61 6c 6c 20 74 68 65  20 73 61 6d 70 6c 65 73  | all the samples|
00006410  20 69 6e 20 74 68 65 20  27 53 68 65 65 74 73 27  | in the 'Sheets'|
00006420  20 64 69 72 65 63 74 6f  72 79 2e 20 54 68 65 20  | directory. The |
00006430  65 78 61 6d 70 6c 65 73  20 61 72 65 20 71 75 69  |examples are qui|
00006440  74 65 20 69 6e 74 65 72  65 73 74 69 6e 67 20 6f  |te interesting o|
00006450  6e 20 74 68 65 69 72 20  6f 77 6e 2c 20 62 75 74  |n their own, but|
00006460  20 74 68 65 79 20 61 72  65 20 65 76 65 6e 20 6d  | they are even m|
00006470  6f 72 65 20 69 6e 74 65  72 65 73 74 69 6e 67 20  |ore interesting |
00006480  77 68 65 6e 20 79 6f 75  20 63 6f 6d 62 69 6e 65  |when you combine|
00006490  20 74 68 65 6d 2e 20 57  69 74 68 20 65 61 63 68  | them. With each|
000064a0  20 65 78 61 6d 70 6c 65  20 63 6f 6d 65 73 20 61  | example comes a|
000064b0  20 73 68 65 65 74 2c 20  77 68 69 63 68 20 72 65  | sheet, which re|
000064c0  73 69 64 65 73 20 69 6e  20 74 68 65 20 64 69 72  |sides in the dir|
000064d0  65 63 74 6f 72 79 20 53  68 65 65 74 73 2e 45 78  |ectory Sheets.Ex|
000064e0  61 6d 70 6c 65 73 2e 41  64 76 61 6e 63 65 64 2e  |amples.Advanced.|
000064f0  20 4d 61 6b 65 20 73 75  72 65 20 79 6f 75 20 75  | Make sure you u|
00006500  6e 64 65 72 73 74 61 6e  64 20 74 68 65 20 66 75  |nderstand the fu|
00006510  6e 63 74 69 6f 6e 20 6f  66 20 74 68 65 20 73 68  |nction of the sh|
00006520  65 65 74 20 62 79 20 65  78 61 6d 69 6e 69 6e 67  |eet by examining|
00006530  20 61 6e 64 20 65 78 70  65 72 69 6d 65 6e 74 69  | and experimenti|
00006540  6e 67 20 77 69 74 68 20  69 74 2e 0a 0a 0a 35 2e  |ng with it....5.|
00006550  31 2e 20 45 6e 76 65 6c  6f 70 65 73 2e 0a 0a 41  |1. Envelopes...A|
00006560  6e 20 65 6e 76 65 6c 6f  70 65 20 69 73 20 74 68  |n envelope is th|
00006570  65 20 76 61 72 69 61 74  69 6f 6e 20 6f 66 20 74  |e variation of t|
00006580  68 65 20 76 6f 6c 75 6d  65 20 6f 66 20 61 20 73  |he volume of a s|
00006590  6f 75 6e 64 2e 20 4d 6f  73 74 20 69 6e 73 74 72  |ound. Most instr|
000065a0  75 6d 65 6e 74 73 20 68  61 76 65 20 61 6e 20 41  |uments have an A|
000065b0  44 53 52 20 65 6e 76 65  6c 6f 70 65 2c 20 77 68  |DSR envelope, wh|
000065c0  69 63 68 20 73 74 61 6e  64 73 20 66 6f 72 20 41  |ich stands for A|
000065d0  74 74 61 63 6b 2c 20 44  65 63 61 79 2c 20 53 75  |ttack, Decay, Su|
000065e0  73 74 61 69 6e 20 61 6e  64 20 52 65 6c 65 61 73  |stain and Releas|
000065f0  65 2e 20 41 20 74 79 70  69 63 61 6c 20 41 44 53  |e. A typical ADS|
00006600  52 20 65 6e 76 65 6c 6f  70 65 20 69 73 20 73 68  |R envelope is sh|
00006610  6f 77 6e 20 69 6e 20 66  69 67 75 72 65 20 32 32  |own in figure 22|
00006620  2e 0a 66 69 67 75 72 65  20 32 32 2e 20 61 6e 20  |..figure 22. an |
00006630  41 44 53 52 20 65 6e 76  65 6c 6f 70 65 2e 20 20  |ADSR envelope.  |
00006640  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00006650  20 20 20 20 20 20 20 20  20 0a 0a 54 68 65 20 61  |         ..The a|
00006660  74 74 61 63 6b 20 70 68  61 73 65 20 69 73 20 74  |ttack phase is t|
00006670  68 65 20 74 69 6d 65 20  74 68 61 74 20 74 68 65  |he time that the|
00006680  20 73 69 67 6e 61 6c 20  67 6f 65 73 20 66 72 6f  | signal goes fro|
00006690  6d 20 7a 65 72 6f 20 76  6f 6c 75 6d 65 20 74 6f  |m zero volume to|
000066a0  20 6d 61 78 69 6d 75 6d  20 76 6f 6c 75 6d 65 2e  | maximum volume.|
000066b0  20 49 6e 20 74 68 65 20  64 65 63 61 79 20 70 68  | In the decay ph|
000066c0  61 73 65 2c 20 74 68 65  20 76 6f 6c 75 6d 65 20  |ase, the volume |
000066d0  67 6f 65 73 20 66 72 6f  6d 20 6d 61 78 69 6d 75  |goes from maximu|
000066e0  6d 20 6c 65 76 65 6c 20  74 6f 20 73 75 73 74 61  |m level to susta|
000066f0  69 6e 20 6c 65 76 65 6c  2e 20 57 68 65 6e 20 74  |in level. When t|
00006700  68 65 20 73 75 73 74 61  69 6e 20 6c 65 76 65 6c  |he sustain level|
00006710  20 69 73 20 72 65 61 63  68 65 64 2c 20 74 68 65  | is reached, the|
00006720  20 76 6f 6c 75 6d 65 20  72 65 6d 61 69 6e 73 20  | volume remains |
00006730  74 68 65 20 73 61 6d 65  20 66 6f 72 20 61 20 77  |the same for a w|
00006740  68 69 6c 65 20 69 6e 20  74 68 65 20 73 75 73 74  |hile in the sust|
00006750  61 69 6e 20 70 68 61 73  65 2e 20 41 66 74 65 72  |ain phase. After|
00006760  20 74 68 65 20 73 75 73  74 61 69 6e 20 70 68 61  | the sustain pha|
00006770  73 65 20 63 6f 6d 65 73  20 74 68 65 20 72 65 6c  |se comes the rel|
00006780  65 61 73 65 20 70 68 61  73 65 2c 20 77 68 65 72  |ease phase, wher|
00006790  65 20 74 68 65 20 73 69  67 6e 61 6c 20 64 72 6f  |e the signal dro|
000067a0  70 73 20 74 6f 20 7a 65  72 6f 20 76 6f 6c 75 6d  |ps to zero volum|
000067b0  65 2e 0a 0a 4f 62 76 69  6f 75 73 6c 79 20 74 68  |e...Obviously th|
000067c0  65 20 62 65 73 74 20 77  61 79 20 74 6f 20 63 72  |e best way to cr|
000067d0  65 61 74 65 20 65 6e 76  65 6c 6f 70 65 73 20 69  |eate envelopes i|
000067e0  73 20 74 6f 20 75 73 65  20 74 68 65 20 65 6e 76  |s to use the env|
000067f0  65 6c 6f 70 65 20 67 65  6e 65 72 61 74 6f 72 2e  |elope generator.|
00006800  20 54 68 69 73 20 6f 62  6a 65 63 74 20 69 73 20  | This object is |
00006810  75 73 65 64 20 69 6e 20  74 68 65 20 65 78 61 6d  |used in the exam|
00006820  70 6c 65 20 73 68 65 65  74 20 27 45 6e 76 65 6c  |ple sheet 'Envel|
00006830  6f 70 65 27 2e 20 4c 6f  61 64 20 74 68 69 73 20  |ope'. Load this |
00006840  73 68 65 65 74 20 61 6e  64 20 65 78 61 6d 69 6e  |sheet and examin|
00006850  65 20 74 68 65 20 63 6f  6e 74 65 6e 74 73 20 6f  |e the contents o|
00006860  66 20 74 68 65 20 65 6e  76 65 6c 6f 70 65 20 67  |f the envelope g|
00006870  65 6e 65 72 61 74 6f 72  2e 20 59 6f 75 20 77 69  |enerator. You wi|
00006880  6c 6c 20 73 65 65 20 74  68 61 74 20 69 74 20 67  |ll see that it g|
00006890  65 6e 61 72 61 74 65 73  20 61 6e 20 41 44 53 52  |enarates an ADSR|
000068a0  20 65 6e 76 65 6c 6f 70  65 2e 20 54 68 69 73 20  | envelope. This |
000068b0  65 6e 76 65 6c 6f 70 65  20 67 65 6e 65 72 61 74  |envelope generat|
000068c0  6f 72 20 69 73 20 63 6f  6e 74 72 6f 6c 6c 69 6e  |or is controllin|
000068d0  67 20 74 68 65 20 6f 75  74 67 6f 69 6e 67 20 73  |g the outgoing s|
000068e0  69 67 6e 61 6c 20 6f 66  20 74 68 65 20 6f 73 63  |ignal of the osc|
000068f0  69 6c 6c 61 74 6f 72 2c  20 77 68 69 63 68 20 67  |illator, which g|
00006900  65 6e 65 72 61 74 65 73  20 61 20 72 61 6d 70 20  |enerates a ramp |
00006910  77 61 76 65 20 77 69 74  68 20 61 20 66 72 65 71  |wave with a freq|
00006920  75 65 6e 63 79 20 6f 66  20 34 2e 20 0a 0a 45 78  |uency of 4. ..Ex|
00006930  70 65 72 69 6d 65 6e 74  73 3a 0a 2d 63 68 61 6e  |periments:.-chan|
00006940  67 65 20 74 68 65 20 65  6e 76 65 6c 6f 70 65 20  |ge the envelope |
00006950  77 61 76 65 66 6f 72 6d  20 61 6e 64 20 65 78 61  |waveform and exa|
00006960  6d 69 6e 65 20 68 6f 77  20 74 68 69 73 20 61 66  |mine how this af|
00006970  66 65 63 74 73 20 74 68  65 20 73 6f 75 6e 64 2e  |fects the sound.|
00006980  0a 2d 61 6c 74 65 72 20  74 68 65 20 77 61 76 65  |.-alter the wave|
00006990  66 6f 72 6d 20 6f 66 20  74 68 65 20 6f 73 63 69  |form of the osci|
000069a0  6c 6c 61 74 6f 72 2e 0a  0a 0a 35 2e 32 2e 20 41  |llator....5.2. A|
000069b0  6d 70 6c 69 74 75 64 65  20 4d 6f 64 75 6c 61 74  |mplitude Modulat|
000069c0  69 6f 6e 2e 20 20 20 20  20 20 0a 0a 41 6d 70 6c  |ion.      ..Ampl|
000069d0  69 74 75 64 65 20 6d 6f  64 75 6c 61 74 69 6f 6e  |itude modulation|
000069e0  20 69 73 2c 20 6c 69 6b  65 20 74 68 65 20 65 6e  | is, like the en|
000069f0  76 65 6c 6f 70 65 20 67  65 6e 65 72 61 74 69 6f  |velope generatio|
00006a00  6e 2c 20 76 61 72 69 61  74 69 6f 6e 20 6f 66 20  |n, variation of |
00006a10  74 68 65 20 76 6f 6c 75  6d 65 20 6f 66 20 61 20  |the volume of a |
00006a20  73 6f 75 6e 64 20 77 61  76 65 2e 20 54 68 69 73  |sound wave. This|
00006a30  20 74 69 6d 65 20 77 65  20 61 72 65 20 6e 6f 74  | time we are not|
00006a40  20 67 6f 69 6e 67 20 74  6f 20 75 73 65 20 74 68  | going to use th|
00006a50  65 20 65 6e 76 65 6c 6f  70 65 20 67 65 6e 65 72  |e envelope gener|
00006a60  61 74 6f 72 2c 20 62 75  74 20 61 6e 20 6f 73 63  |ator, but an osc|
00006a70  69 6c 6c 61 74 6f 72 20  74 6f 20 64 6f 20 74 68  |illator to do th|
00006a80  69 73 2e 20 4c 6f 61 64  20 74 68 65 20 65 78 61  |is. Load the exa|
00006a90  6d 70 6c 65 20 73 68 65  65 74 20 27 41 4d 27 2e  |mple sheet 'AM'.|
00006aa0  20 54 68 65 20 75 70 70  65 72 20 6f 73 63 69 6c  | The upper oscil|
00006ab0  6c 61 74 6f 72 20 69 73  20 67 65 6e 65 72 61 74  |lator is generat|
00006ac0  69 6e 67 20 74 68 65 20  73 69 67 6e 61 6c 20 77  |ing the signal w|
00006ad0  65 20 77 61 6e 74 20 74  6f 20 6d 6f 64 75 6c 61  |e want to modula|
00006ae0  74 65 2e 20 49 74 20 69  73 20 61 20 73 71 75 61  |te. It is a squa|
00006af0  72 65 20 77 61 76 65 20  77 69 74 68 20 61 20 66  |re wave with a f|
00006b00  72 65 71 75 65 6e 63 79  20 6f 66 20 38 2e 20 54  |requency of 8. T|
00006b10  68 65 20 6d 6f 64 75 6c  61 74 69 6f 6e 20 73 69  |he modulation si|
00006b20  67 6e 61 6c 20 63 6f 6d  65 73 20 66 72 6f 6d 20  |gnal comes from |
00006b30  74 68 65 20 6c 6f 77 65  72 20 6f 73 63 69 6c 6c  |the lower oscill|
00006b40  61 74 6f 72 2e 20 54 68  69 73 20 6f 73 63 69 6c  |ator. This oscil|
00006b50  6c 61 74 6f 72 20 67 65  6e 65 72 61 74 65 73 20  |lator generates |
00006b60  61 20 73 69 6e 65 20 77  61 76 65 20 77 69 74 68  |a sine wave with|
00006b70  20 61 20 66 72 65 71 75  65 6e 63 79 20 6f 66 20  | a frequency of |
00006b80  30 2e 32 35 2e 20 4f 75  74 20 6f 66 20 74 68 65  |0.25. Out of the|
00006b90  20 6f 73 63 69 6c 6c 61  74 6f 72 20 63 6f 6d 65  | oscillator come|
00006ba0  73 20 61 20 73 69 67 6e  61 6c 20 77 68 69 63 68  |s a signal which|
00006bb0  20 6c 69 65 73 20 62 65  74 77 65 65 6e 20 2d 31  | lies between -1|
00006bc0  20 61 6e 64 20 31 2e 20  54 68 69 73 20 73 69 67  | and 1. This sig|
00006bd0  6e 61 6c 20 69 73 6e 27  74 20 71 75 69 74 65 20  |nal isn't quite |
00006be0  73 75 69 74 61 62 6c 65  20 66 6f 72 20 6d 6f 64  |suitable for mod|
00006bf0  75 6c 61 74 69 6f 6e 2e  20 49 66 20 77 65 20 61  |ulation. If we a|
00006c00  64 64 20 31 20 74 6f 20  74 68 65 20 73 69 67 6e  |dd 1 to the sign|
00006c10  61 6c 20 75 73 69 6e 67  20 61 6e 20 61 64 64 65  |al using an adde|
00006c20  72 2c 20 61 6e 64 20 74  68 65 6e 20 6d 75 6c 74  |r, and then mult|
00006c30  69 70 6c 79 20 74 68 65  20 73 69 67 6e 61 6c 20  |iply the signal |
00006c40  62 79 20 30 2e 35 2c 20  74 68 65 20 6f 75 74 67  |by 0.5, the outg|
00006c50  6f 69 6e 67 20 73 69 67  6e 61 6c 20 6c 69 65 73  |oing signal lies|
00006c60  20 62 65 74 77 65 65 6e  20 30 20 61 6e 64 20 31  | between 0 and 1|
00006c70  20 28 6f 6b 3f 29 2e 20  4e 6f 77 20 69 74 73 20  | (ok?). Now its |
00006c80  61 20 73 75 69 74 61 62  6c 65 20 6d 6f 64 75 6c  |a suitable modul|
00006c90  61 74 69 6f 6e 20 73 69  67 6e 61 6c 20 61 6e 64  |ation signal and|
00006ca0  20 77 65 20 63 61 6e 20  75 73 65 20 69 74 20 74  | we can use it t|
00006cb0  6f 20 6d 6f 64 75 6c 61  74 65 20 75 73 69 6e 67  |o modulate using|
00006cc0  20 61 20 6d 75 6c 74 69  70 6c 69 65 72 2e 0a 0a  | a multiplier...|
00006cd0  45 78 70 65 72 69 6d 65  6e 74 73 3a 0a 2d 63 68  |Experiments:.-ch|
00006ce0  61 6e 67 65 20 74 68 65  20 63 6f 6e 73 74 61 6e  |ange the constan|
00006cf0  74 20 61 74 20 74 68 65  20 6c 6f 77 65 72 20 6f  |t at the lower o|
00006d00  73 63 69 6c 6c 61 74 6f  72 20 74 6f 20 66 6f 72  |scillator to for|
00006d10  20 65 78 61 6d 70 6c 65  20 30 2e 35 20 28 66 61  | example 0.5 (fa|
00006d20  73 74 65 72 20 6d 6f 64  75 6c 61 74 69 6f 6e 29  |ster modulation)|
00006d30  2e 0a 2d 6d 6f 64 75 6c  61 74 65 20 61 20 64 69  |..-modulate a di|
00006d40  66 66 65 72 65 6e 74 20  73 6f 75 6e 64 20 77 61  |fferent sound wa|
00006d50  76 65 2c 20 62 79 20 63  68 61 6e 67 69 6e 67 20  |ve, by changing |
00006d60  74 68 65 20 77 61 76 65  66 6f 72 6d 20 6f 66 20  |the waveform of |
00006d70  74 68 65 20 75 70 70 65  72 20 6f 73 63 69 6c 6c  |the upper oscill|
00006d80  61 74 6f 72 2e 0a 2d 63  68 61 6e 67 65 20 74 68  |ator..-change th|
00006d90  65 20 6d 6f 64 75 6c 61  74 69 6e 67 20 73 69 67  |e modulating sig|
00006da0  6e 61 6c 20 62 79 20 61  6c 74 65 72 69 6e 67 20  |nal by altering |
00006db0  74 68 65 20 77 61 76 65  66 6f 72 6d 20 6f 66 20  |the waveform of |
00006dc0  74 68 65 20 6c 6f 77 65  72 20 6f 73 63 69 6c 6c  |the lower oscill|
00006dd0  61 74 6f 72 20 28 66 6f  72 20 65 78 61 6d 70 6c  |ator (for exampl|
00006de0  65 20 74 6f 20 61 20 72  61 6d 70 20 77 61 76 65  |e to a ramp wave|
00006df0  29 2e 0a 2d 63 68 61 6e  67 65 20 74 68 65 20 63  |)..-change the c|
00006e00  6f 6e 73 74 61 6e 74 20  61 74 20 74 68 65 20 61  |onstant at the a|
00006e10  64 64 65 72 20 61 6e 64  20 74 68 65 20 63 6f 6e  |dder and the con|
00006e20  73 74 61 6e 74 20 6d 75  6c 74 69 70 6c 69 65 72  |stant multiplier|
00006e30  20 61 66 74 65 72 20 69  74 2c 20 73 6f 20 74 68  | after it, so th|
00006e40  61 74 20 74 68 65 20 6f  75 74 67 6f 69 6e 67 20  |at the outgoing |
00006e50  73 69 67 6e 61 6c 20 6c  69 65 73 20 62 65 74 77  |signal lies betw|
00006e60  65 65 6e 20 30 2e 35 20  61 6e 64 20 31 20 28 74  |een 0.5 and 1 (t|
00006e70  68 69 73 20 69 73 20 63  68 61 6e 67 69 6e 67 20  |his is changing |
00006e80  74 68 65 20 27 64 65 70  74 68 20 6f 66 20 74 68  |the 'depth of th|
00006e90  65 20 6d 6f 64 75 6c 61  74 69 6f 6e 27 2c 20 73  |e modulation', s|
00006ea0  6f 20 6c 65 73 73 20 6d  6f 64 75 6c 61 74 69 6f  |o less modulatio|
00006eb0  6e 29 2e 0a 0a 0a 35 2e  33 2e 20 46 72 65 71 75  |n)....5.3. Frequ|
00006ec0  65 6e 63 79 20 4d 6f 64  75 6c 61 74 69 6f 6e 2e  |ency Modulation.|
00006ed0  0a 0a 46 72 65 71 75 65  6e 63 79 20 6d 6f 64 75  |..Frequency modu|
00006ee0  6c 61 74 69 6f 6e 20 6d  65 61 6e 73 20 76 61 72  |lation means var|
00006ef0  79 69 6e 67 20 74 68 65  20 66 72 65 71 75 65 6e  |ying the frequen|
00006f00  63 79 20 6f 66 20 61 20  73 6f 75 6e 64 20 77 61  |cy of a sound wa|
00006f10  76 65 2e 20 54 68 69 73  20 63 61 6e 20 62 65 20  |ve. This can be |
00006f20  64 6f 6e 65 20 69 6e 20  73 65 76 65 72 61 6c 20  |done in several |
00006f30  77 61 79 73 2e 0a 0a 49  6e 20 65 78 61 6d 70 6c  |ways...In exampl|
00006f40  65 20 73 68 65 65 74 20  27 46 4d 31 27 20 6d 6f  |e sheet 'FM1' mo|
00006f50  64 75 6c 61 74 69 6f 6e  20 69 73 20 64 6f 6e 65  |dulation is done|
00006f60  20 62 79 20 61 6e 20 65  6e 76 65 6c 6f 70 65 20  | by an envelope |
00006f70  67 65 6e 65 72 61 74 6f  72 2e 20 54 68 65 20 65  |generator. The e|
00006f80  6e 76 65 6c 6f 70 65 20  67 65 6e 65 72 61 74 6f  |nvelope generato|
00006f90  72 20 67 65 6e 65 72 61  74 65 73 20 61 20 73 69  |r generates a si|
00006fa0  67 6e 61 6c 20 77 68 69  63 68 20 67 6f 65 73 20  |gnal which goes |
00006fb0  66 72 6f 6d 20 31 20 74  6f 20 30 20 61 6e 64 20  |from 1 to 0 and |
00006fc0  74 68 65 6e 20 66 72 6f  6d 20 30 20 74 6f 20 31  |then from 0 to 1|
00006fd0  20 28 6a 75 73 74 20 68  61 76 65 20 61 20 6c 6f  | (just have a lo|
00006fe0  6f 6b 20 61 74 20 69 74  73 20 63 6f 6e 74 65 6e  |ok at its conten|
00006ff0  74 73 29 2e 20 43 6f 6e  6e 65 63 74 65 64 20 74  |ts). Connected t|
00007000  6f 20 74 68 65 20 65 6e  76 65 6c 6f 70 65 20 67  |o the envelope g|
00007010  65 6e 65 72 61 74 6f 72  20 69 73 20 61 20 63 6f  |enerator is a co|
00007020  6e 73 74 61 6e 74 20 6d  75 6c 74 69 70 6c 69 65  |nstant multiplie|
00007030  72 20 77 68 69 63 68 20  6d 75 6c 74 69 70 6c 69  |r which multipli|
00007040  65 73 20 62 79 20 33 32  2c 20 73 6f 20 74 68 65  |es by 32, so the|
00007050  20 6f 75 74 70 75 74 20  73 69 67 6e 61 6c 20 6f  | output signal o|
00007060  66 20 74 68 65 20 65 6e  76 65 6c 6f 70 65 20 67  |f the envelope g|
00007070  65 6e 65 72 61 74 6f 72  20 61 6e 64 20 74 68 65  |enerator and the|
00007080  20 6d 75 6c 74 69 70 6c  69 65 72 20 74 6f 67 65  | multiplier toge|
00007090  74 68 65 72 20 6c 69 65  73 20 62 65 74 77 65 65  |ther lies betwee|
000070a0  6e 20 30 20 61 6e 64 20  33 32 2e 20 54 68 69 73  |n 0 and 32. This|
000070b0  20 73 69 67 6e 61 6c 20  69 73 20 75 73 65 64 20  | signal is used |
000070c0  66 6f 72 20 63 6f 6e 74  72 6f 6c 6c 69 6e 67 20  |for controlling |
000070d0  74 68 65 20 66 72 65 71  75 65 6e 63 79 20 6f 66  |the frequency of|
000070e0  20 74 68 65 20 6f 73 63  69 6c 6c 61 74 6f 72 2c  | the oscillator,|
000070f0  20 77 68 69 63 68 20 70  72 6f 64 75 63 65 73 20  | which produces |
00007100  61 20 73 69 6e 65 20 77  61 76 65 2e 0a 0a 45 78  |a sine wave...Ex|
00007110  70 65 72 69 6d 65 6e 74  73 3a 0a 2d 63 68 61 6e  |periments:.-chan|
00007120  67 65 20 74 68 65 20 73  68 61 70 65 20 6f 66 20  |ge the shape of |
00007130  74 68 65 20 65 6e 76 65  6c 6f 70 65 20 77 61 76  |the envelope wav|
00007140  65 66 6f 72 6d 2e 0a 2d  61 6c 74 65 72 20 74 68  |eform..-alter th|
00007150  65 20 63 6f 6e 73 74 61  6e 74 20 6d 75 6c 74 69  |e constant multi|
00007160  70 6c 69 65 72 2c 20 73  6f 20 79 6f 75 20 77 69  |plier, so you wi|
00007170  6c 6c 20 67 65 74 20 61  20 64 69 66 66 65 72 65  |ll get a differe|
00007180  6e 74 20 66 72 65 71 75  65 6e 63 79 20 72 61 6e  |nt frequency ran|
00007190  67 65 2e 0a 2d 61 6c 74  65 72 20 74 68 65 20 6f  |ge..-alter the o|
000071a0  73 63 69 6c 6c 61 74 6f  72 20 77 61 76 65 66 6f  |scillator wavefo|
000071b0  72 6d 2e 0a 0a 45 78 61  6d 70 6c 65 20 73 68 65  |rm...Example she|
000071c0  65 74 20 27 46 4d 32 27  20 73 68 6f 77 73 20 79  |et 'FM2' shows y|
000071d0  6f 75 20 68 6f 77 20 6d  6f 64 75 6c 61 74 69 6f  |ou how modulatio|
000071e0  6e 20 63 61 6e 20 62 65  20 64 6f 6e 65 20 62 79  |n can be done by|
000071f0  20 61 6e 20 6f 73 63 69  6c 6c 61 74 6f 72 2e 20  | an oscillator. |
00007200  54 68 65 20 6c 65 66 74  20 6f 73 63 69 6c 6c 61  |The left oscilla|
00007210  74 6f 72 20 67 65 6e 65  72 61 74 65 73 20 61 20  |tor generates a |
00007220  6d 6f 64 75 6c 61 74 69  6e 67 20 73 69 6e 65 20  |modulating sine |
00007230  77 61 76 65 20 77 69 74  68 20 61 20 66 72 65 71  |wave with a freq|
00007240  75 65 6e 63 79 20 6f 66  20 30 2e 31 32 35 2e 20  |uency of 0.125. |
00007250  54 68 65 20 63 6f 6e 73  74 61 6e 74 2c 20 61 64  |The constant, ad|
00007260  64 65 72 20 61 6e 64 20  6d 75 6c 74 69 70 6c 69  |der and multipli|
00007270  65 72 20 6d 61 6b 65 20  74 68 65 20 6f 75 74 70  |er make the outp|
00007280  75 74 20 6f 66 20 74 68  65 20 6f 73 63 69 6c 6c  |ut of the oscill|
00007290  61 74 6f 72 20 28 2d 31  20 74 6f 20 31 29 20 67  |ator (-1 to 1) g|
000072a0  6f 20 66 72 6f 6d 20 31  36 20 74 6f 20 33 32 20  |o from 16 to 32 |
000072b0  28 63 68 65 63 6b 20 69  74 29 2e 20 54 68 69 73  |(check it). This|
000072c0  20 73 69 67 6e 61 6c 20  63 6f 6e 74 72 6f 6c 73  | signal controls|
000072d0  20 74 68 65 20 66 72 65  71 75 65 6e 63 79 20 6f  | the frequency o|
000072e0  66 20 74 68 65 20 72 69  67 68 74 20 6f 73 63 69  |f the right osci|
000072f0  6c 6c 61 74 6f 72 2c 20  77 68 69 63 68 20 61 6c  |llator, which al|
00007300  73 6f 20 67 65 6e 65 72  61 74 65 73 20 61 20 73  |so generates a s|
00007310  69 6e 65 20 77 61 76 65  2e 20 0a 0a 45 78 70 65  |ine wave. ..Expe|
00007320  72 69 6d 65 6e 74 73 3a  0a 2d 63 68 61 6e 67 65  |riments:.-change|
00007330  20 74 68 65 20 73 70 65  65 64 20 6f 66 20 6d 6f  | the speed of mo|
00007340  64 75 6c 61 74 69 6f 6e  20 62 79 20 61 6c 74 65  |dulation by alte|
00007350  72 69 6e 67 20 74 68 65  20 63 6f 6e 73 74 61 6e  |ring the constan|
00007360  74 2c 20 77 68 69 63 68  20 63 6f 6e 74 72 6f 6c  |t, which control|
00007370  73 20 74 68 65 20 6d 6f  64 75 6c 61 74 69 6e 67  |s the modulating|
00007380  20 6f 73 63 69 6c 6c 61  74 6f 72 2e 0a 2d 61 6c  | oscillator..-al|
00007390  74 65 72 20 74 68 65 20  63 6f 6e 73 74 61 6e 74  |ter the constant|
000073a0  20 61 74 20 74 68 65 20  61 64 64 65 72 20 61 6e  | at the adder an|
000073b0  64 20 74 68 65 20 63 6f  6e 73 74 61 6e 74 20 6d  |d the constant m|
000073c0  75 6c 74 69 70 6c 69 65  72 20 74 6f 20 67 65 74  |ultiplier to get|
000073d0  20 61 20 64 69 66 66 65  72 65 6e 74 20 66 72 65  | a different fre|
000073e0  71 75 65 6e 63 79 20 72  61 6e 67 65 2e 0a 2d 63  |quency range..-c|
000073f0  68 61 6e 67 65 20 74 68  65 20 77 61 76 65 66 6f  |hange the wavefo|
00007400  72 6d 20 6f 66 20 74 68  65 20 6d 6f 64 75 6c 61  |rm of the modula|
00007410  74 69 6e 67 20 6f 73 63  69 6c 6c 61 74 6f 72 2e  |ting oscillator.|
00007420  0a 0a 49 66 20 77 65 20  70 75 74 20 75 70 20 74  |..If we put up t|
00007430  68 65 20 73 70 65 65 64  20 6f 66 20 6d 6f 64 75  |he speed of modu|
00007440  6c 61 74 69 6f 6e 20 64  72 61 6d 61 74 69 63 61  |lation dramatica|
00007450  6c 6c 79 20 77 65 20 63  61 6e 20 6d 61 6b 65 20  |lly we can make |
00007460  73 6f 6d 65 20 71 75 69  74 65 20 69 6e 74 65 72  |some quite inter|
00007470  65 73 74 69 6e 67 20 65  66 66 65 63 74 73 2e 20  |esting effects. |
00007480  54 68 69 73 20 69 73 20  73 68 6f 77 6e 20 69 6e  |This is shown in|
00007490  20 65 78 61 6d 70 6c 65  20 73 68 65 65 74 20 27  | example sheet '|
000074a0  46 4d 33 27 2e 20 4e 6f  74 65 20 74 68 61 74 20  |FM3'. Note that |
000074b0  74 68 69 73 20 69 73 20  74 68 65 20 73 61 6d 65  |this is the same|
000074c0  20 73 68 65 65 74 20 61  73 20 27 46 4d 32 27 2e  | sheet as 'FM2'.|
000074d0  0a 0a 45 78 70 65 72 69  6d 65 6e 74 73 3a 0a 2d  |..Experiments:.-|
000074e0  63 68 61 6e 67 65 20 74  68 65 20 63 6f 6e 73 74  |change the const|
000074f0  61 6e 74 20 61 74 20 74  68 65 20 61 64 64 65 72  |ant at the adder|
00007500  20 74 6f 20 35 20 61 6e  64 20 74 68 65 20 63 6f  | to 5 and the co|
00007510  6e 73 74 61 6e 74 20 6d  75 6c 74 69 70 6c 69 65  |nstant multiplie|
00007520  72 20 74 6f 20 34 2e 0a  2d 63 68 61 6e 67 65 20  |r to 4..-change |
00007530  74 68 65 20 63 6f 6e 73  74 61 6e 74 20 61 74 20  |the constant at |
00007540  74 68 65 20 6c 65 66 74  20 6f 73 63 69 6c 6c 61  |the left oscilla|
00007550  74 6f 72 20 74 6f 20 34  2e 0a 0a 45 78 61 6d 70  |tor to 4...Examp|
00007560  6c 65 20 73 68 65 65 74  20 27 46 4d 34 27 20 73  |le sheet 'FM4' s|
00007570  68 6f 77 73 20 79 6f 75  20 74 68 61 74 20 79 6f  |hows you that yo|
00007580  75 20 63 61 6e 20 61 6c  73 6f 20 63 6f 6e 74 72  |u can also contr|
00007590  6f 6c 20 74 68 65 20 73  70 65 65 64 20 6f 66 20  |ol the speed of |
000075a0  6d 6f 64 75 6c 61 74 69  6f 6e 20 62 79 20 61 6e  |modulation by an|
000075b0  20 65 6e 76 65 6c 6f 70  65 20 67 65 6e 65 72 61  | envelope genera|
000075c0  74 6f 72 2e 0a 0a 45 78  70 65 72 69 6d 65 6e 74  |tor...Experiment|
000075d0  73 3a 0a 2d 63 68 61 6e  67 65 20 74 68 65 20 63  |s:.-change the c|
000075e0  6f 6e 73 74 61 6e 74 20  6d 75 6c 74 69 70 6c 69  |onstant multipli|
000075f0  65 72 20 61 66 74 65 72  20 74 68 65 20 65 6e 76  |er after the env|
00007600  65 6c 6f 70 65 20 67 65  6e 65 72 61 74 6f 72 20  |elope generator |
00007610  74 6f 20 31 2c 20 34 20  6f 72 20 65 76 65 6e 20  |to 1, 4 or even |
00007620  31 36 2e 0a 2d 61 6c 74  65 72 20 74 68 65 20 63  |16..-alter the c|
00007630  6f 6e 73 74 61 6e 74 20  61 74 20 74 68 65 20 61  |onstant at the a|
00007640  64 64 65 72 20 61 6e 64  20 74 68 65 20 6d 75 6c  |dder and the mul|
00007650  74 69 70 6c 69 65 72 20  61 66 74 65 72 20 74 68  |tiplier after th|
00007660  65 20 61 64 64 65 72 20  74 6f 20 63 68 61 6e 67  |e adder to chang|
00007670  65 20 74 68 65 20 64 65  70 74 68 20 6f 66 20 6d  |e the depth of m|
00007680  6f 64 75 6c 61 74 69 6f  6e 2e 0a 2d 74 72 79 20  |odulation..-try |
00007690  72 65 70 6c 61 63 69 6e  67 20 74 68 65 20 63 6f  |replacing the co|
000076a0  6e 73 74 61 6e 74 20 61  74 20 74 68 65 20 61 64  |nstant at the ad|
000076b0  64 65 72 20 62 79 20 61  6e 20 65 6e 76 65 6c 6f  |der by an envelo|
000076c0  70 65 20 67 65 6e 65 72  61 74 6f 72 20 61 6e 64  |pe generator and|
000076d0  20 61 20 63 6f 6e 73 74  61 6e 74 20 6d 75 6c 74  | a constant mult|
000076e0  69 70 6c 69 65 72 2e 20  4e 6f 77 20 79 6f 75 20  |iplier. Now you |
000076f0  63 61 6e 20 63 6f 6e 74  72 6f 6c 20 74 68 65 20  |can control the |
00007700  64 65 70 74 68 20 6f 66  20 74 68 65 20 6d 6f 64  |depth of the mod|
00007710  75 6c 61 74 69 6f 6e 20  62 79 20 74 68 65 20 65  |ulation by the e|
00007720  6e 76 65 6c 6f 70 65 20  67 65 6e 65 72 61 74 6f  |nvelope generato|
00007730  72 2e 20 46 69 6e 64 20  61 20 6e 69 63 65 20 76  |r. Find a nice v|
00007740  61 6c 75 65 20 66 6f 72  20 74 68 65 20 63 6f 6e  |alue for the con|
00007750  73 74 61 6e 74 20 6d 75  6c 74 69 70 6c 69 65 72  |stant multiplier|
00007760  2e 0a 2d 79 6f 75 20 63  61 6e 20 65 76 65 6e 20  |..-you can even |
00007770  74 72 79 20 74 6f 20 70  75 74 20 75 70 20 61 20  |try to put up a |
00007780  74 68 69 72 64 20 6f 73  63 69 6c 6c 61 74 6f 72  |third oscillator|
00007790  20 6f 6e 20 74 68 65 20  73 68 65 65 74 20 74 6f  | on the sheet to|
000077a0  20 63 6f 6e 74 72 6f 6c  20 74 68 65 20 6d 6f 64  | control the mod|
000077b0  75 6c 61 74 69 6e 67 20  6f 73 63 69 6c 6c 61 74  |ulating oscillat|
000077c0  6f 72 20 28 6d 6f 76 65  20 61 6c 6c 20 74 68 65  |or (move all the|
000077d0  20 6f 62 6a 65 63 74 73  20 74 6f 20 74 68 65 20  | objects to the |
000077e0  72 69 67 68 74 20 74 6f  20 6d 61 6b 65 20 70 6c  |right to make pl|
000077f0  61 63 65 29 2e 20 41 6e  20 46 4d 20 73 79 6e 74  |ace). An FM synt|
00007800  68 65 73 69 7a 65 72 20  6c 69 6b 65 20 74 68 65  |hesizer like the|
00007810  20 59 61 6d 61 68 61 20  44 58 37 20 75 73 65 73  | Yamaha DX7 uses|
00007820  20 6d 65 74 68 6f 64 73  20 6c 69 6b 65 20 74 68  | methods like th|
00007830  65 73 65 20 74 6f 20 63  72 65 61 74 65 20 69 74  |ese to create it|
00007840  73 20 73 6f 75 6e 64 73  2e 0a 20 0a 0a 35 2e 34  |s sounds.. ..5.4|
00007850  2e 20 56 61 72 69 61 62  6c 65 20 50 75 6c 73 65  |. Variable Pulse|
00007860  20 57 69 64 74 68 2e 0a  0a 45 78 61 6d 70 6c 65  | Width...Example|
00007870  20 73 68 65 65 74 20 27  50 75 6c 73 65 57 69 64  | sheet 'PulseWid|
00007880  74 68 27 20 73 68 6f 77  73 20 79 6f 75 20 68 6f  |th' shows you ho|
00007890  77 20 79 6f 75 20 63 61  6e 20 75 73 65 20 74 68  |w you can use th|
000078a0  65 20 70 75 6c 73 65 20  67 65 6e 65 72 61 74 6f  |e pulse generato|
000078b0  72 20 6f 62 6a 65 63 74  2e 20 54 68 65 20 63 6f  |r object. The co|
000078c0  6e 73 74 61 6e 74 20 63  6f 6e 74 72 6f 6c 73 20  |nstant controls |
000078d0  74 68 65 20 66 72 65 71  75 65 6e 63 79 2c 20 61  |the frequency, a|
000078e0  6e 64 20 74 68 65 20 65  6e 76 65 6c 6f 70 65 20  |nd the envelope |
000078f0  67 65 6e 65 72 61 74 6f  72 20 63 6f 6e 74 72 6f  |generator contro|
00007900  6c 73 20 74 68 65 20 70  75 6c 73 65 20 77 69 64  |ls the pulse wid|
00007910  74 68 2e 20 4a 75 73 74  20 74 61 6b 65 20 61 20  |th. Just take a |
00007920  6c 6f 6f 6b 20 61 74 20  74 68 65 20 65 6e 76 65  |look at the enve|
00007930  6c 6f 70 65 20 77 61 76  65 66 6f 72 6d 20 74 6f  |lope waveform to|
00007940  20 73 65 65 20 68 6f 77  20 69 74 20 63 6f 6e 74  | see how it cont|
00007950  72 6f 6c 73 20 74 68 65  20 70 75 6c 73 65 20 77  |rols the pulse w|
00007960  69 64 74 68 2e 20 43 61  6c 63 75 6c 61 74 65 20  |idth. Calculate |
00007970  74 68 65 20 73 61 6d 70  6c 65 20 61 6e 64 20 6c  |the sample and l|
00007980  69 73 74 65 6e 20 74 6f  20 74 68 65 20 6f 75 74  |isten to the out|
00007990  63 6f 6d 65 2e 20 43 6c  69 63 6b 20 6f 6e 20 74  |come. Click on t|
000079a0  68 65 20 27 4d 75 6c 74  69 70 6c 65 27 20 69 63  |he 'Multiple' ic|
000079b0  6f 6e 20 69 6e 20 74 68  65 20 6b 65 79 62 6f 61  |on in the keyboa|
000079c0  72 64 20 77 69 6e 64 6f  77 2c 20 6e 6f 77 20 70  |rd window, now p|
000079d0  72 65 73 73 20 46 32 20  61 6e 64 20 74 68 65 6e  |ress F2 and then|
000079e0  20 27 59 27 2c 20 27 4e  27 20 61 6e 64 20 27 49  | 'Y', 'N' and 'I|
000079f0  27 20 73 69 6d 75 6c 74  61 6e 65 6f 75 73 6c 79  |' simultaneously|
00007a00  2e 20 54 68 61 74 91 73  20 61 20 6e 69 63 65 20  |. That.s a nice |
00007a10  73 74 72 69 6e 67 20 73  6f 75 6e 64 2c 20 69 73  |string sound, is|
00007a20  6e 27 74 20 69 74 3f 20  59 6f 75 20 63 61 6e 20  |n't it? You can |
00007a30  61 6c 73 6f 20 6d 61 6b  65 20 6f 74 68 65 72 20  |also make other |
00007a40  63 68 6f 72 64 73 20 6c  69 6b 65 3a 20 27 49 27  |chords like: 'I'|
00007a50  20 27 50 27 20 61 6e 64  20 27 5d 27 20 74 6f 67  | 'P' and ']' tog|
00007a60  65 74 68 65 72 2e 20 54  68 69 73 20 6d 65 74 68  |ether. This meth|
00007a70  6f 64 20 6f 66 20 63 6f  6d 62 69 6e 69 6e 67 20  |od of combining |
00007a80  70 75 6c 73 65 20 67 65  6e 65 72 61 74 6f 72 73  |pulse generators|
00007a90  20 69 73 20 75 73 65 64  20 69 6e 20 74 68 65 20  | is used in the |
00007aa0  73 68 65 65 74 20 27 53  74 72 69 6e 67 73 36 27  |sheet 'Strings6'|
00007ab0  2e 20 54 68 69 73 20 73  68 65 65 74 20 75 73 65  |. This sheet use|
00007ac0  73 20 74 77 6f 20 70 75  6c 73 65 20 67 65 6e 65  |s two pulse gene|
00007ad0  72 61 74 6f 72 73 20 77  69 74 68 20 66 72 65 71  |rators with freq|
00007ae0  75 65 6e 63 69 65 73 20  6f 66 20 34 20 61 6e 64  |uencies of 4 and|
00007af0  20 38 20 74 6f 20 6d 61  6b 65 20 61 20 6e 69 63  | 8 to make a nic|
00007b00  65 20 73 74 72 69 6e 67  20 73 6f 75 6e 64 2e 20  |e string sound. |
00007b10  20 0a 0a 0a 35 2e 35 2e  20 46 69 6c 74 65 72 69  | ...5.5. Filteri|
00007b20  6e 67 2e 0a 0a 57 69 74  68 20 61 20 66 69 6c 74  |ng...With a filt|
00007b30  65 72 20 79 6f 75 20 63  61 6e 20 61 6c 74 65 72  |er you can alter|
00007b40  20 74 68 65 20 74 69 6d  62 72 65 20 6f 66 20 61  | the timbre of a|
00007b50  20 73 6f 75 6e 64 2e 20  4c 6f 61 64 20 65 78 61  | sound. Load exa|
00007b60  6d 70 6c 65 20 73 68 65  65 74 20 27 46 69 6c 74  |mple sheet 'Filt|
00007b70  65 72 31 27 2c 20 63 61  6c 63 75 6c 61 74 65 20  |er1', calculate |
00007b80  74 68 65 20 73 61 6d 70  6c 65 20 61 6e 64 20 6c  |the sample and l|
00007b90  69 73 74 65 6e 20 74 6f  20 74 68 65 20 72 65 73  |isten to the res|
00007ba0  75 6c 74 2e 20 54 68 65  20 6f 73 63 69 6c 6c 61  |ult. The oscilla|
00007bb0  74 6f 72 20 67 65 6e 65  72 61 74 65 73 20 61 20  |tor generates a |
00007bc0  73 71 75 61 72 65 20 77  61 76 65 20 77 69 74 68  |square wave with|
00007bd0  20 61 20 66 72 65 71 75  65 6e 63 79 20 6f 66 20  | a frequency of |
00007be0  32 2e 20 54 68 65 20 75  70 70 65 72 20 65 6e 76  |2. The upper env|
00007bf0  65 6c 6f 70 65 20 67 65  6e 65 72 61 74 6f 72 20  |elope generator |
00007c00  69 73 20 75 73 65 64 20  74 6f 20 63 6f 6e 74 72  |is used to contr|
00007c10  6f 6c 20 74 68 65 20 6c  6f 77 2d 70 61 73 73 20  |ol the low-pass |
00007c20  66 69 6c 74 65 72 2c 20  77 68 69 6c 65 20 74 68  |filter, while th|
00007c30  65 20 6c 6f 77 65 72 20  65 6e 76 65 6c 6f 70 65  |e lower envelope|
00007c40  20 67 65 6e 65 72 61 74  6f 72 20 69 73 20 75 73  | generator is us|
00007c50  65 64 20 74 6f 20 63 6f  6e 74 72 6f 6c 20 74 68  |ed to control th|
00007c60  65 20 68 69 67 68 2d 70  61 73 73 20 66 69 6c 74  |e high-pass filt|
00007c70  65 72 2e 20 48 61 76 65  20 61 20 6c 6f 6f 6b 20  |er. Have a look |
00007c80  61 74 20 74 68 65 73 65  20 77 61 76 65 66 6f 72  |at these wavefor|
00007c90  6d 73 20 61 6e 64 20 6c  69 73 74 65 6e 20 74 6f  |ms and listen to|
00007ca0  20 74 68 65 20 63 61 6c  63 75 6c 61 74 65 64 20  | the calculated |
00007cb0  73 6f 75 6e 64 2e 20 43  61 6e 20 79 6f 75 20 72  |sound. Can you r|
00007cc0  65 63 6f 67 6e 69 73 65  20 77 68 61 74 20 74 68  |ecognise what th|
00007cd0  65 20 66 69 6c 74 65 72  73 20 64 6f 20 74 6f 20  |e filters do to |
00007ce0  74 68 65 20 73 6f 75 6e  64 3f 20 54 68 65 20 72  |the sound? The r|
00007cf0  65 61 73 6f 6e 20 77 68  79 20 74 68 65 72 65 20  |eason why there |
00007d00  61 72 65 20 74 77 6f 20  66 69 6c 74 65 72 73 20  |are two filters |
00007d10  61 66 74 65 72 20 65 61  63 68 20 6f 74 68 65 72  |after each other|
00007d20  20 69 73 20 74 68 61 74  20 79 6f 75 20 74 68 65  | is that you the|
00007d30  6e 20 67 65 74 20 62 65  74 74 65 72 20 66 69 6c  |n get better fil|
00007d40  74 65 72 69 6e 67 2e 0a  0a 57 65 20 63 61 6e 20  |tering...We can |
00007d50  61 6c 73 6f 20 75 73 65  20 74 68 65 20 6c 6f 77  |also use the low|
00007d60  2d 70 61 73 73 20 66 69  6c 74 65 72 20 74 6f 67  |-pass filter tog|
00007d70  65 74 68 65 72 20 77 69  74 68 20 61 6e 20 65 6e  |ether with an en|
00007d80  76 65 6c 6f 70 65 20 67  65 6e 65 72 61 74 6f 72  |velope generator|
00007d90  20 74 6f 20 63 6f 6e 74  72 6f 6c 20 74 68 65 20  | to control the |
00007da0  65 6e 76 65 6c 6f 70 65  20 6f 66 20 61 20 73 6f  |envelope of a so|
00007db0  75 6e 64 2e 20 4c 6f 61  64 20 65 78 61 6d 70 6c  |und. Load exampl|
00007dc0  65 20 73 68 65 65 74 20  27 46 69 6c 74 65 72 32  |e sheet 'Filter2|
00007dd0  27 20 74 6f 20 73 65 65  20 68 6f 77 20 74 68 69  |' to see how thi|
00007de0  73 20 69 73 20 64 6f 6e  65 2e 20 42 79 20 74 68  |s is done. By th|
00007df0  65 20 77 61 79 2c 20 79  6f 75 20 67 65 74 20 74  |e way, you get t|
00007e00  68 69 73 20 6b 69 6e 64  20 6f 66 20 6f 73 63 69  |his kind of osci|
00007e10  6c 6c 61 74 6f 72 20 77  61 76 65 66 6f 72 6d 20  |llator waveform |
00007e20  62 79 20 63 6c 69 63 6b  69 6e 67 20 6f 6e 20 74  |by clicking on t|
00007e30  68 65 20 27 52 61 6e 64  27 20 69 63 6f 6e 20 69  |he 'Rand' icon i|
00007e40  6e 20 74 68 65 20 6f 73  63 69 6c 6c 61 74 6f 72  |n the oscillator|
00007e50  20 77 69 6e 64 6f 77 20  61 6e 64 20 74 68 65 6e  | window and then|
00007e60  20 33 20 63 6c 69 63 6b  73 20 6f 6e 20 74 68 65  | 3 clicks on the|
00007e70  20 27 3e 3e 3e 3e 27 20  69 63 6f 6e 2e 20 49 74  | '>>>>' icon. It|
00007e80  20 69 73 20 61 20 77 61  76 65 20 77 68 69 63 68  | is a wave which|
00007e90  20 68 61 73 20 61 20 6c  6f 74 20 6f 66 20 68 69  | has a lot of hi|
00007ea0  67 68 20 68 61 72 6d 6f  6e 69 63 73 20 69 6e 20  |gh harmonics in |
00007eb0  69 74 2e 0a 0a 45 78 70  65 72 69 6d 65 6e 74 73  |it...Experiments|
00007ec0  3a 20 0a 2d 61 6c 74 65  72 20 74 68 65 20 65 6e  |: .-alter the en|
00007ed0  76 65 6c 6f 70 65 73 20  61 6e 64 20 77 6f 72 6b  |velopes and work|
00007ee0  20 6f 75 74 20 68 6f 77  20 74 68 69 73 20 61 66  | out how this af|
00007ef0  66 65 63 74 73 20 74 68  65 20 73 6f 75 6e 64 2e  |fects the sound.|
00007f00  0a 0a 0a 35 2e 36 2e 20  53 79 6e 63 68 72 6f 6e  |...5.6. Synchron|
00007f10  69 73 69 6e 67 20 4f 73  63 69 6c 6c 61 74 6f 72  |ising Oscillator|
00007f20  73 2e 0a 0a 45 78 61 6d  70 6c 65 20 73 68 65 65  |s...Example shee|
00007f30  74 20 27 53 79 6e 63 68  72 6f 27 20 67 69 76 65  |t 'Synchro' give|
00007f40  73 20 61 6e 20 65 78 61  6d 70 6c 65 20 6f 66 20  |s an example of |
00007f50  68 6f 77 20 74 6f 20 75  73 65 20 74 68 65 20 73  |how to use the s|
00007f60  79 6e 63 68 72 6f 6e 69  73 69 6e 67 20 69 6e 70  |ynchronising inp|
00007f70  75 74 20 6f 66 20 74 68  65 20 6f 73 63 69 6c 6c  |ut of the oscill|
00007f80  61 74 6f 72 2e 20 54 68  65 20 66 72 65 71 75 65  |ator. The freque|
00007f90  6e 63 79 20 69 6e 70 75  74 20 6f 66 20 74 68 65  |ncy input of the|
00007fa0  20 75 70 70 65 72 20 6f  73 63 69 6c 6c 61 74 6f  | upper oscillato|
00007fb0  72 20 67 6f 65 73 20 66  72 6f 6d 20 28 61 62 6f  |r goes from (abo|
00007fc0  75 74 29 20 30 20 74 6f  20 36 20 61 6e 64 20 62  |ut) 0 to 6 and b|
00007fd0  61 63 6b 20 74 6f 20 30  20 61 67 61 69 6e 2e 20  |ack to 0 again. |
00007fe0  54 68 69 73 20 6f 73 63  69 6c 6c 61 74 6f 72 20  |This oscillator |
00007ff0  69 73 20 73 79 6e 63 68  72 6f 6e 69 73 65 64 20  |is synchronised |
00008000  62 79 20 74 68 65 20 6c  6f 77 65 72 20 6f 73 63  |by the lower osc|
00008010  69 6c 6c 61 74 6f 72 20  61 74 20 61 20 66 72 65  |illator at a fre|
00008020  71 75 65 6e 63 79 20 6f  66 20 34 2c 20 73 6f 20  |quency of 4, so |
00008030  74 68 65 20 66 72 65 71  75 65 6e 63 79 20 77 68  |the frequency wh|
00008040  69 63 68 20 63 6f 6d 65  73 20 6f 75 74 20 6f 66  |ich comes out of|
00008050  20 74 68 65 20 75 70 70  65 72 20 6f 73 63 69 6c  | the upper oscil|
00008060  6c 61 74 6f 72 20 72 65  6d 61 69 6e 73 20 34 20  |lator remains 4 |
00008070  61 6c 6c 20 74 68 65 20  74 69 6d 65 2e 20 48 61  |all the time. Ha|
00008080  76 65 20 61 20 63 6c 6f  73 65 20 6c 6f 6f 6b 20  |ve a close look |
00008090  61 74 20 74 68 65 20 77  61 76 65 66 6f 72 6d 20  |at the waveform |
000080a0  74 6f 20 75 6e 64 65 72  73 74 61 6e 64 20 74 68  |to understand th|
000080b0  69 73 20 62 65 74 74 65  72 20 28 72 65 61 64 20  |is better (read |
000080c0  74 68 65 20 21 53 46 58  45 44 20 63 68 61 70 74  |the !SFXED chapt|
000080d0  65 72 20 66 6f 72 20 69  6e 66 6f 20 61 62 6f 75  |er for info abou|
000080e0  74 20 7a 6f 6f 6d 69 6e  67 20 69 6e 20 65 74 63  |t zooming in etc|
000080f0  2e 29 2e 20 54 68 65 20  77 61 76 65 66 6f 72 6d  |.). The waveform|
00008100  20 69 73 20 63 68 61 6e  67 69 6e 67 20 61 6c 6c  | is changing all|
00008110  20 74 68 65 20 74 69 6d  65 2c 20 62 75 74 20 74  | the time, but t|
00008120  68 65 20 66 72 65 71 75  65 6e 63 79 20 73 74 61  |he frequency sta|
00008130  79 73 20 74 68 65 20 73  61 6d 65 2e 20 42 65 63  |ys the same. Bec|
00008140  61 75 73 65 20 6f 66 20  74 68 69 73 2c 20 79 6f  |ause of this, yo|
00008150  75 20 67 65 74 20 61 20  76 65 72 79 20 6c 69 76  |u get a very liv|
00008160  65 6c 79 20 73 6f 75 6e  64 2e 0a 0a 45 78 70 65  |ely sound...Expe|
00008170  72 69 6d 65 6e 74 73 3a  0a 2d 61 6c 74 65 72 20  |riments:.-alter |
00008180  74 68 65 20 77 61 76 65  66 6f 72 6d 20 6f 66 20  |the waveform of |
00008190  74 68 65 20 75 70 70 65  72 20 6f 73 63 69 6c 6c  |the upper oscill|
000081a0  61 74 6f 72 2e 0a 2d 63  68 61 6e 67 65 20 74 68  |ator..-change th|
000081b0  65 20 63 6f 6e 73 74 61  6e 74 20 6d 75 6c 74 69  |e constant multi|
000081c0  70 6c 69 65 72 20 74 6f  20 38 2c 20 31 36 2c 20  |plier to 8, 16, |
000081d0  33 32 2c 20 6f 72 20 65  76 65 6e 20 36 34 2e 20  |32, or even 64. |
000081e0  0a 2d 63 68 61 6e 67 65  20 74 68 65 20 63 6f 6e  |.-change the con|
000081f0  73 74 61 6e 74 20 61 74  20 74 68 65 20 73 79 6e  |stant at the syn|
00008200  63 68 72 6f 6e 69 73 69  6e 67 20 6f 73 63 69 6c  |chronising oscil|
00008210  6c 61 74 6f 72 20 74 6f  20 66 6f 72 20 65 78 61  |lator to for exa|
00008220  6d 70 6c 65 20 32 2c 20  38 20 65 74 63 20 28 74  |mple 2, 8 etc (t|
00008230  68 69 73 20 77 69 6c 6c  20 61 6c 74 65 72 20 74  |his will alter t|
00008240  68 65 20 62 61 73 65 20  66 72 65 71 75 65 6e 63  |he base frequenc|
00008250  79 20 6f 66 20 74 68 65  20 73 6f 75 6e 64 29 2e  |y of the sound).|
00008260  0a 0a 0a 35 2e 37 2e 20  50 68 61 73 65 20 53 68  |...5.7. Phase Sh|
00008270  69 66 74 69 6e 67 2e 20  20 20 0a 0a 41 6e 6f 74  |ifting.   ..Anot|
00008280  68 65 72 20 77 61 79 20  74 6f 20 6d 61 6b 65 20  |her way to make |
00008290  61 20 73 6f 75 6e 64 20  6d 6f 72 65 20 6c 69 76  |a sound more liv|
000082a0  65 6c 79 20 69 73 20 74  6f 20 70 61 73 73 20 69  |ely is to pass i|
000082b0  74 20 74 68 72 6f 75 67  68 20 61 20 70 68 61 73  |t through a phas|
000082c0  65 20 73 68 69 66 74 65  72 2e 20 41 20 70 68 61  |e shifter. A pha|
000082d0  73 65 20 73 68 69 66 74  65 72 20 64 65 6c 61 79  |se shifter delay|
000082e0  73 20 74 68 65 20 69 6e  63 6f 6d 69 6e 67 20 77  |s the incoming w|
000082f0  61 76 65 66 6f 72 6d 20  61 20 62 69 74 20 61 6e  |aveform a bit an|
00008300  64 20 74 68 65 6e 20 6d  69 78 65 73 20 69 74 20  |d then mixes it |
00008310  77 69 74 68 20 74 68 65  20 6f 72 69 67 69 6e 61  |with the origina|
00008320  6c 20 73 69 67 6e 61 6c  2e 20 48 6f 77 20 74 6f  |l signal. How to|
00008330  20 64 6f 20 74 68 69 73  20 69 73 20 73 68 6f 77  | do this is show|
00008340  20 69 6e 20 65 78 61 6d  70 6c 65 20 73 68 65 65  | in example shee|
00008350  74 20 27 50 68 61 73 65  31 27 20 61 6e 64 20 27  |t 'Phase1' and '|
00008360  50 68 61 73 65 32 27 2e  20 0a 0a 4c 6f 61 64 20  |Phase2'. ..Load |
00008370  65 78 61 6d 70 6c 65 20  73 68 65 65 74 20 27 50  |example sheet 'P|
00008380  68 61 73 65 31 27 2c 20  63 61 6c 63 75 6c 61 74  |hase1', calculat|
00008390  65 20 74 68 65 20 73 61  6d 70 6c 65 20 61 6e 64  |e the sample and|
000083a0  20 6c 69 73 74 65 6e 20  74 6f 20 69 74 2e 20 4e  | listen to it. N|
000083b0  6f 74 69 63 65 20 74 68  61 74 20 79 6f 75 20 67  |otice that you g|
000083c0  65 74 20 61 20 6b 69 6e  64 20 6f 66 20 27 66 6c  |et a kind of 'fl|
000083d0  6f 61 74 69 6e 67 27 20  73 6f 75 6e 64 3f 0a 0a  |oating' sound?..|
000083e0  54 68 65 20 6f 73 63 69  6c 6c 61 74 6f 72 20 67  |The oscillator g|
000083f0  65 6e 65 72 61 74 65 73  20 61 20 72 61 74 68 65  |enerates a rathe|
00008400  72 20 65 64 67 79 20 68  61 6e 64 2d 64 72 61 77  |r edgy hand-draw|
00008410  6e 20 77 61 76 65 2c 20  73 6f 20 69 74 20 68 61  |n wave, so it ha|
00008420  73 20 61 20 6c 6f 74 20  6f 66 20 68 69 67 68 20  |s a lot of high |
00008430  66 72 65 71 75 65 6e 63  79 20 63 6f 6d 70 6f 6e  |frequency compon|
00008440  65 6e 74 73 20 69 6e 20  69 74 2e 20 54 68 69 73  |ents in it. This|
00008450  20 73 69 67 6e 61 6c 20  67 6f 65 73 20 69 6e 74  | signal goes int|
00008460  6f 20 74 68 65 20 64 65  6c 61 79 20 6f 62 6a 65  |o the delay obje|
00008470  63 74 2c 20 77 68 65 72  65 20 69 74 20 69 73 20  |ct, where it is |
00008480  62 65 69 6e 67 20 64 65  6c 61 79 65 64 20 61 20  |being delayed a |
00008490  62 69 74 2e 20 54 68 65  20 61 6d 6f 75 6e 74 20  |bit. The amount |
000084a0  6f 66 20 64 65 6c 61 79  20 69 73 20 63 6f 6e 74  |of delay is cont|
000084b0  72 6f 6c 6c 65 64 20 62  79 20 61 6e 20 65 6e 76  |rolled by an env|
000084c0  65 6c 6f 70 65 20 67 65  6e 65 72 61 74 6f 72 2e  |elope generator.|
000084d0  20 54 61 6b 65 20 61 20  6c 6f 6f 6b 20 61 74 20  | Take a look at |
000084e0  74 68 65 20 65 6e 76 65  6c 6f 70 65 20 77 61 76  |the envelope wav|
000084f0  65 66 6f 72 6d 20 74 6f  20 73 65 65 20 68 6f 77  |eform to see how|
00008500  20 69 74 20 63 6f 6e 74  72 6f 6c 73 20 74 68 65  | it controls the|
00008510  20 64 65 6c 61 79 2e 20  54 68 65 20 61 64 64 65  | delay. The adde|
00008520  72 20 69 73 20 75 73 65  64 20 66 6f 72 20 6d 69  |r is used for mi|
00008530  78 69 6e 67 20 74 68 65  20 6f 72 69 67 69 6e 61  |xing the origina|
00008540  6c 20 73 69 67 6e 61 6c  20 77 69 74 68 20 74 68  |l signal with th|
00008550  65 20 64 65 6c 61 79 65  64 20 73 69 67 6e 61 6c  |e delayed signal|
00008560  2e 20 41 66 74 65 72 20  74 68 65 20 61 64 64 65  |. After the adde|
00008570  72 20 69 73 20 61 20 63  6f 6e 73 74 61 6e 74 20  |r is a constant |
00008580  6d 75 6c 74 69 70 6c 69  65 72 20 74 6f 20 61 76  |multiplier to av|
00008590  6f 69 64 20 63 6c 69 70  70 69 6e 67 2e 0a 0a 45  |oid clipping...E|
000085a0  78 70 65 72 69 6d 65 6e  74 73 3a 0a 2d 63 68 61  |xperiments:.-cha|
000085b0  6e 67 65 20 74 68 65 20  6f 73 63 69 6c 6c 61 74  |nge the oscillat|
000085c0  6f 72 20 77 61 76 65 66  6f 72 6d 20 74 6f 20 79  |or waveform to y|
000085d0  6f 75 72 20 6f 77 6e 20  68 61 6e 64 2d 64 72 61  |our own hand-dra|
000085e0  77 6e 20 77 61 76 65 66  6f 72 6d 2e 0a 2d 63 68  |wn waveform..-ch|
000085f0  61 6e 67 65 20 74 68 65  20 65 6e 76 65 6c 6f 70  |ange the envelop|
00008600  65 20 77 61 76 65 66 6f  72 6d 20 74 6f 20 61 6e  |e waveform to an|
00008610  6f 74 68 65 72 20 73 6c  6f 77 20 63 68 61 6e 67  |other slow chang|
00008620  69 6e 67 20 77 61 76 65  2e 20 44 6f 20 79 6f 75  |ing wave. Do you|
00008630  20 6e 6f 74 69 63 65 20  61 6e 79 20 64 69 66 66  | notice any diff|
00008640  65 72 65 6e 63 65 20 69  6e 20 74 68 65 20 73 6f  |erence in the so|
00008650  75 6e 64 3f 0a 2d 6d 61  6b 65 20 74 68 65 20 65  |und?.-make the e|
00008660  6e 76 65 6c 6f 70 65 20  67 65 6e 65 72 61 74 6f  |nvelope generato|
00008670  72 20 67 65 6e 65 72 61  74 65 20 61 20 63 6f 6e  |r generate a con|
00008680  73 74 61 6e 74 20 77 61  76 65 20 62 79 20 64 72  |stant wave by dr|
00008690  61 77 69 6e 67 20 61 20  68 6f 72 69 7a 6f 6e 74  |awing a horizont|
000086a0  61 6c 20 6c 69 6e 65 20  69 6e 20 69 74 2e 20 54  |al line in it. T|
000086b0  68 65 20 27 66 6c 6f 61  74 69 6e 67 27 20 65 66  |he 'floating' ef|
000086c0  66 65 63 74 20 73 68 6f  75 6c 64 20 6e 6f 77 20  |fect should now |
000086d0  62 65 20 67 6f 6e 65 2e  20 57 68 79 20 69 73 20  |be gone. Why is |
000086e0  74 68 61 74 3f 0a 0a 45  78 61 6d 70 6c 65 20 73  |that?..Example s|
000086f0  68 65 65 74 20 27 50 68  61 73 65 32 27 20 61 70  |heet 'Phase2' ap|
00008700  70 6c 69 65 73 20 70 68  61 73 65 20 73 68 69 66  |plies phase shif|
00008710  74 69 6e 67 20 6f 6e 20  61 20 6e 6f 69 73 65 20  |ting on a noise |
00008720  77 61 76 65 66 6f 72 6d  2e 20 49 74 20 67 69 76  |waveform. It giv|
00008730  65 73 20 61 20 76 65 72  79 20 63 6c 65 61 72 20  |es a very clear |
00008740  70 68 61 73 69 6e 67 20  65 66 66 65 63 74 2e 0a  |phasing effect..|
00008750  0a 45 78 70 65 72 69 6d  65 6e 74 73 3a 0a 2d 61  |.Experiments:.-a|
00008760  6c 74 65 72 20 74 68 65  20 65 6e 76 65 6c 6f 70  |lter the envelop|
00008770  65 20 77 61 76 65 66 6f  72 6d 2e 0a 2d 61 6c 74  |e waveform..-alt|
00008780  65 72 20 74 68 65 20 63  6f 6e 73 74 61 6e 74 20  |er the constant |
00008790  67 65 6e 65 72 61 74 6f  72 20 74 6f 20 66 6f 72  |generator to for|
000087a0  20 65 78 61 6d 70 6c 65  20 30 2e 35 2c 20 30 2e  | example 0.5, 0.|
000087b0  32 35 2c 20 30 2e 31 32  35 0a 0a 0a 35 2e 38 2e  |25, 0.125...5.8.|
000087c0  20 45 63 68 6f 65 73 2e  0a 0a 49 6e 20 74 68 65  | Echoes...In the|
000087d0  20 70 72 65 76 69 6f 75  73 20 73 65 63 74 69 6f  | previous sectio|
000087e0  6e 20 77 65 20 75 73 65  64 20 74 68 65 20 64 65  |n we used the de|
000087f0  6c 61 79 20 6c 69 6e 65  20 66 6f 72 20 74 68 65  |lay line for the|
00008800  20 70 68 61 73 69 6e 67  20 65 66 66 65 63 74 2e  | phasing effect.|
00008810  20 54 68 69 73 20 74 69  6d 65 20 77 65 20 61 72  | This time we ar|
00008820  65 20 67 6f 69 6e 67 20  74 6f 20 75 73 65 20 69  |e going to use i|
00008830  74 20 74 6f 20 63 72 65  61 74 65 20 65 63 68 6f  |t to create echo|
00008840  65 73 2e 0a 0a 4c 6f 61  64 20 65 78 61 6d 70 6c  |es...Load exampl|
00008850  65 20 73 68 65 65 74 20  27 45 63 68 6f 27 2c 20  |e sheet 'Echo', |
00008860  63 61 6c 63 75 6c 61 74  65 20 74 68 65 20 73 61  |calculate the sa|
00008870  6d 70 6c 65 20 61 6e 64  20 6c 69 73 74 65 6e 20  |mple and listen |
00008880  74 6f 20 74 68 65 20 72  65 73 75 6c 74 2e 20 4e  |to the result. N|
00008890  69 63 65 20 65 63 68 6f  20 72 69 67 68 74 3f 0a  |ice echo right?.|
000088a0  0a 54 68 65 20 6f 73 63  69 6c 6c 61 74 6f 72 20  |.The oscillator |
000088b0  67 65 6e 65 72 61 74 65  73 20 74 68 65 20 73 69  |generates the si|
000088c0  67 6e 61 6c 20 77 65 20  77 61 6e 74 20 74 6f 20  |gnal we want to |
000088d0  6d 61 6b 65 20 65 63 68  6f 65 73 20 6f 66 2e 20  |make echoes of. |
000088e0  54 68 65 20 65 6e 76 65  6c 6f 70 65 20 67 65 6e  |The envelope gen|
000088f0  65 72 61 74 6f 72 20 74  6f 67 65 74 68 65 72 20  |erator together |
00008900  77 69 74 68 20 74 68 65  20 6d 75 6c 74 69 70 6c  |with the multipl|
00008910  69 65 72 20 6d 61 6b 65  73 20 74 68 69 73 20 73  |ier makes this s|
00008920  69 67 6e 61 6c 20 69 6e  74 6f 20 61 20 76 65 72  |ignal into a ver|
00008930  79 20 73 68 6f 72 74 20  62 75 72 73 74 20 28 63  |y short burst (c|
00008940  68 65 63 6b 20 74 68 65  20 65 6e 76 65 6c 6f 70  |heck the envelop|
00008950  65 20 77 61 76 65 66 6f  72 6d 29 2e 20 54 68 65  |e waveform). The|
00008960  20 76 65 72 79 20 73 68  6f 72 74 20 62 75 72 73  | very short burs|
00008970  74 20 67 6f 65 73 20 69  6e 74 6f 20 74 68 65 20  |t goes into the |
00008980  61 64 64 65 72 2c 20 77  68 69 63 68 20 70 61 73  |adder, which pas|
00008990  73 65 73 20 74 68 69 73  20 73 69 67 6e 61 6c 20  |ses this signal |
000089a0  64 69 72 65 63 74 6c 79  20 74 6f 20 74 68 65 20  |directly to the |
000089b0  6f 75 74 70 75 74 2e 20  54 68 69 73 20 73 69 67  |output. This sig|
000089c0  6e 61 6c 20 69 73 20 61  6c 73 6f 20 66 65 64 20  |nal is also fed |
000089d0  62 61 63 6b 20 69 6e 74  6f 20 74 68 65 20 70 69  |back into the pi|
000089e0  70 65 2d 6c 69 6e 65 20  6f 66 20 64 65 6c 61 79  |pe-line of delay|
000089f0  20 6f 62 6a 65 63 74 73  2c 20 77 68 65 72 65 20  | objects, where |
00008a00  69 74 20 63 6f 6d 65 73  20 6f 75 74 20 73 6f 6d  |it comes out som|
00008a10  65 20 74 69 6d 65 20 6c  61 74 65 72 2e 20 54 68  |e time later. Th|
00008a20  69 73 20 64 65 6c 61 79  65 64 20 73 69 67 6e 61  |is delayed signa|
00008a30  6c 20 69 73 20 74 68 65  6e 20 61 64 64 65 64 20  |l is then added |
00008a40  74 6f 20 74 68 65 20 6f  72 69 67 69 6e 61 6c 20  |to the original |
00008a50  73 69 67 6e 61 6c 2c 20  67 6f 65 73 20 74 6f 20  |signal, goes to |
00008a60  74 68 65 20 6f 75 74 70  75 74 20 6f 62 6a 65 63  |the output objec|
00008a70  74 20 61 6e 64 20 69 73  20 66 65 64 20 62 61 63  |t and is fed bac|
00008a80  6b 20 69 6e 74 6f 20 74  68 65 20 64 65 6c 61 79  |k into the delay|
00008a90  20 61 67 61 69 6e 20 65  74 63 2e 20 49 66 20 79  | again etc. If y|
00008aa0  6f 75 20 64 6f 6e 27 74  20 75 6e 64 65 72 73 74  |ou don't underst|
00008ab0  61 6e 64 20 74 68 69 73  20 69 6d 6d 65 64 69 61  |and this immedia|
00008ac0  74 65 6c 79 2c 20 6a 75  73 74 20 66 6f 6c 6c 6f  |tely, just follo|
00008ad0  77 20 74 68 65 20 73 69  67 6e 61 6c 20 72 6f 75  |w the signal rou|
00008ae0  74 65 20 66 72 6f 6d 20  74 68 65 20 6f 73 63 69  |te from the osci|
00008af0  6c 6c 61 74 6f 72 20 74  6f 20 74 68 65 20 61 64  |llator to the ad|
00008b00  64 65 72 2c 20 74 68 72  6f 75 67 68 20 74 68 65  |der, through the|
00008b10  20 64 65 6c 61 79 20 6f  62 6a 65 63 74 73 2c 20  | delay objects, |
00008b20  74 6f 20 74 68 65 20 61  64 64 65 72 2c 20 74 68  |to the adder, th|
00008b30  72 6f 75 67 68 20 74 68  65 20 64 65 6c 61 79 20  |rough the delay |
00008b40  6f 62 6a 65 63 74 73 20  65 74 63 2e 20 4e 6f 74  |objects etc. Not|
00008b50  69 63 65 20 74 68 61 74  20 74 68 65 20 73 69 67  |ice that the sig|
00008b60  6e 61 6c 20 6c 6f 6f 70  73 3f 20 54 68 69 73 20  |nal loops? This |
00008b70  69 73 20 63 61 6c 6c 65  64 20 66 65 65 64 62 61  |is called feedba|
00008b80  63 6b 2e 20 0a 0a 54 68  65 20 61 6d 6f 75 6e 74  |ck. ..The amount|
00008b90  20 6f 66 20 66 65 65 64  62 61 63 6b 20 69 73 20  | of feedback is |
00008ba0  63 6f 6e 74 72 6f 6c 6c  65 64 20 62 79 20 74 68  |controlled by th|
00008bb0  65 20 63 6f 6e 73 74 61  6e 74 20 6d 75 6c 74 69  |e constant multi|
00008bc0  70 6c 69 65 72 2e 20 54  68 69 73 20 69 73 20 73  |plier. This is s|
00008bd0  65 74 20 74 6f 20 30 2e  37 35 2c 20 73 6f 20 74  |et to 0.75, so t|
00008be0  68 65 20 76 6f 6c 75 6d  65 20 6f 66 20 74 68 65  |he volume of the|
00008bf0  20 6e 65 78 74 20 65 63  68 6f 20 69 73 20 37 35  | next echo is 75|
00008c00  25 20 6f 66 20 74 68 65  20 76 6f 6c 75 6d 65 20  |% of the volume |
00008c10  6f 66 20 74 68 65 20 70  72 65 76 69 6f 75 73 20  |of the previous |
00008c20  6f 6e 65 2e 20 49 66 20  79 6f 75 20 73 65 74 20  |one. If you set |
00008c30  74 68 65 20 63 6f 6e 73  74 61 6e 74 20 6d 75 6c  |the constant mul|
00008c40  74 69 70 6c 69 65 72 20  74 6f 20 66 6f 72 20 65  |tiplier to for e|
00008c50  78 61 6d 70 6c 65 20 30  2e 35 2c 20 74 68 65 20  |xample 0.5, the |
00008c60  65 63 68 6f 20 76 6f 6c  75 6d 65 20 77 69 6c 6c  |echo volume will|
00008c70  20 68 61 6c 76 65 20 65  61 63 68 20 74 69 6d 65  | halve each time|
00008c80  2e 0a 0a 54 68 65 20 61  6d 6f 75 6e 74 20 6f 66  |...The amount of|
00008c90  20 64 65 6c 61 79 2c 20  73 6f 20 74 68 65 20 74  | delay, so the t|
00008ca0  69 6d 65 20 62 65 74 77  65 65 6e 20 74 77 6f 20  |ime between two |
00008cb0  65 63 68 6f 65 73 2c 20  69 73 20 63 6f 6e 74 72  |echoes, is contr|
00008cc0  6f 6c 6c 65 64 20 62 79  20 74 68 65 20 63 6f 6e  |olled by the con|
00008cd0  73 74 61 6e 74 20 67 65  6e 65 72 61 74 6f 72 20  |stant generator |
00008ce0  77 68 69 63 68 20 69 73  20 63 6f 6e 6e 65 63 74  |which is connect|
00008cf0  65 64 20 74 6f 20 74 68  65 20 64 65 6c 61 79 20  |ed to the delay |
00008d00  6c 69 6e 65 73 2e 0a 0a  45 78 70 65 72 69 6d 65  |lines...Experime|
00008d10  6e 74 73 3a 0a 2d 63 68  61 6e 67 65 20 74 68 65  |nts:.-change the|
00008d20  20 77 61 76 65 66 6f 72  6d 20 6f 66 20 74 68 65  | waveform of the|
00008d30  20 65 6e 76 65 6c 6f 70  65 20 67 65 6e 65 72 61  | envelope genera|
00008d40  74 6f 72 20 77 68 69 63  68 20 63 6f 6e 74 72 6f  |tor which contro|
00008d50  6c 73 20 74 68 65 20 76  6f 6c 75 6d 65 20 6f 66  |ls the volume of|
00008d60  20 74 68 65 20 6f 73 63  69 6c 6c 61 74 6f 72 2e  | the oscillator.|
00008d70  0a 2d 61 6c 74 65 72 20  74 68 65 20 61 6d 6f 75  |.-alter the amou|
00008d80  6e 74 20 6f 66 20 66 65  65 64 62 61 63 6b 2e 0a  |nt of feedback..|
00008d90  2d 61 6c 74 65 72 20 74  68 65 20 64 65 6c 61 79  |-alter the delay|
00008da0  20 74 69 6d 65 2e 0a 2d  72 65 70 6c 61 63 65 20  | time..-replace |
00008db0  74 68 65 20 6f 73 63 69  6c 6c 61 74 6f 72 20 62  |the oscillator b|
00008dc0  79 20 61 6e 20 69 6e 70  75 74 20 6f 62 6a 65 63  |y an input objec|
00008dd0  74 2e 20 59 6f 75 20 6e  6f 77 20 63 61 6e 20 6d  |t. You now can m|
00008de0  61 6b 65 20 76 65 72 79  20 73 6f 70 68 69 73 74  |ake very sophist|
00008df0  69 63 61 74 65 64 20 65  63 68 6f 65 73 20 6f 6e  |icated echoes on|
00008e00  20 79 6f 75 72 20 6f 77  6e 20 73 61 6d 70 6c 65  | your own sample|
00008e10  20 66 69 6c 65 73 2e 20  44 6f 6e 27 74 20 66 6f  | files. Don't fo|
00008e20  72 67 65 74 20 74 6f 20  73 65 74 20 74 68 65 20  |rget to set the |
00008e30  73 61 6d 70 6c 65 20 6c  65 6e 67 74 68 20 65 71  |sample length eq|
00008e40  75 61 6c 20 74 6f 20 74  68 65 20 66 69 6c 65 20  |ual to the file |
00008e50  73 69 7a 65 2c 20 65 6c  73 65 20 74 68 65 20 62  |size, else the b|
00008e60  61 73 65 20 70 69 74 63  68 20 6f 66 20 79 6f 75  |ase pitch of you|
00008e70  72 20 73 61 6d 70 6c 65  20 77 69 6c 6c 20 62 65  |r sample will be|
00008e80  20 63 68 61 6e 67 65 64  2e 0a 0a 0a 35 2e 39 2e  | changed....5.9.|
00008e90  20 44 69 73 74 6f 72 74  69 6f 6e 2e 0a 0a 44 69  | Distortion...Di|
00008ea0  73 74 6f 72 74 69 6f 6e  20 69 73 20 61 6c 73 6f  |stortion is also|
00008eb0  20 75 73 65 64 20 66 6f  72 20 6d 61 6b 69 6e 67  | used for making|
00008ec0  20 61 20 73 6f 75 6e 64  20 6d 6f 72 65 20 69 6e  | a sound more in|
00008ed0  74 65 72 65 73 74 69 6e  67 2e 20 44 69 73 74 6f  |teresting. Disto|
00008ee0  72 74 69 6f 6e 20 63 68  61 6e 67 65 73 20 74 68  |rtion changes th|
00008ef0  65 20 73 68 61 70 65 20  6f 66 20 74 68 65 20 77  |e shape of the w|
00008f00  61 76 65 66 6f 72 6d 2c  20 73 6f 20 74 68 61 74  |aveform, so that|
00008f10  20 69 74 20 67 65 74 20  6d 6f 72 65 20 68 69 67  | it get more hig|
00008f20  68 65 72 20 68 61 72 6d  6f 6e 69 63 73 2e 0a 0a  |her harmonics...|
00008f30  4c 6f 61 64 20 65 78 61  6d 70 6c 65 20 73 68 65  |Load example she|
00008f40  65 74 20 27 44 69 73 74  6f 72 74 69 6f 6e 27 2e  |et 'Distortion'.|
00008f50  20 49 6e 20 74 68 69 73  20 65 78 61 6d 70 6c 65  | In this example|
00008f60  2c 20 77 65 20 75 73 65  20 74 68 65 20 67 65 6e  |, we use the gen|
00008f70  65 72 61 6c 20 66 75 6e  63 74 69 6f 6e 20 6f 62  |eral function ob|
00008f80  6a 65 63 74 20 74 6f 20  64 69 73 74 6f 72 74 20  |ject to distort |
00008f90  61 20 73 69 6e 65 20 77  61 76 65 2e 20 54 68 65  |a sine wave. The|
00008fa0  20 73 69 6e 65 20 77 61  76 65 20 69 73 20 67 65  | sine wave is ge|
00008fb0  6e 65 72 61 74 65 64 20  62 79 20 74 68 65 20 6f  |nerated by the o|
00008fc0  73 63 69 6c 6c 61 74 6f  72 2e 20 49 74 20 69 73  |scillator. It is|
00008fd0  20 61 6d 70 6c 69 66 69  65 64 20 62 79 20 74 68  | amplified by th|
00008fe0  65 20 65 6e 76 65 6c 6f  70 65 20 67 65 6e 65 72  |e envelope gener|
00008ff0  61 74 6f 72 20 74 6f 67  65 74 68 65 72 20 77 69  |ator together wi|
00009000  74 68 20 74 68 65 20 6d  75 6c 74 69 70 6c 69 65  |th the multiplie|
00009010  72 20 61 6e 64 20 63 6f  6e 73 74 61 6e 74 20 6d  |r and constant m|
00009020  75 6c 74 69 70 6c 69 65  72 2e 20 54 68 65 20 6d  |ultiplier. The m|
00009030  61 78 69 6d 75 6d 20 61  6d 70 6c 69 66 69 63 61  |aximum amplifica|
00009040  74 69 6f 6e 20 69 73 20  34 20 28 63 68 65 63 6b  |tion is 4 (check|
00009050  20 74 68 65 20 63 6f 6e  73 74 61 6e 74 20 6d 75  | the constant mu|
00009060  6c 74 69 70 6c 69 65 72  29 2e 20 54 68 65 20 61  |ltiplier). The a|
00009070  6d 70 6c 69 66 69 65 64  20 73 69 67 6e 61 6c 20  |mplified signal |
00009080  67 6f 65 73 20 74 68 72  6f 75 67 68 20 74 68 65  |goes through the|
00009090  20 67 65 6e 65 72 61 6c  20 66 75 6e 63 74 69 6f  | general functio|
000090a0  6e 2c 20 77 68 65 72 65  20 69 74 20 67 65 74 73  |n, where it gets|
000090b0  20 74 72 61 6e 73 66 6f  72 6d 65 64 20 69 6e 74  | transformed int|
000090c0  6f 20 61 20 64 69 66 66  65 72 65 6e 74 20 73 69  |o a different si|
000090d0  67 6e 61 6c 2e 20 41 20  74 72 61 6e 73 66 6f 72  |gnal. A transfor|
000090e0  6d 61 74 69 6f 6e 20 6c  69 6b 65 20 74 68 69 73  |mation like this|
000090f0  20 69 73 20 73 68 6f 77  20 69 6e 20 66 69 67 75  | is show in figu|
00009100  72 65 20 32 30 20 28 69  6e 20 74 68 65 20 73 65  |re 20 (in the se|
00009110  63 74 69 6f 6e 20 47 65  6e 65 72 61 6c 20 46 75  |ction General Fu|
00009120  6e 63 74 69 6f 6e 29 2e  20 42 65 63 61 75 73 65  |nction). Because|
00009130  20 74 68 65 20 61 6d 70  6c 69 66 69 63 61 74 69  | the amplificati|
00009140  6f 6e 20 69 73 20 63 6f  6e 74 72 6f 6c 6c 65 64  |on is controlled|
00009150  20 62 79 20 61 6e 20 65  6e 76 65 6c 6f 70 65 20  | by an envelope |
00009160  67 65 6e 65 72 61 74 6f  72 2c 20 77 65 20 63 61  |generator, we ca|
00009170  6e 20 63 6f 6e 74 72 6f  6c 20 74 68 65 20 61 6d  |n control the am|
00009180  6f 75 6e 74 20 6f 66 20  64 69 73 74 6f 72 74 69  |ount of distorti|
00009190  6f 6e 20 77 69 74 68 20  69 74 2e 20 54 68 65 20  |on with it. The |
000091a0  6d 6f 72 65 20 74 68 65  20 61 6d 70 6c 69 66 69  |more the amplifi|
000091b0  63 61 74 69 6f 6e 2c 20  74 68 65 20 6d 6f 72 65  |cation, the more|
000091c0  20 74 68 65 20 73 69 67  6e 61 6c 20 67 65 74 73  | the signal gets|
000091d0  20 64 69 73 74 6f 72 74  65 64 2e 20 41 74 20 74  | distorted. At t|
000091e0  68 65 20 73 74 61 72 74  20 6f 66 20 74 68 65 20  |he start of the |
000091f0  73 61 6d 70 6c 65 20 74  68 65 72 65 20 69 73 20  |sample there is |
00009200  6d 75 63 68 20 64 69 73  74 6f 72 74 69 6f 6e 2c  |much distortion,|
00009210  20 77 68 69 6c 65 20 61  74 20 74 68 65 20 65 6e  | while at the en|
00009220  64 20 6f 66 20 74 68 65  20 73 61 6d 70 6c 65 20  |d of the sample |
00009230  74 68 65 72 65 20 69 73  20 68 61 72 64 6c 79 20  |there is hardly |
00009240  61 6e 79 20 64 69 73 74  6f 72 74 69 6f 6e 20 28  |any distortion (|
00009250  63 68 65 63 6b 20 74 68  65 20 77 61 76 65 66 6f  |check the wavefo|
00009260  72 6d 20 6f 66 20 74 68  65 20 65 6e 76 65 6c 6f  |rm of the envelo|
00009270  70 65 20 67 65 6e 65 72  61 74 6f 72 2c 20 61 6c  |pe generator, al|
00009280  73 6f 20 68 61 76 65 20  61 20 63 6c 6f 73 65 20  |so have a close |
00009290  6c 6f 6f 6b 20 61 74 20  74 68 65 20 63 61 6c 63  |look at the calc|
000092a0  75 6c 61 74 65 64 20 73  61 6d 70 6c 65 29 2e 20  |ulated sample). |
000092b0  0a 0a 49 66 20 77 65 20  6d 61 6b 65 20 61 20 67  |..If we make a g|
000092c0  65 6e 65 72 61 6c 20 66  75 6e 63 74 69 6f 6e 20  |eneral function |
000092d0  6c 69 6b 65 20 69 6e 20  65 78 61 6d 70 6c 65 20  |like in example |
000092e0  27 44 69 73 74 6f 72 74  32 27 20 6f 72 20 27 44  |'Distort2' or 'D|
000092f0  69 73 74 6f 72 74 33 27  2c 20 77 65 20 65 76 65  |istort3', we eve|
00009300  6e 20 67 65 74 20 6d 6f  72 65 20 64 69 73 74 6f  |n get more disto|
00009310  72 74 69 6f 6e 2e 0a 0a  45 78 70 65 72 69 6d 65  |rtion...Experime|
00009320  6e 74 73 3a 0a 2d 63 68  61 6e 67 65 20 74 68 65  |nts:.-change the|
00009330  20 6f 73 63 69 6c 6c 61  74 6f 72 20 77 61 76 65  | oscillator wave|
00009340  66 6f 72 6d 2e 0a 2d 61  6c 74 65 72 20 74 68 65  |form..-alter the|
00009350  20 67 65 6e 65 72 61 6c  20 66 75 6e 63 74 69 6f  | general functio|
00009360  6e 20 28 73 6f 6d 65 20  6e 69 63 65 20 73 74 72  |n (some nice str|
00009370  61 69 67 68 74 20 6c 69  6e 65 73 2c 20 6f 72 20  |aight lines, or |
00009380  6a 75 73 74 20 6d 61 6b  65 20 61 20 6d 65 73 73  |just make a mess|
00009390  20 6f 66 20 69 74 29 2e  0a 0a 0a 35 2e 31 30 2e  | of it)....5.10.|
000093a0  20 46 6f 75 72 69 65 72  20 53 79 6e 74 68 65 73  | Fourier Synthes|
000093b0  69 73 2e 0a 0a 49 6e 20  74 68 65 20 63 68 61 70  |is...In the chap|
000093c0  74 65 72 20 61 62 6f 75  74 20 73 6f 75 6e 64 2c  |ter about sound,|
000093d0  20 77 65 20 73 74 61 74  65 64 20 74 68 61 74 20  | we stated that |
000093e0  65 76 65 72 79 20 73 6f  75 6e 64 20 73 69 67 6e  |every sound sign|
000093f0  61 6c 20 63 61 6e 20 62  65 20 6d 61 64 65 20 75  |al can be made u|
00009400  70 20 6f 66 20 70 75 72  65 20 73 69 6e 65 20 77  |p of pure sine w|
00009410  61 76 65 73 2e 20 53 6f  2c 20 69 66 20 77 65 20  |aves. So, if we |
00009420  77 61 6e 74 20 74 6f 20  6d 61 6b 65 20 61 20 73  |want to make a s|
00009430  6f 75 6e 64 20 77 65 20  6d 69 67 68 74 20 61 73  |ound we might as|
00009440  20 77 65 6c 6c 20 6f 6e  6c 79 20 75 73 65 20 73  | well only use s|
00009450  69 6e 65 20 77 61 76 65  73 20 74 6f 20 64 6f 20  |ine waves to do |
00009460  74 68 69 73 2e 0a 0a 54  68 69 73 20 69 73 20 64  |this...This is d|
00009470  6f 6e 65 20 69 6e 20 65  78 61 6d 70 6c 65 20 73  |one in example s|
00009480  68 65 65 74 20 27 46 6f  75 72 53 79 6e 74 68 27  |heet 'FourSynth'|
00009490  2e 20 54 68 65 72 65 20  61 72 65 20 66 6f 75 72  |. There are four|
000094a0  20 6f 73 63 69 6c 6c 61  74 6f 72 73 20 67 65 6e  | oscillators gen|
000094b0  65 72 61 74 69 6e 67 20  73 69 6e 65 20 77 61 76  |erating sine wav|
000094c0  65 73 2e 20 54 68 65 20  66 72 65 71 75 65 6e 63  |es. The frequenc|
000094d0  69 65 73 20 61 72 65 20  64 65 74 65 72 6d 69 6e  |ies are determin|
000094e0  65 64 20 62 79 20 74 68  65 20 63 6f 6e 73 74 61  |ed by the consta|
000094f0  6e 74 73 2e 20 54 68 65  20 61 6d 70 6c 69 74 75  |nts. The amplitu|
00009500  64 65 20 6f 66 20 74 68  65 20 73 69 6e 65 20 77  |de of the sine w|
00009510  61 76 65 73 20 61 72 65  20 63 6f 6e 74 72 6f 6c  |aves are control|
00009520  6c 65 64 20 62 79 20 74  68 65 20 65 6e 76 65 6c  |led by the envel|
00009530  6f 70 65 20 67 65 6e 65  72 61 74 6f 72 73 20 28  |ope generators (|
00009540  6e 6f 74 69 63 65 20 74  68 61 74 20 74 68 65 20  |notice that the |
00009550  65 6e 76 65 6c 6f 70 65  20 67 65 6e 65 72 61 74  |envelope generat|
00009560  6f 72 73 20 61 72 65 20  63 6f 6e 6e 65 63 74 65  |ors are connecte|
00009570  64 20 74 6f 20 74 68 65  20 6d 75 6c 74 69 70 6c  |d to the multipl|
00009580  69 65 72 73 2c 20 6e 6f  74 20 74 68 65 20 73 79  |iers, not the sy|
00009590  6e 63 68 72 6f 6e 69 73  69 6e 67 20 69 6e 70 75  |nchronising inpu|
000095a0  74 73 20 6f 66 20 74 68  65 20 6f 73 63 69 6c 6c  |ts of the oscill|
000095b0  61 74 6f 72 73 29 2e 20  48 61 76 65 20 61 20 6c  |ators). Have a l|
000095c0  6f 6f 6b 20 61 74 20 74  68 65 73 65 20 65 6e 76  |ook at these env|
000095d0  65 6c 6f 70 65 20 67 65  6e 65 72 61 74 6f 72 73  |elope generators|
000095e0  2c 20 74 6f 20 73 65 65  20 77 68 61 74 20 6b 69  |, to see what ki|
000095f0  6e 64 20 6f 66 20 77 61  76 65 20 74 68 65 79 20  |nd of wave they |
00009600  70 72 6f 64 75 63 65 2e  20 0a 0a 57 69 74 68 20  |produce. ..With |
00009610  74 68 69 73 20 6b 69 6e  64 20 6f 66 20 74 65 63  |this kind of tec|
00009620  68 6e 69 71 75 65 20 79  6f 75 20 68 61 76 65 20  |hnique you have |
00009630  61 6e 20 61 6c 6d 6f 73  74 20 69 6e 66 69 6e 69  |an almost infini|
00009640  74 65 20 6e 75 6d 62 65  72 20 6f 66 20 70 6f 73  |te number of pos|
00009650  73 69 62 69 6c 69 74 69  65 73 2e 20 45 78 70 65  |sibilities. Expe|
00009660  72 69 6d 65 6e 74 20 61  20 6c 6f 74 20 77 69 74  |riment a lot wit|
00009670  68 20 69 74 21 2e 0a 0a  45 78 70 65 72 69 6d 65  |h it!...Experime|
00009680  6e 74 73 3a 0a 2d 63 68  61 6e 67 65 20 74 68 65  |nts:.-change the|
00009690  20 63 6f 6e 73 74 61 6e  74 73 2e 0a 2d 61 6c 74  | constants..-alt|
000096a0  65 72 20 74 68 65 20 77  61 76 65 66 6f 72 6d 73  |er the waveforms|
000096b0  20 6f 72 20 74 68 65 20  65 6e 76 65 6c 6f 70 65  | or the envelope|
000096c0  20 67 65 6e 65 72 61 74  6f 72 73 2e 0a 2d 61 64  | generators..-ad|
000096d0  64 20 6d 6f 72 65 20 6f  73 63 69 6c 6c 61 74 6f  |d more oscillato|
000096e0  72 73 2e 0a 2d 65 78 70  65 72 69 6d 65 6e 74 20  |rs..-experiment |
000096f0  77 69 74 68 20 74 68 65  20 73 68 65 65 74 73 3a  |with the sheets:|
00009700  20 27 42 6c 75 62 5a 69  6e 67 27 2c 20 27 42 65  | 'BlubZing', 'Be|
00009710  6c 6c 73 27 2c 20 27 43  65 6c 65 73 74 65 27 2c  |lls', 'Celeste',|
00009720  20 27 43 68 6f 69 72 27  2c 20 27 43 6c 61 76 65  | 'Choir', 'Clave|
00009730  73 27 2c 20 27 4d 61 72  69 6d 62 61 27 2c 20 27  |s', 'Marimba', '|
00009740  4f 72 67 61 6e 27 2e 0a  0a 0a 35 2e 31 31 2e 20  |Organ'....5.11. |
00009750  54 75 6e 65 64 20 4e 6f  69 73 65 2e 0a 0a 49 74  |Tuned Noise...It|
00009760  20 69 73 20 76 65 72 79  20 64 69 66 66 69 63 75  | is very difficu|
00009770  6c 74 20 74 6f 20 6d 61  6b 65 20 61 20 6e 69 63  |lt to make a nic|
00009780  65 20 73 6f 75 6e 64 20  77 69 74 68 20 74 68 65  |e sound with the|
00009790  20 6e 6f 69 73 65 20 67  65 6e 65 72 61 74 6f 72  | noise generator|
000097a0  2e 20 54 68 69 73 20 69  73 20 62 65 63 61 75 73  |. This is becaus|
000097b0  65 20 74 68 65 20 6e 6f  69 73 65 20 73 6f 75 6e  |e the noise soun|
000097c0  64 20 69 73 20 74 6f 6f  20 73 68 61 72 70 2e 20  |d is too sharp. |
000097d0  59 6f 75 20 63 61 6e 20  67 65 74 20 72 69 64 20  |You can get rid |
000097e0  6f 66 20 74 68 65 20 73  68 61 72 70 6e 65 73 73  |of the sharpness|
000097f0  20 62 79 20 75 73 69 6e  67 20 61 20 6c 6f 77 2d  | by using a low-|
00009800  70 61 73 73 20 66 69 6c  74 65 72 2c 20 62 75 74  |pass filter, but|
00009810  20 74 68 65 6e 20 74 68  65 20 68 69 67 68 20 66  | then the high f|
00009820  72 65 71 75 65 6e 63 69  65 73 20 61 72 65 20 67  |requencies are g|
00009830  6f 6e 65 20 61 73 20 77  65 6c 6c 2e 20 57 65 20  |one as well. We |
00009840  63 61 6e 20 6f 76 65 72  63 6f 6d 65 20 74 68 69  |can overcome thi|
00009850  73 20 70 72 6f 62 6c 65  6d 20 69 66 20 77 65 20  |s problem if we |
00009860  74 75 6e 65 20 74 68 65  20 6e 6f 69 73 65 20 75  |tune the noise u|
00009870  73 69 6e 67 20 61 6e 20  6f 73 63 69 6c 6c 61 74  |sing an oscillat|
00009880  6f 72 2e 20 48 6f 77 20  74 6f 20 64 6f 20 74 68  |or. How to do th|
00009890  69 73 20 69 73 20 73 68  6f 77 6e 20 69 6e 20 65  |is is shown in e|
000098a0  78 61 6d 70 6c 65 20 73  68 65 65 74 20 27 54 75  |xample sheet 'Tu|
000098b0  6e 65 4e 6f 69 73 65 31  27 2e 0a 0a 54 68 65 20  |neNoise1'...The |
000098c0  6e 6f 69 73 65 20 66 72  6f 6d 20 74 68 65 20 6e  |noise from the n|
000098d0  6f 69 73 65 20 67 65 6e  65 72 61 74 6f 72 20 67  |oise generator g|
000098e0  65 74 73 20 66 69 6c 74  65 72 65 64 20 62 79 20  |ets filtered by |
000098f0  74 68 65 20 6c 6f 77 20  70 61 73 73 20 66 69 6c  |the low pass fil|
00009900  74 65 72 2e 20 54 68 69  73 20 66 69 6c 74 65 72  |ter. This filter|
00009910  20 69 73 20 63 6f 6e 74  72 6f 6c 6c 65 64 20 62  | is controlled b|
00009920  79 20 61 20 63 6f 6e 73  74 61 6e 74 20 67 65 6e  |y a constant gen|
00009930  65 72 61 74 6f 72 2e 20  54 68 65 20 61 63 74 75  |erator. The actu|
00009940  61 6c 20 74 75 6e 69 6e  67 20 69 73 20 64 6f 6e  |al tuning is don|
00009950  65 20 62 79 20 61 6e 20  6f 73 63 69 6c 6c 61 74  |e by an oscillat|
00009960  6f 72 20 61 6e 64 20 61  20 6d 75 6c 74 69 70 6c  |or and a multipl|
00009970  69 65 72 2e 20 41 66 74  65 72 20 74 68 65 20 6d  |ier. After the m|
00009980  75 6c 74 69 70 6c 69 65  72 20 63 6f 6d 65 73 20  |ultiplier comes |
00009990  61 20 63 6f 6e 73 74 61  6e 74 20 6d 75 6c 74 69  |a constant multi|
000099a0  70 6c 69 65 72 20 77 68  69 63 68 20 61 6d 70 6c  |plier which ampl|
000099b0  69 66 69 65 73 20 74 68  65 20 73 69 67 6e 61 6c  |ifies the signal|
000099c0  2e 0a 0a 57 69 74 68 20  74 68 65 20 66 69 6c 74  |...With the filt|
000099d0  65 72 20 79 6f 75 20 63  61 6e 20 63 6f 6e 74 72  |er you can contr|
000099e0  6f 6c 20 74 68 65 20 62  61 6e 64 77 69 64 74 68  |ol the bandwidth|
000099f0  20 6f 66 20 74 68 65 20  6e 6f 69 73 65 2e 20 57  | of the noise. W|
00009a00  69 74 68 20 74 68 65 20  6f 73 63 69 6c 6c 61 74  |ith the oscillat|
00009a10  6f 72 20 79 6f 75 20 63  61 6e 20 63 6f 6e 74 72  |or you can contr|
00009a20  6f 6c 20 74 68 65 20 74  75 6e 69 6e 67 2e 0a 0a  |ol the tuning...|
00009a30  45 78 70 65 72 69 6d 65  6e 74 73 3a 0a 2d 43 68  |Experiments:.-Ch|
00009a40  61 6e 67 65 20 74 68 65  20 63 6f 6e 73 74 61 6e  |ange the constan|
00009a50  74 20 77 68 69 63 68 20  63 6f 6e 74 72 6f 6c 73  |t which controls|
00009a60  20 74 68 65 20 66 69 6c  74 65 72 20 74 6f 3a 20  | the filter to: |
00009a70  30 2e 30 37 35 2c 20 30  2e 30 35 20 61 6e 64 20  |0.075, 0.05 and |
00009a80  30 2e 30 32 2e 0a 2d 43  68 61 6e 67 65 20 74 68  |0.02..-Change th|
00009a90  65 20 63 6f 6e 73 74 61  6e 74 20 77 68 69 63 68  |e constant which|
00009aa0  20 63 6f 6e 74 72 6f 6c  73 20 74 68 65 20 6f 73  | controls the os|
00009ab0  63 69 6c 6c 61 74 6f 72  20 74 6f 3a 20 31 36 2c  |cillator to: 16,|
00009ac0  20 33 32 20 61 6e 64 20  39 36 2e 0a 0a 49 6e 20  | 32 and 96...In |
00009ad0  65 78 61 6d 70 6c 65 20  73 68 65 65 74 20 27 54  |example sheet 'T|
00009ae0  75 6e 65 4e 6f 69 73 65  32 27 20 62 6f 74 68 20  |uneNoise2' both |
00009af0  74 68 65 20 6f 73 63 69  6c 6c 61 74 6f 72 20 61  |the oscillator a|
00009b00  6e 64 20 74 68 65 20 66  69 6c 74 65 72 20 61 72  |nd the filter ar|
00009b10  65 20 63 6f 6e 74 72 6f  6c 6c 65 64 20 62 79 20  |e controlled by |
00009b20  61 6e 20 65 6e 76 65 6c  6f 70 65 20 67 65 6e 65  |an envelope gene|
00009b30  72 61 74 6f 72 2e 0a 0a  0a 35 2e 31 32 2e 20 43  |rator....5.12. C|
00009b40  68 6f 72 64 73 2e 0a 0a  59 6f 75 20 68 61 76 65  |hords...You have|
00009b50  20 70 72 6f 62 61 62 6c  79 20 61 6c 72 65 61 64  | probably alread|
00009b60  79 20 6e 6f 74 69 63 65  64 20 74 68 61 74 20 73  |y noticed that s|
00009b70  6f 6d 65 74 69 6d 65 73  2c 20 69 66 20 79 6f 75  |ometimes, if you|
00009b80  20 70 72 65 73 73 20 74  77 6f 20 6f 72 20 74 68  | press two or th|
00009b90  72 65 65 20 6b 65 79 73  20 73 69 6d 75 6c 74 61  |ree keys simulta|
00009ba0  6e 65 6f 75 73 6c 79 20  79 6f 75 20 67 65 74 20  |neously you get |
00009bb0  61 20 76 65 72 79 20 6e  69 63 65 20 73 6f 75 6e  |a very nice soun|
00009bc0  64 2e 20 54 68 69 73 20  69 73 20 63 61 6c 6c 65  |d. This is calle|
00009bd0  64 20 61 20 63 68 6f 72  64 2e 20 57 69 74 68 20  |d a chord. With |
00009be0  21 53 46 58 4d 20 77 65  20 63 61 6e 20 71 75 69  |!SFXM we can qui|
00009bf0  74 65 20 65 61 73 69 6c  79 20 6d 61 6b 65 20 73  |te easily make s|
00009c00  61 6d 70 6c 65 73 20 77  68 69 63 68 20 61 72 65  |amples which are|
00009c10  20 63 68 6f 72 64 73 20  62 79 20 75 73 69 6e 67  | chords by using|
00009c20  20 74 68 65 20 63 6f 6e  73 74 61 6e 74 20 6d 75  | the constant mu|
00009c30  6c 74 69 70 6c 69 65 72  2e 20 4c 6f 61 64 20 65  |ltiplier. Load e|
00009c40  78 61 6d 70 6c 65 20 73  68 65 65 74 20 27 43 68  |xample sheet 'Ch|
00009c50  6f 72 64 31 27 20 74 6f  20 73 65 65 20 68 6f 77  |ord1' to see how|
00009c60  20 74 68 69 73 20 77 6f  72 6b 73 2e 0a 0a 54 68  | this works...Th|
00009c70  65 72 65 20 61 72 65 20  74 68 72 65 65 20 6f 73  |ere are three os|
00009c80  63 69 6c 6c 61 74 6f 72  73 20 74 6f 20 73 69 6d  |cillators to sim|
00009c90  75 6c 61 74 65 20 74 68  72 65 65 20 6b 65 79 73  |ulate three keys|
00009ca0  20 70 72 65 73 73 65 64  20 73 69 6d 75 6c 74 61  | pressed simulta|
00009cb0  6e 65 6f 75 73 6c 79 2e  20 54 68 65 20 62 61 73  |neously. The bas|
00009cc0  65 20 66 72 65 71 75 65  6e 63 79 20 69 73 20 64  |e frequency is d|
00009cd0  65 74 65 72 6d 69 6e 65  64 20 62 79 20 74 68 65  |etermined by the|
00009ce0  20 63 6f 6e 73 74 61 6e  74 2e 20 54 68 65 20 74  | constant. The t|
00009cf0  77 6f 20 63 6f 6e 73 74  61 6e 74 20 6d 75 6c 74  |wo constant mult|
00009d00  69 70 6c 69 65 72 73 20  74 6f 20 74 68 65 20 6f  |ipliers to the o|
00009d10  73 63 69 6c 6c 61 74 6f  72 73 20 63 6f 6e 74 72  |scillators contr|
00009d20  6f 6c 20 74 68 65 20 6f  74 68 65 72 20 66 72 65  |ol the other fre|
00009d30  71 75 65 6e 63 69 65 73  2e 20 46 6f 72 20 65 78  |quencies. For ex|
00009d40  61 6d 70 6c 65 2c 20 69  66 20 79 6f 75 20 63 61  |ample, if you ca|
00009d50  6c 63 75 6c 61 74 65 20  74 68 65 20 73 61 6d 70  |lculate the samp|
00009d60  6c 65 20 61 6e 64 20 70  72 65 73 73 20 74 68 65  |le and press the|
00009d70  20 27 51 27 20 6b 65 79  2c 20 74 68 65 20 73 61  | 'Q' key, the sa|
00009d80  6d 70 6c 65 20 73 6f 75  6e 64 73 20 6c 69 6b 65  |mple sounds like|
00009d90  20 79 6f 75 20 70 72 65  73 73 20 74 68 65 20 27  | you press the '|
00009da0  45 27 20 61 6e 64 20 74  68 65 20 27 54 27 20 6b  |E' and the 'T' k|
00009db0  65 79 20 61 73 20 77 65  6c 6c 2e 20 48 65 72 65  |ey as well. Here|
00009dc0  20 69 73 20 68 6f 77 20  69 74 20 77 6f 72 6b 73  | is how it works|
00009dd0  3a 20 74 68 65 20 66 69  72 73 74 20 63 6f 6e 73  |: the first cons|
00009de0  74 61 6e 74 20 6d 75 6c  74 69 70 6c 69 65 72 20  |tant multiplier |
00009df0  69 73 20 73 65 74 20 74  6f 20 31 2e 32 35 2e 2e  |is set to 1.25..|
00009e00  2e 20 59 6f 75 20 67 65  74 20 74 68 69 73 20 63  |. You get this c|
00009e10  6f 6e 73 74 61 6e 74 20  62 79 20 63 6c 69 63 6b  |onstant by click|
00009e20  69 6e 67 20 6f 6e 20 74  68 65 20 62 6f 78 20 77  |ing on the box w|
00009e30  69 74 68 20 27 34 27 20  69 6e 20 69 74 2e 20 54  |ith '4' in it. T|
00009e40  68 69 73 20 6d 65 61 6e  73 20 74 68 61 74 20 74  |his means that t|
00009e50  68 65 20 73 65 63 6f 6e  64 20 6f 73 63 69 6c 6c  |he second oscill|
00009e60  61 74 6f 72 20 6f 73 63  69 6c 6c 61 74 65 73 20  |ator oscillates |
00009e70  61 74 20 61 20 66 72 65  71 75 65 6e 63 79 20 74  |at a frequency t|
00009e80  68 61 74 20 69 73 20 34  20 68 61 6c 66 74 6f 6e  |hat is 4 halfton|
00009e90  65 73 20 68 69 67 68 65  72 20 74 68 61 6e 20 74  |es higher than t|
00009ea0  68 65 20 66 69 72 73 74  20 6f 6e 65 2e 20 4c 69  |he first one. Li|
00009eb0  6b 65 77 69 73 65 2c 20  74 68 65 20 74 68 69 72  |kewise, the thir|
00009ec0  64 20 6f 73 63 69 6c 6c  61 74 6f 72 20 6f 73 63  |d oscillator osc|
00009ed0  69 6c 6c 61 74 65 73 20  61 74 20 61 20 66 72 65  |illates at a fre|
00009ee0  71 75 65 6e 63 79 20 74  68 61 74 20 69 73 20 37  |quency that is 7|
00009ef0  20 68 61 6c 66 74 6f 6e  65 73 20 68 69 67 68 65  | halftones highe|
00009f00  72 2e 0a 0a 54 68 65 72  65 20 61 72 65 20 61 20  |r...There are a |
00009f10  6c 6f 74 20 6f 66 20 63  68 6f 72 64 73 20 79 6f  |lot of chords yo|
00009f20  75 20 63 61 6e 20 6d 61  6b 65 2e 20 45 78 61 6d  |u can make. Exam|
00009f30  70 6c 65 20 73 68 65 65  74 20 27 43 68 6f 72 64  |ple sheet 'Chord|
00009f40  32 27 20 67 65 6e 65 72  61 74 65 73 20 61 20 6d  |2' generates a m|
00009f50  69 6e 6f 72 20 63 68 6f  72 64 2c 20 6c 69 6b 65  |inor chord, like|
00009f60  20 70 72 65 73 73 69 6e  67 20 27 51 27 2c 20 27  | pressing 'Q', '|
00009f70  23 27 20 61 6e 64 20 27  54 27 20 74 6f 67 65 74  |#' and 'T' toget|
00009f80  68 65 72 2e 20 53 65 65  20 69 66 20 79 6f 75 20  |her. See if you |
00009f90  63 61 6e 20 66 69 6e 64  20 6f 75 74 20 77 68 61  |can find out wha|
00009fa0  74 20 6b 69 6e 64 20 6f  66 20 63 68 6f 72 64 73  |t kind of chords|
00009fb0  20 27 43 68 6f 72 64 33  27 2c 20 27 43 68 6f 72  | 'Chord3', 'Chor|
00009fc0  64 34 27 20 61 6e 64 20  27 43 68 6f 72 64 35 27  |d4' and 'Chord5'|
00009fd0  20 61 72 65 2e 0a 0a 0a  0a 36 2e 20 21 53 46 58  | are.....6. !SFX|
00009fe0  45 44 2c 20 74 68 65 20  73 61 6d 70 6c 65 20 65  |ED, the sample e|
00009ff0  64 69 74 6f 72 2e 0a 0a  36 2e 31 2e 20 47 65 74  |ditor...6.1. Get|
0000a000  74 69 6e 67 20 73 74 61  72 74 65 64 2e 0a 0a 54  |ting started...T|
0000a010  6f 20 73 74 61 72 74 20  74 68 65 20 61 70 70 6c  |o start the appl|
0000a020  69 63 61 74 69 6f 6e 20  64 6f 75 62 6c 65 20 63  |ication double c|
0000a030  6c 69 63 6b 20 6f 6e 20  74 68 65 20 21 53 46 58  |lick on the !SFX|
0000a040  45 44 20 69 63 6f 6e 2e  20 49 66 20 79 6f 75 20  |ED icon. If you |
0000a050  68 61 76 65 20 73 74 61  72 74 65 64 20 75 70 20  |have started up |
0000a060  74 68 65 20 21 53 46 58  4d 20 61 70 70 6c 69 63  |the !SFXM applic|
0000a070  61 74 69 6f 6e 20 66 69  72 73 74 2c 20 74 68 65  |ation first, the|
0000a080  20 21 53 46 58 45 44 20  77 69 6c 6c 20 61 75 74  | !SFXED will aut|
0000a090  6f 6d 61 74 69 63 61 6c  6c 79 20 62 65 20 6c 6f  |omatically be lo|
0000a0a0  61 64 65 64 2e 0a 0a 49  66 20 79 6f 75 20 77 61  |aded...If you wa|
0000a0b0  6e 74 20 74 6f 20 6c 6f  61 64 20 61 20 73 61 6d  |nt to load a sam|
0000a0c0  70 6c 65 20 69 6e 74 6f  20 74 68 65 20 65 64 69  |ple into the edi|
0000a0d0  74 6f 72 2c 20 65 69 74  68 65 72 20 64 72 61 67  |tor, either drag|
0000a0e0  20 69 74 20 6f 6e 74 6f  20 74 68 65 20 21 53 46  | it onto the !SF|
0000a0f0  58 45 44 20 69 63 6f 6e  20 6f 6e 20 74 68 65 20  |XED icon on the |
0000a100  69 63 6f 6e 62 61 72 2c  20 6f 72 20 64 72 61 67  |iconbar, or drag|
0000a110  20 69 74 20 69 6e 74 6f  20 74 68 65 20 21 53 46  | it into the !SF|
0000a120  58 45 44 20 77 61 76 65  66 6f 72 6d 20 77 69 6e  |XED waveform win|
0000a130  64 6f 77 2e 20 0a 0a 41  20 63 6c 69 63 6b 20 6f  |dow. ..A click o|
0000a140  6e 20 74 68 65 20 21 53  46 58 45 44 20 69 63 6f  |n the !SFXED ico|
0000a150  6e 20 6f 6e 20 74 68 65  20 69 63 6f 6e 62 61 72  |n on the iconbar|
0000a160  20 77 69 6c 6c 20 62 72  69 6e 67 20 75 70 20 74  | will bring up t|
0000a170  68 65 20 77 61 76 65 66  6f 72 6d 20 77 69 6e 64  |he waveform wind|
0000a180  6f 77 20 61 6e 64 20 74  68 65 20 6b 65 79 62 6f  |ow and the keybo|
0000a190  61 72 64 20 77 69 6e 64  6f 77 2e 0a 0a 0a 66 69  |ard window....fi|
0000a1a0  67 75 72 65 20 32 33 2e  20 54 68 65 20 77 61 76  |gure 23. The wav|
0000a1b0  65 66 6f 72 6d 20 77 69  6e 64 6f 77 20 61 6e 64  |eform window and|
0000a1c0  20 74 68 65 20 6b 65 79  62 6f 61 72 64 20 77 69  | the keyboard wi|
0000a1d0  6e 64 6f 77 2e 0a 0a 0a  36 2e 32 2e 20 54 68 65  |ndow....6.2. The|
0000a1e0  20 77 61 76 65 66 6f 72  6d 20 61 6e 64 20 74 68  | waveform and th|
0000a1f0  65 20 6b 65 79 62 6f 61  72 64 20 77 69 6e 64 6f  |e keyboard windo|
0000a200  77 2e 0a 20 20 20 20 20  20 20 20 20 20 20 20 20  |w..             |
0000a210  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
0000a220  20 20 20 20 20 20 20 20  20 0a 54 68 65 20 77 61  |         .The wa|
0000a230  76 65 66 6f 72 6d 20 77  69 6e 64 6f 77 20 69 73  |veform window is|
0000a240  20 74 68 65 20 77 69 6e  64 6f 77 20 77 68 65 72  | the window wher|
0000a250  65 20 74 68 65 20 73 61  6d 70 6c 65 20 65 64 69  |e the sample edi|
0000a260  74 69 6e 67 20 74 61 6b  65 73 20 70 6c 61 63 65  |ting takes place|
0000a270  2e 20 59 6f 75 20 63 61  6e 20 73 65 6c 65 63 74  |. You can select|
0000a280  20 61 6e 20 61 72 65 61  20 6f 66 20 73 61 6d 70  | an area of samp|
0000a290  6c 65 20 64 61 74 61 20  62 79 20 70 72 65 73 73  |le data by press|
0000a2a0  69 6e 67 20 65 69 74 68  65 72 20 73 65 6c 65 63  |ing either selec|
0000a2b0  74 20 6f 72 20 61 64 6a  75 73 74 20 6f 76 65 72  |t or adjust over|
0000a2c0  20 74 68 65 20 77 61 76  65 66 6f 72 6d 2c 20 61  | the waveform, a|
0000a2d0  6e 64 20 74 68 65 6e 20  64 72 61 67 20 74 6f 20  |nd then drag to |
0000a2e0  74 68 65 20 64 65 73 69  72 65 64 20 70 6f 73 69  |the desired posi|
0000a2f0  74 69 6f 6e 2e 20 41 6c  74 65 72 6e 61 74 69 76  |tion. Alternativ|
0000a300  65 6c 79 20 75 73 65 20  74 68 65 20 6c 65 66 74  |ely use the left|
0000a310  20 62 75 74 74 6f 6e 20  74 6f 20 73 65 6c 65 63  | button to selec|
0000a320  74 20 74 68 65 20 73 74  61 72 74 20 61 6e 64 20  |t the start and |
0000a330  74 68 65 20 72 69 67 68  74 20 62 75 74 74 6f 6e  |the right button|
0000a340  20 74 6f 20 64 65 66 69  6e 65 20 74 68 65 20 65  | to define the e|
0000a350  6e 64 20 6f 66 20 74 68  65 20 73 65 6c 65 63 74  |nd of the select|
0000a360  69 6f 6e 2e 0a 0a 54 6f  20 73 65 74 20 74 68 65  |ion...To set the|
0000a370  20 6c 65 66 74 20 6c 6f  6f 70 20 70 6f 69 6e 74  | left loop point|
0000a380  65 72 20 28 67 72 65 65  6e 29 20 70 72 65 73 73  |er (green) press|
0000a390  20 73 65 6c 65 63 74 20  6f 6e 20 74 68 65 20 61  | select on the a|
0000a3a0  72 65 61 20 61 62 6f 76  65 20 74 68 65 20 77 61  |rea above the wa|
0000a3b0  76 65 66 6f 72 6d 2e 20  53 65 74 20 74 68 65 20  |veform. Set the |
0000a3c0  72 69 67 68 74 20 6c 6f  6f 70 20 70 6f 69 6e 74  |right loop point|
0000a3d0  65 72 20 28 72 65 64 29  20 62 79 20 75 73 69 6e  |er (red) by usin|
0000a3e0  67 20 61 64 6a 75 73 74  2e 20 49 66 20 79 6f 75  |g adjust. If you|
0000a3f0  20 68 6f 6c 64 20 64 6f  77 6e 20 74 68 65 20 3c  | hold down the <|
0000a400  73 68 69 66 74 3e 20 6b  65 79 2c 20 74 68 65 20  |shift> key, the |
0000a410  64 69 73 74 61 6e 63 65  20 62 65 74 77 65 65 6e  |distance between|
0000a420  20 74 68 65 20 6c 65 66  74 20 61 6e 64 20 72 69  | the left and ri|
0000a430  67 68 74 20 6c 6f 6f 70  20 70 6f 69 6e 74 65 72  |ght loop pointer|
0000a440  20 69 73 20 6b 65 70 74  20 63 6f 6e 73 74 61 6e  | is kept constan|
0000a450  74 2c 20 61 6c 6c 6f 77  69 6e 67 20 79 6f 75 20  |t, allowing you |
0000a460  74 6f 20 64 72 61 67 20  74 68 65 20 73 65 6c 65  |to drag the sele|
0000a470  63 74 65 64 20 6c 6f 6f  70 20 61 72 65 61 20 61  |cted loop area a|
0000a480  72 6f 75 6e 64 20 74 68  65 20 77 69 6e 64 6f 77  |round the window|
0000a490  2e 0a 0a 54 68 65 20 70  6f 73 69 74 69 6f 6e 20  |...The position |
0000a4a0  69 63 6f 6e 20 69 6e 64  69 63 61 74 65 73 20 74  |icon indicates t|
0000a4b0  68 65 20 61 62 73 6f 6c  75 74 65 20 73 61 6d 70  |he absolute samp|
0000a4c0  6c 65 20 70 6f 73 69 74  69 6f 6e 20 77 69 74 68  |le position with|
0000a4d0  69 6e 20 74 68 65 20 73  61 6d 70 6c 65 2e 20 59  |in the sample. Y|
0000a4e0  6f 75 20 63 61 6e 20 61  6c 73 6f 20 63 6c 69 63  |ou can also clic|
0000a4f0  6b 20 6f 6e 20 74 68 69  73 20 69 63 6f 6e 20 74  |k on this icon t|
0000a500  6f 20 74 6f 67 67 6c 65  20 62 65 74 77 65 65 6e  |o toggle between|
0000a510  20 68 65 78 61 64 65 63  69 6d 61 6c 20 61 6e 64  | hexadecimal and|
0000a520  20 64 65 63 69 6d 61 6c  20 72 65 70 72 65 73 65  | decimal represe|
0000a530  6e 74 61 74 69 6f 6e 2e  20 0a 0a 54 68 65 20 73  |ntation. ..The s|
0000a540  61 6d 70 6c 65 20 72 61  74 65 20 63 61 6e 20 62  |ample rate can b|
0000a550  65 20 73 65 74 20 62 79  20 75 73 69 6e 67 20 74  |e set by using t|
0000a560  68 65 20 53 52 61 74 65  20 69 63 6f 6e 2e 0a 0a  |he SRate icon...|
0000a570  0a 54 68 65 20 6b 65 79  62 6f 61 72 64 20 77 69  |.The keyboard wi|
0000a580  6e 64 6f 77 20 69 73 20  75 73 65 64 20 74 6f 20  |ndow is used to |
0000a590  70 6c 61 79 20 74 68 65  20 73 61 6d 70 6c 65 20  |play the sample |
0000a5a0  64 61 74 61 2e 20 54 6f  20 62 65 20 61 62 6c 65  |data. To be able|
0000a5b0  20 74 6f 20 70 6c 61 79  2c 20 74 68 65 20 6b 65  | to play, the ke|
0000a5c0  79 62 6f 61 72 64 20 6d  75 73 74 20 68 61 76 65  |yboard must have|
0000a5d0  20 74 68 65 20 27 69 6e  70 75 74 20 66 6f 63 75  | the 'input focu|
0000a5e0  73 27 20 28 74 69 74 6c  65 20 62 61 72 20 73 68  |s' (title bar sh|
0000a5f0  6f 75 6c 64 20 62 65 20  79 65 6c 6c 6f 77 29 2e  |ould be yellow).|
0000a600  20 54 68 69 73 20 63 61  6e 20 62 65 20 64 6f 6e  | This can be don|
0000a610  65 20 62 79 20 63 6c 69  63 6b 69 6e 67 20 77 69  |e by clicking wi|
0000a620  74 68 20 73 65 6c 65 63  74 20 6f 72 20 61 64 6a  |th select or adj|
0000a630  75 73 74 20 69 6e 20 74  68 65 20 77 69 6e 64 6f  |ust in the windo|
0000a640  77 20 28 63 6c 69 63 6b  69 6e 67 20 77 69 74 68  |w (clicking with|
0000a650  20 61 64 6a 75 73 74 20  77 69 6c 6c 20 61 6c 73  | adjust will als|
0000a660  6f 20 63 61 75 73 65 20  21 53 46 58 45 44 20 74  |o cause !SFXED t|
0000a670  6f 20 73 74 6f 70 20 70  6c 61 79 69 6e 67 29 2e  |o stop playing).|
0000a680  0a 20 20 20 20 20 20 20  20 20 20 0a 54 68 65 20  |.          .The |
0000a690  6b 65 79 62 6f 61 72 64  20 77 69 6e 64 6f 77 20  |keyboard window |
0000a6a0  68 61 73 20 74 68 65 20  66 6f 6c 6c 6f 77 69 6e  |has the followin|
0000a6b0  67 20 69 63 6f 6e 73 20  77 68 69 63 68 20 61 72  |g icons which ar|
0000a6c0  65 20 61 63 74 69 76 61  74 65 64 20 62 79 20 63  |e activated by c|
0000a6d0  6c 69 63 6b 69 6e 67 20  6f 6e 20 74 68 65 6d 3a  |licking on them:|
0000a6e0  0a 0a 50 6c 61 79 3a 20  57 68 61 74 20 74 6f 20  |..Play: What to |
0000a6f0  70 6c 61 79 20 77 68 65  6e 20 79 6f 75 20 70 72  |play when you pr|
0000a700  65 73 73 20 61 20 6b 65  79 2e 0a 0a 41 6c 6c 20  |ess a key...All |
0000a710  3a 20 77 69 6c 6c 20 70  6c 61 79 20 74 68 65 20  |: will play the |
0000a720  77 68 6f 6c 65 20 73 61  6d 70 6c 65 2e 0a 4c 6f  |whole sample..Lo|
0000a730  6f 70 20 3a 20 77 69 6c  6c 20 70 6c 61 79 20 61  |op : will play a|
0000a740  20 6c 6f 6f 70 20 6f 66  20 74 68 65 20 61 72 65  | loop of the are|
0000a750  61 20 73 65 6c 65 63 74  65 64 20 62 79 20 74 68  |a selected by th|
0000a760  65 20 6c 6f 6f 70 20 70  6f 69 6e 74 65 72 73 2e  |e loop pointers.|
0000a770  0a 53 65 6c 20 3a 20 77  69 6c 6c 20 70 6c 61 79  |.Sel : will play|
0000a780  20 74 68 65 20 73 65 6c  65 63 74 65 64 20 61 72  | the selected ar|
0000a790  65 61 2e 0a 2d 3e 4c 6f  6f 70 20 3a 20 77 69 6c  |ea..->Loop : wil|
0000a7a0  6c 20 70 6c 61 79 20 74  68 65 20 73 61 6d 70 6c  |l play the sampl|
0000a7b0  65 20 66 6f 72 6d 20 73  74 61 72 74 20 74 6f 20  |e form start to |
0000a7c0  74 68 65 20 72 69 67 68  74 20 6c 6f 6f 70 20 70  |the right loop p|
0000a7d0  6f 69 6e 74 65 72 2c 20  74 68 65 6e 20 69 74 20  |ointer, then it |
0000a7e0  77 69 6c 6c 20 70 6c 61  79 20 74 68 65 20 6c 6f  |will play the lo|
0000a7f0  6f 70 20 28 74 68 69 73  20 69 73 20 75 73 65 64  |op (this is used|
0000a800  20 66 6f 72 20 65 78 61  6d 70 6c 65 20 62 79 20  | for example by |
0000a810  27 54 72 61 63 6b 65 72  27 20 61 6e 64 20 27 45  |'Tracker' and 'E|
0000a820  4d 52 27 20 66 69 6c 65  73 29 2e 0a 0a 4b 65 79  |MR' files)...Key|
0000a830  73 3a 0a 0a 52 65 6c 65  61 73 65 20 3a 20 69 66  |s:..Release : if|
0000a840  20 72 65 6c 65 61 73 65  20 69 73 20 6f 6e 2c 20  | release is on, |
0000a850  74 68 65 20 76 6f 6c 75  6d 65 20 77 69 6c 6c 20  |the volume will |
0000a860  66 61 64 65 20 61 66 74  65 72 20 61 20 6b 65 79  |fade after a key|
0000a870  20 69 73 20 72 65 6c 65  61 73 65 64 2e 0a 4d 75  | is released..Mu|
0000a880  6c 74 69 70 6c 65 20 3a  20 61 6c 6c 6f 77 73 20  |ltiple : allows |
0000a890  6d 75 6c 74 69 70 6c 65  20 6b 65 79 20 70 6c 61  |multiple key pla|
0000a8a0  79 69 6e 67 20 28 75 70  20 74 6f 20 74 68 72 65  |ying (up to thre|
0000a8b0  65 20 63 68 61 6e 6e 65  6c 73 29 2e 0a 0a 48 69  |e channels)...Hi|
0000a8c0  74 74 69 6e 67 20 74 68  65 20 73 70 61 63 65 62  |tting the spaceb|
0000a8d0  61 72 20 77 69 6c 6c 20  73 74 6f 70 20 74 68 65  |ar will stop the|
0000a8e0  20 73 61 6d 70 6c 65 20  70 6c 61 79 69 6e 67 2e  | sample playing.|
0000a8f0  0a 0a 49 74 20 69 73 20  61 6c 73 6f 20 70 6f 73  |..It is also pos|
0000a900  73 69 62 6c 65 20 74 6f  20 70 6c 61 79 20 74 68  |sible to play th|
0000a910  65 20 73 61 6d 70 6c 65  20 66 72 6f 6d 20 74 68  |e sample from th|
0000a920  65 20 65 64 69 74 6f 72  20 77 69 6e 64 6f 77 20  |e editor window |
0000a930  62 79 20 63 6c 69 63 6b  69 6e 67 20 6f 6e 20 74  |by clicking on t|
0000a940  68 65 20 27 41 6c 6c 27  2c 20 27 53 65 6c 27 20  |he 'All', 'Sel' |
0000a950  61 6e 64 20 27 57 69 6e  64 6f 77 27 20 69 63 6f  |and 'Window' ico|
0000a960  6e 73 2e 20 43 6c 69 63  6b 69 6e 67 20 6f 6e 20  |ns. Clicking on |
0000a970  74 68 65 20 27 58 27 20  69 63 6f 6e 20 77 69 6c  |the 'X' icon wil|
0000a980  6c 20 73 74 6f 70 20 74  68 65 20 73 61 6d 70 6c  |l stop the sampl|
0000a990  65 20 70 6c 61 79 69 6e  67 2e 0a 0a 54 68 65 20  |e playing...The |
0000a9a0  66 75 6e 63 74 69 6f 6e  20 6b 65 79 73 20 73 65  |function keys se|
0000a9b0  74 20 74 68 65 20 6f 63  74 61 76 65 20 66 6f 72  |t the octave for|
0000a9c0  20 74 68 65 20 73 61 6d  70 6c 65 20 74 6f 20 70  | the sample to p|
0000a9d0  6c 61 79 2e 20 46 31 20  69 73 20 74 68 65 20 6c  |lay. F1 is the l|
0000a9e0  6f 77 65 73 74 20 61 6e  64 20 46 35 20 74 68 65  |owest and F5 the|
0000a9f0  20 68 69 67 68 65 73 74  2e 20 54 68 69 73 20 67  | highest. This g|
0000aa00  69 76 65 73 20 61 20 74  6f 74 61 6c 20 70 69 74  |ives a total pit|
0000aa10  63 68 20 72 61 6e 67 65  20 6f 66 20 6f 76 65 72  |ch range of over|
0000aa20  20 36 20 6f 63 74 61 76  65 73 2e 0a 0a 0a 36 2e  | 6 octaves....6.|
0000aa30  33 2e 20 57 61 76 65 66  6f 72 6d 20 77 69 6e 64  |3. Waveform wind|
0000aa40  6f 77 20 6d 65 6e 75 20  66 75 6e 63 74 69 6f 6e  |ow menu function|
0000aa50  73 2e 0a 0a 54 68 65 20  77 61 76 65 66 6f 72 6d  |s...The waveform|
0000aa60  20 77 69 6e 64 6f 77 20  6d 65 6e 75 20 66 75 6e  | window menu fun|
0000aa70  63 74 69 6f 6e 73 20 61  72 65 3a 0a 0a 4d 69 73  |ctions are:..Mis|
0000aa80  63 3a 0a 0a 49 6e 66 6f  20 3a 20 67 69 76 65 73  |c:..Info : gives|
0000aa90  20 69 6e 66 6f 20 61 62  6f 75 74 20 6d 65 6d 6f  | info about memo|
0000aaa0  72 79 2c 20 70 6f 69 6e  74 65 72 73 20 65 74 63  |ry, pointers etc|
0000aab0  2e 0a 53 61 6d 70 6c 65  20 54 79 70 65 20 3a 20  |..Sample Type : |
0000aac0  61 6c 6c 6f 77 73 20 79  6f 75 20 74 6f 20 73 65  |allows you to se|
0000aad0  74 20 74 68 65 20 73 61  6d 70 6c 65 20 74 79 70  |t the sample typ|
0000aae0  65 2e 0a 53 65 74 20 42  75 66 66 65 72 20 3a 20  |e..Set Buffer : |
0000aaf0  73 65 74 20 74 68 65 20  62 75 66 66 65 72 20 6c  |set the buffer l|
0000ab00  65 6e 67 74 68 2e 20 49  66 20 79 6f 75 20 77 69  |ength. If you wi|
0000ab10  73 68 20 74 6f 20 75 73  65 20 61 20 70 61 72 74  |sh to use a part|
0000ab20  69 63 75 6c 61 72 6c 79  20 6c 61 72 67 65 20 73  |icularly large s|
0000ab30  61 6d 70 6c 65 2c 20 79  6f 75 20 77 69 6c 6c 20  |ample, you will |
0000ab40  68 61 76 65 20 74 6f 20  73 65 74 20 74 68 65 20  |have to set the |
0000ab50  62 75 66 66 65 72 20 74  6f 20 74 68 65 20 61 70  |buffer to the ap|
0000ab60  70 72 6f 70 72 69 61 74  65 20 73 69 7a 65 2e 20  |propriate size. |
0000ab70  54 68 65 20 6d 61 78 69  6d 75 6d 20 62 75 66 66  |The maximum buff|
0000ab80  65 72 20 73 69 7a 65 20  69 73 20 63 75 72 72 65  |er size is curre|
0000ab90  6e 74 6c 79 20 73 65 74  20 74 6f 20 31 4d 62 2e  |ntly set to 1Mb.|
0000aba0  20 59 6f 75 20 63 61 6e  20 63 68 61 6e 67 65 20  | You can change |
0000abb0  74 68 65 20 64 65 66 61  75 6c 74 20 62 75 66 66  |the default buff|
0000abc0  65 72 73 69 7a 65 20 62  79 20 61 6c 74 65 72 69  |ersize by alteri|
0000abd0  6e 67 20 74 68 65 20 21  52 75 6e 20 66 69 6c 65  |ng the !Run file|
0000abe0  20 69 6e 20 74 68 65 20  21 53 46 58 45 44 20 64  | in the !SFXED d|
0000abf0  69 72 65 63 74 6f 72 79  2e 20 55 73 65 3a 20 53  |irectory. Use: S|
0000ac00  65 74 20 53 46 58 45 44  24 42 75 66 66 65 72 53  |et SFXED$BufferS|
0000ac10  69 7a 65 20 3c 53 69 7a  65 3e 2e 0a 52 65 73 74  |ize <Size>..Rest|
0000ac20  61 72 74 20 3a 20 63 6c  65 61 72 73 20 65 76 65  |art : clears eve|
0000ac30  72 79 74 68 69 6e 67 2e  20 4d 41 4b 45 20 53 55  |rything. MAKE SU|
0000ac40  52 45 20 59 4f 55 20 48  41 56 45 20 53 41 56 45  |RE YOU HAVE SAVE|
0000ac50  44 21 2e 0a 0a 53 61 76  65 3a 0a 20 20 20 20 20  |D!...Save:.     |
0000ac60  20 20 0a 41 6c 6c 20 3a  20 74 68 69 73 20 73 61  |  .All : this sa|
0000ac70  76 65 73 20 74 68 65 20  77 68 6f 6c 65 20 73 61  |ves the whole sa|
0000ac80  6d 70 6c 65 2e 0a 53 65  6c 65 63 74 69 6f 6e 20  |mple..Selection |
0000ac90  3a 20 6f 6e 6c 79 20 73  61 76 65 73 20 74 68 65  |: only saves the|
0000aca0  20 73 65 6c 65 63 74 65  64 20 61 72 65 61 2e 0a  | selected area..|
0000acb0  43 6c 69 70 62 6f 61 72  64 20 3a 20 73 61 76 65  |Clipboard : save|
0000acc0  73 20 74 68 65 20 63 6c  69 70 62 6f 61 72 64 20  |s the clipboard |
0000acd0  28 66 72 6f 6d 20 27 43  75 74 27 20 6f 72 20 27  |(from 'Cut' or '|
0000ace0  43 6f 70 79 27 29 2e 0a  0a 21 53 46 58 45 44 20  |Copy')...!SFXED |
0000acf0  73 61 76 65 73 20 69 6e  20 74 68 65 20 66 6f 6c  |saves in the fol|
0000ad00  6c 6f 77 69 6e 67 20 66  6f 72 6d 61 74 73 3a 0a  |lowing formats:.|
0000ad10  0a 54 72 61 63 6b 65 72  3a 20 54 72 61 63 6b 65  |.Tracker: Tracke|
0000ad20  72 20 66 69 6c 65 2e 0a  54 72 61 63 6b 65 72 5f  |r file..Tracker_|
0000ad30  4e 48 20 3a 20 54 72 61  63 6b 65 72 20 66 69 6c  |NH : Tracker fil|
0000ad40  65 20 77 69 74 68 6f 75  74 20 68 65 61 64 65 72  |e without header|
0000ad50  2e 0a 41 72 6d 61 64 65  75 73 20 3a 20 41 72 6d  |..Armadeus : Arm|
0000ad60  61 64 65 75 73 20 66 69  6c 65 2e 0a 44 53 45 64  |adeus file..DSEd|
0000ad70  69 74 20 3a 20 44 53 45  64 69 74 20 66 69 6c 65  |it : DSEdit file|
0000ad80  2e 0a 45 4d 52 20 3a 20  45 4d 52 20 66 69 6c 65  |..EMR : EMR file|
0000ad90  2e 0a 52 61 77 20 3a 20  72 61 77 20 64 61 74 61  |..Raw : raw data|
0000ada0  20 66 69 6c 65 2e 0a 4d  6f 64 75 6c 65 20 3a 20  | file..Module : |
0000adb0  63 72 65 61 74 65 73 20  61 20 6d 6f 64 75 6c 65  |creates a module|
0000adc0  20 66 72 6f 6d 20 73 61  6d 70 6c 65 20 64 61 74  | from sample dat|
0000add0  61 2e 0a 0a 46 6f 72 20  73 6f 6d 65 20 66 69 6c  |a...For some fil|
0000ade0  65 20 74 79 70 65 73 2c  20 74 68 65 20 73 61 6d  |e types, the sam|
0000adf0  70 6c 65 20 6d 75 73 74  20 62 65 20 6f 66 20 74  |ple must be of t|
0000ae00  68 65 20 63 6f 72 72 65  63 74 20 66 6f 72 6d 20  |he correct form |
0000ae10  28 65 67 2e 20 54 72 61  63 6b 65 72 20 66 69 6c  |(eg. Tracker fil|
0000ae20  65 73 20 6d 75 73 74 20  62 65 20 6c 6f 67 61 72  |es must be logar|
0000ae30  69 74 68 6d 69 63 29 2e  20 49 66 20 74 68 65 20  |ithmic). If the |
0000ae40  61 72 65 20 6e 6f 74 2c  20 21 53 46 58 45 44 20  |are not, !SFXED |
0000ae50  77 69 6c 6c 20 77 61 72  6e 20 79 6f 75 20 74 68  |will warn you th|
0000ae60  61 74 20 69 74 20 63 61  6e 6e 6f 74 20 70 65 72  |at it cannot per|
0000ae70  66 6f 72 6d 20 79 6f 75  72 20 61 63 74 69 6f 6e  |form your action|
0000ae80  2e 20 0a 0a 4e 6f 74 65  20 6f 6e 20 6d 6f 64 75  |. ..Note on modu|
0000ae90  6c 65 73 3a 20 74 68 65  20 6c 6f 6f 70 20 70 6f  |les: the loop po|
0000aea0  69 6e 74 65 72 73 20 77  69 6c 6c 20 6f 6e 6c 79  |inters will only|
0000aeb0  20 62 65 20 75 73 65 64  20 69 6e 20 74 68 65 20  | be used in the |
0000aec0  6d 6f 64 75 6c 65 20 69  66 20 74 68 65 20 27 4c  |module if the 'L|
0000aed0  6f 6f 70 27 20 69 63 6f  6e 20 69 73 20 6f 6e 20  |oop' icon is on |
0000aee0  61 6e 64 20 77 68 65 6e  20 74 68 65 20 53 61 76  |and when the Sav|
0000aef0  65 20 2d 3e 20 41 6c 6c  20 6d 65 6e 75 20 65 6e  |e -> All menu en|
0000af00  74 72 79 20 69 73 20 75  73 65 64 2e 0a 20 20 20  |try is used..   |
0000af10  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
0000af30  20 0a 45 64 69 74 3a 0a  0a 43 75 74 20 3a 20 63  | .Edit:..Cut : c|
0000af40  75 74 73 20 74 68 65 20  73 65 6c 65 63 74 65 64  |uts the selected|
0000af50  20 61 72 65 61 20 6f 6e  74 6f 20 74 68 65 20 63  | area onto the c|
0000af60  6c 69 70 62 6f 61 72 64  2e 0a 43 6f 70 79 20 3a  |lipboard..Copy :|
0000af70  20 63 6f 70 69 65 73 20  74 68 65 20 73 65 6c 65  | copies the sele|
0000af80  63 74 65 64 20 61 72 65  61 20 6f 6e 74 6f 20 74  |cted area onto t|
0000af90  68 65 20 63 6c 69 70 62  6f 61 72 64 2e 0a 50 61  |he clipboard..Pa|
0000afa0  73 74 65 20 3a 20 70 61  73 74 65 73 20 74 68 65  |ste : pastes the|
0000afb0  20 63 6c 69 70 62 6f 61  72 64 20 61 74 20 74 68  | clipboard at th|
0000afc0  65 20 72 69 67 68 74 20  73 65 6c 65 63 74 20 70  |e right select p|
0000afd0  6f 69 6e 74 65 72 2e 0a  44 65 6c 65 74 65 20 3a  |ointer..Delete :|
0000afe0  20 64 65 6c 65 74 65 73  20 74 68 65 20 73 65 6c  | deletes the sel|
0000aff0  65 63 74 65 64 20 61 72  65 61 2e 0a 44 65 6c 65  |ected area..Dele|
0000b000  74 65 2a 20 3a 20 64 65  6c 65 74 65 73 20 65 76  |te* : deletes ev|
0000b010  65 72 79 74 68 69 6e 67  20 74 68 61 74 20 69 73  |erything that is|
0000b020  20 4e 4f 54 20 73 65 6c  65 63 74 65 64 2e 0a 44  | NOT selected..D|
0000b030  65 6c 65 74 65 4c 20 3a  20 64 65 6c 65 74 65 73  |eleteL : deletes|
0000b040  20 65 76 65 72 79 74 68  69 6e 67 20 74 6f 20 74  | everything to t|
0000b050  68 65 20 6c 65 66 74 20  6f 66 20 74 68 65 20 6c  |he left of the l|
0000b060  65 66 74 20 73 65 6c 65  63 74 20 70 6f 69 6e 74  |eft select point|
0000b070  65 72 2e 0a 44 65 6c 65  74 65 52 20 3a 20 64 65  |er..DeleteR : de|
0000b080  6c 65 74 65 73 20 65 76  65 72 79 74 68 69 6e 67  |letes everything|
0000b090  20 74 6f 20 74 68 65 20  72 69 67 68 74 20 6f 66  | to the right of|
0000b0a0  20 74 68 65 20 72 69 67  68 74 20 73 65 6c 65 63  | the right selec|
0000b0b0  74 20 70 6f 69 6e 74 65  72 2e 0a 0a 54 68 65 72  |t pointer...Ther|
0000b0c0  65 20 69 73 20 4e 4f 20  75 6e 64 6f 20 66 75 6e  |e is NO undo fun|
0000b0d0  63 74 69 6f 6e 21 0a 0a  53 65 6c 65 63 74 3a 0a  |ction!..Select:.|
0000b0e0  0a 53 65 6c 65 63 74 20  3a 20 63 6c 69 63 6b 20  |.Select : click |
0000b0f0  6f 6e 20 53 65 6c 65 63  74 20 28 77 69 74 68 6f  |on Select (witho|
0000b100  75 74 20 67 6f 69 6e 67  20 74 6f 20 74 68 65 20  |ut going to the |
0000b110  73 75 62 2d 6d 65 6e 75  29 20 77 69 6c 6c 20 63  |sub-menu) will c|
0000b120  6c 65 61 72 20 61 6e 79  20 73 65 6c 65 63 74 69  |lear any selecti|
0000b130  6f 6e 2e 0a 41 6c 6c 20  3a 20 73 65 6c 65 63 74  |on..All : select|
0000b140  73 20 74 68 65 20 77 68  6f 6c 65 20 73 61 6d 70  |s the whole samp|
0000b150  6c 65 2e 0a 4c 6f 6f 70  20 3a 20 73 65 6c 65 63  |le..Loop : selec|
0000b160  74 73 20 74 68 65 20 61  72 65 61 20 69 6e 64 69  |ts the area indi|
0000b170  63 61 74 65 64 20 62 79  20 74 68 65 20 6c 6f 6f  |cated by the loo|
0000b180  70 20 70 6f 69 6e 74 65  72 73 2e 0a 4c 65 66 74  |p pointers..Left|
0000b190  20 3a 20 73 65 6c 65 63  74 73 20 65 76 65 72 79  | : selects every|
0000b1a0  74 68 69 6e 67 20 74 6f  20 74 68 65 20 6c 65 66  |thing to the lef|
0000b1b0  74 20 6f 66 20 74 68 65  20 6c 65 66 74 20 73 65  |t of the left se|
0000b1c0  6c 65 63 74 20 70 6f 69  6e 74 65 72 2e 0a 52 69  |lect pointer..Ri|
0000b1d0  67 68 74 20 3a 20 73 65  6c 65 63 74 73 20 65 76  |ght : selects ev|
0000b1e0  65 72 79 74 68 69 6e 67  20 74 6f 20 74 68 65 20  |erything to the |
0000b1f0  72 69 67 68 74 20 6f 66  20 74 68 65 20 72 69 67  |right of the rig|
0000b200  68 74 20 73 65 6c 65 63  74 20 70 6f 69 6e 74 65  |ht select pointe|
0000b210  72 2e 0a 57 69 6e 64 6f  77 20 3a 20 73 65 6c 65  |r..Window : sele|
0000b220  63 74 73 20 74 68 65 20  63 75 72 72 65 6e 74 20  |cts the current |
0000b230  77 69 6e 64 6f 77 2e 0a  43 6c 65 61 72 20 3a 20  |window..Clear : |
0000b240  63 6c 65 61 72 73 20 74  68 65 20 73 65 6c 65 63  |clears the selec|
0000b250  74 69 6f 6e 20 28 74 68  69 73 20 69 73 20 74 68  |tion (this is th|
0000b260  65 20 73 61 6d 65 20 61  73 20 53 65 6c 65 63 74  |e same as Select|
0000b270  20 77 69 74 68 6f 75 74  20 73 75 62 2d 6d 65 6e  | without sub-men|
0000b280  75 29 2e 0a 0a 0a 5a 6f  6f 6d 3a 0a 0a 5a 6f 6f  |u)....Zoom:..Zoo|
0000b290  6d 20 3a 20 63 6c 69 63  6b 20 6f 6e 20 5a 6f 6f  |m : click on Zoo|
0000b2a0  6d 20 28 77 69 74 68 6f  75 74 20 73 75 62 2d 6d  |m (without sub-m|
0000b2b0  65 6e 75 29 20 77 69 6c  6c 20 7a 6f 6f 6d 20 69  |enu) will zoom i|
0000b2c0  6e 20 74 6f 20 74 68 65  20 73 65 6c 65 63 74 65  |n to the selecte|
0000b2d0  64 20 61 72 65 61 2e 20  49 74 20 69 73 20 70 6f  |d area. It is po|
0000b2e0  73 73 69 62 6c 65 20 74  6f 20 7a 6f 6f 6d 20 69  |ssible to zoom i|
0000b2f0  6e 74 6f 20 6f 6e 65 20  62 79 74 65 20 6f 66 20  |nto one byte of |
0000b300  73 61 6d 70 6c 65 20 64  61 74 61 2e 0a 41 6c 6c  |sample data..All|
0000b310  20 3a 20 76 69 65 77 73  20 74 68 65 20 77 68 6f  | : views the who|
0000b320  6c 65 20 73 61 6d 70 6c  65 2e 0a 4f 75 74 20 3a  |le sample..Out :|
0000b330  20 7a 6f 6f 6d 73 20 6f  75 74 20 74 6f 20 76 69  | zooms out to vi|
0000b340  65 77 20 73 6f 6d 65 20  6d 6f 72 65 20 73 61 6d  |ew some more sam|
0000b350  70 6c 65 20 64 61 74 61  2e 0a 4c 6f 6f 70 20 3a  |ple data..Loop :|
0000b360  20 7a 6f 6f 6d 20 69 6e  20 6f 6e 20 74 68 65 20  | zoom in on the |
0000b370  6c 6f 6f 70 2e 0a 53 65  6c 65 63 74 65 64 20 3a  |loop..Selected :|
0000b380  20 5a 6f 6f 6d 20 69 6e  20 61 6e 64 20 76 69 65  | Zoom in and vie|
0000b390  77 20 74 68 65 20 73 65  6c 65 63 74 65 64 20 61  |w the selected a|
0000b3a0  72 65 61 20 28 74 68 69  73 20 69 73 20 74 68 65  |rea (this is the|
0000b3b0  20 73 61 6d 65 20 61 73  20 5a 6f 6f 6d 20 77 69  | same as Zoom wi|
0000b3c0  74 68 6f 75 74 20 73 75  62 2d 6d 65 6e 75 29 2e  |thout sub-menu).|
0000b3d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
0000b400  20 20 20 20 20 20 20 20  20 20 20 20 20 0a 52 65  |             .Re|
0000b410  6d 65 6d 62 65 72 20 3a  20 72 65 6d 65 6d 62 65  |member : remembe|
0000b420  72 73 20 74 68 65 20 73  74 61 74 65 20 6f 66 20  |rs the state of |
0000b430  74 68 65 20 63 75 72 72  65 6e 74 20 77 69 6e 64  |the current wind|
0000b440  6f 77 2e 20 49 66 20 79  6f 75 20 77 61 6e 74 20  |ow. If you want |
0000b450  74 6f 20 67 6f 20 62 61  63 6b 20 74 6f 20 74 68  |to go back to th|
0000b460  69 73 20 70 61 72 74 69  63 75 6c 61 72 20 73 65  |is particular se|
0000b470  63 74 69 6f 6e 20 75 73  65 2e 2e 2e 0a 52 65 63  |ction use....Rec|
0000b480  61 6c 6c 20 3a 20 77 69  6c 6c 20 7a 6f 6f 6d 20  |all : will zoom |
0000b490  69 6e 74 6f 20 74 68 65  20 73 65 6c 65 63 74 69  |into the selecti|
0000b4a0  6f 6e 20 79 6f 75 20 68  61 76 65 20 27 52 65 6d  |on you have 'Rem|
0000b4b0  65 6d 62 65 72 65 64 27  2e 0a 20 20 20 20 20 20  |embered'..      |
0000b4c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
0000b4d0  20 0a 4c 6f 6f 70 3a 0a  0a 41 6c 6c 20 3a 20 73  | .Loop:..All : s|
0000b4e0  65 74 73 20 74 68 65 20  6c 6f 6f 70 20 70 6f 69  |ets the loop poi|
0000b4f0  6e 74 65 72 73 20 74 6f  20 74 68 65 20 77 68 6f  |nters to the who|
0000b500  6c 65 20 73 61 6d 70 6c  65 2e 0a 57 69 6e 64 6f  |le sample..Windo|
0000b510  77 20 3a 20 73 65 74 73  20 74 68 65 20 6c 6f 6f  |w : sets the loo|
0000b520  70 20 70 6f 69 6e 74 65  72 73 20 74 6f 20 74 68  |p pointers to th|
0000b530  65 20 63 75 72 72 65 6e  74 20 77 69 6e 64 6f 77  |e current window|
0000b540  2e 0a 53 65 6c 65 63 74  65 64 20 3a 20 73 65 74  |..Selected : set|
0000b550  73 20 74 68 65 20 6c 6f  6f 70 20 70 6f 69 6e 74  |s the loop point|
0000b560  65 72 73 20 74 6f 20 74  68 65 20 63 75 72 72 65  |ers to the curre|
0000b570  6e 74 20 73 65 6c 65 63  74 69 6f 6e 2e 0a 48 61  |nt selection..Ha|
0000b580  6c 66 20 3a 20 68 61 6c  76 65 73 20 74 68 65 20  |lf : halves the |
0000b590  64 69 73 74 61 6e 63 65  20 62 65 74 77 65 65 6e  |distance between|
0000b5a0  20 74 68 65 20 6c 6f 6f  70 20 70 6f 69 6e 74 65  | the loop pointe|
0000b5b0  72 73 20 28 68 61 6e 64  79 20 66 6f 72 20 6d 61  |rs (handy for ma|
0000b5c0  6b 69 6e 67 20 27 73 6f  6e 67 73 27 20 66 72 6f  |king 'songs' fro|
0000b5d0  6d 20 6f 6e 6c 79 20 6f  6e 65 20 73 61 6d 70 6c  |m only one sampl|
0000b5e0  65 29 2e 0a 44 6f 75 62  6c 65 20 3a 20 64 6f 75  |e)..Double : dou|
0000b5f0  62 6c 65 73 20 74 68 65  20 64 69 73 74 61 6e 63  |bles the distanc|
0000b600  65 20 62 65 74 77 65 65  6e 20 74 68 65 20 6c 6f  |e between the lo|
0000b610  6f 70 20 70 6f 69 6e 74  65 72 73 2e 20 20 20 20  |op pointers.    |
0000b620  20 20 20 20 0a 52 65 6d  65 6d 62 65 72 20 3a 20  |    .Remember : |
0000b630  72 65 6d 65 6d 62 65 72  73 20 74 68 65 20 6c 6f  |remembers the lo|
0000b640  6f 70 20 70 6f 69 6e 74  65 72 20 70 6f 73 69 74  |op pointer posit|
0000b650  69 6f 6e 73 2e 0a 52 65  63 61 6c 6c 20 3a 20 72  |ions..Recall : r|
0000b660  65 63 61 6c 6c 73 20 74  68 65 20 27 52 65 6d 65  |ecalls the 'Reme|
0000b670  6d 62 65 72 65 64 27 20  6c 6f 6f 70 20 70 6f 69  |mbered' loop poi|
0000b680  6e 74 65 72 20 70 6f 73  69 74 69 6f 6e 73 2e 0a  |nter positions..|
0000b690  0a 47 6f 6f 64 69 65 73  3a 0a 0a 54 68 65 73 65  |.Goodies:..These|
0000b6a0  20 66 75 6e 63 74 69 6f  6e 73 20 77 6f 72 6b 20  | functions work |
0000b6b0  6f 6e 20 74 68 65 20 73  65 6c 65 63 74 65 64 20  |on the selected |
0000b6c0  61 72 65 61 2c 20 6f 72  20 28 69 66 20 6e 6f 74  |area, or (if not|
0000b6d0  68 69 6e 67 20 69 73 20  73 65 6c 65 63 74 65 64  |hing is selected|
0000b6e0  29 20 6f 6e 20 74 68 65  20 77 68 6f 6c 65 20 73  |) on the whole s|
0000b6f0  61 6d 70 6c 65 2e 20 53  6f 6d 65 20 66 75 6e 63  |ample. Some func|
0000b700  74 69 6f 6e 73 20 61 72  65 20 6f 6e 6c 79 20 61  |tions are only a|
0000b710  76 61 69 6c 61 62 6c 65  20 66 6f 72 20 6c 69 6e  |vailable for lin|
0000b720  65 61 72 20 73 61 6d 70  6c 65 73 2e 20 49 66 20  |ear samples. If |
0000b730  79 6f 75 20 77 61 6e 74  20 74 6f 20 75 73 65 20  |you want to use |
0000b740  74 68 65 73 65 20 66 75  6e 63 74 69 6f 6e 73 20  |these functions |
0000b750  6f 6e 20 61 20 6c 6f 67  61 72 69 74 68 6d 69 63  |on a logarithmic|
0000b760  20 73 61 6d 70 6c 65 2c  20 79 6f 75 20 68 61 76  | sample, you hav|
0000b770  65 20 74 6f 20 63 6f 6e  76 65 72 74 20 74 68 65  |e to convert the|
0000b780  20 73 61 6d 70 6c 65 20  66 72 6f 6d 20 6c 6f 67  | sample from log|
0000b790  20 74 6f 20 6c 69 6e 2c  20 70 65 72 66 6f 72 6d  | to lin, perform|
0000b7a0  20 74 68 65 20 66 75 6e  63 74 69 6f 6e 20 61 6e  | the function an|
0000b7b0  64 20 74 68 65 6e 20 63  6f 6e 76 65 72 74 20 66  |d then convert f|
0000b7c0  72 6f 6d 20 6c 69 6e 20  74 6f 20 6c 6f 67 2e 0a  |rom lin to log..|
0000b7d0  20 20 20 20 20 20 20 20  20 20 20 20 20 0a 53 69  |             .Si|
0000b7e0  67 6e 65 64 20 3a 20 63  6f 6e 76 65 72 74 73 20  |gned : converts |
0000b7f0  73 69 67 6e 65 64 20 3c  2d 3e 20 75 6e 73 69 67  |signed <-> unsig|
0000b800  6e 65 64 2e 0a 4c 69 6e  2d 3e 4c 6f 67 20 3a 20  |ned..Lin->Log : |
0000b810  63 6f 6e 76 65 72 74 73  20 6c 69 6e 65 61 72 20  |converts linear |
0000b820  74 6f 20 6c 6f 67 61 72  69 74 68 6d 69 63 2e 0a  |to logarithmic..|
0000b830  4c 6f 67 2d 3e 4c 69 6e  20 3a 20 63 6f 6e 76 65  |Log->Lin : conve|
0000b840  72 74 73 20 6c 6f 67 61  72 69 74 68 6d 69 63 20  |rts logarithmic |
0000b850  74 6f 20 73 69 67 6e 65  64 20 6c 69 6e 65 61 72  |to signed linear|
0000b860  2e 0a 52 65 76 65 72 73  65 20 3a 20 77 69 6c 6c  |..Reverse : will|
0000b870  20 72 65 76 65 72 73 65  20 74 68 65 20 73 61 6d  | reverse the sam|
0000b880  70 6c 65 20 64 61 74 61  20 28 74 6f 20 70 6c 61  |ple data (to pla|
0000b890  79 20 69 74 20 62 61 63  6b 77 61 72 64 73 29 2e  |y it backwards).|
0000b8a0  0a 4c 6f 77 20 50 61 73  73 20 3a 20 77 69 6c 6c  |.Low Pass : will|
0000b8b0  20 66 69 6c 74 65 72 20  6f 75 74 20 74 68 65 20  | filter out the |
0000b8c0  68 69 67 68 65 72 20 66  72 65 71 75 65 6e 63 69  |higher frequenci|
0000b8d0  65 73 2e 20 41 20 76 61  6c 75 65 20 6f 66 20 30  |es. A value of 0|
0000b8e0  20 77 69 6c 6c 20 66 69  6c 74 65 72 20 65 76 65  | will filter eve|
0000b8f0  72 79 74 68 69 6e 67 2c  20 77 68 69 6c 65 20 61  |rything, while a|
0000b900  20 76 61 6c 75 65 20 6f  66 20 32 35 35 20 77 69  | value of 255 wi|
0000b910  6c 6c 20 66 69 6c 74 65  72 20 6e 6f 74 68 69 6e  |ll filter nothin|
0000b920  67 2e 0a 48 69 67 68 20  50 61 73 73 20 3a 20 77  |g..High Pass : w|
0000b930  69 6c 6c 20 66 69 6c 74  65 72 20 6f 75 74 20 74  |ill filter out t|
0000b940  68 65 20 6c 6f 77 65 72  20 66 72 65 71 75 65 6e  |he lower frequen|
0000b950  63 69 65 73 2e 20 41 20  76 61 6c 75 65 20 6f 66  |cies. A value of|
0000b960  20 30 20 77 69 6c 6c 20  66 69 6c 74 65 72 20 6e  | 0 will filter n|
0000b970  6f 74 68 69 6e 67 2c 20  77 68 69 6c 65 20 61 20  |othing, while a |
0000b980  76 61 6c 75 65 20 6f 66  20 32 35 35 20 77 69 6c  |value of 255 wil|
0000b990  6c 20 66 69 6c 74 65 72  20 65 76 65 72 79 74 68  |l filter everyth|
0000b9a0  69 6e 67 2e 0a 41 6d 70  6c 69 66 79 20 3a 20 73  |ing..Amplify : s|
0000b9b0  63 61 6c 65 20 74 68 65  20 61 6d 70 6c 69 74 75  |cale the amplitu|
0000b9c0  64 65 20 69 6e 20 25 2e  20 65 67 20 35 30 25 20  |de in %. eg 50% |
0000b9d0  77 69 6c 6c 20 68 61 6c  76 65 20 74 68 65 20 76  |will halve the v|
0000b9e0  6f 6c 75 6d 65 2e 0a 45  63 68 6f 2f 52 65 76 65  |olume..Echo/Reve|
0000b9f0  72 62 20 3a 20 65 63 68  6f 20 28 6d 75 6c 74 69  |rb : echo (multi|
0000ba00  70 6c 65 20 65 63 68 6f  27 73 29 2f 72 65 76 65  |ple echo's)/reve|
0000ba10  72 62 20 28 6f 6e 6c 79  20 6f 6e 65 20 65 63 68  |rb (only one ech|
0000ba20  6f 29 2e 20 46 6f 72 20  65 78 61 6d 70 6c 65 20  |o). For example |
0000ba30  61 20 64 65 63 61 79 20  6f 66 20 35 30 25 20 65  |a decay of 50% e|
0000ba40  76 65 72 79 20 31 30 32  34 20 62 79 74 65 73 20  |very 1024 bytes |
0000ba50  6d 65 61 6e 73 20 74 68  61 74 20 74 68 65 20 65  |means that the e|
0000ba60  63 68 6f 20 6f 6e 20 61  20 31 30 4b 20 73 61 6d  |cho on a 10K sam|
0000ba70  70 6c 65 20 77 69 6c 6c  20 72 65 70 65 61 74 20  |ple will repeat |
0000ba80  31 30 20 74 69 6d 65 73  2c 20 68 61 6c 76 69 6e  |10 times, halvin|
0000ba90  67 20 74 68 65 20 61 6d  70 6c 69 74 75 64 65 20  |g the amplitude |
0000baa0  65 61 63 68 20 72 65 70  65 61 74 2e 0a 46 61 64  |each repeat..Fad|
0000bab0  65 20 49 6e 2f 4f 75 74  20 3a 20 66 61 64 65 20  |e In/Out : fade |
0000bac0  66 72 6f 6d 20 73 74 61  72 74 20 76 6f 6c 75 6d  |from start volum|
0000bad0  65 20 74 6f 20 65 6e 64  20 76 6f 6c 75 6d 65 20  |e to end volume |
0000bae0  69 6e 20 25 2e 0a 53 74  72 65 74 63 68 20 3a 20  |in %..Stretch : |
0000baf0  73 74 72 65 74 63 68 20  74 68 65 20 73 61 6d 70  |stretch the samp|
0000bb00  6c 65 20 69 6e 20 25 2e  20 54 68 69 73 20 61 6c  |le in %. This al|
0000bb10  6c 6f 77 73 20 79 6f 75  20 74 6f 20 63 68 61 6e  |lows you to chan|
0000bb20  67 65 20 74 68 65 20 62  61 73 65 20 70 69 74 63  |ge the base pitc|
0000bb30  68 20 6f 66 20 61 20 73  61 6d 70 6c 65 20 6f 72  |h of a sample or|
0000bb40  20 73 65 63 74 69 6f 6e  20 6f 66 20 61 20 73 61  | section of a sa|
0000bb50  6d 70 6c 65 2e 20 46 6f  72 20 65 78 61 6d 70 6c  |mple. For exampl|
0000bb60  65 20 61 20 73 74 72 65  74 63 68 20 6f 66 20 35  |e a stretch of 5|
0000bb70  30 25 20 77 69 6c 6c 20  64 6f 75 62 6c 65 20 74  |0% will double t|
0000bb80  68 65 20 62 61 73 65 20  70 69 74 63 68 2e 0a 53  |he base pitch..S|
0000bb90  69 6c 65 6e 63 65 20 3a  20 74 68 69 73 20 77 69  |ilence : this wi|
0000bba0  6c 6c 20 7a 65 72 6f 20  61 6e 79 20 63 68 6f 73  |ll zero any chos|
0000bbb0  65 6e 20 73 65 63 74 69  6f 6e 2c 20 74 68 65 20  |en section, the |
0000bbc0  72 65 73 75 6c 74 20 62  65 69 6e 67 20 73 69 6c  |result being sil|
0000bbd0  65 6e 63 65 2e 0a 46 46  54 20 3a 20 54 68 69 73  |ence..FFT : This|
0000bbe0  20 61 6c 6c 6f 77 73 20  79 6f 75 20 61 20 67 72  | allows you a gr|
0000bbf0  61 70 68 69 63 20 66 6f  72 6d 61 74 20 6f 66 20  |aphic format of |
0000bc00  79 6f 75 72 20 73 61 6d  70 6c 65 2c 20 77 68 65  |your sample, whe|
0000bc10  72 65 20 65 61 63 68 20  66 72 65 71 75 65 6e 63  |re each frequenc|
0000bc20  79 20 68 61 73 20 61 20  64 69 66 66 65 72 65 6e  |y has a differen|
0000bc30  74 20 70 6f 73 69 74 69  6f 6e 20 6f 6e 20 74 68  |t position on th|
0000bc40  65 20 67 72 69 64 2e 20  54 68 69 73 20 69 73 20  |e grid. This is |
0000bc50  70 72 6f 76 69 64 65 64  20 74 6f 20 68 65 6c 70  |provided to help|
0000bc60  20 74 68 65 20 6d 6f 72  65 20 65 78 70 65 72 69  | the more experi|
0000bc70  65 6e 63 65 64 20 75 73  65 72 20 74 6f 20 63 72  |enced user to cr|
0000bc80  65 61 74 65 20 73 61 6d  70 6c 65 73 20 77 69 74  |eate samples wit|
0000bc90  68 20 21 53 46 58 4d 20  66 72 6f 6d 20 61 20 73  |h !SFXM from a s|
0000bca0  61 6d 70 6c 65 64 20 73  6f 75 6e 64 2e 20 54 68  |ampled sound. Th|
0000bcb0  65 72 65 20 69 73 20 61  20 66 72 65 71 75 65 6e  |ere is a frequen|
0000bcc0  63 79 20 61 78 69 73 2c  20 61 20 74 69 6d 65 20  |cy axis, a time |
0000bcd0  61 78 69 73 20 61 6e 64  20 61 6e 20 61 6d 70 6c  |axis and an ampl|
0000bce0  69 74 75 64 65 20 61 78  69 73 2e 20 54 68 65 20  |itude axis. The |
0000bcf0  66 72 65 71 75 65 6e 63  79 20 61 78 69 73 20 72  |frequency axis r|
0000bd00  61 6e 67 65 73 20 66 72  6f 6d 20 30 20 74 6f 20  |anges from 0 to |
0000bd10  31 32 38 20 28 66 72 65  71 75 65 6e 63 79 20 61  |128 (frequency a|
0000bd20  74 20 61 6e 20 21 53 46  58 4d 20 4f 73 63 69 6c  |t an !SFXM Oscil|
0000bd30  6c 61 74 6f 72 20 6f 62  6a 65 63 74 29 2e 20 54  |lator object). T|
0000bd40  68 65 20 73 65 6c 65 63  74 65 64 20 73 61 6d 70  |he selected samp|
0000bd50  6c 65 20 61 72 65 61 20  69 73 20 73 74 72 65 74  |le area is stret|
0000bd60  63 68 65 64 20 6f 76 65  72 20 74 68 65 20 74 69  |ched over the ti|
0000bd70  6d 65 20 61 78 69 73 2e  20 54 68 65 20 61 6d 70  |me axis. The amp|
0000bd80  6c 69 74 75 64 65 20 63  61 6e 20 62 65 20 73 65  |litude can be se|
0000bd90  74 20 62 79 20 74 68 65  20 73 63 61 6c 65 20 76  |t by the scale v|
0000bda0  61 6c 75 65 2e 20 20 20  20 20 20 20 20 20 20 20  |alue.           |
0000bdb0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
0000bde0  20 20 20 20 20 20 20 20  20 20 20 20 0a 41 64 64  |            .Add|
0000bdf0  20 43 6c 69 70 62 6f 61  72 64 20 3a 20 6d 65 72  | Clipboard : mer|
0000be00  67 65 73 20 74 68 65 20  73 65 6c 65 63 74 65 64  |ges the selected|
0000be10  20 61 72 65 61 20 77 69  74 68 20 74 68 65 20 73  | area with the s|
0000be20  6f 75 6e 64 20 63 75 72  72 65 6e 74 6c 79 20 69  |ound currently i|
0000be30  6e 20 74 68 65 20 63 6c  69 70 62 6f 61 72 64 2e  |n the clipboard.|
0000be40  0a 20 20 20 20 20 0a 0a  53 6f 6e 67 3a 0a 0a 41  |.     ..Song:..A|
0000be50  20 73 6f 6e 67 20 69 73  20 61 20 63 6f 6c 6c 65  | song is a colle|
0000be60  63 74 69 6f 6e 20 6f 66  20 6c 6f 6f 70 73 20 66  |ction of loops f|
0000be70  72 6f 6d 20 61 20 73 61  6d 70 6c 65 2c 20 77 68  |rom a sample, wh|
0000be80  69 63 68 20 63 61 6e 20  62 65 20 70 6c 61 79 65  |ich can be playe|
0000be90  64 20 69 6e 20 61 20 73  65 71 75 65 6e 63 65 2e  |d in a sequence.|
0000bea0  0a 0a 50 6c 61 79 20 3a  20 70 6c 61 79 73 20 74  |..Play : plays t|
0000beb0  68 65 20 63 75 72 72 65  6e 74 6c 79 20 6c 6f 61  |he currently loa|
0000bec0  64 65 64 20 73 6f 6e 67  2e 0a 53 68 6f 77 20 3a  |ded song..Show :|
0000bed0  20 70 6f 70 73 20 75 70  20 74 68 65 20 73 6f 6e  | pops up the son|
0000bee0  67 20 77 69 6e 64 6f 77  2e 0a 53 61 76 65 20 3a  |g window..Save :|
0000bef0  20 66 6f 72 20 73 61 76  69 6e 67 20 74 68 65 20  | for saving the |
0000bf00  73 6f 6e 67 20 28 41 72  6d 61 64 65 75 73 20 63  |song (Armadeus c|
0000bf10  6f 6d 70 61 74 69 62 6c  65 29 2e 0a 53 61 76 65  |ompatible)..Save|
0000bf20  20 4d 6f 64 75 6c 65 20  3a 20 73 61 76 65 73 20  | Module : saves |
0000bf30  74 68 65 20 73 6f 6e 67  20 61 73 20 61 20 72 65  |the song as a re|
0000bf40  6c 6f 63 61 74 61 62 6c  65 20 6d 6f 64 75 6c 65  |locatable module|
0000bf50  2e 0a 43 6c 65 61 72 20  3a 20 63 6c 65 61 72 73  |..Clear : clears|
0000bf60  20 74 68 65 20 63 75 72  72 65 6e 74 20 73 6f 6e  | the current son|
0000bf70  67 20 66 72 6f 6d 20 6d  65 6d 6f 72 79 2e 0a 52  |g from memory..R|
0000bf80  65 70 65 61 74 20 3a 20  63 68 6f 6f 73 69 6e 67  |epeat : choosing|
0000bf90  20 74 68 69 73 20 69 74  65 6d 20 77 69 6c 6c 20  | this item will |
0000bfa0  61 64 64 20 61 20 27 74  69 63 6b 27 2e 20 57 68  |add a 'tick'. Wh|
0000bfb0  65 6e 20 74 68 69 73 20  6f 70 74 69 6f 6e 20 69  |en this option i|
0000bfc0  73 20 6f 6e 2c 20 74 68  65 20 73 6f 6e 67 20 77  |s on, the song w|
0000bfd0  69 6c 6c 20 72 65 70 65  61 74 20 69 6e 66 69 6e  |ill repeat infin|
0000bfe0  69 74 65 6c 79 2e 0a 0a  36 2e 34 2e 20 43 72 65  |itely...6.4. Cre|
0000bff0  61 74 69 6e 67 20 61 20  73 6f 6e 67 2e 0a 0a 54  |ating a song...T|
0000c000  6f 20 62 72 69 6e 67 20  75 70 20 74 68 65 20 73  |o bring up the s|
0000c010  6f 6e 67 20 77 69 6e 64  6f 77 20 75 73 65 20 27  |ong window use '|
0000c020  53 68 6f 77 27 20 66 72  6f 6d 20 74 68 65 20 73  |Show' from the s|
0000c030  6f 6e 67 20 6d 65 6e 75  2e 20 59 6f 75 20 61 72  |ong menu. You ar|
0000c040  65 20 6e 6f 77 20 72 65  61 64 79 20 74 6f 20 63  |e now ready to c|
0000c050  72 65 61 74 65 20 61 20  73 6f 6e 67 20 66 72 6f  |reate a song fro|
0000c060  6d 20 74 68 65 20 73 61  6d 70 6c 65 20 63 75 72  |m the sample cur|
0000c070  72 65 6e 74 6c 79 20 69  6e 20 74 68 65 20 77 61  |rently in the wa|
0000c080  76 65 66 6f 72 6d 20 77  69 6e 64 6f 77 2e 0a 0a  |veform window...|
0000c090  4e 65 78 74 20 73 65 74  20 74 68 65 20 6c 6f 6f  |Next set the loo|
0000c0a0  70 20 70 6f 69 6e 74 65  72 73 20 66 6f 72 20 74  |p pointers for t|
0000c0b0  68 65 20 73 65 63 74 69  6f 6e 20 74 68 61 74 20  |he section that |
0000c0c0  79 6f 75 20 77 61 6e 74  20 74 6f 20 70 6c 61 79  |you want to play|
0000c0d0  2e 0a 0a 43 6c 69 63 6b  20 74 68 65 20 63 75 72  |...Click the cur|
0000c0e0  73 6f 72 20 69 6e 20 74  68 65 20 73 6f 6e 67 20  |sor in the song |
0000c0f0  77 69 6e 64 6f 77 20 61  74 20 74 68 65 20 70 6f  |window at the po|
0000c100  69 6e 74 20 6d 61 72 6b  65 64 20 3c 55 6e 74 69  |int marked <Unti|
0000c110  74 6c 65 64 3e 20 61 6e  64 20 67 69 76 65 20 74  |tled> and give t|
0000c120  68 65 20 6c 6f 6f 70 20  61 20 6e 61 6d 65 2e 20  |he loop a name. |
0000c130  54 68 69 73 20 79 65 6c  6c 6f 77 20 62 6f 78 20  |This yellow box |
0000c140  73 65 63 74 69 6f 6e 20  6f 66 20 74 68 65 20 77  |section of the w|
0000c150  69 6e 64 6f 77 20 69 73  20 77 68 65 72 65 20 61  |indow is where a|
0000c160  6c 6c 20 74 68 65 20 65  64 69 74 69 6e 67 20 74  |ll the editing t|
0000c170  61 6b 65 73 20 70 6c 61  63 65 2e 20 57 68 65 6e  |akes place. When|
0000c180  20 79 6f 75 20 68 69 74  20 3c 72 65 74 75 72 6e  | you hit <return|
0000c190  3e 20 74 68 65 20 63 75  72 73 6f 72 20 77 69 6c  |> the cursor wil|
0000c1a0  6c 20 6d 6f 76 65 20 74  6f 20 74 68 65 20 6e 65  |l move to the ne|
0000c1b0  78 74 20 69 63 6f 6e 2c  20 77 68 65 72 65 20 79  |xt icon, where y|
0000c1c0  6f 75 20 63 61 6e 20 74  79 70 65 20 69 6e 20 74  |ou can type in t|
0000c1d0  68 65 20 6e 75 6d 62 65  72 20 6f 66 20 74 69 6d  |he number of tim|
0000c1e0  65 73 20 74 68 65 20 6c  6f 6f 70 20 6d 75 73 74  |es the loop must|
0000c1f0  20 72 65 70 65 61 74 2e  20 54 68 65 20 6c 6f 6f  | repeat. The loo|
0000c200  70 20 77 69 6c 6c 20 70  6c 61 79 20 61 74 20 74  |p will play at t|
0000c210  68 65 20 70 69 74 63 68  20 77 68 69 63 68 20 79  |he pitch which y|
0000c220  6f 75 20 6c 61 73 74 20  70 6c 61 79 65 64 20 75  |ou last played u|
0000c230  73 69 6e 67 20 74 68 65  20 6b 65 79 62 6f 61 72  |sing the keyboar|
0000c240  64 20 77 69 6e 64 6f 77  2e 20 69 65 2e 20 69 66  |d window. ie. if|
0000c250  20 79 6f 75 20 77 61 6e  74 20 74 6f 20 63 68 61  | you want to cha|
0000c260  6e 67 65 20 74 68 65 20  70 69 74 63 68 20 6f 66  |nge the pitch of|
0000c270  20 74 68 65 20 63 75 72  72 65 6e 74 20 6c 6f 6f  | the current loo|
0000c280  70 20 74 68 61 74 20 79  6f 75 20 61 72 65 20 65  |p that you are e|
0000c290  64 69 74 69 6e 67 2c 20  64 6f 20 73 6f 20 77 69  |diting, do so wi|
0000c2a0  74 68 20 74 68 65 20 6b  65 79 62 6f 61 72 64 20  |th the keyboard |
0000c2b0  77 69 6e 64 6f 77 2e 20  48 69 74 20 3c 72 65 74  |window. Hit <ret|
0000c2c0  75 72 6e 3e 20 61 67 61  69 6e 20 61 6e 64 20 6e  |urn> again and n|
0000c2d0  6f 77 20 73 70 65 63 69  66 79 20 74 68 65 20 76  |ow specify the v|
0000c2e0  6f 6c 75 6d 65 20 66 72  6f 6d 20 31 20 74 6f 20  |olume from 1 to |
0000c2f0  32 35 35 2e 20 54 6f 20  73 61 76 65 20 61 6c 6c  |255. To save all|
0000c300  20 6f 66 20 74 68 69 73  2c 20 63 6c 69 63 6b 20  | of this, click |
0000c310  6f 6e 20 74 68 65 20 77  68 69 74 65 20 73 65 63  |on the white sec|
0000c320  74 69 6f 6e 20 62 65 6c  6f 77 20 74 68 65 20 79  |tion below the y|
0000c330  65 6c 6c 6f 77 20 62 6f  78 20 77 69 74 68 20 74  |ellow box with t|
0000c340  68 65 20 6d 65 6e 75 20  62 75 74 74 6f 6e 20 61  |he menu button a|
0000c350  6e 64 20 63 6c 69 63 6b  20 6f 6e 20 27 61 70 70  |nd click on 'app|
0000c360  65 6e 64 27 2e 0a 0a 54  68 65 20 6c 6f 6f 70 20  |end'...The loop |
0000c370  77 69 6c 6c 20 6e 6f 77  20 61 70 70 65 61 72 20  |will now appear |
0000c380  61 73 20 27 31 27 2e 0a  0a 4e 6f 77 20 72 65 70  |as '1'...Now rep|
0000c390  65 61 74 20 74 68 65 20  61 62 6f 76 65 20 69 6e  |eat the above in|
0000c3a0  20 74 68 65 20 79 65 6c  6c 6f 77 20 62 6f 78 20  | the yellow box |
0000c3b0  66 6f 72 20 74 68 65 20  6e 65 78 74 20 6c 6f 6f  |for the next loo|
0000c3c0  70 20 61 6e 64 20 61 70  70 65 6e 64 20 69 74 2e  |p and append it.|
0000c3d0  20 0a 0a 54 68 69 73 20  6c 6f 6f 70 20 77 69 6c  | ..This loop wil|
0000c3e0  6c 20 6e 6f 77 20 61 70  70 65 61 72 20 61 73 20  |l now appear as |
0000c3f0  27 32 27 2e 0a 0a 49 66  20 79 6f 75 20 77 69 73  |'2'...If you wis|
0000c400  68 20 74 6f 20 65 64 69  74 20 61 6e 79 20 6f 66  |h to edit any of|
0000c410  20 79 6f 75 72 20 6c 6f  6f 70 73 2c 20 63 6c 69  | your loops, cli|
0000c420  63 6b 20 6f 6e 20 74 68  65 20 77 68 69 74 65 20  |ck on the white |
0000c430  62 6f 78 20 63 6f 6e 74  61 69 6e 69 6e 67 20 74  |box containing t|
0000c440  68 65 20 6c 6f 6f 70 20  61 6e 64 20 65 64 69 74  |he loop and edit|
0000c450  20 69 74 20 69 6e 20 74  68 65 20 79 65 6c 6c 6f  | it in the yello|
0000c460  77 20 62 6f 78 20 61 74  20 74 68 65 20 74 6f 70  |w box at the top|
0000c470  20 6f 66 20 74 68 65 20  77 69 6e 64 6f 77 2e 0a  | of the window..|
0000c480  0a 4d 65 6e 75 20 6f 70  74 69 6f 6e 73 20 69 6e  |.Menu options in|
0000c490  20 74 68 65 20 6c 6f 6f  70 20 77 69 6e 64 6f 77  | the loop window|
0000c4a0  2e 0a 0a 49 6e 73 65 72  74 20 4c 6f 6f 70 20 3a  |...Insert Loop :|
0000c4b0  20 54 68 69 73 20 77 69  6c 6c 20 61 75 74 6f 6d  | This will autom|
0000c4c0  61 74 69 63 61 6c 6c 79  20 61 64 64 20 74 68 65  |atically add the|
0000c4d0  20 63 75 72 72 65 6e 74  20 6c 6f 6f 70 20 69 6e  | current loop in|
0000c4e0  20 74 68 65 20 65 64 69  74 6f 72 20 69 6e 20 74  | the editor in t|
0000c4f0  68 65 20 70 72 65 76 69  6f 75 73 20 6c 6f 6f 70  |he previous loop|
0000c500  20 70 6f 73 69 74 69 6f  6e 2e 20 69 65 20 69 66  | position. ie if|
0000c510  20 79 6f 75 20 63 6c 69  63 6b 20 6f 6e 20 6c 6f  | you click on lo|
0000c520  6f 70 20 33 20 61 6e 64  20 69 6e 73 65 72 74 20  |op 3 and insert |
0000c530  74 68 65 20 63 75 72 72  65 6e 74 20 6c 6f 6f 70  |the current loop|
0000c540  2c 20 74 68 65 20 63 75  72 72 65 6e 74 20 6c 6f  |, the current lo|
0000c550  6f 70 20 62 65 63 6f 6d  65 73 20 33 20 61 6e 64  |op becomes 3 and|
0000c560  20 61 6c 6c 20 6c 6f 6f  70 73 20 61 62 6f 76 65  | all loops above|
0000c570  20 33 20 61 72 65 20 69  6e 63 72 65 6d 65 6e 74  | 3 are increment|
0000c580  65 64 20 62 79 20 31 2e  0a 41 70 70 65 6e 64 20  |ed by 1..Append |
0000c590  4c 6f 6f 70 20 3a 20 77  69 6c 6c 20 61 64 64 20  |Loop : will add |
0000c5a0  74 68 65 20 63 75 72 72  65 6e 74 20 6c 6f 6f 70  |the current loop|
0000c5b0  20 61 74 20 74 68 65 20  65 6e 64 20 6f 66 20 61  | at the end of a|
0000c5c0  6c 6c 20 6c 6f 6f 70 73  2e 0a 4f 76 65 72 77 72  |ll loops..Overwr|
0000c5d0  69 74 65 20 4c 6f 6f 70  20 3a 20 77 69 6c 6c 20  |ite Loop : will |
0000c5e0  6f 76 65 72 77 72 69 74  65 20 74 68 65 20 73 65  |overwrite the se|
0000c5f0  6c 65 63 74 65 64 20 6c  6f 6f 70 20 77 69 74 68  |lected loop with|
0000c600  20 74 68 65 20 6c 6f 6f  70 20 63 75 72 72 65 6e  | the loop curren|
0000c610  74 6c 79 20 69 6e 20 74  68 65 20 65 64 69 74 20  |tly in the edit |
0000c620  62 6f 78 2e 0a 44 65 6c  65 74 65 20 4c 6f 6f 70  |box..Delete Loop|
0000c630  20 3a 20 77 69 6c 6c 20  64 65 6c 65 74 65 20 74  | : will delete t|
0000c640  68 65 20 73 65 6c 65 63  74 65 64 20 6c 6f 6f 70  |he selected loop|
0000c650  2e 0a 50 6c 61 79 20 74  6f 20 45 6e 64 20 3a 20  |..Play to End : |
0000c660  74 68 69 73 20 77 69 6c  6c 20 70 6c 61 79 20 74  |this will play t|
0000c670  68 65 20 73 6f 6e 67 20  66 72 6f 6d 20 74 68 65  |he song from the|
0000c680  20 73 65 6c 65 63 74 65  64 20 6c 6f 6f 70 20 74  | selected loop t|
0000c690  6f 20 74 68 65 20 65 6e  64 20 6f 66 20 74 68 65  |o the end of the|
0000c6a0  20 73 6f 6e 67 2e 0a 50  6c 61 79 20 53 6f 6e 67  | song..Play Song|
0000c6b0  20 3a 20 70 6c 61 79 73  20 74 68 65 20 77 68 6f  | : plays the who|
0000c6c0  6c 65 20 73 6f 6e 67 2e  0a 0a 37 2e 20 46 69 6c  |le song...7. Fil|
0000c6d0  65 20 46 6f 72 6d 61 74  73 2e 0a 0a 54 72 61 63  |e Formats...Trac|
0000c6e0  6b 65 72 20 3a 20 6c 6f  67 61 72 69 74 68 6d 69  |ker : logarithmi|
0000c6f0  63 2e 0a 54 72 61 63 6b  65 72 5f 4e 48 20 3a 20  |c..Tracker_NH : |
0000c700  61 6e 79 20 74 79 70 65  2e 0a 41 72 6d 61 64 65  |any type..Armade|
0000c710  75 73 20 3a 20 73 69 67  6e 65 64 20 6c 69 6e 65  |us : signed line|
0000c720  61 72 2e 0a 44 53 45 64  69 74 20 3a 20 75 6e 73  |ar..DSEdit : uns|
0000c730  69 67 6e 65 64 20 6c 69  6e 65 61 72 2e 0a 45 4d  |igned linear..EM|
0000c740  52 20 3a 20 73 69 67 6e  65 64 20 6c 69 6e 65 61  |R : signed linea|
0000c750  72 2e 0a 4d 61 65 73 74  72 6f 20 3a 20 52 4d 20  |r..Maestro : RM |
0000c760  28 61 6e 79 20 74 79 70  65 29 2e 0a 4e 6f 74 61  |(any type)..Nota|
0000c770  74 65 20 3a 20 52 4d 20  28 61 6e 79 20 74 79 70  |te : RM (any typ|
0000c780  65 29 2e 0a 52 68 61 70  73 6f 64 79 20 3a 20 52  |e)..Rhapsody : R|
0000c790  4d 20 28 61 6e 79 20 74  79 70 65 29 2e 0a 43 6f  |M (any type)..Co|
0000c7a0  63 6f 6e 69 73 65 72 20  3a 20 6c 6f 67 61 72 69  |coniser : logari|
0000c7b0  74 68 6d 69 63 2e 0a 52  61 77 20 3a 20 61 6e 79  |thmic..Raw : any|
0000c7c0  20 74 79 70 65 2e 0a 0a                           | type...|
0000c7c8