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.

bwd_six.h 26 KiB

v3.20 * Implements most of the following BASIC dialects: OPTION VERSION "BYWATER" ' Bywater BASIC 3 OPTION VERSION "BYWATER-2" ' Bywater BASIC 2 OPTION VERSION "CALL/360" ' SBC CALL/360 Mainframe BASIC OPTION VERSION "CBASIC-II" ' CBASIC-II for CP/M OPTION VERSION "DARTMOUTH" ' Dartmouth DTSS BASIC OPTION VERSION "ECMA-55" ' ANSI Minimal BASIC OPTION VERSION "ECMA-116" ' ANSI Full BASIC OPTION VERSION "GCOS" ' GE 600 Mainframe BASIC OPTION VERSION "HAARDT" ' bas 2.4 by Michael Haardt OPTION VERSION "HANDBOOK1" ' The BASIC Handbook, 1st Edition OPTION VERSION "HANDBOOK2" ' The BASIC Handbook, 2nd Edition OPTION VERSION "HEATH" ' Heath Benton Harbor BASIC OPTION VERSION "MARK-I" ' GE 265 Mainframe BASIC OPTION VERSION "MARK-II" ' GE 435 Mainframe BASIC OPTION VERSION "MBASIC" ' Microsoft BASIC-80 for Xenix OPTION VERSION "PDP-8" ' DEC PDP-8 BASIC OPTION VERSION "PDP-11" ' DEC PDP-11 BASIC OPTION VERSION "RBASIC" ' Micronics RBASIC for 6809 FLEX OPTION VERSION "RSTS-11" ' DEC RSTS-11 BASIC-PLUS OPTION VERSION "SYSTEM/360" ' IBM System/360 Mainframe BASIC OPTION VERSION "SYSTEM/370" ' IBM System/370 Mainframe BASIC OPTION VERSION "TRS-80" ' TRS-80 Model I/III/4 LBASIC OPTION VERSION "VINTAGE" ' Vintage BASIC 1.0.1 OPTION VERSION "XBASIC" ' TSC XBASIC for 6800 FLEX * CONST variable [, ...] = value Assigns the value to variable. Any later assignment to the variable causus a VARIABLE NOT DECLARED error. * DIM now supports lower and upper bounds. OPTION BASE 1 DIM X( 9 ) ' lower bound is 1 DIM Y( 5 TO 9 ) ' lower bound is 5 * DIM now supports virtual variables. OPTION BASE 1 OPEN "VIRTUAL.DAT" FOR VIRTUAL AS # 3 ' virtual data file DIM # 3, A( 1000 ) ' array is virtual LET A( 1000 ) = 0 ' value is written to the file LET X = A( 1000 ) ' value is read from the file CLOSE # 3 ' array is no longer valid * ERROR 27, "Bad DATA" Occurs when the READ command detects garbage in a DATA command. * INPUT LINE Same as LINE INPUT. * MAT now supports lower and upper bounds. OPTION BASE 1 MAT X( 9 ) = ZER ' lower bound is 1 MAT Y( 5 TO 9 ) = ZER ' lower bound is 5 MAT X = ZER( 9 ) ' lower bound is 1 MAT Y - ZER( 5 TO 9 ) ' lower bound is 5 * MAXLEN() Returns the maximum string length. * OPTION DIGITS integer Sets the number of significant digits for PRINT. Setting the value to zero restores the default. * OPTION EDIT string$ Sets the program name used by the EDIT command. Setting this to "" disables EDIT command. * OPTION FILES string$ Sets the program name used by the FILES command. Setting this to "" disables FILES command. * OPTION PROMPT string$ Sets the prompt. * OPTION PUNCT AT char$ Sets the PRINT AT character, commonly "@". Setting this to "" disables PRINT AT. Setting this to a non-punctuation character is not supported. * OPTION PUNCT BYTE char$ Sets the BYTE type suffix, commonly "~". Setting this to "" disables BYTE suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT COMMENT char$ Sets the trailing COMMENT character, commonly "'". Setting this to "" disables trailing comments. Setting this to a non-punctuation character is not supported. * OPTION PUNCT CURRENCY char$ Sets the CURRENCY type suffix, commonly "@". Setting this to "" disables CURRENCY suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT DOUBLE char$ Sets the DOUBLE type suffix, commonly "#". Setting this to "" disables DOUBLE suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT FILENUM char$ Sets the FILE NUMBER prefix, commonly "#". Setting this to "" disables the FILE NUMBER prefix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT IMAGE char$ Sets the shortcut IMAGE character, commonly ":". Setting this to "" disables the shortcut IMAGE character. Setting this to a non-punctuation character is not supported. * OPTION PUNCT INPUT char$ Sets the shortcut INPUT character, commonly "!". Setting this to "" disables the shortcut INPUT character. Setting this to a non-punctuation character is not supported. * OPTION PUNCT INTEGER char$ Sets the INTEGER type suffix, commonly "%". Setting this to "" disables INTEGER suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT LONG char$ Sets the LONG type suffix, commonly "&". Setting this to "" disables LONG suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT LPAREN char$ Sets the LEFT PARENTHESIS character, commonly "(". Setting this to a non-punctuation character is not supported. * OPTION PUNCT PRINT char$ Sets the shortcut PRINT character, commonly "?". Setting this to "" disables the shortcut PRINT character. Setting this to a non-punctuation character is not supported. * OPTION PUNCT QUOTE char$ Sets the QUOTE character, commonly """". Setting this to a non-punctuation character is not supported. * OPTION PUNCT RPAREN char$ Sets the RIGHT PARENTHESIS character, commonly ")". Setting this to a non-punctuation character is not supported. * OPTION PUNCT SINGLE char$ Sets the SINGLE type suffix, commonly "!". Setting this to "" disables SINGLE suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT STATEMENT char$ Sets the shortcut STATEMENT seperator character, commonly ":". Setting this to "" disables the STATEMENT seperator. Setting this to a non-punctuation character is not supported. * OPTION PUNCT STRING char$ Sets the STRING type suffix, commonly "$". Setting this to "" disables STRING suffix. Setting this to a non-punctuation character is not supported. * OPTION RECLEN integer Sets the default record length for RANDOM files, commonly 128. Setting thisto zero means there is no default RANDOM record length, so the record length must be specified in the OPEN statement. With OPTION RECLEN 128: OPEN "FILE.DAT" FOR RANDOM AS #3 is considered to be the same as OPEN "FILE.DAT" FOR RANDOM AS #3 LEN 128 With OPTION RECLEN 0: OPEN "FILE.DAT" FOR RANDOM AS #3 causes an error. * OPTION RENUM string$ Sets the program name used by the RENUM command. Setting this to "" disables RENUM command. * OPTION SCALE integer Sets the number of digits to round after the decimal point for PRINT. Setting the value to zero disables rounding. * OPTION USING DIGIT * OPTION USING COMMA * OPTION USING PERIOD * OPTION USING PLUS * OPTION USING MINUS * OPTION USING EXRAD * OPTION USING DOLLAR * OPTION USING FILLER * OPTION USING LITERAL * OPTION USING FIRST * OPTION USING ALL * OPTION USING LENGTH Sets the characters recognized by PRINT USING. Setting these to a non-punctuation character is not supported. * OPTION VERSION now requires a string instead of a literal. Some version names have changed. * OPTION VERSION "PDP-8" Added LPT, PTP, PTR, TTY, TTY IN and TTY OUT commands. Added GET() and PUT() functions. * OPTION VERSION "CALL/360" * OPTION VERSION "SYSTEM/360" * OPTION VERSION "SYSTEM/370" Added alphabet extenders. $ is a string variable. * OPTION ZONE integer Sets the PRINT zone width. Setting the value to zero restores the default. * REPEAT - UNTIL added REPEAT ... EXIT REPEAT ... UNTIL expression ' exits when expression != 0 * SPC( X ) and TAB( X ) No longer use control codes. * UNTIL - UEND removed (to add REPEAT - UNTIL) Here is a work-around for existin code using UNTIL-UEND: UNITL expression -->> WHILE NOT expression ... ... EXIT UNTIL -->> EXIT WHILE ... ... UEND -->> WEND * from Howard Wulf, AF5NE Editor's Note: In the official release *ALL* of the test and sample BASIC programs were removed and packaged in a separate "test" ZIP. I have extracted those in to the bwbtest folder where most of the tests were living in previous packages. I've also improved (I hope) the EOL handling. - ChipMaster
3 years ago
v3.20 * Implements most of the following BASIC dialects: OPTION VERSION "BYWATER" ' Bywater BASIC 3 OPTION VERSION "BYWATER-2" ' Bywater BASIC 2 OPTION VERSION "CALL/360" ' SBC CALL/360 Mainframe BASIC OPTION VERSION "CBASIC-II" ' CBASIC-II for CP/M OPTION VERSION "DARTMOUTH" ' Dartmouth DTSS BASIC OPTION VERSION "ECMA-55" ' ANSI Minimal BASIC OPTION VERSION "ECMA-116" ' ANSI Full BASIC OPTION VERSION "GCOS" ' GE 600 Mainframe BASIC OPTION VERSION "HAARDT" ' bas 2.4 by Michael Haardt OPTION VERSION "HANDBOOK1" ' The BASIC Handbook, 1st Edition OPTION VERSION "HANDBOOK2" ' The BASIC Handbook, 2nd Edition OPTION VERSION "HEATH" ' Heath Benton Harbor BASIC OPTION VERSION "MARK-I" ' GE 265 Mainframe BASIC OPTION VERSION "MARK-II" ' GE 435 Mainframe BASIC OPTION VERSION "MBASIC" ' Microsoft BASIC-80 for Xenix OPTION VERSION "PDP-8" ' DEC PDP-8 BASIC OPTION VERSION "PDP-11" ' DEC PDP-11 BASIC OPTION VERSION "RBASIC" ' Micronics RBASIC for 6809 FLEX OPTION VERSION "RSTS-11" ' DEC RSTS-11 BASIC-PLUS OPTION VERSION "SYSTEM/360" ' IBM System/360 Mainframe BASIC OPTION VERSION "SYSTEM/370" ' IBM System/370 Mainframe BASIC OPTION VERSION "TRS-80" ' TRS-80 Model I/III/4 LBASIC OPTION VERSION "VINTAGE" ' Vintage BASIC 1.0.1 OPTION VERSION "XBASIC" ' TSC XBASIC for 6800 FLEX * CONST variable [, ...] = value Assigns the value to variable. Any later assignment to the variable causus a VARIABLE NOT DECLARED error. * DIM now supports lower and upper bounds. OPTION BASE 1 DIM X( 9 ) ' lower bound is 1 DIM Y( 5 TO 9 ) ' lower bound is 5 * DIM now supports virtual variables. OPTION BASE 1 OPEN "VIRTUAL.DAT" FOR VIRTUAL AS # 3 ' virtual data file DIM # 3, A( 1000 ) ' array is virtual LET A( 1000 ) = 0 ' value is written to the file LET X = A( 1000 ) ' value is read from the file CLOSE # 3 ' array is no longer valid * ERROR 27, "Bad DATA" Occurs when the READ command detects garbage in a DATA command. * INPUT LINE Same as LINE INPUT. * MAT now supports lower and upper bounds. OPTION BASE 1 MAT X( 9 ) = ZER ' lower bound is 1 MAT Y( 5 TO 9 ) = ZER ' lower bound is 5 MAT X = ZER( 9 ) ' lower bound is 1 MAT Y - ZER( 5 TO 9 ) ' lower bound is 5 * MAXLEN() Returns the maximum string length. * OPTION DIGITS integer Sets the number of significant digits for PRINT. Setting the value to zero restores the default. * OPTION EDIT string$ Sets the program name used by the EDIT command. Setting this to "" disables EDIT command. * OPTION FILES string$ Sets the program name used by the FILES command. Setting this to "" disables FILES command. * OPTION PROMPT string$ Sets the prompt. * OPTION PUNCT AT char$ Sets the PRINT AT character, commonly "@". Setting this to "" disables PRINT AT. Setting this to a non-punctuation character is not supported. * OPTION PUNCT BYTE char$ Sets the BYTE type suffix, commonly "~". Setting this to "" disables BYTE suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT COMMENT char$ Sets the trailing COMMENT character, commonly "'". Setting this to "" disables trailing comments. Setting this to a non-punctuation character is not supported. * OPTION PUNCT CURRENCY char$ Sets the CURRENCY type suffix, commonly "@". Setting this to "" disables CURRENCY suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT DOUBLE char$ Sets the DOUBLE type suffix, commonly "#". Setting this to "" disables DOUBLE suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT FILENUM char$ Sets the FILE NUMBER prefix, commonly "#". Setting this to "" disables the FILE NUMBER prefix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT IMAGE char$ Sets the shortcut IMAGE character, commonly ":". Setting this to "" disables the shortcut IMAGE character. Setting this to a non-punctuation character is not supported. * OPTION PUNCT INPUT char$ Sets the shortcut INPUT character, commonly "!". Setting this to "" disables the shortcut INPUT character. Setting this to a non-punctuation character is not supported. * OPTION PUNCT INTEGER char$ Sets the INTEGER type suffix, commonly "%". Setting this to "" disables INTEGER suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT LONG char$ Sets the LONG type suffix, commonly "&". Setting this to "" disables LONG suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT LPAREN char$ Sets the LEFT PARENTHESIS character, commonly "(". Setting this to a non-punctuation character is not supported. * OPTION PUNCT PRINT char$ Sets the shortcut PRINT character, commonly "?". Setting this to "" disables the shortcut PRINT character. Setting this to a non-punctuation character is not supported. * OPTION PUNCT QUOTE char$ Sets the QUOTE character, commonly """". Setting this to a non-punctuation character is not supported. * OPTION PUNCT RPAREN char$ Sets the RIGHT PARENTHESIS character, commonly ")". Setting this to a non-punctuation character is not supported. * OPTION PUNCT SINGLE char$ Sets the SINGLE type suffix, commonly "!". Setting this to "" disables SINGLE suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT STATEMENT char$ Sets the shortcut STATEMENT seperator character, commonly ":". Setting this to "" disables the STATEMENT seperator. Setting this to a non-punctuation character is not supported. * OPTION PUNCT STRING char$ Sets the STRING type suffix, commonly "$". Setting this to "" disables STRING suffix. Setting this to a non-punctuation character is not supported. * OPTION RECLEN integer Sets the default record length for RANDOM files, commonly 128. Setting thisto zero means there is no default RANDOM record length, so the record length must be specified in the OPEN statement. With OPTION RECLEN 128: OPEN "FILE.DAT" FOR RANDOM AS #3 is considered to be the same as OPEN "FILE.DAT" FOR RANDOM AS #3 LEN 128 With OPTION RECLEN 0: OPEN "FILE.DAT" FOR RANDOM AS #3 causes an error. * OPTION RENUM string$ Sets the program name used by the RENUM command. Setting this to "" disables RENUM command. * OPTION SCALE integer Sets the number of digits to round after the decimal point for PRINT. Setting the value to zero disables rounding. * OPTION USING DIGIT * OPTION USING COMMA * OPTION USING PERIOD * OPTION USING PLUS * OPTION USING MINUS * OPTION USING EXRAD * OPTION USING DOLLAR * OPTION USING FILLER * OPTION USING LITERAL * OPTION USING FIRST * OPTION USING ALL * OPTION USING LENGTH Sets the characters recognized by PRINT USING. Setting these to a non-punctuation character is not supported. * OPTION VERSION now requires a string instead of a literal. Some version names have changed. * OPTION VERSION "PDP-8" Added LPT, PTP, PTR, TTY, TTY IN and TTY OUT commands. Added GET() and PUT() functions. * OPTION VERSION "CALL/360" * OPTION VERSION "SYSTEM/360" * OPTION VERSION "SYSTEM/370" Added alphabet extenders. $ is a string variable. * OPTION ZONE integer Sets the PRINT zone width. Setting the value to zero restores the default. * REPEAT - UNTIL added REPEAT ... EXIT REPEAT ... UNTIL expression ' exits when expression != 0 * SPC( X ) and TAB( X ) No longer use control codes. * UNTIL - UEND removed (to add REPEAT - UNTIL) Here is a work-around for existin code using UNTIL-UEND: UNITL expression -->> WHILE NOT expression ... ... EXIT UNTIL -->> EXIT WHILE ... ... UEND -->> WEND * from Howard Wulf, AF5NE Editor's Note: In the official release *ALL* of the test and sample BASIC programs were removed and packaged in a separate "test" ZIP. I have extracted those in to the bwbtest folder where most of the tests were living in previous packages. I've also improved (I hope) the EOL handling. - ChipMaster
3 years ago
v3.20 * Implements most of the following BASIC dialects: OPTION VERSION "BYWATER" ' Bywater BASIC 3 OPTION VERSION "BYWATER-2" ' Bywater BASIC 2 OPTION VERSION "CALL/360" ' SBC CALL/360 Mainframe BASIC OPTION VERSION "CBASIC-II" ' CBASIC-II for CP/M OPTION VERSION "DARTMOUTH" ' Dartmouth DTSS BASIC OPTION VERSION "ECMA-55" ' ANSI Minimal BASIC OPTION VERSION "ECMA-116" ' ANSI Full BASIC OPTION VERSION "GCOS" ' GE 600 Mainframe BASIC OPTION VERSION "HAARDT" ' bas 2.4 by Michael Haardt OPTION VERSION "HANDBOOK1" ' The BASIC Handbook, 1st Edition OPTION VERSION "HANDBOOK2" ' The BASIC Handbook, 2nd Edition OPTION VERSION "HEATH" ' Heath Benton Harbor BASIC OPTION VERSION "MARK-I" ' GE 265 Mainframe BASIC OPTION VERSION "MARK-II" ' GE 435 Mainframe BASIC OPTION VERSION "MBASIC" ' Microsoft BASIC-80 for Xenix OPTION VERSION "PDP-8" ' DEC PDP-8 BASIC OPTION VERSION "PDP-11" ' DEC PDP-11 BASIC OPTION VERSION "RBASIC" ' Micronics RBASIC for 6809 FLEX OPTION VERSION "RSTS-11" ' DEC RSTS-11 BASIC-PLUS OPTION VERSION "SYSTEM/360" ' IBM System/360 Mainframe BASIC OPTION VERSION "SYSTEM/370" ' IBM System/370 Mainframe BASIC OPTION VERSION "TRS-80" ' TRS-80 Model I/III/4 LBASIC OPTION VERSION "VINTAGE" ' Vintage BASIC 1.0.1 OPTION VERSION "XBASIC" ' TSC XBASIC for 6800 FLEX * CONST variable [, ...] = value Assigns the value to variable. Any later assignment to the variable causus a VARIABLE NOT DECLARED error. * DIM now supports lower and upper bounds. OPTION BASE 1 DIM X( 9 ) ' lower bound is 1 DIM Y( 5 TO 9 ) ' lower bound is 5 * DIM now supports virtual variables. OPTION BASE 1 OPEN "VIRTUAL.DAT" FOR VIRTUAL AS # 3 ' virtual data file DIM # 3, A( 1000 ) ' array is virtual LET A( 1000 ) = 0 ' value is written to the file LET X = A( 1000 ) ' value is read from the file CLOSE # 3 ' array is no longer valid * ERROR 27, "Bad DATA" Occurs when the READ command detects garbage in a DATA command. * INPUT LINE Same as LINE INPUT. * MAT now supports lower and upper bounds. OPTION BASE 1 MAT X( 9 ) = ZER ' lower bound is 1 MAT Y( 5 TO 9 ) = ZER ' lower bound is 5 MAT X = ZER( 9 ) ' lower bound is 1 MAT Y - ZER( 5 TO 9 ) ' lower bound is 5 * MAXLEN() Returns the maximum string length. * OPTION DIGITS integer Sets the number of significant digits for PRINT. Setting the value to zero restores the default. * OPTION EDIT string$ Sets the program name used by the EDIT command. Setting this to "" disables EDIT command. * OPTION FILES string$ Sets the program name used by the FILES command. Setting this to "" disables FILES command. * OPTION PROMPT string$ Sets the prompt. * OPTION PUNCT AT char$ Sets the PRINT AT character, commonly "@". Setting this to "" disables PRINT AT. Setting this to a non-punctuation character is not supported. * OPTION PUNCT BYTE char$ Sets the BYTE type suffix, commonly "~". Setting this to "" disables BYTE suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT COMMENT char$ Sets the trailing COMMENT character, commonly "'". Setting this to "" disables trailing comments. Setting this to a non-punctuation character is not supported. * OPTION PUNCT CURRENCY char$ Sets the CURRENCY type suffix, commonly "@". Setting this to "" disables CURRENCY suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT DOUBLE char$ Sets the DOUBLE type suffix, commonly "#". Setting this to "" disables DOUBLE suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT FILENUM char$ Sets the FILE NUMBER prefix, commonly "#". Setting this to "" disables the FILE NUMBER prefix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT IMAGE char$ Sets the shortcut IMAGE character, commonly ":". Setting this to "" disables the shortcut IMAGE character. Setting this to a non-punctuation character is not supported. * OPTION PUNCT INPUT char$ Sets the shortcut INPUT character, commonly "!". Setting this to "" disables the shortcut INPUT character. Setting this to a non-punctuation character is not supported. * OPTION PUNCT INTEGER char$ Sets the INTEGER type suffix, commonly "%". Setting this to "" disables INTEGER suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT LONG char$ Sets the LONG type suffix, commonly "&". Setting this to "" disables LONG suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT LPAREN char$ Sets the LEFT PARENTHESIS character, commonly "(". Setting this to a non-punctuation character is not supported. * OPTION PUNCT PRINT char$ Sets the shortcut PRINT character, commonly "?". Setting this to "" disables the shortcut PRINT character. Setting this to a non-punctuation character is not supported. * OPTION PUNCT QUOTE char$ Sets the QUOTE character, commonly """". Setting this to a non-punctuation character is not supported. * OPTION PUNCT RPAREN char$ Sets the RIGHT PARENTHESIS character, commonly ")". Setting this to a non-punctuation character is not supported. * OPTION PUNCT SINGLE char$ Sets the SINGLE type suffix, commonly "!". Setting this to "" disables SINGLE suffix. Setting this to a non-punctuation character is not supported. * OPTION PUNCT STATEMENT char$ Sets the shortcut STATEMENT seperator character, commonly ":". Setting this to "" disables the STATEMENT seperator. Setting this to a non-punctuation character is not supported. * OPTION PUNCT STRING char$ Sets the STRING type suffix, commonly "$". Setting this to "" disables STRING suffix. Setting this to a non-punctuation character is not supported. * OPTION RECLEN integer Sets the default record length for RANDOM files, commonly 128. Setting thisto zero means there is no default RANDOM record length, so the record length must be specified in the OPEN statement. With OPTION RECLEN 128: OPEN "FILE.DAT" FOR RANDOM AS #3 is considered to be the same as OPEN "FILE.DAT" FOR RANDOM AS #3 LEN 128 With OPTION RECLEN 0: OPEN "FILE.DAT" FOR RANDOM AS #3 causes an error. * OPTION RENUM string$ Sets the program name used by the RENUM command. Setting this to "" disables RENUM command. * OPTION SCALE integer Sets the number of digits to round after the decimal point for PRINT. Setting the value to zero disables rounding. * OPTION USING DIGIT * OPTION USING COMMA * OPTION USING PERIOD * OPTION USING PLUS * OPTION USING MINUS * OPTION USING EXRAD * OPTION USING DOLLAR * OPTION USING FILLER * OPTION USING LITERAL * OPTION USING FIRST * OPTION USING ALL * OPTION USING LENGTH Sets the characters recognized by PRINT USING. Setting these to a non-punctuation character is not supported. * OPTION VERSION now requires a string instead of a literal. Some version names have changed. * OPTION VERSION "PDP-8" Added LPT, PTP, PTR, TTY, TTY IN and TTY OUT commands. Added GET() and PUT() functions. * OPTION VERSION "CALL/360" * OPTION VERSION "SYSTEM/360" * OPTION VERSION "SYSTEM/370" Added alphabet extenders. $ is a string variable. * OPTION ZONE integer Sets the PRINT zone width. Setting the value to zero restores the default. * REPEAT - UNTIL added REPEAT ... EXIT REPEAT ... UNTIL expression ' exits when expression != 0 * SPC( X ) and TAB( X ) No longer use control codes. * UNTIL - UEND removed (to add REPEAT - UNTIL) Here is a work-around for existin code using UNTIL-UEND: UNITL expression -->> WHILE NOT expression ... ... EXIT UNTIL -->> EXIT WHILE ... ... UEND -->> WEND * from Howard Wulf, AF5NE Editor's Note: In the official release *ALL* of the test and sample BASIC programs were removed and packaged in a separate "test" ZIP. I have extracted those in to the bwbtest folder where most of the tests were living in previous packages. I've also improved (I hope) the EOL handling. - ChipMaster
3 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564
  1. /***************************************************************
  2. bwd_cmd.c Unique short names for CMS/MVS
  3. for Bywater BASIC Interpreter
  4. Copyright (c) 1993, Ted A. Campbell
  5. Bywater Software
  6. email: tcamp@delphi.com
  7. Copyright and Permissions Information:
  8. All U.S. and international rights are claimed by the author,
  9. Ted A. Campbell.
  10. This software is released under the terms of the GNU General
  11. Public License (GPL), which is distributed with this software
  12. in the file "COPYING". The GPL specifies the terms under
  13. which users may copy and use the software in this distribution.
  14. A separate license is available for commercial distribution,
  15. for information on which you should contact the author.
  16. ***************************************************************/
  17. /*---------------------------------------------------------------*/
  18. /* NOTE: Modifications marked "JBV" were made by Jon B. Volkoff, */
  19. /* 11/1995 (eidetics@cerf.net). */
  20. /* */
  21. /* Those additionally marked with "DD" were at the suggestion of */
  22. /* Dale DePriest (daled@cadence.com). */
  23. /* */
  24. /* Version 3.00 by Howard Wulf, AF5NE */
  25. /* */
  26. /* Version 3.10 by Howard Wulf, AF5NE */
  27. /* */
  28. /* Version 3.20 by Howard Wulf, AF5NE */
  29. /* */
  30. /*---------------------------------------------------------------*/
  31. /* Unique Short Name Definitions */
  32. #define Char_to_TypeCode X00000
  33. #define CleanLine X00001
  34. #define Determinant X00002
  35. #define DumpAllCommandHtmlTable X00003
  36. #define DumpAllCommandSwitchStatement X00004
  37. #define DumpAllCommandSyntax X00005
  38. #define DumpAllCommandTableDefinitions X00006
  39. #define DumpAllCommandUniqueID X00007
  40. #define DumpAllFuctionTableDefinitions X00008
  41. #define DumpAllFunctionHtmlTable X00009
  42. #define DumpAllFunctionSwitch X0000A
  43. #define DumpAllFunctionSyntax X0000B
  44. #define DumpAllFunctionUniqueID X0000C
  45. #define DumpAllOperatorSyntax X0000D
  46. #define DumpHeader X0000E
  47. #define DumpOneCommandSyntax X0000F
  48. #define DumpOneFunctionSyntax X00010
  49. #define DumpOneOperatorSyntax X00011
  50. #define FixDescription X00012
  51. #define FormatBasicNumber X00013
  52. #define GetOnError X00014
  53. #define IntrinsicCommandTable X00015
  54. #define IntrinsicFunctionDefinitionCheck X00016
  55. #define IntrinsicFunctionSyntax X00017
  56. #define IntrinsicFunctionTable X00018
  57. #define IntrinsicFunctionUniqueID X00019
  58. #define IntrinsicFunction_deffn X0001A
  59. #define IntrinsicFunction_execute X0001B
  60. #define IntrinsicFunction_find_exact X0001C
  61. #define IntrinsicFunction_init X0001D
  62. #define IntrinsicFunction_name X0001E
  63. #define InvertMatrix X0001F
  64. #define IsLastKeyword X00020
  65. #define IsLike X00021
  66. #define My X00022
  67. #define NUM_COMMANDS X00023
  68. #define NUM_FUNCTIONS X00024
  69. #define NUM_VERSIONS X00025
  70. #define NumberValueCheck X00026
  71. #define OptionVersionSet X00027
  72. #define ResetConsoleColumn X00028
  73. #define SetOnError X00029
  74. #define SortAllCommands X0002A
  75. #define SortAllFunctions X0002B
  76. #define SortAllOperators X0002C
  77. #define StringLengthCheck X0002D
  78. #define TypeCode_to_Char X0002E
  79. #define UserFunction_add X0002F
  80. #define UserFunction_addlocalvar X00030
  81. #define UserFunction_find_exact X00031
  82. #define UserFunction_init X00032
  83. #define UserFunction_name X00033
  84. #define VarTypeIndex X00034
  85. #define binary_get_put X00035
  86. #define buff_is_eol X00036
  87. #define buff_peek_EqualChar X00037
  88. #define buff_peek_LparenChar X00038
  89. #define buff_peek_QuoteChar X00039
  90. #define buff_peek_array_dimensions X0003A
  91. #define buff_peek_char X0003B
  92. #define buff_peek_word X0003C
  93. #define buff_read_array_dimensions X0003D
  94. #define buff_read_array_redim X0003E
  95. #define buff_read_decimal_constant X0003F
  96. #define buff_read_expression X00040
  97. #define buff_read_hexadecimal_constant X00041
  98. #define buff_read_index_item X00042
  99. #define buff_read_integer_expression X00043
  100. #define buff_read_label X00044
  101. #define buff_read_letter_sequence X00045
  102. #define buff_read_line_number X00046
  103. #define buff_read_line_sequence X00047
  104. #define buff_read_matrix X00048
  105. #define buff_read_numeric_expression X00049
  106. #define buff_read_octal_constant X0004A
  107. #define buff_read_scalar X0004B
  108. #define buff_read_string_expression X0004C
  109. #define buff_read_type_declaration X0004D
  110. #define buff_read_varname X0004E
  111. #define buff_skip_AtChar X0004F
  112. #define buff_skip_CommaChar X00050
  113. #define buff_skip_EqualChar X00051
  114. #define buff_skip_FilenumChar X00052
  115. #define buff_skip_LparenChar X00053
  116. #define buff_skip_MinusChar X00054
  117. #define buff_skip_PlusChar X00055
  118. #define buff_skip_RparenChar X00056
  119. #define buff_skip_SemicolonChar X00057
  120. #define buff_skip_StarChar X00058
  121. #define buff_skip_char X00059
  122. #define buff_skip_eol X0005A
  123. #define buff_skip_seperator X0005B
  124. #define buff_skip_spaces X0005C
  125. #define buff_skip_word X0005D
  126. #define bwb_APPEND X0005E
  127. #define bwb_AS X0005F
  128. #define bwb_AUTO X00060
  129. #define bwb_BACKSPACE X00061
  130. #define bwb_BREAK X00062
  131. #define bwb_BUILD X00063
  132. #define bwb_BYE X00064
  133. #define bwb_CALL X00065
  134. #define bwb_CASE X00066
  135. #define bwb_CASE_ELSE X00067
  136. #define bwb_CHAIN X00068
  137. #define bwb_CHANGE X00069
  138. #define bwb_CLEAR X0006A
  139. #define bwb_CLOAD X0006B
  140. #define bwb_CLOAD8 X0006C
  141. #define bwb_CLOSE X0006D
  142. #define bwb_CLR X0006E
  143. #define bwb_CMDS X0006F
  144. #define bwb_COMMON X00070
  145. #define bwb_CONSOLE X00071
  146. #define bwb_CONST X00072
  147. #define bwb_CONT X00073
  148. #define bwb_CONTINUE X00074
  149. #define bwb_COPY X00075
  150. #define bwb_CREATE X00076
  151. #define bwb_CSAVE X00077
  152. #define bwb_CSAVE8 X00078
  153. #define bwb_DATA X00079
  154. #define bwb_DEC X0007A
  155. #define bwb_DEF X0007B
  156. #define bwb_DEF8LBL X0007C
  157. #define bwb_DEFBYT X0007D
  158. #define bwb_DEFCUR X0007E
  159. #define bwb_DEFDBL X0007F
  160. #define bwb_DEFINT X00080
  161. #define bwb_DEFLNG X00081
  162. #define bwb_DEFSNG X00082
  163. #define bwb_DEFSTR X00083
  164. #define bwb_DELETE X00084
  165. #define bwb_DELIMIT X00085
  166. #define bwb_DIM X00086
  167. #define bwb_DISPLAY X00087
  168. #define bwb_DO X00088
  169. #define bwb_DOS X00089
  170. #define bwb_DSP X0008A
  171. #define bwb_EDIT X0008B
  172. #define bwb_ELSE X0008C
  173. #define bwb_ELSEIF X0008D
  174. #define bwb_END X0008E
  175. #define bwb_END_FUNCTION X0008F
  176. #define bwb_END_IF X00090
  177. #define bwb_END_SELECT X00091
  178. #define bwb_END_SUB X00092
  179. #define bwb_ERASE X00093
  180. #define bwb_EXCHANGE X00094
  181. #define bwb_EXIT X00095
  182. #define bwb_EXIT_DO X00096
  183. #define bwb_EXIT_FOR X00097
  184. #define bwb_EXIT_FUNCTION X00098
  185. #define bwb_EXIT_REPEAT X00099
  186. #define bwb_EXIT_SUB X0009A
  187. #define bwb_EXIT_WHILE X0009B
  188. #define bwb_FEND X0009C
  189. #define bwb_FIELD X0009D
  190. #define bwb_FILE X0009E
  191. #define bwb_FILES X0009F
  192. #define bwb_FLEX X000A0
  193. #define bwb_FNCS X000A1
  194. #define bwb_FNEND X000A2
  195. #define bwb_FOR X000A3
  196. #define bwb_FUNCTION X000A4
  197. #define bwb_GET X000A5
  198. #define bwb_GO X000A6
  199. #define bwb_GOODBYE X000A7
  200. #define bwb_GOSUB X000A8
  201. #define bwb_GOTO X000A9
  202. #define bwb_GO_SUB X000AA
  203. #define bwb_GO_TO X000AB
  204. #define bwb_HELP X000AC
  205. #define bwb_IF X000AD
  206. #define bwb_IF8THEN X000AE
  207. #define bwb_IF_END X000AF
  208. #define bwb_IF_MORE X000B0
  209. #define bwb_IMAGE X000B1
  210. #define bwb_INC X000B2
  211. #define bwb_INPUT X000B3
  212. #define bwb_INPUT_LINE X000B4
  213. #define bwb_LET X000B5
  214. #define bwb_LINE X000B6
  215. #define bwb_LINE_INPUT X000B7
  216. #define bwb_LIST X000B8
  217. #define bwb_LISTNH X000B9
  218. #define bwb_LLIST X000BA
  219. #define bwb_LOAD X000BB
  220. #define bwb_LOCAL X000BC
  221. #define bwb_LOOP X000BD
  222. #define bwb_LPRINT X000BE
  223. #define bwb_LPRINTER X000BF
  224. #define bwb_LPT X000C0
  225. #define bwb_LSET X000C1
  226. #define bwb_MAINTAINER X000C2
  227. #define bwb_MAINTAINER_CMDS X000C3
  228. #define bwb_MAINTAINER_CMDS_HTML X000C4
  229. #define bwb_MAINTAINER_CMDS_ID X000C5
  230. #define bwb_MAINTAINER_CMDS_MANUAL X000C6
  231. #define bwb_MAINTAINER_CMDS_SWITCH X000C7
  232. #define bwb_MAINTAINER_CMDS_TABLE X000C8
  233. #define bwb_MAINTAINER_DEBUG X000C9
  234. #define bwb_MAINTAINER_DEBUG_OFF X000CA
  235. #define bwb_MAINTAINER_DEBUG_ON X000CB
  236. #define bwb_MAINTAINER_FNCS X000CC
  237. #define bwb_MAINTAINER_FNCS_HTML X000CD
  238. #define bwb_MAINTAINER_FNCS_ID X000CE
  239. #define bwb_MAINTAINER_FNCS_MANUAL X000CF
  240. #define bwb_MAINTAINER_FNCS_SWITCH X000D0
  241. #define bwb_MAINTAINER_FNCS_TABLE X000D1
  242. #define bwb_MAINTAINER_MANUAL X000D2
  243. #define bwb_MAINTAINER_STACK X000D3
  244. #define bwb_MARGIN X000D4
  245. #define bwb_MAT X000D5
  246. #define bwb_MAT_GET X000D6
  247. #define bwb_MAT_INPUT X000D7
  248. #define bwb_MAT_PRINT X000D8
  249. #define bwb_MAT_PUT X000D9
  250. #define bwb_MAT_READ X000DA
  251. #define bwb_MAT_WRITE X000DB
  252. #define bwb_MERGE X000DC
  253. #define bwb_MID4 X000DD
  254. #define bwb_MON X000DE
  255. #define bwb_NAME X000DF
  256. #define bwb_NEW X000E0
  257. #define bwb_NEXT X000E1
  258. #define bwb_OF X000E2
  259. #define bwb_OLD X000E3
  260. #define bwb_ON X000E4
  261. #define bwb_ON_ERROR X000E5
  262. #define bwb_ON_ERROR_GOSUB X000E6
  263. #define bwb_ON_ERROR_GOTO X000E7
  264. #define bwb_ON_ERROR_RESUME X000E8
  265. #define bwb_ON_ERROR_RESUME_NEXT X000E9
  266. #define bwb_ON_ERROR_RETURN X000EA
  267. #define bwb_ON_ERROR_RETURN_NEXT X000EB
  268. #define bwb_ON_TIMER X000EC
  269. #define bwb_OPEN X000ED
  270. #define bwb_OPTION X000EE
  271. #define bwb_OPTION_ANGLE X000EF
  272. #define bwb_OPTION_ANGLE_DEGREES X000F0
  273. #define bwb_OPTION_ANGLE_GRADIANS X000F1
  274. #define bwb_OPTION_ANGLE_RADIANS X000F2
  275. #define bwb_OPTION_ARITHMETIC X000F3
  276. #define bwb_OPTION_ARITHMETIC_DECIMAL X000F4
  277. #define bwb_OPTION_ARITHMETIC_FIXED X000F5
  278. #define bwb_OPTION_ARITHMETIC_NATIVE X000F6
  279. #define bwb_OPTION_BASE X000F7
  280. #define bwb_OPTION_BUGS X000F8
  281. #define bwb_OPTION_BUGS_BOOLEAN X000F9
  282. #define bwb_OPTION_BUGS_OFF X000FA
  283. #define bwb_OPTION_BUGS_ON X000FB
  284. #define bwb_OPTION_COMPARE X000FC
  285. #define bwb_OPTION_COMPARE_BINARY X000FD
  286. #define bwb_OPTION_COMPARE_DATABASE X000FE
  287. #define bwb_OPTION_COMPARE_TEXT X000FF
  288. #define bwb_OPTION_COVERAGE X00100
  289. #define bwb_OPTION_COVERAGE_OFF X00101
  290. #define bwb_OPTION_COVERAGE_ON X00102
  291. #define bwb_OPTION_DATE X00103
  292. #define bwb_OPTION_DIGITS X00104
  293. #define bwb_OPTION_DISABLE X00105
  294. #define bwb_OPTION_DISABLE_COMMAND X00106
  295. #define bwb_OPTION_DISABLE_FUNCTION X00107
  296. #define bwb_OPTION_DISABLE_OPERATOR X00108
  297. #define bwb_OPTION_EDIT X00109
  298. #define bwb_OPTION_ENABLE X0010A
  299. #define bwb_OPTION_ENABLE_COMMAND X0010B
  300. #define bwb_OPTION_ENABLE_FUNCTION X0010C
  301. #define bwb_OPTION_ENABLE_OPERATOR X0010D
  302. #define bwb_OPTION_ERROR X0010E
  303. #define bwb_OPTION_ERROR_GOSUB X0010F
  304. #define bwb_OPTION_ERROR_GOTO X00110
  305. #define bwb_OPTION_EXPLICIT X00111
  306. #define bwb_OPTION_EXTENSION X00112
  307. #define bwb_OPTION_FILES X00113
  308. #define bwb_OPTION_IMPLICIT X00114
  309. #define bwb_OPTION_INDENT X00115
  310. #define bwb_OPTION_LABELS X00116
  311. #define bwb_OPTION_LABELS_OFF X00117
  312. #define bwb_OPTION_LABELS_ON X00118
  313. #define bwb_OPTION_PROMPT X00119
  314. #define bwb_OPTION_PUNCT X0011A
  315. #define bwb_OPTION_PUNCT_AT X0011B
  316. #define bwb_OPTION_PUNCT_BYTE X0011C
  317. #define bwb_OPTION_PUNCT_COMMENT X0011D
  318. #define bwb_OPTION_PUNCT_CURRENCY X0011E
  319. #define bwb_OPTION_PUNCT_DOUBLE X0011F
  320. #define bwb_OPTION_PUNCT_FILENUM X00120
  321. #define bwb_OPTION_PUNCT_IMAGE X00121
  322. #define bwb_OPTION_PUNCT_INPUT X00122
  323. #define bwb_OPTION_PUNCT_INTEGER X00123
  324. #define bwb_OPTION_PUNCT_LONG X00124
  325. #define bwb_OPTION_PUNCT_LPAREN X00125
  326. #define bwb_OPTION_PUNCT_PRINT X00126
  327. #define bwb_OPTION_PUNCT_QUOTE X00127
  328. #define bwb_OPTION_PUNCT_RPAREN X00128
  329. #define bwb_OPTION_PUNCT_SINGLE X00129
  330. #define bwb_OPTION_PUNCT_STATEMENT X0012A
  331. #define bwb_OPTION_PUNCT_STRING X0012B
  332. #define bwb_OPTION_RECLEN X0012C
  333. #define bwb_OPTION_RENUM X0012D
  334. #define bwb_OPTION_ROUND X0012E
  335. #define bwb_OPTION_ROUND_BANK X0012F
  336. #define bwb_OPTION_ROUND_MATH X00130
  337. #define bwb_OPTION_ROUND_TRUNCATE X00131
  338. #define bwb_OPTION_SCALE X00132
  339. #define bwb_OPTION_SLEEP X00133
  340. #define bwb_OPTION_STDERR X00134
  341. #define bwb_OPTION_STDIN X00135
  342. #define bwb_OPTION_STDOUT X00136
  343. #define bwb_OPTION_STRICT X00137
  344. #define bwb_OPTION_STRICT_OFF X00138
  345. #define bwb_OPTION_STRICT_ON X00139
  346. #define bwb_OPTION_TERMINAL X0013A
  347. #define bwb_OPTION_TERMINAL_ADM X0013B
  348. #define bwb_OPTION_TERMINAL_ANSI X0013C
  349. #define bwb_OPTION_TERMINAL_NONE X0013D
  350. #define bwb_OPTION_TIME X0013E
  351. #define bwb_OPTION_TRACE X0013F
  352. #define bwb_OPTION_TRACE_OFF X00140
  353. #define bwb_OPTION_TRACE_ON X00141
  354. #define bwb_OPTION_USING X00142
  355. #define bwb_OPTION_USING_ALL X00143
  356. #define bwb_OPTION_USING_COMMA X00144
  357. #define bwb_OPTION_USING_DIGIT X00145
  358. #define bwb_OPTION_USING_DOLLAR X00146
  359. #define bwb_OPTION_USING_EXRAD X00147
  360. #define bwb_OPTION_USING_FILLER X00148
  361. #define bwb_OPTION_USING_FIRST X00149
  362. #define bwb_OPTION_USING_LENGTH X0014A
  363. #define bwb_OPTION_USING_LITERAL X0014B
  364. #define bwb_OPTION_USING_MINUS X0014C
  365. #define bwb_OPTION_USING_PERIOD X0014D
  366. #define bwb_OPTION_USING_PLUS X0014E
  367. #define bwb_OPTION_VERSION X0014F
  368. #define bwb_OPTION_ZONE X00150
  369. #define bwb_PAUSE X00151
  370. #define bwb_PDEL X00152
  371. #define bwb_POP X00153
  372. #define bwb_PRINT X00154
  373. #define bwb_PTP X00155
  374. #define bwb_PTR X00156
  375. #define bwb_PUT X00157
  376. #define bwb_QUIT X00158
  377. #define bwb_READ X00159
  378. #define bwb_RECALL X0015A
  379. #define bwb_REM X0015B
  380. #define bwb_RENAME X0015C
  381. #define bwb_RENUM X0015D
  382. #define bwb_RENUMBER X0015E
  383. #define bwb_REPEAT X0015F
  384. #define bwb_REPLACE X00160
  385. #define bwb_RESET X00161
  386. #define bwb_RESTORE X00162
  387. #define bwb_RESUME X00163
  388. #define bwb_RETURN X00164
  389. #define bwb_RSET X00165
  390. #define bwb_RUN X00166
  391. #define bwb_RUNNH X00167
  392. #define bwb_SAVE X00168
  393. #define bwb_SCRATCH X00169
  394. #define bwb_SELECT X0016A
  395. #define bwb_SELECT_CASE X0016B
  396. #define bwb_STEP X0016C
  397. #define bwb_STOP X0016D
  398. #define bwb_STORE X0016E
  399. #define bwb_SUB X0016F
  400. #define bwb_SUBEND X00170
  401. #define bwb_SUBEXIT X00171
  402. #define bwb_SUB_END X00172
  403. #define bwb_SUB_EXIT X00173
  404. #define bwb_SWAP X00174
  405. #define bwb_SYSTEM X00175
  406. #define bwb_TEXT X00176
  407. #define bwb_THEN X00177
  408. #define bwb_TIMER X00178
  409. #define bwb_TIMER_OFF X00179
  410. #define bwb_TIMER_ON X0017A
  411. #define bwb_TIMER_STOP X0017B
  412. #define bwb_TLOAD X0017C
  413. #define bwb_TO X0017D
  414. #define bwb_TRACE X0017E
  415. #define bwb_TRACE_OFF X0017F
  416. #define bwb_TRACE_ON X00180
  417. #define bwb_TSAVE X00181
  418. #define bwb_TTY X00182
  419. #define bwb_TTY_IN X00183
  420. #define bwb_TTY_OUT X00184
  421. #define bwb_UNTIL X00185
  422. #define bwb_USE X00186
  423. #define bwb_VARS X00187
  424. #define bwb_WEND X00188
  425. #define bwb_WHILE X00189
  426. #define bwb_WRITE X0018A
  427. #define bwb_clrexec X0018B
  428. #define bwb_decexec X0018C
  429. #define bwb_execline X0018D
  430. #define bwb_fclose X0018E
  431. #define bwb_file_open X0018F
  432. #define bwb_fload X00190
  433. #define bwb_freeline X00191
  434. #define bwb_incexec X00192
  435. #define bwb_is_eof X00193
  436. #define bwb_isalnum X00194
  437. #define bwb_isalpha X00195
  438. #define bwb_iscntrl X00196
  439. #define bwb_isdigit X00197
  440. #define bwb_isgraph X00198
  441. #define bwb_islower X00199
  442. #define bwb_isprint X0019A
  443. #define bwb_ispunct X0019B
  444. #define bwb_isspace X0019C
  445. #define bwb_isupper X0019D
  446. #define bwb_isxdigit X0019E
  447. #define bwb_mainloop X0019F
  448. #define bwb_memchr X001A0
  449. #define bwb_memcmp X001A1
  450. #define bwb_memcpy X001A2
  451. #define bwb_memmove X001A3
  452. #define bwb_memset X001A4
  453. #define bwb_option_punct_char X001A5
  454. #define bwb_option_range_integer X001A6
  455. #define bwb_rint X001A7
  456. #define bwb_scan X001A8
  457. #define bwb_strcat X001A9
  458. #define bwb_strchr X001AA
  459. #define bwb_strcmp X001AB
  460. #define bwb_strcpy X001AC
  461. #define bwb_strdup X001AD
  462. #define bwb_strdup2 X001AE
  463. #define bwb_stricmp X001AF
  464. #define bwb_strlen X001B0
  465. #define bwb_strncat X001B1
  466. #define bwb_strncmp X001B2
  467. #define bwb_strncpy X001B3
  468. #define bwb_strnicmp X001B4
  469. #define bwb_strrchr X001B5
  470. #define bwb_tolower X001B6
  471. #define bwb_toupper X001B7
  472. #define bwb_vector X001B8
  473. #define bwb_vertable X001B9
  474. #define bwb_xnew X001BA
  475. #define bwx_CLS X001BB
  476. #define bwx_COLOR X001BC
  477. #define bwx_Error X001BD
  478. #define bwx_LOCATE X001BE
  479. #define bwx_STOP X001BF
  480. #define bwx_TIMER X001C0
  481. #define bwx_input X001C1
  482. #define bwx_terminate X001C2
  483. #define clear_virtual_by_file X001C3
  484. #define field_close_file X001C4
  485. #define field_free_variable X001C5
  486. #define field_get X001C6
  487. #define field_put X001C7
  488. #define file_clear X001C8
  489. #define file_new X001C9
  490. #define file_next_number X001CA
  491. #define find_file_by_name X001CB
  492. #define find_file_by_number X001CC
  493. #define find_line_number X001CD
  494. #define is_empty_string X001CE
  495. #define line_is_eol X001CF
  496. #define line_peek_EqualChar X001D0
  497. #define line_peek_LparenChar X001D1
  498. #define line_peek_QuoteChar X001D2
  499. #define line_peek_array_dimensions X001D3
  500. #define line_peek_char X001D4
  501. #define line_peek_word X001D5
  502. #define line_read_array_dimensions X001D6
  503. #define line_read_array_redim X001D7
  504. #define line_read_expression X001D8
  505. #define line_read_index_item X001D9
  506. #define line_read_integer_expression X001DA
  507. #define line_read_label X001DB
  508. #define line_read_letter_sequence X001DC
  509. #define line_read_line_number X001DD
  510. #define line_read_line_sequence X001DE
  511. #define line_read_matrix X001DF
  512. #define line_read_numeric_expression X001E0
  513. #define line_read_scalar X001E1
  514. #define line_read_string_expression X001E2
  515. #define line_read_type_declaration X001E3
  516. #define line_read_varname X001E4
  517. #define line_skip_AtChar X001E5
  518. #define line_skip_CommaChar X001E6
  519. #define line_skip_EqualChar X001E7
  520. #define line_skip_FilenumChar X001E8
  521. #define line_skip_LparenChar X001E9
  522. #define line_skip_MinusChar X001EA
  523. #define line_skip_PlusChar X001EB
  524. #define line_skip_RparenChar X001EC
  525. #define line_skip_SemicolonChar X001ED
  526. #define line_skip_StarChar X001EE
  527. #define line_skip_char X001EF
  528. #define line_skip_eol X001F0
  529. #define line_skip_seperator X001F1
  530. #define line_skip_spaces X001F2
  531. #define line_skip_word X001F3
  532. #define line_start X001F4
  533. #define mat_find X001F5
  534. #define str_btob X001F6
  535. #define str_cmp X001F7
  536. #define str_match X001F8
  537. #define var_CLEAR X001F9
  538. #define var_chain X001FA
  539. #define var_delcvars X001FB
  540. #define var_find X001FC
  541. #define var_free X001FD
  542. #define var_get X001FE
  543. #define var_init X001FF
  544. #define var_make X00200
  545. #define var_nametype X00201
  546. #define var_new X00202
  547. #define var_set X00203
  548. /* EOF */