Scheduler Files
===============

A schedule file has this format. Although it's intended to be edited textually,
care should be taken not to break the format rules.

The first line should contain the title for whole file, eg

I: Title for this piece

	The space after the colon is mandatory. The string may be up to 60
	characters long (internally it's rather higher, but 60 is about the
	maximum which will fit in the title field in the window.

This is followed by zero or more track headers, of the following format

T: track name

	This is a textual name, with the same rules as I: but a practical
	maxmimum of around 40 characters.
	
S: <type> <integer> <integer> <string or empty>

	This is the stimulus which makes the track record an event at the
	current timecode (providing the track is in Armed state).	
	
	The following <type> values are supported currently:
	
	0	Safe. 
		Other parameters not used.
		This may be used to guard a track from changes.
		
	1	WimpMessage.
		Parameter 1: wimp message number (decimal)
		Parameter 2: content of word at +20 in poll block, or
				0 to match anything
		Parameter 3: null
		
	2	Keyboard
		Parameter 1: internal key number (see PRM 1-849)
		Parameter 2: 0
		Parameter 3: null
		
E: <type> <integer> <integer> <string or empty>

	This is the event that occurs when a track in Play state reaches
	a timecode at which its stimulus occurred.
	
	The following <type> values are currently defined. Not all have been
	implemented in this alpha version.		
	
	0	MIDI
	
		Not implemented in this release
		
	1	Meridian
	
		Not implemented in this release
		
	2	Infrared
	
		Not implemented in this release
		
	3	Wimptask
	
		Parameter 1: 0
		Parameter 2: 0
		Parameter 3: Full filename for task to start
		
	4	OSCLI
	
		Parameter 1: 0
		Parameter 2: 0
		Parameter 3: Command to pass to OSCLI
		
	5	Script
	
		Not implemented in this release
		
	6	SWI
	
		Parameter 1: SWI number
		Parameter 2: R0 value
		Parameter 3: other register values, in order
		
		Format: R1=0 R2=65 ... R7=1
		
	7	WimpMessage
	
		Parameter 1: Message number
		Parameter 2: Content of word at block + 20
		Parameter 3: String to place at block + 24
		
	8	Keyboard
	
		Parameter 1: 0
		Parameter 2: 0
		Parameter 3: String to GSTrans and type as keyboard input
	
	9	TypeString
	
		As 8, except characters are released one per trigger
		
	10	TypeFile
	
		Parameter 1: 0
		Parameter 2: 0
		Parameter 3: full filename
		
		One character from the file is released per trigger
		
	11	TypeFileLine
	
		As 10, except a line is released per trigger
			

        12      Pollword
        
                parameter 1: message number
                
                a wimp message is sent with the pollword address at +20
		
M: <state>

	This is the initial state of the track - it may be Armed, Play
	or Off; all case significant.
	
This is followed by zero or more track events:

V: <timecode>

	This is the timecode for a trigger on this track, in hh:mm:ss:ff,
	eg 01:02:03:04
	
	The scheduler works in 25fps, thus the maximum value in all fields
	would be: 23:59:59:24
	
This is followed by the end of the file, or another track block.
		