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.
 
 
 
 
 
 

452 lines
21 KiB

  1. /***************************************************************
  2. bwx_tty.c Six character extern redefinitions
  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. /*---------------------------------------------------------------*/
  27. #define ed X00000
  28. #define fi X00001
  29. #define pr X00002
  30. #define im X00003
  31. #define co X00004
  32. #define progfile X00005
  33. #define rescan X00006
  34. #define number X00007
  35. #define bwb_l X00008
  36. #define bwb_start X00009
  37. #define bwb_end X0000A
  38. #define data_line X0000B
  39. #define data_pos X0000C
  40. #define var_start X0000D
  41. #define var_end X0000E
  42. #define fnc_start X0000F
  43. #define fnc_end X00010
  44. #define fslt_start X00011
  45. #define fslt_end X00012
  46. #define exsc X00013
  47. #define expsc X00014
  48. #define excs X00015
  49. #define exps X00016
  50. #define bwb_curtask X00017
  51. #define bwb_ebuf X00018
  52. #define bwb_trace X00019
  53. #define dim_base X0001A
  54. #define option_degrees X0001B
  55. #define errfdevice X0001C
  56. #define err_line X0001D
  57. #define err_number X0001E
  58. #define err_gosubl X0001F
  59. #define err_fired X00020
  60. #define ErrMsg X00021
  61. #define stopped_line X00022
  62. #define dev_table X00023
  63. #define exp_ops X00024
  64. #define bwb_cmdtable X00025
  65. #define bwb_prefuncs X00026
  66. #define bwb_vertable X00027
  67. #define OptionVersion X00028
  68. #define OptionCommentChar X00029
  69. #define OptionStatementChar X0002A
  70. #define OptionFlags X0002B
  71. #define OptionDateFormat X0002C
  72. #define OptionTimeFormat X0002D
  73. #define OptionIndentValue X0002E
  74. #define OptionTerminalType X0002F
  75. #define tmr_gotol X00030
  76. #define tmr_count X00031
  77. #define tmr_expires X00032
  78. #define IsInteractive X00033
  79. #define IsCommandLineFile X00034
  80. #define LPRINT_COLUMN X00035
  81. #define LPRINT_WIDTH X00036
  82. #define LPRINT_NULLS X00037
  83. #define mark X00038
  84. #define ExternalInputFile X00039
  85. #define MaintainerDebugOn X0003A
  86. #define DefaultVariableType X0003B
  87. #define err_openfile X0003C
  88. #define err_getmem X0003D
  89. #define err_noln X0003E
  90. #define err_nofn X0003F
  91. #define err_lnnotfound X00040
  92. #define err_incomplete X00041
  93. #define err_valoorange X00042
  94. #define err_syntax X00043
  95. #define err_devnum X00044
  96. #define err_dev X00045
  97. #define err_opsys X00046
  98. #define err_argstr X00047
  99. #define err_defchar X00048
  100. #define err_mismatch X00049
  101. #define err_dimnotarray X0004A
  102. #define err_retnogosub X0004B
  103. #define err_od X0004C
  104. #define err_overflow X0004D
  105. #define err_nf X0004E
  106. #define err_uf X0004F
  107. #define err_dbz X00050
  108. #define err_redim X00051
  109. #define err_obdim X00052
  110. #define err_uc X00053
  111. #define err_noprogfile X00054
  112. #define fnc_timer X00055
  113. #define bwb_Timer_On X00056
  114. #define bwb_Timer_Off X00057
  115. #define bwb_ON_TIMER X00058
  116. #define bwb_TIMER X00059
  117. #define bwb_TIMER_OFF X0005A
  118. #define bwb_TIMER_ON X0005B
  119. #define bwb_TIMER_STOP X0005C
  120. #define adv_element X0005D
  121. #define adv_eos X0005E
  122. #define adv_ws X0005F
  123. #define BasicNumerc X00060
  124. #define break_mes X00061
  125. #define bwb_CALL X00062
  126. #define bwb_CASE X00063
  127. #define bwb_CASE_ELSE X00064
  128. #define bwb_CASE_IF X00065
  129. #define bwb_CASE_IS X00066
  130. #define bwb_CHAIN X00067
  131. #define bwb_CHANGE X00068
  132. #define bwb_CLEAR X00069
  133. #define bwb_CLOAD X0006A
  134. #define bwb_CLOAD_ X0006B
  135. #define bwb_CMDS X0006C
  136. #define bwb_COMMON X0006D
  137. #define bwb_const X0006E
  138. #define bwb_CONT X0006F
  139. #define bwb_CSAVE X00070
  140. #define bwb_CSAVE_ X00071
  141. #define bwb_DATA X00072
  142. #define bwb_decexec X00073
  143. #define bwb_DEF X00074
  144. #define bwb_DEFDBL X00075
  145. #define bwb_DEFINT X00076
  146. #define bwb_DEFSNG X00077
  147. #define bwb_DEFSTR X00078
  148. #define bwb_DEF_SUB X00079
  149. #define bwb_DELETE X0007A
  150. #define bwb_DIM X0007B
  151. #define bwb_DO X0007C
  152. #define bwb_DO_UNTIL X0007D
  153. #define bwb_DO_WHILE X0007E
  154. #define bwb_ELSE X0007F
  155. #define bwb_ELSEIF X00080
  156. #define bwb_END X00081
  157. #define bwb_END_FUNCTION X00082
  158. #define bwb_END_IF X00083
  159. #define bwb_END_SELECT X00084
  160. #define bwb_END_SUB X00085
  161. #define bwb_ERASE X00086
  162. #define bwb_error X00087
  163. #define bwb_etov X00088
  164. #define bwb_execline X00089
  165. #define bwb_EXIT X0008A
  166. #define bwb_EXIT_DO X0008B
  167. #define bwb_EXIT_FOR X0008C
  168. #define bwb_EXIT_FUNCTION X0008D
  169. #define bwb_EXIT_SUB X0008E
  170. #define bwb_EXIT_UNTIL X0008F
  171. #define bwb_EXIT_WHILE X00090
  172. #define bwb_exp X00091
  173. #define bwb_FIELD X00092
  174. #define bwb_fload X00093
  175. #define bwb_FNCS X00094
  176. #define bwb_FOR X00095
  177. #define bwb_freeline X00096
  178. #define bwb_FUNCTION X00097
  179. #define bwb_gets X00098
  180. #define bwb_getvarname X00099
  181. #define bwb_GO X0009A
  182. #define bwb_GOSUB X0009B
  183. #define bwb_GOTO X0009C
  184. #define bwb_HELP X0009D
  185. #define bwb_IF X0009E
  186. #define bwb_IF_THEN X0009F
  187. #define bwb_incexec X000A0
  188. #define bwb_init X000A1
  189. #define bwb_INPUT X000A2
  190. #define bwb_interact X000A3
  191. #define bwb_isvar X000A4
  192. #define bwb_ladd X000A5
  193. #define bwb_LET X000A6
  194. #define bwb_LINE X000A7
  195. #define bwb_LIST X000A8
  196. #define bwb_LOAD X000A9
  197. #define bwb_LOOP X000AA
  198. #define bwb_LOOP_UNTIL X000AB
  199. #define bwb_LOOP_WHILE X000AC
  200. #define bwb_LPRINT X000AD
  201. #define bwb_LSET X000AE
  202. #define bwb_mainloop X000AF
  203. #define bwb_MAINTAINER X000B0
  204. #define bwb_MERGE X000B1
  205. #define bwb_MID_ X000B2
  206. #define bwb_NAME X000B3
  207. #define bwb_NEW X000B4
  208. #define bwb_NEXT X000B5
  209. #define bwb_null X000B6
  210. #define bwb_numseq X000B7
  211. #define bwb_ON X000B8
  212. #define bwb_ON_ERROR_GOTO X000B9
  213. #define bwb_ON_ERROR_GOSUB X000BA
  214. #define bwb_ON_ERROR_RESUME_NEXT X000BB
  215. #define bwb_ON_ERROR_RETURN_NEXT X000BC
  216. #define bwb_OPEN X000BD
  217. #define bwb_OPTION X000BE
  218. #define bwb_OPTION_ANGLE_DEGREES X000BF
  219. #define bwb_OPTION_ANGLE_RADIANS X000C0
  220. #define bwb_OPTION_ARITHMETIC_DECIMAL X000C1
  221. #define bwb_OPTION_ARITHMETIC_FIXED X000C2
  222. #define bwb_OPTION_ARITHMETIC_NATIVE X000C3
  223. #define bwb_OPTION_BASE_0 X000C4
  224. #define bwb_OPTION_BASE_1 X000C5
  225. #define bwb_OPTION_BUGS_OFF X000C6
  226. #define bwb_OPTION_BUGS_ON X000C7
  227. #define bwb_OPTION_COMMENT X000C8
  228. #define bwb_OPTION_COMPARE_BINARY X000C9
  229. #define bwb_OPTION_COMPARE_DATABASE X000CA
  230. #define bwb_OPTION_COMPARE_TEXT X000CB
  231. #define bwb_OPTION_COVERAGE_OFF X000CC
  232. #define bwb_OPTION_COVERAGE_ON X000CD
  233. #define bwb_OPTION_DATE X000CE
  234. #define bwb_OPTION_DISABLE_COMMAND X000CF
  235. #define bwb_OPTION_DISABLE_FUNCTION X000D0
  236. #define bwb_OPTION_DISABLE_OPERATOR X000D1
  237. #define bwb_OPTION_ENABLE_COMMAND X000D2
  238. #define bwb_OPTION_ENABLE_FUNCTION X000D3
  239. #define bwb_OPTION_ENABLE_OPERATOR X000D4
  240. #define bwb_OPTION_ERROR_GOSUB X000D5
  241. #define bwb_OPTION_ERROR_GOTO X000D6
  242. #define bwb_OPTION_INDENT X000D7
  243. #define bwb_OPTION_LABELS_OFF X000D8
  244. #define bwb_OPTION_LABELS_ON X000D9
  245. #define bwb_OPTION_STATEMENT X000DA
  246. #define bwb_OPTION_STRICT_OFF X000DB
  247. #define bwb_OPTION_STRICT_ON X000DC
  248. #define bwb_OPTION_TERMINAL_NONE X000DD
  249. #define bwb_OPTION_TERMINAL_ADM_3A X000DE
  250. #define bwb_OPTION_TERMINAL_ANSI X000DF
  251. #define bwb_OPTION_TIME X000E0
  252. #define bwb_OPTION_TRACE_OFF X000E1
  253. #define bwb_OPTION_TRACE_ON X000E2
  254. #define bwb_OPTION_VERSION X000E3
  255. #define bwb_PRINT X000E4
  256. #define bwb_QUEST X000E5
  257. #define bwb_QUIT X000E6
  258. #define bwb_READ X000E7
  259. #define bwb_REM X000E8
  260. #define bwb_RESTORE X000E9
  261. #define bwb_RESUME X000EA
  262. #define bwb_RETURN X000EB
  263. #define bwb_RSET X000EC
  264. #define bwb_RUN X000ED
  265. #define bwb_SAVE X000EE
  266. #define bwb_scan X000EF
  267. #define bwb_SELECT X000F0
  268. #define bwb_SELECT_CASE X000F1
  269. #define bwb_setexec X000F2
  270. #define bwb_STOP X000F3
  271. #define bwb_stripcr X000F4
  272. #define bwb_SUB X000F5
  273. #define bwb_SWAP X000F6
  274. #define bwb_SYSTEM X000F7
  275. #define bwb_UEND X000F8
  276. #define bwb_UNTIL X000F9
  277. #define bwb_USER_LBL X000FA
  278. #define bwb_VARS X000FB
  279. #define bwb_vector X000FC
  280. #define bwb_vtov X000FD
  281. #define bwb_Warning X000FE
  282. #define bwb_Warning_Clear X000FF
  283. #define bwb_Warning_InvalidParameter X00100
  284. #define bwb_Warning_OutOfData X00101
  285. #define bwb_Warning_Overflow X00102
  286. #define bwb_Warning_AdvancedFeature X00103
  287. #define bwb_Warning_Pending X00104
  288. #define bwb_WEND X00105
  289. #define bwb_WHILE X00106
  290. #define bwb_WRITE X00107
  291. #define bwb_xlist X00108
  292. #define bwb_xload X00109
  293. #define bwb_xnew X0010A
  294. #define bwb_xtxtline X0010B
  295. #define bwb_zline X0010C
  296. #define CALLOC X0010D
  297. #define dec_esc X0010E
  298. #define DetermineNumberOfDimensions X0010F
  299. #define dim_getparams X00110
  300. #define dim_getparams_FIXED X00111
  301. #define DumpAllCommandSwitchStatement X00112
  302. #define DumpAllCommandSyntax X00113
  303. #define DumpAllCommandTableDefinitions X00114
  304. #define DumpAllCommandUniqueID X00115
  305. #define DumpAllFuctionSyntax X00116
  306. #define DumpAllFuctionTableDefinitions X00117
  307. #define DumpAllFuctionUniqueID X00118
  308. #define DumpAllFunctionSwitch X00119
  309. #define DumpOneCommandSyntax X0011A
  310. #define DumpOneFunctionSyntax X0011B
  311. #define exp_findop X0011C
  312. #define exp_function X0011D
  313. #define exp_getnval X0011E
  314. #define exp_getival X0011F
  315. #define exp_getsval X00120
  316. #define exp_getvfname X00121
  317. #define exp_iscmd X00122
  318. #define exp_isfn X00123
  319. #define exp_isnc X00124
  320. #define exp_isop X00125
  321. #define exp_isvn X00126
  322. #define exp_numconst X00127
  323. #define exp_operation X00128
  324. #define exp_paren X00129
  325. #define exp_strconst X0012A
  326. #define exp_validarg X0012B
  327. #define exp_variable X0012C
  328. #define find_BottomLineInCode X0012D
  329. #define find_label X0012E
  330. #define fnc_add_deffn X0012F
  331. #define fnc_deffn X00130
  332. #define fnc_find X00131
  333. #define fnc_find_by_id X00132
  334. #define fnc_find_exact X00133
  335. #define fnc_init X00134
  336. #define fnc_intrinsic X00135
  337. #define fnc_null X00136
  338. #define FREE X00137
  339. #define fslt_add X00138
  340. #define fslt_addcallvar X00139
  341. #define fslt_addlocalvar X0013A
  342. #define fslt_find_name X0013B
  343. #define fslt_init X0013C
  344. #define FunctionDefinitionCheck X0013D
  345. #define FunctionSyntax X0013E
  346. #define FunctionUniqueID X0013F
  347. #define GetKeyword X00140
  348. #define GetRestOfLine X00141
  349. #define ImplicitDim X00142
  350. #define inc_esc X00143
  351. #define inp_adv X00144
  352. #define inp_numconst X00145
  353. #define int_qmdstr X00146
  354. #define IsLastKeyword X00147
  355. #define is_cmd X00148
  356. #define is_eol X00149
  357. #define is_label X0014A
  358. #define is_let X0014B
  359. #define is_ln X0014C
  360. #define is_numconst X0014D
  361. #define line_start X0014E
  362. #define ln_asbuf X0014F
  363. #define NumberValueCheck X00150
  364. #define OptionBaseHelper X00151
  365. #define OptionVersionSet X00152
  366. #define prn_iprintf X00153
  367. #define prn_lprintf X00154
  368. #define prn_precision X00155
  369. #define prn_xprintf X00156
  370. #define ResetConsoleColumn X00157
  371. #define scan_element X00158
  372. #define SortAllCommands X00159
  373. #define SortAllFunctions X0015A
  374. #define StringLengthCheck X0015B
  375. #define str_btob X0015C
  376. #define str_btoc X0015D
  377. #define str_cat X0015E
  378. #define str_cmp X0015F
  379. #define str_ctob X00160
  380. #define var_chain X00161
  381. #define var_delcvars X00162
  382. #define var_find X00163
  383. #define var_findnval X00164
  384. #define var_findsval X00165
  385. #define var_free X00166
  386. #define var_getnval X00167
  387. #define var_getsval X00168
  388. #define var_init X00169
  389. #define var_make X0016A
  390. #define var_new X0016B
  391. #define var_pos X0016C
  392. #define var_setnval X0016D
  393. #define VerifyNumeric X0016E
  394. #define SetOnError X0016F
  395. #define GetOnError X00170
  396. #define ToUpper X00171
  397. #define ToLower X00172
  398. #define var_CLEAR X00173
  399. #define break_handler X00174
  400. #define bwb_EDIT X00175
  401. #define bwb_RENUM X00176
  402. #define bwx_CHDIR X00177
  403. #define bwx_CLS X00178
  404. #define bwx_COLOR X00179
  405. #define bwx_CONSOLE_WIDTH X0017A
  406. #define bwx_DEBUG X0017B
  407. #define bwx_errmes X0017C
  408. #define bwx_FILES X0017D
  409. #define bwx_FRE X0017E
  410. #define bwx_INKEY X0017F
  411. #define bwx_INP X00180
  412. #define bwx_input X00181
  413. #define bwx_INPUT X00182
  414. #define bwx_KILL X00183
  415. #define bwx_LOCATE X00184
  416. #define bwx_LPRINT X00185
  417. #define bwx_LPRINT_WIDTH X00186
  418. #define bwx_message X00187
  419. #define bwx_MKDIR X00188
  420. #define bwx_NAME X00189
  421. #define bwx_OUT X0018A
  422. #define bwx_OUTPUT_WIDTH X0018B
  423. #define bwx_PEEK X0018C
  424. #define bwx_POKE X0018D
  425. #define bwx_PRINT X0018E
  426. #define bwx_RANDOM_RECORD_SIZE X0018F
  427. #define bwx_RMDIR X00190
  428. #define bwx_SHELL X00191
  429. #define bwx_STOP X00192
  430. #define bwx_terminate X00193
  431. #define bwx_TIMER X00194
  432. #define bwx_WAIT X00195
  433. #define bwx_signon X00196
  434. #define isnan X00197
  435. #define isinf X00198
  436. #define rint X00199
  437. #define strcasecmp X0019A
  438. #define strncasecmp X0019B
  439. #define broken_strcpy X0019C
  440. /* EOF */