home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / database / steel14.zip / CLIMITS.BAS < prev    next >
BASIC Source File  |  1983-03-10  |  14KB  |  479 lines

  1. 4 DEFINT A-W,Y-Z
  2. 5 DIM F$(15),FLDN$(17,40),FTY(17,40),FL(17,40) 
  3. 13 DIM L(17),NREC(17)
  4. 16 DIM KY(17,40),KEYLIST(17,40)
  5. 35 DIM K$(80)
  6. 40 DIM IDEXA(30),IDEXB(30),IDEXC(30),MFLG(30)
  7. 50 DIM MIND#(30),MAXD#(30)
  8. 70 CH = 29
  9. 75 PRINT FRE(0)
  10. 80 GOSUB 52000
  11. 100 GOSUB 50000
  12. 150 GOSUB 24000
  13. 200 GOTO 40000
  14. 500 REM ******* CLS
  15. 510 CLS 
  16. 520 RETURN
  17. 20000 REM ******  PRINT OUR MAXIMUMS AND MINIMUMS
  18. 20100 PRINT "    FIELD               MINIMUM             MAXIMUM "
  19. 20210 FOR T = 1 TO NREC(A)
  20. 20220 PRINT T;TAB(5) FLDN$(A,T);TAB(30) MIND#(T);TAB(50) MAXD#(T)
  21. 20230 NEXT T
  22. 20240 PRINT "*********  PRESS ANY KEY TO CONTINUE  ********"
  23. 20245 IF INKEY$ = "" THEN 20245
  24. 20250 RETURN
  25. 21000 REM ******  LPRINT OUR MAXIMUMS AND MINIMUMS
  26. 21100 LPRINT "    FIELD               MINIMUM             MAXIMUM "
  27. 21210 FOR T = 1 TO NREC(A)
  28. 21220 LPRINT T;TAB(5) FLDN$(A,T);TAB(30) MIND#(T);TAB(50) MAXD#(T)
  29. 21230 NEXT T
  30. 21250 RETURN
  31. 23780 REM *************  READ SUBROUTINE  *************
  32. 23800 OPEN "I",#1,"FFILE"
  33. 23820 INPUT #1,MAXF
  34. 23840 FOR A = 1 TO MAXF
  35. 23860 INPUT #1,A,F$(A),NREC(A),L(A)
  36. 23880 FOR N = 1 TO NREC(A)
  37. 23900 INPUT #1,FLDN$(A,N),FTY(A,N),FL(A,N)
  38. 23920 IF FTY(A,N) = 2 THEN INPUT #1,KY(A,N),KEYLIST(A,N)
  39. 23940 NEXT N
  40. 23960 NEXT A
  41. 23980 CLOSE #1
  42. 23990 RETURN
  43. 24000 REM **********  READ IDEX SUBROUTINE
  44. 24100 OPEN "I",#1,"IDEX"
  45. 24110 FOR T = 1 TO MAXF
  46. 24120 INPUT #1,IDEXA(T),IDEXB(T),IDEXC(T),MFLG(T)
  47. 24130 NEXT T
  48. 24140 CLOSE #1
  49. 24150 RETURN
  50. 25000 REM **********  WRITE IDEX SUBROUTINE
  51. 25100 OPEN "O",#1,"IDEX"
  52. 25110 FOR T = 1 TO 30
  53. 25120 WRITE #1,IDEXA(T),IDEXB(T),IDEXC(T),MFLG(T)
  54. 25130 NEXT T
  55. 25140 CLOSE #1
  56. 25150 RETURN
  57. 26000 REM *********** READ MAX MIN DATA
  58. 26100 A$ = STR$(A)
  59. 26110 A$ = MID$(A$,2)
  60. 26120 A$ = "MAXMIN" + A$
  61. 26200 OPEN "I",#1,A$
  62. 26210 FOR T = 1 TO NREC(A)
  63. 26220 INPUT #1,MAXD#(T),MIND#(T)
  64. 26230 NEXT T
  65. 26240 CLOSE #1
  66. 26250 RETURN
  67. 27000 REM *********** WRITEMAX MIN DATA
  68. 27100 A$ = STR$(A)
  69. 27110 A$ = MID$(A$,2)
  70. 27120 A$ = "MAXMIN" + A$
  71. 27200 OPEN "O",#1,A$
  72. 27210 FOR T = 1 TO NREC(A)
  73. 27220 WRITE #1,MAXD#(T),MIND#(T)
  74. 27230 NEXT T
  75. 27240 CLOSE #1
  76. 27250 RETURN
  77. 28000 REM **********  READ IDEX SUBROUTINE
  78. 28100 GOSUB 500
  79. 28105 PRINT "FILE        LIMITS"
  80. 28110 FOR T = 1 TO MAXF
  81. 28112 T2 = IDEXA(T)
  82. 28114 T3 = IDEXB(T)
  83. 28116 T4 = IDEXC(T)
  84. 28120 PRINT T;
  85. 28122 IF MFLG(T) = 2 THEN PRINT TAB(15)"YES" ELSE PRINT TAB(15)"NO"
  86. 28130 NEXT T
  87. 28150 RETURN
  88. 29000 REM **********  LPRINT IDEX SUBROUTINE
  89. 29100 GOSUB 500
  90. 29105 LPRINT "FILE    LIMITS"
  91. 29110 FOR T = 1 TO MAXF
  92. 29112 T2 = IDEXA(T)
  93. 29114 T3 = IDEXB(T)
  94. 29116 T4 = IDEXC(T)
  95. 29120 LPRINT T;
  96. 29122 IF MFLG(T) = 2 THEN LPRINT TAB(15)"YES" ELSE LPRINT TAB(15)"NO"
  97. 29130 NEXT T
  98. 29150 RETURN
  99. 30000 REM *******  INPUT MAXD AND MIND
  100. 30100 GOSUB 500
  101. 30110 PRINT T;" - ";FLDN$(A,T)
  102. 30120 PRINT "***  WHAT IS THE MAXIMUM VALUE YOU WANT FOR THIS FIELD  ***"
  103. 30130 GOSUB 60180
  104. 30140 MAXD#(T) = DT#
  105. 30200 PRINT "***  WHAT IS THE MINIMUM VALUE YOU WANT FOR THIS FIELD  ***"
  106. 30210 GOSUB 60180
  107. 30220 MIND#(T) = DT#
  108. 30300 RETURN
  109. 40000 REM ****** INITIAL MENU
  110. 40100 GOSUB 500
  111. 40110 PRINT "**********************  INITIAL MENU  ************************"
  112. 40120 PRINT "     0 - EXIT PROGRAM "
  113. 40130 PRINT "     1 - TURN MAX MIN OFF OR ON "
  114. 40140 PRINT "     2 - SHOW MAXIMUMS AND MINIMUMS ON SCREEN"
  115. 40150 PRINT "     3 - SHOW  MAX OPTION FOR EACH FILE ON SCREEN"
  116. 40160 PRINT "     4 - PRINT MAXIMUMS AND MINIMUMS ON PAPER"
  117. 40170 PRINT "     5 - PRINT MAX OPTION FOR EACH FILE ON PAPER"
  118. 40180 PRINT "     6 - ENTER ALL NEW MAXIMUMS AND MINIMUMS FOR A FILE"
  119. 40190 PRINT "     7 - CHANGE THE MAXIMUM AND MINIMUMS FOR A SINGLE FIELD"
  120. 40200 PRINT "************  ENTER THE NUMBER THEN PRESS RETURN  ************"
  121. 40210 GOSUB 60000
  122. 40220 IF DT# < 0 OR DT# > 7 THEN 40210
  123. 40230 T = DT#
  124. 40240 IF T = 0 THEN GOTO 51000
  125. 40250 ON T GOTO 41000,42000,43000,44000,45000,46000,47000
  126. 41000 REM ********  CHANGE INDEX OR TURN MAX MIN OFF
  127. 41100 GOSUB 500
  128. 41110 GOSUB 56000
  129. 41180 GOSUB 500
  130. 41500 PRINT "****  DO YOU WANT LIMITS FOR THIS FILE  ****"
  131. 41510 PRINT "          1 - NO "
  132. 41520 PRINT "          2 - YES"
  133. 41530 PRINT "***  ENTER THE NUMBER THEN PRESS RETURN  ***"
  134. 41540 GOSUB 60000
  135. 41550 MFLG(A) = DT#
  136. 41700 GOSUB 25000
  137. 41710 GOTO 40000
  138. 42000 REM ********  SHOW MAXIMINS AND MINIMIMS ON SCREEN
  139. 42040 GOSUB 500
  140. 42050 GOSUB 56000
  141. 42055 IF MFLG(A) <> 2 THEN 40000
  142. 42060 GOSUB 26000
  143. 42100 GOSUB 500
  144. 42200 GOSUB 20000
  145. 42300 GOTO 40000
  146. 43000 REM ********  SHOW INDEX AND MAX OPTION ON SCREEN
  147. 43100 GOSUB 28000
  148. 43150 PRINT "******  PRESS ANY KEY TO CONTINUE  ******"
  149. 43200 IF INKEY$ = "" THEN 43200
  150. 43300 GOTO 40000
  151. 44000 REM ********  PRINT MAXIMUM AND MINIMUMS ON PAPER
  152. 44040 GOSUB 500
  153. 44050 GOSUB 56000
  154. 44055 IF MFLG(A) <> 2 THEN 40000
  155. 44060 GOSUB 26000
  156. 44100 GOSUB 500
  157. 44200 GOSUB 21000
  158. 44300 GOTO 40000
  159. 45000 REM ********  PRINT INDEX FIELDS AND MAX OPTION ON PAPER
  160. 45100 GOSUB 29000
  161. 45300 GOTO 40000
  162. 46000 REM *******  ENTER ALL NEW MAXIMUMS AND MINIMUMS FOR A FILE
  163. 46100 GOSUB 500
  164. 46110 GOSUB 56000
  165. 46180 FOR T = 1 TO NREC(A)
  166. 46185 IF FTY(A,T) = 1 GOTO 46200
  167. 46190 GOSUB 30000
  168. 46200 NEXT T
  169. 46210 GOSUB 27000
  170. 46300 GOTO 40000
  171. 47000 REM ********  CHANGE THE MAXIMUMS AND MINIMUMS FOR A SINGLE FIELD
  172. 47100 GOSUB 500
  173. 47110 GOSUB 56000
  174. 47115 GOSUB 26000
  175. 47120 GOSUB 500
  176. 47130 PRINT "****  WHAT FIELD DO YOU WANT TO CHANGE THE MAXIMUMS AND MINIMUMS  ****"
  177. 47180 FOR T = 1 TO NREC(A)
  178. 47185 PRINT T;" - ";FLDN$(A,T)
  179. 47200 NEXT T
  180. 47210 PRINT "*****  ENTER THE NUMBER THEN PRESS RETURN  *****"
  181. 47220 GOSUB 60000
  182. 47230 IF DT# < 1 OR DT# > NREC(A) THEN 47220
  183. 47240 T = DT#
  184. 47250 GOSUB 30000
  185. 47810 GOSUB 27000
  186. 47900 GOTO 40000
  187. 50000 REM **********  INTRO
  188. 50010 GOSUB 500
  189. 50100 PRINT "               L I M I T S    P R O G R A M    3.0   "
  190. 50105 PRINT ""
  191. 50110 PRINT "      Copyright 1984 by Potomac Pacific Engineering Inc."
  192. 50120 PRINT ""
  193. 50130 PRINT "This program is licensed FREE to all users with some restrictions "
  194. 50165 PRINT "     See the manual for more information on the license."
  195. 50167 PRINT ""
  196. 50920 GOSUB 23780
  197. 50950 PRINT "******************  PRESS ANY KEY TO CONTINUE  *******************";
  198. 50960 IF INKEY$ = "" GOTO 50960
  199. 50970 RETURN
  200. 51000 REM ***** EXIT TO SYSTEM
  201. 51100 GOSUB 500
  202. 51110 CLOSE
  203. 51120 PRINT " -BYE, Have a nice day"
  204. 51130 END
  205. 52000 REM ***** INTRO 1
  206. 52010 GOSUB 500
  207. 52100 PRINT "           Put the DATA DISK in the default disk drive  "
  208. 52110 PRINT ""
  209. 52120 PRINT "          *****  THEN PRESS ANY KEY TO CONTINUE  *****"
  210. 52130 PRINT ""
  211. 52140 PRINT "      The  CUSTOM  programs only use the PROGRAM DATA DISK"
  212. 52150 PRINT "Keep it in the default disk drive at all times during this program."
  213. 52200 IF INKEY$ = "" GOTO 52200
  214. 52210 RETURN
  215. 56000 REM ****  WHAT FILE
  216. 56105 PRINT "***********  WHICH FILE DO YOU WANT  ************"
  217. 56110 FOR T = 1 TO MAXF
  218. 56120 PRINT T;" - ";F$(T)
  219. 56130 NEXT T
  220. 56140 PRINT "******  ENTER THE NUMBER THEN PRESS RETURN  *****"
  221. 56150 GOSUB 60000
  222. 56160 IF DT# < 1 OR DT# > MAXF THEN 56150
  223. 56170 A = DT#
  224. 56200 RETURN
  225. 60000 REM *******  INTEGER LESS THEN 100 CHECK  ********
  226. 60010 MAX = 2
  227. 60020 ACT$ = "1234567890=<>^"
  228. 60030 IF NE = 0 THEN ACT$ = "1234567890"
  229. 60040 PRINT ">__<";
  230. 60050 GOTO 60240
  231. 60060 REM *******  INTEGER *******                        
  232. 60070 MAX = 8
  233. 60080 ACT$ = "1234567890-+,=<>^"
  234. 60090 IF NE = 0 THEN ACT$ = "1234567890-+,"
  235. 60100 PRINT ">________<";
  236. 60110 GOTO 60240
  237. 60120 REM *******  SINGLE PRECISION  *******                        
  238. 60130 MAX = 10
  239. 60140 ACT$ = "1234567890-+,.%$=<>^"
  240. 60150 IF NE = 0 THEN ACT$ = "1234567890+-,.%$"
  241. 60160 PRINT ">__________<";
  242. 60170 GOTO 60240
  243. 60180 REM *******  DOUBLE PRECISION  *******                        
  244. 60190 MAX = 20
  245. 60200 ACT$ = "1234567890-+,.%$=<>^"
  246. 60210 IF NE = 0 THEN ACT$ = "1234567890+-,.%$"
  247. 60220 PRINT ">____________________<";
  248. 60230 GOTO 60240
  249. 60240 REM ********** NUMBER CHECK **********
  250. 60250 A$ = ""
  251. 60260 K$(20) = " "
  252. 60270 KTMAX = 0
  253. 60280 FOR T9 = 1 TO MAX
  254. 60290 K$(T9) = " "
  255. 60300 NEXT T9
  256. 60310 DIG$ = "1234567890."
  257. 60320 DOTFLG = 0
  258. 60330 T2 = MAX + 1
  259. 60340 FOR T6 = 1 TO T2
  260. 60350 PRINT CHR$(CH);
  261. 60360 NEXT T6
  262. 60370 IF INKEY$ = "" GOTO 60380 ELSE GOTO 60370
  263. 60380 KT = 0
  264. 60390 REM ***********  CHECK ALFANUMERIC INPUT FOR LENGTH  ***********
  265. 60400 KT = KT + 1
  266. 60410 REM     
  267. 60420 W$ = INKEY$
  268. 60430 IF W$ = "" GOTO 60420
  269. 60440 C = ASC(W$)
  270. 60450 IF C = 0 THEN GOSUB 61900
  271. 60460 IF C = 13 GOTO 60580
  272. 60470 IF C = 17 OR C = 8 GOTO 61150
  273. 60480 IF C = 19 GOTO 60670
  274. 60490 IF C = 4 GOTO 60720
  275. 60500 IF C = 6 GOTO 60780
  276. 60510 IF C = 1 GOTO 60960
  277. 60520 IF KT > MAX GOTO 60410
  278. 60530 IF INSTR(ACT$,W$) = 0 GOTO 61230
  279. 60540 K$(KT) = W$
  280. 60550 PRINT K$(KT);
  281. 60560 IF KT > KTMAX THEN KTMAX = KT
  282. 60570 GOTO 60400
  283. 60580 REM **********  RETURN  **********
  284. 60590 FOR T9 = 1 TO KTMAX
  285. 60600 A$ = A$ + K$(T9)
  286. 60610 NEXT T9
  287. 60620 IF KTMAX = 0 THEN PRINT "1"
  288. 60630 IF KTMAX = 0 THEN DT# = 1
  289. 60640 IF KTMAX = 0 THEN RETURN
  290. 60650 PRINT ""
  291. 60660 GOTO 61260
  292. 60670 REM ********* MOVE CURSE BACK ********
  293. 60680 IF KT = 1 GOTO 60410
  294. 60690 KT = KT - 1
  295. 60700 PRINT CHR$(CH);
  296. 60710 GOTO 60410
  297. 60720 REM ********* MOVE CURSER FORWARD *********
  298. 60730 IF KT >= MAX GOTO 60410
  299. 60740 IF KT > (KTMAX + 1) GOTO 60410
  300. 60750 PRINT K$(KT);
  301. 60760 KT = KT + 1
  302. 60770 GOTO 60410
  303. 60780 REM ********** INSERT ***********
  304. 60790 IF KT > KTMAX GOTO 60410
  305. 60800 X9 = MAX
  306. 60810 WHILE X9 > KT
  307. 60820 X9 = X9 - 1
  308. 60830 K$(X9 + 1) = K$(X9)
  309. 60840 WEND 
  310. 60850 K$(KT) = " "
  311. 60860 KTMAX = KTMAX + 1
  312. 60870 IF KTMAX > MAX THEN KTMAX = MAX
  313. 60880 FOR T9 = KT TO KTMAX
  314. 60890 PRINT K$(T9);
  315. 60900 NEXT T9
  316. 60910 T6 = (KTMAX - KT) + 1
  317. 60920 FOR T7 = 1 TO T6
  318. 60930 PRINT CHR$(CH);
  319. 60940 NEXT T7
  320. 60950 GOTO 60410
  321. 60960 REM ********** DELETE ***********
  322. 60970 IF KT > KTMAX GOTO 60410
  323. 60980 IF KTMAX = 1 GOTO 60410
  324. 60990 K$(MAX + 1) = ""
  325. 61000 X9 = KT 
  326. 61010 WHILE X9 <= MAX
  327. 61020 K$(X9) = K$(X9 + 1)
  328. 61030 X9 = X9 + 1
  329. 61040 WEND 
  330. 61050 KTMAX = KTMAX - 1
  331. 61060 FOR T9 = KT TO KTMAX
  332. 61070 PRINT K$(T9);
  333. 61080 NEXT T9
  334. 61090 PRINT "_";
  335. 61100 T7 = (KTMAX - KT) + 2
  336. 61110 FOR T8 = 1 TO T7
  337. 61120 PRINT CHR$(CH);
  338. 61130 NEXT T8
  339. 61140 GOTO 60410
  340. 61150 REM ********* BACKSPACE ********
  341. 61160 IF KT = 1 GOTO 60410
  342. 61170 KT = KT - 1
  343. 61180 PRINT CHR$(CH);
  344. 61190 K$(KT) = " " 
  345. 61200 PRINT "_";
  346. 61210 PRINT CHR$(CH);
  347. 61220 GOTO 60410
  348. 61230 REM *******  INPUT NOT ACCEPTABLE  ********
  349. 61240 PRINT CHR$(7);
  350. 61250 GOTO 60420
  351. 61260 REM ********* CLEAR STRINGS ********
  352. 61270 MAX = LEN(A$)
  353. 61280 D2$ = ""
  354. 61290 D1$ = ""
  355. 61300 DFLG = 0
  356. 61310 FOR Q93 = 1 TO MAX
  357. 61320 R$ = MID$(A$,Q93,1)
  358. 61330 IF INSTR(DIG$,R$) = 0 GOTO 61400
  359. 61340 IF R$ = "." OR DFLG = 1 GOTO 61380
  360. 61350 IF DFLG = 1 GOTO 61380
  361. 61360 D2$ = D2$ + R$
  362. 61370 GOTO 61400
  363. 61380 D1$ = D1$ + R$
  364. 61390 DFLG = 1
  365. 61400 NEXT Q93
  366. 61410 DA# = VAL(D2$)
  367. 61420 D1# = VAL(D1$)
  368. 61430 DT# = DA# + D1#
  369. 61440 IF K$(1) = "-" THEN DT# =  -DT#   
  370. 61450 RETURN
  371. 61900 REM ****** CHECK FOR ASC0
  372. 61910 S4$ = INKEY$
  373. 61920 C2 =  ASC(S4$)
  374. 61930 IF C2 = 83 THEN C = 1
  375. 61940 IF C2 = 82 THEN C = 6
  376. 61950 IF C2 = 75 THEN C = 19
  377. 61960 IF C2 = 77 THEN C = 4 
  378. 61970 RETURN
  379. 62000 REM **********  ALPHANUMERIC CHECK  **************
  380. 62010 MAX = FL(A,Q)
  381. 62020 GOTO 62040
  382. 62030 REM ********  MAX SET IN PROGRAM  ********
  383. 62040 A$ = ""
  384. 62050 PRINT ">"; 
  385. 62060 FOR N9 = 1 TO MAX
  386. 62070 K$(N9) = ""
  387. 62080 PRINT "_";
  388. 62090 NEXT N9
  389. 62100 PRINT "<";
  390. 62110 T2 = MAX + 1
  391. 62120 FOR T4 = 1 TO T2
  392. 62130 PRINT CHR$(CH);
  393. 62140 NEXT T4
  394. 62150 KT = 0
  395. 62160 KTMAX = 1
  396. 62170 REM ***********  CHECK ALFANUMERIC INPUT FOR LENGTH  ***********
  397. 62180 KT = KT + 1
  398. 62190 PRINT TAB(KT+1)"";
  399. 62200 K$ = INKEY$
  400. 62210 IF K$ = "" GOTO 62200
  401. 62220 C = ASC(K$)
  402. 62230 IF C = 0 THEN GOSUB 61900
  403. 62240 IF C = 13 GOTO 62350
  404. 62250 IF C = 17 OR C = 8 GOTO 62920
  405. 62260 IF C = 19 GOTO 62450
  406. 62270 IF C = 4  GOTO 62500
  407. 62280 IF C = 6 GOTO 62560
  408. 62290 IF C = 1 GOTO 62730
  409. 62300 IF KT > MAX GOTO 62190
  410. 62310 K$(KT) = K$
  411. 62320 PRINT K$(KT);
  412. 62330 IF KT > KTMAX THEN KTMAX = KT
  413. 62340 GOTO 62180
  414. 62350 REM **********  RETURN  **********
  415. 62360 FOR T9 = 1 TO MAX
  416. 62370 A$ = A$ + K$(T9)
  417. 62420 NEXT T9
  418. 62430 PRINT "" 
  419. 62440 RETURN  
  420. 62450 REM ********* MOVE CURSE BACK ********
  421. 62460 IF KT = 1 GOTO 62190
  422. 62470 KT = KT - 1
  423. 62480 PRINT CHR$(CH);
  424. 62490 GOTO 62190
  425. 62500 REM ********* MOVE CURSER FORWARD *********
  426. 62510 IF KT >= MAX GOTO 62190
  427. 62520 IF KT >  KTMAX  GOTO 62190
  428. 62530 PRINT K$(KT);
  429. 62540 KT = KT + 1
  430. 62550 GOTO 62190
  431. 62560 REM ********** INSERT ***********
  432. 62570 X9 = MAX
  433. 62580 WHILE X9 > KT
  434. 62590 X9 = X9 - 1
  435. 62600 K$(X9 + 1) = K$(X9)
  436. 62610 WEND 
  437. 62620 K$(KT) = " "
  438. 62630 KTMAX = KTMAX + 1
  439. 62640 IF KTMAX > MAX THEN KTMAX = MAX
  440. 62650 FOR T9 = KT TO KTMAX
  441. 62660 PRINT K$(T9);
  442. 62670 NEXT T9
  443. 62680 T6 = (KTMAX - KT) +1
  444. 62690 FOR T7 = 1 TO T6
  445. 62700 PRINT CHR$(CH);
  446. 62710 NEXT T7
  447. 62720 GOTO 62190
  448. 62730 REM ********** DELETE ***********
  449. 62740 IF KT > KTMAX GOTO 62200
  450. 62750 IF KTMAX = 1 GOTO 62190
  451. 62760 K$(MAX + 1) = ""
  452. 62770 X9 = KT 
  453. 62780 WHILE X9 <= KTMAX
  454. 62790 K$(X9) = K$(X9 + 1)
  455. 62800 X9 = X9 + 1
  456. 62810 WEND 
  457. 62820 KTMAX = KTMAX - 1
  458. 62830 FOR T9 = KT TO KTMAX
  459. 62840 PRINT K$(T9);
  460. 62850 NEXT T9
  461. 62860 PRINT "_";
  462. 62870 T7 = (KTMAX - KT) + 2
  463. 62880 FOR T6 = 1 TO T7
  464. 62890 PRINT CHR$(CH);
  465. 62900 NEXT T6
  466. 62910 GOTO 62190
  467. 62920 REM ********* BACKSPACE ********
  468. 62930 IF KT = 1 GOTO 62190
  469. 62940 K$(KT) = " "
  470. 62950 KT = KT - 1
  471. 62960 K$(KT) = " "
  472. 62970 PRINT CHR$(CH);
  473. 62980 PRINT "_";
  474. 62990 PRINT CHR$(CH);
  475. 63000 GOTO 62190
  476.  " "
  477. 62950 KT = KT - 1
  478. 62960 K$(KT) = " "
  479. 62970 PRINT CHR$(C