100  REM 12930A UNIVERSAL INTERFACE CARD VERIFICATION TEST
110  REM
120  REM      SOURCE TAPE:    09601-18008 
130  REM      ERS:          A-09601-18008-1 
140  REM      LISTING:      A-09601-18008-2 
150  REM
195  PRINT  
200  PRINT "12930A UNIVERSAL INTERFACE CARD VERIFICATION TEST"
205  PRINT  
210  PRINT "TEST FUNCTIONS ARE:"
220  PRINT "   1)  TEST DATA CHANNEL" 
230  PRINT "   2)  TEST COMMAND/STATUS CHANNEL" 
240  PRINT "       (IF ENABLED AND CONFIGURED)" 
250  PRINT "   3)  TERMINATE TEST"
260  PRINT  
270  PRINT "MOUNT TEST CONNECTOR BEFORE BEGINNING"
320  PRINT  
325  PRINT "FUNCTION";
330  INPUT F
335  PRINT  
340  IF F=1 THEN 1000 
350  IF F=2 THEN 2000 
360  IF F#3 THEN 320
390  STOP 
1000  PRINT "DATA CHANNEL TEST" 
1005  GOSUB 9000
1010  PRINT "**CHECKING SINGLE-BIT CALLS**" 
1020  FOR I=0 TO 15 
1030  GPRSB(U,2,I,1)
1040  GPRSB(U,0,I,S)
1050  IF S=1 THEN 1070
1060  PRINT "BIT ";I;" FAILED S/B FALSE, IS TRUE" 
1070  GPRSB(U,2,I,0)
1080  GPRSB(U,0,I,S)
1090  IF S=0 THEN 1110
1100  PRINT "BIT ";I;" FAILED S/B TRUE,  IS FALSE"
1110  NEXT I
1200  PRINT "**CHECKING BCD OUTPUT/INPUT USING GPRMB**" 
1205  PRINT "DECIMAL VALUES (0-9999) , USE 0 TO STOP" 
1210  PRINT "VALUE OUT";
1220  INPUT V1
1230  GPRMB(U,3,V1) 
1240  GPRMB(U,2,V2) 
1250  PRINT "VALUE IN=";V2
1260  IF V1=0 THEN 1300 
1270  GOTO 1210 
1300  PRINT "**CHECKING BCD OUTPUT/INPUT USING GPRIO**" 
1305  PRINT "DECIMAL VALUES (0-9999) , USE 0 TO STOP" 
1310  PRINT "VALUE OUT";
1320  INPUT V1
1330  GPRIO(U,3,V1,V2)
1340  PRINT "VALUE IN=";V2
1350  IF V1=0 THEN 1400 
1360  GOTO 1310 
1390  LET K=1 
1400  PRINT "**CHECKING WORD OUT/IN USING GPRMB**"
1410  FOR I=0 TO 15 
1420  LET K=2^I 
1430  GPRMB(U,1,K)
1440  GPRMB(U,0,L)
1450  IF K=L THEN 1470
1460  PRINT "ERROR, VALUE OUT = ";OCT(K);" VALUE IN= ";OCT(L);" OCTAL"
1470  NEXT I
1500  PRINT "**CHECKING WORD OUT/IN USING GPRIO**"
1510  FOR I=0 TO 15 
1520  LET K=2^I 
1530  GPRIO(U,0,K,L)
1550  IF K=L THEN 1570
1560  PRINT "ERROR, VALUE OUT = ";OCT(K);" VALUE IN= ";OCT(L);" OCTAL"
1570  NEXT I
1600  PRINT "**END DATA CHANNEL TEST**" 
1610  GOTO 320
2000  PRINT "COMMAND/STATUS CHANNEL TEST" 
2005  GOSUB 9000
2010  GPRSB(U,2,0,0)
2020  GPRMB(U,0,I)
2030  ISETC("200",K)
2040  IF I=K THEN 2100
2050  PRINT "'CLEARED' CONDITION S/B ";OCT(K);" IS ";OCT(I);" OCTAL"
2055  PRINT "(JUMPERS PLACED CORRECTLY??)"
2056  PRINT "(IS THIS THE RIGHT UNIT # FOR A 12930 C/S CHANNEL?)" 
2100  PRINT "**CHECK BITS ON C/S CHANNEL" 
2110  ISETC("2202",K) 
2120  GPRSB(U,2,10,1) 
2130  GOSUB 8000
2140  ISETC("4204",K) 
2150  GPRSB(U,2,11,1) 
2160  GOSUB 8000
2170  ISETC("10210",K)
2180  GPRSB(U,2,12,1) 
2190  GOSUB 8000
2200  ISETC("20220",K)
2210  GPRSB(U,2,13,1) 
2220  GOSUB 8000
2230  ISETC("40240",K)
2240  GPRSB(U,2,14,1) 
2250  GOSUB 8000
2260  ISETC("100300",K) 
2270  GPRSB(U,2,15,1) 
2280  GOSUB 8000
2290  PRINT "**END C/S CHANNEL TEST**"
2300  GOTO 320
8000  GPRMB(U,0,I)
8010  IF K=I THEN 8050
8020  PRINT "C/S ERROR S/B ";K;" IS ";I;" OCTAL"
8050  RETURN  
9000  PRINT 
9005  PRINT "UNIT NUMBER";
9010  INPUT U 
9020  RETURN  
                                                                                                                                                