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.
 
 
 
 
 
 

878 lines
37 KiB

  1. ============================================================
  2. GENERAL
  3. ============================================================
  4. OPTION VERSION "PDP-8"
  5. REM INTERNAL ID: D73
  6. REM DESCRIPTION: DEC PDP-8 BASIC
  7. REM REFERENCE: DEC 8K BASIC
  8. REM by Digital Equipement Corporation
  9. REM (c) 1973, Digital Equipement Corporation
  10. REM http://bitsavers.trailing-edge.com/pdf/dec/pdp8/basic/
  11. REM DEC-08-LBSMA-A-D_8K_BASIC_Jul73.pdf
  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 ""
  25. OPTION TIME ""
  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: BYE
  60. DESCRIPTION: Exits to the operating system.
  61. ------------------------------------------------------------
  62. SYNTAX: DATA constant [, ...]
  63. DESCRIPTION: Stores numeric and string constants to be
  64. accessed by READ.
  65. ------------------------------------------------------------
  66. SYNTAX: DEF FNname[( arg [,...] )] = value
  67. DESCRIPTION: Defines a single-line function. Single-line
  68. functions require an equal sign.
  69. ------------------------------------------------------------
  70. SYNTAX: DEF FNname[( arg [,...] )]
  71. DESCRIPTION: Defines a multiline function. Multi-line DEF
  72. functions do not have an equal sign and must
  73. end with FNEND.
  74. ------------------------------------------------------------
  75. SYNTAX: DELETE line [- line]
  76. DESCRIPTION: Deletes program lines indicated by the
  77. argument(s). All program lines have a
  78. number, which is visible with the LIST
  79. command. If line numbers are not provided,
  80. they are assigned beginning with 1. Deleting
  81. a non-existing line does not cause an error.
  82. ------------------------------------------------------------
  83. SYNTAX: DIM [# filenum,] variable([ lower TO ] upper)
  84. DESCRIPTION: Declares variables and specifies the
  85. dimensions of array variables. For array
  86. variables, if the lower bound is not
  87. provided, then the OPTION BASE value is used.
  88. If filenum is provided, then the variable is
  89. virtual.
  90. ------------------------------------------------------------
  91. SYNTAX: ELSE
  92. DESCRIPTION: Introduces a default condition in a multi-line
  93. IF statement.
  94. ------------------------------------------------------------
  95. SYNTAX: ELSEIF
  96. DESCRIPTION: Introduces a secondary condition in a
  97. multi-line IF statement.
  98. ------------------------------------------------------------
  99. SYNTAX: END
  100. DESCRIPTION: Terminates program execution. If the BASIC
  101. program was executed from the operating
  102. system level, then control returns to the
  103. operating system, oterwise control reuturns
  104. to the BASIC prompt.
  105. ------------------------------------------------------------
  106. SYNTAX: END IF
  107. DESCRIPTION: Specifies the last line of a multi-line IF
  108. definition.
  109. ------------------------------------------------------------
  110. SYNTAX: FNEND
  111. DESCRIPTION: Specifies the last line of a multi-line DEF
  112. function.
  113. ------------------------------------------------------------
  114. SYNTAX: FOR variable = start TO finish [STEP
  115. increment]
  116. DESCRIPTION: Top of a FOR - NEXT structure. The loop will
  117. continue a fixed number of times, which is
  118. determined by the values of start, finish,
  119. and increment.
  120. ------------------------------------------------------------
  121. SYNTAX: GO
  122. DESCRIPTION: Syntax Error.
  123. ------------------------------------------------------------
  124. SYNTAX: GO SUB line
  125. DESCRIPTION: Initiates a subroutine call to the line
  126. specified. The subroutine must end with
  127. RETURN. The line may be a number or a label.
  128. ------------------------------------------------------------
  129. SYNTAX: GO TO line
  130. DESCRIPTION: Branches program execution to the specified
  131. line. The line may be a number or a label.
  132. ------------------------------------------------------------
  133. SYNTAX: GOSUB line
  134. DESCRIPTION: Initiates a subroutine call to the line
  135. specified. The subroutine must end with
  136. RETURN. The line may be a number or a label.
  137. ------------------------------------------------------------
  138. SYNTAX: GOTO line
  139. DESCRIPTION: Branches program execution to the specified
  140. line. The line may be a number or a label.
  141. ------------------------------------------------------------
  142. SYNTAX: IF value THEN line1 [ELSE line2]
  143. DESCRIPTION: Single line standard IF command. If the value
  144. is non-zero, then branh to line1. If the
  145. value is zero and ELSE is provided, then
  146. branch to line2. Otherwise continue to the
  147. next line. LABELS are not allowed.
  148. ------------------------------------------------------------
  149. SYNTAX: IF value THEN
  150. DESCRIPTION: Top of a multi-line IF - END IF structure. If
  151. the value is non-zero, then the program lines
  152. upto the next ELSE or ELSE IF command are
  153. executed, otherwise the program branches to
  154. the next ELSE or ELSE IF command.
  155. ------------------------------------------------------------
  156. SYNTAX: INPUT "prompt string" , variable [, ...]
  157. DESCRIPTION: Reads input from the terminal after displaying
  158. a prompt.
  159. ------------------------------------------------------------
  160. SYNTAX: INPUT # filenum , variable [, ...]s
  161. DESCRIPTION: Reads input from the file specified by
  162. filenum.
  163. ------------------------------------------------------------
  164. SYNTAX: INPUT variable [, ...]
  165. DESCRIPTION: Reads input from the terminal.
  166. ------------------------------------------------------------
  167. SYNTAX: [LET] variable [, ...] = value
  168. DESCRIPTION: Assigns the value to the variable. The LET
  169. keyword is optional.
  170. ------------------------------------------------------------
  171. SYNTAX: LIST line1 [- line2]
  172. DESCRIPTION: Lists BASIC program lines from line1 to line2
  173. to the console on stdout.
  174. ------------------------------------------------------------
  175. SYNTAX: LPT [filename$]
  176. DESCRIPTION: Directs the PRINT commands to write to the
  177. printer (stderr), or optionally to the
  178. specified file.
  179. ------------------------------------------------------------
  180. SYNTAX: MAINTAINER
  181. DESCRIPTION: This command is reserved for use by the
  182. Bywater BASIC maintainer. It is not for the
  183. BASIC programmer.
  184. ------------------------------------------------------------
  185. SYNTAX: MAINTAINER CMDS
  186. DESCRIPTION: Syntax Error.
  187. ------------------------------------------------------------
  188. SYNTAX: MAINTAINER CMDS HTML
  189. DESCRIPTION: Dump COMMAND vs VERSION as HTML table
  190. ------------------------------------------------------------
  191. SYNTAX: MAINTAINER CMDS ID
  192. DESCRIPTION: Dump COMMAND #define.
  193. ------------------------------------------------------------
  194. SYNTAX: MAINTAINER CMDS MANUAL
  195. DESCRIPTION: Dump COMMAND manual.
  196. ------------------------------------------------------------
  197. SYNTAX: MAINTAINER CMDS_SWITCH
  198. DESCRIPTION: Dump COMMAND switch.
  199. ------------------------------------------------------------
  200. SYNTAX: MAINTAINER CMDS TABLE
  201. DESCRIPTION: Dump COMMAND table.
  202. ------------------------------------------------------------
  203. SYNTAX: MAINTAINER DEBUG
  204. DESCRIPTION: Syntax Error.
  205. ------------------------------------------------------------
  206. SYNTAX: MAINTAINER DEBUG OFF
  207. DESCRIPTION: Disable degug tracing.
  208. ------------------------------------------------------------
  209. SYNTAX: MAINTAINER DEBUG ON
  210. DESCRIPTION: Enable degug tracing.
  211. ------------------------------------------------------------
  212. SYNTAX: MAINTAINER FNCS
  213. DESCRIPTION: Syntax Error.
  214. ------------------------------------------------------------
  215. SYNTAX: MAINTAINER FNCS HTML
  216. DESCRIPTION: Dump FUNCTION vs VERSION as HTML table.
  217. ------------------------------------------------------------
  218. SYNTAX: MAINTAINER FNCS ID
  219. DESCRIPTION: Dump FUNCTION #define.
  220. ------------------------------------------------------------
  221. SYNTAX: MAINTAINER FNCS MANUAL
  222. DESCRIPTION: Dump FUNCTION manual.
  223. ------------------------------------------------------------
  224. SYNTAX: MAINTAINER FNCS SWITCH
  225. DESCRIPTION: Dump FUNCTION switch.
  226. ------------------------------------------------------------
  227. SYNTAX: MAINTAINER FNCS TABLE
  228. DESCRIPTION: Dump FUNCTION table.
  229. ------------------------------------------------------------
  230. SYNTAX: MAINTAINER MANUAL
  231. DESCRIPTION: Dump manual for the currently selected OPTION
  232. VERSION.
  233. ------------------------------------------------------------
  234. SYNTAX: MAINTAINER STACK
  235. DESCRIPTION: Dump the BASIC stack.
  236. ------------------------------------------------------------
  237. SYNTAX: NEW
  238. DESCRIPTION: Deletes the program in memory and clears all
  239. variables.
  240. ------------------------------------------------------------
  241. SYNTAX: NEXT [variable]
  242. DESCRIPTION: The bottom line of a FOR - NEXT structure.
  243. ------------------------------------------------------------
  244. SYNTAX: OLD [filename$]
  245. DESCRIPTION: Loads an ASCII BASIC program into memory.
  246. ------------------------------------------------------------
  247. SYNTAX: OPTION
  248. DESCRIPTION: Syntax Error.
  249. ------------------------------------------------------------
  250. SYNTAX: OPTION ANGLE
  251. DESCRIPTION: Syntax Error.
  252. ------------------------------------------------------------
  253. SYNTAX: OPTION ANGLE DEGREES
  254. DESCRIPTION: Configures these math functions to accept and
  255. return angles in degrees: ACOS, ACS, ANGLE,
  256. ARCSIN, ASIN, ASN, ARCTAN, ATN, ATAN, COS,
  257. COT, CSC, SEC, SIN and TAN.
  258. ------------------------------------------------------------
  259. SYNTAX: OPTION ANGLE GRADIANS
  260. DESCRIPTION: Configures these math functions to accept and
  261. return angles in gradians: ACOS, ANGLE,
  262. ASIN, ASN, ATN, ATAN, COS, COT, CSC, SEC, SIN
  263. and TAN.
  264. ------------------------------------------------------------
  265. SYNTAX: OPTION ANGLE RADIANS
  266. DESCRIPTION: Configures these math functions to accept and
  267. return angles in radians: ACOS, ANGLE, ASIN,
  268. ASN, ATN, ATAN, COS, COT, CSC, SEC, SIN and
  269. TAN.
  270. ------------------------------------------------------------
  271. SYNTAX: OPTION ARITHMETIC
  272. DESCRIPTION: Syntax Error.
  273. ------------------------------------------------------------
  274. SYNTAX: OPTION ARITHMETIC DECIMAL
  275. DESCRIPTION: Currently has no effect.
  276. ------------------------------------------------------------
  277. SYNTAX: OPTION ARITHMETIC FIXED
  278. DESCRIPTION: Currently has no effect.
  279. ------------------------------------------------------------
  280. SYNTAX: OPTION ARITHMETIC NATIVE
  281. DESCRIPTION: Currently has no effect.
  282. ------------------------------------------------------------
  283. SYNTAX: OPTION BASE integer
  284. DESCRIPTION: Sets the default lowest array subscript.
  285. ------------------------------------------------------------
  286. SYNTAX: OPTION BUGS
  287. DESCRIPTION: Syntax Error.
  288. ------------------------------------------------------------
  289. SYNTAX: OPTION BUGS BOOLEAN
  290. DESCRIPTION: Boolean results are 1 or 0 instead of bitwise.
  291. ------------------------------------------------------------
  292. SYNTAX: OPTION BUGS OFF
  293. DESCRIPTION: Disables bugs commonly found in many BASIC
  294. dialects.
  295. ------------------------------------------------------------
  296. SYNTAX: OPTION BUGS ON
  297. DESCRIPTION: Enables bugs commonly found in many BASIC
  298. dialects.
  299. ------------------------------------------------------------
  300. SYNTAX: OPTION COMPARE
  301. DESCRIPTION: Syntax Error.
  302. ------------------------------------------------------------
  303. SYNTAX: OPTION COMPARE BINARY
  304. DESCRIPTION: Causes string comparisons to be
  305. case-sensitive.
  306. ------------------------------------------------------------
  307. SYNTAX: OPTION COMPARE DATABASE
  308. DESCRIPTION: Causes string comparisons to be
  309. case-insensitive.
  310. ------------------------------------------------------------
  311. SYNTAX: OPTION COMPARE TEXT
  312. DESCRIPTION: Causes string comparisons to be
  313. case-insensitive.
  314. ------------------------------------------------------------
  315. SYNTAX: OPTION COVERAGE
  316. DESCRIPTION: Syntax Error.
  317. ------------------------------------------------------------
  318. SYNTAX: OPTION COVERAGE OFF
  319. DESCRIPTION: Disables BASIC code coverage recording,
  320. displayed using the LIST command.
  321. ------------------------------------------------------------
  322. SYNTAX: OPTION COVERAGE ON
  323. DESCRIPTION: Enables BASIC code coverage recording,
  324. displayed using the LIST command.
  325. ------------------------------------------------------------
  326. SYNTAX: OPTION DATE format$
  327. DESCRIPTION: Sets the date format string used by C
  328. strftime() for DATE$.
  329. ------------------------------------------------------------
  330. SYNTAX: OPTION DIGITS integer
  331. DESCRIPTION: Sets the number of significant digits for
  332. PRINT. Setting the value to zero restores
  333. the default.
  334. ------------------------------------------------------------
  335. SYNTAX: OPTION DISABLE
  336. DESCRIPTION: Syntax Error.
  337. ------------------------------------------------------------
  338. SYNTAX: OPTION DISABLE COMMAND name$
  339. DESCRIPTION: Disables the specified BASIC command.
  340. ------------------------------------------------------------
  341. SYNTAX: OPTION DISABLE FUNCTION name$
  342. DESCRIPTION: Disables the specified BASIC function.
  343. ------------------------------------------------------------
  344. SYNTAX: OPTION DISABLE OPERATOR name$
  345. DESCRIPTION: Disables the specified BASIC operator.
  346. ------------------------------------------------------------
  347. SYNTAX: OPTION EDIT string$
  348. DESCRIPTION: Sets the program name used by the EDIT
  349. command.
  350. ------------------------------------------------------------
  351. SYNTAX: OPTION ENABLE
  352. DESCRIPTION: Syntax Error.
  353. ------------------------------------------------------------
  354. SYNTAX: OPTION ENABLE COMMAND name$
  355. DESCRIPTION: Enables the specified BASIC command.
  356. ------------------------------------------------------------
  357. SYNTAX: OPTION ENABLE FUNCTION name$
  358. DESCRIPTION: Enables the specified BASIC function.
  359. ------------------------------------------------------------
  360. SYNTAX: OPTION ENABLE OPERATOR name$
  361. DESCRIPTION: Enables the specified BASIC operator.
  362. ------------------------------------------------------------
  363. SYNTAX: OPTION ERROR
  364. DESCRIPTION: Syntax Error.
  365. ------------------------------------------------------------
  366. SYNTAX: OPTION ERROR GOSUB
  367. DESCRIPTION: When an error occurs, GOSUB to the error
  368. handler. The error handler exits with
  369. RETURN.
  370. ------------------------------------------------------------
  371. SYNTAX: OPTION ERROR GOTO
  372. DESCRIPTION: When an error occurs, GOTO to the error
  373. handler. The error handler exits with
  374. RESUME.
  375. ------------------------------------------------------------
  376. SYNTAX: OPTION EXPLICIT
  377. DESCRIPTION: All variables must be declared using DIM.
  378. ------------------------------------------------------------
  379. SYNTAX: OPTION EXTENSION string$
  380. DESCRIPTION: Sets the BASIC filename extension, commonly
  381. ".bas".
  382. ------------------------------------------------------------
  383. SYNTAX: OPTION FILES string$
  384. DESCRIPTION: Sets the program name used by the FILES
  385. command.
  386. ------------------------------------------------------------
  387. SYNTAX: OPTION IMPLICIT
  388. DESCRIPTION: Variables need not be declared using DIM,
  389. provided arrays have no more that 10
  390. elements. This is the opposite of OPTION
  391. EXPLICIT, and is the default for all versions
  392. of BASIC.
  393. ------------------------------------------------------------
  394. SYNTAX: OPTION INDENT integer
  395. DESCRIPTION: Sets indention level for LIST. Zero means no
  396. indention. Default is 2.
  397. ------------------------------------------------------------
  398. SYNTAX: OPTION LABELS
  399. DESCRIPTION: Syntax Error.
  400. ------------------------------------------------------------
  401. SYNTAX: OPTION LABELS OFF
  402. DESCRIPTION: Disables text labels.
  403. ------------------------------------------------------------
  404. SYNTAX: OPTION LABELS ON
  405. DESCRIPTION: Enables text labels.
  406. ------------------------------------------------------------
  407. SYNTAX: OPTION PROMPT string$
  408. DESCRIPTION: Sets the BASIC prompt.
  409. ------------------------------------------------------------
  410. SYNTAX: OPTION PUNCT
  411. DESCRIPTION: Syntax Error.
  412. ------------------------------------------------------------
  413. SYNTAX: OPTION PUNCT AT char$
  414. DESCRIPTION: Sets the PRINT AT character, commonly "@".
  415. ------------------------------------------------------------
  416. SYNTAX: OPTION PUNCT BYTE char$
  417. DESCRIPTION: Sets the suffix character that indicates a
  418. variable is of type BYTE, commonly "~".
  419. ------------------------------------------------------------
  420. SYNTAX: OPTION PUNCT COMMENT char$
  421. DESCRIPTION: Sets the shortcut COMMENT character.
  422. ------------------------------------------------------------
  423. SYNTAX: OPTION PUNCT CURRENCY char$
  424. DESCRIPTION: Sets the suffix character that indicates a
  425. variable is of type CURRENCY, commonly "@".
  426. ------------------------------------------------------------
  427. SYNTAX: OPTION PUNCT DOUBLE char$
  428. DESCRIPTION: Sets the suffix character that indicates a
  429. variable is of type DOUBLE, commonly "#".
  430. ------------------------------------------------------------
  431. SYNTAX: OPTION PUNCT FILENUM char$
  432. DESCRIPTION: Sets the FILE NUMBER prefix character,
  433. commonly "#".
  434. ------------------------------------------------------------
  435. SYNTAX: OPTION PUNCT IMAGE char$
  436. DESCRIPTION: Sets the shortcut IMAGE character, commonly
  437. ":".
  438. ------------------------------------------------------------
  439. SYNTAX: OPTION PUNCT INPUT char$
  440. DESCRIPTION: Sets the shortcut INPUT character, commonly
  441. "!".
  442. ------------------------------------------------------------
  443. SYNTAX: OPTION PUNCT INTEGER char$
  444. DESCRIPTION: Sets the suffix character that indicates a
  445. variable is of type INTEGER, commonly "%".
  446. ------------------------------------------------------------
  447. SYNTAX: OPTION PUNCT LONG char$
  448. DESCRIPTION: Sets the suffix character that indicates a
  449. variable is of type LONG, commonly "&".
  450. ------------------------------------------------------------
  451. SYNTAX: OPTION PUNCT LPAREN char$
  452. DESCRIPTION: Sets the LEFT PARENTHESIS character, commonly
  453. "(".
  454. ------------------------------------------------------------
  455. SYNTAX: OPTION PUNCT_PRINT char$
  456. DESCRIPTION: Sets the shortcut PRINT character, commonly
  457. "?".
  458. ------------------------------------------------------------
  459. SYNTAX: OPTION PUNCT QUOTE char$
  460. DESCRIPTION: Sets the QUOTE character, commonly """
  461. ------------------------------------------------------------
  462. SYNTAX: OPTION PUNCT RPAREN char$
  463. DESCRIPTION: Sets the RIGHT PARENTHESIS character, commonly
  464. ")".
  465. ------------------------------------------------------------
  466. SYNTAX: OPTION PUNCT SINGLE char$
  467. DESCRIPTION: Sets the suffix character that indicates a
  468. variable is of type SINGLE, commonly "!".
  469. ------------------------------------------------------------
  470. SYNTAX: OPTION PUNCT STATEMENT char$
  471. DESCRIPTION: Sets the statement seperator character,
  472. commonly ":".
  473. ------------------------------------------------------------
  474. SYNTAX: OPTION PUNCT STRING char$
  475. DESCRIPTION: Sets the suffix character that indicates a
  476. variable is of type STRING, commonly "$".
  477. ------------------------------------------------------------
  478. SYNTAX: OPTION RECLEN integer
  479. DESCRIPTION: Sets the default RANDOM record length.
  480. ------------------------------------------------------------
  481. SYNTAX: OPTION RENUM string$
  482. DESCRIPTION: Sets the program name used by the RENUM
  483. command.
  484. ------------------------------------------------------------
  485. SYNTAX: OPTION ROUND
  486. DESCRIPTION: Syntax Error.
  487. ------------------------------------------------------------
  488. SYNTAX: OPTION ROUND BANK
  489. DESCRIPTION: Round using the Banker rule.
  490. ------------------------------------------------------------
  491. SYNTAX: OPTION ROUND MATH
  492. DESCRIPTION: Round using mathematical rules.
  493. ------------------------------------------------------------
  494. SYNTAX: OPTION ROUND TRUNCATE
  495. DESCRIPTION: Round using truncation.
  496. ------------------------------------------------------------
  497. SYNTAX: OPTION SCALE integer
  498. DESCRIPTION: Sets the number of digits to round after the
  499. decimal point for PRINT. Setting the value
  500. to zero disables rounding.
  501. ------------------------------------------------------------
  502. SYNTAX: OPTION SLEEP double
  503. DESCRIPTION: Sets multiplier for SLEEP and WAIT. Zero
  504. means no waiting. Default is 1.
  505. ------------------------------------------------------------
  506. SYNTAX: OPTION STDERR filename$
  507. DESCRIPTION: Sets the file used for STDERR, which is used
  508. by LPRINT commands.
  509. ------------------------------------------------------------
  510. SYNTAX: OPTION STDIN filename$
  511. DESCRIPTION: Sets the file used for STDIN, which is used by
  512. INPUT commands.
  513. ------------------------------------------------------------
  514. SYNTAX: OPTION STDOUT filename$
  515. DESCRIPTION: Sets the file used for STDOUT, which is used
  516. by PRINT commands.
  517. ------------------------------------------------------------
  518. SYNTAX: OPTION STRICT
  519. DESCRIPTION: Syntax Error.
  520. ------------------------------------------------------------
  521. SYNTAX: OPTION STRICT OFF
  522. DESCRIPTION: Disables checking for implicit array creation
  523. without using the DIM command.
  524. ------------------------------------------------------------
  525. SYNTAX: OPTION STRICT ON
  526. DESCRIPTION: Enables checking for implicit array creation
  527. without using the DIM command.
  528. ------------------------------------------------------------
  529. SYNTAX: OPTION TERMINAL
  530. DESCRIPTION: Syntax Error.
  531. ------------------------------------------------------------
  532. SYNTAX: OPTION TERMINAL ADM
  533. DESCRIPTION: Enables ADM-3A terminal control codes for CLS,
  534. COLOR, and LOCATE.
  535. ------------------------------------------------------------
  536. SYNTAX: OPTION TERMINAL ANSI
  537. DESCRIPTION: Enables ANSI terminal control codes for CLS,
  538. COLOR, and LOCATE.
  539. ------------------------------------------------------------
  540. SYNTAX: OPTION TERMINAL NONE
  541. DESCRIPTION: Disables terminal control codes for CLS,
  542. COLOR, and LOCATE.
  543. ------------------------------------------------------------
  544. SYNTAX: OPTION TIME format$
  545. DESCRIPTION: Sets the time format string used by C
  546. strftime() for TIME$.
  547. ------------------------------------------------------------
  548. SYNTAX: OPTION TRACE
  549. DESCRIPTION: Syntax Error.
  550. ------------------------------------------------------------
  551. SYNTAX: OPTION TRACE OFF
  552. DESCRIPTION: Disables displaying a stack trace when an
  553. ERROR occurs.
  554. ------------------------------------------------------------
  555. SYNTAX: OPTION TRACE ON
  556. DESCRIPTION: Enables displaying a stack trace when an ERROR
  557. occurs.
  558. ------------------------------------------------------------
  559. SYNTAX: OPTION USING
  560. DESCRIPTION: Syntax Error.
  561. ------------------------------------------------------------
  562. SYNTAX: OPTION USING ALL char$
  563. DESCRIPTION: Specifies the magic ALL character for the
  564. PRINT USING command. A common value is "&".
  565. ------------------------------------------------------------
  566. SYNTAX: OPTION USING COMMA char$
  567. DESCRIPTION: Specifies the magic COMMA character for the
  568. PRINT USING command. A common value is ",".
  569. ------------------------------------------------------------
  570. SYNTAX: OPTION USING DIGIT char$
  571. DESCRIPTION: Specifies the magic DIGIT character for the
  572. PRINT USING command. A common value is "#".
  573. ------------------------------------------------------------
  574. SYNTAX: OPTION USING DOLLAR char$
  575. DESCRIPTION: Specifies the magic DOLLAR character for the
  576. PRINT USING command. A common value is "$".
  577. ------------------------------------------------------------
  578. SYNTAX: OPTION USING EXRAD char$
  579. DESCRIPTION: Specifies the magic EXRAD character for the
  580. PRINT USING command. A common value is "^".
  581. ------------------------------------------------------------
  582. SYNTAX: OPTION USING FILLER char$
  583. DESCRIPTION: Specifies the magic FILLER character for the
  584. PRINT USING command. A common value is "*".
  585. ------------------------------------------------------------
  586. SYNTAX: OPTION USING FIRST char$
  587. DESCRIPTION: Specifies the magic FIRST character for the
  588. PRINT USING command. A common value is "!".
  589. ------------------------------------------------------------
  590. SYNTAX: OPTION USING LENGTH char$
  591. DESCRIPTION: Specifies the magic LENGTH character for the
  592. PRINT USING command. A common value is "\".
  593. ------------------------------------------------------------
  594. SYNTAX: OPTION USING LITERAL char$
  595. DESCRIPTION: Specifies the magic LITERAL character for the
  596. PRINT USING command. A common value is "_".
  597. ------------------------------------------------------------
  598. SYNTAX: OPTION USING MINUS char$
  599. DESCRIPTION: Specifies the magic MINUS character for the
  600. PRINT USING command. A common value is "-".
  601. ------------------------------------------------------------
  602. SYNTAX: OPTION USING PERIOD char$
  603. DESCRIPTION: Specifies the magic PERIOD character for the
  604. PRINT USING command. A common value is ".".
  605. ------------------------------------------------------------
  606. SYNTAX: OPTION USING PLUS char$
  607. DESCRIPTION: Specifies the magic PLUS character for the
  608. PRINT USING command. A common value is "+".
  609. ------------------------------------------------------------
  610. SYNTAX: OPTION VERSION version$
  611. DESCRIPTION: Selects a specific BASIC version, which is a
  612. combination of OPTION settings, commands,
  613. functions and operators. If no version is
  614. specified, displays a list of the available
  615. versions.
  616. ------------------------------------------------------------
  617. SYNTAX: OPTION ZONE integer
  618. DESCRIPTION: Sets the PRINT zone width. Setting the value
  619. to zero restores the default.
  620. ------------------------------------------------------------
  621. SYNTAX: PRINT # filenum , [USING format$;] value ...
  622. DESCRIPTION: Sends output to a file.
  623. ------------------------------------------------------------
  624. SYNTAX: PRINT [USING format$;] value ...
  625. DESCRIPTION: Sends output to the screen.
  626. ------------------------------------------------------------
  627. SYNTAX: PTP [filename$]
  628. DESCRIPTION: Directs the PRINT commands to write to the
  629. paper tape punch file ("PTP"), or optionally
  630. to the specified file.
  631. ------------------------------------------------------------
  632. SYNTAX: PTR [filename$]
  633. DESCRIPTION: Directs the INPUT commands to read from the
  634. paper tape reader file ("PTR"), or optionally
  635. from the specified file.
  636. ------------------------------------------------------------
  637. SYNTAX: READ variable [, ...]
  638. DESCRIPTION: Reads values from DATA statements.
  639. ------------------------------------------------------------
  640. SYNTAX: REM ...
  641. DESCRIPTION: Remark.
  642. ------------------------------------------------------------
  643. SYNTAX: RESTORE [line]
  644. DESCRIPTION: Resets the line used for the next READ
  645. statement. line may be either a number or a
  646. label.
  647. ------------------------------------------------------------
  648. SYNTAX: RETURN
  649. DESCRIPTION: Concludes a subroutine called by GOSUB.
  650. ------------------------------------------------------------
  651. SYNTAX: RUN filename$
  652. DESCRIPTION: Loads a new BAASIC program and executes the
  653. program from the start.
  654. ------------------------------------------------------------
  655. SYNTAX: RUN line
  656. DESCRIPTION: Executes the program in memory beginning at
  657. line.
  658. ------------------------------------------------------------
  659. SYNTAX: RUN
  660. DESCRIPTION: Executes the program in memory from the start.
  661. ------------------------------------------------------------
  662. SYNTAX: SAVE [filename$]
  663. DESCRIPTION: Saves the current program into the file
  664. filename$ in ASCII format.
  665. ------------------------------------------------------------
  666. SYNTAX: STEP
  667. DESCRIPTION: Syntax Error.
  668. ------------------------------------------------------------
  669. SYNTAX: STOP
  670. DESCRIPTION: Interrupts program execution and displays the
  671. line number of the STOP command. For use
  672. when debugging BASIC programs. Whether STOP
  673. issues a SIGINT signal is implementation
  674. defined.
  675. ------------------------------------------------------------
  676. SYNTAX: THEN
  677. DESCRIPTION: Syntax Error.
  678. ------------------------------------------------------------
  679. SYNTAX: TO
  680. DESCRIPTION: Syntax Error.
  681. ------------------------------------------------------------
  682. SYNTAX: TTY
  683. DESCRIPTION: Directs the PRINT commands to write to the
  684. console (stdout), and the INPUT commands to
  685. read from.the console (stdin). This cancels
  686. LPT, PTP and PTR.
  687. ------------------------------------------------------------
  688. SYNTAX: TTY IN
  689. DESCRIPTION: Directs the INPUT commands to read from.the
  690. console (stdin). This cancels PTR. It does
  691. not cancel LPT or PTP.
  692. ------------------------------------------------------------
  693. SYNTAX: TTY OUT
  694. DESCRIPTION: Directs the PRINT commands to write to the
  695. console (stdout). This cancels LPT or PTP.
  696. It does not cancel PTR.
  697. ------------------------------------------------------------
  698. ============================================================
  699. FUNCTIONS
  700. ============================================================
  701. ------------------------------------------------------------
  702. SYNTAX: N = ABS( X )
  703. PARAMETER: X is a number
  704. DESCRIPTION: The absolute value of X.
  705. ------------------------------------------------------------
  706. SYNTAX: N = ATN( X )
  707. PARAMETER: X is a number
  708. DESCRIPTION: The arctangent of X in radians, i.e. the angle
  709. whose tangent is X, where -PI/2 < ATN(X) <
  710. PI/2.
  711. ------------------------------------------------------------
  712. SYNTAX: N = COS( X )
  713. PARAMETER: X is a number
  714. DESCRIPTION: The cosine of X, where X is in radians.
  715. ------------------------------------------------------------
  716. SYNTAX: N = EXP( X )
  717. PARAMETER: X is a number
  718. DESCRIPTION: The exponential value of X, i.e., the value of
  719. the base of natural logarithms (e = 2.71828)
  720. raised to the power of X; if EXP(X) is less
  721. that machine infinitesimal, then its value
  722. shall be replaced with zero.
  723. ------------------------------------------------------------
  724. SYNTAX: N = GET( X )
  725. PARAMETER: X is a number
  726. DESCRIPTION: Get character code from input. The value of X
  727. is ignored. Similar to ASC(INKEY$).
  728. ------------------------------------------------------------
  729. SYNTAX: N = INT( X )
  730. PARAMETER: X is a number
  731. DESCRIPTION: The largest integer not greater than X; e.g.
  732. INT(1.3) = 1 and INT(-1.3) = 2.
  733. ------------------------------------------------------------
  734. SYNTAX: N = LOG( X )
  735. PARAMETER: X is a number, > 0
  736. DESCRIPTION: The natural logarithm of X; X shall be greater
  737. than zero.
  738. ------------------------------------------------------------
  739. SYNTAX: N = PUT( X )
  740. PARAMETER: X is a number, [0,255]
  741. DESCRIPTION: Send character code to output. Returns the
  742. value of X. Similar to PRINT CHR$(X).
  743. ------------------------------------------------------------
  744. SYNTAX: N = RANDOMIZE
  745. DESCRIPTION: Seeds the pseudo-random number generator with
  746. TIME.
  747. ------------------------------------------------------------
  748. SYNTAX: N = RND
  749. DESCRIPTION: The next pseudo-random number in an
  750. implementation-defined sequence of
  751. pseudo-random numbers uniformly distributed
  752. in the range 0 <= RND < 1.
  753. ------------------------------------------------------------
  754. SYNTAX: N = RND( X )
  755. PARAMETER: X is a number
  756. DESCRIPTION: Returns a pseudorandom number in the range
  757. [0,1]. The value of X is ignored.
  758. ------------------------------------------------------------
  759. SYNTAX: N = SGN( X )
  760. PARAMETER: X is a number
  761. DESCRIPTION: The sign of X: -1 if X < 0, 0 if X = 0, and +1
  762. if X > 0.
  763. ------------------------------------------------------------
  764. SYNTAX: N = SIN( X )
  765. PARAMETER: X is a number
  766. DESCRIPTION: The sine of X, where X is in radians.
  767. ------------------------------------------------------------
  768. SYNTAX: S$ = SPC( X )
  769. PARAMETER: X is a number
  770. DESCRIPTION: The string of X spaces. Only for use within
  771. the PRINT command.
  772. ------------------------------------------------------------
  773. SYNTAX: N = SQR( X )
  774. PARAMETER: X is a number, >= 0
  775. DESCRIPTION: The non-negative square root of X; X shall be
  776. non-negative.
  777. ------------------------------------------------------------
  778. SYNTAX: S$ = TAB( X )
  779. PARAMETER: X is a number
  780. DESCRIPTION: The string required to advance to column X.
  781. Only for use within the PRINT command.
  782. ------------------------------------------------------------
  783. SYNTAX: N = TAN( X )
  784. PARAMETER: X is a number
  785. DESCRIPTION: The tangent of X, where X is in radians.
  786. ------------------------------------------------------------
  787. SYNTAX: N = UUF( ... )
  788. DESCRIPTION: Execute hardware program. Causes ERROR 73.
  789. ------------------------------------------------------------
  790. ============================================================
  791. OPERATORS
  792. ============================================================
  793. ------------------------------------------------------------
  794. SYNTAX: X ** Y
  795. DESCRIPTION: Exponential
  796. PRECEDENCE: 14
  797. ------------------------------------------------------------
  798. SYNTAX: X ^ Y
  799. DESCRIPTION: Exponential
  800. PRECEDENCE: 14
  801. ------------------------------------------------------------
  802. SYNTAX: + X
  803. DESCRIPTION: Posation
  804. PRECEDENCE: 13
  805. ------------------------------------------------------------
  806. SYNTAX: - X
  807. DESCRIPTION: Negation
  808. PRECEDENCE: 13
  809. ------------------------------------------------------------
  810. SYNTAX: X * Y
  811. DESCRIPTION: Multiplication
  812. PRECEDENCE: 12
  813. ------------------------------------------------------------
  814. SYNTAX: X / Y
  815. DESCRIPTION: Division
  816. PRECEDENCE: 12
  817. ------------------------------------------------------------
  818. SYNTAX: X + Y
  819. DESCRIPTION: Addition
  820. PRECEDENCE: 9
  821. ------------------------------------------------------------
  822. SYNTAX: X - Y
  823. DESCRIPTION: Subtraction
  824. PRECEDENCE: 9
  825. ------------------------------------------------------------
  826. SYNTAX: X < Y
  827. DESCRIPTION: Less than
  828. PRECEDENCE: 7
  829. ------------------------------------------------------------
  830. SYNTAX: X <= Y
  831. DESCRIPTION: Less than or Equal
  832. PRECEDENCE: 7
  833. ------------------------------------------------------------
  834. SYNTAX: X <> Y
  835. DESCRIPTION: Not Equal
  836. PRECEDENCE: 7
  837. ------------------------------------------------------------
  838. SYNTAX: X = Y
  839. DESCRIPTION: Equal
  840. PRECEDENCE: 7
  841. ------------------------------------------------------------
  842. SYNTAX: X =< Y
  843. DESCRIPTION: Less than or Equal
  844. PRECEDENCE: 7
  845. ------------------------------------------------------------
  846. SYNTAX: X => Y
  847. DESCRIPTION: Greater than or Equal
  848. PRECEDENCE: 7
  849. ------------------------------------------------------------
  850. SYNTAX: X > Y
  851. DESCRIPTION: Greater than
  852. PRECEDENCE: 7
  853. ------------------------------------------------------------
  854. SYNTAX: X >< Y
  855. DESCRIPTION: Not Equal
  856. PRECEDENCE: 7
  857. ------------------------------------------------------------
  858. SYNTAX: X >= Y
  859. DESCRIPTION: Greater than or Equal
  860. PRECEDENCE: 7
  861. ------------------------------------------------------------