SoundSmith Reference

Original documentation included with SoundSmith

SoundSmith is a program designed to create easily music for the IIgs and allow to include them in your programs.

The instruments used by SoundSmith must be standard ASIF instrument files (Electronic Art's Instant Synthesizer and Instant Music use this type of files) or PSWV instrument files (created with the french public domain program Poly-sons). I am writing a small utility program to convert sounds digitized with the Sonic Blaster or Future Sound card to ASIF instruments. It will be included in the SoundSmith package as soon as it is finished.

When SoundSmith is booted, the desktop appears with one open window. This window contains the list of the loaded instruments and four buttons to load/ remove instruments and save sound files (not music files). It is possible to load up to 15 instruments at once.

You can see how much memory is available by looking the size of the largest free block at the bottom of the window. However, this value does not represent always the size of the largest loadable instrument because the IIgs handles his DOC Memory in a very special way (that is why other music programs don't allow you to use more than four instruments at once, like Instant Music or don't allow you to choose your instruments like Music Studio to avoid problems). I cannot explain here how everything works but you can find more information in the Apple IIgs Hardware Reference. Using the DOC Memory option from the Information menu lets you see a map of the DOC Memory.

When an instrument has been loaded, two other windows appear. The first one gives you some information about the instrument selected in the instrument list. The vibrato speed and vibrato depth parameters are not used by SoundSmith (but the user may want to change the values of these parameters before saving a Music Studio sound file). The keyboard window allows to hear the selected instrument. In the next version of SoundSmith, playing on the keyboard while the music is running will record the notes.

The Open Music option of the File Menu allows you to load a music. After loading the instruments and the music, a new window will appear. This window should look familiar to everyone used to work with Appleworks GS spreadsheet.

You can edit the music by selecting any zone (clicking the mouse on the block number selects the whole block, on a line number selects a line, on a track number selects the track) and using the Cut, Paste, Copy and Clear commands. The selected zone can be extended by holding the Shift key down while pressing the mouse button. When a single case is hi-lighted, you can move around by using the arrow keys. These commands are identical to the ones used by AppleWorks GS to make them easy to learn.

To enter a new note, you can enter the values in the three editable boxes on the music window (a single case must be selected) and pressing RETURN or use the keyboard short-cuts:

  • To change the Octave press 1-7 on the numeric keypad.
  • To change the instrument press 1-F on the main keyboard.
  • To enter a note using the current instrument,effect and octave press:
  • G for C
  • Y for C#
  • H for D
  • U for D#
  • J for E
  • K for F
  • O for F#
  • L for G
  • P for G#
  • ; for A
  • [ for A#
  • ' for B

The effects are composed by an effect number and an effect value. They modify the way a note is played (except the set tempo effect which modifies the tempo for all the following notes). At this time, the following effects have been defined:

0 = Arpegiatto Value: 0 = no Arpegiatto nm = Increment 1=n, Increment 2=m
3 = Set Volume nm = New Volume (0-$FF)
5 = Decrease Volume nm = Volume to subtract from Instrument Volume
6 = Increase Volume nm = Volume to add to Instrument Volume
F = Set Tempo nm = New tempo.

You can now start to compose by using the New Music File option from the File menu, but before you have to know the way SoundSmith plays the music. You can use up to 14 tracks simultaneously, and you can use any instrument in any track but you can only play one instrument at a time in one track. Lets see how this works with an example:

Track 00
00. C#3 1000
01. E3 2000
02. --- 0000
03. C#3 1000
04. STP 0000

SoundSmith will first play line 00. This means that it will play a C#3 note using the first sample. Then it will play line 01. To do this, it will first stop to play the C#3 note and then play the E3 note, using the second sample. This means that if the first sample is long, you will not hear it completely. If you want to continue to play a note, you must do what I have done on line 02. You can repeat this many times if your sample is very long. The instrument will continue to be played until the end of the wave is reached or a new note is played. If you want to stop a note without having to play another one, you must enter a STP command instead of a note (line 04).

SoundSmith gives you total control over the stereo effects. There are two different ways to select on which channel a note will be played. The first one is used by all the IIgs music programs. Each instrument has a stereo parameter that indicates on which channel it will be played. To use this method you must select for each instrument on the Instrument data Window the stereo channel that you want to assign to that particular instrument. Then you must go to the Tracks option from the Information menu and click on the Use Instrument data button.

The other way to use the stereo is much more powerful. You assign a stereo channel to each track. This means that an instrument will play on the right or left channel depending on which track it is played. This is very interesting because it allows to create incredible effects. This option is activated by clicking on the Use Channel/Track data button on the Tracks dialogue box.

The Music option from the Information menu allows to set some important parameters like the length of the music, the tempo, etc. The length of the music is given in number of blocks. If the music is for example four blocks long, you must tell the program which four blocks to play. This is necessary because you may want to repeat some blocks. You can play blocks 0,1,2 and 3 or 0,1,0,1 or 2,4,6,8, etc. Imagine that you want to play the following sequence: 0,1,2,2. Set position to 0 and then block number to 0. Then set position to 1 and block number to 1. Repeat the same steps for positions 2 and 3, setting the block number to 2. On the Music data dialogue box there is also a check button. If you click on it, the music will loop.

The Preferences option from the Information menu lets you set some important parameters. The volume scroll bar sets the main volume (this is the same value that you set on the control panel). The Keyboard translation scroll bar is used to set the keyboard octave (if the keyboard translation is 2, the first note of the keyboard will be C2).

The sound file format buttons allow you to select the type of file that will be used when saving a sound file (not a music file!). When the sound file format is set to Music Studio, SoundSmith will save two files, a wavebank and a sound file. These files can be loaded by Music Studio. This allows to use new instruments with this popular program (even if I believe that SoundSmith is much better...).

The SoundSmith binary file has the following structure:

  • Number of instruments: 2 bytes
  • DOC Memory: 64k
  • Instrument Definition: 92 bytes * Number of instruments

The Play options from the Play menu does not need to be explained. When using the Graphic Player option you will see that you can move a cursor that looks like an electric guitar. Use it to select the active tracks and the ones that are displayed on the screen. Attention, since no more than four tracks can be displayed at once, you must first unselect a track to be able to select another one. The Continue and Graphic Continue options use the value of the Position scroll bar (on the music data dialogue box) to know where to start to play the music.

Now, I think that this should help you to understand how SoundSmith works and how to compose music. I am really sorry for my bad English but I am doing my best. This manual covers all the important functions of this program but I know that some points could have been better explained. However, since I had to send you this manual, I could not spend more time on it. I will rewrite it and include it on the next version of SoundSmith.

SoundSmith Reference