Primary commands used
012345678 ?*.!$@()Esc" BDFGHLQRTUV  bgnstw    
' 'space and ','comma ignored, except [,] after digits to indicate end of number  

Map origin is 0,0 at bottom left corner
Heading presumes MM3 starts at 0,0 at Bearing 0deg, ie mapHeading 90deg heading along Y axis
mapHeading +ve is anticlockwise (mathematical)
Bearing    +ve is clockwise (as a compass)


COMMANDS
========
[Q],[Esc] - stop all
[.] - stop, quit current operation - recording, playing, input
["] - start/end of a comment, processed in GetCcmnd()
[(] - start of Do, Acts within a Do will be treated as subroutines, Do nestable to 15 levels
[)] - end of Do
[0] - use page0 for the next cmnd or Act, Acts [0][1] - [0][8]
      page 1 is the default
[1-8] Play act, or the Act to record, copy, load etc
[!] - use ReActs page, ReActs [!][1] - [!][8]
[F]digits[,] - Forwards   - if no digits then default move
[B]digits[,] - Backwards  - if no digits then default move
[R]digits[,] - turn Right - if no digits then default turn
[L]digits[,] - turn Left  - if no digits then default turn
   digits should be terminated with [,] or [ ] or other non digit character except [Q] and [.]
   digits may be preceded by a minus sign to reverse direction so F-100, is B100,
[G]digitsX[,]digitsY[,] - goto X,Y
[H] - goto 'home'
[D] - Pen down
[U] - Pen up
[h][1] - horn on
[h][0] - horn off
[i][r] - indicator right LED on
[i][l] - indicator left LED on
[i][1] - indicator right LED on
[i][2] - indicator left LED on
[i][3] - both indicator LEDs on
[i][0] - indicators off
[w][1-9,0] - wait seconds, 0=10
[n][1-9,0] - nap tenths second, 0=10

Curve
-----
[C][f][l] - curve forwards left
[C][f][r] - curve forwards right
[C][b][l] - curve backwards left
[C][b][r] - curve backwards right

Speed
-----

Sensors
-------

Skill
-----
Move
[m][m] - move Memory - move same way as last time
   [o] - move Other - move other way from last time
[m][+]digitsX[,]digitsY[,] - goto X,Y offset from current position
   
Turn
[t][h]digits[,] - turn to map heading"));
   [m] - Turn Memory - turn same way as last time, same amount as last turn
   [o] - Turn Other - turn other way from last time, same amount as last move
   [C]digits[,] - turn to Compass heading"));
      
[H] - goto 'home'
[g][H] - goto 'home'
[g][0-9] - goto numbered place

Mind
----
[@][h] - set current location as new 'home'
   [0-9] - set place (0 - 9) to current location
[?][m] - print Mind
[?][p] - print places

Behaviour
---------
[b][0] - Restore default behaviour
   [S] - Save behaviour as default
   [a][1-8] - Act to autorun on power on
      [0] - no autorun
      [d] - if Playing ends, run autorun Act
   [m]digits[,] - default move steps
   [t]digits[,] - default turn steps
   [s]digits[,] - stepescale, actual steps for 100mm
   [r]digits[,] - rotatescale, actual steps for 360 degrees
   [k][0,1] - 1 keypad present
   [v] - verbose printing
   [q] - quiet printing, verbose off

System
------
[*][r][0 1-8] - record act, 0 use page0
   [l][0 1-8] - load act, 0 use page0
   [c][0 1-8][0 1-8] - copy act to act, 0 use page0
["] - start/end of a comment, processed in GetCcmnd()

Print
-----
[?][?] - prints all acts
   [a] - prints all acts
   [0] - prints acts 0, and changes [?][?] to just print current page
   [1-8] - print Act in current page
   [!] - print ReActs - no sensors to react to
   [b] - print behaviour
   [m] - print Mind
   [d] - dump all acts to PC without descriptions, for reloading
   [p] - places
   [h] - print help
   [E] - print EEPROM use
   [f] - print free RAM

Notes
-----
[(] - will show its location in EEPRO< when played eg (=263
[)] - will show its location in EEPRO< when played eg )=285
If a call to another Act is made from within a Do then the location to return to will be shown, eg (267)
Acts by default are stored in page 1, 0 changes to page 0 for the next command only.
Page 0 ia the first 256 bytes of EEPROM, Page 1 is EEPROM bytes 256-511, ReActs is the next 256 bytes, 
negative numbers allowed for F,B,R,L - so F-20 does B20
=============================================================
TVR010_PicAxe_IR_controller:
'---------------------------
'Before use, the transmitter must be programmed with the ‘Sony’ transmit code.
'1. Insert 2 AAA size batteries, preferably alkaline.
'2. Press [S] and [B] at the same time. [S] is in the centre of the arrows.
'  The top left red LED should light.
'3. Press [0]. The LED should flash.
'4. Press [1]. The LED should flash.
'5. Press [3]. The LED should go out.
'6. Press the red power button (top right).
'-------------------------------------------
'IRin cmnds using PicAxe controller
'DO NOT PRESS OTHER KEYS
'ie [A] [B] [C] [D] [E] [F] [G]
'They change the Mode and [B] has to be pressed to change back.
'[square] [triangle] [()] [L] [X] [backwards F]  have no effect
=============================================================
