image of READY prompt

Wang2200.org

Listing of file='TBO.XDAD' on disk='vmedia/toolbox.wvd.zip'

# Sector 786, program filename = 'TBO.XDAD'
0010 REM TBO.XDAD  11/08/89
0020 SELECT PRINT 005(80)
0030 DIM D$(32)4,K1$80,A$(16)16,C$1,T$1,D$3,D2$2,M$70
0035 DIM G$40,E$40,E$(4)4
   : E$()="D10 B10 D11 310"
0040 PRINT HEX(03);"What disks are attached to the system"
0060 D$()="D10"
   : GOSUB 200
   : PRINT
0070 D$()="D20"
   : GOSUB 200
   : PRINT
0080 D$()="D30"
   : GOSUB 200
   : PRINT
0090 PRINT "This is the status of possible disk addressing on this system"
   : PRINT "Key  - '0 to EXIT  '1 to TBO.STAT  - '15 RECALL - other for disk n
     otes";
   : PRINT HEX(0D);
   : KEYIN C$
0100 IF C$=HEX(0F)THEN 40
   : IF C$=HEX(00)THEN 180
   : IF C$=HEX(01)THEN 190
0105 PRINT HEX(03);"---Comments on disks-----";TAB(80)
0110 PRINT "2270    -- Dual or triple   (1231)  maximum sectors, white label
      2 or 3 addr."
0112 PRINT "2260    --   two master and two slave addresses"
0114 PRINT "2280    --   six master and six slave addresses"
0120 PRINT "Winchester                  (3873)  maximum sectors, red label"
0130 PRINT "2275's  -- DSDD max.sectors (1292)  maximum sectors, 5 1/4 inch"
0140 PRINT "2275-30 -- DSDD on D.0 (1292)         Winchester on D.1  and D.2 (
     18900)"
0150 PRINT "2275-60 -- No diskette  -- 4 Winchester surfaces on D.0 thru D.3 (
     64023)"
0160 PRINT "Phoenix -- No diskette  --              surfaces on D.0 thru D.F (
     52763)"
0162 PRINT "DS cabinet -- DSDD on D.0 (1292)        surface on D.0"
   : PRINT "       or  -- DSHD on D.0 (4159)        surface on D.0"
0163 PRINT "   Sw.1    -- Winchester drives         surfaces D-1 thru D-E (40
     bit=0)"
0164 PRINT "   DS-10R  -- Removable 10 MB           surface  D-F"
0165 PRINT "   Sw.2    -- Winchester drives         surfaces D-1 thru D-E (40
     bit=1)"
0170 KEYIN C$
   : ON VAL(C$)+1GOTO 180,190
   : GOTO 10
0180 DEFFN'0
   : LOAD DC T#0,"START"
0190 DEFFN'1
   : LOAD DC T#0,"TBO.STAT"
0200 J=0
   : PRINT BOX(1,79);"  Disk controller ";STR(D$(),2,2);" ";
0210 J=J+1
   : D$=D$(J)
   : IF D$=" "THEN RETURN
0220 K1$=" "
   : GOSUB '200(D$,D$())
   : ON X4GOSUB 280,290,300,310
0225 IF E=48THEN 245
   : IF E=91THEN 245
0228 PRINTUSING " ### ",D$;
0229 C$=" "
   : IF STR(A$(),,1)>HEX(00)THEN C$="'"
   : CONVERT ATO G$,(###)
   : STR(G$,4)=C$
0230 IF K1$="Yes"THEN PRINTUSING 260,G$,B,C;
   : ELSE PRINT K1$
0240 IF K1$="Yes"THEN 210
   : GOTO 210
0245 IF T=4AND J<31THEN 210
   : IF T=3AND J<4THEN 210
   : IF T=2AND J<11THEN 210
   : K1$=K1$&" None"
   : D$()=" "
0248 IF J/2=INT(J/2)THEN PRINT
   : RETURN
0250 % ################################ !
0260 %Idx=#### Cur.End=#####  Max=##### !
0270 REM %.Get Rcv Disk address
0280 K1$=K1$&" disk not in table"
   : RETURN
0290 K1$="Hogged or not configured"
   : PRINT K1$
   : D$()=" "
   : RETURN CLEAR
   : RETURN
0300 K1$="Is unavailable"
   : RETURN CLEAR
0305 PRINT HEX(0D);K1$
   : PRINT
   : D$()=" "
   : RETURN
0310 K1$="disk not in list"
   : RETURN
0320 DEFFN'200(D$,D$())
0330 X4=0
   : MAT SEARCHD$(),=STR(D$,,3)TO X7$STEP 4
   : IF VAL(X7$,2)=0THEN 440
   : SELECT #2<D$>
   : ERRORX=ERR
   : RETURN
0340 $OPEN 430,#2
   : ERRORX4=2
   : $CLOSE#2
   : RETURN
0350 $CLOSE#2
   : Z$=" "
   : HEXPACKZ$FROMSTR(D$,2,1)
   : IF J=1THEN GOSUB 500
0360 $GIO(731002000301122270A040008600,Z$)
   : ERRORX=ERR
   : X4=3
   : K1$="FROM $GIO AT 360"
   : RETURN
0370 IF STR(Z$,8,1)=HEX(00)THEN 380
   : X4=3
   : RETURN
0380 LIMITS T#2,"START",A,B,C,E
   : ERRORE=ERR
   : M$=ERR$(E)
   : K1$="Error "
   : CONVERT ETO STR(K1$,7,2),(##)
   : K1$=K1$&" "&M$
   : RETURN
0390 K1$="Yes"
   : E=0
0400 DATA LOAD BA T#2,(0)A$()
0410 A=VAL(STR(A$(1),2))
   : B=VAL(STR(A$(1),3),2)-1
   : C=VAL(STR(A$(1),5),2)-1
0420 RETURN
0430 X4=2
   : RETURN
0440 X4=4
   : RETURN
0490 DIM G$(15)1
0500 $GIOGETDISKTYPE#2(0200030F12220600070070A04000870B,G$())
0510 T$=G$(11)
   : PRINT "Disk type ";HEXOF(T$);" ...    ";
   : T=POS(HEX(C0D0)=T$)
   : IF T=0THEN 600
   : IF T=2THEN GOSUB 1000
0520 ON TGOSUB 1400,1300,1200,1100
   : PRINT K1$
0525 D$=D$(1)
0530 FOR E=1TO 4
   : STR(E$(E),2,1)=STR(D$,2,1)
   : NEXT E
   : PRINT " ";E$(1);" is the equivalent of ";E$(2);"          ! ";E$(3);" is
     the equivalent of ";E$(4)
0540 RETURN
0600 PRINT "Unknown disk type check connector"
   : D$()=" "
   : RETURN CLEAR
   : RETURN
1000 REM %^.Check for DS cabinet
1010 G$=HEX(30)
   : STR(G$,2,7)=ALL(00)
   : $GIOSTATUSREQUEST#2(0E140F0012E20600070070A0400288D070406A106816400087051
     A00C340,G$)G$;STR(E$,,VAL(STR(G$,5,1)))
1015 T=VAL(E$)-47
1020 G1$=STR(G$,8,1)AND HEX(10)
   : IF G1$=HEX(00)THEN 1030
   : K1$="Disk unavailable"
   : RETURN
1030 IF STR(G$,8,1)<>HEX(00)THEN 1040
   : IF STR(E$,1,1)=HEX(33)THEN 1060
   : IF I=32AND STR(E$,1,2)=HEX(4533)THEN 1050
1040 REM "specified disk is not a DS"
   : RETURN
1050 STR(E$,1,2)=HEX(3345)
1060 RETURN
1100 K1$="DS cabinet"
   : D$()=" "
   : D2$="D"&STR(D$,2,1)
   : E$="0123456789ABCDE"
   : FOR A=1TO 15
   : D$(A)=D2$&STR(E$,A,1)
   : NEXT A
   : ADD(STR(D2$,2,1),04)
   : FOR A=2TO 15
   : D$(A+14)=D2$&STR(E$,A,1)
   : NEXT A
   : RETURN
1200 K1$="2275 type"
   : D$()=" "
   : D2$="D"&STR(D$,2,1)
   : E$="01234"
   : FOR A=1TO 5
   : D$(A)=D2$&STR(E$,A,1)
   : NEXT A
   : RETURN
1300 K1$="Phoenix type"
   : D$()=" "
   : D2$="D"&STR(D$,2,1)
   : E$="012345"
   : FOR A=1TO 6
   : D$(A)=D2$&STR(E$,A,1)
   : NEXT A
   : ADD(STR(D2$,2,1),04)
   : FOR A=1TO 6
   : D$(A+6)=D2$&STR(E$,A,1)
   : NEXT A
   : RETURN
1400 K1$="2270 type"
   : D$()=" "
   : D2$="D"&STR(D$,2,1)
   : D$(1)=D2$&"0"
   : D$(2)=D2$&"1"
   : ADD(STR(D2$,2,1),04)
   : D$(3)=D2$&"0"
   : RETURN