@DATABASE OctaMED Help @REMARK Written by Ed Wiles. Based on earlier documentation by Teijo @REMARK Kinnunen and Larry McIntire (thanks guys!!). @REMARK @REMARK Proof-reading and minor alterations by David Wiles, Teijo Kinnunen, @REMARK Bryan Williamson and Ray Burt-Frost (the latter of RBF Software) - @REMARK thank you! @REMARK @REMARK $VER: OctaMED.guide revision 1.55 (19.05.95) for OctaMED V6.00o @NODE Main "Help Contents (revision 1.55 for OctaMED V6.00o)" (NOTE: This help system assumes that you've read the printed instructions!) Welcome to the OctaMED help system. The following topics are available: @{" Menus " LINK Menus} @{" Very latest changes " LINK Latest} @{" Windows " LINK Windows} @{" Main screen " LINK MainScreen} @{" Player commands " LINK PlrCommands} @{" Keyboard shortcuts " LINK KeybShorts} @{" New Amiga Owners " LINK Copy} @{" Special purpose topics " LINK SpecPurpose} * Click on any boxed text to see more information on that subject. * Use the up and down arrow keys to reveal more of a topic. + For more detailed information on using this help file, press the "Help" key. @ENDNODE @NODE Copy "Copyright notice" Amiga Workbench 2.1 is a registered trade mark of Amiga Technologies. "Amiga/Workbench/Kickstart are registered trademarks." @ENDNODE @NODE Latest "Very latest changes: revision 6.00o" Numerous bugs have been fixed and tidy-ups made since version 6.00, particularly in the sample list editor. (For example, Add Dir and Del Ins now handle .info files correctly). Also, 16-bit Toccata samples are now played correctly. Some users may have noticed the disappearance of V5's "Set/Clr tracks" buttons (upper screen, bottom left), and also the solo-track feature. Well, these are now back! (with the exception of Clr). Shift-click a track number button in the Tracker editor to "solo" the track, and alt-click (click with an Alt key held) a track number to set all tracks. @ENDNODE @REMARK @REMARK MENU NODES @REMARK @NODE Menus "OctaMED Menus" The OctaMED menu bar contains the following menus: @{" Project " LINK menu_project} @{" Display " LINK menu_display} @{" Song " LINK menu_song} @{" Block " LINK menu_block} @{" Track " LINK menu_track} @{" Instr " LINK menu_instr} @{" Edit " LINK menu_edit} @{" MIDI " LINK menu_midi} @{" Settings " LINK menu_settings} @ENDNODE @NODE menu_project "The Project Menu" New Opens the @{"New Project window" LINK win_new} to discard the current project and begin a new one. Open Displays a @{"file requester" LINK filereq} to load a new song into memory. The current song will be discarded. If the current project has been changed since last saving, a requester will offer to save it first. When loading songs without instruments, a requester will appear if an instrument can't be located on disk, offering to continue loading the other instruments or to stop loading the song altogether. If you continue until the song is loaded, OctaMED will load the instruments it can find and put the names of the instruments it can't find in their proper numbered places. You must then locate and load appropriate instruments into these positions; otherwise, the notes played by those instruments will be silent. Note that although you can load normal Tracker modules, you can't load packed Tracker modules. Tracker player commands will be converted to the OctaMED equivalent. If a song isn't identified as any format listed in the @{"Save Options window" LINK win_saveopts 45}, a requester will offer to try loading the file as an old Soundtracker song. If it IS an old Soundtracker song it should load correctly, but if not OctaMED may crash. *NEW* OctaMED can now load @{"Standard MIDI File" LINK win_smfload} Type 0 and 1 songs. Upon successful loading, the song's annotation text (if any) is displayed on the title bar: see @{"Song menu -> Set Annotation" LINK menu_song 29}. Save Opens the @{"Save Options window" LINK win_saveopts} to save the current project on to disk. Save Timer Opens the @{"Save Timer window" LINK win_savetimer}, providing an option similar to the "automatic save" function in many wordprocessors. Delete Files Displays a @{"file requester" LINK filereq} to delete one or more files from disk (after confirmation). WARNING: THE FILES WILL BE PERMANENTLY ERASED FROM DISK! Print Opens the @{"Print Options window" LINK win_printopts}, where you may print the current song in various ways. Last Message Displays the last message (error or information) appearing on the screen's title bar. Online help Opens OctaMED's help system (you're using it now!). About Displays information about OctaMED. Command Shell Opens a Shell-like window for entering OctaMED's ARexx *NEW* commands. Close the window by typing "bye", by pressing Ctrl-\ or by clicking the close gadget as usual. (See §13 of the printed manual for more ARexx information). Audio Channels Switch this off to temporarily free the audio channels. *NEW* This will allow you to use other music programs that need these channels. When you've finished with the programs, switch this back on (trying to play any instrument will automatically switch this back on, if possible). Quit OctaMED Quits the program. Will display a confirmation requester if the current project has been changed since last saving. @ENDNODE @NODE menu_display "The Display Menu" Tracker Editor Re-opens the Tracker editor (if it's been closed). Main Control Opens the @{"Main Control window" LINK main_ctrl}. Information Window Opens the @{"Information window" LINK main_info}. Tempo Window Opens the @{"Tempo window" LINK win_tempo}. Synth Editor Opens the @{"Synthetic Sound Editor window" LINK win_synthed}. Sample Editor Opens the @{"Sample Editor window" LINK win_smped}. Sample List Editor Opens the @{"Sample List Editor window" LINK win_slist}. MIDI Message Editor Opens the @{"MIDI Message Editor window" LINK win_msged}. Input Map Editor Opens the @{"Input Map Editor window" LINK win_maped}. @ENDNODE @NODE menu_song "The Song Menu" Select Opens the @{"Song Selector window" LINK win_sngsel}, with which you may select the current song (of a multi-module). [ Keyboard shortcut: Left Alt-G with Information window active ] Add New Adds a new song after the last song. [ Keyboard shortcut: Shift-Ctrl-NK) ] Delete Last Deletes the last song of a multi-module. Has no effect if there is only one song in memory. [ Keyboard shortcut: Shift-Ctrl-NK( ] Playing Sequence Opens the @{"Playing Sequence window" LINK win_playseq}. [ Keyboard shortcut: Left Alt-Q with Info win active ] Section List Opens the @{"Section List window" LINK win_seclist}. [ Keyboard shortcut: Left Alt-C with Info window active ] Set Options Opens the @{"Song Options window" LINK win_songopts}. This window contains several song-specific options. Set Volumes Opens the @{"Track Volumes window" LINK win_trackvols}, used to set the volumes of the song's tracks. Set Annotation Opens a window containing a single text box. In this box you may type in any text up to 70 characters long. This text will be saved with the song, then displayed on the title bar when the song is reloaded. Suitable annotation text is, for example, a copyright message, the composer's   name, or special instructions. *NEW* You can now attach a whole text file to a song! Create the file in an external text editor, then click Load File to load it. Save Text saves the text under a chosen name, and Discard Text removes the text from memory. The text is saved with songs. Note that "tab" characters (ASCII code 9) can't be used in the text. @ENDNODE @NODE menu_block "The Block Menu" New -> Insert Inserts a new block at the current block position. OctaMED will correct the entries in the playing sequence, so the song isn't changed. The length and width of the newly- created block will be taken from the current block. [ Keyboard shortcut: Ctrl-I ] New -> Append Adds a new block after the last block. The length and width will be taken from the current block. [ Keyboard shortcut: Ctrl-N ] New -> Insert Def As Insert, but uses the built-in default size: 64 lines of 4 or 8 tracks (8 if @{"5-8 channel mode" LINK win_songopts 9} is on). [ Keyboard shortcut: Shift-Ctrl-I ] New -> Append Def As Append, but again uses the built-in default size. [ Keyboard shortcut: Shift-Ctrl-N ] Delete Deletes the block selected by the sub-menu (Current or Last). OctaMED removes and corrects the appropriate playing sequence entries. WARNING: There is no confirmation requester! Set Properties Opens the @{"Block Properties window" LINK win_blkprops}, which contains some block-specific settings. Block List Opens the @{"Block List window" LINK win_blklist}. This window allows easy block management. [ Keyboard shortcut: Left Alt-B with Info window active ] Highlight Opens the @{"Highlight Options window" LINK win_highopts}, where you may highlight the lines in a block in a particular order. > *NEW* The Copy/Cut/Paste items in the Block, Track and Edit menus < > now each have their own separate copy buffer. So you can have < > block, track and range information all stored in memory at once. < Cut Copies the current block to the copy buffer, and clears the block. [ Keyboard shortcut: Shift-Alt-X ] Copy Places a copy of the current block in the copy buffer. [ Keyboard shortcut: Shift-Alt-C ] Paste Overwrites the block with the copy buffer's contents. [ Keyboard shortcut: Shift-Alt-V ] Swap w/Buff Swaps the contents of the current block with the contents of the copy buffer. [ Keyboard shortcut: Shift-Alt-Z ] Insert Line Inserts a new line at the cursor position, increasing the block length by one line. [ Keyboard shortcut: Shift-Amiga-Backspace ] Delete Line Deletes the line at the cursor position, reducing the block length by one line. [ Keyboard shortcut: Amiga-Backspace ] Expand/Shrink Opens the @{"Expand/Shrink Block window" LINK win_expshrk}. Split At Cursor Splits the current block into two blocks; the current line becomes the first line of the next block. [ Keyboard shortcut: Shift-Ctrl-J ] Join With Next Joins the current block with the following one. [ Keyboard shortcut: Ctrl-J ] @ENDNODE @NODE menu_track "The Track Menu" > *NEW* The Copy/Cut/Paste items in the Block, Track and Edit menus < > now each have their own separate copy buffer. So you can have < > block, track and range information all stored in memory at once. < Cut Copies the current track to the copy buffer, and clears the track. (The "current track" is the track that the cursor is on). Copy Places a copy of the current track in the copy buffer. Paste Overwrites the track with the copy buffer's contents. Swap w/Buff Swaps the contents of the current track with the contents of the copy buffer. Insert Empty Inserts an empty track. Tracks on the right of the current track will be shifted right. The number of tracks doesn't increase, so the rightmost track will be discarded. The sub-menu allows you to apply the operation to either the current block only or the entire song. [ Keyboard shortcut: Curr. Block = Alt-Shift-Backspace ] Delete Deletes a track. Tracks on the right of the current track will be shifted left. The sub-menu allows you to apply the operation to either the current block only or the entire song. [ Keyboard shortcut: Curr. Block = Alt-Backspace ] @ENDNODE @NODE menu_instr "The Instr Menu" Set Parameters Opens the @{"Instrument Parameters window" LINK win_instr}, which allows you to change various instrument parameters. [ Keyboard shortcut: Left Alt-P with Main Control active] Type Opens the @{"Instrument Type window" LINK win_type}. [ Keyboard shortcut: Left Alt-T with Main Control active ] Load Instrument(s) Opens a @{"file requester" LINK filereq} to load instruments into memory. OctaMED can load any type of instrument listed in @{"Instrument Type" LINK win_type 3}. The instrument is loaded into the sample slot displayed in @{"Main Control" LINK main_ctrl 48}. If an instrument already exists in that slot, the new one will replace it. If the instrument is a sample or synthetic sound, the title bar displays its size in bytes, in the form "n [x bytes]" (where n and x are numbers). n is the number of sample values in the instrument, x is the actual amount of memory consumed. (These numbers will be different if a sample is 16-bit or in stereo). The number of waveforms used in a synthetic sound will also be displayed on the title bar. If more than one instrument is selected, they are loaded into consecutive sample slots in alphabetical order. Load from List Opens the @{"Instrument Load Window" LINK win_instload}. Save Instrument Opens a @{"file requester" LINK filereq} to save the current instrument on to disk. The sub-menu gives you a choice of five different formats: see @{"Instrument Type" LINK win_type 6} for a brief description of each. Note that loop information is only saved with IFF 8SVX files. This format cannot be used with 16-bit or stereo samples. It's recommended to use 8SVX for 8-bit samples and AIFF or MAUD for 16-bit and/or stereo samples. Use WAVE when exporting samples to PC computers. When saving synthetic or hybrid sounds, you may choose any format (since they are saved as none!). For ExtSamples, save as IFF 8SVX. [ Keyboard shortcuts: IFF = Ctrl-S, Raw = Shift-Ctrl-S ] Flush Current Removes the current instrument from memory, frees the memory used by it, and clears all its parameters. [ Keyboard shortcut: Ctrl-G ] Flush All Unused Removes all instruments unused by the current project (after a confirmation requester). If there are no unused instruments, no requester appears. [ Keyboard shortcut: Shift-Ctrl-G ] Automatic Flush When selected, a requester to flush unused instruments will appear on pressing the Clear Current button in the @{"New Project window" LINK win_new}. The following two items affect instrument names when loading songs or instruments. Add Path Adds the full path of the instrument when loaded. (The "path" is the disk and directory name, for example: "Samples1:Bass/"). This is useful when a song including instruments not in your @{"sample list" LINK win_slist} is saved without its instruments. When the song is reloaded, the instruments will be loaded using the new full path names. Remove Path Usually songs made with Trackers have instrument names which include the full path. This option removes the paths of the instruments, so that they can be loaded using the @{"sample list" LINK win_slist} instead of directly from the appropriate disk. Both Add and Remove Path may be active at once. In this case, the original path is removed, the instrument is loaded using the sample list, and the path name from the sample list is added. Note that the maximum length of an instrument name is 40 characters, so characters at the end of the name may be lost if the path is very long. Halve Loaded Samples In previous versions, a newly-loaded sample's *NEW* volume was automatically halved while in @{"5-8 channel mode" LINK 5-8chan}. To prevent the halving, you needed to hold down Shift while selecting Instr menu -> Load Instrument etc. Well, there's a different method now. When Halve Loaded Samples is on, loaded samples will be halved (surprise!). This switch is turned on automatically when 5-8 channel mode is selected (and off when 4 channel mode selected). So to prevent the halving in 5-8 channel mode, select this menu item before loading a sample. @ENDNODE @NODE menu_edit "The Edit Menu" Most items in this menu act on the current range, selected by dragging the mouse in the Tracker editor. (The button used to drag is defined in the @{"Mouse Options window" LINK win_mouseopts}). > *NEW* The Copy/Cut/Paste items in the Block, Track and Edit menus < > now each have their own separate copy buffer. So you can have < > block, track and range information all stored in memory at once. < Cut Range Copies the range to the copy buffer, then clears the range. [ Keyboard shortcut: Ctrl-X ] Copy Range Places a copy of the range in the copy buffer. [ Keyboard shortcut: Ctrl-C ] Paste Range Transfers the copy buffer to the Tracker editor at the cursor position, overwriting any existing data. [ Keyboard shortcut: Ctrl-V ] Paste To Selected As Paste Range, but inserts consecutive tracks in the Tracks copy buffer to consecutive selected tracks in the block. For example, imagine that the copy buffer contains 3 tracks, the cursor is on track 2, and tracks 2, 5 and 8 are selected. Choosing Paste to Sel Tracks pastes the copy buffer to tracks 2, 5 and 8 (instead of 2, 3 and 4 as with Paste Range above). Tracks in the block are selected by clicking their S buttons in the Tracker editor. [ Keyboard shortcut: Shift-Ctrl-V ] Erase Range Clears the notes in the range. [ Keyboard shortcut: Ctrl-Z ] Discard Copy Buffers Flushes all three copy buffers and frees the memory they occupied. Transpose Opens the @{"Transpose window" LINK win_trans}, which allows transposing and changing of notes, and changing of instrument numbers. Range Current Track Ranges the whole of the track the cursor is on. [ Keyboard shortcut: Ctrl-B ] Range Current Block Ranges the whole of the current block. [ Keyboard shortcut: Shift-Ctrl-B ] Spread Notes Opens the @{"Spread Notes window" LINK win_spread}, which allows spreading of the notes in the range across consecutive tracks to the right of the range. Pitch Slide Creates a pitch slide, starting from the cursor position and ending at the next note encountered in the current track. The sub-menus select which sliding command to use (see @{"Normal Commands" LINK cmd_norm}), but the better result is usually achieved using Type 1. (The difference is that type 2 replays the note after sliding to it, whereas type 1 doesn't replay the note). [ Keyboard shortcuts: Type 1 = Ctrl-T, 2 = Shift-Ctrl-T ] Volume Slide Creates a volume slide, with the cursor position between the starting and ending volume commands (that is, the "0C" commands: see @{"Normal Commands" LINK cmd_norm}). [ Keyboard shortcut: Ctrl-O ] Generic Slide Creates a slide using any type of player command. Position the cursor somewhere between the starting and ending commands before selecting this function. NOTE: If you want to create a volume slide, this command will do it just as well as the Volume Slide function above. However, in @{"Decimal Volumes mode" LINK win_songopts 25} the slide will be created in @{"hexadecimal" LINK hex}, which is bound to cause problems. So for volume slides, use Volume Slide! :^) One use of Generic Slide is to repeat a single player command several times throughout a track. Just make the starting and ending commands identical. [ Keyboard shortcut: Shift-Ctrl-O ] Note Echo Opens the @{"Note Echo window" LINK win_noteecho}, which can produce echoes automatically using the 0C command. @ENDNODE @NODE menu_midi "The MIDI Menu" OctaMED can output notes and some player commands (see @{"MIDI Commands" LINK cmd_midi}) to external MIDI devices, by way of a MIDI interface which you should connect to your Amiga's serial port. This menu contains the required functions and settings for MIDI operation. You also need to set the MIDI channel and preset number of each MIDI instrument, using the @{"Instrument Parameters window" LINK win_instr 138}. (This window also contains the "Suppress NoteOff" gadget used with some MIDI instruments). You may use MIDI instruments on any track, and you may also mix Amiga samples and MIDI instruments on the first four tracks. Note: please refer to your MIDI device's manual if you come across terms in this topic that you aren't sure of. MIDI Active Activates MIDI when selected. If the serial port is being used by another program, however, you must quit the other program before you can use MIDI. When this option is on, an "M" appears in the @{"Information window" LINK main_info 53}'s display box. Input Active When selected, you may use your MIDI device to enter notes into the Tracker editor. Edit mode and MIDI Active must be on. An "I" appears in the display box mentioned above when this function is active. You can also use your MIDI device to both enter samples and perform many editing functions using the @{"input map editor" LINK win_maped}. Input Channel Opens up the @{"Input Channel window" LINK win_inpchan}, with which you may set the MIDI input channel. Ext Sync and "Synchronization" (or "sync" for short) involves OctaMED Send Sync sending information which allows MIDI devices to keep in time with OctaMED. When "Send Sync" is activated, this information is sent when you click either Song Play or STOP (note that it isn't sent with Song Cont, Block Play or Block Cont). When "Ext Sync" is activated, OctaMED can be synchronized "externally", meaning that an external MIDI device sends the sync information instead of OctaMED. As well as (of course) "MIDI Active", "Input Active" must be selected for Ext Sync to work. Send Active Sensing After "MIDI Active" has been selected, OctaMED periodically sends "active sensing" ($FE) messages when this is turned on. These messages assure your MIDI devices that OctaMED still exists, so usually it's advisable to keep it on. Send Out Input When activated, OctaMED replays input MIDI notes. Useful for owners of a separate sound module and keyboard. Read Key-Up's When switched on, OctaMED records key-up events in the Tracker editor (as @{"0FFF commands" LINK cmd_norm 62}, or @{"08 hold commands" LINK cmd_norm 18} if the instrument's hold value isn't zero). This switch actually works with normal Amiga keyboard input. Enter notes while the block is playing: 0FFF or 08 commands will be inserted at the points where you release keys (after holding them down). @{"Chord mode" LINK main_ctrl 107} works well too. Read Volume If you have a touch-sensitive keyboard, the volume will be entered as a set volume player command (0C) when notes are input (see @{"Normal Commands" LINK cmd_norm}). Reset Pitch/Presets Resets pitchbenders, modulation wheels and presets on all channels. (OctaMED sends "preset change" messages for all MIDI channels - but only when an instrument is next played). [ Keyboard shortcut: Ctrl-Space ] Send MIDI Reset Sends a "MIDI Reset" message ($FF). Send Local Control Sends a "Local Control On / Off" message. When using a keyboard synthesizer, the local control (when on) routes the keyboard directly to the internal synthesizer. In a multi-timbral setup, switch local control off; otherwise, it's usually best to keep on. Note Killing Selects the method for turning off all notes (by clicking "STOP" or pressing the space bar). "$Bx 7B 00" sends "All Notes Off" messages for each MIDI channel, whereas "Note Off Msgs" sends standard "Note Off" messages for each track. The former is recommended if your MIDI device supports it, because it stops all notes, not just those OctaMED triggers. (Also see the @{"MIDI Message Editor" LINK win_msged}) @ENDNODE @NODE menu_settings "The Settings Menu" Mouse Options Displays the @{"Mouse Options window" LINK win_mouseopts}, which allows you to change the function of each mouse button when editing. Keyboard Options Displays the @{"Keyboard Options window" LINK win_keybopts}, which contains several parameters concerning using the keyboard when editing. Programmable Keys Opens the @{"Programmable Keys window" LINK win_progkeys}, where you may edit the programmable keys (Shift-0-9). Keyboard Shortcuts Opens the @{"Keyboard Shortcuts window" LINK win_keybshorts}, where you may *NEW* edit OctaMED's keyboard shortcuts. Screen Allows you to change OctaMED's screen mode. In the sub-menu, *NEW* "Screen Mode" opens a screen mode requester (see your Amiga's manual for further instructions). "Like WB", when on, forces OctaMED's screen to have the same resolution and number of colors as the Workbench screen. OctaMED's screen is now public (name OCTAMED). Font Opens the @{"Font window" LINK win_font}, where you may change the font used in *NEW* three different areas. Palette Opens the @{"Palette Window" LINK win_palette}, with which you can alter the screen's colors. Equalizers Opens two different "equalizer" windows. They're useful as a quick check to see which track is playing, or to monitor rhythm. Miscellaneous Opens the @{"Miscellanenous Options window" LINK win_miscopts}. *NEW* Aura Sampler Opens the @{"Aura Sampler Options window" LINK win_aura}, which contains controls for the Aura 16-bit soundcard. SMF Load Options Opens the @{"SMF Load Options window" LINK win_smfload}. (SMF is short for Standard MIDI File). Play After Loading When set, OctaMED automatically starts playing a song after it is loaded. Useful, for example, when listening to other people's songs. Auto-Freeze Screen When on, this automatically "freezes" the screen   when the OctaMED screen is not the frontmost. This frees more processor time for multitasking. Windows "Snapshotting" a window is storing its current position in *NEW* memory. Normally OctaMED remembers any changes you make to window positions automatically, but Auto-Snapshot switches this off if needs be. Using the sub-menu you can snapshot the current window or snapshot all windows currently open. "Unsnapshot" sets the current window's position to default when it's next re-opened. "Unsnapshot All" does this for all windows in the program. Make these window positions permanent using Save Settings. You can't snapshot any window which uses a different set of menus from the usual ones (e.g. Sample Editor, Sample List Editor). Load Settings Opens a @{"file requester" LINK filereq} to load a new settings file. The default name is "PROGDIR:OctaMEDPro.config". Save Settings Saves the current settings under the name "PROGDIR:OctaMEDPro.config". OctaMED will attempt to load a file of this name on startup. Save Settings As Opens a @{"file requester" LINK filereq} to save the settings under a   non-default name. For a list of settings saved with the config file, see @{"The Settings File" LINK settingsfile}. @ENDNODE @REMARK @REMARK WINDOW NODES @REMARK @NODE Windows "OctaMED Windows" These are the windows included in OctaMED. Project menu Block menu ŻŻŻŻŻŻŻŻŻŻŻŻ ŻŻŻŻŻŻŻŻŻŻ @{" New Project " LINK win_new} @{" Block Properties " LINK win_blkprops} @{" Save Options " LINK win_saveopts} @{" Block List " LINK win_blklist} @{" PowerPacker Settings " LINK win_ppsettings} @{" Highlight Options " LINK win_highopts} @{" XPK Settings " LINK win_xpksettings} @{" Expand/Shrink Block " LINK win_expshrk} @{" Save Timer " LINK win_savetimer} @{" Print Options " LINK win_printopts} Instr menu ŻŻŻŻŻŻŻŻŻŻ Display menu @{" Instrument Parameters " LINK win_instr} ŻŻŻŻŻŻŻŻŻŻŻŻ @{" Instrument Type " LINK win_type} @{" Main Control " LINK main_ctrl} @{" Instrument Load Window " LINK win_instload} @{" Information " LINK main_info} @{" Tempo " LINK win_tempo} Edit menu @{" Tempo Operations " LINK win_tempoopts} ŻŻŻŻŻŻŻŻŻ @{" Synthetic Sound Editor " LINK win_synthed} @{" Transpose " LINK win_trans} @{" Synthsound Volume " LINK win_synvol} @{" Spread Notes " LINK win_spread} @{" Synthsound Stretch " LINK win_synstretch} @{" Note Echo " LINK win_noteecho} @{" SynthEd Program " LINK win_synthprog} @{" Sample Editor " LINK win_smped} MIDI menu @{" Toccata Capture " LINK win_toccata} ŻŻŻŻŻŻŻŻŻ @{" Adjust Y " LINK win_adjusty} @{" Input Channel " LINK win_inpchan} @{" Add Workspace " LINK win_addwksp} @{" Change Volume " LINK win_chgvol} Settings menu @{" Change Pitch " LINK win_chgpitch} ŻŻŻŻŻŻŻŻŻŻŻŻŻ @{" Mix " LINK win_mix} @{" Mouse Options " LINK win_mouseopts} @{" Filter/Boost " LINK win_filtboost} @{" Keyboard Options " LINK win_keybopts} @{" Echo " LINK win_echo} @{" Programmable Keys " LINK win_progkeys} @{" Noise " LINK win_noise} @{" Keyboard Shortcuts " LINK win_keybshorts} @{" Chord Creation " LINK win_chdcreat} @{" Palette Window " LINK win_palette} @{" Display Settings " LINK win_dispsettings} @{" Font " LINK win_font} @{" Sample List Editor " LINK win_slist} @{" Miscellaneous Options " LINK win_miscopts} @{" MIDI Message Editor " LINK win_msged} @{" Aura Sampler Options " LINK win_aura} @{" Input Map Editor " LINK win_maped} @{" SMF Load Options " LINK win_smfload} Song menu ŻŻŻŻŻŻŻŻŻ @{" Song Selector " LINK win_sngsel} @{" Playing Sequence " LINK win_playseq} @{" Section List " LINK win_seclist} @{" Song Options " LINK win_songopts} @{" Relative Track Volumes " LINK win_trackvols} @{" Song Annotation " LINK menu_song 28} @ENDNODE @NODE win_new "The New Project Window [ Keyboard shortcut: Amiga-N ]" With this window you can discard the current project and begin a new one. Open it using the @{"Project menu" LINK menu_project}. If the current project has been changed since last saving, the window's title bar will display "WARNING: Current project modified!". This is the only warning you are given: no confirmation requesters are displayed. The three buttons are: Clear All Discards all samples and songs. Clear Current Clears the current song only. If @{"Instr menu -> Automatic " LINK menu_instr 58} @{" Flush" LINK menu_instr 58} is selected, a requester to flush unused instruments will also appear. Cancel Closes the window, canceling the operation. @ENDNODE @NODE win_saveopts "The Save Options Window [ Keyboard shortcut: Amiga-S ]" This window allows you to save the current project on to disk. Open it using the @{"Project menu" LINK menu_project}. Type the project's filename into the text box at the top of the window. If the box is empty on opening the window, a file requester appears as an alternative method. The file requester can also be opened by clicking the small GetFile gadget to the left of the text box. Miscellaneous section ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Save Secondary Data Toggles whether to save "extra" information with the song: instrument names, line highlighting, block names, and the song name. Otherwise, only what is essential to play the song is saved (meaning that the saved file is slightly smaller). Create Icon When selected, a Workbench icon file is saved with the song (a different icon is used for Executable File). *NEW* The icons used are contained in the PROGDIR:Icons directory, named Module.info and Executable.info. Feel free to replace the icons if you so desire. The default tool for a module is written as OctaMEDPlayer. If you use a different player, you may wish to change the Module.info file's default tool. Save Instruments Chooses whether the song should be saved together with its instruments. If not, only the instrument names are (only applies to saved; when the song is reloaded, the instruments are MMD2 and MMD1 loaded from your sample disks. This is done either by modules) using the full path name of each instrument (see (see @{"Instr menu -> Add Path" LINK menu_instr 65}), or more commonly by way of the @{"sample list" LINK win_slist}. When this gadget is on, instruments unused in the song won't be saved. MMD0 modules are always saved with instruments. By default, all these check boxes are switched on. The cycle gadget applies to multi-modules, and selects whether to save all the songs in the multi-module or only the currently selected song. By default, all songs are saved. File Format section ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ This radio button selects which file format to use when saving. Options are: MMD2 (OctaMED V5-V6) The OctaMED V5 - V6 format. Supports multiple playing sequences (sections), 1 - 64 tracks and *NEW* command pages. If the song requires any of these features, MMD2 is selected when the Save Options window is opened. MMD1 (OctaMED V3-V6) The V3 - V6 format, so is (of course) compatible with these versions. MMD1 is selected on opening Save Options if MMD2 format is not required. MMD0 (MED & OctaMED) The pre-OctaMED V3 format, introduced in MED V2.10. Files saved with this format lack the following: * 2-digit commands (the first digit is always zero) * Notes above D-6 (replaced by a -|- symbol) * Multiple command pages * Blocks that are NOT 4, 8, 12 or 16-track * Block names * Line highlighting ==> NOTE: Tracker Module saving removed! <== SMF Type 0 *NEW* The Standard MIDI File type 0 format. Use this to export OctaMED modules to MIDI-based programs. (Also see @{"The SMF Load Options Window" LINK win_smfload}) Executable File Creates an executable file from the song. In other *NEW* words, you can run the song from Workbench or a shell. It will open a small window displaying just the annotation text: close the window to stop playing. You need the three code files: Player_8.code, Player_midi.code and Player_std.code to use this. Only MIDI-specific information is saved under SMF Type 0: notes, effect player commands and SysEx messages. (Also tempo information) With MMD1 and MMD0 songs, song sections are converted into one long playing sequence, by ordering the sections in the arrangement defined by the section list. Songs requiring MMD2 format can be saved almost perfectly under MMD1 (only song sections aren't saved, as described above). MMD0 modules are always saved with instruments (even if Save Instruments is switched off). Even most options new in V5 (Loop On check box, ExtSamples, default pitch, extended MIDI preset) are properly saved under MMD1 and MMD0. *NEW* In V6, all MMD formats now support text file annotation and instrument output devices. MMD2 and MMD1 support command pages. The further down the File Format button you go, the simpler the format becomes, and therefore the smaller the file produced. So for example, if you don't require notes above D-6, block names, line highlighting, song sections or two-digit commands to be saved, you could choose the MMD0 format, since it produces a smaller file than either MMD1 or MMD2. Compression section ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ The cycle gadget selects the compression (if any) to use before saving the module: No Compression Does not compress the module (default). PowerPacker Compr. Uses the popular powerpacker.library by Nico François to compress. SFCD Compression The Stephan Fuhrmann Compact Density algorithm is used for compression (requires lh.library). XPK Compression One of the XPK libraries is used. Requires *NEW* xpkmaster.library and at least one of XPK's libraries in LIBS:Compressors. SQSH.library is particularly well suited to modules. *NEW* "Settings" allows you to set PowerPacker and XPK's options. When XPK Compression is selected, the @{"XPK Settings window" LINK win_xpksettings} opens; otherwise, the @{"PowerPacker Settings window" LINK win_ppsettings} opens. "Calculate Size" calculates the size in bytes of the project if it were saved using the current status of File Format, Save Secondary Data, Save Instruments and the multi-module cycle gadget. *NEW* "Packed" is like Calculate Size but it works out the compressed size. Save Saves the song using the above parameters. ** OctaMED can emulate the "automatic save" function of many wordprocessors using the @{"Save Timer window" LINK win_savetimer} @ENDNODE @NODE win_ppsettings "The PowerPacker Settings Window *NEW*" Set the PowerPacker compression's settings using this window, opened through the @{"Save Options window" LINK win_saveopts 107}. The speed-up buffer can be Large, Medium (default) or Small. The smaller the buffer, the less memory-consuming but the slower the compression speed. Efficiency can be Fast, Mediocre, Good, Very Good or Best. The better the efficiency, the smaller the compressed file but the slower the compression speed. "Exit" closes the window. @ENDNODE @NODE win_xpksettings "The XPK Settings Window *NEW*" Select an XPK compressor and adjust its settings using this window, opened through the @{"Save Options window" LINK win_saveopts}. The cycle gadget cycles through all the compressors you have in your LIBS:Compressors directory. Information is displayed about each one. "Efficiency" controls the efficiency of the compression. The better the efficiency, the smaller the compressed file but the slower the speed. "Password" is unghosted only with encryption compressors. (See the documentation provided with your copy of XPK for more details) Note: By compressing using the seemingly useless NONE compressor, song saving can be significantly speeded up (at the expense of memory). @ENDNODE @NODE win_savetimer "The Save Timer Window" This window, opened using the @{"Project menu" LINK menu_project}, emulates the "automatic save" function of many wordprocessors. You can automatically open the @{"Save Options window" LINK win_saveopts} every given number of minutes. The numeric box contains the time in minutes between subsequent openings of the Save Options window. Typing in a number above 0 or *NEW* switching "Active" on enables the save timer. Typing in 0 or turning Active off disables it (the default). *NEW* Turning "Open Save Window" off only opens the Save Options window the first time the time elapses. After this, the song is saved using the current save settings. @ENDNODE @NODE win_printopts "The Print Options Window [ Keyboard shortcut: Amiga-P ]" This window, opened using the @{"Project menu" LINK menu_project}, allows printing of the song and various song information. In V6 you can only print the song as text (the format of the Tracker editor): because the notation editor has been removed (temporarily) in this version, graphics printing has also been removed. The gadgets are as follows: Output File Consists of a text box and a GetFile gadget to the left of the text box. With these you may redirect output to a file instead of the printer. Start Block Set the starting and ending block of the printout. You may End Block type in any valid block numbers. All Blocks Sets the boxes to the first and last block of the song. Current Block Sets the boxes to the current block number. Print Header Selects whether to print the header before the song contents. The header consists of a list of instruments and their parameters, the default tempo, play transpose, track volumes and the playing sequence(s). It is printed as ordinary text. Form Feed Sends a form feed after printing each block. The remaining cycle gadget selects whether to print as text (default), or not to print the blocks at all (i.e. only the header, if Print Header is checked). Highlighted lines are printed as bold text. "Print" prints using the specified options, and "Exit" closes the window. @ENDNODE @NODE win_tempo "The Tempo Window" This window, opened using the @{"Display menu" LINK menu_display}, allows you to set the playing speed ("tempo"). Two tempo modes can be used: SPD (the default) and BPM. SPD mode ŻŻŻŻŻŻŻŻ In this mode, the Tempo slider controls the time between each tick, and the TPL slider the number of ticks per line. (For an explanation of ticks, see §8.1 of the printed manual). The Tempo slider can be 1 - 240. The higher the number, the faster the speed, and the default is 33. For 4 channel or MIDI songs, values 11 - 240 should be used (1 - 10 can also be used, but they only exist for Sound/ Noise/Protracker compatibility). For 5-8 channel songs, values 1 - 10 should be used; 11 - 240 are equivalent to 10. The TPL slider can be 1 - 32, and the default is 6. The lower, the faster. This allows a fairly rough tempo setting (it's the way the other Trackers set their tempos). For MIDI use (especially for synchronization), you should leave this at 6 and adjust the Tempo slider instead. Note that the TPL slider doesn't affect the speed of effects, unlike Tempo. (Note for upgraders to V6: the TPL slider is now in DECIMAL!! Even the programmer can't remember why it was in hexadecimal in the first place ;-) BPM mode ŻŻŻŻŻŻŻŻ In BPM mode, the Tempo slider controls the number of beats per minute (just like a metronome). For example, a value of 60 is one beat per second. The LPB slider controls the number of Lines Per Beat. For example, 8 means that eight lines are considered as one beat. In this mode it's best to leave the TPL slider at 6, otherwise the timing won't be accurate. (But this may, in fact, be useful to some users. For example, obtain double the normal BPM accuracy by setting TPL to 3). [ Shortcuts: Ctrl- - (minus) Decrease Tempo Ctrl- + (plus) Increase Tempo Shift-Ctrl- - Decrease TPL (or LPB in BPM mode) Shift-Ctrl- + Increase TPL (or LPB) ] Others ŻŻŻŻŻŻ The right-hand cycle gadget affects the overall tempo. The song plays at normal speed when NRM, two-thirds speed when at 2/3, and half-speed when at 1/2. This is useful for editing while the song is playing: you can slow the song down without changing the tempo values, to make entering notes easier. *NEW* "Slow HQ" is a compatibility switch for songs created with OctaMED Pro V3 and V4. In these versions, switching @{"High Quality Mode" LINK win_songopts 40} on slowed the tempo slightly. This check box corrects this, and is saved with songs. *NEW* "Edit" opens the @{"Tempo Operations window" LINK win_tempoopts}. NOTE: It's possible to make a song which takes up all of the processor time. It will therefore be impossible to stop it. This shouldn't happen accidentally, but it can be done, for example, by filling a block with notes and setting Tempo to 240 and TPL to 1... To stop playing, hold both mouse buttons down for about five or six seconds. @ENDNODE @NODE win_tempoopts "The Tempo Operations Window *NEW*" This window, opened through the Tempo window, allows conversion between the various methods of setting the tempo provided in OctaMED. For example, suppose that your song currently uses SPD tempo, but you suddenly decide you'd prefer BPM. In previous versions, you would: a) click on the SPD cycle gadget to change to BPM; b) adjust the Tempo and LPB sliders until, by trial and error, you find the original speed of your song. In V6, all you need do is click on "SPD to BPM". This both changes to BPM mode AND finds the values of Tempo and BPM closest to the your song's original speed. For example, with a tempo of SPD 32/06 (eight lines per second), clicking SPD to BPM changes the tempo to BPM 60/08 (also eight lines per second). The gadgets ŻŻŻŻŻŻŻŻŻŻŻ Click on one of the four top buttons to convert from: 1) SPD to BPM 2) BPM to SPD 3) 4 to 8-channel 4) 8 to 4-channel In each case, only the Tempo slider is changed: the TPL slider is not affected. So conversion is rather approximate, especially when converting from 4-channel to 8-channel. If "Change Commands" is on, all the 0F ("set Tempo slider") player commands in the song will be altered to reflect the new tempo. "Insert Tempo Change" enters the current Tempo setting as an 0F player command. (You need not have converted the tempo in order to use this button). "Set Current Tempo As Default" is the one button not to do with conversion. It stores the current tempo settings in memory - SPD/BPM, Tempo, LPB and TPL. Now whenever you begin a new song (@{"Project menu -> New" LINK win_new}), these tempo settings are recalled. To permanently use the settings as default, select @{"Settings menu -> Save Settings" LINK menu_settings 65}. @ENDNODE @NODE win_synthed "The Synthetic Sound Editor" Synthetic sounds (or "synthsounds") are made from simple waveforms, which can be linked together and have their volume and pitch altered by using a simple "programming language". This window contains the functions to construct these sounds, and is opened either by using the @{"Display menu" LINK menu_display} or by clicking the "Edit" button in the @{"Main Control window" LINK main_ctrl 79}. The main advantage of synthsounds is that they take up far less memory than normal samples. However, this doesn't mean that synthsounds are a poor substitute, especially if you enjoy the sounds produced by analogue synthesizers and the good old Commodore 64! Synthsounds are particularly useful when composing in certain styles of music, Acid House and Rave being notable examples. They also have a 5-octave range, compared to the 3-octave range of ordinary samples. If you don't have an appropriate synthsound for your purposes, the first step is to design a waveform with the tools found in the Synthetic Sound Editor. Next, you write a simple program that instructs OctaMED how to use the waveform you've designed. Finally, use the synthsound in your song as you would any other instrument. Waveform editing ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ To set up the Synthetic Sound Editor: a) Select Display menu -> Synthetic Sound Editor b) In the window that appears, select Project menu -> New Synthsound c) Switch edit mode off There are two waveform displays. The left-hand waveform is the actual current instrument, and you may play it from the keyboard. The right-hand waveform is for temporary editing, and it doubles as a copy buffer. Either of the waveforms can be activated by clicking on them, and the current waveform appears to "go into" the screen. Initially the right waveform is active. The buttons between the displays are mostly used for transferring and mixing waveforms between displays: Copy Copies one waveform to the other (in the arrow direction). < Swap > Exchanges both waveforms. (below the left waveform display) From left to right: current waveform number in decimal and hex, total number of waveforms, move to next waveform (Alt-), move to previous waveform (Alt-). Shift-clicking an arrow gadget moves to the first or last waveform. "New Waveform" adds a new waveform after the last waveform. "New Here" inserts a new waveform at the current waveform position. "Delete Last" deletes the last waveform. "Delete Current" deletes the current waveform. Waveform length ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Each synthetic waveform can be any even length between 2 and 128 bytes. The shorter the waveform, the higher the pitch (the pitch also depends on the waveform itself). Usually, to make the pitches harmonically compatible with other instruments, you should use length 2, 4, 8, 16, 32, 64 or 128. The length can be changed by using the "Length" slider. Range operations ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Some basic editing operations exist that act on the current range. Mark a range by cycling the upper Draw Mode cycle gadget to "Range", then drag the left mouse button over a waveform display (as in the @{"Sample Editor" LINK win_smped 14}). To range the whole waveform, click "Range All" (middle of window). Use the "Range" and "End" numeric boxes at the lower-right of the window to make small corrections to the range area. A range of one byte in length is displayed as a single vertical white line. This is the cursor; some editing operations make use of it. It may be set either by clicking on a waveform display (with "Range" cycled), or by using the "Cursor" gadgets (bottom right): from left to right, they move the cursor to the start, middle and end of the waveform. The range gadgets are as follows: Range All Selects the entire current waveform as the range for editing operations. Cut (only works on left waveform) Moves the range contents to the right waveform, and clears the range. Copy (only works on left waveform) Copies range to right waveform. Paste Copies right waveform to cursor position on the left waveform. Clear Clears the range. Double "Doubles" the range, making the pitch one octave higher. Reverse Turns the range backwards. << / >> Shifts the ranged data to the left or right. The Waveform menu ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Change Volume Opens the @{"Synthsound Volume window" LINK win_synvol}. Stretch Opens the @{"Synthsound Stretch window" LINK win_synstretch}. Start / Do Transformation Change one waveform to another smoothly, by generating the intervening waveforms. For example: 1) Create 9 new waveforms by clicking New Waveform nine times 2) Move to waveform 0 (arrow gadgets), and select a pulse wave (Presets menu) 3) Select Waveform menu -> Start Transformation 4) Now move to waveform 9, and select a sine waveform 5) Select Waveform menu -> Do Transformation 6) Move to waveforms 1 - 8 in turn, and notice the smooth transition between the pulse and sine waves (For information on writing synthsound programs, see @{"SynthEd Program" LINK win_synthprog}) @ENDNODE @NODE win_synvol "The Synthsound Volume Window [ Keyboard shortcut: Amiga-V ]" This allows you to increase / decrease the volume of a selected range, in the @{"synthetic sound editor" LINK win_synthed}. It is opened by selecting "Change Volume" from the editor's Waveform menu. The numeric box contains the percentage of volume change required. For example, 50 would halve the volume, while 200 would double the volume. Pressing Return while the gadget is active executes the function. The OK button carries out the operation, the Cancel button aborts it. @ENDNODE @NODE win_synstretch "The Synthsound Stretch Window [ Keyboard shortcut: Amiga-S ]" This allows you to stretch a point on the waveform towards another point, in the @{"synthetic sound editor" LINK win_synthed}. It is activated using the editor's Waveform menu. For example: select a sine wave. Then position the cursor at the middle of the waveform. Now open this window and type the amount of movement into the numeric box (e.g. 32). Typing in a negative number stretches the point to the left. Pressing Return while the gadget is active executes the function. The OK gadget carries out the operation, the Cancel gadget aborts it. @ENDNODE @NODE win_synthprog "The SynthEd Program Window" Note: Please read this section carefully before experimenting, because you can crash your Amiga with improper use of the synthsound programming language (as with any other language). The synthsound programming language is used for controling the volume, pitch, and order of waveforms in a synthsound. It consists of simple commands, of which most have a command value. For a full description of these commands, see @{"Synthetic Sound Language Commands" LINK synthed_cmds}. Programming uses two sequences of commands and numbers: the volume sequence, and the waveform sequence. They are displayed in this window, opened using the @{"synthetic sound editor" LINK win_synthed 51}. Sequences: Waveform Volume | | 000 00 40 00 001 01 END END 002 02 003 03 004 04 (etc.) | | Line numbers: Decimal Hexadecimal Notes: ŻŻŻŻŻŻ 1) Both sequences are a maximum of 127 entries long. 2) To scroll around the sequences, use and or the scroll bar, or use @{"the F6 - F10 keys" LINK key_cursmove 27} as in the Tracker editor. 3) Before editing either sequence, switch edit mode on. 4) To enter commands, move the cursor to the leftmost position of either list (using and ), and press the command's key (see @{"Synthsound Commands" LINK synthed_cmds}). Inserting a command that requires a value also inserts a new 00 value. 5) To change command values, position the cursor over the number to be changed and type in the new value. The "Insert" gadget (or the Return key) inserts a sequence entry. The "Delete" gadget (or the Del key) deletes the current entry. JMP commands are renumbered when entries are inserted or deleted. The "Transition" gadget creates transitions. For example, consider this short waveform sequence: 00 00 line numbers => 01 0F <= waveform sequence 02 END If you position the cursor at line 01, making sure that edit mode is on, clicking Transition creates all the numbers between 00 and 0F (01, 02, 03, 04 ... up to 0E). This saves a lot of typing! =========> ALL COMMAND VALUES IN THE SEQUENCES ARE HEXADECIMAL <========= *** I repeat: all values are hexadecimal. Remember this and you'll be fine! If you'd rather your computer didn't crash, read on... ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Make sure all loops (repeated sections of program) contain at least one of the following commands: WAI, set volume, set waveform (the latter two commands consist of just a command value) otherwise the computer would do nothing but execute sequences, and crash. Execution speed ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ You can adjust the speed at which each sequence's entries are handled by using the Speed sliders. The speeds can be $1 - $F in hex (1 - 15 decimal). During program execution you can change either speed using the SPD command. The speed values are in fact the number of ticks between the execution of each sequence entry. For example, a speed of 4 executes entries every fourth tick. (See §8.1 in the printed manual for an explanation of ticks) Jump-triggering player commands ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ 1) Player command 0E in songs causes a jump to another position in the waveform sequence. For example, if you wanted to decrease the pitch after a certain point, you could create this sequence and track part: Waveform sequence Part of a track (in the Tracker editor) 00 00 <= Set waveform 00 C-2 30000 01 HLT <= STOP --- 00000 02 CHD <= Jump point --- 00000 03 01 --- 00E02 <= Jump to position 02 04 END --- 00000 (pitch starts to slide) Using command JVS, player command 0E can affect the volume sequence too. 2) When @{"Hold and Decay" LINK win_instr 73} is used with synthsounds, the decay value causes a jump to another position in the volume sequence. In this way, you can handle decay in any way you wish. For example: Volume sequence 00 40 <= Set volume $40 (full) [ The decay for this synthsound 01 HLT <= STOP should be 2. Decay values are 02 CHD <= Decay point saved and loaded with 03 03 synthsounds. ] 04 END Using the JWS command, Decay can also affect the waveform sequence. Note that volume-changing player commands (05, 06, 0C, 0D, 1A and 1B) don't work with synthsounds. The set volume synthsound command acts like player command 0C, and the CHU and CHD commands like player command 0D. Hybrid sounds ŻŻŻŻŻŻŻŻŻŻŻŻŻ Hybrid sounds are normal samples that use the same programming language as synthsounds. All synthsound commands can be used with hybrid sounds, except the set waveform command: since there's only a single waveform, it neither works nor is necessary. You can add extra synthetic waveforms for use with the EN1, EN2 and VWF commands if you wish. To create a hybrid sound: load a sample, select @{"Instr menu -> Type" LINK win_type}, click Hybrid and close the window, then create a synthsound program using the Synthetic Sound Editor. And finally... ŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Don't worry if you don't completely understand synthsounds at first glance! The language used in this section has been necessarily technical, but read it through again... :) Anyway, you don't need to learn any of this information to use synthsounds, only to design them; and you don't need to learn even half this information to design great-sounding synthsounds! *** If you'd like to examine some example synthsounds, load the SynthSong song from OctaMED V6 disk 2, and open the Synthetic Sound Editor. @ENDNODE @NODE synthed_cmds "The Synthetic Sound Language Commands" During this topic, "Keypress:" refers to the keypress needed to enter each command. Commands that can be used in either sequence ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ 1) Command: END Keypress: n/a Name: End sequence This command marks the end of each sequence, and always exists. You can't insert other commands below the END command. Press the Return key while the cursor is on this command to create a new position at the end of the sequence. 2) Command: HLT Keypress: H Name: Halt HLT has the same effect as the END command, but it can be inserted anywhere in either sequence (not just at the end). For example: 03 HLT 04 CHD <= other instructions (could be accessed with the JMP 05 02 <= command, for example: see next command) 3) Command: JMP Keypress: J Name: Jump The JMP command jumps to another position in the sequence in which it resides. Used to skip sections or to create repeated sections. For example: 05 JMP 06 0A <= Jump forward to line 0A 4) Command: WAI Keypress: W Name: Wait Pauses for a specified number of ticks. Can be $01 - $7F. 03 WAI 04 10 <= Wait for 16 ticks ($10 = 16 decimal) 5) Command: SPD Keypress: S Name: Set execution speed Sets the execution speed of the appropriate sequence. 0A SPD 0B 01 <= speed 1 (quickest) Volume sequence commands ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ 1) Command: n/a Keypress: n/a Name: Set volume This is the default command (no command name is required: only a value). It sets the volume of the synthsound, and is like @{"player command 0C" LINK cmd_norm 24}. It should be 00 - 40 in hex as usual. Note that the relative track volumes (Song menu) cannot be used with synthsounds. 00 20 <= Volume set to $20 (half volume) 01 10 <= Volume set to $10 (quarter volume) 2) Command: CHD Keypress: D Name: Set volume change down speed 3) Command: CHU Keypress: U Name: Set volume change up speed These two commands set the speed at which the volume changes on each tick. The volume starts changing directly after the command. To stop the volume slide, issue the command again with the speed set to 00. 00 CHD <= Decrease the volume... 01 05 <= ...at speed 5 ... 0A CHD 0B 00 <= Stop the volume slide (speed = 0) 4) Command: JWS Keypress: Shift-J Name: Jump waveform sequence Causes a jump in the waveform sequence. This can, for example, trigger a pitch change at the end of the volume sequence. It's just like using the JMP command in the waveform sequence. 04 JWS 05 0F <= Jump to line 0F in the waveform sequence 5) Command: EN1 Keypress: E Name: Once-only volume shape 6) Command: EN2 Keypress: Shift-E Name: Repeating volume shape These commands allow you to set the synthsound's volume shape. You draw the volume shape on the left-hand waveform display, then use the EN1 or EN2 command to set it. So if you've drawn the volume shape in waveform 01, use the following: 10 EN1 <= (Or EN2) 11 01 <= Set volume shape to waveform 01 The further down a point on the volume shape is, the louder the volume. Consider this volume shape: +------------+ <== no volume (0) | \ / | Left-hand | \ / | waveform -> | \ / | display | \ / | | \/ | +------------+ <== full volume (64) In this example, the volume will gradually increase to maximum, then fade away to nothing. You can change the volume shape's speed using the SPD command. The volume is actually set to full (64) before the volume shape begins (so if the shape starts at no volume, you may hear a small "click"). The volume shape waveform must always be 128 bytes long. The difference between EN1 and EN2 is that EN1 only plays once (then stops), whereas EN2 repeats continuously. (The EN is short for "envelope", which you must admit is a peculiar name for a volume shape... :). Waveform (and pitch) sequence commands ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ 1) Command: n/a Keypress: n/a Name: Set waveform This is the default command (no command name is required: only a value). It is used to indicate the waveform number (starting from 00). One of these commands (and a "set volume" command in the volume sequence) must always exist for the synthsound to be heard. Don't use waveform numbers that are higher than the actual number of the last waveform. 00 00 <= Play waveform 00 01 01 <= Play waveform 01 2) Command: CHD Keypress: D Name: Set pitch change down speed 3) Command: CHU Keypress: U Name: Set pitch change up speed These two commands set the pitch sliding speed. The pitch starts changing directly after the command. To stop the pitch slide, issue the command again with the speed set to 00. 00 CHD <= Slide pitch downwards... 01 03 <= ...at speed 3 4) Command: JVS Keypress: Shift-J Name: Jump volume sequence Causes a jump in the volume sequence, to trigger volume changes after particular waveform instructions. It's just like using the JMP command in the volume sequence. 09 JVS 0A 00 <= Start the volume sequence from the beginning 5) Command: RES Keypress: R Name: Reset pitch Resets the pitch of the note to its original pitch (after a pitch slide). 6) Command: ARP Keypress: A Name: Start arpeggio definition 7) Command: ARE Keypress: E Name: End arpeggio definition With these commands you can produce an arpeggio, much like player command 00 except that you can define more than three pitches. The arpeggio begins directly after the ARE command (every ARP command must have a corresponding ARE command). For example, to produce a "dominant 7th" chord (e.g. C-2, E-2, G-2, A#2): 03 ARP <= Start arpeggio definition 04 00 <= Pitch 1 05 04 <= Pitch 2 (C-2 -> E-2 = 4 halfsteps) 06 07 <= Pitch 3 (C-2 -> G-2 = 7 halfsteps) 07 0A <= Pitch 4 (C-2 -> A#2 = 10 halfsteps) 08 ARE <= End arpeggio definition 8) Command: VBS Keypress: Shift-V Name: Set vibrato speed 9) Command: VBD Keypress: V Name: Set vibrato depth These commands are used to produce vibrato, much like player command 04. Both the speed and the depth can be $01 - $7F. You need to set both speed and depth before vibrato can occur, and a value of 00 with either command turns vibrato off. 02 VBD 03 04 <= Depth set to 4 04 VBS 05 30 <= Speed set to 30 10) Command: VWF Keypress: Shift-W Name: Set vibrato waveform Sets the vibrato shape. It should always be 32 bytes long. Same idea as the volume shape commands, but this time the further down a point on the vibrato shape is, the higher the pitch. Note that the shape is actually played backwards, so use the Range All and Reverse buttons to reverse it. By default, a sine wave vibrato shape is used. 00 VBD 01 06 02 VBS 03 40 04 VWF 05 04 <= Now uses waveform number 04 as vibrato shape @ENDNODE @NODE win_smped "The Sample Editor" This window allows you to edit and digitize samples. Open it either by using the @{"Display menu" LINK menu_display} or by clicking "Edit" in the @{"Main Control window" LINK main_ctrl 79}. Displayed in the window is either the current sample's waveform, or the words "No sample loaded" if the current instrument slot is empty. The scroll bar below the waveform shows the size and position of the displayed portion of the sample relative to the whole sample. It also allows you to scroll around the sample (after zooming in) by dragging it. You can also scroll using the and keys. *NEW* The scroll bar on the right of the waveform allows magnification of the display. Drag it upwards to zoom in, downwards to zoom out. Many operations act on a specific range, which is set by dragging the left mouse button along the waveform. After selecting the range, you may re-adjust the start or end positions by holding down a Shift key while dragging the left mouse button. *NEW* Operations will act on the whole sample if the range is one byte long (i.e. Range Start = Range End). The gadgets above the waveform are as follows: Display This display box contains the number of bytes currently being displayed in the waveform. It changes when zooming in or out (see later). Buffsize The size of the current sample (waveform buffer). Typing in a new size brings up a requester, asking whether to clear the sample or retain the sample already in memory. One use of retaining the sample is adding extra "workspace" to the end of a sample, which is useful in some editing operations (e.g. echoing). By choosing "Clear" you may create a new sample, and this is often the first step when digitizing (see later). There need not be a sample in memory in order to enter a new size. *NEW* There is now no maximum buffer size, but Amiga samples should be no longer than 131072 bytes to play properly. (Aura and Toccata samples can be as large as memory allows). Range Start / The actual byte positions of the start and end of the End range. Adjust these positions by typing in new values. The following gadgets lie below the waveform: Play Display Plays the current display at the current pitch (see "Pitch" below). Zoom In / Out Magnifies / reduces the sample so you can see more / less detail. Repeated clicking takes you deeper into / further away from the sample. This is essential for accurate editing. (Also try the zoom slider on the far right) Show All Restores the whole waveform to view after zooming. Range Display Ranges the whole display. Sample< / Copies the copy buffer to the sample, or the sample to the >Buffer copy buffer. Can be used to implement a simple "undo". Before trying out a function, a snapshot of the sample can be made with ">Buffer". If you're not satisfied with the outcome of the function, the sample can be restored with "Sample<". Monitor Opens a black area, displaying the real-time input waveform from a sampler (connected to the parallel port). The purpose of Monitor is to make sure the sound is at a volume level that will not cause distortion in the digitizing process (see Digitize below). The sound may "crackle" a bit: this is normal (it won't crackle when digitizing). Other programs are temporarily frozen during monitoring, but you can still move the mouse pointer etc. Click inside the black area to stop monitoring. *NEW* The small gadget at the top left corner of the black area selects whether input should be accepted from the left or right channel of a stereo sampler. (If you own a mono sampler, ignore this gadget). If the @{"Aura card" LINK win_aura} is set to Active, the card input is monitored instead of the parallel port. If Output Device in the @{"Instrument Type window" LINK win_type 91} is set to Toccata, the @{"Toccata Capture" LINK win_toccata} window opens. Digitize Opens the monitoring area. Starts digitizing (also called "sampling") if you click inside the black area. Clicking with the right mouse button cancels the operation. During digitizing, the screen blanks and multitasking is disabled. The sampling stops when the sample buffer (Buffsize) is full, but it can be interrupted with the right mouse button. Clicking Digitize when Buffsize is zero sets Buffsize to 131072 bytes (or if not enough memory, to the largest size possible). If you want to sample from the Aura or Toccata cards, you need to set the @{"sample type" LINK win_type 77} to 16-bit and select Aura or Toccata Output Device before sampling. You must therefore have a sample allocated in advance (type a number into Buffsize). Pitch The numeric box displays the current sampling / playing period, and the raised box shows the note equivalent to this period value. The default is 428 (note C-2), but this can be changed by either entering a value into the numeric box, or holding the left mouse button on the note box and entering a new note using the keyboard. Freehand Allows you to edit the waveform with the mouse. The maximum display size is 628 bytes, but you may zoom closer if you wish. In Freehand mode, the Pixel display mode is automatically selected. Loop A sample having a loop means that a note you play with the sample is sustained until it is stopped. This is due to a particular section of the sample being continually repeated (or "looped"), and the boundaries of this section are defined by the two "loop pointers". These pointers appear as dotted lines over the waveform, and as small triangles in the rectangle immediately below the waveform. They mark the start and end of the looped section. The "Loop" check box is a duplicate of the "Loop On" gadget in the @{"Instrument Parameters window" LINK win_instr 37}. Select this gadget to activate the loop. Loop Point The loop pointers can be moved in three different ways: 1) Typing in the Repeat and/or RepLen value in the @{"Instrument Parameters window" LINK win_instr 37} 2) Dragging the small triangles across the waveform 3) Using the Loop Point gadgets < and > move a loop pointer two bytes to the left or right. *NEW* Shift- clicking them sets the loop pointer to the start or end of the sample. <0 and 0> move a loop pointer to the left or right until a zero is found. For a decent-sounding loop, it ideally needs to start and end at the same value, which can often be zero (i.e. no volume). So these buttons are useful in finding good loop points. The cycle gadget selects whether the < > <0 0> gadgets act on the loop start (default) or loop end pointer. Bear in mind that zooming in allows far more accurate loop positioning. Also, good loops are often found by looping any repeating waveform shapes in the sample (called "envelopes"). *NEW* The "S" button and two display boxes refer to stereo and 16-bit samples. The left-hand display box displays: 1) 8 or 16, showing whether the current sample is 8 or 16-bit 2) Mono if the sample is mono 3) L<>R, L> or R> if the sample is in stereo. L<>R means that both left and right channels are displayed in the waveform display. L> means just the left channel is displayed, R> means just the right channel. With stereo samples, toggle between L<>R / L> / R> using the "S" button. (Make the sample stereo in @{"Instrument Type" LINK win_type 86}). The right-hand display box displays similar information, but it refers to the copy buffer. (Empty means the copy buffer is currently empty). When entering notes with stereo samples, the left channel is played on tracks 0 and 3, and the right channel on 1 and 2. So to play both channels of a stereo sample at once, enter the same note on e.g. tracks 0 and 1. The following gadgets act on the currently selected range (see above): Show Magnifies the range to fill the whole display. Play Plays the range at the current pitch. Cut Deletes the range and moves it to the copy buffer. Erase Deletes the range (without moving it to the copy buffer). Clear Clears the range. Copy Copies the range to the copy buffer. Paste Inserts the copy buffer's contents at the start of the range. The sample size will increase by the number of bytes inserted. Reverse Reverses the range left to right. Useful for interpreting hidden messages in a few rock songs ;) The menus attached to this window are as follows: Project ŻŻŻŻŻŻŻ Flush Sample Removes the current instrument from memory. Load Sample Opens a @{"file requester" LINK filereq} to load a sample. Save As... Each of these five items save the current sample in a unique format (by way of a @{"file requester" LINK filereq}). See the Instrument Type window for more information on the formats. Exit Sample Closes the sample editor window. Editor Edit ŻŻŻŻ With this menu you may edit the sample. The Cut, Copy, Paste, Erase, Clear and Reverse items are equivalent to their Range gadget namesakes. Paste *NEW* As Paste except overwrites the existing sample contents, (Overwrite) rather than inserting. The sample's length is unchanged. Erase To Start Erases from the sample start to Range End, or from Range *NEW* / End Start to the sample end. Invert Inverts the range (turns it upside-down). This can be useful when trying to find a smooth loop or a smooth join between two waveforms (Freehand also helps this). Chop Deletes the non-ranged parts of the sample. Only the ranged portion is left. Remove Unused Deletes empty space (i.e. of zero or very little volume) on Space either side of the waveform. This both saves memory and keeps the timing in songs precise. Adjust Y *NEW* Opens the @{"Adjust Y window" LINK win_adjusty}. Centralize Centers the range about the white zero line. This allows *NEW* e.g. Change Volume to be more accurate. Tools ŻŻŻŻŻ Play Buffer Plays the contents of the copy buffer at the current pitch. Contents Sample <-> Swaps the sample with the copy buffer. *NEW* Buffer Discard Copy Discards and frees the memory occupied by the copy buffer. Buffer Add Workspace Opens the @{"Add Workspace window" LINK win_addwksp}. *NEW* Calculate *NEW* Works out the time taken to play the range at the current Range Time pitch (to the nearest .001 second). Play Tune Tone Plays a "sine" sound at the current pitch, for instrument *NEW* tuning purposes. Stop it using the space bar. Copy Pitch Copies the current pitch to the instrument's @{"default pitch" LINK win_instr 122} *NEW* or vice-versa. Copy to Synth Transfers the current range to the @{"synthetic sound editor" LINK win_synthed}, Editor thus allowing you to create a less memory-consuming instrument. The synth editor can only handle waveforms of 128 bytes maximum, so if the range is longer than that, only the first 128 bytes marked are copied. The range is copied to the right-hand waveform display. If you want the new synthetic instrument to replace the sample in memory, you need to make the current instrument synthetic. Effects ŻŻŻŻŻŻŻ This menu adds special effects to the sample. Change Volume Opens the @{"Change Volume window" LINK win_chgvol}. Change Pitch Opens the @{"Change Pitch window" LINK win_chgpitch}. Mix Opens the @{"Mix window" LINK win_mix}. Filter/Boost Opens the @{"Filter/Boost window" LINK win_filtboost}. Echo Opens the @{"Echo window" LINK win_echo}. Create Noise Opens the @{"Noise window" LINK win_noise}. Create Chord Opens the @{"Chord Creation window" LINK win_chdcreat}. Note that all effects aside from Change Pitch, Mix and Create Chord affect the current RANGE. So if you wish these effects to apply to the whole sample, use the Range Display gadget. Also, shift-clicking any of the action buttons (i.e. those which perform a function) in these windows executes the function then closes the window. Loop *NEW* ŻŻŻŻŻŻŻŻŻŻŻ Contains some loop handling functions. Show Loop Magnifies the loop to fill the whole display. Snapshot Loop Stores the current loop position in memory. Allows you to make adjustments to the loop, then to recall the original loop if you're unsatisfied. Recall Loop Retrieves the stored loop position. Mark Loops the range, current display or whole waveform. Find Zero Loop "In" does a 0> to the loop start pointer and a <0 to the In / Out loop end pointer. "Out" does the opposite. Play Loop Plays the loop repeatedly. Range = Loop Marks a range over the loop. Erase Before / Deletes from the sample start to the loop start, or the After Loop loop end to the sample end. Settings ŻŻŻŻŻŻŻŻ Display *NEW* Opens the @{"Display Settings window" LINK win_dispsettings}. Settings Pitch In Hz When on, displays the Pitch value (near the bottom right of the main window) in Hertz - samples per second - instead of displaying its period. Sampler Voice When selected, you can hear the sound you are sampling Monitor during digitizing. Turning this off may marginally enhance the digitizing quality on machines with a 68000 processor. Create Icons When on, saves a Workbench icon file together with the For Samples *NEW* sample when using Project menu -> Save As. You'll need the Sample.info file to be in the PROGDIR:Icons directory (you can substitute this file for another project icon if you wish). No default tool is saved. @ENDNODE @NODE win_toccata "The Toccata Capture Window *NEW*" Use this window to sample from your Toccata card (if you have one). If you don't have one you'll never see this window! To open the window: 1) Open the @{"Instrument Type window" LINK win_type 91}, and set the current instrument's output device to Toccata 2) In the @{"Sample Editor" LINK win_smped 66}, click Monitor or Record (it doesn't matter which). Please remember that the current instrument's output device must be set to Toccata, so for every Toccata instrument you wish to use, you'll need to open the Instrument Type window and click on Toccata. You'll get used to it... To sample from your Toccata card: 1) In Instrument Type, set whether the sample is to be: i) 8-bit or 16-bit (click Sample or 16-bit respectively) ii) in stereo or mono (click on the Stereo check box if required) 2) Back in the Toccata Capture window, switch Level Display Active on. This activates two black input level bars, to help you set the correct input level. The louder the sound, the further right the black bars. For stereo samples, the top bar shows the left channel, the bottom bar the right. 3) Set the required input parameters in the Input area. (See Toccata's manual for more information). 4) Select a sampling rate using the bottom slider. Toccata has 14 different input/output rates, ranging from 5513 Hz to 48 kHz. 5) Click Capture to immediately begin sampling. Click Stop in the requester that appears to interrupt sampling. Entering notes played by Toccata instruments: 1) The C-1 to C#2 keys (normally keys Z to L) each play a Toccata sample at one of the fixed frequencies. That is, C-1 plays at 5513 Hz, C#2 at 48 kHz. You can play back a sample at any of these frequencies, no matter which frequency it was originally recorded on. 2) There's a slight problem with using Toccata samples in songs. If you play two different samples one after the other, and they have certain different settings, there will be a short (but audible) delay between the two samples. 000 C-1 10000 (Here, there'll be a delay before playing the 001 --- 00000 note on line 004, because the two different 002 --- 00000 samples are played at different pitches. 003 --- 00000 Different sampling rates and stereo/mono status 004 E-1 20000 also cause a delay) This is unfortunately beyond OctaMED's control, but there is a rather laborious work-around. Select an empty sample, and give it the same sampling rate and stereo/mono status as the second of the two samples. Now enter it just before the second sample (on line 003 here), at the same pitch as the second sample. So the track becomes: 000 C-1 10000 001 --- 00000 002 --- 00000 003 E-1 30000 <= Instrument 03 (an empty sample with the same rate 004 E-1 20000 and stereo/mono as instrument 02) played at E-1 @ENDNODE @NODE win_adjusty "The Adjust Y Window *NEW*" Use this window to adjust the vertical position of the range. It is opened using the @{"sample editor's Edit menu" LINK win_smped 211}. Type the required amount of adjustment into the "Adjust by" numeric box. The number can be -128 to 127; a negative number adjusts downwards. Clicking "Calculate Average Deviation" works out the required adjustment to `centralize' the range; this is probably the most frequent use for this window. To centralize the whole sample, use @{"Edit menu -> Centralize" LINK win_smped 237}. "Adjust" adjusts the range, and "Exit" closes the window. @ENDNODE @NODE win_addwksp "The Add Workspace Window *NEW*" With this window, opened using the @{"sample editor's Tools menu" LINK win_smped 241}, you can add extra blank workspace (of zero volume) anywhere in the sample. Type the number of bytes of space to add into the "Bytes" box. Alternatively, use the two sliders to calculate the number of bytes: 1) "Factor" calculates the number of bytes as whole multiples of the sample size. For example, if the sample size were 2000, a Factor value of 3 would add 6000 bytes to the sample. 2) Use "Adjust" to add that little bit extra on to the Factor value. For example, for a Factor value of 2½, set Factor to 2 and Adjust to 50 %. A quick way to add as much space as the sample itself, doubling the sample size, is to set Factor to 1. The maximum number of bytes allowed is (131072 - sample's size), so that the final length of the sample never exceeds 131072. Usually you'll probably want to add space to the end of the sample, but using the "Add to" gadget you can add space to the start. "Add Workspace" adds the space, and "Exit" closes the window. @ENDNODE @NODE win_chgvol "The Change Volume Window [ Keyboard shortcut: Amiga-O ]" This window allows you to change the volume of the current range, and is opened using the @{"sample editor's Effects menu" LINK win_smped 276}. The sliders select the starting and ending volume change, and both are percentages of the original volume. For example, setting the start volume to 150 % and the end volume to 75 % fades downwards from one-and-a-half times the original volume to three-quarters of the original volume. Each slider can select a value of 0 - 500 %. Clicking CHANGE VOLUME changes the volume using the current slider values. There are also some commonly-used presets below the CHANGE VOLUME button. "Fade In" changes from 0 % to 100 %, "Fade Out" from 100 % to 0 %, "Halve" 50 % - 50 %, and "Double" 200 % - 200 %. Fade In / Out are useful partly in eliminating the "click" that you sometimes hear at the very start and end of a sample. To do this, range a small piece of waveform at the start or end of the sample, and click Fade In for the start or Fade Out for the end. Usually, if the volume is increased too much, the normal waveform limits are exceeded and distortion (or "clipping") will occur. If the "Check Clip" gadget is switched on, however, the waveform limits will not be exceeded. *NEW* The "Max Clip" gadget, only active when Check Clip is on, allows slight clipping. For example, when set to 10, the normal waveform limits are allowed to exceed by 10 %. The "Max" button increases the range to the highest possible volume without introducing distortion. The "Exit" button closes the window. @ENDNODE @NODE win_chgpitch "The Change Pitch Window [ Keyboard shortcut: Amiga-P ]" This window lets you change the pitch of (or "retune") the sample. The sample's size will also change: it will decrease if the pitch is made higher, and increase if the pitch is lowered. (The window is opened by using the @{"sample editor's Effects menu" LINK win_smped 276}). For example, if you'd like to retune the current sample to play the note G-2 when you press the C-2 key: 1) Set the source note to C-2 by holding the left mouse button on the "Source" note box and pressing the C-2 key; 2) Set the destination note to G-2 in the same way; 3) Click "Change Pitch". The sample is retuned, and its size in this case will decrease by roughly two-thirds. Other gadgets are: Octave Up / Retunes the sample one octave up / down, halving / doubling Down the sample's size. The "Period" gadgets are changed to the values the operation represents. Cancel Retunes the sample so that the @{"Finetune value in the " LINK win_instr 60} Finetune @{" Instrument Parameters window" LINK win_instr 60} no longer applies. So if the finetune value were -4, the sample would be retuned 4 steps down and the instrument's finetune would be set to zero. Anti-Alias When on, does some anti-aliasing when retuning downwards (i.e when the pitch becomes lower). This means that noise is reduced, and is the default. Exit Closes the window. @ENDNODE @NODE win_mix "The Mix Window [ Keyboard shortcut: Amiga-M ]" This window contains the gadgets required to combine two samples. The sample placed in the copy buffer (using @{">Buffer" LINK win_smped 59}) will be mixed with the current sample. (Open the window through the @{"sample editor's Effects menu" LINK win_smped 276}) The two sliders control the volumes of the two waveforms to be mixed. To understand them fully, you need to bear in mind that mixing is achieved by ADDING the two samples together. So if the samples were both mixed at 100 % volume, the resulting mixed sample would be 200 % (double) in volume. For this reason, the default for each sample is 50 %, giving a 100 % (normal volume) mixed sample. Each slider's value may be 0 - 100 %. (For those that are interested, this is why samples should be "halved" in 5-8 channel mode: the samples are added at half their normal volume to produce a full volume sample). The volume of the sample in the copy buffer is altered using the "Dest. Level" slider, and that of the current sample using the "Source Level" slider. The sample in the copy buffer is mixed with the current sample, at the point marked by a range. If the range is more than one byte in length, only the area selected by the range is affected; otherwise, the whole of the sample starting at Range Start is affected. The "Mix" gadget mixes the sample, and "Exit" closes the window. @ENDNODE @NODE win_filtboost "The Filter/Boost Window [ Keyboard shortcut: Amiga-F ]" This window includes a function to filter the current range, reducing noise, and to boost the current range, making it sound brighter and more audible. Open the window using the @{"sample editor's Effects menu" LINK win_smped 276}. Filtering is done by calculating the average of each individual value in the sample and the values on either side of it. Boosting employs an opposite process. There are two sliders, both of which can have a value of 1 - 128: Averaging The strength of the filter/boost (technical note: the proportions of each individual value compared to the values on either side of it). The higher the slider value, the greater the strength. The default is 16. Distance The distance between the averaged values. In practical terms, this slider affects the sound in an odd way! (It's best to experiment with different values). For a normal filter/boost, set this to 1 (the default). The Filter gadget filters, Boost gadget boosts, and Exit closes the window. @ENDNODE @NODE win_echo "The Echo Window [ Keyboard shortcut: Amiga-K ]" With this window, interesting echo effects can be produced. Open it using the @{"sample editor's Effects menu" LINK win_smped 276}. The echo function affects the current range. Before echoing, you usually need to add some extra space to the end of the sample (use the @{"Add Workspace window" LINK win_addwksp 19}). You'll also need to mark a range over both the waveform to be echoed and the blank space that the echo is to affect. There are three numeric boxes: Echo Rate The distance, in bytes, between two echoes. A very low rate can make a speech sample sound like a robot... Volume Decrease Sets the rate at which the echo will fade away. The lower the value, the lower the rate, but a value of 0 spreads the volume evenly throughout the range. Number of Echoes The total number of echoes produced, usually quite low (1 - 10). The best way to learn this feature is through experimentation. The "Do Echo" gadget executes the function, and "Exit" closes the window. @ENDNODE @NODE win_noise "The Noise Window [ Keyboard shortcut: Amiga-N ]" Open this window using the @{"sample editor's Effects menu" LINK win_smped 276}. The fairly unique feature in the window allows you to add noise to the current range. It may seem useless at first glance, but with it you can easily create effects such as wind and sea sounds, and it can be a source of more complex instruments when used together with other effects. So it's possible to create good-sounding instruments even without using a sampler! The slider sets the noise strength (1 - 128), which is really the volume of the produced noise. The "Noise" gadget creates noise, and "Exit" closes the window. @ENDNODE @NODE win_chdcreat "The Chord Creation Window [ Keyboard shortcut: Amiga-H ]" With this window you can create chords of two to four notes from the current sample. Open it using the @{"sample editor's Effects menu" LINK win_smped 276}. The window consists of four pitch gadgets, whose contents can be changed by holding down the left mouse button and pressing a note on the keyboard. You may also clear the note by pressing Return or Del. The basenote is the note to which the other chord notes relate. In practical terms you can think of it as the "bass note". The other gadgets are the other notes in the chord, of which some may be blank if desired. Note that you are not restricted to the normal three-octave range of a sample: you may use pitches over the full 10½-octave range. Also note that higher notes are shorter in length than lower notes, so the notes in the chord will not end simultaneously. *NEW* Major improvement in V6! This window is now the tinkerer's paradise! The bank of eight buttons in the window's center select eight different preset chords. Major, Minor and Sus 4th are three-note chords, the others are four-note. The "Inversion" cycle gadget selects which note of the chord is lowest. Root position is normal, 1st inversion makes the second chord note lowest, 2nd inversion makes the third chord note lowest etc. The remaining three cycle gadgets set the interval between various notes: 1) "Basic" sets the interval between the two lower chord notes. Major = 4 halfsteps, Minor = 3 halfsteps, Sus 4th = 5 halfsteps. 2) "Third" controls the first and third chord notes. Diminished = 6, Normal = 7, Augmented = 8. 3) "Fourth" controls the first and fourth chord notes. Sixth = 9, Dominant = 10, Major = 11. Because higher notes are played more quickly than lower notes, the notes in the chord won't end together. Switching "Erase Trailing Notes" on removes the part that doesn't contain all notes in the chord, shortening the sample but ensuring that the notes _do_ end together. "Full Volume" doesn't divide each value by the number of notes in the chord, increasing the volume. Distortion may occur. "Play Chord" previews the chord by playing one chord note through each sound channel (the final chord will only be played through one channel). Click "Mute" or press the space bar to stop the chord. A tip to improve quality: before creating the chord, @{"change the sample to " LINK win_type 77} @{" 16-bit" LINK win_type 77}. Then click Create Chord, click @{"Max in Change Volume" LINK win_chgvol 24}, then @{"change " LINK win_type 3} @{" the sample back to 8-bit" LINK win_type 3}. "Create Chord" creates the chord and stores it in the current sample. "Exit" closes the window. @ENDNODE @NODE win_dispsettings "The Display Settings Window *NEW* [ Keyboard shortcut = Amiga-D ]" This window, opened using the @{"sample editor's Settings menu" LINK win_smped 327}, contains various settings affecting the waveform display. "Display Type" sets either line (default) or pixel waveform display mode. "Pixel Density" sets the density of the pixels (1 - 50) used when drawing the waveform in pixel mode (Display Type). The slider value is the number of pixels displayed in every horizontal pixel position. "Minimum Zoom" is the minimum value of Display (top left corner of the main sample editor window) in bytes. Dragging the zoom slider (far right of sample editor) upwards usually zooms in towards the middle of the sample. With "Center Zoom Slide on Range" on, however, it zooms towards the center of the current range. Try switching this on, marking a range, and using the zoom slider. Quite neat, really. When "Fast Graphics" is on (default), the waveform display updates much more quickly than usual. However, the function occupies about 5K of memory, so switch it off if memory is very tight. "Exit" closes the window. @ENDNODE @NODE win_slist "The Sample List Editor [ Keyboard shortcut: Amiga-L ]" As you work with computer music you will acquire large numbers of instruments, spread over many different disks and directories. For easy loading, the samples need to be organized. This window provides the necessary functions for organizing and storing a list of all your samples. (Open it using the @{"Display menu" LINK menu_display}). The list could be created using any text editor (as it had to be in the early days of MED), but it's now much easier to make one with the Sample List Editor. Basically, a list is created by clicking "Add Dir..." and choosing a directory containing samples from the @{"file requester" LINK filereq}. The directory and its filenames are then added to the list, and this can be repeated for all your sample directories / disks. You may view a directory's filenames by clicking the required directory name in the "Directories" list. The list is saved using "Save List...", and the filename is "MED_paths". On startup, OctaMED looks for the MED_paths file in the directory in which the OctaMED program is contained. (OctaMED calls this directory "PROGDIR:"). The gadgets in this window are as follows: Add Adds the current instrument to the instruments list (it will be inserted in alphabetical order). Note that the sample's loop, tuning, MIDI, and relative volume values will also be stored, as well as its default pitch. Remove Removes the instrument selected in the sample list (i.e. click on a filename and press "Remove"). Save Ins Saves the current instrument in the currently selected directory (actually stores it on disk as well as in the list). Del Ins Like "Remove", but also deletes the instrument from disk (careful!). These last two options remove the need to use a file requester to save or delete instruments in the sample list. Add Dir Opens a @{"file requester" LINK filereq} to add a directory to the list. A requester will also appear, inquiring whether you wish to add the directory after the currently selected directory or to the top or end of the list. Remove Dir Removes the current directory from the list. Save List Opens a @{"file requester" LINK filereq} to save the list to disk. The default save path is PROGDIR: (i.e. the directory in which the OctaMED program is stored). On startup OctaMED looks for the MED_paths file in that directory, so be sure to save your usual sample list there. (Of course, you can save backup copies of MED_paths in any directory). Load Inst Loads the selected sample list instrument into the current sample slot. (An easier method of loading instruments in the sample list is found in the @{"Load Instrument Window" LINK win_instload}). Save All Insts Saves all instruments in the song in the current directory. This can be handy for extracting (or "ripping") all the samples from other people's songs, for use in your own songs. The Name text gadget displays the name of the selected instrument. You may rename the instrument by typing a new name into this gadget. The remaining numeric boxes are the current loop / tuning / MIDI / volume values of the selected instrument, and the Pitch gadget is the current default pitch of the selected instrument (if any). They can be changed by entering a new value, or by holding the left mouse button on the Pitch gadget and pressing a new note on the keyboard. Note that the MIDI and loop (Repeat / RepLen) gadgets can't both be non-zero at the same time. (For a description of loop / tuning / MIDI / relative volume values, and the default instrument pitch, see @{"The Instrument Parameters Window" LINK win_instr 37}). Since MIDI instruments are not actually instruments but a few settings, you may wish to create a "dummy" directory for them. The Exit gadget closes the window. The menu contains the following items: ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Load List Allows you to load a sample list under any name. You are asked whether you would like to append to or replace the list already in memory. (This feature has been resurrected from V4). Clear List Clears the entire list (after a confirmation requester). *NEW* Statistics Displays statistics about the sample list: 1) The currently selected directory number 2) The total number of directories in the list 3) The number of samples in the current directory 4) The total number of samples in the list @ENDNODE @NODE win_msged "The MIDI Message Editor [ Keyboard shortcut: Amiga-G ]" This window offers the tools required to capture, send, and store MIDI data, and to edit MIDI messages in @{"hexadecimal" LINK hex}. (Open the window using the @{"Display menu" LINK menu_display}). The message editor is especially suitable for, but not limited to, capturing System Exclusive (SysEx) messages. These are very versatile messages which can (for example) be used to set and alter the parameters of sounds on machines supporting this facility. You can edit sounds using your synthesizer, then transfer either the original sound or the edited sound into your Amiga and save it. Later on, OctaMED can send the sound back to the synthesizer for playing. The gadgets to the right of "Msg" are: current message number, previous message, next message, and total number of messages in the buffer. Other gadgets are as follows: New Msg Adds a new message to the end of the list. Use this gadget to create a new message after starting OctaMED up. New Here Inserts a new message at the current point in the list. Usually "New Msg" is preferred to this button. Del Msg Deletes the current message. Clear Msg Clears the current message (sets all bytes to zero). Msg Size Newly created messages are eight bytes long, but to capture (for example) SysEx messages, a much larger buffer is required. So use this gadget to change the message size. The arrow gadgets decrease / increase the size by one, and the maximum size is 1048560 bytes. Name Allows you to name the message (you'll need to unless you can read hexadecimal!). Save Msg Opens a @{"file requester" LINK filereq} to save the current message. Note that MIDI messages are automatically saved with OctaMED songs, but you may wish to save them as separate files that you can load into other songs. Load Msg Opens a @{"file requester" LINK filereq} for loading a message. A requester appears wondering whether the new message should replace the current one or create a new message for itself. Capture Msg To capture data from your MIDI device, set up an empty message as large as or larger than the incoming data, click Capture Msg, then start sending data. Click it again to stop capturing (although with SysEx messages there is an easier way to stop capturing, see "Auto-Terminate Capture" below). MIDI Active and Input Active in the @{"MIDI menu" LINK menu_midi 15} are automatically selected when Capture Msg is pressed. Send Msg Sends out the current MIDI message. @{"Player command 10" LINK cmd_midi 27} also does this. Auto-Terminate Causes OctaMED to stop capturing when an End SysEx byte Capture ($F7) is received. OctaMED will also remove all unused bytes at the end of the buffer: you shouldn't leave any unused (zero) bytes after the actual MIDI data. These zeros are MIDI data too, which will be sent, and this is likely to cause problems. So this gadget is usually kept switched on. If this gadget is off, however, OctaMED will capture all incoming bytes until either the "Capture Msg" gadget is re-clicked or the end of the buffer is reached. The display box to the right of Auto-Terminate Capture shows "Recording..." when a MIDI message is being captured. Exit Closes the window. You may also edit the hex data. Make sure Edit is on (@{"Main Control" LINK main_ctrl 86}), then simply use the cursor keys to move around the data and the numeric keys (0-9, A-F) to modify the hex data. Use the Del key to delete a byte, and Shift-Del to insert a new one. (See also @{"MIDI Commands" LINK cmd_midi}, @{"The MIDI Menu" LINK menu_midi}, and @{"The Input Map Editor" LINK win_maped}) @ENDNODE @NODE win_maped "The Input Map Editor [ Keyboard shortcut: Amiga-A ]" With this window you may re-assign all the input keys on your keyboard. It is opened using the @{"Display menu" LINK menu_display}. Each key can be assigned to: 1) enter any note/command you wish (similar to @{"Programmable Keys" LINK win_progkeys}) 2) perform an action (such as moving the cursor up or down) This also works with the normal Amiga keyboard: a MIDI keyboard is not required, but this feature is much more useful when used with one. The two columns of numbers in the list are the entry numbers in @{"hex" LINK hex} and decimal. The other gadgets included in this window are: Map Active When selected, this allows you to use the input map. Create New Map By default there is no input map, so click this to create a new one. Now, an entry such as "C-1xxxxxx" is displayed for each note, which means that the C-1 key will just enter C-1 with the current instrument number, and leave the command digits untouched. You may edit an entry in the same way as in the @{"Programmable Keys window" LINK win_progkeys}. Click on an entry to select it, hold down the left mouse button, move to the number you wish to change and press a key on the keyboard to change it. Delete This Map Removes the current map after a confirmation requester. Reset Selected Changes the selected key back to its original function. Load Map Opens a @{"file requester" LINK filereq} to load a new input map from disk. A requester will appear if the current input map has been changed since last saving. Save Map Opens a @{"file requester" LINK filereq} to save the current input map to disk. *NEW* Setting the function which the selected key should perform is now a lot more flexible with the sacrifice of ease-of-use. As with the new @{"Keyboard Shortcuts window" LINK win_keybshorts 52}, the key can now execute any OctaMED command, an external ARexx command, an ARexx script, or a program. The Action area is much as in Keyboard Shortcuts. The cycle gadget has the following options: OctaMED Command Executes an OctaMED ARexx command (type it into the Command box, together with any required parameters). (See §13 for more information on OctaMED commands) Execute ARexx Executes an external ARexx file (type its name into the File Command box). Ext. ARexx Sends an ARexx command to another program. Type the Command command into Command, and the program's ARexx port name into ARexx Port. Launch Program Launches (runs) an executable program file. Type its name into Command. So to set the selected key to Play Song, for example, select OctaMED Command using the cycle gadget and type "pl_playsong" into the Command text box. @ENDNODE @NODE win_sngsel "The Song Selector Window [ Keyboard shortcut: Left Alt-G ]" This window allows you to add and delete songs in a multi-module, and to choose the current song. Open it using @{"Information's `Sg' button" LINK main_info 11}, or by selecting @{"Song menu -> Select" LINK menu_song}. The window displays a list of all songs in the multi-module. Select a song by clicking on it; the song's name appears in the text box immediately below the list (you can edit the name using this text box). The buttons in this window are as follows: Add New Adds a new song to the end of the list. Add Here Adds a new song at the currently selected position. Delete Deletes the selected song. Select Makes the selected song the current song, and closes the window. Exit Closes the window. (Song selection gadgets are also contained in the @{"Information window" LINK main_info 11}) @ENDNODE @NODE win_playseq "The Playing Sequence Window [ Keyboard shortcut: Left Alt-Q ]" The playing sequence consists of a list of block numbers and names arranged in the order they should be played in the song. More than one playing sequence may be defined (called "sections"), and the @{"section list" LINK win_seclist} contains the order in which to play these multiple playing sequences. When the last section has been played, the song will by default start again from the beginning (although it's also possible to stop the playing). This window contains the functions required to create playing sequences, and is activated by either clicking "Sq" in the @{"Information window" LINK main_info 28} or using the @{"Song menu" LINK menu_song}. A sequence may use the same block number more than once, and a maximum of 999 entries in each playing sequence is allowed. ("Playing sequence" will be referred to as "playseq" from now on). The maximum number of separate playseqs allowed is 65535 (should be enough!). The current playseq position ("playpos") is highlighted in blue, and may be set by clicking on a block name. Selecting playpos while the song is playing immediately plays from the beginning of the entry selected. The following gadgets for editing playseqs are included in this window: Top Sets playpos to the top of the display. [ Keyboard shortcut: Ctrl-NK7 ("NK" = numeric keypad, apologies (Home) to Amiga 600 owners!) ] Bottom Sets playpos to the bottom of the display. [ Keyboard shortcut: Ctrl-NK1 (End) ] Insert Duplicates the entry highlighted by playpos. [ Keyboard shortcut: Ctrl-NK0 (Ins) ] Ins Curr Inserts a new entry, the current block, at playpos. [ Keyboard shortcut: Ctrl-NK5 ] Append As Insert, but adds to the end of the list. (*NEW*) App Curr As Ins Curr, but adds to the end of the list. (*NEW*) Delete Deletes the current entry. [ Keyboard shortcut: Ctrl-NK. ] Clear After a confirmation requester, clears the current playseq. [ Other keyboard shortcuts: Ctrl-NK8 scrolls up, Ctrl-NK2 scrolls down. ] Follow Using the scroll bar, it is possible to scroll around the list independent of playpos. When "Follow" is selected, the position of the list will be automatically updated during play. The numeric box to the left of "Follow" contains the block number of playpos, which can be altered either by typing in a new number or by using the arrow buttons. You can't increase the block number beyond the number of the last block in the song. [ Keyboard shortcuts for the arrow gadgets: Ctrl-NK4 decreases block number, Ctrl-NK6 increases ] The arrow buttons act slightly differently when playpos is below the last playseq entry. Pressing the left arrow button deletes the last entry; pressing the right one adds block 000 to the end of the sequence. The display box to the right of the numeric box contains the number of playpos and the total number of entries in the current section. Multiple playseqs (sections) can be created using the following buttons: Name Displays the name of the current section, which you can edit. New Sec Adds a new section after the last section. New Sec Here Inserts a new section at the current position. Delete Sec Deletes the current section. Below these buttons is an numeric box showing the current section number. It may be changed by either typing in a new number or using the arrow buttons. The display box to the right of the numeric box contains the total number of sections. The Exit button closes the window. (Note: the song can be stopped at any time by using @{"player command 0FFE" LINK cmd_norm 59}) (See also @{"The Section List" LINK win_seclist} and @{"The Block List" LINK win_blklist}) @ENDNODE @NODE win_seclist "The Section List Window [ Keyboard shortcut: Left Alt-C ]" This window, opened either by using the @{"Song menu" LINK menu_song} or by clicking "Sc" in the @{"Information window" LINK main_info 24}, contains the order in which to play song sections. These sections are created in the @{"Playing Sequence window" LINK win_playseq}. The current section position ("secpos") is highlighted in blue, and may be set by clicking on a section name. Shift-clicking on a section name selects the section clicked in the Playing Sequence window. A maximum of 65535 entries are allowed (note, however, that only the lower three digits are displayed). The numeric box contains the section number of secpos, which can be altered either by typing in a new number or by using the arrow buttons. You can't increase the section number beyond the number of the last section in the song. The display boxes to the right of the numeric box contains the number of secpos and the total number of entries in the current section list, and the total number of sections in the song. Other buttons are as follows: Insert Inserts a new entry 001 at secpos. Append Appends a new entry 001 to the end of the section list. Delete Deletes the current entry. Exit Closes the window. @ENDNODE @NODE win_songopts "The Song Options Window [ Keyboard shortcut: Amiga-H ]" This window contains various song parameters. In a multi-module, these parameters can be different for each song. (It is opened using the @{"Song menu" LINK menu_song}). The gadgets are listed below: Name This text gadget contains the name of the current song, displayed on the title bar. You may type in a new name. Channel Mode The Amiga has four sound channels, but by mixing two notes together and playing them through one channel, up to eight notes can be played at once. This radio button is used to select the number of channels OctaMED should use. (See @{"5-8 Channel Mode" LINK 5-8chan} for more info). You may be asked questions if you click 5, 6, 7 or 8 channel mode. OctaMED will halve the volume of all samples if you agree (see @{"5-8 Channel Mode" LINK 5-8chan}). *NEW* Also, if you choose e.g. 7 channel mode, and some of the blocks in the song have less than 7 tracks, OctaMED will offer to add the missing tracks to these blocks. Note: for MIDI use, "4 Channels/MIDI" should be selected (this is also the default). The cycle gadget chooses whether the data bytes of @{"volume (0C) commands" LINK cmd_norm 24} should be in @{"hexadecimal" LINK hex} or decimal. If you aren't a programmer (and even if you are), it may be easier to think in decimal, and "Decimal Volumes" is the default. However, hex volumes are slightly faster (not noticeably, but faster anyway ;^). The state of this gadget is saved as part of a song. You can easily convert all volume commands from decimal to hex and vice- versa with the "Convert" gadget. Clicking this gadget prompts you for the type of conversion desired. Audio Filter Turns the low-pass audio filter on/off. When on, the Active Amiga's power LED will be bright. However it is best to keep the filter off, since the sound quality is usually better. High Quality When on, this significantly increases the audio quality in Mode 5-8 channel mode. Unfortunately, it will also double the processor load, so a 68020 processor or higher is required to use this gadget in 7 and 8 channel modes. It has no effect in 4 channel mode. No Slide On Normally effects are done on every tick, but with this on, 1st Tick the effects are not done on the first tick. This is the way the Trackers perform effects, and this switch is for compatibility only: it is automatically switched on when a Tracker module is loaded. Play This slider transposes the whole song by the value Transpose selected. It doesn't change the notes, it just affects playing. The minimum and maximum is -12 and 12 respectively (i.e. ħ 1 octave). Other transposition functions may be found in the @{"Transpose window" LINK win_trans}. Exit Closes the window. @ENDNODE @NODE win_trackvols "The Relative Track Volumes Window [ Keyboard shortcut: Amiga-R ]" This window contains sliders to adjust the volume of each track relative to the master volume. It is opened using the @{"Song menu" LINK menu_song}. Each volume can be 1 - 64. The master volume sets the overall volume of the song. If both the master volume and the volume of a track were 64, that track is played at full volume. If, however, the master volume and a track volume were 32, the volume of that track would be a quarter of full volume. Clicking the two large arrow gadgets at the bottom left of the window show the previous/next sixteen tracks, and shift-clicking them show the first/ last sixteen tracks in the song. (They only really apply to blocks containing over sixteen tracks). The Exit gadget closes the window. (Note: The state of these sliders are saved with songs) @ENDNODE @NODE win_blkprops "The Block Properties Window [ Keyboard shortcut: Amiga-B ]" This window allows you to edit the properties of the current block. It is activated either by using the @{"Block menu" LINK menu_block} or by holding down Shift and clicking the B gadget in the @{"Information window" LINK main_info 32}. The gadgets are: Name Contains the name of the block, which can be changed by typing in a new name. (The name is also displayed in the @{"Information" LINK main_info 32} and @{"Block List" LINK win_blklist 10} windows). A maximum of 41 characters is allowed. Tracks Selects the number of tracks in the block. The minimum is 1 and the maximum 64. Note that track 8 onwards can only be used with @{"MIDI devices" LINK menu_midi}, and tracks 4-7 only with @{"Song Option's Channel Mode gadget" LINK win_songopts 9} set appropriately (except for MIDI use). Also note that when you decrease the number of tracks, the higher tracks will be lost (with no "Are you sure?" requester). Length The number of lines in the block. Can be changed by either typing in a new number or using the arrow gadgets. < and > decrease and increase the length by 1, << and >> by 10. The preferred way is to type in a new number directly, since less "memory fragmentation" occurs. The maximum length of a block is 3200 lines. Cmd Pages Sets the number of @{"player command" LINK PlrCommands} "pages" in the current block. *NEW* Using this feature, notes can have more than one player command attached to them. For example, if you wanted the note G-2 to have a sample offset of $500 (hex) AND to play at volume 32, you would use this: Command page 1: G-2 11905 Command page 2: G-2 10C32 Press Shift-Tab to cycle through command pages in the Tracker editor. The Tracker editor's title bar shows the current page and the total number of pages in the block. Maximum number of pages is 32767 (unlimited in other words!). Editing operations such as Cut / Copy / Paste Range act on all command pages at once. Exit Closes the window. @ENDNODE @NODE win_blklist "The Block List Window [ Keyboard shortcut: Left Alt-B ]" The block list is an "at-a-glance" list of the current song's blocks and their names. It is brought up by either using the @{"Block menu" LINK menu_block} or clicking the small "B" gadget in the @{"Information window" LINK main_info 32}. The current block, highlighted in blue, may be changed by clicking on another block. Keyboard shortcuts for changing the current block are: Shift - / Previous / next block Left Alt - / First block / last block The text gadget displays the current block's name, which can also be changed by typing in a new name. Up to 41 characters are allowed in each name. The window contains the following gadgets: Insert New Inserts a new block at the current block position. Append New Adds a new block after the last block. These buttons are like the New -> Insert and New -> Append items in the @{"Block menu" LINK menu_block}. Ins to Seq Inserts the current block's number at the @{"current playing " LINK win_playseq 14} @{" sequence position" LINK win_playseq 14}. App to Seq Appends the current block's number to the @{"playing sequence" LINK win_playseq}. Delete Deletes the current block. Equivalent to the Delete items in the @{"Block menu" LINK menu_block 21}. Show Unused When on, any block that hasn't been used in the playing *NEW* sequence is marked with a "*". Exit Closes the window. @ENDNODE @NODE win_highopts "The Highlight Options Window" In this window you can highlight the current block's lines in a particular order. This can help you position notes in widely-spaced blocks or mark measures or beats. It is opened using the @{"Block menu" LINK menu_block}. The top row of small square gadgets highlight the block lines with the respective spacing. For example, the 4 gadget highlights every fourth line. You'll probably use this particular gadget (4) the most often, since in a normal default block of 64 lines, the gadget highlights every beat in the block (i.e. every four sixteenth notes). The other gadgets are as follows: Clear Clears all the highlighted lines in the block. Offset Sets the first line to be highlighted. For example, an offset of 2 begins highlighting on line 002. Spacing Allows you to use a highlight spacing not included in the small buttons at the top of the window. For example, entering 12 highlights every twelfth line. Exit Closes the window. You'll notice that the 1, 2, 3, 4, 6 and 8 gadgets are all underlined, meaning (of course) that they have a Left Alt shortcut. These shortcuts, however, only work with the numeric keypad keys (not the keys on the main keyboard). Note that when editing, the Tab key highlights the current line. Also note that highlighting an already highlighted line removes the highlighting. Line highlighting is saved with songs. @ENDNODE @NODE win_expshrk "The Expand/Shrink Block Window" This window, activated by choosing @{"Block menu -> Expand/Shrink" LINK menu_block}, is used for expanding or shrinking the current block. "Expand" creates empty lines between each line, and "Shrink" removes lines. The "Factor" gadget contains the amount of expansion or shrink. For example, if Factor were 3, pressing Expand would insert two new lines between each line (thus trebling the block length), and pressing Shrink would remove every second and third line (thus thirding the block length). "Factor" may be 1 - 99, but the expanded block length must not exceed 3200 lines (the maximum block length), and the shrink factor must be divisible by the number of lines in the block. A message appears if either of these rules are infringed. Expansion is useful, for example, if you would like to include some quick rhythms in a block but realize that the block plays too slowly for the rhythms. (However, fast rhythms may also be created using commands @{"0FF1" LINK cmd_norm 38}, @{"0FF2" LINK cmd_norm 40}, @{"0FF3" LINK cmd_norm 42}, and @{"1F" LINK cmd_norm 81}, so try these before expanding). The only real use of shrink is to reverse the effect of a previous expansion. @ENDNODE @NODE win_instr "The Instrument Parameters Window [ Keyboard shortcut: Left Alt-P ]" With this important window you may alter the characteristics of the current instrument. It is opened by either using the @{"Instr menu" LINK menu_instr} or clicking @{"Main Control's Params button" LINK main_ctrl 77}. The gadgets are as follows: Name Contains the name of the instrument, which may be renamed by typing in a new name. (However, it is advisable not to rename instruments when saving songs without instruments, since the renamed instruments will probably fail to load). The maximum name length is 40 characters. The display box to the right of Name contains the current instrument number. The instrument selection gadgets ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ The slider and arrows are used to select the current instrument. 1st Selects the first instrument (01). Last Selects the last instrument (1V). L.U. Selects the last instrument in memory (stands for "Last Used"). Keyboard shortcuts for selecting the instrument include: Shift- / Previous / Next instrument Shift-Alt- / 16 samples forward/backwards @{" Instruments may also be selected using the numeric keypad. " LINK key_others 51} Flush Removes the current instrument from memory and clears all its parameters. (Equivalent to @{"Instr menu -> Flush Current" LINK menu_instr 47}). The loop gadgets ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ "Repeat", "RepLen" and "Loop On" are the loop gadgets. A sample loop means that the notes you play with the sample will be sustained until they are stopped. This is due to a particular part of the sample being continually repeated (or "looped"). The Repeat value is the beginning of the loop in bytes from the start of the sample, and the RepLen value is the length of the loop. Selecting Loop On activates the loop, and loops the whole sample if Repeat and RepLen are both zero. Loops are set in steps of 2 bytes, i.e. only even numbers may be used (typing in odd numbers rounds them down). RepLen must be at least 4. The loop may also be set by using the loop pointers and gadgets in the @{"sample editor" LINK win_smped 115}. When you load IFF instruments, their Repeat and RepLen values are automatically set. *NEW* Also in this section is "Disable". When on, OctaMED pretends the instrument isn't there! All notes played by it in the Tracker editor are ignored. (Added at the request of a user who uses it for what he calls `multi-tracking') The tuning gadgets ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Under the loop gadgets are two sliders. "Transpose" raises or lowers the pitch of the current instrument in halfsteps (semitones). For example, if the transpose value was 3 and note C-2 was to be played with the current instrument, it would be transposed 3 halfsteps higher (D#2). A negative value transposes lower. The maximum and minimum transpose values are 127 and -128 (although higher values only affect MIDI instruments). "Finetune" allows you to tune instruments in small steps, which is useful for incorrectly sampled instruments. The value can be -8 to 7. Hold and decay ŻŻŻŻŻŻŻŻŻŻŻŻŻŻ These gadgets allow you to set a note's exact duration and fade speed. "Hold" is the duration in ticks (see §8.1 in the printed manual for a description of ticks, you'll need it to understand this section!), and "Decay" is the speed of fade when the hold duration has completed. In these examples, the Ticks Per Line value is assumed to be the default 6. One line in the examples is one tick. 1. No Hold Set 2. Hold Set To 2 ŻŻŻŻŻŻŻŻŻŻŻŻŻŻ ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ 0 Play note (e.g. C-2 10000) 0 Play note (e.g. C-2 10000) 1 1 2 2 STOP note 3 3 (silence) 4 4 5 5 6 Play new note (e.g. D-3 10000) 6 Play new note (e.g. D-3 10000) In example 2, the note is stopped on the second tick. BUT: if the note is followed by a "keep holding symbol" (-|-) in the track, the note is not stopped on the second tick but carries on playing. For example: 000 C-2 10000 / Line No. Tick No Action 001 -|- 10000 / 003 0 Continue note... 002 -|- 10000 / 003 1 Continue note... 003 -|- 10000 ==> ZOOMED => 003 2 STOP note 004 --- 00000 \ 003 3 (silence) 005 D-3 10000 \ 003 4 So on the last "keep holding symbol" encountered, the usual hold value is used. This symbol is inserted by either clearing the note and entering only the instrument number, or more easily by pressing Return or the A key. If the decay is zero, the note is turned off immediately after holding. If it is a non-zero value, however, the note will fade after holding. A value of 1 produces the slowest decay. Decay only works if Hold is non-zero. Both Hold and Decay can have a value of 0 to 127. Note that Decay doesn't work with MIDI instruments, and is handled very differently with synthsounds or hybrids (see @{"SynthEd Program" LINK win_synthprog 97}). Hold and Decay is quite a useful feature, and although it may sound complicated, it isn't really :-), so we recommend that you learn to use it! Default volume and pitch ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ The "Vol" slider sets the default volume of the current instrument, in decimal and @{"hex" LINK hex}. It ranges from 0 (silent) to 64 (full volume). "Default Pitch" (beside Flush) allows you to set a default pitch for the current instrument. When you press the F key, the instrument is played at that pitch. This can be very useful for untuned instruments like percussion. The pitch box contains the default pitch of the instrument (or --- if no pitch is set). To change this, hold down the left mouse button on the box and press a note on the keyboard. You may also clear the pitch by pressing Return or Del. MIDI gadgets (see @{"The MIDI Menu" LINK menu_midi} and @{"MIDI Commands" LINK cmd_midi}) ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Before using a MIDI instrument, you need to change some settings in this part of the window to the required values. They are: MIDICh This slider sets the MIDI channel for the instrument (1 - 16). For example, setting it to 5 means this instrument's notes are sent through MIDI channel 5. If the slider is set to 0, the instrument is non-MIDI. Preset Sets the preset number of the instrument (max. 128 or 2800). When set to zero, OctaMED uses your keyboard's default preset for the instrument's MIDI channel (see MIDICh above). But by giving this slider a non-zero value, you may use more than one preset on the same MIDI channel: OctaMED sends a program change message whenever a note is played. If you want to send a preset change command without playing a note, use the 0C00 command with any note played by the instrument with the new preset. Suppress Suppresses Note Off messages for the current instrument. Some NoteOff devices may have some instruments (e.g. one-shot drum sounds) which actually ignore any Note Off messages sent. So when this is selected, Note Offs aren't sent for the current instrument, reducing unnecessary output (which is slightly faster). Extended When off, the maximum value of the Preset slider is 128, but Preset when on the maximum is increased to 2800. However, this can only be used on some MIDI devices which support the exact method of sending the preset: 1) Presets 1 - 100 are sent in the normal manner. 2) Presets above 100 are sent by first sending the "hundreds" part and then the 0-99 part. For example, the number 1156 is sent as 11 followed by 56. Consult your manual to see if this is the way supported by your device. In order to hear a MIDI instrument, you must also set its default volume to above zero. Note: a MIDI instrument's name doesn't really have any use. It's good practice, however, to type the name of the presets into the Name gadget. This way you can easily recognize the instruments, and if you give the song to someone else who has different MIDI equipment, he/she can easily change the preset numbers to use the correct presets on his/her MIDI device. ** The loop, tuning, default volume and pitch, and MIDI values can all be set in the sample list using the @{"sample list editor" LINK win_slist 66}. @ENDNODE @NODE win_type "The Instrument Type Window [ Keyboard shortcut: Left Alt-T ]" This window selects the current instrument's type. Open it using either the @{"Instr menu" LINK menu_instr} or @{"Main Control's Type button" LINK main_ctrl 75}. The options are: Sample The "normal" instruments, played through either the Amiga or a MIDI device. OctaMED can load the following sample types: 1) "Raw" (pure binary, no extra parts so the most compact type. *NEW* OctaMED can load raw 16-bit samples with the header "Raw16Bit": OctaMED saves them in this form) 2) IFF 8SVX (1 - 7 octaves) [This includes "delta-compressed" samples: their lengths are exactly halved, with the drawback of a slight loss of sound quality.] *NEW* 3) MAUD (a new type mainly for use with @{"Toccata" LINK win_toccata}. Quite like IFF 8SVX, except it can also save 16-bit and stereo samples) *NEW* 4) AIFF (a standard across many computer systems) *NEW* 5) WAVE (used with PC computers) Note that raw and 1-octave IFF 8SVX samples can only use octaves 1 - 3: octaves higher than 3 play using octave 3's range. Also note that the highest octave of a 7-octave sample can't be played. For MIDI use, the instrument is not strictly an instrument, but simply a few settings which result in the notes played with that instrument being sent through a MIDI interface. Therefore, MIDI instruments aren't loaded into memory like other sounds. They can also use the full 10½-octave range. (For more information on MIDI, see @{"MIDI Menu" LINK menu_midi} and @{"Instr Params" LINK win_instr 138}) Hybrid As "Sample" above, but can be controled using the same "programming language" as synthsounds. (See @{"SynthEd Program" LINK win_synthprog}) ExtSample ExtSamples are like normal Amiga samples, except with two lower octaves added to the octave range (octaves 1 and 2). The octaves used with normal samples are moved up two places to make way for the new octaves (i.e. octave 1 becomes octave 3, octave 2 becomes octave 4 etc.). However, because of an undesirable feature in the Amiga's hardware, especially under faster processors, ExtSamples should be used with care. After playing a note with an ExtSample using one of the new octaves, the following note will often not be correctly triggered. The solution is to use an 0FFF command before the following note is played. For example: C-1 20000 <= ExtSample --- 00000 --- 00FFF <= use 0FFF before the next note C-2 10000 <= this instrument doesn't need to be an ExtSample for the bug to occur However, in "paired" channels in @{"5-8 channel mode" LINK 5-8chan 32}, this problem doesn't appear at all! Note: more experimentative users may discover that octaves 8 and 9 of a normal sample also appear to play two lower octaves. These octaves   should, however, *NEVER* be used in songs (apart from with MIDI): believe it or not, it's a complete coincidence that they work!   ExtSamples are the only "legal" way of using the two lower octaves. In   any case, octaves 8 and 9 are also one finetune step sharp. :-) Synthetic These special instruments, known as "synthsounds", are made from simple waveforms which can be joined together and have their volume and pitch altered by using a simple "programming language". Synthsounds usually sound quite simple, but they can be very effective and don't take up nearly as much memory as normal samples. In addition, they can play using octaves 1 - 5, two octaves greater than normal samples. For more details, see the @{"Synthetic Sound Editor" LINK win_synthed}. 16-bit This is a special instrument type for users of @{"Aura" LINK win_aura} or @{"Toccata" LINK win_toccata}, with a resolution of 16 bits (instead of 8 bits as with normal samples). You can convert 16-bit samples to normal 8-bit samples (and vice versa), but you will lose sound quality. The Octaves slider shows the number of octaves that the current sample consists of (1 - 7). Changing the slider's value often messes up the sample, so it's best not to. :^) *NEW* The Stereo check box is checked when the current sample is in stereo. Click on it to change a mono sample to stereo and vice-versa (you'll need some free memory for mono -> stereo, double the sample's size: press Ctrl-F and check the "largest Chip" number). *NEW* Output Device selects whether the current sample should be played through the Amiga or through the Aura or Toccata 16-bit cards. (The Toccata option is only shown if a Toccata card is connected to your computer). The Exit gadget closes the window. @ENDNODE @NODE win_instload "The Instrument Load Window" This window, opened using @{"Instr menu -> Load from List" LINK menu_instr} or @{"Main Control's " LINK main_ctrl 73} @{" SList button" LINK main_ctrl 73}, is a convenient way of loading instruments contained in the sample list. (See the @{"Sample List Editor" LINK win_slist}). The right-hand list contains the directories, the left-hand list contains the filenames in the current directory. Select the current directory by clicking on a directory name. Load an instrument into the current slot by clicking on an instrument name. The other gadgets in this window are: Flush Removes the current instrument from memory. [ Keyboard shortcut: Ctrl - G ] Prev / Next Selects the previous / next instrument. Inst [ Keyboard shortcuts: Shift - / ] Prev / Next Selects the previous / next empty instrument slot. Free [ Keyboard shortcuts: Shift - Ctrl - "<" / ">" ] Exit Closes the window. *NEW* The current instrument number is now shown beside Prev Inst. @ENDNODE @NODE win_trans "The Transpose Window [ Keyboard shortcut: Amiga-T ]" This window contains functions that "transpose" (alter) the notes in a particular area of the current project. Open it using the @{"Edit menu" LINK menu_edit}. The gadgets under "Affect" should be selected before choosing a function. They select which area of the song the transposition should affect, and the notes played by which instruments. Song Affects the whole song (default). Block Affects the current block. Track Affects the current track (the track that the cursor is on). Selected Affects selected tracks (tracks are selected by clicking their Tracks S buttons in the Tracker editor). Range Affects the range, selected using the mouse. (The button used to mark a range is chosen in the @{"Mouse Options window" LINK win_mouseopts}). All Affects all instruments (default). Current Affects the currently selected instrument. The "Transpose" functions are Octave Up / Down and Halfstep Up / Down, and should be self-explanatory. (Note to British users: "halfstep" means "semitone"). The "Change Notes" operations act on the Source and Destination notes. Select these notes by holding down the left mouse button on each note box in turn and pressing the desired key (for example, the I key selects note C-3). Change Allows occurrences of a single note to be changed throughout the specified area. It changes all notes in the selected area from the source note to the destination note. Swap Swaps all source notes in the selected area with the destination note. The "Change Instrument" functions perform on notes played by the Source and Destination instruments. Select these instruments by choosing each required instrument (using Shift - / etc.) and clicking the "Source" and "Destination" buttons. Change Changes the notes (in the selected area) played by the source instrument to the destination instrument. Swap Swaps the source and destination instrument numbers of notes having either. Delete Deletes notes played by the source instrument. *NEW* "Instrument Slots": When on, the three Change Instrument buttons - Change, Swap, Delete - act on the actual instruments themselves rather than notes played by the instruments. (Delete is like Flush Instrument) @ENDNODE @NODE win_spread "The Spread Notes Window [ Keyboard shortcut: Amiga-F ]" This window allows you to spread the notes in the currently marked range across consecutive tracks to the right of the range. If notes already exist in the tracks, the operation replaces them. Open the window using the @{"Edit menu" LINK menu_edit}. The "Width" slider selects the number of tracks to spread the notes across (2 - 10). Clicking "Spread" spreads the notes, and shift-clicking "Spread" spreads the notes _and_ closes the window. "Exit" closes the window. @ENDNODE @NODE win_noteecho "The Note Echo Window [ Keyboard shortcut: Amiga-E ]" With this window, opened using the @{"Edit menu" LINK menu_edit}, you may produce echoes automatically with the @{"0C command" LINK cmd_norm 24}. The volume halves with each echo. For example: C-1 10000 (the initial note) --- 00000 C-1 10C32 (half volume. Decimal volumes are used in this example) --- 00000 C-1 10C16 (quarter volume) --- 00000 C-1 10C08 (eighth volume) ... Echoed notes will only be placed in empty note positions throughout the marked range. The range may cover more than one track. The gadgets are as follows: Distance The distance in lines between echoes, e.g. 4 means echo every fourth line. Minimum The minimum volume of an echo. Echoes with a smaller volume Volume than this won't be generated. Do Echo Creates the echo. (Shift-clicking it also closes the window). Exit Closes the window. @ENDNODE @NODE win_inpchan "The Input Channel Window [ Keyboard shortcut: Amiga-\ ]" This small window, opened using the @{"MIDI menu" LINK menu_midi}, contains the MIDI input channel number through which notes will be received when MIDI Menu -> Input Active is on. If set to zero, OctaMED will accept input from all MIDI channels. @ENDNODE @NODE win_mouseopts "The Mouse Options Window [ Keyboard shortcut: Amiga-W ]" This window contains three cycle gadgets, which are used to select the function of each mouse button when clicked in the Tracker editor. Open it using the @{"Settings menu" LINK menu_settings}. The available functions are as follows: No Operation The button has no effect. Track On/Off The button switches the clicked track on or off. Select Track Switches the clicked selected track on or off (the S buttons in the Tracker editor). Position Cursor Places the cursor under the mouse pointer. Select Range Marks a range. The default for Left Mouse Button is Select Range, for the other gadgets is No Operation. Of course, the Middle Mouse Button setting is ignored if you own a two-button mouse! The Exit gadget closes the window. @ENDNODE @NODE win_keybopts "The Keyboard Options Window [ Keyboard shortcut: Amiga-K ]" This window contains many settings used when editing in the Tracker editor. Open it using the @{"Settings menu" LINK menu_settings}. Cursor advance ŻŻŻŻŻŻŻŻŻŻŻŻŻŻ The three gadgets at the top of the window are the directions the cursor should advance after entering something in the editor. They are: Line Up / Down Advances up / down a line. [ Ctrl-A toggles Don't Advance and Down ] Track Prev / Next Advances to the previous / next track when the cursor is on the note. *NEW* [ Shift-Ctrl-A toggles Don't Advance and Next Track ] Cursor Left / Right Advances left / right when the cursor is on the command digits. *NEW* [ Alt-Ctrl-A toggles Don't Advance and Right ] Advance Line Down is the usual preferred setting, and the default. @{"Spacing" LINK main_ctrl 91} ŻŻŻŻŻŻŻ The slider sets the space value. A space value of 3, for example, enters notes every third line. The maximum value is 16 (and minimum 2). Placing spaces between notes while entering music makes editing and tempo changes much easier. After you have entered the music you may want to turn the spacing function off so you may move into the lines between notes (you can also use Right Alt-/). Other spacing options are: Destructive Spacing When selected, any notes that lie between the lines used for entering spaced notes will be deleted when a note is entered. Auto-Round Spacing When on, restricts cursor movements to lines divisible by the spacing value. For example, with a spacing value of 2, you can only move the cursor to lines 000, 002, 004 etc. This only applies to using the cursor keys, not to entering notes. By default these two options are on. Other options ŻŻŻŻŻŻŻŻŻŻŻŻŻ Chord Reset When on, after @{"entering a chord" LINK main_ctrl 107} the cursor returns to the initial track. Advance with When activated, the notes in the block are played when the sound cursor is moved up or down. Useful for non-real time editing. [ Shortcut: Ctrl-W ] Poly Play When on (and @{"Edit" LINK main_ctrl 86} is off), playing notes using the keyboard *NEW* will play the notes through alternate sound channels. This gives a kind of "resonating" effect. Try it! F6-F10 = *NEW* When on, sets the positions moved to by keys F6 - F10 to Highlights the first five highlighted lines in the current block. Useful for widely-spaced blocks with few samples in them (perhaps the beginning of a rave track?-). @ENDNODE @NODE win_progkeys "The Programmable Keys Window [ Keyboard shortcut: Amiga-Y ]" The programmable keys ("progkeys") allow music to be entered much more easily and quickly. You can assign notes or groups of notes, including player commands, to 10 different keys. The assigned notes can then be inserted in the Tracker editor by holding down Shift and pressing key 0 - 9. This window contains the functions necessary to view and edit the progkeys, and is opened using the @{"Settings menu" LINK menu_settings}. The cycle gadget selects whether you wish to edit the normal Shift- 0 - 9 definitions (default) or the Right Alt definition. The Right Alt definition consists of the command digits only, and if you enter notes with the Right Alt key held in the Tracker editor, these command digits will be inserted with the notes. Select which progkey you would like to edit (0 - 9) using the slider to the right of the cycle gadget. By default key 1 is selected. The slider is ghosted when "Right Alt" is picked. The box below this, containing a note and command digits, is the definition of the selected progkey. Edit the progkey one digit at a time, by holding the left mouse button on each digit and entering a new note / number using the keyboard. To make a digit transparent (shown by an x), press Return while holding the left mouse button. A digit being transparent means that when the progkey is entered in the Tracker editor, the corresponding existing digit will remain unchanged. For example, the definition xxxxx0000 would set all command digits to zero while leaving the note and instrument number unchanged. The Clear gadget clears the current definition, i.e. sets it to "--- 00000" for a normal progkey and to "xxxxx0000" for Right Alt. The Pick gadgets copy either the note under the cursor, the current range, or the copy buffer to the current definition. If a range is picked, the definition box shows the word "=Range=". [ Shortcut: Shift-Ctrl-0-9 picks note under cursor ] The Save/Load Keys gadgets open a file requester allowing you to save and load a set of progkey definitions. The default name is PROGDIR:OctaMEDPro.defprogkeys (OctaMED attempts to load a file of this name on startup), but definitions can be saved under any filename. The Exit gadget closes the window. @ENDNODE @NODE win_keybshorts "The Keyboard Shortcuts Window *NEW*" With this window, opened through the @{"Settings menu" LINK menu_settings}, you can make any key combination operate almost any OctaMED feature. You can re-define existing keyboard shortcuts, and create new ones. On the window's left is a list of all shortcuts. Select a shortcut by clicking on it. Its name appears in the Name text box (you may rename it if you wish). "Ins. New" and "App. New" insert and append a blank shortcut to the list. "Delete" deletes the current shortcut. The display box underneath Ins. New / App. New / Delete shows the number of the currently selected shortcut and the total number of shortcuts in the list. The Input and Action areas contain settings applying to the current shortcut. Input area ŻŻŻŻŻŻŻŻŻŻ Here you decide which key combination triggers the current shortcut. You can set a qualifier (the Shift, Alt, Amiga and Ctrl keys), and the key itself. You can also set whether the caps lock should be on or off (or to ignore the caps lock). The "Shift", "Alt" and "Amiga" cycle gadgets have the following options: Ignore Ignores the status of Shift/Alt/Amiga. (That is, it doesn't matter whether Shift/Alt/Amiga is held or not). Either One of the Shift/Alt/Amiga keys (left or right) must be held. Left The left key must be held. (The right one can optionally be held). Right The right key must be held. (The left one can optionally be held). Both Both must be held (rare!). None Neither must be held (not quite the same as Ignore). Left Only Only the left key must be held (not the right). Right Only Only the right key must be held (not the left). The "Control" and "Caps Lock" cycle gadgets have Ignore, On and Off options. Ignore ignores the status of Ctrl and Caps Lock. On means they must be on (or held in Ctrl's case), Off means they must be off. "Mapped" and "Raw" select the key itself. If the key is mapped (i.e. a character appears on the screen when you press it), type it into the Mapped box. For non-printable keys, type its `raw-key' code into Raw. (For a list of relevant raw-key codes, see §12.9.2 of the printed manual). Action area ŻŻŻŻŻŻŻŻŻŻŻ Here you decide what effect the key combination will have. The cycle gadget has the following options: OctaMED Command Executes an OctaMED ARexx command (type it into the Command box, together with any required parameters). ARexx itself isn't actually involved. To execute more than one command, use the OP_MULTICMD command. (See §13 for more information on OctaMED commands) Execute ARexx Executes an external ARexx file (type its name into the File Command box). Unless the file is in PROGDIR: or REXX:, specify the full path name. The filename should end in `.omed'. Ext. ARexx Sends an ARexx command to another program. Type the Command command into Command, and the program's ARexx port name into ARexx Port. Note: To use Execute ARexx File or Ext. ARexx Command successfully, make sure you have run the program RexxMast. Launch Program Launches (runs) an executable program file. Type its name into Command. Others ŻŻŻŻŻŻ The "Window" text box allows you to create shortcuts that only work in a particular window. Select the required shortcut, then type the window name into Window (in ARexx form: see §14.2 for a list). In this way, the same key combination can be used for different purposes in different windows. If a key combination is both `global' (not window-specific) and window- specific, the latter takes priority. "Load" and "Save" load and save keyboard shortcut files. The default name is `PROGDIR:OctaMEDPro.defkeyboard'. (PROGDIR: is the directory in which the OctaMED program resides). @ENDNODE @NODE win_palette "The Palette Window" With this window, opened using the @{"Settings menu" LINK menu_settings}, you may change the screen's colors. Select a color by clicking on it (the chosen color appears in the box at the top left of the window). Use the Red, Green and Blue sliders to alter the intensity of red, green and blue light in the selected color. (Switch "WB Palette" off first). Palette Type sets the sliders' range. With the default 8-Bit selected, the range is 0 - 255, allowing compatibility with the AGA chip set currently present in the A1200 and A4000 computers. With 4-Bit selected, the range is 0 - 15, more suitable for use with older Amigas. Note that either setting can be used with either chip set; but with an inappropriate setting, AGA computers could only select 1 in every 4096 available colors, and with other computers the color would only change once every 16 slider values (which, I can tell you, is more than a bit uncomfortable!). *NEW* WB Palette uses Workbench's palette. The OK and Cancel gadgets accept or reject the color changes and close the window. @ENDNODE @NODE win_font "The Font Window *NEW*" With this window, opened via the @{"Settings menu" LINK menu_settings}, you can select the fonts used in three different areas of OctaMED. Each of the three rows contains a GetFile button, display boxes showing the font name and point size, and a "Default" check box. Use the GetFile button to select a new font. OctaMED loads the names of all the fonts in your FONTS: directory (the Fonts drawer on your system disk). The "Default" check box selects `topaz 8'. The "Screen Font" is used for screen and window title bars and system requesters. The "Window Font" appears inside windows, and the "Editor Font" applies to the Tracker editor only (you can only use a non-proportional font for this). If you don't yet have Kickstart 3.0, it's recommended to only use non- proportional fonts. (They do work, but slider values tend to become garbled after a while, and certain parts of the program - e.g. MIDI Message Editor, Synth Program - will tend to flicker sometimes). @ENDNODE @NODE win_miscopts "The Miscellaneous Options Window *NEW*" This window, opened via the @{"Settings menu" LINK menu_settings}, contains all those settings that wouldn't fit in the Settings menu itself. All options can be saved using Settings menu -> Save Settings. Check boxes ŻŻŻŻŻŻŻŻŻŻŻ Close Workbench Attempts to open / close the Workbench. Useful if you are low on memory, as closing the Workbench frees about 40K of chip memory. If it can't, a message appears to this effect and OctaMED tries again when its screen is next re-opened. Overwrite Requesters Enables / disables "overwrite?" messages appearing *NEW* if you try to save a file with the same name as another file in the directory. Warn if Disk Full When on, a requester appears if the song you're trying *NEW* to save probably won't fit on the disk. Be warned, though: it's impossible to predict this accurately, and the file might not fit even if the requester doesn't appear. Also, the requester always appears when saving to RAM:, so just ignore it in this case. (Note that this only applies to saving songs using @{"Save Options" LINK win_saveopts}) Size-Only Window Normally, clicking a window's zoom gadget shows only Zoom *NEW* the window title bar AND moves the title bar to its default position. (For a demonstration, drag any window to a different position, then click on its zoom gadget. It moves back to its original place, yeah?) With this check box on, the window won't move back to its default position, it will stay right where it is. Use ReqTools Uses the ReqTools normal / file / screen mode / font *NEW* requesters instead of ASL. Requires reqtools.library. (Note that if asl.library isn't available on startup but reqtools.library is, OctaMED will automatically use ReqTools, regardless of the state of Use Reqtools). Load Instr From When on, typing a name into @{"Main Control's instrument " LINK main_ctrl 48} MainCtrl *NEW* @{" name text box" LINK main_ctrl 48} attempts to load the file. When off, the instrument is simply renamed. Even when on, press Alt-Return in the text box to rename the instrument. H -> B Selects how OctaMED will display the name of the note between A# and C. In some countries it's H, in others it's B. When set, B's are displayed. Default is on (B's are displayed). Cycle gadgets (all *NEW*) ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Default Volume Mode Selects whether the cycle gadget in @{"Song Options" LINK win_songopts 25} displays Decimal or Hex Volumes. Gadget Shortcut Qual Choose the qualifier used with @{"gadget shortcuts" LINK key_gadgets}: Left Alt (default), Right Alt, Left Amiga or none at all (gadget shortcuts are disabled). When using Left Amiga, watch out for the system shortcuts L.Amiga-N and M! Default HQ Mode Selects whether @{"High Quality Mode" LINK win_songopts 40} is on or off. Default Slow HQ Mode Selects whether @{"Slow HQ" LINK win_tempo 51} is on or off. Help Viewer Selects whether to use AmigaGuide, Hyper or XPKGuide to display this on-line help system. @ENDNODE @NODE win_aura "The Aura Sampler Options Window" First appearing in OctaMED V5.02, this window provides controls for users of the Aura 16-bit sampling / playback card. The card fits into a PCMCIA slot, so is currently only available for A600 and A1200 owners. If you have either of these machines, though, the card is well worth buying. (Open this window through the @{"Settings menu" LINK menu_settings}) A 16-bit sample must be loaded for OctaMED's Aura support to activate itself. Firstly, switch on the "Active" check box. Next, load in any sample, then open @{"Instrument Type" LINK win_type} and click on "16-bit". You can now digitize (sample) through the card using the @{"sample editor" LINK win_smped 87}. Other gadgets in this window: 1) "Minimum Period" sets the minimum period limit, i.e. the highest pitch OctaMED can play using the card. The smaller the period, the higher the pitch and the better the quality BUT the more processor time used. The ideal value depends on the speed of your computer, so you have to adjust it by hand until you reach the highest possible pitch playable on your Amiga. If you set it too high, OctaMED will freeze while playing Aura samples (it will return to normal when play has stopped). To set the minimum period, activate Aura support as described in this topic's second paragraph. Play your 16-bit sample at a high pitch (e.g. A#3), slide the minimum period down, play the sample again, and so on. You'll find that your Amiga will freeze during play if the minimum period is too low. Set it to such a value that no freezing occurs. You can use Settings menu -> Save Settings to save this parameter. 2) "Single Channel Output" only outputs sound using the right channel. This saves processor time. 3) "Fixed Output Rate" forces OctaMED always to output sound at the Minimum Period rate. All notes are "scaled" to this rate "on the fly". Using this option you can play higher notes than the Minimum Period correctly (unfortunately with degraded quality, however). Any sound intended to be played through the Aura card must be of type 16-bit. You can easily convert an 8-bit sample to 16 bits by @{"changing its " LINK win_type 77} @{" type to 16-bit" LINK win_type 77}. Only one 16-bit sample can be played at a time. Although they can be placed on any track, Aura samples always occupy track 3 while they're playing (this track is used for timing). So it's a good idea to enter notes played by Aura samples on track 3. Note: The programming tool "Enforcer" cannot be used while outputting from Aura for technical reasons. @ENDNODE @NODE win_smfload "The SMF Load Options Window *NEW*" New to version 6 is much-requested support for the Standard MIDI File (SMF) format, used by almost all MIDI programs. OctaMED can @{"save SMF type 0" LINK win_saveopts 72} songs, and load SMF type 0 and type 1 files. This window (opened via the @{"Settings menu" LINK menu_settings}) controls loading. To load a SMF, use Project menu -> Open as usual. The file may load correctly first time, but if it doesn't, try changing some of the settings in this window and reload the file (repeat if necessary). OctaMED can't guarantee a completely successful conversion, but with practice the result should be satisfactory (although conversion may take some time). Gadgets in the SMF Load Options window are: Max Tracks The maximum number of tracks in the song. The default highest value of 64 may cause "Not enough memory" reports, so reduce it if necessary. 32 works for almost all MIDI files, 16 for most. After loading, OctaMED automatically removes unused tracks. Lines/Block The number of lines per block. As MIDI files are linear (in one long block), OctaMED splits the file into equally-sized blocks and creates an appropriate playing sequence, each block being playing only once. Resolution The number of Tracker editor lines per quarter note (crotchet). So the default value of 8 assumes that there are no notes shorter than a 32nd-note (demisemiquaver). If you find timing to be inaccurate, try e.g. doubling this value. (This will also double the number of blocks and consequently the amount of memory used). Offset Adjust Used to adjust minor discrepancies in timing. For example, you may find that a bass drum beat appears on lines 1, 5, 9 (etc.) instead of its correct 0, 4, 8 (etc.). In this case, set Offset Adjust to -1. Command Pages OctaMED is able to load several MIDI commands and convert them to corresponding OctaMED player commands. You can set the command page each type of command is to use. You may place several types on the same page, but there will be the risk of overlapping commands. If the command page number is zero (default of all except Tempo), the commands are ignored. These command conversions are used: Tempo: 0F Pan: 0E Note Velocity: 0C Channel Volume: 17 Preset Change: 1C Channel Pressure: 0D Mod. Wheel: 04 Don't Intermix When loading SMF type 1 files, OctaMED tries to interweave Type 1 Tracks the notes in each track in order to use as few tracks as possible. So it won't normally be the case that each instrument has its own separate track, as is true for MIDI songs. Select this check box if you'd prefer each instrument to be on its own track. OctaMED uses instruments 01 to 0G when loading SMF-format files, one instrument for each MIDI channel. The program controls note length by setting every instrument's @{"Hold value" LINK win_instr 73} to 6. Default volumes are set to 64. @ENDNODE @REMARK @REMARK MAIN SCREEN NODES @REMARK @NODE MainScreen "The Main Screen" The main screen is split into three windows (including the Tracker editor): @{" Main Control " LINK main_ctrl} @{" Information " LINK main_info} In the printed manual, see §1, §2, §4.1 and §4.3 for Tracker editor information. If you close any of the three windows, you may re-open them using the @{"Display menu" LINK menu_display}. @ENDNODE @NODE main_ctrl "The Main Control window" This part of the @{"main screen" LINK MainScreen}, above the Tracker editor, contains some important general functions and displays. If you close the window at any point, reopen it using the @{"Display menu" LINK menu_display}. The window is divided into three sections: a play area (on the left), an instrument area (the top two rows on the right), and an edit area (the three check boxes and cycle gadget). The play area ŻŻŻŻŻŻŻŻŻŻŻŻŻ Beside Song: Play This gadget plays the current song from the start of the first @{"playing sequence" LINK win_playseq}. [ Keyboard shortcut: Shift-Alt-Space ] Cont Plays the current song from the @{"current playing sequence position" LINK win_playseq 14}, starting at the current line (or the first line if Cont is clicked with Shift held). [ Keyboard shortcut: Shift-Space ] Beside Block: Play Plays the current block from the first line. It will be replayed when the last line is reached. [ Keyboard shortcut: Amiga-Space ] Cont Plays the current block from the current line. [ Keyboard shortcut: Alt-Space ] D An abbreviation of "Delay", clicking this small button starts playing the block when you next enter a note. Edit mode must be on. @{"The display box in Information" LINK main_info 48} changes to "Waiting Input". STOP Stops playing the song / block. Sometimes notes will continue to sound after you stop the song. To silence them, click STOP again (or press the space bar). Shift-clicking STOP (clicking it with Shift held) stops playing _and_ inserts player command 0FFE ("stop playing") at the cursor. [ Keyboard shortcut: Space bar ] The instrument area ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Starting at the top left, the small display box contains the current instrument number, followed by a GetFile button to @{"load a new instrument" LINK menu_instr 9} into the current slot. The text box contains the instrument's name. Type a new name into this box to load the instrument of that name. If there's no instrument in the current slot, the text box will be blank. You may sometimes run across a song where the composer has removed the instrument names, though still using the nameless instruments in the song. There's no real advantage in removing the instruments' names. The display box after this displays the sample's size, or "-Synth-" if it is a @{"synthsound" LINK win_synthed} or "-------" if the slot is empty. The size is prefixed by: 1) "H" if the instrument is a @{"hybrid sound" LINK win_synthprog 116} 2) "E" if the instrument is an @{"ExtSample" LINK win_type 38} 3) "W" (for Word or Wide) if the sample is @{"16-bit" LINK win_type 77} (*NEW*) 4) "M" (for MIDI) if the sample is @{"MIDI" LINK menu_midi} (i.e. its MIDICh value > 0). Its MIDI channel number is also given. If the instrument isn't truly MIDI - perhaps it is a sample with a MIDICh value set - a * is also displayed. The four remaining buttons open certain instrument windows: SList Opens the @{"Instrument Load Window" LINK win_instload}. Type Opens the @{"Instrument Type window" LINK win_type}. Params Opens the @{"Instrument Parameters window" LINK win_instr}. Edit Opens either the @{"sample editor" LINK win_smped} or the @{"synthetic sound editor" LINK win_synthed}, depending on the current instrument's type. If the instrument is neither type, the sample editor is opened. The edit area ŻŻŻŻŻŻŻŻŻŻŻŻŻ Edit Toggles editing on/off. With editing on, you may insert notes or player commands into the song. [ Keyboard shortcut: Esc ] Space With this switch on, a set number of lines are skipped when a note is entered into the song. (The number of lines skipped, and other spacing options, are set in the @{"Keyboard Options window" LINK win_keybopts 26}). Useful for entering slow pieces of music, since you don't have to press the Del key as often. When you enter notes during playing (in "real-time") with Space on, the notes will be quantized. For example, with a spacing value of 2, the notes will only be placed on even-numbered lines (if @{"Auto-Round Spacing" LINK win_keybopts 41} is on). When shift-clicked, spacing is switched on and the Keyboard Options window is opened (with a view to editing the spacing options). [ Keyboard shortcut: Ż (the key just below Esc) ] Chord When on, the chord entering mode is active. You must still know which notes of a chord you want to use, but OctaMED will place them on the tracks for you. First you should select the tracks which the chord entering affects (using the S buttons in the Tracker editor). The chord always starts from the current track and continues to the following selected tracks on the right. Now, holding keys down will enter a chord. For example, to enter a C major chord: hold down the Q key, press the E key and keep both keys held down, then press the G key. On releasing the keys, the cursor moves back to the initial track (if @{"Chord Reset in the " LINK win_keybopts 51} @{" Keyboard Options window" LINK win_keybopts 51} is on). Chord entering also works well using a MIDI keyboard (see the @{"MIDI Menu" LINK menu_midi 54}). (Chords may be deleted using @{"Left Amiga-Del" LINK key_edit}). [ Keyboard shortcut: Shift-Esc ] Oct Shows which octaves are currently in use when you play the Amiga's keyboard (see §2.2 of the printed manual). If the current instrument has a MIDI channel of 0, keys F1 - F5 select octaves 12, 23, 34, 45, and 56. If its MIDI channel isn't zero, F2 - F4 select 45 to 67, F1 toggles 12 to 34, and F5 toggles 78 to 9A. Honestly! @ENDNODE @NODE main_info "The Information window" This part of the @{"main screen" LINK MainScreen}, below the Tracker editor, displays useful information and provides access to several windows. If you close the window at any point, reopen it using the @{"Display menu" LINK menu_display}. The title bar shows the current @{"tempo (song speed) settings" LINK win_tempo}: SPD or BPM, Tempo slider value, and TPL slider value. The top row ŻŻŻŻŻŻŻŻŻŻŻ This row contains many status displays and window-opening buttons. The "Sg" gadget opens the @{"Song Selector window" LINK win_sngsel}, and the display immediately to its right displays the current song and the last song in a multi-module. (A multi-module is a project consisting of more than one song, but which all share the same set of instruments). The arrow gadgets are used to decrease / increase the current song number. If the current song is the last song, and the right arrow gadget is clicked, OctaMED will add a new song to the project after a confirmation reqyester. Shift-clicking the right arrow gadget adds a new song without the requester. Shift-clicking the left arrow deletes the last song in memory after displaying a requester. (Equivalent to @{"Song menu -> Add New " LINK menu_song} @{" and Delete Last" LINK menu_song}) The "Sc" gadget opens the @{"Section List window" LINK win_seclist}, and the following display shows the current section list position and the total number of entries in the section list. The "Sq" gadget opens the @{"Playing Sequence window" LINK win_playseq}, and the following display shows the current playing sequence position and the total number of entries in the playing sequence. Clicking the "B" gadget opens the @{"Block List window" LINK win_blklist}, and shift-clicking it opens the @{"Block Properties window" LINK win_blkprops}. The following display shows the current block number (starting at 0), the number of the last block, and the current block name. The last block number + 1 is the total number of blocks in the song (since the numbering starts at 0). The bottom row ŻŻŻŻŻŻŻŻŻŻŻŻŻŻ On the left-hand side is a display box showing the free memory. "Chip" memory is the memory used to store graphics and samples, and "Fast" memory stores everything else. So if you have a song with many samples in it, it will probably be the Chip memory status you'll be watching. A more detailed account of the free memory can be obtained on the title bar by pressing Ctrl-F. The next display box shows the status of the song's playing ("Playing song", "Playing block", or "Stopped"), and the current disk activity ("Loading", "Saving"). It also shows "Waiting Input" if the D button (@{"beside STOP in Main Control" LINK main_ctrl 24}) is clicked. The third display box contains: 1) The @{"channel mode" LINK win_songopts 9} of the current song 2) "M" if @{"MIDI" LINK menu_midi 15} is active, "I" if @{"MIDI Input" LINK menu_midi 20} is active 3) "E", "S", "C" if @{"edit" LINK main_ctrl 86}, @{"space" LINK main_ctrl 91}, @{"chord mode" LINK main_ctrl 107} is on The final gadget, four digits with a ":" between them, is the timer. This is the number of minutes and seconds since Song or Block Play has last been clicked. Clicking STOP, Song Cont or Block Cont doesn't affect the elapsed time. You may reset the timer (to 00:00) by clicking the "R" button. The timer also remembers the current song position. When you click the R button, the current line / playseq position / section position is stored. Clicking on the timer itself moves back to the stored position. @ENDNODE @REMARK @REMARK PLAYER COMMANDS NODES @REMARK @NODE PlrCommands "Player Commands" See §3 in the printed manual for an introduction to player commands. The player commands can be split into two main groups: @{" Normal Commands " LINK cmd_norm} @{" MIDI Commands " LINK cmd_midi} Three points of note: 1) These topics serve as brief reminders of each player command. For full instructions, see Appendix A in the printed manual. 2) Please note the following abbreviations: Level 1 = 1st command level digit Level 2 = 2nd command level digit 3) Before you read the descriptions, make sure you understand ticks (see §8.1 in the printed manual) !! @ENDNODE @NODE cmd_norm "Normal Commands" 00: ARPEGGIO (changes the pitch of the note quickly) The pitch is changed between three different pitches (1 to 3) during each note. Level 1 contains the number of halfsteps between pitch 1 and pitch 2, level 2 the number of halfsteps between pitch 1 and pitch 3. 01 and 02: SLIDE PITCH UP and DOWN 03: PORTAMENTO (as 01 / 02 except doesn't replay the target note) 04: VIBRATO (level 1 = speed, level 2 = depth) 05: SLIDE PITCH AND FADE (combines 0300 and 0Dxx, level = fade speed) 06: VIBRATO AND FADE (combines 0400 and 0Dxx, level = fade speed) 07: TREMOLO ("volume vibrato", level 1 = speed, level 2 = depth) 08: HOLD AND DECAY (level 1 = decay value, level 2 = hold value) 09: SET TPL SLIDER (level must be $01 to $20) 0B: PLAYING SEQUENCE POSITION JUMP (level = playseq line no. - 1) 0C: SET VOLUME (00 to 64 = temp. volume, $80 to $C0 = default volume) 0D: VOLUME SLIDE (level 1 = volume increase, level 2 = volume decrease) 0E: SYNTH JUMP (triggers a jump in the waveform sequence The command level is the line number you wish to jump to. 0F: SET TEMPO SLIDER / MISCELLANEOUS (action depends on the command level) * 00: causes an immediate jump to the next playing sequence entry * 01 - F0: sets the Tempo slider * F1: makes a single note play twice * F2: delays the start of a note by half a line * F3: as F1 except the note is played three times * F4: delays the note one-third of a line. * F5: delays the note two-thirds of a line * F8: turns the low-pass filter off * F9: turns the low-pass filter on * FA: (MIDI only) sends a MIDI "hold pedal on" command * FB: (MIDI only) sends a MIDI "hold pedal off" command * FD: causes the pitch of the previous note to be set to the new note, but it's not replayed * FE: stops the song playing * FF: stops the note on the current track 11 and 12: SLIDE PITCH UP and DOWN ONCE 14: PROTRACKER-STYLE VIBRATO (depth levels are half command type 04's) 15: SET FINETUNE (use signed hex) 16: REPEAT LINES (LOOP) (Level 00 marks loop start, > 00 = no. of repeats) 18: CUT NOTE (Almost like hold - command type 08) 19: SAMPLE START OFFSET (level = starting byte ÷ 256) 1A and 1B: SLIDE VOLUME UP / DOWN ONCE 1D: JUMP TO NEXT PLAYING SEQUENCE ENTRY (Level = no. of first line) 1E: REPLAY LINE (Level = number of times to replay commands on curr. line) 1F: NOTE DELAY AND RETRIGGER (Level 1 = note delay, level 2 = retrigger) @ENDNODE @NODE cmd_midi "MIDI Commands" This section is a bit like an "erratum" for MIDI, in that it describes the changes to the above command descriptions required for MIDI use. Commands 0B, 0F, 16, 1D, 1E, and 1F all work identically with MIDI to Amiga instruments. Commands 15, 18, 19, 1A, and 1B have no effect with MIDI. If you are unfamiliar with any of the MIDI terms used in this section, please consult your MIDI device's manual. 05 and 00: CONTROLLER NUMBER and CONTROLLER VALUE (see printed manual) 01 and 02: PITCHBENDER UP / DOWN (level = pitchbender steps ÷ 8) 03 and 13: SET PITCHBENDER (use signed hex) 04: MODULATION WHEEL (level = $00 to $7F) 08: SET HOLD ONLY (level 1 is unused, level 2 = hold value) 0A: POLYPHONIC AFTERTOUCH (level = $00 to $7F) 0C: SET VOLUME (but the volume of a note can't be changed after playing) 0D: CHANNEL PRESSURE (level = $00 to $7F) 0E: PAN CONTROL (controls stereo location of note, level = $00 to $7F) 10: SEND MIDI MESSAGE (level = message number - 1) 17: SET VOLUME CONTROLLER (level = $00 to $7F) 1C: CHANGE MIDI PRESET (level = current instrument's new preset number) @ENDNODE @REMARK @REMARK KEYBOARD SHORTCUTS @REMARK @NODE KeybShorts "Keyboard Shortcuts" "Keyboard shortcuts" are combinations of keys used to carry out the equivalent of a mouse operation. Menu item shortcuts are displayed in the menu itself, as a strange-looking "A" and a letter. All menu shortcuts are accessed by holding down the Right Amiga key and pressing the appropriate key. The "A" symbol represents the Right Amiga key, and the letter represents the appropriate key. Shortcuts can also be attached to gadgets in windows. These shortcuts are accessed by holding down the Left Alt key and pressing the appropriate key. This time, the appropriate key is represented by an underlined letter in or beside the gadget that the shortcut acts on. This type of shortcut can only be accessed when the window or main screen containing the gadget is active. The effect of shortcuts on the various types of gadget in the user interface can be found in @{"Gadget Shortcuts" LINK key_gadgets}. Other shortcuts are not visually represented on the OctaMED screen, but have to be remembered by the user. A full list of shortcuts is provided in the following topics: @{" Menu Item Shortcuts " LINK key_menus} @{" Editing Shortcuts " LINK key_edit} @{" Cursor Movement Shortcuts " LINK key_cursmove} @{" Other Shortcuts " LINK key_others} @{" IMPORTANT NOTE FOR USERS OF NON-U.S. AND NON-BRITISH KEYBOARDS " LINK key_international} (You can edit and view keyboard shortcuts in the @{"Keyboard Shortcuts window" LINK win_keybshorts}) @ENDNODE @NODE key_menus "Menu Item Shortcuts" All keys listed have to be pressed with the Right Amiga key held. Note that you may only use these shortcuts when the main screen is active. A Open Input Map Editor window B Open Block Properties window C Copy track D Delete file E Note echo F Spread notes G Open MIDI Message Editor window H Open Song Options window I Load instrument(s) K Open Keyboard Options window L Open Sample List Editor window M MIDI Active on/off N New project O Open project P Open Print Options window Q Quit OctaMED R Open Relative Track Volumes window S Open Save Options window T Open Transpose window U Input Active on/off V Paste track W Open Mouse Options window X Cut track Y Open Programmable Keys window Z Swap track with copy buffer 1 Ext Sync on/off 2 Send Sync on/off 3 Send Active Sensing on/off 4 Send Out Input on/off 5 Read Key Up's on/off 6 Read Volume on/off \ Open Input Channel window [ Local Control on ] Local Control off . Command Shell ? About Other menu item shortcuts (excluding settings) are documented in the other @{"keyboard shortcut" LINK KeybShorts} topics. @ENDNODE @NODE key_gadgets "Gadget Shortcuts" This short topic describes the effects of "Left Alt" shortcuts on the two types of gadget that Left Alt shortcuts currently affect. (The Left Alt qualifier can be changed in @{"Miscellaneous Options" LINK win_miscopts}) Gadget Type | Effect on holding Left Alt ---------------------+------------------------------ Action button | Action executed | Check box | Box checked / unchecked | Text / Numeric box | Box activated | Cycle gadget | Cycles forwards } | (Shift-Alt cycles backwards) } Only available | } under Kickstart Slider | Increases value } 3.0 and higher | (Shift-Alt decreases value) } @ENDNODE @NODE key_edit "Editing Shortcuts" These shortcuts are used in editing with the Tracker editor. Esc Edit mode on/off Shift-Esc Chord mode on/off ~ Space mode on/off Del Delete note or command digit under cursor Shift-Del Delete note and command digits Alt-Del Delete only command digits Left Amiga-Del Delete chord. When L-Amiga is held down, every time you press Del the note under the cursor is deleted and the cursor moves to the next selected track. When L-Amiga is released, the cursor advances (as defined in the @{"Keyboard Options window" LINK win_keybopts 3}). Return or A Insert hold symbol (-|-) Shift-Return Insert hold symbols to all tracks of the previous chord. F Insert / play note at default pitch Backspace Delete note and move following notes up Shift-Backsp Insert empty note slot Alt-Backspace Delete current track Alt-Shift-Bksp Insert new track *NEW* Amiga-Backsp Delete line *NEW* Sh-Amiga-Bksp Insert line Shift- 0 - 9 Enter programmable key 0 - 9 Shift-Ctrl-0-9 Pick note under cursor as programmable key 0 - 9 Tab Highlight current line *NEW* Shift-Tab Cycle command pages Ctrl-O Create volume slide (using command 0C) Shift-Ctrl-O Create generic slide (using any command) Ctrl-T Create type 1 slide (using command 03) Shift-Ctrl-T Create type 2 slide (using commands 01 and 02) *NEW* Shift-Alt-Z Swap block Shift-Alt-X Cut block Shift-Alt-C Copy block Shift-Alt-V Paste block Ctrl-Z Erase range Ctrl-X Cut range Ctrl-C Copy range Ctrl-V Paste range Shift-Ctrl-V Paste to selected tracks Ctrl-B Range current track Shift-Ctrl-B Range current block Ctrl-J Join block with next Shift-Ctrl-J Split block at cursor Ctrl- < Swap note under cursor with following note, taking account of the current spacing value Ctrl- > Swap notes on adjacent tracks Ctrl-K Kill notes to end of track Shift-Ctrl-K Kill notes to end of block Alt-Ctrl-K Kill notes to end of block and actually remove the deleted part of the block. In other words, the current line becomes the last line of the block. @ENDNODE @NODE key_cursmove "Cursor Movement Shortcuts" These shortcuts allow cursor movement in the Tracker editor. The cursor keys move the cursor one place up/down/left/right. Alt- Cursor to previous track Alt- Cursor to next track Ctrl- Previous screenful of tracks Ctrl- Next screenful of tracks Shift-Ctrl- Cursor to track 0 Shift-Ctrl- Cursor to last track Shift- Previous block Shift- Next block Left Alt- First block Left Alt- Last block *NEW* Right Alt- Up *one* line, whether or not Space is on *NEW* Right Alt- Down *one* line, whether or not Space is on Ctrl-NK( Previous song (NK = numeric keypad) Ctrl-NK) Next song / Add song Shift-Ctrl-NK( Delete last song Shift-Ctrl-NK) Add song with no confirmation requester *NEW* Alt-Ctrl-NK( Delete current song *NEW* Alt-Ctrl-NK) Add and select song (no requester) F6 Cursor to first line of block F7 Cursor to second quarter of block F8 Cursor to middle of block F9 Cursor to last quarter of block F10 Cursor to last line of block Alt-Ctrl- Go to where sample previously appeared in the song. The sample number is taken from either the number under the cursor, or (if that is "--- 00000") from the current instrument number Alt-Ctrl- Go to where sample next appears in the song @ENDNODE @NODE key_others "Other Shortcuts" Shift-Alt-Space Play song [ Remember you may also use the Shift-Space Continue song Left Alt shortcuts underlined Amiga-Space Play block in the @{"playing buttons" LINK main_ctrl } ] Alt-Space Continue block Space bar Stop playing Ctrl-Space bar Reset MIDI presets / pitchbenders / mod. wheels Shift- Previous sample Shift- Next sample Alt-Shift- 16 samples backward Alt-Shift- 16 samples forward Shift-Ctrl- < Previous free sample slot Shift-Ctrl- > Next free sample slot F1 - F5 Select octaves 1+2 - 5+6 in normal mode, 3+4/2+3/1+2 - 7+8/8+9/9+A in MIDI mode (pressing F1 and F5 cycles through several octaves) Ctrl- - (minus) Decrease Tempo slider Ctrl- + (plus) Increase Tempo slider Shift-Ctrl- - Decrease TPL / LPB slider Shift-Ctrl- + Increase TPL / LPB slider Ctrl-I Insert new block Shift-Ctrl-I Insert new default block Ctrl-N Append new block Shift-Ctrl-N Append new default block *NEW* Alt-Ctrl-N Append and select new block *NEW* Shift-Alt-Ctrl-N Append and select new default block Ctrl-D Delete current block Shift-Ctrl-D Delete last block Ctrl-S Save IFF instrument Shift-Ctrl-S Save raw instrument Ctrl-G Flush current instrument Shift-Ctrl-G Flush all unused instruments Ctrl-A Automatic Advance Down on/off *NEW* Shift-Ctrl-A Automatic Advance Cursor Right on/off *NEW* Alt-Ctrl-A Automatic Advance To Next Track on/off *NEW* Ctrl-W Advance with sound on/off Ctrl-F Display free memory Alt-~ Set spacing value to length of current range - 1. For example, marking a range from 000 - 002 sets spacing to 2. It's logical to subtract 1 since with a spacing of 2, the cursor skips from line 000 to 002 which is 3 lines long). The following shortcuts apply to the numeric keypad. 1 - 9 Selects instruments 1 - 9 The . key Changes the first instrument digit (for example, from 05 to 15 or from 15 to 05) 0 Selects instrument 10 + Next instrument - Previous instrument ( Decrease volume of the current instrument by one ) Increase volume of the current instrument by one / Select last used instrument * Pick instrument number nearest the cursor Enter Activates "alpha-enter": after pressing Enter, press an alphabetical key (A - V) to select the corresponding instrument Ctrl-8 Scroll playing sequence up Ctrl-2 Scroll playing sequence down Ctrl-4 Decrease the current playing sequence entry Ctrl-6 Increase the current playing sequence entry Ctrl-7 Top of playing sequence Ctrl-1 Bottom of playing sequence Ctrl-5 Insert current block to playing sequence Ctrl-0 Duplicate current playing sequence entry Ctrl-. Delete current playing sequence entry * In numeric / text boxes: Shift- Move to beginning of box (also Ctrl-A) Shift- Move to end of box (also Ctrl-F) Amiga-Q Restore box's initial contents Ctrl-X Delete box's contents (also Amiga-X) Shift-Bksp Delete from cursor to beginning of box (also Ctrl-U) Shift-Del Delete from cursor to end of box (also Ctrl-K) Ctrl-W Delete current word In addition, the Tab key accepts the edited information (like Return) and activates the next text or numeric box in the window. Shift-Tab accepts and activates the previous box. Remember to press Tab, Shift-Tab or Return after editing a box's contents. @ENDNODE @NODE key_international "IMPORTANT NOTE FOR USERS OF NON-U.S. AND NON-BRITISH KEYBOARDS" The keyboard shortcuts used in these instructions correspond to the standard U.S. keymap (and, by coincidence, to the British keymap). Users of other keyboards, therefore, have slight changes to make to the keys given. They are: A = Q on a French keyboard Z = W on a French keyboard, and Y on a Swiss or German keyboard < and > are the two keys immediately to the right of M (except French, where they are the two keys to the right of ",") - and + are the two keys immediately to the right of 0 (zero) * Note that these changes DON'T apply to the Right Amiga menu shortcuts or Left Alt gadget shortcuts. For example, to open the Input Map Editor window using a French keyboard, hold down the Right Amiga key and press the key immediately to the right of the Tab key (A). @ENDNODE @REMARK @REMARK SPECIAL PURPOSE NODES @REMARK @NODE SpecPurpose "Special Purpose Topics" The following topics provide miscellaneous OctaMED information. @{" Installation " LINK install} @{" 5-8 Channel Mode " LINK 5-8chan} @{" Hexadecimal Values " LINK hex} @{" The File Requester " LINK filereq} @{" The Settings File " LINK settingsfile} @ENDNODE @NODE install "Installation" This topic describes which files OctaMED uses when starting up, for those wishing to properly install the program on a hard disk or a different floppy disk. OctaMED must be properly installed before it can be used. A script file named 'Install-OctaMED' is provided, which performs the installation automatically. You should read 'ReadMe.guide' first, and then simply click the Install-OctaMED icon to install OctaMED. (Be sure to have a blank disk and a standard Workbench disk available, unless installing onto a hard disk.) The only file that OctaMED actually requires to start up is version 37 or higher of either asl.library or reqtools.library, in either the current or the LIBS: directory. If the following other files are also installed, however, OctaMED will take advantage of them: File | Directories OctaMED searches | Purpose --------------------+------------------------------+----------------------- MED_paths | PROGDIR: | The @{"sample list" LINK win_slist} | | OctaMEDPro.config | PROGDIR: | Default @{"settings" LINK settingsfile} | | OctaMEDPro. | PROGDIR: | Default @{"programmable" LINK win_progkeys} defprogkeys | | @{" keys " LINK win_progkeys} | | OctaMEDPro. | PROGDIR: | Default @{"keyboard " LINK win_keybshorts} defkeyboard | | @{"shortcuts" LINK win_keybshorts} | | Player_8.code | PROGDIR: | For @{"save as executable" LINK win_saveopts 76} | | Player_midi.code | PROGDIR: | For @{"save as executable" LINK win_saveopts 76} | | Player_std.code | PROGDIR: | For @{"save as executable" LINK win_saveopts 76} | | Executable.info | PROGDIR:Icons | Exec. song icon file | | Module.info | PROGDIR:Icons | MMD0/1/2 icon file | | MIDI.info | PROGDIR:Icons | SMF0 song icon file | | Sample.info | PROGDIR:Icons | Sample icon file | | amigaguide.library | LIBS:, current | On-line help | | OctaMED.guide | S:, current | On-line help | | Help.guide | S:, current | AmigaGuide help | | iffparse.library | LIBS:, current | IFF sample handling | | powerpacker.library | LIBS:, current | PowerPacker crunching | | lh.library | LIBS:, current | SFCD compression | | xpkmaster.library | LIBS:, current | XPK compression | | diskfont.library | LIBS:, current | Use different font(s) | | rexxsyslib.library | LIBS:, current | ARexx support | | locale.library | LIBS:, current | Use different language | | printer.device, | DEVS: | Song printing parallel.device, | | a printer driver | | | | Port-Handler | L: | Song printing ==> Note! "PROGDIR:" is the directory containing the OctaMED program. There is no need to use an "Assign PROGDIR:" command before loading OctaMED! Also, you can change the directory containing OctaMED.guide using the "HelpFile" setting. For example, to store OctaMED.guide in the DH0:Music/OctaMED directory, add the following line to OctaMEDPro.config: HelpFile = DH0:Music/OctaMED/OctaMED.guide @ENDNODE @NODE 5-8chan "5-8 Channel Mode" 5-8 channel mode works by mixing two samples in real time and then outputting them through one sound channel. This takes up a lot of the processor's time, and the mixing process reduces the sound quality (causing distortion). You can reduce the distortion using High Quality Mode or, as a last resort!, using the audio filter (both selectable in the @{"Song Options" LINK win_songopts 35} window). The processor load that 5-8 channel playing causes, and some technical reasons set some limitations to playing in these modes: 1) Different @{"playing speed selection" LINK win_tempo}. Use the TPL slider as usual, but use Tempo values 1 - 10. 2) @{"Synthetic and hybrid sounds" LINK win_synthed} can't be used 3) All @{"equalizers" LINK menu_settings 27} are disabled 4) All @{"MIDI" LINK menu_midi}, @{"Aura" LINK win_aura} and @{"Toccata" LINK win_toccata} support is disabled 5) @{"Instrument default volume and Decay values" LINK win_instr 122} are ignored, as are the @{"relative track volumes" LINK win_trackvols} 6) Limited @{"sample loop length" LINK win_instr 37}, only in a minimum of 200-byte steps (when the Tempo slider is 1). Every time Tempo is increased by one, the loop length byte-steps increases by 20. So with a Tempo value of the maximum 10, the length is set in 400-byte steps. In addition to this, samples should be "halved". This means that each sample's volume should be half of its normal volume, so that they can be mixed with the minimum of distortion. The halving is done automatically when changing channel mode (answer "Halve" in the requester). The sound channels that play these mixed samples are called "paired channels". In 8 channel mode all channels are paired, but in 5 channel mode only one channel is paired, allowing better quality samples on tracks 1 - 3. You may use non-halved samples on non-paired channels, but attempting to use non-halved samples on paired channels when two notes are played simultaneously usually creates awful noise. The channel configuration in each of the channel modes is as follows: ( P: paired, N: non-paired, (L): left speaker, (R): right, -: unused ) Channels 0 1 2 3 4 5 6 7 +-------+-------+-------+-------+-------+-------+-------+-------+-------+ | 4 | N (R) | N (L) | N (L) | N (R) | - | - | - | - | | 5 | P (R) | N (L) | N (L) | N (R) | P (R) | - | - | - | | 6 | P (R) | P (L) | N (L) | N (R) | P (R) | P (L) | - | - | | 7 | P (R) | P (L) | P (L) | N (R) | P (R) | P (L) | P (L) | - | | 8 | P (R) | P (L) | P (L) | P (R) | P (R) | P (L) | P (L) | P (R) | +-------+-------+-------+-------+-------+-------+-------+-------+-------+ Note that 5-8 channel mode does NOT mean how many tracks there are. You must also select 5 - 8 tracks in the @{"Block Properties window" LINK win_blkprops 10} (although a requester will now automatically do this for you). For best results, you shouldn't use more channels than you need. If, for example, your song doesn't use more than six tracks at once, you should select 6 channel mode instead of 7 or 8 channel mode. This gives you two non-paired (i.e. high quality) tracks to play with. If you load additional samples while in 5-8 channel mode, OctaMED usually halves them automatically. However, if you'd like to load non-halved samples for use on non-paired channels, you can override automatic halving. To do so, *NEW* switch @{"Instr menu -> Halve Loaded Samples" LINK menu_instr 85} off. Volume limitations ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Because there are only 4 sound channels and 4 volume registers, paired channels must each share a volume register: tracks 0 and 4, 1 and 5, 2 and 6, and 3 and 7. This means that all volume-changing @{"player commands" LINK cmd_norm 12} (05, 06, 0C, 0D, 1A and 1B) affect two tracks. For example: Track: 0 1 2 3 4 000 C-1 30000 E-1 30000 G-1 30000 --- 00000 A#2 50C20 The 0C20 command on track 4 affects both tracks 4 and 0. Instrument default volume is ignored for this reason (it could cause a bit of havoc ;-). @ENDNODE @NODE hex "Hexadecimal Values" "Hexadecimal" (or "hex" for short) is basically just a different way of representing numbers. It is more convenient for the computer because of the way it works, and allows the user to specify a greater range of numbers using the same amount of digits. Hex values are used in the @{"MIDI message editor" LINK win_msged}, @{"player commands" LINK PlrCommands} and the and the @{"synth editor" LINK win_synthed}. So they're quite important in OctaMED (and also in general computing). In the usual decimal system, a digit can be ten different values: 0, 1, 2, 3, 4, 5, 6, 7, 8 and 9. In the hex system, however, a digit may have sixteen values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E and F. The decimal numbers 10 - 15 are represented by the letters A to F: Decimal 10 = A 11 = B 12 = C 13 = D 14 = E 15 = F With two digits in a number, the decimal system can represent 10 × 10 = 100 different values. The hex system, however, can represent 16 × 16 = 256 values: over twice the amount of the decimal system. (The lowest number is 00 = zero, and the highest number is FF = 255 decimal). Converting between the two systems ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ So although it feels strange to work in at first, it has its advantages. In a two digit hex number (e.g. 8A), the first digit represents multiples of 16. So, to convert a two-digit hex number to decimal: Decimal number = (Hex digit 1) × 16 + (hex digit 2) And to convert decimal to hex, divide the decimal number by 16. The quotient is hex digit 1, the remainder is hex digit 2. For example: Hex 8A -> decimal: Hex digit 1 = 8, hex digit 2 = A (10). Decimal number = (8 × 16) + 10 = * 106 *. Decimal 200 -> hex: 200 ÷ 16 = 12 remainder 8. Hex digit 1 = C (12), hex digit 2 = 8. So hex number = * C8 *. Hex numbers are sometimes distinguished from decimal numbers by preceding hex with a "$" sign. For example: $C8, $FF. Signed hexadecimal ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ There is a further complication! Luckily in OctaMED you'll only need to use this in two player commands: @{"MIDI commands 03 and 13" LINK cmd_midi 13} (set pitchbender) and @{"command 15" LINK cmd_norm 67} (set finetune). The "sign" of a number denotes whether the number is positive or negative: that is, the "+" and "-" signs. In hexadecimal, however, there are no "-" signs. So, negative numbers are represented by positive numbers (it will become clearer!). In signed hex, the numbers $00 - $7F are positive as usual: they represent the decimal numbers 0 - 127. However, the numbers $80 - $FF represent the decimal values -1 to -128: Decimal -1 = $FF -2 = $FE -3 = $FD -4 = $FC etc. -16 = $F0 -17 = $EF -18 = $EE etc. -126 = $82 -127 = $81 -128 = $80 So to convert negative decimal numbers to signed hex numbers, first add 256 to the number, then convert to hex as above. For example: Decimal -67 -> signed hex: -67 + 256 = 189. 189 ÷ 16 = 11 remainder 13. Hex digit 1 = 11 (B), hex digit 2 = 13 (C) So signed hex number = * $BC *. Hex numbers will crop up in many areas of computing, so if you've never worked with them before, it's a good idea to get used to them! @ENDNODE @NODE filereq "The File Requester" The file requester is used to handle and select files. OctaMED supports the system-standard ASL file requester (please refer to your Amiga's manual for information). You may also use, ON A COPY, file requesters that automatically replace the ASL file requester: the Magic File Requester for example. *NEW* OctaMED now also supports the ReqTools file requester. You must have reqtools.library in either the current directory or LIBS:. Select @{"Misc Options -> Use Reqtools" LINK win_miscopts 36} to use it. OctaMED has two special features in all operations involving saving. Firstly, an "Overwrite?" requester appears if the file OctaMED is trying to save has the same name as another file in the directory. Secondly, you can't double-click on a filename like you can when loading: you need to use the "Ok" gadget instead. These two features go some way to prevent accidental file deletion. @ENDNODE @NODE settingsfile "The Settings File" The settings file is saved by choosing @{"Settings menu -> Save Settings" LINK menu_settings 65}. The following options are saved (values in brackets are default): 1. @{"Instr menu" LINK menu_instr}: - Automatic Flush (OFF) - Add Path (OFF) - Remove Path (OFF) 2. Note killing options in the @{"MIDI menu" LINK menu_midi} 3. @{"Settings menu" LINK menu_settings}: *NEW* - Play After Loading (OFF) - Auto-Freeze Screen (OFF) *NEW* - Auto-Snapshot (ON) 4. @{"Save Options window" LINK win_saveopts}: - Save Secondary Data (ON) - Create Icons (ON) *NEW* - PowerPacker Settings: Buffer (MEDIUM), Efficency (GOOD) *NEW* - The XPK compressor used (THE FIRST ONE DISPLAYED IN XPK SETTINGS) 5. The @{"Save Timer" LINK win_savetimer} value (0), and *NEW* Open Save Window (ON) 6. @{"Tempo window" LINK win_tempo}: Slow HQ (OFF) 7. @{"Tempo Operations" LINK win_tempoopts}: *NEW* - Change Commands (OFF) *NEW* - Set Current Tempo as Default: TEMPO / TPL / LPB / SPD or BPM ( 33 6 8 SPD ) 8. @{"Sample Editor" LINK win_smped}: - Check Clip (OFF) and *NEW* Max Clip (0%) (@{"Change Volume window" LINK win_chgvol}) - Pitch period (428) *NEW* - Pitch In Hz (OFF) - Sampler Voice Monitor (OFF) *NEW* - Create Icons For Samples (ON) - Pixel display (OFF) - Pixel Density (2) *NEW* - Minimum Zoom (1) *NEW* - Fast Graphics (ON) *NEW* - Center Zoom Slide on Range (OFF) 9. *NEW* The "Level Display Active" gadget in the @{"Toccata Capture window" LINK win_toccata} 10. The "Auto-Terminate Capture" gadget in the @{"MIDI message editor" LINK win_msged} (ON) 11. The "Follow" gadget in the @{"Playing Sequence window" LINK win_playseq} (OFF) 12. *NEW* The "Show Unused" gadget in the @{"Block List window" LINK win_blklist} 13. @{"Mouse Options window" LINK win_mouseopts}: - Left Button (SELECT RANGE) - Middle Button (NO OPERATION) - Right Button (NO OPERATION) 14. @{"Keyboard Options window" LINK win_keybopts}: - Advance Line (DOWN) - Advance Track (DON'T ADVANCE) - Advance Cursor (DON'T ADVANCE) - Space Value (2) - Chord Reset (ON) - Advance with sound (OFF) *NEW* - Poly Play (OFF) - Destructive Spacing (ON) - Auto-Round Spacing (ON) *NEW* - F6-F10 = Highlights 15. @{"Palette window" LINK win_palette}: - Palette Type (8-Bit) 16. @{"Miscellaneous Options window" LINK win_miscopts}: *NEW* - Close Workbench (OFF) *NEW* - Overwrite Requesters (ON) *NEW* - Warn if Disk Full (OFF) *NEW* - Size-Only Window Zoom (ON) *NEW* - Use Reqtools (OFF) *NEW* - Load Instr from MainCtrl (ON) - H -> B (ON) *NEW* - Default Volume Mode (DECIMAL) *NEW* - Gadget Shortcut Qual (LEFT ALT) *NEW* - Default HQ Mode (OFF) *NEW* - Default Slow HQ (OFF) *NEW* - Help Viewer (AMIGAGUIDE) 17. @{"Aura Sampler Options window" LINK win_aura}: *NEW* - Minimum Period (248) - Active (OFF) - Single Channel Output (OFF) *NEW* - Fixed Output Rate (OFF) Three additional settings are saved: (*NEW* except for 'a') a) The current window positions (both zoomed and unzoomed) if you have moved them from their usual positions. b) Any windows that are open when settings are saved. They will be re-opened when the program is re-loaded. c) @{"Fonts" LINK win_font}, @{"screen mode" LINK menu_settings 13} and @{"color palette" LINK win_palette}. These are NOT saved, however, if they have been set to default (Default check boxes for fonts, Like WB switch for screen mode, and WB Palette check box for color palette). The default settings file name is "PROGDIR:OctaMEDPro.config". (PROGDIR: is the directory in which the OctaMED program resides). @ENDNODE