Listing of file='TPUT050B' on disk='vmedia/733-1004.wvd.zip'
# Sector 260, program filename = 'TPUT050B' 0012 REM . TPUT050B, 00-00(08/10/77), 10189A 0013 DIM N0$8,A$(16),L$1,H$2,N$8 : GOSUB '248(1,0,4) : GOSUB 220 : P1,I9=1 : GOSUB 240 : L1,P9=L0 : GOSUB 240 0110 V1=64-P1+1 : V2=64-P2+1 : IF V1<P9THEN 125 : V1=P9 0125 IF V1>V2THEN 160 : STR(C$(I9),P1,V1)=STR(D$(I8),P2,V1) : P2=P2+V1 : P9=P9-V1 : IF P2<=64THEN 150 : GOSUB 300 0150 GOSUB 350 : GOTO 110 0160 STR(C$(I9),P1,V2)=STR(D$(I8),P2,V2) : P1=P1+V2 : P9=P9-V2 : P2=1 : I8=I8+1 : IF I8<=4THEN 185 : GOSUB 220 0185 GOSUB 355 : GOTO 110 0195 L0=S9 : GOSUB '31(10) : GOSUB '31(10) : GOSUB '31(6) : O$="C" : PRINT HEX(030A0A0A);"END OF PROGRAM" : STOP 0220 IF A>=A9-1THEN 415 : DATA LOAD BA T#2,(A,A)D$() : I8,P2=1 : RETURN 0240 IF L0<0THEN 335 : L0=256*VAL(STR(D$(I8),P2,1)) : P2=P2+1 : IF P2>64THEN 310 0265 L0=L0+VAL(STR(D$(I8),P2,1)) : IF L0=17743THEN 195 : P2=P2+1 : IF L0<>1THEN 290 : GOSUB '31(10) : GOSUB 290 : P2=P2+1 : GOSUB 290 : P2=P2+1 : GOSUB 290 : P2=P2+1 : L0=-1 0290 IF P2>64THEN 300 : RETURN 0300 IF I8=4THEN 220 : I8=I8+1 : P2=1 : RETURN 0310 IF I8<4THEN 325 : GOSUB 220 : GOTO 265 0325 I8=I8+1 : P2=1 : GOTO 265 0335 L0=0 : GOSUB 240 : L1,P9=L0 : GOSUB 240 : L2=L0 : RETURN 0350 P1=1 : I9=I9+1 0355 IF P9<=0THEN 370 : IF (I8-1)*64+P2>256THEN 220 : RETURN 0370 IF L1<>80THEN 374 : IF STR(C$(1),1,3)="EOF"THEN 373 : IF STR(C$(1),1,3)<>HEX(C5D6C6)THEN 374 0373 S9=80 0374 L0=S9 : GOSUB '204(T0) : GOSUB '31(11) : B9=B9+1 : PRINT HEX(010A);" WRITE BLOCK ";B9;" ON TAPE" : P1,I9=1 : GOSUB 240 : L1,P9=L0 : GOSUB 240 : L2=L0 : RETURN 0415 IF STR(N$(J9),8,1)="0"THEN 455 : GOSUB '248(1,0,4) : GOSUB '243("REMOVE THE PLATTER,MOUNT NEXT ONE, KEY (EXEC) TO RESUME",0) : GOSUB '248(1,0,4) : CONVERT STR(N$(1),6,2)TO V4 : V4=V4+1 : CONVERT V4TO STR(N$(1),6,2),(##) 0441 STR(N$(2),6,2)=STR(N$(1),6,2) : GOTO 535 0455 PRINT " * MISSING 'EOF1' MARK ON DISK *" : STOP : GOTO 195 0505 GOSUB '243("MOUNT THE DISK PLATTER, KEY (EXEC) TO RESUME",0) : GOSUB '248(1,0,4) : GOSUB '243("ENTER THE DISK DATA FILE NAME (1 TO 5 CHARS)",5) : STR(N$(1),1,5)=Q6$ : STR(N$(1),6,3)="001" : N$(2)=N$(1) 0523 STR(N$(2),8,1)="0" 0535 GOSUB '209(N$(1),1) : IF H0=1THEN 575 : GOSUB '209(N$(2),2) : IF H0=1THEN 575 : GOSUB '248(1,0,8) : GOSUB '243("DATA FILE IS NOT ON THE WORKING DISK, KEY (EXEC) TO RETRY",0) : GOSUB '248(1,0,4) : GOTO 505 0575 DATA LOAD DC OPEN T#2,N$(J9) : LIMITS T#2,N$(J9),A7,A9,A8 : A=A7 : I8,P2=1 : DATA LOAD BA T#2,(A,A)D$() : GOTO 110 0780 DEFFN'209(N$,J9) : O9=0 : XOR (STR(N$,2),N$) : L$=STR(N$,8,1) : H$=HEX(0000) : ADDC(H$,L$) : ADDC(H$,L$) : ADDC(H$,L$) : ADD(STR(H$,1,1),STR(H$,2,1)) : H=VAL(H$) : DATA LOAD BA T#2,(0,M$)A$() : S=VAL(STR(A$(1),2,1)) : H=H-INT(H/S)*S : H0=0 0840 DATA LOAD BA T#2,(H,H)A$() : FOR I=1TO 16 : IF I+H=1THEN 880 : IF STR(A$(I),1,2)<>HEX(0000)THEN 875 : I=16 : O9=1 : GOTO 880 0875 IF STR(A$(I),1,1)=HEX(11)THEN 880 : IF STR(A$(I),9,8)=N$(J9)THEN 920 0880 NEXT I : IF O9=1THEN 915 : H0=H0+1 : IF H0>STHEN 915 : H=H-2 : IF H>=0THEN 840 : H=S-1 : GOTO 840 0915 H0=-1 : RETURN 0920 H0=1 : RETURN