home *** CD-ROM | disk | FTP | other *** search
/ Boston 2 / boston-2.iso / DOS / PROGRAM / BASIC / ASIC300 / ASICV300.NOT < prev    next >
Text File  |  1993-12-01  |  7KB  |  199 lines

  1.  
  2.                                   ASIC 3.00
  3.                                 Version Notes
  4.  
  5. ASIC is a BASIC language compiler for IBM PCs and compatibles.  It includes
  6. an integrated full screen editor, from which you can edit, compile, and debug
  7. your programs.  Or at your option, you can use your own text editor, and
  8. compile your programs from the MS DOS command line.
  9.  
  10. ASIC is a subset of BASICA/GWBASIC which supports over 80 BASIC statements,
  11. 16 and 32 bit integer variables and arrays, and string variables.
  12.  
  13. This document describes features in ASIC version 3.00 not found in previous
  14. versions. Enhancements to the integrated environment are listed first,
  15. followed by enhancements to the compiler.
  16.  
  17.  
  18. ****************** INTEGRATED ENVIRONMENT ENHANCEMENTS ***************
  19.  
  20. ONLINE KEYWORD HELP.  Look up the format and description of every ASIC
  21. statement.  Press <CTL-F1> and ASIC will popup a window with information
  22. about the keyword at the cursor.  If the keyword at the cursor is not known
  23. to ASIC, it will display an index of keywords.  Entries from this selection
  24. list can then be chosen by moving to the desired entry with the arrow keys
  25. and pressing <ENTER>.
  26.  
  27. ONLINE MENU HELP.  Not sure what a menu option does?  Press <F1> and ASIC
  28. will popup a window with information about that item.
  29.  
  30. IMPROVED DEBUGGER TRACE SPEED.  ASIC is much faster when tracing line by line
  31. through your program in debugging mode.  Previous versions always swapped to
  32. the user screen in TRACE mode.  ASIC now only swaps if the statement being
  33. TRACEd might read or modify video memory.  Since relatively few statements
  34. access video memory, the TRACE speed for many statements is much faster.
  35.  
  36. VIEW USER SCREEN (Enhanced).  You may now view the last screen from your
  37. program after it has terminated.  Previous versions of ASIC allowed you to
  38. view your program displays while paused at a breakpoint, but not once the END
  39. statement was executed.  ASIC now saves the screen as it existed when your
  40. program executed the END statement and allows you to view it from within the
  41. integrated environment.
  42.  
  43. EDITING KEYS.  Some ASIC editor keys have been enhanced.  BACKSPACE has been
  44. modified so that it works like it does in most other editors (ie, it now
  45. deletes the character at the left of the cursor and then shifts the
  46. characters starting at the cursor position left by 1.  In previous versions
  47. of ASIC, the character at the cursor was deleted).  The END key now positions
  48. the cursor at the first blank character following the last non-blank
  49. character in a line.  (Previous versions positioned the cursor on the last
  50. non-blank character).
  51.  
  52. CONFIGURATION.  Options that you set within the environment may now be saved
  53. to a configuration file, so that the next time you invoke ASIC, it
  54. "remembers" your options.
  55.  
  56.  
  57. ********************** COMPILER ENHANCEMENTS **********************
  58.  
  59. "LONG" INTEGER MATH.  Previous versions of ASIC supported 16 bit integer
  60. values which allowed you to represent numbers from -32,767 to +32,767.  ASIC
  61. now also supports 32 bit integer values.  This expands the range of allowable
  62. numbers to the range -2,147,483,647 to +2,147,483,647.
  63.  
  64. BLOCK IF/THEN/ELSE/ENDIF Statements.  Block IF statements are now supported
  65. and may be nested up to 25 levels deep.  The old single-line IF statements
  66. are still supported.
  67.  
  68.  
  69. WHILE/WEND Statements.  All of the statements between a pair of WHILE and
  70. WEND statements will be executed while a specified condition is true.  These
  71. may be nested up to 25 levels deep.
  72.  
  73. HEX/BINARY CONSTANTS.  Hexidecimal (base 16) and Binary (base 2)  constants
  74. may now be used in addition to decimal constants in your ASIC programs.
  75.  
  76. INT86.  Calls PC interrupts.  It will allow you to set all registers prior to
  77. the call, and retrieve values from these registers (except BP) after the
  78. call.  All registers are passed using ordinary ASIC variables which can be
  79. used normally in your program.
  80.  
  81. MOD.  Performs modulo division (ie, returns the remainder from a division
  82. operation, instead of the quotient).
  83.  
  84. FIND.  Searches for all file names in the current directory which match a
  85. search string and attribute.
  86.  
  87. GETDIR.  Retrieves the name of the current directory name for any disk drive
  88. on the PC.
  89.  
  90. ENVIRON$.  Retrieves DOS environment strings.
  91.  
  92. OPEN--APPEND MODE.  Programs may open files in "append" mode.  Data written
  93. to this file is appended to the end of the file.
  94.  
  95. OPEN--RANDOM I/O MODE.  Programs may open files in random mode to read or
  96. write to/from any position in the file.
  97.  
  98. INPUT# enhanced.  Two new options:
  99.  
  100.      1)  Read strings terminated by CR/LF (carriage return/linefeed).
  101.      2)  Read a file one byte at a time.
  102.  
  103. FILEPOS.  This powerful new command is really three commands in one.
  104.  
  105.      1) EOF option.  Positions a random file to the end of file.
  106.      2) CURRENT option.  Returns the current read/write position in a
  107.         random file.
  108.      3) FILEPOS also lets you set the read/write position in the file
  109.         to any offset you desire.
  110.  
  111. PRINT (Enhanced).  If no operands are supplied, ASIC will generate a CR/LF as
  112. in GWBASIC/BASICA.  In previous ASIC versions, a null ("") string was
  113. required to do this.
  114.  
  115. CODE (Enhanced).  CODE now accepts multiple bytes of machine language code
  116. per statement.
  117.  
  118. DIM/DATA (Enhanced).  These statements may now be preceded by blank lines or
  119. REM statements.
  120.  
  121. INSTR.  Finds the position of a string within another string.
  122.  
  123. LEFT$.  Extracts the leftmost "n" characters of a string.
  124.  
  125. RIGHT$.  Extracts the rightmost "n" characters of a string.
  126.  
  127. SPACE$.  Sets a string to 1-80 ASCII space characters.
  128.  
  129. STRING$.  Sets a string to 1-80 characters (each having the same ASCII code).
  130.  
  131. LCASE$.  Converts all upper case letters in a string to lower case.
  132.  
  133.  
  134. UCASE$.  Converts all lower case letters in a string to upper case.
  135.  
  136. LTRIM$.  Removes all leading space characters from a string.
  137.  
  138. RTRIM$.  Removes all trailing space characters from a string.
  139.  
  140. BEEP.  Issues a short beep on the PC speaker.
  141.  
  142. EGA/VGA GRAPHICS SUPPORT.  ASIC now supports several EGA/VGA graphics modes.
  143. The following new modes are supported:
  144.  
  145.      EGA/VGA:       200 rows x 320 columns x 16 colors
  146.      EGA/VGA        350 rows x 640 columns x 16 colors
  147.      VGA            200 rows x 320 columns x 256 colors
  148.  
  149.  
  150. ****************** KEYWORD LIST FOR VERSION 3.00 ********************
  151.  
  152. ABS       AS        ASC       BEEP      BLOAD     BSAVE     CALL
  153. CHDIR     CHR$      CLOSE     CLS       CODE      COLOR     COMMAND$
  154. COMSTAT   CSRLIN    DATA      DATE$     DEFSEG    DIM       ELSE
  155. END       ENDIF     ENVIRON$  ERROR     EXTENDED  FILEPOS   FIND
  156. FOR       GETDIR    GOSUB     GOTO      IF        INKEY$    INP
  157. INPUT     INPUT#    INSTR     INT86     KILL      LCASE$    LEFT$
  158. LEN       LOCATE    LPRINT    LTRIM$    MID$      MKDIR     MOD
  159. NAME      NEXT      OPEN      OPENCOM   OUT       PEEK      POINT
  160. POKE      POS       PRESET    PRINT     PRINT#    PSET      RANDOMIZE
  161. READ      RECEIVE   REM       RESTORE   RETURN    RIGHT$    RMDIR
  162. RND       RTRIM$    RUN       SCREEN    SEND      SOUND     SPACE$
  163. STR$      STRING$   THEN      TIME$     TIMER     TO        UCASE$
  164. VAL       VARPTR    WHILE     WEND      WIDTH     ZBIT      ZMODE
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.