home *** CD-ROM | disk | FTP | other *** search
-
- Steev's MIDI Trigger
- Version 2.30
- Copyright 1995-7 by Steven Goodwin
-
-
- This version is freely distributable, providing ALL the files,
- environments, samples, MODs and programs remain intact (and with my
- Copyright notice attached), with no alterations, additions or
- deletions.
-
- The license supplied with the software is such that you may use it
- for 30 days. After such time you should either register the software
- (see bottom of file) or delete all SMT software from your disks
- (including samples, MODs and environment files), with no intent of re-
- gaining SMT at a later date.
-
-
- -- Abstract --
-
-
- This is a simple program, with a lot of hidden potential. It plays
- various samples (through the Amiga's internal hardware), upon the
- triggering of certain notes through the MIDI interface, or the Amiga's
- own keyboard.
-
- Each note can trigger a different sample (assuming you've enough
- CHIP RAM available), or they could trigger the same one at different
- pitches. For example, a combination of the above methods allows four
- (or more) piano samples to be played across the range of the entire
- keyboard giving very high quality reproduction. The demo environment
- 'Virtual_Piano.mte' shows how this can be done, and is a very useful
- feature when you have keyboard without a particularly good sounding
- piano (eg. mine!).
-
- It is also possible to get the notes to play the 'wrong'
- frequencies. So, when you play a C-2 on the keyboard, the program will
- replay a sample at F-2. This provides a very abstract piano which can
- provide unexpected results by playing familiar note sequences.
-
- By using different samples, you can 'jam' along with other
- musicians and create your own ambient and aural soundscapes very
- easily. It is also very easy to use a four-track tape recorder to
- build up several layers of a live performance using the MIDI trigger,
- without resorting to sequencing or programming. By using non-musical
- samples (door creaks, screams etc) this program would be capable of
- providing an audio backdrop for a play or video production, without
- the hassle of setting up tapes to play at the precise point of an
- effect.
-
- There is also MOD support. This allows you to load in a standard
- soundtracker module, and play it while you are jamming out a top line.
- This facility makes it very good for re-mixing, live techno
- performances or as a DJ supplement! You can program a simple breakbeat
- loop and bass line on the tracker, and then add vocals, scratchs,
- bleeps and other sounds on the remaining tracks. This can create a
- musically absorbing experience! The demo environment 'House_Music.mte'
- shows this.
-
- My final suggestion (although there are no doubt others), is to
- trigger breakbeats from individual keys, and build a song up from
- there. Many upbeat electro and techno tracks are very simple in
- structure, so you could sample several two bars segments from both the
- verse and chorus and trigger them from the bottom two octaves of the
- keyboard. The upper octaves could then be used for extra effects as
- mentioned above. Wow! What versatility!!!
-
- What makes this so special? AWE. The interface was written using
- AWE running under AMOS. This allows you several requesters open at the
- same time, just like Workbench. It also allows you to access one
- function, without closing another one down. So, for example, imagine
- you were about to assign a sample to a note, but had forgotten to load
- the sample! Normally with AMOS, you've have to close down the
- requesters, load the sample into memory, re-open the requester (making
- the necessary edits), and THEN assign the new sample. Using AWE you
- can load a sample while the sample list is shown on-screen. Then, when
- the sample has been loaded, the sample list will be updated for you to
- select the correct one!
-
-
- -- How To Use Steev's MIDI Trigger --
-
-
- The main screen has a scrolling list on the left, detailing each of
- the notes available for triggering, along with the sample it will
- play, and the pitch. Throughout SMT, the pitch can be given as either
- a note name (C2 F#1 etc), or a frequency in Hertz (Hz). This latter
- facility allows fine tuning. Just for reference, SMT uses A-2 as 440
- Hz. The maximum pitch for an internal sample is B-3 (the same as a
- standard tracker). Anything above this will not sound.
-
- The right hand side of the screen has a variety of buttons. These
- are split into two sections. The upper half references the
- 'Environments', the lower the 'sample' and 'note' data. Each of these
- meanings (in the context of SMT) will now be explained, along with the
- associated buttons.
-
-
- -- Environments --
-
-
- Overview: These hold details of the complete memory. This means every
- sample, and all the note data (eg. its frequency, input and output
- parameters). Other information like the backing track MOD, and its'
- triggers are also part of the environment. However, the environment
- file does not contain any sample data. In fact, it never does. Samples
- and MOD's are always stored separately to reduce filesize, and allow
- the same sample to be used in different places without taking up extra
- disc space. If you "read" the environment file (used a standard text
- editor) you will find the sample paths listed.
-
- The four options to manipulate environments are:
-
- New Environment: Clears out the entire data file, and all
- sample data from memory. Nothing is left! If
- you just want to clear the note data, then
- select the 'Clear Data' button (see below).
-
- Load Environment: This will load the environmental data file
- from disc, and then proceed to load each
- sample required for it in turn. The backing
- MOD (if appropriate) is also loaded. If a
- sample can not be loaded, the load will
- terminate, leaving you with nothing!!!
-
- Save Environment: Saves the data file to disc. No samples are
- saved with this option. The MOD is not saved
- either.
-
- Full Save: Saves the data file, AND the samples to disc.
- This option is recommended for floppy disc
- users, or those who do not have the samples
- required on their hard drive, as it saves a
- lot of disc swapping as the program attempts
- to locate each sample. The MOD will also be
- saved, if it exists. As noted above, all of
- the supplement music data (eg. samples) are
- saved in separate files, and not joined with
- the environment file.
-
-
- -- Samples --
-
-
- These are always loaded and saved in raw, signed, format (the usual
- for Amiga software). Each sample (once loaded) will cause a 'Sample
- Attributes' requester to appear. This has the following controls,
-
- Reference Name: The name of the sample (without the path) as a
- default. You can change this if you want by
- clicking in the box, and typing in the new
- name. This name will be shown in the main
- scrolling list wherever that sample is used,
- so it is best to make it fairly descriptive
- and/or recognisable.
-
- Full File Name: The complete path of the sample. Best to
- leave it as it is.
-
- Default Frequency/Note: This is the pitch at which the sample will be
- played at normally. It is not necessary to
- alter these values, unless you will be using
- that sample a lot at the default pitch, as the
- pitch of the sample can be altered in later
- requesters.
-
- Once the information in this requester is correct you should click
- OK. The 'cancel' button does not un-load the sample, it just uses the
- original contents of the requester (i.e. the original reference name
- and default frequency).
-
-
- -- Replace Sample --
-
-
- This is the same requester as above, except it provides the
- opportunity to load a new sample into the current slot (the file
- requester button to the right of the file name). This allows you to
- experiment with different bass sounds (for example), without re-
- programming all the notes. Simple, but effective!
-
-
- -- Note Data --
-
-
- The scrolling list on the main screen details each note, and its
- associated sample. By double clicking on one of these entries (or
- selecting EDIT PARAMETERS with a note in the display box underneath
- the list) you will bring up the 'Note Parameters' window. All of the
- information shown (and that obtained from it) is collectively known as
- the 'note data'.
-
- Input: This brings up a small window with 16 check boxes in.
- Each box relates to a MIDI channel. Using this you can
- mask off certain MIDI channels from SMT. By masking
- off channels 10-16 (for example) you get the Amiga to
- produce sounds for channels 1-9 ONLY. This is helpful
- when you have keyboard that sends drum data you do not
- want the Amiga to see.
-
- Output: This requester allows you to specify which channel the
- sound comes out on. There are four options here, and
- the appropriate one is marked by its radio button.
-
- 1)Specific Channel: The sound will ALWAYS come out on
- the channel(s) specified by the tick boxes. It
- will cut out any other sound already playing
- on that channel, including MOD music.
-
- 2)Alternate Between: The sound will toggle between the
- single channels reference by the ticks. There
- will only ever be one channel of sound. This
- will also cut out all other notes on the
- channel.
-
- 3)Next Free Channel: Whatever channel was used least
- recently will be used. Note: This does not
- take into account any MOD that is playing.
- Thus, this option is NOT very useful for
- mixing MODs with trigger notes.
-
- 4)MIDI, soft thru. Sends the note straight back to
- your synth. It is best to use this to play
- long string parts or chords.
-
- There is also a check box labelled 'Sample Link?'.
- this is new (V2.0) feature that allows you to combine
- the 'alternate between' option between several notes
- using the same sample. In other words, the sample
- will be played on the alternate channels as usual,
- but the count of which channel to use will be kept
- global to all the notes using this sample and the
- 'Sample Link' option. This is best used to implement
- a virtual piano on only two channels, while the others
- are used for playing a MOD, or other samples.
-
- Change Sample: This brings up the sample list requester. A double-
- click will tell the computer which sample you wish
- to use, and return you to the 'note params' req.
-
- Test Sample: This plays the current sample at the pitch shown
- in the window.
-
- Default: Both buttons force the relevant sample default data
- into the text requester. This is the same data as
- set up in the 'Sample Attributes' requester.
-
- The 'output' and 'input' requesters can be opened directly from the
- main screen in the same way as the 'Note Parameters' requester. Both
- access and edit the same data, but there is one minor difference in
- their working. If you open the 'output' window from the 'Note
- Parameters' window, then, when you close 'Note Parameters' the
- 'output' window is automatically closed. This is because it is it's
- 'child'. However, when opened from the main window 'output' belongs to
- the main window, and so can be closed from its own OK/Cancel
- button...or the main window. Similarly, if you close the main window
- it will close its child of the 'output' window....but closing the main
- window will also quit the program!
-
- Looping sounds can be achieved by using the three radio buttons near
- the base of the requester. These are:
-
- Off: No looping. This makes each sample a 'one-shot' sample
- (which is the default for versions 2.1 and lower). Any
- old environments will default to this.
- Always: The sample will loop until the trigger is stopped, or
- another requires the channel.
- Until release: The sample loops until you release the key pressed, if
- you are using a MIDI keyboard. Because of the way SMT
- works (it buffers samples in memory, ready to play
- when one finishes) when you release the key the sample
- will loop around again before stopping. This is OK. It
- happens because there is still a sample in the buffer,
- and the OS takes it automatically. If you find this a
- problem, there is one more feature to mention...
-
- 'Cut Sample On Key Up' - This check box will stop the sample the
- moment you take your finger off the key. This is best used with 'loop:
- until release'.
-
- Note: Looped sounds work best when kept on a specific channel, or
- channels. Looping them on 'next free channel' can confuse SMT as it
- does not know what channel it should play them on. Eg. Does it mean
- 'loop on next free', or 'loop on same channel again..even if its not
- free?'. The results of this action are undefined.
-
- Note: It is not advisable to use looped and cut-off samples from the
- Amigas keyboard. This is because the keyboard matrix can sometimes
- miss a key up, making it impossible to re-trigger the sample without
- first playing another on the same channel, or pressing 'space' to
- clear all the samples playing.
-
- -- Note Range --
-
-
- For some environments (the virtual piano for instance), it would be
- very time consuming to enter data for every note. This feature assumes
- the frequency of each note will be evenly spaced, and does all the
- hard work for you (ahhh!).
-
- For Note Range: This specifies which notes are to be affected. You
- should enter them in 'standard form'. eg. C 2 D#3
- However, the program is currently smart enough to
- accept "b1", "F 4", "f# 3".
- Change Sample: ...and...
- Test Range: ...and...
- Input: ...and...
- Output: These are all the same as normal. The setting of these
- options are replicated in each note that the option
- produces. Note: This does not necessarily mean EVERY
- note between the specified note range, as it is
- possible to tell the computer to ignore data already
- programmed in.
- Change..from.: These provide the pivot points. The computer will
- scale between the frequency/notes specified. Both this
- and the 'note range' parameters will be executed in
- the order given, so it is also possible to scale notes
- into descending order if you so wish.
-
- Note: The standard musical scale is NOT a linear relationship! That
- is, the frequency difference between successive notes is not the same.
- In fact, the frequency of each semi-tone increases by a *factor* of
- 1.0594631. This is not necessarily a bad thing though, as some
- interesting effects can be achieved using an even-frequency scale.
-
- The current sample name is shown in the bottom requester bar, and is
- carried over between subsequent 'Range' calls. But it is the only
- piece of information that is.
-
-
- -- Backing Track --
-
-
- This option details the module to play in background. This is obvious
- an optional feature, but if used it can be invoked in two ways:
-
- 1) Type in the full file name and path into the upper text requester.
- SMT will then attempt to load the file when you OK this window.
-
- 2) Press the 'file requester' button on the right. A successful
- filename will be automatically entered into the text requester.
-
- The three cyclic buttons specify the trigger to Start, Stop or Pause
- the MODule during the triggering phase. The defaults are:
-
- START MODULE Left mouse button
- STOP MODULE Right mouse button
- PAUSE MODULE Fire button of first joystick
-
- It is possible to use the left button (for example) to start AND
- stop the module as SMT will see if the MOD is playing before
- determining which option to execute. It is not advisable to use the
- same trigger to PAUSE and either START or STOP the MOD, as this is
- confusing. Also, it is not possible to use the same trigger for all
- three options...this is just as confusing!
-
- The option to allow 'keys' to start the MOD is actually triggered
- from any key that does NOT produce a note (ie the main alpha-numeric
- key set - see later).
-
- The default setup is suggested because it allows you to re-start a
- module immediately (without having to stop it playing first). This
- provides a good 'scratch' effect for the first bar of a song.
-
- As a suggestion to semi-pro artistes...why not get a couple of foot
- switches and wire them in parallel to the standard mouse buttons. This
- will allow you to control the modules from the floor, allowing you to
- position yourself away from the Amiga. The registered version of SMT
- includes a stand-alone player which reduces the amount CHIP ram taken
- by the program (by not using a full interface) and can be used to run
- a batch of environment files upon termination of the previous.
-
-
- -- Test Trigger --
-
-
- This is IT. This is the option that actually *does* something.
- Clicking on this permits you start triggering! During this time you
- can not access, move, or close any of the windows on the screen. But
- all the standard trigger keys (including the mouse buttons for MOD
- control) still work. Use both mouse keys (as directed by the on-screen
- prompts) to exit.
-
-
- -- Using The Amiga's Keyboard To Trigger SMT --
-
-
- SMT uses the "standard" keyboard layout, as used in OctaMED and
- other trackers. That is, the keyboard is split into two octaves, one
- above the other thus:
-
- S D G H J L ;
- Z X C V B N M , . / for C-1 to E-2
- and
- 2 3 5 6 7 9 0 = \
- Q W E R T Y U I O P [ ] for C-2 to G#3
-
-
- There is also the option of increasing the pitch of the note by an
- octave by pressing either SHIFT key. You can transpose up by two
- octaves using ALT, and three by either AMIGA key.
-
- There are also two other 'special' keys. The space bar and return
- key both 'refresh the module'. Because you can not play samples at the
- same time as the MOD (on the same channels), the current MOD channel
- has to be muted while the sample plays. This should un-mute shortly
- after the sample has finished playing. But if it doesn't, either of
- these keys will let the MOD play on all 4 channels again. Some
- interesting sound effects (i.e. noises) can be achieved by forcing a
- channel refresh before your sample has actually finished playing.
-
-
- -- Keyboard Shortcuts --
-
- These are available throughout the product. The appropriate key is
- indicated by an underscore. That key should be pressed to activate the
- button. No other qualifying key is required.
-
- There is also a prevailing general rule that the OK and Cancel
- buttons can always be executed by use of the Return and Escape keys
- (respectively). This feature is not availible on 'Clear Data' because
- of its implications.
-
-
- -- The Demonstration Environments --
-
-
- There are three included with SMT V2.1. They are,
-
- Virtual_Piano.mte
- House_Music.mte
- GM_Drums.mte
-
-
- Virtual Piano
-
- This is simplest to use. The lower four octaves contain there own
- piano sample, each played on the next free channel. This is a fairly
- good attempt at a piano. The problem lies within the limit of 4 audio
- channels on the amiga, and so if you are a good pianist (or you just
- play lots of notes) you will hear a very definite cut-off of the
- samples.
-
- An interesting effect can be achieved here by using the Amigas
- keyboard to hold down a chord. Because the computer has a key repeat
- facility the notes held down will also repeat. They cut off those
- already playing and start sounding anew. Try it, and hear what I mean.
- I'm sure someone will use it as a intro to at least *one* song!!!!
-
-
- House Music
-
- This is essentially a re-mixing console for all the DJ's and DJ-
- wannabes out there (i.e. me!). This contains two octaves of FX/vocals
- and general house sounds (circa 1988), a backing MOD (of originally
- composed music - including a not-very-original backing riff!), and
- MIDI thru' on the top octaves, permitting 'house piano' noises etc.
- Generally, the white keys produce vocals, the black notes-FX. Also,
- the first octave C-1 to B-1 puts the sounds out on the right channel
- (the MOD always leaves this empty), and the second octave uses the
- left channel (often empty, but sometimes containing extra melodies).
- The specific layout of the keys is thus:
-
- C-1 Z Ah yeah (vocal) Left Channel
- C#1 S Record scratch (sharp)
- D-1 X Check This Out (vocal)
- D#1 D Record scratch 2
- E-1 C Give It To Them (vocal)
- F-1 V Hit It (vocal)
- F#1 G Metal Keys (at C-2) (use for extra melodies)
- G-1 B House Man (vocal)
- G#1 H Metal Keys (at D#2)
- A-1 N You Got It (vocal)
- A#1 J metal Keys (at G-2)
- B-1 M Ecstasy (vocal)
-
- C2-B2 as as C1-B2 except on the right the channel, the only
- differences are:
- C#2 2 Orchestra hit (pitched low- D2)
- D#2 3 Orchestra hit (powerful, different to the others)
- F#2 5 Orchestra hit (at F2)
- G#2 6 Orchestra hit (at G2)
- A#2 7 Orchestra hit (at A2)
-
- The backing track module uses the default keys of,
-
- START MODULE Left mouse button
- STOP MODULE Right mouse button
- PAUSE MODULE Fire button of first joystick
-
-
- GM Drums
-
- This mimics the General MIDI spec for drum and percussion sounds. I
- personally own no such equipment, and so can not verify the
- correctness of the mappings or sounds, but I have not received any
- complaints so far!
-
- I see this being used to try out complex drum patterns from GM
- files fed into the SMT from another Amiga, or a lesser-sequencer :-)
- It could also be used to take signals from a set of drum pads to give
- a 'virtual drum kit'. I, myself, am on the lookout for such a kit
- because I envisage it being so much fun!
-
- The key map used is:
-
- C-1 Kick Drum
- C#1 Stick
- D-1 Snre
- D#1 Claps
- E-1 Snare (crisp)
- F-1 Lo Tom (2)
- F#1 Closed Hi Hat
- G-1 Lo Tom (1)
- G#1 Opening Hi Hat
- A-1 Mid Tom (2)
- A#1 Open Hi Hat
- B-1 Mid Tom (1)
- C-2 Hi Tom (2)
- C#2 Crash Cymbal
- D-2 Hi Tom (1)
- D#2 Ride Cymbal
- E-2 Chinese Boom
- F#2 Tamborine
- G-2 Crash/Splash cymbal
- G#2 Cowbell
- A-2 Crash Cymbal (2)
- B-2 Ride Cymbal (2)
- C-3 Hi bongo
- C#3 Lo bongo
- D-3 Congo Slap
- D#3 Congo Hi
- E-3 Congo Low
- F-3 Timbale Hi
- F#3 Timbale Low
- A 3 Cabasa
- A#3 Maracas
- C#4 Short Guiro
- D-4 Long Guiro
- D#4 Claves
- E-4 Woodblock Hi
- F-4 Woodblock Low
- G#4 Triangle
- A-4 Triangle (2)
- A#4 Shaker
- C-5 Castinets
-
-
- You may notice a few gaps in here, compared to the actual GM drum kit.
- That is because I seem to be a couple of samples short, and have not
- tried to substitute any others.
-
-
- -- Problem Shooting --
-
- Not that there should be problems of course....
-
- Q. SMT can't find any of the samples? I've looked, but they are there!
-
- A. Are the paths in the environment file wrong? Are the samples on a
- disc of the right name? Have you copied SMT to a hard drive, and
- forgotten to use an 'assign smt: dh0:smt/' (or similar) command? I
- would add a line to your "s:user-startup" file, to make things
- easier. Similarly, the floopy should be named "SMT".
-
-
- Q. SMT keeps using the floppy disc, when I'vr got it installed on my
- hard drive. Why?
-
- A. The floppy disc is a device, and so take priority over the name
- "SMT:" when used as a assign to your hard drive. Take the floppy
- out of the drive!
-
-
- Q. My computer keeps saying "Out of memory". Why?
-
- A. The answer is very simple, my friend....You need more CHIP ram.
- Both the interface and samples require lots of it! It does work on
- an A500 with 1/2 Meg Chip machine (I've got one) but you probably
- won't be able to multitask much with it.
- I would suggest you use the "About" box to keep a check on the
- CHIP ram you have available, anything less than 50K, I'd expect the
- machine to crash very shortly!
-
-
- Q. The environment icon won't load the SMT program!
-
- A. The program must be called "Trigger" on a disc, or in "assign"ed
- directory called "SMT:".
-
-
- Q. The environment icon will load the SMT program... but says it can't
- find the environment file?
-
- A. The environment file (and thus its icon) must be in the same
- directory as the SMT program (SMT:). This is because as soon as the
- program has loaded, the directory is SMT: ... so when it looks for
- your environment file it can't find it.
-
-
- -- SMT - Version List --
-
- Heres a rather potted history of the various SMT versions that are
- probably still floating around on FTP sites, and PD libraries...
-
- 1.0 So old, I'd rather forget about it!
- 1.1 Added the all important m/c. Added touch sensitive control.
- 1.2 Allowed MOD playing.
- 2.0 Brand new AWE interface.
- Added sample link idea.
- Allowed the Amiga's keyboard to be used.
- Added my picture to the main screen, and the title screen ;-)
- Improved a load of stuff I should have done ages ago!!!!
- 2.1 Improved the MC, added MIDI program changes. Corrected a few
- niggly bugs from 2.0.
- 2.2 Added sound looping (at last!!!)! Used the key messages to
- stop loops and cut off samples.
- 2.3 Changed the key handling routines back to v2.1 to give certain
- users *that* trick with the Amigas keyboard!
-
-
- -- THE END --
-
- That's all you're getting for documentation! Pretty hefty though,
- really. Nevermind, if your starved of docs and want something else to
- read, then why not register 'Steev's MIDI Trigger', and learn about
- the file format, the source code, AWE programming and a whole load of
- little tricks!
-
-
- -- Registered Users Pack --
-
-
- Executable code for: The SMT stand-alone player.
- The latest version of SMT.
-
- Source code for: Steev's MIDI Trigger in AMOS and ASCII formats
- The assembler code for SMT. In plain ASCII,
- suitable for GenAm 2+
- SMT stand-alone player (in AMOS and ASCII).
-
- Documents for: The stand-alone player.
- The SMT file format.
-
-
- How to get it: Send me a fiver (such a small price, for such great
- software) and I'll send you a disc with all the above stuff on it! If
- you've got a printer then why not use this to make it very easy:
-
-
- o/_________________________ CUT HERE ________________________________
- O\
-
- Your Name:_______________
- Address :_______________
- _______________
- _______________
- _______________
-
- Hi Mr. Steven Goodwin,
-
- I would like to register Steev's MIDI Trigger because,
-
- a) I'm a semi-pro and want to help out a would-be semi-pro
- b) It would be nice to get a letter that ISN'T a bill this week!
- c) I'd like to find out how you read the MIDI port in AMOS.
- d) I want you to guess the typeface on my printer.
- e) I have a tremendous guilt complex!
- f) All of the above (circle as appropiate)
-
- I enclose a cheque/postal order for #5 (which includes P&P) because
- I'm a kind hearted soul who cares about the people who make the
- software I use and enjoy!
-
- Thanks very much,
-
-
- Name ________________ (not completely necessary, but ties up the
- letter nicely)
-
-
- o/_________________________ CUT HERE ________________________________
- O\
-
-
- Contact address:
-
- Steven Goodwin
- 105 St. Johns Road
- Clacton-on-Sea
- Essex CO16 8DB
-
-
-
- Disclaimer:
-
- I make no warranties, implied or otherwise, in the distribution of this
- software. No responsibility is taken for the loss of data, information
- or sanity whilst using this software. So there!
-