The TFX music editor Version 2.97 User's Guide - Quick Reference

Copyright 1995-2003 Unreal


Table of Contents

Global Keys
Track editor Keys
Sector Editor Keys
General Keys
Commands
Instrument Editor
General Keys
Table Editor Keys

Global Keys

These are the keys that you can use in any window or menu. (Note: where [Shift] is listed, it is only required when you are NOT in MIDI mode, and when you are in midi mode, shift is required for all other commands :)

keyDescription
F1 Play the current song from the start
F3 Stop playing of the current song
F5 If nothing has changed in the song since it was stopped, continue from the current position, otherwise start playing from the song. (Note that loading and saving will also cause this command to restart the song)
F7 Fast Forward (Only active while the key is held)
Control Open up the main menu if it's not already open, otherwise cancel whichever window is open.
run/stop

Toggle between Edit and Play modes (This can be over ridden by holding shift with a key - i.e. if you're in edit only mode, holding shift will play whichever note you are holding, and vice versa for when you are in play only mode).

In play mode, no matter where you are in the editor, the note that you pressed will be played with the currently selected instrument. In edit mode, things will behave as you would expect them to.

Note that Play mode is refered to interchangibly as "Midi Mode".

[Shift] + - Increase/Decrease working Octave
[Shift] : ; Increase/Decrease working Instrument
a-z,@*^^:;=,./1-0.L Plays the relevant note or instrument (see below)
[Shift] a-f 0-9 Writes number onto cursor position
F2,F4,F6,F8 Slows down playing 1,2,4,8x (You can hold down multiple keys at once to get differnt values... i.e. F2 and F6 for 5x (1+4)
Commodore+Restore Reinitialize the Editor (Lifesaver! :)
cursor keys Do the obvious thing ;)
[Shift] ,. Page up/down
clr Clears the contents of the current window
home moves the cursor to the top of the current window
insert/delete insert/delete line (if there is anything to delete or space to insert ;)

Track editor Keys

KeyCommandDescription
[Shift] Return Enter the selected sector.
Commodore m Select the subsong to edit (press 1-5 after pressing c= m)
Commodore s Save the current cursor position (1-5)
Commodore g Recalk saved cursor position (1-5).
Commodore x eXchange the current track with another (1-3)
Commodore @ Copy the contents of the current position to the clipboard.
Commodore * Paste the clipboard at the current position.
<- Play in trace mode from the start of the song.
Commodore <- Play in tract mode from the current position.
[Shift] <- Start tracing the currently playing song
Return Go down to the next line
Commodore + TRANSPOSE +$xx Transpose sounds down X semitones
Commodore - TRANSPOSE -$xx Transpose sounds up X semitones.
Commodore e END Stop playing the song.
Commodore l LOOP line Loop back to given line

Sector Editor Keys

General Keys

KeyFunction
=Toggle Symbolic/Numeric view of variables
Commodore , . Go to the next/previous sector
[Shift] n m Transpose notes from cursor to END up/down one semitone
[Shift] v Toggles "Voice Mode" (wether notes are played as you enter them or note)
<- Play the current sector in trace mode. Hit any key to stop playing, or the <- key to just switch off trace mode, but keep playing.
[Shift] <- Play current sector in loop mode without tracing
Commodore <- Play current sector from this line.
[Shift] Commodore <- Start tracing the currently playing sector
Commodore (up arrow) Copy from current position to clipboard (Doesn't copy the commands of the first note, but copies everything else until the end of the sector)
Commodore * Paste at the current position
Commodore 1 Instrument Mode #1 (Discussed later)
Commodore 2 Instrument Mode #2 (Discussed later)
Commodore 3 Instrument Mode #3 (Discussed later)

Commands

KeyFunctionDescription
Commodore - --- Pause for one note/row (aka Empty Row, if you're using this like a track based editor :)
Commodore + END End this sector.
Commodore (up arrow) GATE Gate Off/Note Off
Commodore a AD $00-$FE Set the Attack/Decay for the *current* playing note.
Commodore s SR $00-$FE Set the Sustain/Release for the *current* playing note.
Commodore q ADN $00-$FE Set the Attack/Decay for the *next* note played.
Commodore w SRN $00-$FE Set the Sustain/Release for the *next* note played.
Commodore x SWITCH Toggle restarting the tables on a new note trigger. If switch is set, only the frequency of the notes will be changed when a new note is triggered.
Commodore d DUR $00-$3F Set the current Duration value (ticks per line)
Commodore g GLIDE $00-$FE Glide from this note to the note on the next line.
Commodore h SLIDE $00-$FE Slide from the current playing note to this note.
Commodore v VOL $0-$F Set the volume (actully sustain level ;) of this note.
Commodore b FVOL $0-$F Set the global volume
Commodore 7 SETFF $00-$FE Set the filter frequency.
Commodore 8 SETFT $00-$FE Set the filter type.
Commodore p SETPF $00-$FE Set the pulse width
Commodore y A GATE $00-$FE Set the auto-gate timeout to X frames (not as simple as it sounds, see notes below)
Commodore j FADE+ $0-$F Fade the global volume from 0 to X
Commodore k FADE- $0-$F Fade the global volume from X to 0
Commodore 1-6 SETVAR1-6 $0-$FE Set table variable n
Commodore c CTRL $00-$FE Set control bits override (the control byte will be Or'd with this value)
Commodore r RLEN $00-$FE Set the length of hard restart for this channel (in frames)
Commodore t SPED $00-$FE Set the global speed
Commodore i VSPD $00-$FE Set the vibrato speed
Commodore o VDEP $00-$FE Set the vibrato depth
Commodore n NOPL Toggle 'no pulse reset' mode
Commodore f NOFL Toggle 'no filter reset' mode

Instrument Editor

General Keys

KeyDescription
[Shift] Return Switch between Table / Instrument editor
Return Go back to the place from whence you came ;)
Commodore p Save current instrument
Commodore l Save all instruments
Commodore o Load instrument into the current position (it's tables are rather handily merged into the current song :)
Commodore k Load all instruments
Commodore f Find next set of empty positions in the tables, and sets the current instrument to use them.

Table Editor Keys

KeyTableCommandDescription
Commodore a wave SPD Set the speed at which the wave table is executed
Commodore c wave RHL Set the wave table to relative low freqency mode
Commodore x wave RHI Set the wave table to relative Hi Frequency mode
Commodore c wave RHL Set the wave table to relative low freqency mode
Commodore w wave

SHI
$xx

Set the high byte of the sid frequency register to X
Commodore e wave

SHL
$xy

Set the high byte of the sid frequency register to $0x and the low byte to $y0
Commodore r wave

AD
$xx

Set the attack/decay register to X
Commodore t wave

SR
$xx

Set the sustain/release register to X
Commodore n wave NRM Set the wave table to use "normal" mode (i.e. transpose, like every other editor :)
Commodore j wave, pulse, filter

JMP
$xx

Jump to position X
Commodore g wave, pulse, filter

JWG
$xx

Jump to position X *if* the note is currently held
Commodore q pulse, filter

SPL
$xx

Jump opposite pulse/filter split program to position X
Commodore d wave, pulse, filter

DEL
$xx

Delay for X frames
Commodore h wave, pulse, filterHRD Enter 'Hard Note Mode' - Each number represents a physical note, with $30 as middle C ($31=C#, $32=D, etc)
Commodore u wave, pulse, filter

USE
$xx

Use variable X (Note: actually variable X+1, to save raster time - so 'use 0' will use varable #1, 'use 1' will use variable #2, etc)
Commodore a pulse, filter

ADD
$xx
$yy

Add X to the current value until it reaches Y (Note: for pulse, this matches $yy0... for example, if your pulse table adds an odd number, it may not reach $yy0, but, say $yy1, and then the add will loop infinitly! Be careful :)
Commodore b pulse, filter

SUB
$xx
$yy

Subtract X from the current value until it reaches Y (Warning for ADD applies here, too :)
Commodore s filter

SET
$xx
$yy

Set the filter parameters (first parameter is type/ resonance, second is cutoff freq)
 pulse

SET
$xx

Set the pulse width to $xx0