; Universal Interface diagnostic (D435A). ; Parameter 1 = path to diagnostic tape. ; ; Configuration locations (note that the locations in the manual are incorrect): ; ; Location Default Value Contents ; ------------- ------------- -------------------------------------- ; DB+0 030414 000100 Switch Register setting ; DB+1 030415 177776 Section Select Register setting ; DB+2 030416 000000 (not used) ; DB+3 030417 000000 Interface DRT number ; DB+4 030420 000003 Clock DRT number ; DB+5 030421 000000 (not used) ; DB+6 030422 000000 Interrupt mask setting ; DB+7 030423 000000 Positive or negative true logic (0/-1) echo echo echo --------------------------- echo D435A - Universal Interface echo --------------------------- echo echo Loading the stand-alone loader. ; Cold load the I/O diagnostics tape. attach -r MS0 %130000-11017_Rev-2640_IO.tape boot MS0 ; Load the tape file containing the diagnostic. ; ; The I/O tape contains these files: ; ; DIAGNOSTIC FILE REV %FILE ; ------------------- ------ ----- ---- ; SLEUTH PD411A 01.05 (01) ; CART DISC-7905A PD419A 01.04 (02) ; MEMORY PATTERN PD421A 01.00 (03) ; MULTIPLEXOR CHAN PD422A 01.02 (04) ; DISC FILE-2888A PD423A 01.00 (05) ; CART DISC-7900A PD424A 01.00 (06) ; SYSTEM CLOCK II/III PD425A 01.00 (07) ; SYS CLK/FLI III-LC PD426A 00.00 (10) ; TERMINAL DATA PD427A 01.01 (11) ; FIXED HEAD DISC PD428A 01.00 (12) ; SELECTOR CHAN PD429A 01.01 (13) ; FLT.CORR.MEM SER-II PD430A 01.01 (14) ; FLT.CORR.MEM SER-III PD430B 00.00 (15) ; EXTEND INSTRUC SET PD431A 01.00 (16) ; HSI DIAG. PD432A 01.00 (17) ; MAGNETIC TAPE PD433A 01.04 (20) ; SSLC INTERFACE PD434A 01.03 (21) ; ASLC INTERFACE PD434B 01.04 (22) ; UI DIAG PD435A 01.01 (23) ; TERMINAL CONTROL PD438A 01.00 (24) ; CALCOMP PLOTTER PD439A 01.01 (25) ; COBOLII A F/W DIAG PD441A 00.00 (26) ; COBOLII B F/W DIAG PD442A 00.00 (27) ; STAND ALONE DISC SADUTIL 01.00 (30) deposit SWCH 23 ; Set the CLK into real-time mode for the timing tests. ; ; Set the UI into diagnostic mode to simulate attaching the 30049C ; Diagnostic Hardware Assembly and set the interrupt mask to test masking. set CLK REALTIME set LP DIAGNOSTIC,INTMASK=8 ; Load and start the diagnostic. ; ; The diagnostic loads from tape and then waits for a . echo echo Loading and executing the diagnostic. reply "\r" delay 2 seconds ; Respond to "Q110 DEVICE NUMBER? " go until "? " ; reply "14\r" ; Respond to "Q112 INTERRUPT MASK? " go until "? " ; reply "8\r" ; Respond to "Q113 NEGATIVE TRUE? " go until "? " ; reply "NO\r" ; Respond to "Q114 CHANGE INTERNAL SWITCH REGISTER? ? " go until "? " ; reply "YES\r" go ; Respond to "P114 INTERNAL SWITCH REGISTER" and HALT 6 assert CIR=030366 ; Set the Switch Register options: ; ; + bit 0 = select the external switch register ; bit 1 = modify the Section Select Register ; bit 2 = not used ; bit 3 = not used ; bit 4 = not used ; bit 5 = not used ; bit 6 = not used ; bit 7 = output to the line printer (if configured) ; bit 8 = not used ; + bit 9 = suppress non-error messages ; bit 10 = suppress error messages ; bit 11 = loop on the last step ; + bit 12 = halt on error ; bit 13 = halt at the end of each step ; bit 14 = halt at the end of each section ; + bit 15 = halt at the end of each diagnostic pass ; ; NOTE: If bit 9 is not set, this diagnostic outputs 11,000 spurious lines. ; Each test performed is reported as an information line. For example: ; ; D007 CCL AFTER WIO IN STEP 270 ; D002 CCL AFTER TIO IN STEP 013 IN 270 ; D013 TIO STATUS: EXPECT 1 100 000 000 000 000 ; ACTUAL 1 100 000 000 000 000 IN STEP 270 ; ; None of these are useful, so they are suppressed by setting bit 9. ; ; NOTE: Specifying bit 1, "modify the Section Select Register," does not seem to work. ; It also seems to be redundant, given the request for a section list that ; follows. deposit SWCH 100111 echo echo Configuring the switch register. echo ; Respond to "Q115 SECTION LIST? " go until "? " ; reply "\r" ; Respond to "Q116 READER-PUNCH INTERFACE ? " go until "? " ; reply "NO\r" go ; Respond to "P120 CONT6 ON, REST OFF" and HALT 7 echo echo [Verifying control bits.] echo assert CIR=030367 assert LP CNLED=10000 go ; Respond to "P120 CONT7 ON, REST OFF" and HALT 7 echo assert CIR=030367 assert LP CNLED=01000 go ; Respond to "P120 CONT8 ON, REST OFF" and HALT 7 echo assert CIR=030367 assert LP CNLED=00100 go ; Respond to "P120 CONT9 ON, REST OFF" and HALT 7 echo assert CIR=030367 assert LP CNLED=00010 go ; Respond to "P120 CONT10 ON, REST OFF" and HALT 7 echo assert CIR=030367 assert LP CNLED=00001 go ; Respond to "P121 JUMPER J2W1 LOW, REST HIGH" and HALT 10 echo assert CIR=030370 assert LP J2WX=0000000001 go ; Respond to "P121 JUMPER J2W2 LOW, REST HIGH" and HALT 10 echo assert CIR=030370 assert LP J2WX=0000000010 go ; Respond to "P121 JUMPER J2W3 LOW, REST HIGH" and HALT 10 echo assert CIR=030370 assert LP J2WX=0000000100 go ; Respond to "P121 JUMPER J2W4 LOW, REST HIGH" and HALT 10 echo assert CIR=030370 assert LP J2WX=0000001000 go ; Respond to "P121 JUMPER J2W5 LOW, REST HIGH" and HALT 10 echo assert CIR=030370 assert LP J2WX=0000010000 go ; Respond to "P121 JUMPER J2W6 LOW, REST HIGH" and HALT 10 echo assert CIR=030370 assert LP J2WX=0000100000 go ; Respond to "P121 JUMPER J2W7 LOW, REST HIGH" and HALT 10 echo assert CIR=030370 assert LP J2WX=0001000000 go ; Respond to "P121 JUMPER J2W8 LOW, REST HIGH" and HALT 10 echo assert CIR=030370 assert LP J2WX=0010000000 go ; Respond to "P121 JUMPER J2W9 LOW, REST HIGH" and HALT 10 echo assert CIR=030370 assert LP J2WX=0100000000 go ; Respond to "P121 JUMPER J2W10 LOW, REST HIGH" and HALT 10 echo assert CIR=030370 assert LP J2WX=1000000000 go ; Respond to "P122 DEVICE END ASSERTED" and HALT 11 echo assert CIR=030371 assert LP DENDIN=1 go ; Respond to "P124 BIT 0 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=100000 go ; Respond to "P124 BIT 1 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=040000 go ; Respond to "P124 BIT 2 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=020000 go ; Respond to "P124 BIT 3 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=010000 go ; Respond to "P124 BIT 4 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=004000 go ; Respond to "P124 BIT 5 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=002000 go ; Respond to "P124 BIT 6 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=001000 go ; Respond to "P124 BIT 7 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=000400 go ; Respond to "P124 BIT 8 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=000200 go ; Respond to "P124 BIT 9 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=000100 go ; Respond to "P124 BIT 10 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=000040 go ; Respond to "P124 BIT 11 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=000020 go ; Respond to "P124 BIT 12 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=000010 go ; Respond to "P124 BIT 13 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=000004 go ; Respond to "P124 BIT 14 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=000002 go ; Respond to "P124 BIT 15 HIGH, REST LOW" and HALT 13 echo assert CIR=030373 assert LP DATOUT=000001 go ; End the of diagnostic. ; ; Verify HALT 15 for a successful pass. assert CIR=030375 ; Restore the hardware configuration. set CLK CALTIME set LP PRINTER