image of READY prompt

Wang2200.org

Listing of file='I09A010A' on disk='vmedia/multidisk_diagnostic.wvd.zip'

# Sector 918, program filename = 'I09A010A'
0010 REM START-02      10/04/78
0015 REM  MODIFIED   1/7/80     J. BROOKS
0016 COM J$14,J1$12,J2$8,J3$8,J4$8,J5$8,J6$8,J7$8,J8$9
0020 COM B$10,A$1,R$35,E$1,F$4,Y$(5)64,G$1,B5$10,A9$1,A6$35,A3$35,A4$,A5$,A7$,
     A1,A2$,A2
   : A1=0
   : A2=0
   : GOTO 330
0030 DEFFN'201
   : Y$(1)=HEX(010D0A0A0A0A0A0A0A0A2020202020202020202020202020202020544150452
     0535441545553205441424C450D0A2020202020202020202020202020002828)
0040 Y$(2)=HEX(58203D20434F4E444954494F4E2054525545292920200D0A0A5245414459202
     0202020202020202020202020202020202020202020202020202020202020424F)
0050 Y$(3)=HEX(54202020202020202020200D0A575249544520454E41424C452020202020202
     0202020202020202020202020202020202020454F5420202020202020202020)
0060 Y$(4)=HEX(0D0A54415045204552524F52202020202020202020202020202020202020202
     020202020202020454F4620202020202020202020)
0070 Y$(5)=HEX(0D0A425546464552204F564552464C4F5720202020202020202020202020202
     0202020202020204259544520434F554E54202020)
0080 E$=A$
   : A=0
   : AND (E$,80)
   : IF E$<>HEX(80)THEN 100
   : P=VAL(STR(B$,10,1))
   : L=256*VAL(STR(B$,9,1))
   : F=Z-(L+P)
   : IF F=0THEN 90
   : A=1
   : STR(Y$(5),56,1)="*"
0090 CONVERT ZTO F$,(####)
   : STR(Y$(5),52,4)=F$
0100 E$=A$
   : AND (E$,40)
   : IF E$<>HEX(40)THEN 130
   : E$=STR(B$,8,1)
   : AND (E$,01)
   : IF E$<>HEX(01)THEN 110
   : E$="X"
   : A=1
   : STR(Y$(5),21,1)="*"
   : GOTO 120
0110 E$="0"
0120 STR(Y$(5),20,1)=E$
0130 E$=A$
   : AND (E$,20)
   : IF E$<>HEX(20)THEN 160
   : E$=STR(B$,7,1)
   : AND (E$,80)
   : IF E$<>HEX(80)THEN 140
   : E$="X"
   : A=1
   : STR(Y$(4),21,1)="*"
   : GOTO 150
0140 E$="0"
0150 STR(Y$(4),20,1)=E$
0160 E$=A$
   : AND (E$,10)
   : IF E$<>HEX(10)THEN 190
   : E$=STR(B$,7,1)
   : AND (E$,20)
   : IF E$<>HEX(20)THEN 170
   : E$="X"
   : GOTO 180
0170 E$="0"
0180 STR(Y$(3),11,1)=E$
0190 E$=STR(B$,7,1)
   : AND (E$,10)
   : IF E$=HEX(10)THEN 200
   : E$="X"
   : GOTO 210
0200 E$="0"
   : A=1
   : STR(Y$(3),32,1)="*"
0210 STR(Y$(3),31,1)=E$
   : E$=A$
   : AND (E$,04)
   : IF E$<>HEX(04)THEN 240
   : E$=STR(B$,7,1)
   : AND (E$,08)
   : IF E$<>HEX(08)THEN 220
   : E$="X"
   : A=1
   : STR(Y$(3),62,1)="*"
   : GOTO 230
0220 E$="0"
0230 STR(Y$(3),63,1)=E$
0240 E$=A$
   : AND (E$,02)
   : IF E$<>HEX(02)THEN 270
   : E$=STR(B$,7,1)
   : AND (E$,04)
   : IF E$<>HEX(04)THEN 250
   : E$="X"
   : GOTO 260
0250 E$="0"
0260 STR(Y$(4),52,1)=E$
0270 E$=STR(B$,7,1)
   : AND (E$,02)
   : IF E$=HEX(02)THEN 280
   : E$="X"
   : GOTO 290
0280 E$="0"
   : A=1
0290 STR(Y$(2),43,1)=E$
   : $GIO/005(A000,B5$)Y$()
   : IF A=1THEN 300
   : RETURN
0300 PRINT HEX(010D0A0A0A0A0A0A0A0A0A0A);TAB(23);"*=ERROR=*";HEX(0A0A0A0A)
   : IF A7$="N"THEN 305
   : GOSUB '255("* = ERROR IN STATUS")
   : SELECT PRINT 215(132)
   : PRINT STR(Y$(1),11,53);Y$(2);Y$(3);Y$(4);Y$(5)
   : SELECT PRINT 005(64)
0305 IF G$<>"Y"THEN 310
   : STOP "HALTED ON ERROR"
0310 RETURN
0320 DEFFN'202(R$)
   : PRINT HEX(010D0A0A);TAB(24);"*";TAB(44-INT(LEN(R$)/2));R$;TAB(62);"*"
   : RETURN
0330 SELECT PRINT 005(64)
   : SELECT #127B
   : PRINT HEX(03)
   : PRINT "2209A TAPE DRIVE DIAGNOSTIC - SYSTEM VERSION";HEX(0A0D)
   : GOSUB '100
   :             INPUT "HALT ON ERROR ( Y OR N)",G$
   : IF G$="N"THEN 401
   : IF G$<>"Y"THEN 330
   : GOTO 401
0400 A2=A2+1
   : GOTO 405
0401 INPUT "PRINT ERRORS (Y OR N)",A7$
   : IF A7$="N"THEN 405
   : IF A7$<>"Y"THEN 401
0402 INPUT "TYPE IN YOUR NAME PLEASE",A6$
   : INPUT "TODAY'S DATE (MM/DD/YY)",A5$
   : INPUT "WHAT TIME IS IT (HH:MM)",A4$
   : INPUT "SERIAL # ",A2$
0405 A9$="Y"
   : LOAD DC T"T09A010A"2000
0410 LOAD DC T"T09A020A"2000
0420 LOAD DC T"T09A030A"2000
0430 DEFFN'200(R$)
   : PRINT HEX(03)
   : PRINT TAB(24);"* * * 2209A TAPE DRIVE DIAGNOSTIC * * *"
   : PRINT TAB(24);"*";TAB(44-INT(LEN(R$)/2));R$;TAB(62);"*"
   : PRINT TAB(24);"*                                     *"
0440 PRINT TAB(24);"*           TEST IN PROGRESS          *"
   : PRINT TAB(24);"* * * * * * * * * * * * * * * * * * * *"
   : RETURN
0450 DEFFN'255(A3$)
   : IF A7$="N"THEN 470
   : SELECT PRINT 215(132)
   : IF A1=1THEN 460
   : PRINT "OPERATOR = ";A6$,"DATE = ";A5$;"  ","START TIME = ";A4$,"SERIAL #
     = ";A2$;HEX(0D0A);"2209A TAPE DRIVE DIAGNOSTIC"
   : A1=1
0460 PRINT A3$
   : SELECT PRINT 005(64)
0470 RETURN
0480 DEFFN'0
   : PRINT HEX(0301);"TOTAL # OF PASSES = ";A2
   : RETURN
0500 DEFFN '100
   : PRINT HEX(0A0D);"1. 07A","2. 07B","3. 07C"
   : PRINT "4. 07D","5. 07E","6. 07F"
   : PRINT HEX(0C0C0C);
   : INPUT "SELECT TAPE CONTROLLER ADDRESS ",A
   : ON A GOTO 510,520,530,540,550,560
0510 SELECT #107A
   : GOTO 570
0520 SELECT #107B
   : GOTO 570
0530 SELECT #107C
   : GOTO 570
0540 SELECT #107D
   : GOTO 570
0550 SELECT #107E
   : GOTO 570
0560 SELECT #107F
   : GOTO 570
0570 PRINT HEX(0A0A0A0A0A);"1. 2200T",,"2. VP/MVP"
   : PRINT HEX(0C0C);
   : INPUT " SELECT CPU TYPE ",A
0580 IF A=1 THEN 600
   : IF A=2 THEN 650
   : PRINT HEX(0C0C0C0C0C);
   : GOTO 570
0600 J$=HEX(4429A20044018607)
   : J1$=HEX(44008607442AC220)
   : J2$=HEX(44468607)
   : J3$=HEX(44048607)
   : J4$=HEX(44088607)
   : J5$=HEX(44078607)
   : J6$=HEX(44038607)
   : J7$=HEX(44058607)
   : J8$=HEX(44028607)
   : PRINT
   : RETURN
0650 J$=HEX(44291300A000440110208607)
   : J1$=HEX(440010208607442AC220)
   : J2$=HEX(444610208607)
   : J3$=HEX(440410208607)
   : J4$=HEX(440810208607)
   : J5$=HEX(440710208607)
   : J6$=HEX(440310208607)
   : J7$=HEX(440510208607)
   : J8$=HEX(440210208607)
   : PRINT
   : RETURN