home *** CD-ROM | disk | FTP | other *** search
/ ftp.whtech.com / ftp.whtech.com.tar / ftp.whtech.com / club100 / bus / mvcwm3.ba < prev    next >
Text File  |  2006-10-19  |  12KB  |  200 lines

  1. 0 'MVCWM3.BA is MINIVC.WM3 rewritten by    Woods Martin [70235,232] 01/15/84
  2. 1 'CLUB 100 Library - 415/939-1246 BBS,    937-5039 NEWSLETTER, 932-8856 VOICE
  3. 2 'EXTF.WM3 1,4810-4818,7080
  4. 3 'XFER.WM3 2,5212,22,32,5332
  5. 4 'REPL.WM3 3,5600-5695
  6. 5 'INDE.WM3 4,5110-5198 (5600-5695 reqd)
  7. 6 'SIZE.WM3 5,7010-7030
  8. 7 'EDIT.WM3 6,5020-5042 idea Joel Hassel
  9. 8 'Orig by Terry Dettman[70076,260]-mods by Don Hergert[72235,32], Gary Bender[70375,1070], Chris Young[70136,62]
  10. 9 '
  11. 10 MAXFILES=1:CLEAR3209:DEFINTA-Z:DEFSTRS:DIMI,J,C1,R1,C,R,F,P:CM=19:RM=20:SU="S":GOSUB7000:GOSUB5870:GOTO200
  12. 20 PRINT@83+40*(R-R1)+9*(C-C1),"";:GOSUB28
  13. 25 GOSUB30:IFP<0THENPRINTSR(X)USINGSF;S(I,J),SM;:RETURNELSEPRINTSR(X);USINGSE(F);V(I,J),SM;:RETURN
  14. 28 I=R:J=C:RETURN
  15. 30 P=ABS(T(I,J))-1:IFP<0THENRETURN
  16. 31 F=-(ABS(V(I,J))>99999999/(10^(P+1+(P=0))))OR-(P=8):IFF=0THENMID$(SE(0),1)=SE:IFPTHENMID$(SE(0),9-P,1)="."
  17. 32 RETURN
  18. 35 IFHTHENGOSUB5030:RETURNELSEPRINTSI;S;:ST=S:GOTO40
  19. 38 ST=""
  20. 40 GOSUB75:IFKTHENRETURNELSEIFS=SDTHENST="":GOTO1350
  21. 45 IFA=8THENIFLEN(ST)>0THENPRINTS" "S;:ST=MID$(ST,1,LEN(ST)-1):GOTO40ELSE1350
  22. 50 IFA=127ORA<32THEN40ELSEST=ST+S:PRINTS;:GOTO40
  23. 60 CL=CL-(J-CL)*(CL<J):RL=RL-(I-RL)*(RL<I):RETURN
  24. 65 T(R,C)=0:S(R,C)="":V(R,C)=0:RETURN
  25. 75 S=INPUT$(1):A=ASC(S):K=INSTR(SA,S):IFKORU=0THENRETURNELSEIFA>=97ANDA<=122THENS=CHR$(A-32):RETURNELSERETURN
  26. 100 PRINT@40,CHR$(J+65)MID$(STR$(I),2)SPACE$(-(I<10));:RETURN
  27. 200 U=0:H=0:GOSUB75:IFK>1THEN400ELSEIFKTHENGOSUB28:IFT(I,J)=0THEN200ELSEGOSUB4300:GOSUB2400:GOTO200
  28. 210 ONINSTR("/>!#",S)+1GOSUB220,5000,5100,5400,5450:IFK>1THEN400ELSE200
  29. 220 IFINSTR("1234567890.+-(@",S)THEN4000ELSEIFA>31ANDA<>127THEN3000ELSERETURN
  30. 400 X=0:GOSUB20
  31. 401 C=C-(K=2)+(K=3)-(K=6)*((C=C1)*4+(C<>C1)*(C-C1))+(K=7)*((C=C1+3)*4-(C<>C1+3)*(C-C1-3))+(K=10)*C-(K=11)*(CL-C)
  32. 402 R=R+(K=4)-(K=5)-(K=8)*((R=R1)*6+(R<>R1)*(R-R1))+(K=9)*((R=R1+5)*6-(R<>R1+5)*(R-R1-5))+(K=12)*R-(K=13)*(RL-R)
  33. 405 GOSUB2400:GOTO200
  34. 1000 CLS:PRINT:PRINT"mvc";:FORI=C1TOC1+3:PRINTUSINGSY;CHR$(65+I);:NEXT:PRINT
  35. 1040 X=0:FORI=R1TOR1+5:PRINTUSINGSR+"###"+SM;I;:FORJ=C1TOC1+3:GOSUB25:NEXT:IFI<R1+5THENPRINT
  36. 1060 NEXT:RETURN
  37. 1300 X=1:GOSUB20
  38. 1350 GOSUB28:GOSUB100:PRINTSI;S(R,C)SJ;:RETURN
  39. 2400 B=0
  40. 2420 IFR<0ORR>RMORC<0ORC>CMTHENBEEP:R=-R*(R>=0ANDR<=RM)-RM*(R>RM):C=-C*(C>=0ANDC<=CM)-CM*(C>CM)
  41. 2430 GOSUB28:GOSUB60
  42. 2460 IFR-R1>5THENR1=R-5:B=1ELSEIFR-R1<0THENR1=R:B=1
  43. 2470 IFC-C1>3THENC1=C-3:B=1ELSEIFC-C1<0THENC1=C:B=1
  44. 2500 IFBTHENGOSUB1000
  45. 2510 GOSUB1300:S="":RETURN
  46. 3000 U=0:IFA=34THENS=""
  47. 3010 GOSUB35:IFST=""THENS=ST:RETURNELSEGOSUB65:S(R,C)=ST
  48. 3030 GOSUB2400:RETURN
  49. 4000 U=1:GOSUB35:IFST=""THENS=ST:RETURNELSEGOSUB28:S(I,J)=ST:T=ABS(T(I,J)):IFT=0THENT=G
  50. 4010 FORX=1TOLEN(ST):A=ASC(MID$(ST,X)):IF(A<48+6*(X=1)ORA>57)ANDA<>46THENT=-T:X=256
  51. 4020 NEXT:T(I,J)=T:GOSUB4300:PRINTSI;:GOSUB2400:RETURN
  52. 4300 IFT(I,J)>0THENVI=VAL(S(I,J))ELSEST=S(I,J):VI=0:IFT(I,J)<0THENSC="+":L=1:N=0:GOSUB4320
  53. 4310 V(I,J)=VI:RETURN
  54. 4320 GOSUB4500:IFQ=1THENRETURNELSEIFSL="("THENW=0:GOSUB4900:GOTO4350ELSEIFINSTR(SN,SL)<>0THENSC=SL:GOTO4320ELSE4340
  55. 4340 A=ASC(SL):IFA>=65ANDA<=90THENVX=V(VAL(MID$(SL,2)),ASC(SL)-65)ELSEIFA=64THENGOSUB4800ELSEVX=VAL(SL)
  56. 4350 A=INSTR(SN,SC):IFA<2ORA=6THENVI=VI+VXELSEIFA=2THENVI=VI-VXELSEIFA=3THENVI=VI*VXELSEIFA=4THENVI=VI/VX
  57. 4360 IFA=5THENVI=VI^VXELSEIFA=7THENVY=VI:VZ=VX
  58. 4370 GOTO 4320
  59. 4500 IFL>LEN(ST)THENQ=1:RETURNELSEQ=0:SL=MID$(ST,L,1):L=L+1:IFINSTR(SN,SL)<>0THENRETURNELSEIFSL=")"THENQ=1:RETURN
  60. 4540 IFL>LEN(ST)THENRETURNELSES=MID$(ST,L,1):IFINSTR(SN,S)<>0ORS=")"THENRETURNELSEL=L+1:IFS=","THENRETURN
  61. 4541 SL=SL+S:GOTO4540
  62. 4800 W=INSTR(SG,SL+" "):IFW=0THENGOSUB9040:RETURNELSEW=W/7+1
  63. 4802 GOSUB4900:IFW=5ORW=6THENRETURNELSEIFW=1THENVX=ABS(VX)ELSEIFW=2THENVX=INT(VX)ELSEIFW=3THENVX=SQR(VX)
  64. 4804 IFW=4THENVI=SGN(VI)*(INT(ABS(VI)*10^VX+.5))/10^VX:VX=1
  65. 4810 IFW=7THENVX=EXP(VX)ELSEIFW=8THENVX=LOG(VX)ELSEIFW=9THENVX=SIN(VX)ELSEIFW=10THENVX=COS(VX)ELSEIFW=11THENVX=TAN(VX)
  66. 4812 IFW=12THENVX=ATN(VX)ELSEIFW=13THENVX=FIX(VX)ELSEIFW=14THENIFVY<VZTHENVX=VYELSEVX=VZ
  67. 4814 IFW=15THENIFVY>VZTHENVX=VYELSEVX=VZ
  68. 4816 IFW=16THENVX=VYMODVZELSEIFW=17THENVX=-(VY<VZ)ELSEIFW=18THENVX=-(VY<=VZ)ELSEIFW=19THENVX=-(VY>VZ)
  69. 4818 IFW=20THENVX=-(VY>=VZ)ELSEIFW=21THENVX=-(VY=VZ)ELSEIFW=22THENVX=-(VY<>VZ)ELSEIFW=23THENVX=3.1415926536
  70. 4840 RETURN
  71. 4870 GOSUB4890:CA=CB:RA=RB:GOSUB4890:L=L+1
  72. 4872 VI=0:X=0:IFCA=CBTHEN4874ELSEIFRA=RBTHEN4876ELSEGOSUB9045:GOTO4878
  73. 4874 FORRI=RATORB:VI=VI+V(RI,CA):X=X-(T(RI,CA)<>0):NEXT:GOTO4878
  74. 4876 FORCI=CATOCB:VI=VI+V(RA,CI):X=X-(T(RA,CI)<>0):NEXT
  75. 4878 IFW=6THENVI=VI/X:RETURNELSERETURN
  76. 4890 L=L+1:GOSUB4500
  77. 4895 CB=ASC(SL)-65:RB=VAL(MID$(SL,2)):RETURN
  78. 4900 SO(N)=SC:SC=SL:VS(N)=VI:W(N)=W:N=N+1:VI=0:IFW=5ORW=6THENGOSUB4870ELSEL=L-(W>0):GOSUB4320
  79. 4910 N=N-1:VX=VI:W=W(N):VI=VS(N):SC=SO(N):RETURN
  80. 5000 CLOSE:PRINTSI"cmd: Ed In De Re Bl Fm Gl Pr St Cl Me ";:U=1:E=0:GOSUB75
  81. 5010 ONINSTR("EIDRBFGPSCM",S)+1GOSUB5880,5020,5110,5150,5600,5050,5500,5550,5700,5200,5850,5870:RETURN
  82. 5020 H=1:ST=S(R,C):IFT(R,C)THENGOSUB4000ELSEGOSUB3000
  83. 5022 GOTO5890
  84. 5030 SX=ST:PRINT@40,"edt";:H=LEN(SX)
  85. 5032 H=H-(H<0)+(H>LEN(SX)):PRINTSI;SX;:PRINT@H,"";:GOSUB75:IFK=1THENST=SX:RETURN
  86. 5034 IFKTHENH=H+(K=3)-(K=2)+H*(K=10)-(LEN(SX)-H)*(K=11):GOTO5032
  87. 5036 IFA>31ANDA<>127THENSX=LEFT$(SX,H)+S+MID$(SX,H+1):H=H+1:GOTO5032
  88. 5038 IFA=27THENST="":RETURN
  89. 5040 IFA=8THENSX=LEFT$(SX,H-1-(H=0))+MID$(SX,H+1):H=H-1ELSEIFA=127THENSX=LEFT$(SX,H)+MID$(SX,H+2)
  90. 5042 GOTO5032
  91. 5050 PRINTSI;"Blank ";:GOSUB75:IFKTHENGOSUB65:GOTO3030ELSE5880
  92. 5070 PRINTSIUSING"wm3 CM=! RM=### P=!";CHR$(CM+65),RM,SU;:RETURN
  93. 5100 PRINTSI"GOTO: ";:U=1:GOSUB38:IFLEN(ST)<2THEN5880
  94. 5101 X=0:GOSUB20:C=ASC(ST)-65:R=VAL(MID$(ST,2)):GOSUB2400:GOTO5890
  95. 5110 ST="Insert":GOSUB5190:IFCA=0THEN5880ELSE:IFCA=82THEN5130
  96. 5120 IFCL=CMTHEN5180ELSEZ=1:FORY=CL+1TOC+1STEP-1:CW=Y-1:GOSUB5192:NEXT:Y=R:GOSUB5168:R=Y:GOTO5198
  97. 5130 IFRL=RMTHEN5180ELSEZ=2:FORY=RL+1TOR+1STEP-1:RW=Y-1:GOSUB5194:NEXT:Y=C:GOSUB5178:C=Y:GOTO5198
  98. 5150 ST="Delete":GOSUB5190:IFCA=0THEN5880ELSEIFCA=82THEN5170
  99. 5160 Z=1:IFC<CLTHENFORY=CTOCL-1:CW=Y+1:GOSUB5192:NEXT
  100. 5165 CE=C:RE=R:C=CL:GOSUB5168:CL=CL-1:C=CE+(CE>0):R=RE:GOTO5198
  101. 5168 FORR=0TORL:GOSUB65:NEXT:RETURN
  102. 5170 Z=2:IFR<RLTHENFORY=RTORL-1:RW=Y+1:GOSUB5194:NEXT
  103. 5175 CE=C:RE=R:R=RL:GOSUB5178:RL=RL-1:C=CE:R=RE+(RE>0):GOTO5198
  104. 5178 FORC=0TOCL:GOSUB65:NEXT:RETURN
  105. 5180 E=9:GOSUB5280:GOTO5880
  106. 5190 PRINTSI;ST" Col Row ";:GOSUB75:CA=ASC(S):IFCA=67ORCA=82THENRETURNELSECA=0:RETURN
  107. 5192 RW=0:RX=RL:RY=0:CX=CW:CY=Y:GOTO5196
  108. 5194 CW=0:CX=CL:CY=0:RX=RW:RY=Y
  109. 5196 CZ=CY:RZ=RY:GOSUB5606:RETURN
  110. 5198 Z=0:GOTO5400
  111. 5200 D=0:PRINTSI"Store: # L S Q ";:GOSUB75:ONINSTR("#LSQ",S)+1GOTO5880,5212,5300,5220,5800
  112. 5212 D=1:PRINTSI"Data: L S ";:GOSUB75:IFS="L"THEN5300ELSEIFS<>"S"THEN5880
  113. 5220 CLOSE:PRINTSI"Save File:";:GOSUB38:IFST=""THEN5880ELSESC=ST:IFD=0THENRA=0:RB=RL:CA=0:CB=CL:GOTO5230
  114. 5222 GOSUB5790:IFST=""ORCB<CORRB<RTHEN5880ELSECA=C:RA=R
  115. 5230 OPENSCFOROUTPUTAS1:IFD=0THENPRINT#1,RL;CL;G;O:RO=0:CO=0:GOTO5235
  116. 5232 PRINT#1,"-1 -1 0 0":RO=R:CO=C
  117. 5235 FORI=RATORB:FORJ=CATOCB:IFLEN(S(I,J))=0THEN5260
  118. 5240 T=T(I,J):V=V(I,J):IFDTHENT=ABS(T)
  119. 5250 PRINT#1,MID$(STR$(I-RO),2);J-CO;MID$(STR$(T),1-(T>=0))" ";
  120. 5255 IFDANDT>0THENPRINT#1,MID$(STR$(V),1-(V>=0))ELSEPRINT#1,SP;S(I,J);SP
  121. 5260 GOSUB100:NEXT:NEXT:PRINT#1,"-1 -1 0 END"SZ:CLOSE:GOSUB1350:GOTO5890
  122. 5270 GOSUB5280:GOTO5220
  123. 5280 IFE=9THENS="model too big"ELSES="invalid file"
  124. 5290 GOSUB9060:RETURN
  125. 5300 CLOSE:CLS:PRINT@80,"";:FILES:PRINTSJ"Load File:";:GOSUB38:IFST="" THEN5865
  126. 5330 OPENSTFORINPUTAS1:INPUT#1,RA,CA,RB,CB
  127. 5332 IFDTHENIFRA=-1THENRO=R:CO=C:GOTO5350ELSE5340
  128. 5334 IFRA<0ORRB<1ORRB>9ORCB<0ORCB>1THEN5340ELSERL=RA:CL=CA:G=RB:O=CB:IFRL<=RMANDCL<=CMTHENR=0:RO=0:C=0:CO=0:GOTO5350
  129. 5335 E=9
  130. 5340 GOSUB5280:GOTO5300
  131. 5350 IFEOF(1)THEN5370ELSEINPUT#1,I,J,T,ST:IFI>=0THENI=I+RO:J=J+CO:T(I,J)=T:S(I,J)=ST:GOSUB60:GOSUB100:GOTO5350
  132. 5370 CLOSE:IFD=0THENR=0:C=0:R1=0:C1=0
  133. 5400 PRINTSI"Recalc by "SQ(O);:IFOTHEN5420
  134. 5410 FORJ=0TOCL:FORI=0TORL:GOTO5425
  135. 5420 FORI=0TORL:FORJ=0TOCL
  136. 5425 GOSUB5430:NEXT:NEXT:GOTO5865
  137. 5430 GOSUB100:IFT(I,J)THENGOSUB4300:RETURNELSERETURN
  138. 5450 IFT(R,C)=0THEN5880ELSES(R,C)=MID$(STR$(V(R,C)),1-(V(R,C)>=0)):T(R,C)=ABS(T(R,C)):GOTO5890
  139. 5500 IFT(R,C)=0THENPRINTSI"not val";:GOTO5875ELSEGOSUB5510:T(R,C)=SGN(T(R,C))*(VAL(S)+1):GOTO5890
  140. 5510 PRINTSI"Format: Decimal 0-7 or S ";:GOSUB75:IFS="S"THENS="8"
  141. 5520 IFS<"0"ORS>"8"THENBEEP:GOTO5510ELSERETURN
  142. 5550 PRINTSI"Global: O F ";:GOSUB75:IFS="O"THENGOSUB5565ELSEIFS<>"F"THEN5880ELSEGOSUB5510:G=VAL(S)+1
  143. 5560 GOTO5890
  144. 5565 PRINTSI"Recalc Order: R C ";:GOSUB75:O=-(S="R"):RETURN
  145. 5600 Z=0:SL=CHR$(C+65)+MID$(STR$(R),2):CO=C:RO=R:PRINTSI"Source: ";:GOSUB5692:CW=CO:RW=RO
  146. 5602 GOSUB5690:CX=CO:RX=RO:IFEOR(CW<>CXANDRW<>RX)ORRW>RX ORCW>CXTHEN5608
  147. 5604 SL="":PRINT" Target: ";:GOSUB5692:IFST=""THEN5608ELSECY=CO:RY=RO:GOSUB5690:CZ=CO:RZ=RO
  148. 5606 IFEOR(CY<>CZANDRY<>RZ)ORCZ>CMORRZ>RMORCY>CZORRY>RZORCZ>CMORRZ>RMTHEN5608ELSERT=RY:CT=CY:GOTO5610
  149. 5608 S=SC+"..."+SL+"<illegal":GOSUB9060:GOTO5890
  150. 5610 IFRW=RXTHENFORCW=CWTOCX:IFCT=CZTHEN5620ELSE5625
  151. 5615 FORRW=RWTORX:IFRT=RZTHEN5625
  152. 5620 FORRY=RTTORZ:GOSUB5640:IFETHEN5695ELSENEXT:CY=CY+1:NEXT:GOTO5695
  153. 5625 FORCY=CTTOCZ:GOSUB5640:IFETHEN5695ELSENEXT:RY=RY+1:NEXT:GOTO5695
  154. 5640 E=0:J=CY:I=RY:GOSUB100:IFT(RW,CW)<0THENGOSUB5650:S(I,J)=STELSES(I,J)=S(RW,CW)
  155. 5645 T(I,J)=T(RW,CW):V(I,J)=0:GOSUB60:IFZTHENRETURNELSEGOSUB4300:RETURN
  156. 5650 ST=S(RW,CW):L=1:SK=""
  157. 5655 CO=CY-CW:RO=RY-RW:GOSUB4500:CI=ASC(SL):IFCI<65ORCI>90THEN5670ELSERI=VAL(MID$(SL,2))
  158. 5657 IF(Z=1AND(CI-65)<C)THENCO=0ELSEIF(Z=2ANDRI<R)THENRO=0
  159. 5660 IFZ=0THENPRINTSILEFT$(ST,L-1)"<rep R N";:GOSUB75:IFS<>"R"THEN5670
  160. 5665 CI=CI+CO:RI=RI+RO:IFCI<65ORRI<0THENSL="err"ELSESL=CHR$(CI)+MID$(STR$(RI),2)
  161. 5670 SK=SK+SL:IFL<=LEN(ST)THEN5655ELSEST=SK:RETURN
  162. 5690 PRINT"...";
  163. 5692 SC=SL:PRINTSL;STRING$(LEN(SL),8);:GOSUB38:IFST=""THENPRINTSL;ELSECO=ASC(ST)-65:RO=VAL(MID$(ST,2)):SL=ST
  164. 5694 E=((CO>CM)+(RO>RM)):RETURN
  165. 5695 IFZTHENRETURNELSE5865
  166. 5700 PRINTSI"Print: Printer, Device ";:GOSUB75:IFS="P"THENSV="LPT:":GOTO5710ELSEIFS<>"D"THEN5880
  167. 5705 PRINT"Spec: ";:GOSUB38:IFINSTR(ST,":")=0ORLEFT$(ST,4)="RAM:"THEN5880ELSESV=ST
  168. 5710 GOSUB5790:IFST=""THEN5880
  169. 5720 OPENSVFOROUTPUTAS1:FORI=RTORB:FORJ=CTOCB:GOSUB30:IFP<0THENPRINT#1,USINGSF;S(I,J);ELSEPRINT#1,USINGSE(F);V(I,J);
  170. 5740 NEXT:PRINT#1,"":NEXT:PRINT#1,SZ;:CLOSE:GOTO5890
  171. 5790 PRINT SI"Lower right ";:GOSUB38:IFST=""THENRETURNELSESL=ST:GOSUB4895:RETURN
  172. 5800 S="Quit: ":GOSUB5860:IFS="Y"THENMENUELSE5880
  173. 5850 S="Clear: ":GOSUB5860:IFS="Y"THENRUNELSE5880
  174. 5860 S=S+" Confirm=Y Abort=":GOSUB9060:RETURN
  175. 5865 GOSUB1000:GOTO5890
  176. 5870 GOSUB1000:GOSUB5070:PRINTUSING" G# \ \ #####M ####S";G-1,SQ(O),FRE(0),FRE("");
  177. 5875 BEEP:FORX=1TO4000:NEXT
  178. 5880 BEEP
  179. 5890 GOSUB1300
  180. 5895 S="":RETURN
  181. 7000 SA=CHR$(13)+CHR$(28)+CHR$(29)+CHR$(30)+CHR$(31)+CHR$(1)+CHR$(6)+CHR$(20)+CHR$(2)+CHR$(17)+CHR$(18)+CHR$(23)+CHR$(26)
  182. 7010 U=1:M=(CM+1)*RM
  183. 7020 CLS:RM=M/(CM+1):GOSUB5070:PRINT" <OK=ENT or NEW CM?";:GOSUB75:IFKTHEN7040ELSEIFS<"D"ORS>"Z"THENBEEP:GOTO7020
  184. 7030 CM=ASC(S)-65:PRINT:PRINT"  Precision:S or D ";:GOSUB75:SU=CHR$(83+15*(S="D")):GOTO7020
  185. 7040 IFSU="S"THENDEFSNGVELSEDEFDBLV
  186. 7050 DIML,ST,Q,SL,SC,CA,RA,VX,W,N,VI,CB,RB,X,T(RM,CM),S(RM,CM),V(RM,CM),VS(10),SO(10),W(10),SR(1),SE(1),SQ(1)
  187. 7070 SP=CHR$(34):SN="+-*/^(,":SD=CHR$(27):SZ=CHR$(26):SG="@ABS   @INT   @SQRT  @ROUND @SUM   @AVG   "
  188. 7080 SG=SG+"@EXP   @LN    @SIN   @COS   @TAN   @ATAN  @FIX   @MIN   @MAX   @MOD   @<     @<=    @>     @>=    @=     @<>    @PI "
  189. 8100 SR=SD+CHR$(112):SM=SD+CHR$(113):SY=SR+".    !  ."+SM:SB=SD+"K":SJ=SD+"Y  ":SI=SJ+SB:SQ(1)="row":SQ(0)="col":G=1
  190. 8110 SE="#########\\":SE(0)=SE:SE(1)="#####^^^^\\":SF="\       \\\":SR(0)="":SR(1)=SR:ONERRORGOTO9000:RETURN
  191. 9000 E=ERR:IFERL<5000THEN9020ELSEIFERL=5230THENRESUME5270ELSEIFERL=5330ORERL=5350THENRESUME5340
  192. 9010 IFERL=5010ORERL=5200THENS="Cmd NA":GOSUB9060ELSEGOSUB9050
  193. 9015 RESUME5890
  194. 9020 IFERL<4300THENGOSUB9050ELSEGOSUB9040
  195. 9030 PRINTSI;ST;SJ;:RESUME200
  196. 9040 ST=LEFT$(ST,L-1):R=I:C=J:V(I,J)=0:VX=0:GOSUB2400
  197. 9045 S=ST+"<calc error":GOTO9060
  198. 9050 S="Error"+STR$(ERR)+" at line"+STR$(ERL)
  199. 9060 BEEP:PRINTSI;S" <ENT>";:GOSUB75:RETURN
  200.