		  Some of what's new in !ZapBASIC 1.33
		  ====================================

a) Lots of new colours for BASIC mode :

   Comments
     All comments following REMs will be coloured this colour. This also
     applies to text following ";" in assembler up to the next ":".
     Eg: REM > SillyProgram
	 Will colour the > and anything following it

   Strings
     Strings surrounded by "'s will be coloured in this colour
     Eg: a$="hello"
	 Will colour the "hello" string

   Tokenised
     Any BASIC tokens will be coloured in this colour.
     Eg: scan$=FNstring0(ptr)
	 Will colour the token FN

   x in PROCx
     The names of any PROCs and FNs will be coloured in this colour.
     These are coloured both in calls and in any definitions.
     Eg: in PROCquit or DEFPROCquit the 'quit' wil be coloured.

   PROC/FN
     The PROC and FN keywords will be given this colour.  They won't
     be coloured if they are part of a definition, though.
     Eg: PROCpoll(%0)
	 Will colour PROCpoll.

   DEF/END
     The DEFPROC, ENDPROC and DEFFN constructs (and also STOP and END)
     will be given this colour.
     Eg: DEFPROCpoll(mask%)
	 Will colour the DEFPROC.

   FOR/NEXT
     The FOR, NEXT, REPEAT, UNTIL, WHILE and ENDWHILE keywords will be given
     this colour.
     Eg: FOR T%=0TO10:NEXT
	 Will colour the FOR and NEXT keywords.

   IF/THEN
     The IF, THEN, ELSE and ENDIF keywords will be given this colour.
     Eg: IF Q% THEN QUIT ELSE UNTIL FALSE
	 Will colour IF and THEN.

   CASE/WHEN
     The CASE, WHEN, OF, OTHERWISE and ENDCASE keywords will be given this
     colour.
     Eg: CASE A% OF
	 Will colour CASE and OF

   DATA
     Data statement values will be coloured this colour (DATA itself is
     coloured as tokenised).
     Eg: DATA infobox%,">HInfobox",12
	 Will colour inforbox% and 12.  The ","s and the ">HInfobox" are
	 coloured as is normally appropriate.

   HexNumbers
     Any hex number will be given this colour.
     Eg: PRINT &745674
	 Will colour &745674

   Numbers
     Any numbers other than hex numbers will be given this colour (including
     binary sequences).
     Eg: PRINT 456
	 Will colour 456

   ( and )
     These brackets will be given this colour. These are mostly used for sums
     and arguments.
     Eg: Appdir$=FNsystemvar(Appname$+"$Dir$")
	 Will colour ( and )

   { and }
     These brackets will be given this colour. These are mostly used for
     lists of registers in assembler.
     Eg: STMFD	 (sp)!,{r0-r5,link}		; Stack registers
	 Will colour { and }

   [ and ]
     These brackets will be given this colour. These are mostly used for
     arrays and offsets in LDR and STR assembler statements.
     Eg: LDR	 r2,[sp,#4*2]			; re-read register 2
	 Will colour [ and ]

   :;,
     These special symbols will be given this colour. The ; colour is only
     used in PRINT, INPUT and BPUT statements.
     Eg: BPUT#o%,"Program:"+Appname$;
	 Will colour the ;

   +-*/=<>
     These arithmetic and comparison operators will be given this colour.
     = in assignment is also coloured this colour.
     Eg: IF testing%=TRUE THEN*Spool
	 Will colour the =

   !?#^
     The memory operators will be given this colour.  The writeback operator
     in assembler is also affected, as are the number and power operator.
     # is also used in file IO (BGET,BPUT,etc) and in assembler (MOV, LDMxx,
     etc).
     Eg: IF start%?ptr%=ASC(":") THEN
	 Will colour the ?
     Eg: BPUT#o%,"Program:"+Appname$
	 Will colour the #

   *Commands
     Commands prefixed by * will be given this colour. This does not apply to
     * commands executed by using OSCLI which will be coloured using the
     string colour.
     Eg: *Dir Clippings:#.Graphics.JPEGs.pics.1.abm.jpeg
	 Will colour the entire line from * through to to jpeg.

   Labels
     Any assembler labels will be given this colour (just the definition).
     Eg: .pollcode
	 Will colour the dot and the variable
   Assembler
     Any assembler instructions will be given this colour.
     Eg: MOV   r0,#0
	 Will colour the MOV instruction

   Directives
     Any assembler directives will be given this colour.  These include the
     DCx, EQUx and ALIGN instructions.  When used as directives & and =
     are also given this colour, as are the '='s used to return from
     function calls.
     Eg: EQUS  "Hello"
	 Will colour EQUS

   Registers
     Registers will be given this colour. Register names recognised include
     r0-r15, sp and pc.
     Eg: MOV   r1,#5
	 Will colour r1

   Shifts
     Any assembler shifts (eg LSL, ROR, etc) will be given this colour.
     Eg: MOV   r0,r2,LSL #2
	 Will colour LSL

   Branches
     Assembler branches will be given this colour (B, BL).
     Eg: BL    pollcode
	 Will colour BL

   LDM/STM
     Multiple register operations (stack/array) will be given this colour.
     Eg: STMFD	 (sp)!,{r0-r5,link}		; Stack registers
	 Will colour STMFD

   LDR/STR
     Single register memory operations (LDR, STR) will be given this colour.
     Eg: LDR	 r0,[r5,#8]
	 Will colour LDR

b) Buttons window :
    -> 10,20	   Renumbers the current program
    List Defs	   Lists the procedures and functions defined in the program
    Save Run	   Saves the program and runs it
    Run		   Runs the program directly from memory, leaving you at
		   the prompt when it exits
    Run and quit   Runs the program and returns to the desktop on exit
    Drop into...   Downloads the program into BASIC and leaves you at the
		   prompt
    < and >	   Indent and outdent the selected region.
    XREM and REM   Remove a level of comments from the surrently selected 
		   region / comment out the section with REMarks,
		   respectively.
    Check	   Performs simple syntactical checks, generating throwback.

c) Menu options :
    Window wrap	   Makes the listing reformat to the current window size.
    Buttons	   Enables the buttons window
      Fleeting	   Makes the buttons window vanish if you move the focus
      Top	   Locks the window to the top of the zap window
      Left	   Locks the window to the left of the zap window
    Drop into...   Downloads the program into BASIC and leaves you at the
		   prompt
    Run		   Runs the program directly from memory, leaving you at
		   the prompt when it exits
    Run and quit   Runs the program and returns to the desktop on exit
    Save and Run   Saves the program, then runs it, leaving you at the
		   prompt when it exits
    Save, Run...   Does all three - saves, runs it and then returns to
		   the desktop (this is the most common one to use)
    List of DEF's  Lists all the functions, like the button
    Check	   Performs simple syntactical checks, generating throwback.
    Bracket...	   Allows the brackets to be matched as in the old C mode
    Don't... code  Stops assembler being coloured
    Don't... APCS  Stops APCS registers being coloured in assembler code
    Allow long     Allow BASIC lines to exceed the 255 character limit.

Thanks are due to Justin Fletcher who helpfully supplied this summary.
