Listing of file='TBO.LDT' on disk='vmedia/toolbox.wvd.zip'
# Sector 832, program filename = 'TBO.LDT' 0010 %.TBO.LDT 02/26/90 0015 P0=0 : REM %.Partition to time 0020 REM %0 A A, B B, D Display line, K$ K$1 0030 REM %0 P # partitions, P$ PSTAT data 0040 REM %0 T$ Time current, T1$ Time prior 0050 DIM S$80,T$(4)2,T0$6,T$6,T1$6,C0$1,C2$2 0060 DIM P$30,K$1 0065 P$=$PSTAT(1) : C0$=STR(P$,9,1) : HEXUNPACKSTR(P$,10,1)TO C2$ 0080 P$=$PSTAT(P+1) : ERRORGOTO 100 0090 P=P+1 : IF P<16THEN 80 0100 REM 0110 D=1 : D0=D-1 : D1=D+1 : D9=D1+6 0120 PRINT HEX(0306);BOX(1,11);" PSTAT data" : PRINT AT(D9-1,0);BOX(1,13);" LIST DT data","under MDT: -dd denotes usi ng partition" 0125 PRINT AT(0,65);"OS = "; : IF C0$="W"THEN PRINT "386 "; : IF C0$="M"THEN PRINT "MVP "; : PRINT STR(C2$,1,1);".";STR(C2$,2,1) 0130 PRINT AT(23,0);"This is Partition";#PART;"-- Terminal";#TERM; 0140 PRINT AT(D0,50);STR(T$,3,2);"/";STR(T$,5,2);"/";STR(T$,1,2) 0150 T$=DATE : ERRORT$=" " 0160 IF T$<>" "THEN PRINT AT(D0,50);STR(T$,3,2);"/";STR(T$,5,2);"/";STR(T$,1,2 ) 0170 PRINT AT(D,0);"Partition number "; : FOR A=1TO P : PRINTUSING "## ",A; : NEXT A : PRINT AT(D1,0);"Terminal number" : PRINT "Terminal status" : PRINT "PSTAT I/O column" 0175 PRINT "Last Error" 0180 B=16 : FOR A=1TO P : PRINT AT(D,B);BOX(5,3); : B=B+3 : NEXT A 0190 REM %^.Loop point 0200 PRINT AT(D1,17); : FOR A=1TO P : SELECT PRINT 005 : P$=$PSTAT(A) 0203 REM .15=Term 16=W/A 29=I/O 0204 K$=STR(P$,15,1) : IF K$=HEX(00)THEN PRINT " "; : ELSE PRINT HEXOF(K$);" "; : PRINT HEX(0A0808);STR(P$,16,1);HEX(0A0808); : K$=STR(P$,29,1) : IF K$=HEX(00)THEN PRINT " "; : ELSE PRINT HEXOF(K$);" "; 0206 IF Z9>1THEN 208 : PRINT HEX(0A080808); : K$=STR(P$,25,1) : IF K$=HEX(00)THEN PRINT " "; : ELSE PRINT HEXOF(K$);" "; : PRINT HEX(0C); 0208 PRINT HEX(0C0C); : NEXT A 0210 T$=TIME : ERRORGOTO 240 0220 IF T1$=T$THEN 240 : T1$=T$ : PRINT AT(D0,30);STR(T$,,2);":";STR(T$,3,2);":";STR(T$,5,2) 0240 IF P0>0THEN GOSUB 300 0250 Z9=Z9+1 : IF Z9<29THEN 260 : Z9=1 : GOTO 120 0260 PRINT AT(D9,0,2); : LIST DT : $BREAK : GOTO 200 0290 REM %.Process Kbd to kbd time : REM .F=-1 '01' detected wait to start sequence : REM .F=0 Inactivity wait for '01'. : REM .F>0 in sequence wait for '01' 0300 P$=$PSTAT(P0) : K$=STR(P$,29,1) : ON F+2GOTO 500,510 0330 F=F+1 : IF K$<>HEX(01)THEN RETURN 0340 T$()=T0$ : CONVERT T$(1)TO H : CONVERT T$(2)TO M : CONVERT T$(3)TO S : T0=(3600*H)+(60*M)+S 0350 T$()=T1$ : CONVERT T$(1)TO H : CONVERT T$(2)TO M : CONVERT T$(3)TO S : T1=(3600*H)+(60*M)+S : T=T1-T0 0360 PRINT AT(5,0,80);".Kbd to Kbd time";STR(S$,,2*P0);"** = ";T;"seconds ";F; "slices" : F=0 0370 IF T<60THEN RETURN 0380 H=INT(T/(3600)) : T=T-(H*3600) : M=INT(T/60) : S=MOD(T,60) 0390 PRINTUSING "or ##:##:##",H,M,S 0400 RETURN 0490 REM %.Where F=-1 0500 IF K$=HEX(01)THEN RETURN : T0$=T$ : F=1 : PRINT AT(5,0,80);".Kbd to Kbd time";STR(S$,,2*P0);"**" : RETURN 0505 REM %.Where F=0 0510 IF K$=HEX(01)THEN F=-1 : RETURN