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.
 
 
 
 
 
 

1319 lines
56 KiB

  1. ============================================================
  2. GENERAL
  3. ============================================================
  4. OPTION VERSION "ECMA-116"
  5. REM INTERNAL ID: E86
  6. REM DESCRIPTION: ANSI Full BASIC
  7. REM REFERENCE: STANDARD ECMA-116: Full BASIC
  8. REM by EUROPEAN COMPUTER MANUFACTURERS ASSOCIATION
  9. REM (c) 1986, EUROPEAN COMPUTER MANUFACTURERS ASSOCIATION
  10. REM http://www.ecma-international.org/publications/files/
  11. REM ECMA-ST-WITHDRAWN/ECMA-116,%201st%20edition,%20June%201986.pdf
  12. REM
  13. OPTION STRICT ON
  14. OPTION ANGLE RADIANS
  15. OPTION BUGS OFF
  16. OPTION LABELS ON
  17. OPTION COMPARE BINARY
  18. OPTION COVERAGE OFF
  19. OPTION TRACE OFF
  20. OPTION ERROR GOTO
  21. OPTION IMPLICIT
  22. OPTION BASE 1
  23. OPTION RECLEN 128
  24. OPTION DATE "%Y-%m-%d"
  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: CASE constant [TO constant]
  60. DESCRIPTION: Introduces an element of a SELECT CASE
  61. statement. Multiple tests must be seperated
  62. a comma. For example: CASE 1, 2 TO 3, IS >
  63. 4, IF < 5
  64. ------------------------------------------------------------
  65. SYNTAX: CASE IF operator constant
  66. DESCRIPTION: Introduces an element of a SELECT CASE
  67. statement. Multiple tests must be seperated
  68. a comma. For example: CASE 1, 2 TO 3, IS >
  69. 4, IF < 5
  70. ------------------------------------------------------------
  71. SYNTAX: CASE IS operator constant
  72. DESCRIPTION: Introduces an element of a SELECT CASE
  73. statement. Multiple tests must be seperated
  74. a comma. For example: CASE 1, 2 TO 3, IS >
  75. 4, IF < 5
  76. ------------------------------------------------------------
  77. SYNTAX: CASE ELSE
  78. DESCRIPTION: Introduces a default SELECT CASE element.
  79. ------------------------------------------------------------
  80. SYNTAX: COMMON variable [, ...]
  81. DESCRIPTION: Designates variables to be passed to a CHAINed
  82. program.
  83. ------------------------------------------------------------
  84. SYNTAX: DATA constant [, ...]
  85. DESCRIPTION: Stores numeric and string constants to be
  86. accessed by READ.
  87. ------------------------------------------------------------
  88. SYNTAX: DEF FNname[( arg [,...] )] = value
  89. DESCRIPTION: Defines a single-line function. Single-line
  90. functions require an equal sign.
  91. ------------------------------------------------------------
  92. SYNTAX: DIM [# filenum,] variable([ lower TO ] upper)
  93. DESCRIPTION: Declares variables and specifies the
  94. dimensions of array variables. For array
  95. variables, if the lower bound is not
  96. provided, then the OPTION BASE value is used.
  97. If filenum is provided, then the variable is
  98. virtual.
  99. ------------------------------------------------------------
  100. SYNTAX: DO UNTIL value
  101. DESCRIPTION: Top of a DO - LOOP structure. Exits when
  102. value is non-zero.
  103. ------------------------------------------------------------
  104. SYNTAX: DO
  105. DESCRIPTION: Top of a DO - LOOP structure. If the loop is
  106. not terminated by EXIT DO or LOOP UNTIL or
  107. LOOP WHILE, then it will loop forever.
  108. ------------------------------------------------------------
  109. SYNTAX: DO WHILE value
  110. DESCRIPTION: Top of a DO - LOOP structure. Exits when
  111. value is zero.
  112. ------------------------------------------------------------
  113. SYNTAX: EDIT
  114. DESCRIPTION: implementation defined.
  115. ------------------------------------------------------------
  116. SYNTAX: ELSE
  117. DESCRIPTION: Introduces a default condition in a multi-line
  118. IF statement.
  119. ------------------------------------------------------------
  120. SYNTAX: ELSEIF
  121. DESCRIPTION: Introduces a secondary condition in a
  122. multi-line IF statement.
  123. ------------------------------------------------------------
  124. SYNTAX: END
  125. DESCRIPTION: Terminates program execution. If the BASIC
  126. program was executed from the operating
  127. system level, then control returns to the
  128. operating system, oterwise control reuturns
  129. to the BASIC prompt.
  130. ------------------------------------------------------------
  131. SYNTAX: END FUNCTION
  132. DESCRIPTION: Specifies the last line of a multi-line
  133. FUNCTION definition.
  134. ------------------------------------------------------------
  135. SYNTAX: END IF
  136. DESCRIPTION: Specifies the last line of a multi-line IF
  137. definition.
  138. ------------------------------------------------------------
  139. SYNTAX: END SELECT
  140. DESCRIPTION: Specifies the last line of a multi-line SELECT
  141. CASE definition.
  142. ------------------------------------------------------------
  143. SYNTAX: END SUB
  144. DESCRIPTION: Specifies the last line of a multi-line SUB
  145. definition.
  146. ------------------------------------------------------------
  147. SYNTAX: EXIT
  148. DESCRIPTION: Syntax Error.
  149. ------------------------------------------------------------
  150. SYNTAX: EXIT DO
  151. DESCRIPTION: Immediately exits the inner-most DO-LOOP
  152. strucure.
  153. ------------------------------------------------------------
  154. SYNTAX: EXIT FOR
  155. DESCRIPTION: Immediately exits the inner-most FOR-NEXT
  156. strucure.
  157. ------------------------------------------------------------
  158. SYNTAX: EXIT FUNCTION
  159. DESCRIPTION: Immediately exits the inner-most multi-line
  160. FUNCTION strucure.
  161. ------------------------------------------------------------
  162. SYNTAX: EXIT SUB
  163. DESCRIPTION: Immediately exits the inner-most multi-line
  164. SUB strucure.
  165. ------------------------------------------------------------
  166. SYNTAX: EXIT WHILE
  167. DESCRIPTION: Immediately exits the inner-most WHILE-END
  168. strucure.
  169. ------------------------------------------------------------
  170. SYNTAX: FOR variable = start TO finish [STEP
  171. increment]
  172. DESCRIPTION: Top of a FOR - NEXT structure. The loop will
  173. continue a fixed number of times, which is
  174. determined by the values of start, finish,
  175. and increment.
  176. ------------------------------------------------------------
  177. SYNTAX: FUNCTION [ ( parameter [, ... ] ) ]
  178. DESCRIPTION: Top line of a multi-line FUNCTION definition.
  179. The variable names specified are local to the
  180. FUNCTION definition, and are initialized
  181. BYVAL when the function is invoked by another
  182. routine.
  183. ------------------------------------------------------------
  184. SYNTAX: GO
  185. DESCRIPTION: Syntax Error.
  186. ------------------------------------------------------------
  187. SYNTAX: GO SUB line
  188. DESCRIPTION: Initiates a subroutine call to the line
  189. specified. The subroutine must end with
  190. RETURN. The line may be a number or a label.
  191. ------------------------------------------------------------
  192. SYNTAX: GO TO line
  193. DESCRIPTION: Branches program execution to the specified
  194. line. The line may be a number or a label.
  195. ------------------------------------------------------------
  196. SYNTAX: GOSUB line
  197. DESCRIPTION: Initiates a subroutine call to the line
  198. specified. The subroutine must end with
  199. RETURN. The line may be a number or a label.
  200. ------------------------------------------------------------
  201. SYNTAX: GOTO line
  202. DESCRIPTION: Branches program execution to the specified
  203. line. The line may be a number or a label.
  204. ------------------------------------------------------------
  205. SYNTAX: IF value THEN line1 [ELSE line2]
  206. DESCRIPTION: Single line standard IF command. If the value
  207. is non-zero, then branh to line1. If the
  208. value is zero and ELSE is provided, then
  209. branch to line2. Otherwise continue to the
  210. next line. LABELS are not allowed.
  211. ------------------------------------------------------------
  212. SYNTAX: IF value THEN
  213. DESCRIPTION: Top of a multi-line IF - END IF structure. If
  214. the value is non-zero, then the program lines
  215. upto the next ELSE or ELSE IF command are
  216. executed, otherwise the program branches to
  217. the next ELSE or ELSE IF command.
  218. ------------------------------------------------------------
  219. SYNTAX: INPUT "prompt string" , variable [, ...]
  220. DESCRIPTION: Reads input from the terminal after displaying
  221. a prompt.
  222. ------------------------------------------------------------
  223. SYNTAX: INPUT # filenum , variable [, ...]s
  224. DESCRIPTION: Reads input from the file specified by
  225. filenum.
  226. ------------------------------------------------------------
  227. SYNTAX: INPUT variable [, ...]
  228. DESCRIPTION: Reads input from the terminal.
  229. ------------------------------------------------------------
  230. SYNTAX: [LET] variable [, ...] = value
  231. DESCRIPTION: Assigns the value to the variable. The LET
  232. keyword is optional.
  233. ------------------------------------------------------------
  234. SYNTAX: LIST line1 [- line2]
  235. DESCRIPTION: Lists BASIC program lines from line1 to line2
  236. to the console on stdout.
  237. ------------------------------------------------------------
  238. SYNTAX: LOAD [filename$]
  239. DESCRIPTION: Loads an ASCII BASIC program into memory.
  240. ------------------------------------------------------------
  241. SYNTAX: LOOP UNTIL value
  242. DESCRIPTION: Bottom of a DO - LOOP structure. Exits when
  243. value is nonz-zero.
  244. ------------------------------------------------------------
  245. SYNTAX: LOOP WHILE value
  246. DESCRIPTION: Bottom of a DO - LOOP structure. Exits when
  247. value is zero.
  248. ------------------------------------------------------------
  249. SYNTAX: LOOP
  250. DESCRIPTION: Bottom of a DO - LOOP structure. If the loop
  251. is not terminated by EXIT DO or DO UNTIL or
  252. DO WHILE, then it will loop forever.
  253. ------------------------------------------------------------
  254. SYNTAX: LPRINT [USING format-string$;] value ...
  255. DESCRIPTION: Send output to the printer (stderr).
  256. ------------------------------------------------------------
  257. SYNTAX: MAINTAINER
  258. DESCRIPTION: This command is reserved for use by the
  259. Bywater BASIC maintainer. It is not for the
  260. BASIC programmer.
  261. ------------------------------------------------------------
  262. SYNTAX: MAINTAINER CMDS
  263. DESCRIPTION: Syntax Error.
  264. ------------------------------------------------------------
  265. SYNTAX: MAINTAINER CMDS HTML
  266. DESCRIPTION: Dump COMMAND vs VERSION as HTML table
  267. ------------------------------------------------------------
  268. SYNTAX: MAINTAINER CMDS ID
  269. DESCRIPTION: Dump COMMAND #define.
  270. ------------------------------------------------------------
  271. SYNTAX: MAINTAINER CMDS MANUAL
  272. DESCRIPTION: Dump COMMAND manual.
  273. ------------------------------------------------------------
  274. SYNTAX: MAINTAINER CMDS_SWITCH
  275. DESCRIPTION: Dump COMMAND switch.
  276. ------------------------------------------------------------
  277. SYNTAX: MAINTAINER CMDS TABLE
  278. DESCRIPTION: Dump COMMAND table.
  279. ------------------------------------------------------------
  280. SYNTAX: MAINTAINER DEBUG
  281. DESCRIPTION: Syntax Error.
  282. ------------------------------------------------------------
  283. SYNTAX: MAINTAINER DEBUG OFF
  284. DESCRIPTION: Disable degug tracing.
  285. ------------------------------------------------------------
  286. SYNTAX: MAINTAINER DEBUG ON
  287. DESCRIPTION: Enable degug tracing.
  288. ------------------------------------------------------------
  289. SYNTAX: MAINTAINER FNCS
  290. DESCRIPTION: Syntax Error.
  291. ------------------------------------------------------------
  292. SYNTAX: MAINTAINER FNCS HTML
  293. DESCRIPTION: Dump FUNCTION vs VERSION as HTML table.
  294. ------------------------------------------------------------
  295. SYNTAX: MAINTAINER FNCS ID
  296. DESCRIPTION: Dump FUNCTION #define.
  297. ------------------------------------------------------------
  298. SYNTAX: MAINTAINER FNCS MANUAL
  299. DESCRIPTION: Dump FUNCTION manual.
  300. ------------------------------------------------------------
  301. SYNTAX: MAINTAINER FNCS SWITCH
  302. DESCRIPTION: Dump FUNCTION switch.
  303. ------------------------------------------------------------
  304. SYNTAX: MAINTAINER FNCS TABLE
  305. DESCRIPTION: Dump FUNCTION table.
  306. ------------------------------------------------------------
  307. SYNTAX: MAINTAINER MANUAL
  308. DESCRIPTION: Dump manual for the currently selected OPTION
  309. VERSION.
  310. ------------------------------------------------------------
  311. SYNTAX: MAINTAINER STACK
  312. DESCRIPTION: Dump the BASIC stack.
  313. ------------------------------------------------------------
  314. SYNTAX: NEW
  315. DESCRIPTION: Deletes the program in memory and clears all
  316. variables.
  317. ------------------------------------------------------------
  318. SYNTAX: NEXT [variable]
  319. DESCRIPTION: The bottom line of a FOR - NEXT structure.
  320. ------------------------------------------------------------
  321. SYNTAX: OF
  322. DESCRIPTION: Syntax Error.
  323. ------------------------------------------------------------
  324. SYNTAX: ON value GOSUB line [, ...]
  325. DESCRIPTION: Calls based on the rounded value.
  326. ------------------------------------------------------------
  327. SYNTAX: ON value GOTO line [, ...]
  328. DESCRIPTION: Branches based on the rounded value.
  329. ------------------------------------------------------------
  330. SYNTAX: OPTION
  331. DESCRIPTION: Syntax Error.
  332. ------------------------------------------------------------
  333. SYNTAX: OPTION ANGLE
  334. DESCRIPTION: Syntax Error.
  335. ------------------------------------------------------------
  336. SYNTAX: OPTION ANGLE DEGREES
  337. DESCRIPTION: Configures these math functions to accept and
  338. return angles in degrees: ACOS, ACS, ANGLE,
  339. ARCSIN, ASIN, ASN, ARCTAN, ATN, ATAN, COS,
  340. COT, CSC, SEC, SIN and TAN.
  341. ------------------------------------------------------------
  342. SYNTAX: OPTION ANGLE GRADIANS
  343. DESCRIPTION: Configures these math functions to accept and
  344. return angles in gradians: ACOS, ANGLE,
  345. ASIN, ASN, ATN, ATAN, COS, COT, CSC, SEC, SIN
  346. and TAN.
  347. ------------------------------------------------------------
  348. SYNTAX: OPTION ANGLE RADIANS
  349. DESCRIPTION: Configures these math functions to accept and
  350. return angles in radians: ACOS, ANGLE, ASIN,
  351. ASN, ATN, ATAN, COS, COT, CSC, SEC, SIN and
  352. TAN.
  353. ------------------------------------------------------------
  354. SYNTAX: OPTION ARITHMETIC
  355. DESCRIPTION: Syntax Error.
  356. ------------------------------------------------------------
  357. SYNTAX: OPTION ARITHMETIC DECIMAL
  358. DESCRIPTION: Currently has no effect.
  359. ------------------------------------------------------------
  360. SYNTAX: OPTION ARITHMETIC FIXED
  361. DESCRIPTION: Currently has no effect.
  362. ------------------------------------------------------------
  363. SYNTAX: OPTION ARITHMETIC NATIVE
  364. DESCRIPTION: Currently has no effect.
  365. ------------------------------------------------------------
  366. SYNTAX: OPTION BASE integer
  367. DESCRIPTION: Sets the default lowest array subscript.
  368. ------------------------------------------------------------
  369. SYNTAX: OPTION BUGS
  370. DESCRIPTION: Syntax Error.
  371. ------------------------------------------------------------
  372. SYNTAX: OPTION BUGS BOOLEAN
  373. DESCRIPTION: Boolean results are 1 or 0 instead of bitwise.
  374. ------------------------------------------------------------
  375. SYNTAX: OPTION BUGS OFF
  376. DESCRIPTION: Disables bugs commonly found in many BASIC
  377. dialects.
  378. ------------------------------------------------------------
  379. SYNTAX: OPTION BUGS ON
  380. DESCRIPTION: Enables bugs commonly found in many BASIC
  381. dialects.
  382. ------------------------------------------------------------
  383. SYNTAX: OPTION COMPARE
  384. DESCRIPTION: Syntax Error.
  385. ------------------------------------------------------------
  386. SYNTAX: OPTION COMPARE BINARY
  387. DESCRIPTION: Causes string comparisons to be
  388. case-sensitive.
  389. ------------------------------------------------------------
  390. SYNTAX: OPTION COMPARE DATABASE
  391. DESCRIPTION: Causes string comparisons to be
  392. case-insensitive.
  393. ------------------------------------------------------------
  394. SYNTAX: OPTION COMPARE TEXT
  395. DESCRIPTION: Causes string comparisons to be
  396. case-insensitive.
  397. ------------------------------------------------------------
  398. SYNTAX: OPTION COVERAGE
  399. DESCRIPTION: Syntax Error.
  400. ------------------------------------------------------------
  401. SYNTAX: OPTION COVERAGE OFF
  402. DESCRIPTION: Disables BASIC code coverage recording,
  403. displayed using the LIST command.
  404. ------------------------------------------------------------
  405. SYNTAX: OPTION COVERAGE ON
  406. DESCRIPTION: Enables BASIC code coverage recording,
  407. displayed using the LIST command.
  408. ------------------------------------------------------------
  409. SYNTAX: OPTION DATE format$
  410. DESCRIPTION: Sets the date format string used by C
  411. strftime() for DATE$.
  412. ------------------------------------------------------------
  413. SYNTAX: OPTION DIGITS integer
  414. DESCRIPTION: Sets the number of significant digits for
  415. PRINT. Setting the value to zero restores
  416. the default.
  417. ------------------------------------------------------------
  418. SYNTAX: OPTION DISABLE
  419. DESCRIPTION: Syntax Error.
  420. ------------------------------------------------------------
  421. SYNTAX: OPTION DISABLE COMMAND name$
  422. DESCRIPTION: Disables the specified BASIC command.
  423. ------------------------------------------------------------
  424. SYNTAX: OPTION DISABLE FUNCTION name$
  425. DESCRIPTION: Disables the specified BASIC function.
  426. ------------------------------------------------------------
  427. SYNTAX: OPTION DISABLE OPERATOR name$
  428. DESCRIPTION: Disables the specified BASIC operator.
  429. ------------------------------------------------------------
  430. SYNTAX: OPTION EDIT string$
  431. DESCRIPTION: Sets the program name used by the EDIT
  432. command.
  433. ------------------------------------------------------------
  434. SYNTAX: OPTION ENABLE
  435. DESCRIPTION: Syntax Error.
  436. ------------------------------------------------------------
  437. SYNTAX: OPTION ENABLE COMMAND name$
  438. DESCRIPTION: Enables the specified BASIC command.
  439. ------------------------------------------------------------
  440. SYNTAX: OPTION ENABLE FUNCTION name$
  441. DESCRIPTION: Enables the specified BASIC function.
  442. ------------------------------------------------------------
  443. SYNTAX: OPTION ENABLE OPERATOR name$
  444. DESCRIPTION: Enables the specified BASIC operator.
  445. ------------------------------------------------------------
  446. SYNTAX: OPTION ERROR
  447. DESCRIPTION: Syntax Error.
  448. ------------------------------------------------------------
  449. SYNTAX: OPTION ERROR GOSUB
  450. DESCRIPTION: When an error occurs, GOSUB to the error
  451. handler. The error handler exits with
  452. RETURN.
  453. ------------------------------------------------------------
  454. SYNTAX: OPTION ERROR GOTO
  455. DESCRIPTION: When an error occurs, GOTO to the error
  456. handler. The error handler exits with
  457. RESUME.
  458. ------------------------------------------------------------
  459. SYNTAX: OPTION EXPLICIT
  460. DESCRIPTION: All variables must be declared using DIM.
  461. ------------------------------------------------------------
  462. SYNTAX: OPTION EXTENSION string$
  463. DESCRIPTION: Sets the BASIC filename extension, commonly
  464. ".bas".
  465. ------------------------------------------------------------
  466. SYNTAX: OPTION FILES string$
  467. DESCRIPTION: Sets the program name used by the FILES
  468. command.
  469. ------------------------------------------------------------
  470. SYNTAX: OPTION IMPLICIT
  471. DESCRIPTION: Variables need not be declared using DIM,
  472. provided arrays have no more that 10
  473. elements. This is the opposite of OPTION
  474. EXPLICIT, and is the default for all versions
  475. of BASIC.
  476. ------------------------------------------------------------
  477. SYNTAX: OPTION INDENT integer
  478. DESCRIPTION: Sets indention level for LIST. Zero means no
  479. indention. Default is 2.
  480. ------------------------------------------------------------
  481. SYNTAX: OPTION LABELS
  482. DESCRIPTION: Syntax Error.
  483. ------------------------------------------------------------
  484. SYNTAX: OPTION LABELS OFF
  485. DESCRIPTION: Disables text labels.
  486. ------------------------------------------------------------
  487. SYNTAX: OPTION LABELS ON
  488. DESCRIPTION: Enables text labels.
  489. ------------------------------------------------------------
  490. SYNTAX: OPTION PROMPT string$
  491. DESCRIPTION: Sets the BASIC prompt.
  492. ------------------------------------------------------------
  493. SYNTAX: OPTION PUNCT
  494. DESCRIPTION: Syntax Error.
  495. ------------------------------------------------------------
  496. SYNTAX: OPTION PUNCT AT char$
  497. DESCRIPTION: Sets the PRINT AT character, commonly "@".
  498. ------------------------------------------------------------
  499. SYNTAX: OPTION PUNCT BYTE char$
  500. DESCRIPTION: Sets the suffix character that indicates a
  501. variable is of type BYTE, commonly "~".
  502. ------------------------------------------------------------
  503. SYNTAX: OPTION PUNCT COMMENT char$
  504. DESCRIPTION: Sets the shortcut COMMENT character.
  505. ------------------------------------------------------------
  506. SYNTAX: OPTION PUNCT CURRENCY char$
  507. DESCRIPTION: Sets the suffix character that indicates a
  508. variable is of type CURRENCY, commonly "@".
  509. ------------------------------------------------------------
  510. SYNTAX: OPTION PUNCT DOUBLE char$
  511. DESCRIPTION: Sets the suffix character that indicates a
  512. variable is of type DOUBLE, commonly "#".
  513. ------------------------------------------------------------
  514. SYNTAX: OPTION PUNCT FILENUM char$
  515. DESCRIPTION: Sets the FILE NUMBER prefix character,
  516. commonly "#".
  517. ------------------------------------------------------------
  518. SYNTAX: OPTION PUNCT IMAGE char$
  519. DESCRIPTION: Sets the shortcut IMAGE character, commonly
  520. ":".
  521. ------------------------------------------------------------
  522. SYNTAX: OPTION PUNCT INPUT char$
  523. DESCRIPTION: Sets the shortcut INPUT character, commonly
  524. "!".
  525. ------------------------------------------------------------
  526. SYNTAX: OPTION PUNCT INTEGER char$
  527. DESCRIPTION: Sets the suffix character that indicates a
  528. variable is of type INTEGER, commonly "%".
  529. ------------------------------------------------------------
  530. SYNTAX: OPTION PUNCT LONG char$
  531. DESCRIPTION: Sets the suffix character that indicates a
  532. variable is of type LONG, commonly "&".
  533. ------------------------------------------------------------
  534. SYNTAX: OPTION PUNCT LPAREN char$
  535. DESCRIPTION: Sets the LEFT PARENTHESIS character, commonly
  536. "(".
  537. ------------------------------------------------------------
  538. SYNTAX: OPTION PUNCT_PRINT char$
  539. DESCRIPTION: Sets the shortcut PRINT character, commonly
  540. "?".
  541. ------------------------------------------------------------
  542. SYNTAX: OPTION PUNCT QUOTE char$
  543. DESCRIPTION: Sets the QUOTE character, commonly """
  544. ------------------------------------------------------------
  545. SYNTAX: OPTION PUNCT RPAREN char$
  546. DESCRIPTION: Sets the RIGHT PARENTHESIS character, commonly
  547. ")".
  548. ------------------------------------------------------------
  549. SYNTAX: OPTION PUNCT SINGLE char$
  550. DESCRIPTION: Sets the suffix character that indicates a
  551. variable is of type SINGLE, commonly "!".
  552. ------------------------------------------------------------
  553. SYNTAX: OPTION PUNCT STATEMENT char$
  554. DESCRIPTION: Sets the statement seperator character,
  555. commonly ":".
  556. ------------------------------------------------------------
  557. SYNTAX: OPTION PUNCT STRING char$
  558. DESCRIPTION: Sets the suffix character that indicates a
  559. variable is of type STRING, commonly "$".
  560. ------------------------------------------------------------
  561. SYNTAX: OPTION RECLEN integer
  562. DESCRIPTION: Sets the default RANDOM record length.
  563. ------------------------------------------------------------
  564. SYNTAX: OPTION RENUM string$
  565. DESCRIPTION: Sets the program name used by the RENUM
  566. command.
  567. ------------------------------------------------------------
  568. SYNTAX: OPTION ROUND
  569. DESCRIPTION: Syntax Error.
  570. ------------------------------------------------------------
  571. SYNTAX: OPTION ROUND BANK
  572. DESCRIPTION: Round using the Banker rule.
  573. ------------------------------------------------------------
  574. SYNTAX: OPTION ROUND MATH
  575. DESCRIPTION: Round using mathematical rules.
  576. ------------------------------------------------------------
  577. SYNTAX: OPTION ROUND TRUNCATE
  578. DESCRIPTION: Round using truncation.
  579. ------------------------------------------------------------
  580. SYNTAX: OPTION SCALE integer
  581. DESCRIPTION: Sets the number of digits to round after the
  582. decimal point for PRINT. Setting the value
  583. to zero disables rounding.
  584. ------------------------------------------------------------
  585. SYNTAX: OPTION SLEEP double
  586. DESCRIPTION: Sets multiplier for SLEEP and WAIT. Zero
  587. means no waiting. Default is 1.
  588. ------------------------------------------------------------
  589. SYNTAX: OPTION STDERR filename$
  590. DESCRIPTION: Sets the file used for STDERR, which is used
  591. by LPRINT commands.
  592. ------------------------------------------------------------
  593. SYNTAX: OPTION STDIN filename$
  594. DESCRIPTION: Sets the file used for STDIN, which is used by
  595. INPUT commands.
  596. ------------------------------------------------------------
  597. SYNTAX: OPTION STDOUT filename$
  598. DESCRIPTION: Sets the file used for STDOUT, which is used
  599. by PRINT commands.
  600. ------------------------------------------------------------
  601. SYNTAX: OPTION STRICT
  602. DESCRIPTION: Syntax Error.
  603. ------------------------------------------------------------
  604. SYNTAX: OPTION STRICT OFF
  605. DESCRIPTION: Disables checking for implicit array creation
  606. without using the DIM command.
  607. ------------------------------------------------------------
  608. SYNTAX: OPTION STRICT ON
  609. DESCRIPTION: Enables checking for implicit array creation
  610. without using the DIM command.
  611. ------------------------------------------------------------
  612. SYNTAX: OPTION TERMINAL
  613. DESCRIPTION: Syntax Error.
  614. ------------------------------------------------------------
  615. SYNTAX: OPTION TERMINAL ADM
  616. DESCRIPTION: Enables ADM-3A terminal control codes for CLS,
  617. COLOR, and LOCATE.
  618. ------------------------------------------------------------
  619. SYNTAX: OPTION TERMINAL ANSI
  620. DESCRIPTION: Enables ANSI terminal control codes for CLS,
  621. COLOR, and LOCATE.
  622. ------------------------------------------------------------
  623. SYNTAX: OPTION TERMINAL NONE
  624. DESCRIPTION: Disables terminal control codes for CLS,
  625. COLOR, and LOCATE.
  626. ------------------------------------------------------------
  627. SYNTAX: OPTION TIME format$
  628. DESCRIPTION: Sets the time format string used by C
  629. strftime() for TIME$.
  630. ------------------------------------------------------------
  631. SYNTAX: OPTION TRACE
  632. DESCRIPTION: Syntax Error.
  633. ------------------------------------------------------------
  634. SYNTAX: OPTION TRACE OFF
  635. DESCRIPTION: Disables displaying a stack trace when an
  636. ERROR occurs.
  637. ------------------------------------------------------------
  638. SYNTAX: OPTION TRACE ON
  639. DESCRIPTION: Enables displaying a stack trace when an ERROR
  640. occurs.
  641. ------------------------------------------------------------
  642. SYNTAX: OPTION USING
  643. DESCRIPTION: Syntax Error.
  644. ------------------------------------------------------------
  645. SYNTAX: OPTION USING ALL char$
  646. DESCRIPTION: Specifies the magic ALL character for the
  647. PRINT USING command. A common value is "&".
  648. ------------------------------------------------------------
  649. SYNTAX: OPTION USING COMMA char$
  650. DESCRIPTION: Specifies the magic COMMA character for the
  651. PRINT USING command. A common value is ",".
  652. ------------------------------------------------------------
  653. SYNTAX: OPTION USING DIGIT char$
  654. DESCRIPTION: Specifies the magic DIGIT character for the
  655. PRINT USING command. A common value is "#".
  656. ------------------------------------------------------------
  657. SYNTAX: OPTION USING DOLLAR char$
  658. DESCRIPTION: Specifies the magic DOLLAR character for the
  659. PRINT USING command. A common value is "$".
  660. ------------------------------------------------------------
  661. SYNTAX: OPTION USING EXRAD char$
  662. DESCRIPTION: Specifies the magic EXRAD character for the
  663. PRINT USING command. A common value is "^".
  664. ------------------------------------------------------------
  665. SYNTAX: OPTION USING FILLER char$
  666. DESCRIPTION: Specifies the magic FILLER character for the
  667. PRINT USING command. A common value is "*".
  668. ------------------------------------------------------------
  669. SYNTAX: OPTION USING FIRST char$
  670. DESCRIPTION: Specifies the magic FIRST character for the
  671. PRINT USING command. A common value is "!".
  672. ------------------------------------------------------------
  673. SYNTAX: OPTION USING LENGTH char$
  674. DESCRIPTION: Specifies the magic LENGTH character for the
  675. PRINT USING command. A common value is "\".
  676. ------------------------------------------------------------
  677. SYNTAX: OPTION USING LITERAL char$
  678. DESCRIPTION: Specifies the magic LITERAL character for the
  679. PRINT USING command. A common value is "_".
  680. ------------------------------------------------------------
  681. SYNTAX: OPTION USING MINUS char$
  682. DESCRIPTION: Specifies the magic MINUS character for the
  683. PRINT USING command. A common value is "-".
  684. ------------------------------------------------------------
  685. SYNTAX: OPTION USING PERIOD char$
  686. DESCRIPTION: Specifies the magic PERIOD character for the
  687. PRINT USING command. A common value is ".".
  688. ------------------------------------------------------------
  689. SYNTAX: OPTION USING PLUS char$
  690. DESCRIPTION: Specifies the magic PLUS character for the
  691. PRINT USING command. A common value is "+".
  692. ------------------------------------------------------------
  693. SYNTAX: OPTION VERSION version$
  694. DESCRIPTION: Selects a specific BASIC version, which is a
  695. combination of OPTION settings, commands,
  696. functions and operators. If no version is
  697. specified, displays a list of the available
  698. versions.
  699. ------------------------------------------------------------
  700. SYNTAX: OPTION ZONE integer
  701. DESCRIPTION: Sets the PRINT zone width. Setting the value
  702. to zero restores the default.
  703. ------------------------------------------------------------
  704. SYNTAX: PRINT # filenum , [USING format$;] value ...
  705. DESCRIPTION: Sends output to a file.
  706. ------------------------------------------------------------
  707. SYNTAX: PRINT [USING format$;] value ...
  708. DESCRIPTION: Sends output to the screen.
  709. ------------------------------------------------------------
  710. SYNTAX: QUIT
  711. DESCRIPTION: Exits to the operating system.
  712. ------------------------------------------------------------
  713. SYNTAX: READ variable [, ...]
  714. DESCRIPTION: Reads values from DATA statements.
  715. ------------------------------------------------------------
  716. SYNTAX: REM ...
  717. DESCRIPTION: Remark.
  718. ------------------------------------------------------------
  719. SYNTAX: RESTORE [line]
  720. DESCRIPTION: Resets the line used for the next READ
  721. statement. line may be either a number or a
  722. label.
  723. ------------------------------------------------------------
  724. SYNTAX: RETURN
  725. DESCRIPTION: Concludes a subroutine called by GOSUB.
  726. ------------------------------------------------------------
  727. SYNTAX: RUN filename$
  728. DESCRIPTION: Loads a new BAASIC program and executes the
  729. program from the start.
  730. ------------------------------------------------------------
  731. SYNTAX: RUN line
  732. DESCRIPTION: Executes the program in memory beginning at
  733. line.
  734. ------------------------------------------------------------
  735. SYNTAX: RUN
  736. DESCRIPTION: Executes the program in memory from the start.
  737. ------------------------------------------------------------
  738. SYNTAX: SAVE [filename$]
  739. DESCRIPTION: Saves the current program into the file
  740. filename$ in ASCII format.
  741. ------------------------------------------------------------
  742. SYNTAX: SELECT
  743. DESCRIPTION: Syntax Error.
  744. ------------------------------------------------------------
  745. SYNTAX: SELECT CASE value
  746. DESCRIPTION: Introduces a multi-line conditional selection
  747. statement.
  748. ------------------------------------------------------------
  749. SYNTAX: STEP
  750. DESCRIPTION: Syntax Error.
  751. ------------------------------------------------------------
  752. SYNTAX: STOP
  753. DESCRIPTION: Interrupts program execution and displays the
  754. line number of the STOP command. For use
  755. when debugging BASIC programs. Whether STOP
  756. issues a SIGINT signal is implementation
  757. defined.
  758. ------------------------------------------------------------
  759. SYNTAX: SUB name [ ( parameter [,...] ) ]
  760. DESCRIPTION: Top line of a multi-line SUB definition. The
  761. variable names specified are local to the SUB
  762. definition, and are initialized BYVAL when
  763. the subroutine is invoked by another routine.
  764. ------------------------------------------------------------
  765. SYNTAX: SYSTEM
  766. DESCRIPTION: Exits to the operating system.
  767. ------------------------------------------------------------
  768. SYNTAX: THEN
  769. DESCRIPTION: Syntax Error.
  770. ------------------------------------------------------------
  771. SYNTAX: TO
  772. DESCRIPTION: Syntax Error.
  773. ------------------------------------------------------------
  774. ============================================================
  775. FUNCTIONS
  776. ============================================================
  777. ------------------------------------------------------------
  778. SYNTAX: N = ABS( X )
  779. PARAMETER: X is a number
  780. DESCRIPTION: The absolute value of X.
  781. ------------------------------------------------------------
  782. SYNTAX: N = ACOS( X )
  783. PARAMETER: X is a number
  784. DESCRIPTION: The arccosine of X in radians, where 0 <=
  785. ACOS(X) <= PI. X shall be in the range -1 <=
  786. X <= 1.
  787. ------------------------------------------------------------
  788. SYNTAX: N = ANGLE( X, Y )
  789. PARAMETER: X is a number
  790. PARAMETER: Y is a number
  791. DESCRIPTION: The angle in radians between the positive
  792. x-axis and the vector joining the origin to
  793. the point with coordinates (X, Y), where -PI
  794. < ANGLE(X,Y) <= PI. X and Y must not both be
  795. 0. Note that the counterclockwise is
  796. positive, e.g., ANGLE(1,1) = 45 degrees.
  797. ------------------------------------------------------------
  798. SYNTAX: N = ASC( A$ )
  799. PARAMETER: A$ is a string, LEN >= 1
  800. DESCRIPTION: The numeric code for the first letter in A$.
  801. For example, ASC("ABC") returns 65 on ASCII
  802. systems.
  803. ------------------------------------------------------------
  804. SYNTAX: N = ASIN( X )
  805. PARAMETER: X is a number
  806. DESCRIPTION: The arcsine of X in radians, where -PI/2 <=
  807. ASIN(X) <= PI/2; X shall be in the range -1
  808. <= X <= 1.
  809. ------------------------------------------------------------
  810. SYNTAX: N = ATN( X )
  811. PARAMETER: X is a number
  812. DESCRIPTION: The arctangent of X in radians, i.e. the angle
  813. whose tangent is X, where -PI/2 < ATN(X) <
  814. PI/2.
  815. ------------------------------------------------------------
  816. SYNTAX: N = CEIL( X )
  817. PARAMETER: X is a number
  818. DESCRIPTION: The smallest integer not less than X.
  819. ------------------------------------------------------------
  820. SYNTAX: S$ = CHR$( X )
  821. PARAMETER: X is a number, [0,255]
  822. DESCRIPTION: The one-character string with the character
  823. corresponding to the numeric code X. On
  824. ASCII systems, CHR$(65) returns "A".
  825. ------------------------------------------------------------
  826. SYNTAX: N = COS( X )
  827. PARAMETER: X is a number
  828. DESCRIPTION: The cosine of X, where X is in radians.
  829. ------------------------------------------------------------
  830. SYNTAX: N = COSH( X )
  831. PARAMETER: X is a number
  832. DESCRIPTION: The hyperbolic cosine of X.
  833. ------------------------------------------------------------
  834. SYNTAX: N = COT( X )
  835. PARAMETER: X is a number
  836. DESCRIPTION: The cotangent of X, where X is in radians.
  837. ------------------------------------------------------------
  838. SYNTAX: N = CSC( X )
  839. PARAMETER: X is a number
  840. DESCRIPTION: The cosecant of X, where X is in radians.
  841. ------------------------------------------------------------
  842. SYNTAX: N = DATE
  843. DESCRIPTION: The current date in decimal form YYYDDD, where
  844. YYY are the number of years since 1900 and
  845. DDD is the ordinal number of the current day
  846. of the year; e.g., the value of DATE on May
  847. 9, 1977 was 77129. If there is no calendar
  848. available, then the value of DATE shall be
  849. -1.
  850. ------------------------------------------------------------
  851. SYNTAX: S$ = DATE$
  852. DESCRIPTION: The current date based on the internal clock
  853. as a string in the format set by OPTION DATE.
  854. ------------------------------------------------------------
  855. SYNTAX: N = DEG( X )
  856. PARAMETER: X is a number
  857. DESCRIPTION: The number of degrees in X radians.
  858. ------------------------------------------------------------
  859. SYNTAX: N = EPS( X )
  860. PARAMETER: X is a number
  861. DESCRIPTION: The maximum of (X-X1,X2-X, sigma) where X1 and
  862. X2 are the predecessor and successor of X and
  863. signma is the smallest positive value
  864. representable. If X has no predecessor the
  865. X1=X and if X has no successor the X2=X.
  866. Note EPS(0) is the smallest positive number
  867. representable by the implementation, and is
  868. therefor implementation-defined. Note also
  869. that EPS may produce different results for
  870. different arithmetic options (see OPTION
  871. ARITHMETIC).
  872. ------------------------------------------------------------
  873. SYNTAX: N = EXP( X )
  874. PARAMETER: X is a number
  875. DESCRIPTION: The exponential value of X, i.e., the value of
  876. the base of natural logarithms (e = 2.71828)
  877. raised to the power of X; if EXP(X) is less
  878. that machine infinitesimal, then its value
  879. shall be replaced with zero.
  880. ------------------------------------------------------------
  881. SYNTAX: N = FIX( X )
  882. PARAMETER: X is a number
  883. DESCRIPTION: The truncated integer, part of X. FIX (X) is
  884. equivalent to SGN(X)*INT(ABS(X)). The major
  885. difference between FIX and INT is that FIX
  886. does not return the next lower number for
  887. negative X.
  888. ------------------------------------------------------------
  889. SYNTAX: N = FP( X )
  890. PARAMETER: X is a number
  891. DESCRIPTION: The fractional part of X, i.e. X - IP(X).
  892. ------------------------------------------------------------
  893. SYNTAX: N = INT( X )
  894. PARAMETER: X is a number
  895. DESCRIPTION: The largest integer not greater than X; e.g.
  896. INT(1.3) = 1 and INT(-1.3) = 2.
  897. ------------------------------------------------------------
  898. SYNTAX: N = IP( X )
  899. PARAMETER: X is a number
  900. DESCRIPTION: The integer part of X, i.e.,
  901. SGN(X)*INT(ABS(X)).
  902. ------------------------------------------------------------
  903. SYNTAX: N = LBOUND( ... )
  904. DESCRIPTION: LBOUND( arrayname [, dimension] ). The lower
  905. bound of the array. The dimension defaults
  906. to 1. dimension in [1,DIM(arrayname)]
  907. ------------------------------------------------------------
  908. SYNTAX: S$ = LCASE$( A$ )
  909. PARAMETER: A$ is a string, LEN >= 0
  910. DESCRIPTION: The string of characters from the value
  911. associatedwith A$ by replacing each
  912. upper-case-letter in the string by its
  913. lower-case version.
  914. ------------------------------------------------------------
  915. SYNTAX: S$ = LEFT$( A$, X )
  916. PARAMETER: A$ is a string, LEN >= 0
  917. PARAMETER: X is a number, [0,MAXLEN]
  918. DESCRIPTION: The X left-most characters of A$, beginning
  919. from postion 1.
  920. ------------------------------------------------------------
  921. SYNTAX: N = LEN( A$ )
  922. PARAMETER: A$ is a string, LEN >= 0
  923. DESCRIPTION: The length of A$.
  924. ------------------------------------------------------------
  925. SYNTAX: N = LOC( X )
  926. PARAMETER: X is a number, [MININT,MAXINT]
  927. DESCRIPTION: The location of file X; the next record that
  928. GET or PUT statements will use.
  929. ------------------------------------------------------------
  930. SYNTAX: N = LOF( X )
  931. PARAMETER: X is a number, [MININT,MAXINT]
  932. DESCRIPTION: The length of file X.
  933. ------------------------------------------------------------
  934. SYNTAX: N = LOG( X )
  935. PARAMETER: X is a number, > 0
  936. DESCRIPTION: The natural logarithm of X; X shall be greater
  937. than zero.
  938. ------------------------------------------------------------
  939. SYNTAX: N = LOG10( X )
  940. PARAMETER: X is a number, > 0
  941. DESCRIPTION: The common logarithm of X; X shall be greater
  942. than zero.
  943. ------------------------------------------------------------
  944. SYNTAX: N = LOG2( X )
  945. PARAMETER: X is a number, > 0
  946. DESCRIPTION: The base 2 logarithm of X; X shall be greater
  947. than zero.
  948. ------------------------------------------------------------
  949. SYNTAX: S$ = LTRIM$( A$ )
  950. PARAMETER: A$ is a string, LEN >= 0
  951. DESCRIPTION: The string of characters resulting from the
  952. value associated with A$ by deleting all
  953. leading space characters.
  954. ------------------------------------------------------------
  955. SYNTAX: N = MAX( X, Y )
  956. PARAMETER: X is a number
  957. PARAMETER: Y is a number
  958. DESCRIPTION: The larger of the parameters.
  959. ------------------------------------------------------------
  960. SYNTAX: N = MAXLEN
  961. DESCRIPTION: The maximum string length.
  962. ------------------------------------------------------------
  963. SYNTAX: N = MAXLEN( A$ )
  964. PARAMETER: A$ is a string, LEN >= 0
  965. DESCRIPTION: The maximum length associated with the
  966. simple-string-variable A$.
  967. ------------------------------------------------------------
  968. SYNTAX: N = MAXNUM
  969. DESCRIPTION: The largest finite positive number
  970. representable and manipulable by the
  971. implementation; implementation-defined.
  972. MAXNUM may represent diffent number for
  973. different arithmetic options (see OPTION
  974. ARITHMETIC).
  975. ------------------------------------------------------------
  976. SYNTAX: S$ = MID$( A$, X )
  977. PARAMETER: A$ is a string, LEN >= 0
  978. PARAMETER: X is a number, [1,MAXLEN]
  979. DESCRIPTION: The characters of A$, starting from postion X.
  980. ------------------------------------------------------------
  981. SYNTAX: S$ = MID$( A$, X, Y )
  982. PARAMETER: A$ is a string, LEN >= 0
  983. PARAMETER: X is a number, [1,MAXLEN]
  984. PARAMETER: Y is a number, [0,MAXLEN]
  985. DESCRIPTION: The Y characters of A$, starting from postion
  986. X.
  987. ------------------------------------------------------------
  988. SYNTAX: N = MIN( X, Y )
  989. PARAMETER: X is a number
  990. PARAMETER: Y is a number
  991. DESCRIPTION: The smaller of the parameters.
  992. ------------------------------------------------------------
  993. SYNTAX: N = MOD( X, Y )
  994. PARAMETER: X is a number
  995. PARAMETER: Y is a number, <> 0
  996. DESCRIPTION: X modulo Y, i.e., X-Y*INT(X/Y). Y shall not
  997. equal zero.
  998. ------------------------------------------------------------
  999. SYNTAX: S$ = NUM$( X )
  1000. PARAMETER: X is a number
  1001. DESCRIPTION: The string generated by the print-statement as
  1002. the numeric-representation of the value
  1003. associated with X.
  1004. ------------------------------------------------------------
  1005. SYNTAX: N = ORD( A$ )
  1006. PARAMETER: A$ is a string, LEN >= 1
  1007. DESCRIPTION: The ordinal position of the character named by
  1008. the string associated with A$ in the
  1009. collating sequence of ASCII character set,
  1010. where the first member of the character set
  1011. is in position zero. The acceptable values
  1012. for the standard character set are shown in
  1013. Table 1.
  1014. ------------------------------------------------------------
  1015. SYNTAX: N = PI
  1016. DESCRIPTION: The constant 3.14159 which is the ratio of the
  1017. circumference of a circle to its diameter.
  1018. ------------------------------------------------------------
  1019. SYNTAX: N = POS( A$, B$ )
  1020. PARAMETER: A$ is a string, LEN >= 0
  1021. PARAMETER: B$ is a string, LEN >= 0
  1022. DESCRIPTION: The character position, within the value
  1023. assocated with A$, of the first character of
  1024. the first occurence of the value associated
  1025. with B$, starting at the first character of
  1026. A$. If there is not such occurence, then the
  1027. value returned is zero.
  1028. ------------------------------------------------------------
  1029. SYNTAX: N = POS( A$, B$, X )
  1030. PARAMETER: A$ is a string, LEN >= 0
  1031. PARAMETER: B$ is a string, LEN >= 0
  1032. PARAMETER: X is a number, [1,MAXLEN]
  1033. DESCRIPTION: The character position, within the value
  1034. assocated with A$, of the first character of
  1035. the first occurence of the value associated
  1036. with B$, starting at the Xth character of A$.
  1037. If there is not such occurence, then the
  1038. value returned is zero.
  1039. ------------------------------------------------------------
  1040. SYNTAX: N = RAD( X )
  1041. PARAMETER: X is a number
  1042. DESCRIPTION: The number of radians in X degrees.
  1043. ------------------------------------------------------------
  1044. SYNTAX: N = RANDOMIZE
  1045. DESCRIPTION: Seeds the pseudo-random number generator with
  1046. TIME.
  1047. ------------------------------------------------------------
  1048. SYNTAX: N = RANDOMIZE( X )
  1049. PARAMETER: X is a number
  1050. DESCRIPTION: Seeds the pseudo-random number generator with
  1051. X.
  1052. ------------------------------------------------------------
  1053. SYNTAX: N = REMAINDER( X, Y )
  1054. PARAMETER: X is a number
  1055. PARAMETER: Y is a number, <> 0
  1056. DESCRIPTION: The remainder function, i.e., X-Y*IP(X/Y). Y
  1057. shall not equal zero.
  1058. ------------------------------------------------------------
  1059. SYNTAX: S$ = RIGHT$( A$, X )
  1060. PARAMETER: A$ is a string, LEN >= 0
  1061. PARAMETER: X is a number, [0,MAXLEN]
  1062. DESCRIPTION: The right-most X characters of A$.
  1063. ------------------------------------------------------------
  1064. SYNTAX: N = RND
  1065. DESCRIPTION: The next pseudo-random number in an
  1066. implementation-defined sequence of
  1067. pseudo-random numbers uniformly distributed
  1068. in the range 0 <= RND < 1.
  1069. ------------------------------------------------------------
  1070. SYNTAX: N = RND( X )
  1071. PARAMETER: X is a number
  1072. DESCRIPTION: Returns a pseudorandom number in the range
  1073. [0,1]. The value of X is ignored.
  1074. ------------------------------------------------------------
  1075. SYNTAX: N = ROUND( X, Y )
  1076. PARAMETER: X is a number
  1077. PARAMETER: Y is a number, [MININT,MAXINT]
  1078. DESCRIPTION: The value of X rounded to Y decimal digits to
  1079. the right of the decimal point (or -Y digits
  1080. to the left if Y < 0); i.e.,
  1081. INT(X*10^Y+.5)/10^Y. Y must be in [-32,32].
  1082. ------------------------------------------------------------
  1083. SYNTAX: S$ = RTRIM$( A$ )
  1084. PARAMETER: A$ is a string, LEN >= 0
  1085. DESCRIPTION: The string of characters resulting from the
  1086. value associated with A$ by deleting all
  1087. trailing space characters.
  1088. ------------------------------------------------------------
  1089. SYNTAX: N = SEC( X )
  1090. PARAMETER: X is a number
  1091. DESCRIPTION: The secant of X, where X is in radians.
  1092. ------------------------------------------------------------
  1093. SYNTAX: N = SEEK( X )
  1094. PARAMETER: X is a number, [MININT,MAXINT]
  1095. DESCRIPTION: The location of file X; the next record that
  1096. GET or PUT statements will use.
  1097. ------------------------------------------------------------
  1098. SYNTAX: N = SGN( X )
  1099. PARAMETER: X is a number
  1100. DESCRIPTION: The sign of X: -1 if X < 0, 0 if X = 0, and +1
  1101. if X > 0.
  1102. ------------------------------------------------------------
  1103. SYNTAX: N = SIN( X )
  1104. PARAMETER: X is a number
  1105. DESCRIPTION: The sine of X, where X is in radians.
  1106. ------------------------------------------------------------
  1107. SYNTAX: N = SINH( X )
  1108. PARAMETER: X is a number
  1109. DESCRIPTION: The hyperbolic sine of X.
  1110. ------------------------------------------------------------
  1111. SYNTAX: N = SIZE( ... )
  1112. DESCRIPTION: SIZE( arrayname ). The total number of items
  1113. in the array.
  1114. ------------------------------------------------------------
  1115. SYNTAX: S$ = SPC( X )
  1116. PARAMETER: X is a number
  1117. DESCRIPTION: The string of X spaces. Only for use within
  1118. the PRINT command.
  1119. ------------------------------------------------------------
  1120. SYNTAX: N = SQR( X )
  1121. PARAMETER: X is a number, >= 0
  1122. DESCRIPTION: The non-negative square root of X; X shall be
  1123. non-negative.
  1124. ------------------------------------------------------------
  1125. SYNTAX: S$ = STR$( X )
  1126. PARAMETER: X is a number
  1127. DESCRIPTION: The string generated by the print-statement as
  1128. the numeric-representation of the value
  1129. associated with X.
  1130. ------------------------------------------------------------
  1131. SYNTAX: S$ = STRING$( X, A$ )
  1132. PARAMETER: X is a number, [0,MAXLEN]
  1133. PARAMETER: A$ is a string, LEN >= 1
  1134. DESCRIPTION: The string X bytes long consisting of the
  1135. first character of A$.
  1136. ------------------------------------------------------------
  1137. SYNTAX: S$ = STRING$( X, Y )
  1138. PARAMETER: X is a number, [0,MAXLEN]
  1139. PARAMETER: Y is a number, [0,255]
  1140. DESCRIPTION: The string X bytes long consisting of CHR$(Y).
  1141. ------------------------------------------------------------
  1142. SYNTAX: S$ = TAB( X )
  1143. PARAMETER: X is a number
  1144. DESCRIPTION: The string required to advance to column X.
  1145. Only for use within the PRINT command.
  1146. ------------------------------------------------------------
  1147. SYNTAX: N = TAN( X )
  1148. PARAMETER: X is a number
  1149. DESCRIPTION: The tangent of X, where X is in radians.
  1150. ------------------------------------------------------------
  1151. SYNTAX: N = TANH( X )
  1152. PARAMETER: X is a number
  1153. DESCRIPTION: The hyperbolic tangent of X.
  1154. ------------------------------------------------------------
  1155. SYNTAX: N = TIME
  1156. DESCRIPTION: The time elapsed since the previous midnight,
  1157. expressed in seconds; e.g., the value of TIME
  1158. at 11:15 AM is 40500. If there is no clock
  1159. available, then the value of TIME shall be
  1160. -1. The value of TIME at midnight shall be
  1161. zero (not 86400).
  1162. ------------------------------------------------------------
  1163. SYNTAX: S$ = TIME$
  1164. DESCRIPTION: The time of day in 24-hour notation according
  1165. to ISO 3307. For example, the value of TIME$
  1166. at 11:15 AM is "11:15:00". If there is no
  1167. clock available, then the value of TIME$
  1168. shall be "99:99:99". The value of TIME$ at
  1169. midnight is "00:00:00".
  1170. ------------------------------------------------------------
  1171. SYNTAX: S$ = TRIM$( A$ )
  1172. PARAMETER: A$ is a string, LEN >= 0
  1173. DESCRIPTION: The string resulting from removing both
  1174. leading and trailing spaces from A$.
  1175. ------------------------------------------------------------
  1176. SYNTAX: N = TROFF
  1177. DESCRIPTION: Turn tracing OFF
  1178. ------------------------------------------------------------
  1179. SYNTAX: N = TRON
  1180. DESCRIPTION: Turn tracing ON
  1181. ------------------------------------------------------------
  1182. SYNTAX: N = TRUNCATE( X, Y )
  1183. PARAMETER: X is a number
  1184. PARAMETER: Y is a number, [MININT,MAXINT]
  1185. DESCRIPTION: The value of X truncated to Y decimal digits
  1186. to the right of the decimal point (or -Y
  1187. digits to the left if Y < 0); i.e.,
  1188. IP(X*10^Y)/10^Y. Y in [-32,32].
  1189. ------------------------------------------------------------
  1190. SYNTAX: N = UBOUND( ... )
  1191. DESCRIPTION: UBOUND( arrayname [, dimension] ). The upper
  1192. bound of the array. The dimension defaults
  1193. to 1. dimension in [1,DIM(arrayname)]
  1194. ------------------------------------------------------------
  1195. SYNTAX: S$ = UCASE$( A$ )
  1196. PARAMETER: A$ is a string, LEN >= 0
  1197. DESCRIPTION: The string of characters resulting from the
  1198. value associated with A$ by replacing each
  1199. lower-case-letter in the string by its
  1200. upper-case version.
  1201. ------------------------------------------------------------
  1202. SYNTAX: N = VAL( A$ )
  1203. PARAMETER: A$ is a string, LEN >= 1
  1204. DESCRIPTION: The value of the numeric-constant associated
  1205. with A$, if the string associated with A$ is
  1206. a numeric-constant. Leading and trailing
  1207. spaces in the string are ignored. If the
  1208. evaluation of the numeric-constant would
  1209. result in a value which causes an underflow,
  1210. then the value returned shall be zero. For
  1211. example, VAL( " 123.5 " ) = 123.5, VAL(
  1212. "2.E-99" ) could be zero, and VAL( "MCMXVII"
  1213. ) causes an exception.
  1214. ------------------------------------------------------------
  1215. ============================================================
  1216. OPERATORS
  1217. ============================================================
  1218. ------------------------------------------------------------
  1219. SYNTAX: X ^ Y
  1220. DESCRIPTION: Exponential
  1221. PRECEDENCE: 14
  1222. ------------------------------------------------------------
  1223. SYNTAX: # X
  1224. DESCRIPTION: Posation
  1225. PRECEDENCE: 13
  1226. ------------------------------------------------------------
  1227. SYNTAX: + X
  1228. DESCRIPTION: Posation
  1229. PRECEDENCE: 13
  1230. ------------------------------------------------------------
  1231. SYNTAX: - X
  1232. DESCRIPTION: Negation
  1233. PRECEDENCE: 13
  1234. ------------------------------------------------------------
  1235. SYNTAX: X * Y
  1236. DESCRIPTION: Multiplication
  1237. PRECEDENCE: 12
  1238. ------------------------------------------------------------
  1239. SYNTAX: X / Y
  1240. DESCRIPTION: Division
  1241. PRECEDENCE: 12
  1242. ------------------------------------------------------------
  1243. SYNTAX: X \ Y
  1244. DESCRIPTION: Integer Division
  1245. PRECEDENCE: 11
  1246. ------------------------------------------------------------
  1247. SYNTAX: X + Y
  1248. DESCRIPTION: Addition
  1249. PRECEDENCE: 9
  1250. ------------------------------------------------------------
  1251. SYNTAX: X - Y
  1252. DESCRIPTION: Subtraction
  1253. PRECEDENCE: 9
  1254. ------------------------------------------------------------
  1255. SYNTAX: X < Y
  1256. DESCRIPTION: Less than
  1257. PRECEDENCE: 7
  1258. ------------------------------------------------------------
  1259. SYNTAX: X <= Y
  1260. DESCRIPTION: Less than or Equal
  1261. PRECEDENCE: 7
  1262. ------------------------------------------------------------
  1263. SYNTAX: X <> Y
  1264. DESCRIPTION: Not Equal
  1265. PRECEDENCE: 7
  1266. ------------------------------------------------------------
  1267. SYNTAX: X = Y
  1268. DESCRIPTION: Equal
  1269. PRECEDENCE: 7
  1270. ------------------------------------------------------------
  1271. SYNTAX: X =< Y
  1272. DESCRIPTION: Less than or Equal
  1273. PRECEDENCE: 7
  1274. ------------------------------------------------------------
  1275. SYNTAX: X => Y
  1276. DESCRIPTION: Greater than or Equal
  1277. PRECEDENCE: 7
  1278. ------------------------------------------------------------
  1279. SYNTAX: X > Y
  1280. DESCRIPTION: Greater than
  1281. PRECEDENCE: 7
  1282. ------------------------------------------------------------
  1283. SYNTAX: X >< Y
  1284. DESCRIPTION: Not Equal
  1285. PRECEDENCE: 7
  1286. ------------------------------------------------------------
  1287. SYNTAX: X >= Y
  1288. DESCRIPTION: Greater than or Equal
  1289. PRECEDENCE: 7
  1290. ------------------------------------------------------------
  1291. SYNTAX: NOT X
  1292. DESCRIPTION: Bitwise NOT
  1293. PRECEDENCE: 6
  1294. ------------------------------------------------------------
  1295. SYNTAX: X AND Y
  1296. DESCRIPTION: Bitwise AND
  1297. PRECEDENCE: 5
  1298. ------------------------------------------------------------
  1299. SYNTAX: X OR Y
  1300. DESCRIPTION: Bitwise OR
  1301. PRECEDENCE: 4
  1302. ------------------------------------------------------------