Version 1.9   7297 bytes
1. Fixed a dangerous bug - forward relative jumps of (128-255) were
   being allowed and actually coded as 0x80 to 0xFF, which worked
   out to be backward jumps - symtab.s


Version 1.8   7295 bytes
1. Stole a few bytes by defining the extensions as words in ax before 
   storing them

Version 1.7
1. Added the binary operator !, which takes two byte constants and
   makes them into a word
2. Fixed bugs with the ! operator (lower byte duplicated)
3. Fixed bugs with non-error reporting of backword jumps of more
   than 128 bytes. (Misplaced label on too large operand)


Version 1.6
1. Added a variable SavedStackPointer that keeps track of the stack
   for each assemble file. Filled in Assemble in asm.s. Also in
   direct.s, it is pushed and popped for include files to keep
   stack consistency.
2. Added some error recovery - only one type - resync at end of line
   Stack Pointer is restored to where it was. List file may contain
   junk. Don't know as yet. Still aborts on severe errors. The undefined
   error messsage in symtab.s had to be treated specially. Output file
   is still generated.
3. Fixed the include error message. Instead of showing the name of 
   the included file in the error message, It shows the name of the file
   in which the failed include statement occured. Fixes to direct.s and
   reorganization to OpenInputFile in asm.s
4. Added a never defined flag so that the assembler can continue with
   assembly even if a symbol is not defined. Set in symtab.s
6. Added the not operator to the expression evaluation section - expr.s
   For a new operator the procedure is
   a. add the operator in IsOperator  in the right place
   b. if the operator is unary, add it in the IsUnaryOperator too.
   c. add the code to evaluate it in Evaluate expression
7. Allows byte sized values to have 0 or ff as higher byte - 
   to accomodate the unary not, else !0x80 was not allowed as a byte
   operand. Changes to support.s
	
Version 1.5
1. Modified symtab.s to add a function RecordXref that puts the
   index of symbol, filename and line no into the list file
2. Modified expr.s so that it calls RecordXref in the middle of
   processing an expression - only for real variables - not
   constants or fakes.
3. Modified lister to report number of references to each variable
   and to list the references symbolwise
4. Removed redundant code in asm primarily Is8bitregister and
   Is16bitRegister in support.s
5. Removed redundant equates and Messages - size mismatch

Version 1.4
1. Instead of printing the symbol table onto the screen it puts
   the symbol table onto the list file.
2. The list file has the symbol table proper and the string table
3. To make data structures common to the assembler and the lister
   and to prevent duplication of work, two include files have been
   created. dos.i with the equates for DOS functions and symtab.i
   with the structures for the symbol table.
4. The message displaying functions have been separated out to
   another file called display.s.
5. The functions in display.s (except for PutCarriageReturn and 
   DisplayRegister) now keep track of the number of characters that
   have been displayed.
6. The symbol table being dumped on the screen is disabled, only
   the .lst file is created. ListSymbols from symtab.s was deleted.
   and the call from asm.s
7. A separate program lister was added which prints out the symbol
   table from the .lst file
8. display.s was putting out a LF and a CR in that order, which was
   confusing editors - e.g. MKS  vi.


Version 1.3
1. The filenames are directly put into the string space instead of
   present filename
   a. One variable presentfilename is removed - save space
   b. Changes to asm.s and direct.s (for includes)
2. The print stats function was removed
3. The output filename is accessible throughout the programs execution
4. The output file is deleted if an error in assembly is detected.
5. Can handle infinite (Promises!) path length one error message
   removed - path too long. message.s
6. Opens List file too. The list file name is on the string table too.
   added two variables - ListFileHandle and ListFileNameOffset
7. Doesn't print the name of the file that it is assembling any longer.
   or the names of the output files.
8. Doesn't display assembly successful at the end either. - silent on
   success.

Version 1.2
1. Accepts char constants - in single quotes, wherever
   constants are allowed.
2. Accepts hex constants - prefixed by 0x, with overflow checking.
3. Accepts negative byte constants  - complained earlier.



