ASMB,L
*     NAM XSERN,7 09570-16560 REV. A 761013 
      NAM XSERN,7 09570-16560 REV. D 790315 
      ENT XSERN 
      EXT REIO,ERRNM,.ENTR
* 
* 
*-------------------------------------------------------- 
* 
*     RELOC.       09570-16560
*     SOURCE       09570-18560
* 
*                  OCTOBER 13 1976  REV. A
* 
*-------------------------------------------------------- 
* 
* 
* 
*          THIS SUBROUTINE PRINTS OUT ERROR MESSAGES FROM THE ERROR 
*     CODES GENERATED BY DEVICE SUBROUTINES.
* 
*          CALL XSERN(LUOP,IERR)
*               WHERE:
*                     LUOP  = LU OF CRT 
*                     IERR  = 4 ELEMENT ERROR ARRAY 
*                             IERR(1) = ERROR CODE
*                             IERR(2)-(4) = DEVICE SUBROUTINE NAME
* 
* 
* 
LUOP  NOP 
IERR  NOP 
XSERN NOP 
      JSB .ENTR 
      DEF LUOP
* 
*  TEST ERROR CODE
* 
      LDA IERR,I
      SSA,RSS 
      JMP XSERN,I   POSITIVE,RETURN 
      ADA .9
      SSA 
      JMP XSERN,I   < -8,RETURN 
* 
*    POINT TO DS NAME 
* 
      LDA IERR
      INA 
      STA NMERR 
* 
*    TEST ERROR CODES 
* 
      LDA IERR,I
      CMA,INA 
      CLB 
      CPA .1        PARAMETER ERROR ? 
      LDB .1          YES 
      SZB           COMMON ERROR ?
      JMP COMER 
* 
*  SEPARATE DTU/HPIB ERRORS 
* 
      LDA IERR
      INA 
      LDB A,I 
      CPB PO        POWER ? 
      JMP HPIB
      CPB RN        RNSET ? 
      JMP HPIB
      CPB CT        COUNTER ? 
      JMP HPIB
      CPB DV        DVM ? 
      JMP HPIB
      CPB SP        SPOUT ? 
      JMP HPIB
      CPB CB        CBUS ?
      JMP HPIB
      INA 
      LDB A,I 
      CPB PG        PSPGM ? 
      JMP HPIB
      CPB IN        PSINF ? 
      JMP PSINF 
* 
*  DTU ERRORS 
* 
      LDA IERR,I
      CMA,INA 
      CPA .2        CONFIG ERRORS ? 
      JMP DTCNF 
      LDB MSLDT 
      ADB A 
      LDB B,I 
      STB MESLN 
      LDB MSGDT 
      ADB A 
      LDB B,I 
      STB MESSG 
      ADB .2
      STB ERRPT 
      JMP OUTMS 
* 
* 
*   COMMON ERRORS 
* 
COMER LDB MSLPA,I 
      STB MESLN 
      LDB MSGPA 
      STB MESSG 
      ADB .2
      STB ERRPT 
      JMP OUTMS 
* 
* 
*  PSINF ERRORS 
* 
PSINF LDB MSLIN,I 
      STB MESLN 
      LDB MSGIN 
      STB MESSG 
      ADB .2
      STB ERRPT 
      JMP OUTMS 
* 
* 
*   DTU CONFIGURATION ERROR 
* 
DTCNF LDA IERR
      ADA .2
      LDA A,I 
      CLB 
      CPA RE        STREF ? 
      LDB .1
      CPA TC        SWTCH ? 
      LDB .2
      CPA LA        RELAY ? 
      LDB .2
      CPA CO        ITCOD ? 
      LDB .2
      CPA SE        SWSET ? 
      LDB .3
      CPA LS        PULSE ? 
      LDB .4
      LDA IERR
      INA 
      LDA A,I 
      CPA FP        FPXXX ? 
      CLB 
      LDA MSLCF 
      ADA B 
      LDA A,I 
      STA MESLN 
      LDA MSGCF 
      ADA B 
      LDA A,I 
      STA MESSG 
      ADA .2
      STA ERRPT 
      JMP OUTMS 
* 
* 
*   HPIB ERRORS 
* 
HPIB  LDA IERR
      ADA .2
      LDA A,I 
      CPA WE
      JMP PWRCF 
* 
      LDA IERR,I
      CMA,INA 
      LDB MSLIB 
      ADB A 
      LDB B,I 
      STB MESLN 
      LDB MSGIB 
      ADB A 
      LDB B,I 
      STB MESSG 
      ADB .2
      STB ERRPT 
      JMP OUTMS 
* 
* 
*  POWER CONFIGURATION ERROR
* 
PWRCF LDA MSLPW,I 
      STA MESLN 
      LDA MSGPW 
      STA MESSG 
      ADA .2
      STA ERRPT 
      JMP OUTMS 
* 
* 
*   OUTPUT MESSAGE
* 
OUTMS JSB ERRNM 
      DEF *+3 
      DEF ERRPT,I 
      DEF NMERR,I 
* 
*   PUT 'X' IN MESSAGE
* 
      LDB ERRPT 
      INB 
      LDA B,I 
      AND B377      SAVE 2ND CHAR 
      IOR BX
      STA B,I 
* 
*  OUTPUT MESSAGE 
* 
      JSB REIO
      DEF *+5 
      DEF WRITE 
      DEF LUOP,I
      DEF MESSG,I 
      DEF MESLN 
* 
      NOP 
      JMP XSERN,I 
* 
* 
* 
* 
.1    DEC 1 
.2    DEC 2 
.3    DEC 3 
.4    DEC 4 
.5    DEC 5 
.9    DEC 9 
* 
ZERO  DEC 0 
* 
B377  OCT 377 
BX    OCT 054000
WRITE OCT 100002
* 
MESSG NOP 
MESLN NOP 
ERRPT NOP 
NMERR NOP 
* 
PO    ASC 1,PO
RN    ASC 1,RN
CT    ASC 1,CT
DV    ASC 1,DV
SP    ASC 1,SP
CB    ASC 1,CB
PG    ASC 1,PG
IN    ASC 1,IN
WE    ASC 1,WE
RE    ASC 1,RE
SE    ASC 1,SE
TC    ASC 1,TC
LA    ASC 1,LA
CO    ASC 1,CO
LS    ASC 1,LS
FP    ASC 1,FP
* 
* 
* 
* 
*  PARAMETER ERROR
* 
MSLPA DEF MSL1
MSGPA DEF MSG1
* 
*  PSINF ERROR
* 
MSLIN DEF MSL7
MSGIN DEF MSG7
* 
*  DTU ERRORS 
* 
MSLDT DEF *-2,I 
      DEF MSL9      DTU POWER OFF 
      DEF MSL12     DTU TIMEOUT 
      DEF MSL14     EXEC CALL REJECTED
      DEF MSL15     DTU DOWN
      DEF MSL17     IMPROPER LU # 
      DEF MSL19     IPINS IMPROPERLY CONFIGURED 
      DEF MSL21     ARRAY IPINS MISSING 
* 
MSGDT DEF *-2 
      DEF MSG9
      DEF MSG12 
      DEF MSG14 
      DEF MSG15 
      DEF MSG17 
      DEF MSG19 
      DEF MSG21 
* 
*  POWER CONFIG ERROR 
* 
MSLPW DEF MSL6
MSGPW DEF MSG6
* 
*  HPIB ERRORS
* 
MSLIB DEF *-1,I 
      DEF MSL11     BAD DATA
      DEF MSL10     HPIB I/O ERROR
      DEF MSL13     HPIB TIMEOUT
      DEF MSL14     EXEC CALL REJECTED
      DEF MSL16     HPIB DOWN 
      DEF MSL18     IMPROPER LU # 
      DEF MSL20     HPIB BUSY 
      DEF ZERO      NO ERROR -9 
* 
MSGIB DEF *-1 
      DEF MSG11 
      DEF MSG10 
      DEF MSG13 
      DEF MSG14 
      DEF MSG16 
      DEF MSG18 
      DEF MSG20 
* 
*  DTU CONFIGURATION ERRORS 
* 
MSLCF DEF *+1,I 
      DEF MSL2      PROBE CARD MESSAGE
      DEF MSL3      PRV CARD MESSAGE
      DEF MSL4      SWITCH MESSAGE
      DEF MSL5      PROG D/C MESSAGE
      DEF MSL8      PRG MESSAGE 
* 
MSGCF DEF *+1 
      DEF MSG2
      DEF MSG3
      DEF MSG4
      DEF MSG5
      DEF MSG8
* 
* 
* 
*     ERROR MESSAGES
* 
MSG1  ASC 15,            , PARAMETER ERROR
MSG2  ASC 24,            , NO PROBE CARD IN UPPER DTU SLOT C
MSG3  ASC 24,            , NO PRV CARD FOR SELECTED REF SET 
MSG4  ASC 25,            , NO SWITCH CARD IN SELECTED DTU SLOT
MSG5  ASC 26,            , NO PROG. D/C CARD IN SELECTED DTU SLOT 
MSG6  ASC 22,            , LU OF DTU OR PS PROG. MISSING
MSG7  ASC 26,            , PSCNF NOT CALLED BEFORE CALLING POWER
* 790315 MSG8  ASC 23,            , NO PRG CARD IN UPPER DTU SLOT C 
MSG8  ASC 23,            , NO PRG CARD IN UPPER DTU SLOT D
MSG9  ASC 14,            , DTU POWER OFF
MSG10 ASC 14,            , HPIB I/O ERROR 
MSG11 ASC 21,            , BAD DATA RECEIVED FROM HPIB
MSG12 ASC 13,            , DTU TIMEOUT
MSG13 ASC 13,            , HPIB TIMEOUT 
MSG14 ASC 16,            , EXEC CALL REJECTED 
MSG15 ASC 11,            , DTU DOWN 
MSG16 ASC 12,            , HPIB DOWN
MSG17 ASC 25,            , CONFIG. ERROR, LU GIVEN NOT FOR DTU
MSG18 ASC 25,            , CONFIG. ERROR, LU GIVEN NOT FOR HPIB 
MSG19 ASC 25,            , ARRAY 'IPINS' IMPROPERLY CONFIGURED
MSG20 ASC 12,            , HPIB BUSY
MSG21 ASC 18,            , ARRAY 'IPINS' MISSING
* 
MSL1  DEC -30 
MSL2  DEC -48 
MSL3  DEC -48 
MSL4  DEC -50 
MSL5  DEC -52 
MSL6  DEC -44 
MSL7  DEC -52 
MSL8  DEC -46 
MSL9  DEC -28 
MSL10 DEC -28 
MSL11 DEC -42 
MSL12 DEC -26 
MSL13 DEC -26 
MSL14 DEC -32 
MSL15 DEC -22 
MSL16 DEC -24 
MSL17 DEC -50 
MSL18 DEC -50 
MSL19 DEC -50 
MSL20 DEC -24 
MSL21 DEC -36 
* 
A     EQU 0 
B     EQU 1 
      END 
                                                                                                                                                                                            