home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 5 / DATAFILE_PDCD5.iso / utilities / a / armbob / doc / History next >
Text File  |  1994-07-14  |  3KB  |  105 lines

  1. 21/1/94    Got sources from
  2.            ftp: ftp.mv.com:/pub/ddj/packages/bob15.arc
  3.  
  4. Changes:
  5.  
  6. #    Altered syntax from 
  7.  
  8.      f(x, .. ;a, .. ) { ... }
  9.  
  10.      to
  11.  
  12.      f(x, .. ){ local a, .. ; .... }
  13.  
  14. #   Implemented input() using OS_ReadLine.
  15.  
  16. #   Implemented sysvar() using OS_ReadVarVal.
  17.  
  18. #   Implemented switch-block
  19.  
  20.       switch (<expression>)
  21.       {
  22.        case <expression> : <statement> [ break; ]
  23.        ........................................
  24.       [ default : <statement> [ break; ] ]
  25.       }
  26.  
  27.     The only difference from standard C is that a single statement 
  28.     follows the colon (or a block enclosed in braces).
  29.  
  30.     This required two new opcodes for the virtual-machine:
  31.     OP_DUP and OP_DROP.
  32.  
  33. #   Altered action of comparison operators to allow comparisons between 
  34.     strings as well as integers.
  35.  
  36. #   Introduced 'repeat' as a variant to 'do' with 'until <test> ;' as
  37.     an alternative to 'while <test> ;'.
  38.  
  39. #   Implemented rnd() and seed() for random integers.
  40.  
  41. #   Implemented quit() to terminate program with a message string.
  42.  
  43. #   Altered system() to oscli().
  44.  
  45. #   Allow @,$ and ` in identifiers.
  46.  
  47. #   Implement swi(n,regs) to call SWI number n, with registers in
  48.     vector regs (regs = newvector(8)).
  49.  
  50. #   Implement @(s) for address of string s, and $(adr) to get the
  51.     string at adr.
  52.  
  53. #   Allow positive hexadecimal numbers with a & prefix. Lower case
  54.     a,b,c,d,e,f are used for 10,11,12,13,14,15.
  55.  
  56. #   Added built-in constants, TRUE, FALSE, names for the types, and
  57.     SWI numbers.
  58.  
  59. #   Removed bug in switch/case. Added built-in val() to convert
  60.     strings to integers.
  61.  
  62. #   Modify swi to take string arguments.
  63.  
  64. #   Implement peek and poke for reading and writing words to buffers.
  65.  
  66. #   Improve switch/case structure so as to conform completely with
  67.     C syntax.
  68.  
  69. #   Change syntax of peek and poke, so that `(), £(), $() peek bytes,
  70.     words and strings respectively, and ``(), ££(), $$() poke.
  71.  
  72. #   Added the 
  73.  
  74.       in buffer put { item1; ..... itemn; }
  75.  
  76.     construction, for initializing window/sprite/menu/message blocks.
  77.     This requires the addition of two more opcodes, OP_ADR, OP_PUTNEXT.
  78.  
  79. #   Added an internal variable w_task to hold task handle. Implemented
  80.         wimp_report(s), 
  81.         wimp_close_down(),
  82.         wimp_init(version, name, mesg_list). 
  83.  
  84. #   Modified Bobint.c to give an error message if a function is not 
  85.     found. Altered the flag decoding in bob.c to be able to trace and
  86.     debug projects.
  87.  
  88. #   Cured another bug in switch statement.
  89.  
  90. <-   version 1.01       02/03/94
  91.  
  92. #   Cured bug in h.string.string
  93.  
  94. #   Misprint found in compiler source: 
  95.     changed an instance of SHL_EQ to SHR_EQ. >>= now works.
  96.  
  97. <- version 1.02        06/06/94
  98.  
  99. #   Added throwback for compiler errors. 25/06/94
  100.  
  101. #   Added the start_task(command) function. This works whether
  102.     from a BobFile or a BobTask.
  103.  
  104. <- version 1.03        14/07/94
  105.