ChipMaster's bwBASIC This also includes history going back to v2.10. *WARN* some binary files might have been corrupted by CRLF.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1563 lines
67 KiB

  1. ============================================================
  2. GENERAL
  3. ============================================================
  4. OPTION VERSION "HANDBOOK1"
  5. REM INTERNAL ID: HB1
  6. REM DESCRIPTION: The BASIC Handbook, 1st Edition
  7. REM REFERENCE: The BASIC Handbook: Encyclopedia of the BASIC Computer Language
  8. REM by David A. Lien
  9. REM (c) 1978, Compusoft Publishing
  10. REM ISBN 0-932760-00-7
  11. REM (1st Edition) 364 pages
  12. REM
  13. OPTION STRICT OFF
  14. OPTION ANGLE RADIANS
  15. OPTION BUGS ON
  16. OPTION LABELS OFF
  17. OPTION COMPARE BINARY
  18. OPTION COVERAGE OFF
  19. OPTION TRACE OFF
  20. OPTION ERROR GOTO
  21. OPTION IMPLICIT
  22. OPTION BASE 0
  23. OPTION RECLEN 128
  24. OPTION DATE "%m/%d/%Y"
  25. OPTION TIME "%H:%M:%S"
  26. OPTION PUNCT STRING "$"
  27. OPTION PUNCT DOUBLE "#"
  28. OPTION PUNCT SINGLE "!"
  29. OPTION PUNCT CURRENCY " "
  30. OPTION PUNCT LONG "&"
  31. OPTION PUNCT INTEGER "%"
  32. OPTION PUNCT BYTE " "
  33. OPTION PUNCT QUOTE """
  34. OPTION PUNCT COMMENT "'"
  35. OPTION PUNCT STATEMENT ":"
  36. OPTION PUNCT PRINT "?"
  37. OPTION PUNCT INPUT " "
  38. OPTION PUNCT IMAGE " "
  39. OPTION PUNCT LPAREN "("
  40. OPTION PUNCT RPAREN ")"
  41. OPTION PUNCT FILENUM "#"
  42. OPTION PUNCT AT "@"
  43. OPTION USING DIGIT "#"
  44. OPTION USING COMMA ","
  45. OPTION USING PERIOD "."
  46. OPTION USING PLUS "+"
  47. OPTION USING MINUS "-"
  48. OPTION USING EXRAD "^"
  49. OPTION USING DOLLAR "$"
  50. OPTION USING FILLER "*"
  51. OPTION USING LITERAL "_"
  52. OPTION USING FIRST "!"
  53. OPTION USING ALL "&"
  54. OPTION USING LENGTH "%"
  55. ============================================================
  56. COMMANDS
  57. ============================================================
  58. ------------------------------------------------------------
  59. SYNTAX: AUTO [start [, increment]]
  60. DESCRIPTION: Automatic line numbering for manual program
  61. entry. If the line already exists, then an
  62. asterisk is displayed and pressing ENTER
  63. leaves the line as-is. If the line does not
  64. exist, then an asterisk is not displayed and
  65. pressing ENTER terminates AUTO mode.
  66. Regardless whether the line exists, entering
  67. the command MAN will terminate AUTO mode.
  68. AUTO mode is also terminated by any ERROR or
  69. by pressing control-C.
  70. ------------------------------------------------------------
  71. SYNTAX: BREAK line [, ...]]
  72. DESCRIPTION: Diagnostic command to stop execution at the
  73. specified line(s). BREAK only applies to
  74. user-numbered lines. For multi-statement
  75. lines, BREAK only applies to the first
  76. statement. BREAK effectively inserts a
  77. hidden STOP command immediately after the
  78. line number. Once a BREAK occurrs on a
  79. specified line, it is automatically removed.
  80. To remove all existing BREAKs, execute BREAK
  81. without any line numbers.
  82. ------------------------------------------------------------
  83. SYNTAX: CHAIN filename$ [, linenumber]
  84. DESCRIPTION: Load and execute another BASIC program,
  85. without clearing common variables. For
  86. System/370, the syntax is CHAIN
  87. filename$,parameter$.
  88. ------------------------------------------------------------
  89. SYNTAX: CLEAR
  90. DESCRIPTION: Sets all numeric variables to 0, and all
  91. string variables to empty strings.
  92. ------------------------------------------------------------
  93. SYNTAX: CLOAD [filename$]
  94. DESCRIPTION: Loads an ASCII BASIC program into memory.
  95. ------------------------------------------------------------
  96. SYNTAX: CLOAD* arrayname
  97. DESCRIPTION: Loads a numeric array from a file saved using
  98. CSAVE*.
  99. ------------------------------------------------------------
  100. SYNTAX: CLR
  101. DESCRIPTION: Sets all numeric variables to 0, and all
  102. string variables to empty strings.
  103. ------------------------------------------------------------
  104. SYNTAX: CONT
  105. DESCRIPTION: Continue a BASIC program after a STOP has been
  106. executed. Program resumes at the line after
  107. the STOP.
  108. ------------------------------------------------------------
  109. SYNTAX: CSAVE [filename$]
  110. DESCRIPTION: Saves the current program into the file
  111. filename$ in ASCII format.
  112. ------------------------------------------------------------
  113. SYNTAX: CSAVE* ArrayName
  114. DESCRIPTION: Saves a numeric array into a file for later
  115. loading by CLOAD*.
  116. ------------------------------------------------------------
  117. SYNTAX: DATA constant [, ...]
  118. DESCRIPTION: Stores numeric and string constants to be
  119. accessed by READ.
  120. ------------------------------------------------------------
  121. SYNTAX: DEF FNname[( arg [,...] )] = value
  122. DESCRIPTION: Defines a single-line function. Single-line
  123. functions require an equal sign.
  124. ------------------------------------------------------------
  125. SYNTAX: DEF FNname[( arg [,...] )]
  126. DESCRIPTION: Defines a multiline function. Multi-line DEF
  127. functions do not have an equal sign and must
  128. end with FNEND.
  129. ------------------------------------------------------------
  130. SYNTAX: DEFDBL letter[-letter] [, ...]
  131. DESCRIPTION: Declares variables with single-letter names as
  132. numeric variables.
  133. ------------------------------------------------------------
  134. SYNTAX: DEFINT letter[-letter] [, ...]
  135. DESCRIPTION: Declares variables with single-letter names as
  136. numeric variables.
  137. ------------------------------------------------------------
  138. SYNTAX: DEFSNG letter[-letter] [, ...]
  139. DESCRIPTION: Declares variables with single-letter names as
  140. numeric variables.
  141. ------------------------------------------------------------
  142. SYNTAX: DEFSTR letter[-letter] [, ...]
  143. DESCRIPTION: Declares variables with single-letter names as
  144. string variables.
  145. ------------------------------------------------------------
  146. SYNTAX: DELETE line [- line]
  147. DESCRIPTION: Deletes program lines indicated by the
  148. argument(s). All program lines have a
  149. number, which is visible with the LIST
  150. command. If line numbers are not provided,
  151. they are assigned beginning with 1. Deleting
  152. a non-existing line does not cause an error.
  153. ------------------------------------------------------------
  154. SYNTAX: DIM [# filenum,] variable([ lower TO ] upper)
  155. DESCRIPTION: Declares variables and specifies the
  156. dimensions of array variables. For array
  157. variables, if the lower bound is not
  158. provided, then the OPTION BASE value is used.
  159. If filenum is provided, then the variable is
  160. virtual.
  161. ------------------------------------------------------------
  162. SYNTAX: DSP variable [, ...]]
  163. DESCRIPTION: Diagnostic command to display the value every
  164. time the variable is assigned. To remove all
  165. existing DSPs, execute DSP without any
  166. variables.
  167. ------------------------------------------------------------
  168. SYNTAX: EDIT
  169. DESCRIPTION: implementation defined.
  170. ------------------------------------------------------------
  171. SYNTAX: ELSE
  172. DESCRIPTION: Introduces a default condition in a multi-line
  173. IF statement.
  174. ------------------------------------------------------------
  175. SYNTAX: ELSEIF
  176. DESCRIPTION: Introduces a secondary condition in a
  177. multi-line IF statement.
  178. ------------------------------------------------------------
  179. SYNTAX: END
  180. DESCRIPTION: Terminates program execution. If the BASIC
  181. program was executed from the operating
  182. system level, then control returns to the
  183. operating system, oterwise control reuturns
  184. to the BASIC prompt.
  185. ------------------------------------------------------------
  186. SYNTAX: END IF
  187. DESCRIPTION: Specifies the last line of a multi-line IF
  188. definition.
  189. ------------------------------------------------------------
  190. SYNTAX: ERASE variable [, ...]
  191. DESCRIPTION: Eliminates arrayed variables from a program.
  192. ------------------------------------------------------------
  193. SYNTAX: FNEND
  194. DESCRIPTION: Specifies the last line of a multi-line DEF
  195. function.
  196. ------------------------------------------------------------
  197. SYNTAX: FOR variable = start TO finish [STEP
  198. increment]
  199. DESCRIPTION: Top of a FOR - NEXT structure. The loop will
  200. continue a fixed number of times, which is
  201. determined by the values of start, finish,
  202. and increment.
  203. ------------------------------------------------------------
  204. SYNTAX: GO
  205. DESCRIPTION: Syntax Error.
  206. ------------------------------------------------------------
  207. SYNTAX: GO SUB line
  208. DESCRIPTION: Initiates a subroutine call to the line
  209. specified. The subroutine must end with
  210. RETURN. The line may be a number or a label.
  211. ------------------------------------------------------------
  212. SYNTAX: GO TO line
  213. DESCRIPTION: Branches program execution to the specified
  214. line. The line may be a number or a label.
  215. ------------------------------------------------------------
  216. SYNTAX: GOSUB line
  217. DESCRIPTION: Initiates a subroutine call to the line
  218. specified. The subroutine must end with
  219. RETURN. The line may be a number or a label.
  220. ------------------------------------------------------------
  221. SYNTAX: GOTO line
  222. DESCRIPTION: Branches program execution to the specified
  223. line. The line may be a number or a label.
  224. ------------------------------------------------------------
  225. SYNTAX: IF value THEN line1 [ELSE line2]
  226. DESCRIPTION: Single line standard IF command. If the value
  227. is non-zero, then branh to line1. If the
  228. value is zero and ELSE is provided, then
  229. branch to line2. Otherwise continue to the
  230. next line. LABELS are not allowed.
  231. ------------------------------------------------------------
  232. SYNTAX: IF value THEN
  233. DESCRIPTION: Top of a multi-line IF - END IF structure. If
  234. the value is non-zero, then the program lines
  235. upto the next ELSE or ELSE IF command are
  236. executed, otherwise the program branches to
  237. the next ELSE or ELSE IF command.
  238. ------------------------------------------------------------
  239. SYNTAX: IMAGE "format string"
  240. DESCRIPTION: Provides format string for PRINT USING
  241. linenum.
  242. ------------------------------------------------------------
  243. SYNTAX: INPUT "prompt string" , variable [, ...]
  244. DESCRIPTION: Reads input from the terminal after displaying
  245. a prompt.
  246. ------------------------------------------------------------
  247. SYNTAX: INPUT # filenum , variable [, ...]s
  248. DESCRIPTION: Reads input from the file specified by
  249. filenum.
  250. ------------------------------------------------------------
  251. SYNTAX: INPUT variable [, ...]
  252. DESCRIPTION: Reads input from the terminal.
  253. ------------------------------------------------------------
  254. SYNTAX: [LET] variable [, ...] = value
  255. DESCRIPTION: Assigns the value to the variable. The LET
  256. keyword is optional.
  257. ------------------------------------------------------------
  258. SYNTAX: LIST line1 [- line2]
  259. DESCRIPTION: Lists BASIC program lines from line1 to line2
  260. to the console on stdout.
  261. ------------------------------------------------------------
  262. SYNTAX: LOAD [filename$]
  263. DESCRIPTION: Loads an ASCII BASIC program into memory.
  264. ------------------------------------------------------------
  265. SYNTAX: MAINTAINER
  266. DESCRIPTION: This command is reserved for use by the
  267. Bywater BASIC maintainer. It is not for the
  268. BASIC programmer.
  269. ------------------------------------------------------------
  270. SYNTAX: MAINTAINER CMDS
  271. DESCRIPTION: Syntax Error.
  272. ------------------------------------------------------------
  273. SYNTAX: MAINTAINER CMDS HTML
  274. DESCRIPTION: Dump COMMAND vs VERSION as HTML table
  275. ------------------------------------------------------------
  276. SYNTAX: MAINTAINER CMDS ID
  277. DESCRIPTION: Dump COMMAND #define.
  278. ------------------------------------------------------------
  279. SYNTAX: MAINTAINER CMDS MANUAL
  280. DESCRIPTION: Dump COMMAND manual.
  281. ------------------------------------------------------------
  282. SYNTAX: MAINTAINER CMDS_SWITCH
  283. DESCRIPTION: Dump COMMAND switch.
  284. ------------------------------------------------------------
  285. SYNTAX: MAINTAINER CMDS TABLE
  286. DESCRIPTION: Dump COMMAND table.
  287. ------------------------------------------------------------
  288. SYNTAX: MAINTAINER DEBUG
  289. DESCRIPTION: Syntax Error.
  290. ------------------------------------------------------------
  291. SYNTAX: MAINTAINER DEBUG OFF
  292. DESCRIPTION: Disable degug tracing.
  293. ------------------------------------------------------------
  294. SYNTAX: MAINTAINER DEBUG ON
  295. DESCRIPTION: Enable degug tracing.
  296. ------------------------------------------------------------
  297. SYNTAX: MAINTAINER FNCS
  298. DESCRIPTION: Syntax Error.
  299. ------------------------------------------------------------
  300. SYNTAX: MAINTAINER FNCS HTML
  301. DESCRIPTION: Dump FUNCTION vs VERSION as HTML table.
  302. ------------------------------------------------------------
  303. SYNTAX: MAINTAINER FNCS ID
  304. DESCRIPTION: Dump FUNCTION #define.
  305. ------------------------------------------------------------
  306. SYNTAX: MAINTAINER FNCS MANUAL
  307. DESCRIPTION: Dump FUNCTION manual.
  308. ------------------------------------------------------------
  309. SYNTAX: MAINTAINER FNCS SWITCH
  310. DESCRIPTION: Dump FUNCTION switch.
  311. ------------------------------------------------------------
  312. SYNTAX: MAINTAINER FNCS TABLE
  313. DESCRIPTION: Dump FUNCTION table.
  314. ------------------------------------------------------------
  315. SYNTAX: MAINTAINER MANUAL
  316. DESCRIPTION: Dump manual for the currently selected OPTION
  317. VERSION.
  318. ------------------------------------------------------------
  319. SYNTAX: MAINTAINER STACK
  320. DESCRIPTION: Dump the BASIC stack.
  321. ------------------------------------------------------------
  322. SYNTAX: MAT arrayname = value
  323. DESCRIPTION: Matrix operations:
  324. MAT A = CON
  325. MAT A = IDN
  326. MAT A = ZER
  327. MAT A = INV B
  328. MAT A = TRN B
  329. MAT A = (k) * B
  330. MAT A = B
  331. MAT A = B + C
  332. MAT A = B - C
  333. MAT A = B * C
  334. ------------------------------------------------------------
  335. SYNTAX: MAT INPUT arrayname
  336. DESCRIPTION: Matrix input.
  337. ------------------------------------------------------------
  338. SYNTAX: MAT PRINT arrayname
  339. DESCRIPTION: Matrix print.
  340. ------------------------------------------------------------
  341. SYNTAX: MAT READ arrayname
  342. DESCRIPTION: Matrix read.
  343. ------------------------------------------------------------
  344. SYNTAX: MAT WRITE arrayname
  345. DESCRIPTION: Matrix write.
  346. ------------------------------------------------------------
  347. SYNTAX: NEW
  348. DESCRIPTION: Deletes the program in memory and clears all
  349. variables.
  350. ------------------------------------------------------------
  351. SYNTAX: NEXT [variable]
  352. DESCRIPTION: The bottom line of a FOR - NEXT structure.
  353. ------------------------------------------------------------
  354. SYNTAX: OF
  355. DESCRIPTION: Syntax Error.
  356. ------------------------------------------------------------
  357. SYNTAX: ON value GOSUB line [, ...]
  358. DESCRIPTION: Calls based on the rounded value.
  359. ------------------------------------------------------------
  360. SYNTAX: ON value GOTO line [, ...]
  361. DESCRIPTION: Branches based on the rounded value.
  362. ------------------------------------------------------------
  363. SYNTAX: ON ERROR
  364. DESCRIPTION: Syntax Error.
  365. ------------------------------------------------------------
  366. SYNTAX: ON ERROR GOTO errline
  367. DESCRIPTION: When a trappable error occurs, execute GOTO
  368. errline. The error handler must terminate
  369. with a RESUME command. If the line number is
  370. 0 (zerp), then use the default error handler.
  371. Valid when OPTION ERROR GOTO.
  372. ------------------------------------------------------------
  373. SYNTAX: OPTION
  374. DESCRIPTION: Syntax Error.
  375. ------------------------------------------------------------
  376. SYNTAX: OPTION ANGLE
  377. DESCRIPTION: Syntax Error.
  378. ------------------------------------------------------------
  379. SYNTAX: OPTION ANGLE DEGREES
  380. DESCRIPTION: Configures these math functions to accept and
  381. return angles in degrees: ACOS, ACS, ANGLE,
  382. ARCSIN, ASIN, ASN, ARCTAN, ATN, ATAN, COS,
  383. COT, CSC, SEC, SIN and TAN.
  384. ------------------------------------------------------------
  385. SYNTAX: OPTION ANGLE GRADIANS
  386. DESCRIPTION: Configures these math functions to accept and
  387. return angles in gradians: ACOS, ANGLE,
  388. ASIN, ASN, ATN, ATAN, COS, COT, CSC, SEC, SIN
  389. and TAN.
  390. ------------------------------------------------------------
  391. SYNTAX: OPTION ANGLE RADIANS
  392. DESCRIPTION: Configures these math functions to accept and
  393. return angles in radians: ACOS, ANGLE, ASIN,
  394. ASN, ATN, ATAN, COS, COT, CSC, SEC, SIN and
  395. TAN.
  396. ------------------------------------------------------------
  397. SYNTAX: OPTION ARITHMETIC
  398. DESCRIPTION: Syntax Error.
  399. ------------------------------------------------------------
  400. SYNTAX: OPTION ARITHMETIC DECIMAL
  401. DESCRIPTION: Currently has no effect.
  402. ------------------------------------------------------------
  403. SYNTAX: OPTION ARITHMETIC FIXED
  404. DESCRIPTION: Currently has no effect.
  405. ------------------------------------------------------------
  406. SYNTAX: OPTION ARITHMETIC NATIVE
  407. DESCRIPTION: Currently has no effect.
  408. ------------------------------------------------------------
  409. SYNTAX: OPTION BASE integer
  410. DESCRIPTION: Sets the default lowest array subscript.
  411. ------------------------------------------------------------
  412. SYNTAX: OPTION BUGS
  413. DESCRIPTION: Syntax Error.
  414. ------------------------------------------------------------
  415. SYNTAX: OPTION BUGS BOOLEAN
  416. DESCRIPTION: Boolean results are 1 or 0 instead of bitwise.
  417. ------------------------------------------------------------
  418. SYNTAX: OPTION BUGS OFF
  419. DESCRIPTION: Disables bugs commonly found in many BASIC
  420. dialects.
  421. ------------------------------------------------------------
  422. SYNTAX: OPTION BUGS ON
  423. DESCRIPTION: Enables bugs commonly found in many BASIC
  424. dialects.
  425. ------------------------------------------------------------
  426. SYNTAX: OPTION COMPARE
  427. DESCRIPTION: Syntax Error.
  428. ------------------------------------------------------------
  429. SYNTAX: OPTION COMPARE BINARY
  430. DESCRIPTION: Causes string comparisons to be
  431. case-sensitive.
  432. ------------------------------------------------------------
  433. SYNTAX: OPTION COMPARE DATABASE
  434. DESCRIPTION: Causes string comparisons to be
  435. case-insensitive.
  436. ------------------------------------------------------------
  437. SYNTAX: OPTION COMPARE TEXT
  438. DESCRIPTION: Causes string comparisons to be
  439. case-insensitive.
  440. ------------------------------------------------------------
  441. SYNTAX: OPTION COVERAGE
  442. DESCRIPTION: Syntax Error.
  443. ------------------------------------------------------------
  444. SYNTAX: OPTION COVERAGE OFF
  445. DESCRIPTION: Disables BASIC code coverage recording,
  446. displayed using the LIST command.
  447. ------------------------------------------------------------
  448. SYNTAX: OPTION COVERAGE ON
  449. DESCRIPTION: Enables BASIC code coverage recording,
  450. displayed using the LIST command.
  451. ------------------------------------------------------------
  452. SYNTAX: OPTION DATE format$
  453. DESCRIPTION: Sets the date format string used by C
  454. strftime() for DATE$.
  455. ------------------------------------------------------------
  456. SYNTAX: OPTION DIGITS integer
  457. DESCRIPTION: Sets the number of significant digits for
  458. PRINT. Setting the value to zero restores
  459. the default.
  460. ------------------------------------------------------------
  461. SYNTAX: OPTION DISABLE
  462. DESCRIPTION: Syntax Error.
  463. ------------------------------------------------------------
  464. SYNTAX: OPTION DISABLE COMMAND name$
  465. DESCRIPTION: Disables the specified BASIC command.
  466. ------------------------------------------------------------
  467. SYNTAX: OPTION DISABLE FUNCTION name$
  468. DESCRIPTION: Disables the specified BASIC function.
  469. ------------------------------------------------------------
  470. SYNTAX: OPTION DISABLE OPERATOR name$
  471. DESCRIPTION: Disables the specified BASIC operator.
  472. ------------------------------------------------------------
  473. SYNTAX: OPTION EDIT string$
  474. DESCRIPTION: Sets the program name used by the EDIT
  475. command.
  476. ------------------------------------------------------------
  477. SYNTAX: OPTION ENABLE
  478. DESCRIPTION: Syntax Error.
  479. ------------------------------------------------------------
  480. SYNTAX: OPTION ENABLE COMMAND name$
  481. DESCRIPTION: Enables the specified BASIC command.
  482. ------------------------------------------------------------
  483. SYNTAX: OPTION ENABLE FUNCTION name$
  484. DESCRIPTION: Enables the specified BASIC function.
  485. ------------------------------------------------------------
  486. SYNTAX: OPTION ENABLE OPERATOR name$
  487. DESCRIPTION: Enables the specified BASIC operator.
  488. ------------------------------------------------------------
  489. SYNTAX: OPTION ERROR
  490. DESCRIPTION: Syntax Error.
  491. ------------------------------------------------------------
  492. SYNTAX: OPTION ERROR GOSUB
  493. DESCRIPTION: When an error occurs, GOSUB to the error
  494. handler. The error handler exits with
  495. RETURN.
  496. ------------------------------------------------------------
  497. SYNTAX: OPTION ERROR GOTO
  498. DESCRIPTION: When an error occurs, GOTO to the error
  499. handler. The error handler exits with
  500. RESUME.
  501. ------------------------------------------------------------
  502. SYNTAX: OPTION EXPLICIT
  503. DESCRIPTION: All variables must be declared using DIM.
  504. ------------------------------------------------------------
  505. SYNTAX: OPTION EXTENSION string$
  506. DESCRIPTION: Sets the BASIC filename extension, commonly
  507. ".bas".
  508. ------------------------------------------------------------
  509. SYNTAX: OPTION FILES string$
  510. DESCRIPTION: Sets the program name used by the FILES
  511. command.
  512. ------------------------------------------------------------
  513. SYNTAX: OPTION IMPLICIT
  514. DESCRIPTION: Variables need not be declared using DIM,
  515. provided arrays have no more that 10
  516. elements. This is the opposite of OPTION
  517. EXPLICIT, and is the default for all versions
  518. of BASIC.
  519. ------------------------------------------------------------
  520. SYNTAX: OPTION INDENT integer
  521. DESCRIPTION: Sets indention level for LIST. Zero means no
  522. indention. Default is 2.
  523. ------------------------------------------------------------
  524. SYNTAX: OPTION LABELS
  525. DESCRIPTION: Syntax Error.
  526. ------------------------------------------------------------
  527. SYNTAX: OPTION LABELS OFF
  528. DESCRIPTION: Disables text labels.
  529. ------------------------------------------------------------
  530. SYNTAX: OPTION LABELS ON
  531. DESCRIPTION: Enables text labels.
  532. ------------------------------------------------------------
  533. SYNTAX: OPTION PROMPT string$
  534. DESCRIPTION: Sets the BASIC prompt.
  535. ------------------------------------------------------------
  536. SYNTAX: OPTION PUNCT
  537. DESCRIPTION: Syntax Error.
  538. ------------------------------------------------------------
  539. SYNTAX: OPTION PUNCT AT char$
  540. DESCRIPTION: Sets the PRINT AT character, commonly "@".
  541. ------------------------------------------------------------
  542. SYNTAX: OPTION PUNCT BYTE char$
  543. DESCRIPTION: Sets the suffix character that indicates a
  544. variable is of type BYTE, commonly "~".
  545. ------------------------------------------------------------
  546. SYNTAX: OPTION PUNCT COMMENT char$
  547. DESCRIPTION: Sets the shortcut COMMENT character.
  548. ------------------------------------------------------------
  549. SYNTAX: OPTION PUNCT CURRENCY char$
  550. DESCRIPTION: Sets the suffix character that indicates a
  551. variable is of type CURRENCY, commonly "@".
  552. ------------------------------------------------------------
  553. SYNTAX: OPTION PUNCT DOUBLE char$
  554. DESCRIPTION: Sets the suffix character that indicates a
  555. variable is of type DOUBLE, commonly "#".
  556. ------------------------------------------------------------
  557. SYNTAX: OPTION PUNCT FILENUM char$
  558. DESCRIPTION: Sets the FILE NUMBER prefix character,
  559. commonly "#".
  560. ------------------------------------------------------------
  561. SYNTAX: OPTION PUNCT IMAGE char$
  562. DESCRIPTION: Sets the shortcut IMAGE character, commonly
  563. ":".
  564. ------------------------------------------------------------
  565. SYNTAX: OPTION PUNCT INPUT char$
  566. DESCRIPTION: Sets the shortcut INPUT character, commonly
  567. "!".
  568. ------------------------------------------------------------
  569. SYNTAX: OPTION PUNCT INTEGER char$
  570. DESCRIPTION: Sets the suffix character that indicates a
  571. variable is of type INTEGER, commonly "%".
  572. ------------------------------------------------------------
  573. SYNTAX: OPTION PUNCT LONG char$
  574. DESCRIPTION: Sets the suffix character that indicates a
  575. variable is of type LONG, commonly "&".
  576. ------------------------------------------------------------
  577. SYNTAX: OPTION PUNCT LPAREN char$
  578. DESCRIPTION: Sets the LEFT PARENTHESIS character, commonly
  579. "(".
  580. ------------------------------------------------------------
  581. SYNTAX: OPTION PUNCT_PRINT char$
  582. DESCRIPTION: Sets the shortcut PRINT character, commonly
  583. "?".
  584. ------------------------------------------------------------
  585. SYNTAX: OPTION PUNCT QUOTE char$
  586. DESCRIPTION: Sets the QUOTE character, commonly """
  587. ------------------------------------------------------------
  588. SYNTAX: OPTION PUNCT RPAREN char$
  589. DESCRIPTION: Sets the RIGHT PARENTHESIS character, commonly
  590. ")".
  591. ------------------------------------------------------------
  592. SYNTAX: OPTION PUNCT SINGLE char$
  593. DESCRIPTION: Sets the suffix character that indicates a
  594. variable is of type SINGLE, commonly "!".
  595. ------------------------------------------------------------
  596. SYNTAX: OPTION PUNCT STATEMENT char$
  597. DESCRIPTION: Sets the statement seperator character,
  598. commonly ":".
  599. ------------------------------------------------------------
  600. SYNTAX: OPTION PUNCT STRING char$
  601. DESCRIPTION: Sets the suffix character that indicates a
  602. variable is of type STRING, commonly "$".
  603. ------------------------------------------------------------
  604. SYNTAX: OPTION RECLEN integer
  605. DESCRIPTION: Sets the default RANDOM record length.
  606. ------------------------------------------------------------
  607. SYNTAX: OPTION RENUM string$
  608. DESCRIPTION: Sets the program name used by the RENUM
  609. command.
  610. ------------------------------------------------------------
  611. SYNTAX: OPTION ROUND
  612. DESCRIPTION: Syntax Error.
  613. ------------------------------------------------------------
  614. SYNTAX: OPTION ROUND BANK
  615. DESCRIPTION: Round using the Banker rule.
  616. ------------------------------------------------------------
  617. SYNTAX: OPTION ROUND MATH
  618. DESCRIPTION: Round using mathematical rules.
  619. ------------------------------------------------------------
  620. SYNTAX: OPTION ROUND TRUNCATE
  621. DESCRIPTION: Round using truncation.
  622. ------------------------------------------------------------
  623. SYNTAX: OPTION SCALE integer
  624. DESCRIPTION: Sets the number of digits to round after the
  625. decimal point for PRINT. Setting the value
  626. to zero disables rounding.
  627. ------------------------------------------------------------
  628. SYNTAX: OPTION SLEEP double
  629. DESCRIPTION: Sets multiplier for SLEEP and WAIT. Zero
  630. means no waiting. Default is 1.
  631. ------------------------------------------------------------
  632. SYNTAX: OPTION STDERR filename$
  633. DESCRIPTION: Sets the file used for STDERR, which is used
  634. by LPRINT commands.
  635. ------------------------------------------------------------
  636. SYNTAX: OPTION STDIN filename$
  637. DESCRIPTION: Sets the file used for STDIN, which is used by
  638. INPUT commands.
  639. ------------------------------------------------------------
  640. SYNTAX: OPTION STDOUT filename$
  641. DESCRIPTION: Sets the file used for STDOUT, which is used
  642. by PRINT commands.
  643. ------------------------------------------------------------
  644. SYNTAX: OPTION STRICT
  645. DESCRIPTION: Syntax Error.
  646. ------------------------------------------------------------
  647. SYNTAX: OPTION STRICT OFF
  648. DESCRIPTION: Disables checking for implicit array creation
  649. without using the DIM command.
  650. ------------------------------------------------------------
  651. SYNTAX: OPTION STRICT ON
  652. DESCRIPTION: Enables checking for implicit array creation
  653. without using the DIM command.
  654. ------------------------------------------------------------
  655. SYNTAX: OPTION TERMINAL
  656. DESCRIPTION: Syntax Error.
  657. ------------------------------------------------------------
  658. SYNTAX: OPTION TERMINAL ADM
  659. DESCRIPTION: Enables ADM-3A terminal control codes for CLS,
  660. COLOR, and LOCATE.
  661. ------------------------------------------------------------
  662. SYNTAX: OPTION TERMINAL ANSI
  663. DESCRIPTION: Enables ANSI terminal control codes for CLS,
  664. COLOR, and LOCATE.
  665. ------------------------------------------------------------
  666. SYNTAX: OPTION TERMINAL NONE
  667. DESCRIPTION: Disables terminal control codes for CLS,
  668. COLOR, and LOCATE.
  669. ------------------------------------------------------------
  670. SYNTAX: OPTION TIME format$
  671. DESCRIPTION: Sets the time format string used by C
  672. strftime() for TIME$.
  673. ------------------------------------------------------------
  674. SYNTAX: OPTION TRACE
  675. DESCRIPTION: Syntax Error.
  676. ------------------------------------------------------------
  677. SYNTAX: OPTION TRACE OFF
  678. DESCRIPTION: Disables displaying a stack trace when an
  679. ERROR occurs.
  680. ------------------------------------------------------------
  681. SYNTAX: OPTION TRACE ON
  682. DESCRIPTION: Enables displaying a stack trace when an ERROR
  683. occurs.
  684. ------------------------------------------------------------
  685. SYNTAX: OPTION USING
  686. DESCRIPTION: Syntax Error.
  687. ------------------------------------------------------------
  688. SYNTAX: OPTION USING ALL char$
  689. DESCRIPTION: Specifies the magic ALL character for the
  690. PRINT USING command. A common value is "&".
  691. ------------------------------------------------------------
  692. SYNTAX: OPTION USING COMMA char$
  693. DESCRIPTION: Specifies the magic COMMA character for the
  694. PRINT USING command. A common value is ",".
  695. ------------------------------------------------------------
  696. SYNTAX: OPTION USING DIGIT char$
  697. DESCRIPTION: Specifies the magic DIGIT character for the
  698. PRINT USING command. A common value is "#".
  699. ------------------------------------------------------------
  700. SYNTAX: OPTION USING DOLLAR char$
  701. DESCRIPTION: Specifies the magic DOLLAR character for the
  702. PRINT USING command. A common value is "$".
  703. ------------------------------------------------------------
  704. SYNTAX: OPTION USING EXRAD char$
  705. DESCRIPTION: Specifies the magic EXRAD character for the
  706. PRINT USING command. A common value is "^".
  707. ------------------------------------------------------------
  708. SYNTAX: OPTION USING FILLER char$
  709. DESCRIPTION: Specifies the magic FILLER character for the
  710. PRINT USING command. A common value is "*".
  711. ------------------------------------------------------------
  712. SYNTAX: OPTION USING FIRST char$
  713. DESCRIPTION: Specifies the magic FIRST character for the
  714. PRINT USING command. A common value is "!".
  715. ------------------------------------------------------------
  716. SYNTAX: OPTION USING LENGTH char$
  717. DESCRIPTION: Specifies the magic LENGTH character for the
  718. PRINT USING command. A common value is "\".
  719. ------------------------------------------------------------
  720. SYNTAX: OPTION USING LITERAL char$
  721. DESCRIPTION: Specifies the magic LITERAL character for the
  722. PRINT USING command. A common value is "_".
  723. ------------------------------------------------------------
  724. SYNTAX: OPTION USING MINUS char$
  725. DESCRIPTION: Specifies the magic MINUS character for the
  726. PRINT USING command. A common value is "-".
  727. ------------------------------------------------------------
  728. SYNTAX: OPTION USING PERIOD char$
  729. DESCRIPTION: Specifies the magic PERIOD character for the
  730. PRINT USING command. A common value is ".".
  731. ------------------------------------------------------------
  732. SYNTAX: OPTION USING PLUS char$
  733. DESCRIPTION: Specifies the magic PLUS character for the
  734. PRINT USING command. A common value is "+".
  735. ------------------------------------------------------------
  736. SYNTAX: OPTION VERSION version$
  737. DESCRIPTION: Selects a specific BASIC version, which is a
  738. combination of OPTION settings, commands,
  739. functions and operators. If no version is
  740. specified, displays a list of the available
  741. versions.
  742. ------------------------------------------------------------
  743. SYNTAX: OPTION ZONE integer
  744. DESCRIPTION: Sets the PRINT zone width. Setting the value
  745. to zero restores the default.
  746. ------------------------------------------------------------
  747. SYNTAX: PRINT # filenum , [USING format$;] value ...
  748. DESCRIPTION: Sends output to a file.
  749. ------------------------------------------------------------
  750. SYNTAX: PRINT [USING format$;] value ...
  751. DESCRIPTION: Sends output to the screen.
  752. ------------------------------------------------------------
  753. SYNTAX: READ variable [, ...]
  754. DESCRIPTION: Reads values from DATA statements.
  755. ------------------------------------------------------------
  756. SYNTAX: REM ...
  757. DESCRIPTION: Remark.
  758. ------------------------------------------------------------
  759. SYNTAX: RENUM
  760. DESCRIPTION: Implementation defined.
  761. ------------------------------------------------------------
  762. SYNTAX: RENUMBER
  763. DESCRIPTION: Implementation defined.
  764. ------------------------------------------------------------
  765. SYNTAX: RESTORE [line]
  766. DESCRIPTION: Resets the line used for the next READ
  767. statement. line may be either a number or a
  768. label.
  769. ------------------------------------------------------------
  770. SYNTAX: RESUME
  771. DESCRIPTION: Used in an error handler to specify the next
  772. line to execute. Branch to ERL.
  773. ------------------------------------------------------------
  774. SYNTAX: RESUME line
  775. DESCRIPTION: Used in an error handler to specify the next
  776. line to execute. Branch to the specified
  777. line.
  778. ------------------------------------------------------------
  779. SYNTAX: RESUME NEXT
  780. DESCRIPTION: Used in an error handler to specify the next
  781. line to execute. Branch to the line after
  782. ERL.
  783. ------------------------------------------------------------
  784. SYNTAX: RESUME 0
  785. DESCRIPTION: Used in an error handler to specify the next
  786. line to execute. Branch to ERL.
  787. ------------------------------------------------------------
  788. SYNTAX: RETURN
  789. DESCRIPTION: Concludes a subroutine called by GOSUB.
  790. ------------------------------------------------------------
  791. SYNTAX: RUN filename$
  792. DESCRIPTION: Loads a new BAASIC program and executes the
  793. program from the start.
  794. ------------------------------------------------------------
  795. SYNTAX: RUN line
  796. DESCRIPTION: Executes the program in memory beginning at
  797. line.
  798. ------------------------------------------------------------
  799. SYNTAX: RUN
  800. DESCRIPTION: Executes the program in memory from the start.
  801. ------------------------------------------------------------
  802. SYNTAX: SAVE [filename$]
  803. DESCRIPTION: Saves the current program into the file
  804. filename$ in ASCII format.
  805. ------------------------------------------------------------
  806. SYNTAX: STEP
  807. DESCRIPTION: Syntax Error.
  808. ------------------------------------------------------------
  809. SYNTAX: STOP
  810. DESCRIPTION: Interrupts program execution and displays the
  811. line number of the STOP command. For use
  812. when debugging BASIC programs. Whether STOP
  813. issues a SIGINT signal is implementation
  814. defined.
  815. ------------------------------------------------------------
  816. SYNTAX: SYSTEM
  817. DESCRIPTION: Exits to the operating system.
  818. ------------------------------------------------------------
  819. SYNTAX: TEXT letter[-letter] [, ...]
  820. DESCRIPTION: Declares variables with single-letter names as
  821. string variables.
  822. ------------------------------------------------------------
  823. SYNTAX: THEN
  824. DESCRIPTION: Syntax Error.
  825. ------------------------------------------------------------
  826. SYNTAX: TO
  827. DESCRIPTION: Syntax Error.
  828. ------------------------------------------------------------
  829. SYNTAX: TRACE
  830. DESCRIPTION: Enables tracing.
  831. ------------------------------------------------------------
  832. SYNTAX: TRACE OFF
  833. DESCRIPTION: Disables tracing.
  834. ------------------------------------------------------------
  835. SYNTAX: TRACE ON
  836. DESCRIPTION: Enables tracing.
  837. ------------------------------------------------------------
  838. SYNTAX: WEND
  839. DESCRIPTION: Bottom of a WHILE - WEND structure.
  840. ------------------------------------------------------------
  841. SYNTAX: WHILE value
  842. DESCRIPTION: Top of a WHILE - WEND structure. If the value
  843. is non-zero, then the loop is terminated.
  844. ------------------------------------------------------------
  845. ============================================================
  846. FUNCTIONS
  847. ============================================================
  848. ------------------------------------------------------------
  849. SYNTAX: N = ABS( X )
  850. PARAMETER: X is a number
  851. DESCRIPTION: The absolute value of X.
  852. ------------------------------------------------------------
  853. SYNTAX: N = ARCTAN( X )
  854. PARAMETER: X is a number
  855. DESCRIPTION: The arctangent of X in radians, i.e. the angle
  856. whose tangent is X, where -PI/2 < ARCTAN(X) <
  857. PI/2.
  858. ------------------------------------------------------------
  859. SYNTAX: N = ASC( A$ )
  860. PARAMETER: A$ is a string, LEN >= 1
  861. DESCRIPTION: The numeric code for the first letter in A$.
  862. For example, ASC("ABC") returns 65 on ASCII
  863. systems.
  864. ------------------------------------------------------------
  865. SYNTAX: N = ASC( A$, X )
  866. PARAMETER: A$ is a string, LEN >= 1
  867. PARAMETER: X is a number, [1,MAXLEN]
  868. DESCRIPTION: The numeric code of the Xth character in A$.
  869. Same as ASC(MID$(A$,X)).
  870. ------------------------------------------------------------
  871. SYNTAX: N = ASN( X )
  872. PARAMETER: X is a number
  873. DESCRIPTION: The arcsine of X in radians, where -PI/2 <=
  874. ASN(X) <= PI/2; X shall be in the range -1 <=
  875. X <= 1.
  876. ------------------------------------------------------------
  877. SYNTAX: N = ATAN( X )
  878. PARAMETER: X is a number
  879. DESCRIPTION: The arctangent of X in radians, i.e. the angle
  880. whose tangent is X, where -PI/2 < ATAN(X) <
  881. PI/2.
  882. ------------------------------------------------------------
  883. SYNTAX: N = ATN( X )
  884. PARAMETER: X is a number
  885. DESCRIPTION: The arctangent of X in radians, i.e. the angle
  886. whose tangent is X, where -PI/2 < ATN(X) <
  887. PI/2.
  888. ------------------------------------------------------------
  889. SYNTAX: N = CDBL( X )
  890. PARAMETER: X is a number, [MINDBL,MAXDBL]
  891. DESCRIPTION: The double-precision value of X.
  892. ------------------------------------------------------------
  893. SYNTAX: S$ = CHAR( X, Y )
  894. PARAMETER: X is a number, [0,255]
  895. PARAMETER: Y is a number, [0,MAXLEN]
  896. DESCRIPTION: The string Y bytes long consisting of CHR$(X).
  897. Same as STRING$(Y,X).
  898. ------------------------------------------------------------
  899. SYNTAX: S$ = CHAR$( X )
  900. PARAMETER: X is a number, [0,255]
  901. DESCRIPTION: The one-character string with the character
  902. corresponding to the numeric code X. On
  903. ASCII systems, CHAR$(65) returns "A".
  904. ------------------------------------------------------------
  905. SYNTAX: S$ = CHR( X )
  906. PARAMETER: X is a number
  907. DESCRIPTION: The one-character string with the character
  908. corresponding to the numeric code X. On
  909. ASCII systems, CHR(65) returns "A".
  910. ------------------------------------------------------------
  911. SYNTAX: S$ = CHR$( X )
  912. PARAMETER: X is a number, [0,255]
  913. DESCRIPTION: The one-character string with the character
  914. corresponding to the numeric code X. On
  915. ASCII systems, CHR$(65) returns "A".
  916. ------------------------------------------------------------
  917. SYNTAX: N = CINT( X )
  918. PARAMETER: X is a number, [MININT,MAXINT]
  919. DESCRIPTION: The short (16-bit) integer value of X.
  920. ------------------------------------------------------------
  921. SYNTAX: N = CLG( X )
  922. PARAMETER: X is a number, > 0
  923. DESCRIPTION: The common logarithm of X; X shall be greater
  924. than zero.
  925. ------------------------------------------------------------
  926. SYNTAX: S$ = CLK( X )
  927. PARAMETER: X is a number
  928. DESCRIPTION: The time of day in 24-hour notation according
  929. to ISO 3307. For example, the value of CLK
  930. at 11:15 AM is "11:15:00". If there is no
  931. clock available, then the value of CLK shall
  932. be "99:99:99". The value of TIME$ at
  933. midnight is "00:00:00". The value of
  934. parameter X is ignored.
  935. ------------------------------------------------------------
  936. SYNTAX: S$ = CLK$
  937. DESCRIPTION: The time of day in 24-hour notation according
  938. to ISO 3307. For example, the value of TIME$
  939. at 11:15 AM is "11:15:00". If there is no
  940. clock available, then the value of TIME$
  941. shall be "99:99:99". The value of TIME$ at
  942. midnight is "00:00:00".
  943. ------------------------------------------------------------
  944. SYNTAX: N = CLOG( X )
  945. PARAMETER: X is a number, > 0
  946. DESCRIPTION: The common logarithm of X; X shall be greater
  947. than zero.
  948. ------------------------------------------------------------
  949. SYNTAX: N = CLS
  950. DESCRIPTION: Clears the screen. Cursor is positioned at row
  951. 1, column 1.
  952. ------------------------------------------------------------
  953. SYNTAX: N = COS( X )
  954. PARAMETER: X is a number
  955. DESCRIPTION: The cosine of X, where X is in radians.
  956. ------------------------------------------------------------
  957. SYNTAX: N = CSNG( X )
  958. PARAMETER: X is a number, [MINFLT,MAXFLT]
  959. DESCRIPTION: The single-precision value of X.
  960. ------------------------------------------------------------
  961. SYNTAX: N = DEG
  962. DESCRIPTION: Configures the math functions to accept and
  963. return angles in degrees.
  964. ------------------------------------------------------------
  965. SYNTAX: N = DEG( X )
  966. PARAMETER: X is a number
  967. DESCRIPTION: The number of degrees in X radians.
  968. ------------------------------------------------------------
  969. SYNTAX: N = ERL
  970. DESCRIPTION: The line number of the most recent error.
  971. ------------------------------------------------------------
  972. SYNTAX: N = ERR
  973. DESCRIPTION: The error number of the most recent error.
  974. ------------------------------------------------------------
  975. SYNTAX: N = ERROR( X )
  976. PARAMETER: X is a number, [0,255]
  977. DESCRIPTION: Simulate the error number in X.
  978. ------------------------------------------------------------
  979. SYNTAX: N = ERROR( X, A$ )
  980. PARAMETER: X is a number, [0,255]
  981. PARAMETER: A$ is a string, LEN >= 0
  982. DESCRIPTION: Simulate the error number in X, with a custom
  983. message in A$.
  984. ------------------------------------------------------------
  985. SYNTAX: N = EXAM( X )
  986. PARAMETER: X is a number, [MINLNG,MAXLNG]
  987. DESCRIPTION: The value read from hardware address X.
  988. Causes ERROR 73.
  989. ------------------------------------------------------------
  990. SYNTAX: N = EXP( X )
  991. PARAMETER: X is a number
  992. DESCRIPTION: The exponential value of X, i.e., the value of
  993. the base of natural logarithms (e = 2.71828)
  994. raised to the power of X; if EXP(X) is less
  995. that machine infinitesimal, then its value
  996. shall be replaced with zero.
  997. ------------------------------------------------------------
  998. SYNTAX: N = FETCH( X )
  999. PARAMETER: X is a number, [MINLNG,MAXLNG]
  1000. DESCRIPTION: The value read from hardware address X.
  1001. Causes ERROR 73.
  1002. ------------------------------------------------------------
  1003. SYNTAX: N = FILL( X, Y )
  1004. PARAMETER: X is a number, [MINLNG,MAXLNG]
  1005. PARAMETER: Y is a number, [0,255]
  1006. DESCRIPTION: Sends Y to hardware address X. Causes ERROR
  1007. 73.
  1008. ------------------------------------------------------------
  1009. SYNTAX: N = FIX( X )
  1010. PARAMETER: X is a number
  1011. DESCRIPTION: The truncated integer, part of X. FIX (X) is
  1012. equivalent to SGN(X)*INT(ABS(X)). The major
  1013. difference between FIX and INT is that FIX
  1014. does not return the next lower number for
  1015. negative X.
  1016. ------------------------------------------------------------
  1017. SYNTAX: N = FRE
  1018. DESCRIPTION: The number of bytes of available memory. This
  1019. function is provided for backward
  1020. compatibility only and it always returns a
  1021. fixed value of 32000.
  1022. ------------------------------------------------------------
  1023. SYNTAX: N = FRE( A$ )
  1024. PARAMETER: A$ is a string, LEN >= 0
  1025. DESCRIPTION: The number of bytes of available memory. This
  1026. function is provided for backward
  1027. compatibility only and it always returns a
  1028. fixed value of 32000.The value of A$ is
  1029. ignored.
  1030. ------------------------------------------------------------
  1031. SYNTAX: N = FRE( X )
  1032. PARAMETER: X is a number
  1033. DESCRIPTION: The number of bytes of available memory. This
  1034. function is provided for backward
  1035. compatibility only and it always returns a
  1036. fixed value of 32000. The value of X is
  1037. ignored.
  1038. ------------------------------------------------------------
  1039. SYNTAX: N = FREE
  1040. DESCRIPTION: The number of bytes of available memory. This
  1041. function is provided for backward
  1042. compatibility only and it always returns a
  1043. fixed value of 32000.
  1044. ------------------------------------------------------------
  1045. SYNTAX: N = FREE( X )
  1046. PARAMETER: X is a number
  1047. DESCRIPTION: The number of bytes of available memory. This
  1048. function is provided for backward
  1049. compatibility only and it always returns a
  1050. fixed value of 32000. The value of X is
  1051. ignored.
  1052. ------------------------------------------------------------
  1053. SYNTAX: N = FREE( A$ )
  1054. PARAMETER: A$ is a string, LEN >= 0
  1055. DESCRIPTION: The number of bytes of available memory. This
  1056. function is provided for backward
  1057. compatibility only and it always returns a
  1058. fixed value of 32000.The value of A$ is
  1059. ignored.
  1060. ------------------------------------------------------------
  1061. SYNTAX: N = HOME
  1062. DESCRIPTION: Clears the screen. Cursor is positioned at row
  1063. 1, column 1.
  1064. ------------------------------------------------------------
  1065. SYNTAX: S$ = INKEY$
  1066. DESCRIPTION: The keypress, if available. If a keypress is
  1067. not available, then immediately returns an
  1068. empty string. If not supported by the
  1069. platform, then always returns an empty
  1070. string, so use INPUT$(1) instead.
  1071. ------------------------------------------------------------
  1072. SYNTAX: N = INP( X )
  1073. PARAMETER: X is a number, [0,255]
  1074. DESCRIPTION: The value read from machine port X. Causes
  1075. ERROR 73.
  1076. ------------------------------------------------------------
  1077. SYNTAX: N = INT( X )
  1078. PARAMETER: X is a number
  1079. DESCRIPTION: The largest integer not greater than X; e.g.
  1080. INT(1.3) = 1 and INT(-1.3) = 2.
  1081. ------------------------------------------------------------
  1082. SYNTAX: S$ = LEFT( A$, X )
  1083. PARAMETER: A$ is a string, LEN >= 0
  1084. PARAMETER: X is a number, [0,MAXLEN]
  1085. DESCRIPTION: The X left-most characters of A$, beginning
  1086. from postion 1.
  1087. ------------------------------------------------------------
  1088. SYNTAX: S$ = LEFT$( A$, X )
  1089. PARAMETER: A$ is a string, LEN >= 0
  1090. PARAMETER: X is a number, [0,MAXLEN]
  1091. DESCRIPTION: The X left-most characters of A$, beginning
  1092. from postion 1.
  1093. ------------------------------------------------------------
  1094. SYNTAX: N = LEN( A$ )
  1095. PARAMETER: A$ is a string, LEN >= 0
  1096. DESCRIPTION: The length of A$.
  1097. ------------------------------------------------------------
  1098. SYNTAX: N = LGT( X )
  1099. PARAMETER: X is a number, > 0
  1100. DESCRIPTION: The common logarithm of X; X shall be greater
  1101. than zero.
  1102. ------------------------------------------------------------
  1103. SYNTAX: S$ = LIN( X )
  1104. PARAMETER: X is a number, [0,MAXLEN]
  1105. DESCRIPTION: The string X bytes long of newline characters.
  1106. ------------------------------------------------------------
  1107. SYNTAX: N = LN( X )
  1108. PARAMETER: X is a number, > 0
  1109. DESCRIPTION: The natural logarithm of X; X shall be greater
  1110. than zero.
  1111. ------------------------------------------------------------
  1112. SYNTAX: N = LOG( X )
  1113. PARAMETER: X is a number, > 0
  1114. DESCRIPTION: The natural logarithm of X; X shall be greater
  1115. than zero.
  1116. ------------------------------------------------------------
  1117. SYNTAX: N = LOG10( X )
  1118. PARAMETER: X is a number, > 0
  1119. DESCRIPTION: The common logarithm of X; X shall be greater
  1120. than zero.
  1121. ------------------------------------------------------------
  1122. SYNTAX: N = LOGE( X )
  1123. PARAMETER: X is a number, > 0
  1124. DESCRIPTION: The natural logarithm of X; X shall be greater
  1125. than zero.
  1126. ------------------------------------------------------------
  1127. SYNTAX: N = MEM
  1128. DESCRIPTION: The number of bytes of available memory. This
  1129. function is provided for backward
  1130. compatibility only and it always returns a
  1131. fixed value of 32000.
  1132. ------------------------------------------------------------
  1133. SYNTAX: S$ = MID( A$, X )
  1134. PARAMETER: A$ is a string, LEN >= 0
  1135. PARAMETER: X is a number, [1,MAXLEN]
  1136. DESCRIPTION: The characters of A$, starting from postion X.
  1137. ------------------------------------------------------------
  1138. SYNTAX: S$ = MID( A$, X, Y )
  1139. PARAMETER: A$ is a string, LEN >= 0
  1140. PARAMETER: X is a number, [1,MAXLEN]
  1141. PARAMETER: Y is a number, [0,MAXLEN]
  1142. DESCRIPTION: The Y characters of A$, starting from postion
  1143. X.
  1144. ------------------------------------------------------------
  1145. SYNTAX: S$ = MID$( A$, X )
  1146. PARAMETER: A$ is a string, LEN >= 0
  1147. PARAMETER: X is a number, [1,MAXLEN]
  1148. DESCRIPTION: The characters of A$, starting from postion X.
  1149. ------------------------------------------------------------
  1150. SYNTAX: S$ = MID$( A$, X, Y )
  1151. PARAMETER: A$ is a string, LEN >= 0
  1152. PARAMETER: X is a number, [1,MAXLEN]
  1153. PARAMETER: Y is a number, [0,MAXLEN]
  1154. DESCRIPTION: The Y characters of A$, starting from postion
  1155. X.
  1156. ------------------------------------------------------------
  1157. SYNTAX: N = NOTRACE
  1158. DESCRIPTION: Turn tracing OFF
  1159. ------------------------------------------------------------
  1160. SYNTAX: S$ = NUM$( X )
  1161. PARAMETER: X is a number
  1162. DESCRIPTION: The string generated by the print-statement as
  1163. the numeric-representation of the value
  1164. associated with X.
  1165. ------------------------------------------------------------
  1166. SYNTAX: N = OUT( X, Y )
  1167. PARAMETER: X is a number, [MININT,MAXINT]
  1168. PARAMETER: Y is a number, [0,255]
  1169. DESCRIPTION: Sends Y to hardware port X. Causes ERROR 73.
  1170. ------------------------------------------------------------
  1171. SYNTAX: N = PDL( X )
  1172. PARAMETER: X is a number, [0,255]
  1173. DESCRIPTION: The value read from machine port X. Causes
  1174. ERROR 73.
  1175. ------------------------------------------------------------
  1176. SYNTAX: N = PEEK( X )
  1177. PARAMETER: X is a number, [MINLNG,MAXLNG]
  1178. DESCRIPTION: The value read from hardware address X.
  1179. Causes ERROR 73.
  1180. ------------------------------------------------------------
  1181. SYNTAX: N = PI
  1182. DESCRIPTION: The constant 3.14159 which is the ratio of the
  1183. circumference of a circle to its diameter.
  1184. ------------------------------------------------------------
  1185. SYNTAX: N = PIN( X )
  1186. PARAMETER: X is a number, [0,255]
  1187. DESCRIPTION: The value read from machine port X. Causes
  1188. ERROR 73.
  1189. ------------------------------------------------------------
  1190. SYNTAX: N = POKE( X, Y )
  1191. PARAMETER: X is a number, [MINLNG,MAXLNG]
  1192. PARAMETER: Y is a number, [0,255]
  1193. DESCRIPTION: Sends Y to hardware address X. Causes ERROR
  1194. 73.
  1195. ------------------------------------------------------------
  1196. SYNTAX: N = RAD
  1197. DESCRIPTION: Configures the math functions to accept and
  1198. return angles in radians.
  1199. ------------------------------------------------------------
  1200. SYNTAX: N = RADIAN
  1201. DESCRIPTION: Configures the math functions to accept and
  1202. return angles in radians.
  1203. ------------------------------------------------------------
  1204. SYNTAX: N = RAN
  1205. DESCRIPTION: Seeds the pseudo-random number generator with
  1206. TIME.
  1207. ------------------------------------------------------------
  1208. SYNTAX: N = RAN( X )
  1209. PARAMETER: X is a number
  1210. DESCRIPTION: Seeds the pseudo-random number generator with
  1211. X.
  1212. ------------------------------------------------------------
  1213. SYNTAX: N = RANDOM
  1214. DESCRIPTION: Seeds the pseudo-random number generator with
  1215. TIME.
  1216. ------------------------------------------------------------
  1217. SYNTAX: N = RANDOM( X )
  1218. PARAMETER: X is a number
  1219. DESCRIPTION: Seeds the pseudo-random number generator with
  1220. X.
  1221. ------------------------------------------------------------
  1222. SYNTAX: N = RANDOMIZE
  1223. DESCRIPTION: Seeds the pseudo-random number generator with
  1224. TIME.
  1225. ------------------------------------------------------------
  1226. SYNTAX: N = RANDOMIZE( X )
  1227. PARAMETER: X is a number
  1228. DESCRIPTION: Seeds the pseudo-random number generator with
  1229. X.
  1230. ------------------------------------------------------------
  1231. SYNTAX: N = RESET
  1232. DESCRIPTION: Close all open files.
  1233. ------------------------------------------------------------
  1234. SYNTAX: S$ = RIGHT( A$, X )
  1235. PARAMETER: A$ is a string, LEN >= 0
  1236. PARAMETER: X is a number, [0,MAXLEN]
  1237. DESCRIPTION: The right-most X characters of A$.
  1238. ------------------------------------------------------------
  1239. SYNTAX: S$ = RIGHT$( A$, X )
  1240. PARAMETER: A$ is a string, LEN >= 0
  1241. PARAMETER: X is a number, [0,MAXLEN]
  1242. DESCRIPTION: The right-most X characters of A$.
  1243. ------------------------------------------------------------
  1244. SYNTAX: N = RND
  1245. DESCRIPTION: The next pseudo-random number in an
  1246. implementation-defined sequence of
  1247. pseudo-random numbers uniformly distributed
  1248. in the range 0 <= RND < 1.
  1249. ------------------------------------------------------------
  1250. SYNTAX: N = RND( X )
  1251. PARAMETER: X is a number
  1252. DESCRIPTION: Returns a pseudorandom number in the range
  1253. [0,1]. The value of X is ignored.
  1254. ------------------------------------------------------------
  1255. SYNTAX: N = SIN( X )
  1256. PARAMETER: X is a number
  1257. DESCRIPTION: The sine of X, where X is in radians.
  1258. ------------------------------------------------------------
  1259. SYNTAX: N = SLEEP( X )
  1260. PARAMETER: X is a number
  1261. DESCRIPTION: The program pauses for X times the value of
  1262. OPTION SLEEP seconds. If the result is zero,
  1263. negative, or more than INT_MAX then SLEEP
  1264. does nothing. The resolution is
  1265. implementation defined.
  1266. ------------------------------------------------------------
  1267. SYNTAX: S$ = SPA( X )
  1268. PARAMETER: X is a number, [0,MAXLEN]
  1269. DESCRIPTION: The string of X blank spaces.
  1270. ------------------------------------------------------------
  1271. SYNTAX: S$ = SPACE( X )
  1272. PARAMETER: X is a number, [0,MAXLEN]
  1273. DESCRIPTION: The string of X blank spaces.
  1274. ------------------------------------------------------------
  1275. SYNTAX: S$ = SPACE$( X )
  1276. PARAMETER: X is a number, [0,MAXLEN]
  1277. DESCRIPTION: The string of X blank spaces.
  1278. ------------------------------------------------------------
  1279. SYNTAX: S$ = SPC( X )
  1280. PARAMETER: X is a number
  1281. DESCRIPTION: The string of X spaces. Only for use within
  1282. the PRINT command.
  1283. ------------------------------------------------------------
  1284. SYNTAX: N = SQR( X )
  1285. PARAMETER: X is a number, >= 0
  1286. DESCRIPTION: The non-negative square root of X; X shall be
  1287. non-negative.
  1288. ------------------------------------------------------------
  1289. SYNTAX: N = SQRT( X )
  1290. PARAMETER: X is a number, >= 0
  1291. DESCRIPTION: The non-negative square root of X; X shall be
  1292. non-negative.
  1293. ------------------------------------------------------------
  1294. SYNTAX: S$ = STR$( X )
  1295. PARAMETER: X is a number
  1296. DESCRIPTION: The string generated by the print-statement as
  1297. the numeric-representation of the value
  1298. associated with X.
  1299. ------------------------------------------------------------
  1300. SYNTAX: S$ = STRING$( X, A$ )
  1301. PARAMETER: X is a number, [0,MAXLEN]
  1302. PARAMETER: A$ is a string, LEN >= 1
  1303. DESCRIPTION: The string X bytes long consisting of the
  1304. first character of A$.
  1305. ------------------------------------------------------------
  1306. SYNTAX: S$ = STRING$( X, Y )
  1307. PARAMETER: X is a number, [0,MAXLEN]
  1308. PARAMETER: Y is a number, [0,255]
  1309. DESCRIPTION: The string X bytes long consisting of CHR$(Y).
  1310. ------------------------------------------------------------
  1311. SYNTAX: N = STUFF( X, Y )
  1312. PARAMETER: X is a number, [MINLNG,MAXLNG]
  1313. PARAMETER: Y is a number, [0,255]
  1314. DESCRIPTION: Sends Y to hardware address X. Causes ERROR
  1315. 73.
  1316. ------------------------------------------------------------
  1317. SYNTAX: S$ = TAB( X )
  1318. PARAMETER: X is a number
  1319. DESCRIPTION: The string required to advance to column X.
  1320. Only for use within the PRINT command.
  1321. ------------------------------------------------------------
  1322. SYNTAX: N = TAN( X )
  1323. PARAMETER: X is a number
  1324. DESCRIPTION: The tangent of X, where X is in radians.
  1325. ------------------------------------------------------------
  1326. SYNTAX: N = TI
  1327. DESCRIPTION: The time elapsed since the previous midnight,
  1328. expressed in seconds; e.g., the value of TIME
  1329. at 11:15 AM is 40500. If there is no clock
  1330. available, then the value of TIME shall be
  1331. -1. The value of TIME at midnight shall be
  1332. zero (not 86400).
  1333. ------------------------------------------------------------
  1334. SYNTAX: S$ = TI$
  1335. DESCRIPTION: The time of day in 24-hour notation according
  1336. to ISO 3307. For example, the value of TIME$
  1337. at 11:15 AM is "11:15:00". If there is no
  1338. clock available, then the value of TIME$
  1339. shall be "99:99:99". The value of TIME$ at
  1340. midnight is "00:00:00".
  1341. ------------------------------------------------------------
  1342. SYNTAX: N = TIM
  1343. DESCRIPTION: The time elapsed since the previous midnight,
  1344. expressed in seconds; e.g., the value of TIME
  1345. at 11:15 AM is 40500. If there is no clock
  1346. available, then the value of TIME shall be
  1347. -1. The value of TIME at midnight shall be
  1348. zero (not 86400).
  1349. ------------------------------------------------------------
  1350. SYNTAX: N = TIM( X )
  1351. PARAMETER: X is a number, [0,255]
  1352. DESCRIPTION: If X is 0, returns minutes in current hour.
  1353. If X is 1, returns hours in current day. If
  1354. X is 2, returns days in current year. If X
  1355. is 3, returns years since 1900. Any other
  1356. value for X is an ERROR.
  1357. ------------------------------------------------------------
  1358. SYNTAX: N = TIME
  1359. DESCRIPTION: The time elapsed since the previous midnight,
  1360. expressed in seconds; e.g., the value of TIME
  1361. at 11:15 AM is 40500. If there is no clock
  1362. available, then the value of TIME shall be
  1363. -1. The value of TIME at midnight shall be
  1364. zero (not 86400).
  1365. ------------------------------------------------------------
  1366. SYNTAX: N = TIME( X )
  1367. PARAMETER: X is a number
  1368. DESCRIPTION: The time elapsed since the previous midnight,
  1369. expressed in seconds; e.g., the value of TIME
  1370. at 11:15 AM is 40500. If there is no clock
  1371. available, then the value of TIME shall be
  1372. -1. The value of TIME at midnight shall be
  1373. zero (not 86400). The value of the parameter
  1374. X is ignored.
  1375. ------------------------------------------------------------
  1376. SYNTAX: S$ = TIME$
  1377. DESCRIPTION: The time of day in 24-hour notation according
  1378. to ISO 3307. For example, the value of TIME$
  1379. at 11:15 AM is "11:15:00". If there is no
  1380. clock available, then the value of TIME$
  1381. shall be "99:99:99". The value of TIME$ at
  1382. midnight is "00:00:00".
  1383. ------------------------------------------------------------
  1384. SYNTAX: N = TRACE
  1385. DESCRIPTION: Turn tracing ON
  1386. ------------------------------------------------------------
  1387. SYNTAX: N = TROFF
  1388. DESCRIPTION: Turn tracing OFF
  1389. ------------------------------------------------------------
  1390. SYNTAX: N = TRON
  1391. DESCRIPTION: Turn tracing ON
  1392. ------------------------------------------------------------
  1393. SYNTAX: N = VAL( A$ )
  1394. PARAMETER: A$ is a string, LEN >= 1
  1395. DESCRIPTION: The value of the numeric-constant associated
  1396. with A$, if the string associated with A$ is
  1397. a numeric-constant. Leading and trailing
  1398. spaces in the string are ignored. If the
  1399. evaluation of the numeric-constant would
  1400. result in a value which causes an underflow,
  1401. then the value returned shall be zero. For
  1402. example, VAL( " 123.5 " ) = 123.5, VAL(
  1403. "2.E-99" ) could be zero, and VAL( "MCMXVII"
  1404. ) causes an exception.
  1405. ------------------------------------------------------------
  1406. SYNTAX: N = VTAB( X )
  1407. PARAMETER: X is a number, [0,255]
  1408. DESCRIPTION: Savme as LOCATE X, 1.
  1409. ------------------------------------------------------------
  1410. SYNTAX: N = WAIT( X )
  1411. PARAMETER: X is a number
  1412. DESCRIPTION: The program pauses for X times the value of
  1413. OPTION SLEEP seconds. If the result is zero,
  1414. negative, or more than INT_MAX then WAIT does
  1415. nothing. The resolution is implementation
  1416. defined.
  1417. ------------------------------------------------------------
  1418. SYNTAX: N = WAIT( X, Y )
  1419. PARAMETER: X is a number, [MININT,MAXINT]
  1420. PARAMETER: Y is a number, [0,255]
  1421. DESCRIPTION: Waits for the value of (INP(X) AND Y) to
  1422. become nonzero. Causes ERROR 73.
  1423. ------------------------------------------------------------
  1424. SYNTAX: N = WAIT( X, Y, Z )
  1425. PARAMETER: X is a number, [MININT,MAXINT]
  1426. PARAMETER: Y is a number, [0,255]
  1427. PARAMETER: Z is a number, [0,255]
  1428. DESCRIPTION: Waits for the value of ((INP(X) XOR Z) AND Y)
  1429. to become nonzero. Causes ERROR 73.
  1430. ------------------------------------------------------------
  1431. SYNTAX: N = WIDTH( X, Y )
  1432. PARAMETER: X is a number, [MININT,MAXINT]
  1433. PARAMETER: Y is a number, [0,255]
  1434. DESCRIPTION: If X = 0, sets the console width to Y.
  1435. If X < 0, sets the printer width to Y.
  1436. If X is an open file number, sets the file
  1437. line width to Y.
  1438. Otherwise sets the console rows to X and the
  1439. line width to Y.
  1440. A value of zero for Y means no wrapping will
  1441. occur.
  1442. ------------------------------------------------------------
  1443. ============================================================
  1444. OPERATORS
  1445. ============================================================
  1446. ------------------------------------------------------------
  1447. SYNTAX: X ** Y
  1448. DESCRIPTION: Exponential
  1449. PRECEDENCE: 14
  1450. ------------------------------------------------------------
  1451. SYNTAX: X [ Y
  1452. DESCRIPTION: Exponential
  1453. PRECEDENCE: 14
  1454. ------------------------------------------------------------
  1455. SYNTAX: X ^ Y
  1456. DESCRIPTION: Exponential
  1457. PRECEDENCE: 14
  1458. ------------------------------------------------------------
  1459. SYNTAX: # X
  1460. DESCRIPTION: Posation
  1461. PRECEDENCE: 13
  1462. ------------------------------------------------------------
  1463. SYNTAX: + X
  1464. DESCRIPTION: Posation
  1465. PRECEDENCE: 13
  1466. ------------------------------------------------------------
  1467. SYNTAX: - X
  1468. DESCRIPTION: Negation
  1469. PRECEDENCE: 13
  1470. ------------------------------------------------------------
  1471. SYNTAX: X * Y
  1472. DESCRIPTION: Multiplication
  1473. PRECEDENCE: 12
  1474. ------------------------------------------------------------
  1475. SYNTAX: X / Y
  1476. DESCRIPTION: Division
  1477. PRECEDENCE: 12
  1478. ------------------------------------------------------------
  1479. SYNTAX: X \ Y
  1480. DESCRIPTION: Integer Division
  1481. PRECEDENCE: 11
  1482. ------------------------------------------------------------
  1483. SYNTAX: X MOD Y
  1484. DESCRIPTION: Integer Modulus
  1485. PRECEDENCE: 10
  1486. ------------------------------------------------------------
  1487. SYNTAX: X + Y
  1488. DESCRIPTION: Addition
  1489. PRECEDENCE: 9
  1490. ------------------------------------------------------------
  1491. SYNTAX: X - Y
  1492. DESCRIPTION: Subtraction
  1493. PRECEDENCE: 9
  1494. ------------------------------------------------------------
  1495. SYNTAX: X < Y
  1496. DESCRIPTION: Less than
  1497. PRECEDENCE: 7
  1498. ------------------------------------------------------------
  1499. SYNTAX: X <= Y
  1500. DESCRIPTION: Less than or Equal
  1501. PRECEDENCE: 7
  1502. ------------------------------------------------------------
  1503. SYNTAX: X <> Y
  1504. DESCRIPTION: Not Equal
  1505. PRECEDENCE: 7
  1506. ------------------------------------------------------------
  1507. SYNTAX: X = Y
  1508. DESCRIPTION: Equal
  1509. PRECEDENCE: 7
  1510. ------------------------------------------------------------
  1511. SYNTAX: X =< Y
  1512. DESCRIPTION: Less than or Equal
  1513. PRECEDENCE: 7
  1514. ------------------------------------------------------------
  1515. SYNTAX: X => Y
  1516. DESCRIPTION: Greater than or Equal
  1517. PRECEDENCE: 7
  1518. ------------------------------------------------------------
  1519. SYNTAX: X > Y
  1520. DESCRIPTION: Greater than
  1521. PRECEDENCE: 7
  1522. ------------------------------------------------------------
  1523. SYNTAX: X >< Y
  1524. DESCRIPTION: Not Equal
  1525. PRECEDENCE: 7
  1526. ------------------------------------------------------------
  1527. SYNTAX: X >= Y
  1528. DESCRIPTION: Greater than or Equal
  1529. PRECEDENCE: 7
  1530. ------------------------------------------------------------
  1531. SYNTAX: NOT X
  1532. DESCRIPTION: Bitwise NOT
  1533. PRECEDENCE: 6
  1534. ------------------------------------------------------------
  1535. SYNTAX: X AND Y
  1536. DESCRIPTION: Bitwise AND
  1537. PRECEDENCE: 5
  1538. ------------------------------------------------------------
  1539. SYNTAX: X OR Y
  1540. DESCRIPTION: Bitwise OR
  1541. PRECEDENCE: 4
  1542. ------------------------------------------------------------
  1543. SYNTAX: X XOR Y
  1544. DESCRIPTION: Bitwise Exclusive OR
  1545. PRECEDENCE: 3
  1546. ------------------------------------------------------------