home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / cpm / basic / ebasic.hlp < prev    next >
Text File  |  1994-07-13  |  12KB  |  361 lines

  1. Invoking BASIC-E
  2. BASIC-E Statements
  3. BASIC-E Functions
  4. Differences between BASIC-E and CBASIC
  5. BASIC-E Error Messages
  6. CBASIC:  Compiler Error Messages
  7. CBASIC:  Run-Time Error Messages -- Warnings
  8. CBASIC:  Run-Time Error Messages -- Error Codes
  9. :Invoking BASIC-E
  10.  
  11.      BASIC-E is invoked by typing the following --
  12.  
  13.           EBASIC filename $o
  14.  
  15. where  'filename' is the name of the source file 'filename.BAS' to  be 
  16. compiled and 'o' is one or more of the following options --
  17.  
  18.           A    List Productions (for compiler debugging); normally OFF
  19.           B    List only source statements with errors; normally OFF
  20.           C    Check syntax only; don't create .INT file; normally OFF
  21.           D    Convert lowercase to uppercase; normally ON
  22.           E    Generate line number code; normally OFF
  23.  
  24.      After compilation, the program may then be executed by --
  25.  
  26.           ERUN filename
  27.  
  28. where 'filename' is the name of the intermediate code file 'filename.INT'.
  29. :BASIC-E Statements
  30.  
  31.      The following statements are valid in BASIC-E --
  32.  
  33.           FOR       NEXT      FILE      GOTO      LET  
  34.           CLOSE     GOSUB     INPUT     ON        PRINT
  35.           READ      RESTORE   RETURN    OUT       RANDOMIZE
  36.           STOP      DATA      DEF       DIM       END
  37.           IF        REM       ELSE      THEN
  38.  
  39. :BASIC-E Functions
  40.  
  41.      The following built-in functions are valid in BASIC-E --
  42.  
  43.           ABS       ASC       ATN       CHR$      COS
  44.           COSH      FRE       INP       INT       LEFT$
  45.           LEN       LOG       MID$      POS       RIGHT$
  46.           RND       SGN       SIN       SINH      STR$
  47.           SQR       TAB       TAN       VAL       EXP
  48.  
  49. :Differences between BASIC-E and CBASIC
  50.  
  51.      The  following  features are not available in BASIC-E,  but  they  are 
  52. available in CBASIC --
  53.  
  54.           1.  PEEK or POKE
  55.           2.  PRINT USING
  56.           3.  CALL to machine code programs
  57.           4.  LPRINT
  58.  
  59. :BASIC-E Error Messages
  60.  
  61.      Since  BASIC-E is a "subset" of CBASIC,  refer to the CBASIC help file 
  62. for information on the BASIC-E error messages.
  63.  
  64.      Most,  but  not all,  BASIC-E error messages are covered in this  help 
  65. file.
  66. :CBASIC:  Compiler Error Messages
  67.  
  68.                                Text Messages
  69.  
  70. NO SOURCE FILE:  <FILENAME>.BAS
  71.      The  compiler could not locate a source file used in either  a  CBASIC 
  72. command or an INCLUDE directive.
  73.  
  74. PROGRAM CONTAINS n UNMATCHED FOR STATEMENT(S)
  75.      There are n FOR statements for which a NEXT could not be found.
  76.  
  77. PROGRAM CONTAINS n UNMATCHED WHILE STATEMENT(S)
  78.      There are n WHILE statements for which a WEND could not be found.
  79.  
  80. WARNING:  INVALID CHARACTER IGNORED
  81.      The previous line contains an invalid ASCII character;  this character 
  82. is ignored by the compiler, and a question mark is printed in its place.
  83.  
  84.  
  85.  
  86.                            2-Letter Error Codes
  87.  
  88. CE -- Close Error
  89.      The intermediate (.INT) file could not be closed.
  90.  
  91. DE -- Disk Error
  92.      A disk error occurred while trying to read the .BAS file.
  93.  
  94. DF -- Disk Full
  95.      There  was no space on the disk or the disk directory was  full.   The 
  96. .INT file was not created.
  97.  
  98. DL -- Duplicate Line number
  99.      The same line number was used on two different lines.   Other compiler 
  100. errors  may  cause a DL error message to be printed even if duplicate  line 
  101. numbers do not exist.
  102.  
  103. DP -- Defined Previously
  104.      A variable in a DIM statement was previously defined.
  105.  
  106.  
  107. EF -- Exponential Format
  108.      A number in exponential format was input with no digits following  the 
  109. E.
  110.  
  111. FD -- Function Definition
  112.      A function name that has been previously defined is being redefined in 
  113. a DEF statement.
  114.  
  115. FI -- FOR Index
  116.      An  expression which is not an unsubscripted numeric variable is being 
  117. used as a FOR loop index.
  118.  
  119. FN -- Function parameter Number 
  120.      A function reference contains an incorrect number of parameters.
  121.  
  122. FP -- Function Parameter type
  123.      A function reference parameter type does not match the parameter  type 
  124. used in the function's DEF statement.
  125.  
  126.  
  127. FU -- Function Undefined
  128.      A function has been referenced before it has been defined.
  129.  
  130. IE -- IF Expression
  131.      An  expression  used  immediately following an IF  evaluates  to  type 
  132. string.  Only type numeric is permitted.
  133.  
  134. IF -- In File
  135.      A  variable  used  in a FILE statement is of type numeric  where  type 
  136. string is required.
  137.  
  138. IP -- Input Prompt
  139.      An input prompt string is not surrounded by quotes.
  140.  
  141. IS -- Invalid Subscript
  142.      A subscripted variable was referenced before it was dimensioned.
  143.  
  144. IU -- Invalid Use
  145.      A variable defined as an array is used with no subscripts.
  146.  
  147.  
  148. MF -- Mixed Format
  149.      An expression evaluates to type string when type numeric is required.
  150.  
  151. MM -- Mixed Mode
  152.      Variables  of  type string and type numeric are combined in  the  same 
  153. expression.
  154.  
  155. NI -- NEXT Index
  156.      A variable referenced by a NEXT statement does not match the  variable 
  157. referenced by the associated FOR statement.
  158.  
  159. NU -- NEXT Unexpected
  160.      A NEXT statement occurs without an associated FOR statement.
  161.  
  162. OO -- ON Overflow
  163.      More than 25 ON statements were used in the program.
  164.  
  165.  
  166. SE -- Syntax Error
  167.      The source line contains a syntax error.
  168.  
  169. SN -- Subscript Number
  170.      A subscripted variable contains an incorrect number of subscripts.
  171.  
  172. SO -- Syntax Overflow
  173.      The  expression is too complex and should be simplified and placed  on 
  174. more than one line.
  175.  
  176. TO -- Table Overflow
  177.      The  program  is  too  large for the  system.   The  program  must  be 
  178. simplified or the system size increased.
  179.  
  180. UL -- Undefined Line number
  181.      A line number that does not exist has been referenced.
  182.  
  183. US -- Undefined String
  184.      A string has been terminated by a carriage return rather than quotes.
  185.  
  186.  
  187. VO -- Variable Overflow
  188.      Variable names are too long for one statement.
  189.      This should not occur.
  190.  
  191. WE -- WHILE Error
  192.      The expression immediately following a WHILE statement is not numeric.
  193.  
  194. WU -- WHILE Undefined
  195.      A WEND statement occurs without an associated WHILE statement.
  196. :CBASIC:  Run-Time Error Messages -- Warnings
  197.  
  198.      Two textual run-time error messages are presented by CRUN:
  199.  
  200. NO INTERMEDIATE FILE
  201.      A  file name was not specified with the CRUN command,  or no  file  of 
  202. type .INT and the specified file name was found on disk.
  203.  
  204. IMPROPER INPUT - REENTER
  205.      This  message  occurs when the fields entered from the console do  not 
  206. match  the  field specified in the INPUT statement.   This can  occur  when 
  207. field types do not match or the number of fields entered is different  from 
  208. the  number  of  fields  specified.   All fields  specified  by  the  INPUT 
  209. statement must be reentered.
  210.  
  211.                      2-Letter Warning Codes
  212.  
  213. DZ -- Divide by Zero
  214.      A number was divided by zero.   The result is set to the largest valid 
  215. CBASIC number.
  216.  
  217. FL -- Field Length
  218.      A  field  length greater than 255 bytes was encountered during a  READ 
  219. LINE.  Only the first 255 characters of the record are retained.
  220.  
  221. LN -- Logarithm error
  222.      The  argument  given in the LOG function was zero  or  negative.   The 
  223. value of the argument is returned.
  224.  
  225. NE -- NEgative number
  226.      A  negative  number  was  specified following the  raise  to  a  power 
  227. operator (^).  The absolute value is used in the calculation.
  228.  
  229.  
  230. OF -- OverFlow
  231.      A calculation produced a number too large.   The result is set ot  the 
  232. largest valid CBASIC number.
  233.  
  234. SQ -- SQuare root error
  235.      A  negative  number was specified in the SQR function.   The  absolute 
  236. value is used.
  237. :CBASIC:  Run-Time Error Messages -- Error Codes
  238.  
  239. AC -- AsCii error
  240.      The string used as the argument in an ASC function evaluated to a null 
  241. string.
  242.  
  243. CE -- Close Error
  244.      An error occurred upon closing a file.
  245.  
  246. CU -- Close Undefined file 
  247.      A close statement specified a file number that was not active.
  248.  
  249. DF -- Defined File
  250.      An  OPEN or CREATE was specified with a file number that  was  already 
  251. active.
  252.  
  253. DU -- Delete Undefined file
  254.      A DELETE statement specified a file number that was not active.
  255.  
  256.  
  257. DW -- Disk Write error
  258.      An  error occurred while writing to a file.   This occurs when  either 
  259. the directory or the disk is full.
  260.  
  261. EF -- End of File
  262.      A  read  past the end of file occurred on a file for which no  IF  END 
  263. statement has been executed.
  264.  
  265. ER -- Error in Record
  266.      An  attempt  was  made to write a record of length  greater  than  the 
  267. maximum  record  size specified in the associated  OPEN,  CREATE,  or  FILE 
  268. statement.
  269.  
  270. FR -- File Rename
  271.      An attempt was made to rename a file to an existing file name.
  272.  
  273. FU -- File Undefined
  274.      An attempt was made to read or write to a file that was not active.
  275.  
  276.  
  277. IR -- Invalid Record number
  278.      A record number less than one was specified.
  279.  
  280. LW -- Line Width
  281.      A  line  width  less than 1 or greater than 133 was  specified  in  an 
  282. LPRINTER WIDTH statement.
  283.  
  284.  
  285. ME -- MAKE Error
  286.      An  error occurred while creating or extending a file because the disk 
  287. directory was full.
  288.  
  289. MP -- MATCH Parameter
  290.      The third parameter in a MATCH function was zero or negative.
  291.  
  292. NF -- Number of FILE
  293.      The file number specified was less than 1 or greater than 20.
  294.  
  295.  
  296. NM -- No Memory
  297.      There was insufficient memory to load the program.
  298.  
  299. NN -- No Number field
  300.      An attempt was made to print a number with a PRINT USING statement but 
  301. there was not a numeric data field in the USING string.
  302.  
  303. NS -- No String field
  304.      An attempt was made to print a string with a PRINT USING statement but 
  305. there was not a string field in the USING string.
  306.  
  307. OD -- Overflow Data
  308.      A  READ  statement was executed with no DATA available.
  309.  
  310. OE -- OPEN Error
  311.      An attempt was made to OPEN a file that didn't exist and for which  no 
  312. IF END statement had been previously executed.
  313.  
  314.  
  315. OI -- ON Index
  316.      The  expression  specified  in  an ON ...  GOSUB or  an  ON  ...  GOTO 
  317. statement  evaluated to a number less than 1 or greater than the number  of 
  318. line numbers contained in the statement.
  319.  
  320. OM -- Overflow Memory
  321.      The program ran out of memory during execution.
  322.  
  323. QE -- Quote Error
  324.      An attempt was made to PRINT to a file a string containing a quotation 
  325. mark.
  326.  
  327. RE -- READ Error
  328.      An attempt was made to read past the end of a record in a fixed file.
  329.  
  330. RG -- RETURN with no GOSUB
  331.      A RETURN occurred for which there was no GOSUB.
  332.  
  333.  
  334. RU -- Random Undefined
  335.      A random read or print was attempted to other than a fixed file.
  336.  
  337. SB -- SuBscript
  338.      An  array subscript was used which exceeded the boundaries  for  which 
  339. the array was defined.
  340.  
  341. SL -- String Length
  342.      A concatenation operation resulted in a string of more than 255 bytes.
  343.  
  344. SS -- SubString error
  345.      The second parameter of a MID$ function was zero or negative.
  346.  
  347. TF -- Too many Files
  348.      An attempt was made to have more than 20 active files simultaneously.
  349.  
  350.  
  351. TL -- TAB Length
  352.      A  TAB statement contained a parameter less than 1 or greater than the 
  353. current line width.
  354.  
  355. UN -- UNdefined edit string
  356.      A PRINT USING statement was executed with a null edit string.
  357.  
  358. WR -- WRite error
  359.      An  attempt was made to write to a file after it had  been  read,  but 
  360. before it had been read to the end of the file.
  361.