ASMB,R,B,L,C
      NAM DVR73,0,0 
      ENT I.73,C.73 
      ENT P73D1,P73D2 
      ENT P73C1,P73C2,P73C3,P73C4 
      EXT $TIME,$PCOM 
      SPC 1 
      HED I.73 - ASYNC MUX PHYSICAL DVR INITIATOR.
* 
*  I.73 IS THE DRIVER INITIATOR MODULE OF THE 12920A
*  ASYNC MUX DRIVER 
* 
* 
A     EQU 0 
B     EQU 1 
      SPC 2 
I.73  EQU *         DRIVER INITIATOR'S ENTRY POINT. 
      NOP 
      CLF 0 
      STA SAVSC     SAVE SELECT CODE. 
      LDA EQT3,I    STRIP OUT 
      AND UNIM1     4 BIT UNIT
      ALF           # 
      STA UNIT
      LDA EQT4,I
      AND LHALF     I/O STATUS = GOOD INITIALLY.
      STA EQT4,I
      LDB EQT1      YES. SET UP EQT EXTENTION PNTRS.
      JSB SETP
      JSB CONFG     CONFIGURE P73,S I/O INSTRUCTIONS. 
      LDA EQT9,I    GET 
      AND B77        REQUEST CODE.
      STA B 
      ADB EQT21 
      LDB B,I 
      STB LOGR      = LOGICAL DRIVER'S ENTRY ADDR.
      LDB EQT17,I     HAS THIS  
      SZB,RSS           DEVICE BEEN INITIALIZED?
      JMP ICONX       NO. CHK FOR INVALID REQ.
      JSB SEQAD     ENTER EQT ADDR IN INTERNAL EQT TBL. 
      LDA EQT9,I
      AND B77       GET REQ. CODE.
      CPA B3          YES. CONTROL REQ? 
      JMP ICONP     YES.
      LDA EQT1
      STA 300B      LOC. 300B=CURRENT EQT ADDR
      CLA           LINE STATUS = GOOD. 
      CCB           INITIATE I/O REQ. 
      JSB LOGR,I    CALL LOGICAL DRIVER 
      JMP INIT2 
I73CP EQU *         CONTINUATION RETURN.
      STA DADIR 
      JSB SRTIM     INITIATE TIMING REQ.
      LDA DADIR 
      RAL,SLA       START READ DIRECTIVE ?
      JMP SREAD     YES.
      RAL,SLA       START WRITE DIRECTIVE ? 
      JMP SWRIT     YES.
REFEN EQU *          NO.  ASSUME NOP DIRECTIVE. 
      CLA           I/O REQ. STARTED. 
      STF 0          TURN ON INT. SYSTEM. 
      JMP I.73,I     RETURN.
      SPC 2 
* 
*     INITIATE A CONTROL REQUEST
* 
      SPC 1 
ICONP EQU * 
      LDA EQT9,I
      AND FCODM     FCODM=FUNCTION CODE MASK=17700B 
      SZA,RSS       CLEAR REQUEST ? 
      JMP CLEAR     YES.
      ALF,ALF       NO. 
      RAL,RAL 
      CPA D1        INITIALIZE REQ? 
      JMP INREQ     YES.
      LDB EQT17,I   NO. DEVICE PREVIOUSLY 
      SZB           INITIALIZED ? 
      JMP CLR       YES.
ICONV LDA EQT4,I    NO. 
      AND LHALF     KEEP LH. CLEAR STATUS 
      IOR D1
      STA EQT4,I    SET STATUS = INVALID
      JMP INIT2     RETURN. 
      SPC 2 
* 
*     HANG-UP MODEM AND SEVER LOGICAL DRIVER LINK!
* 
      SPC 1 
CLEAR EQU * 
      LDA SCDBS 
      JSB COUT      LOWER CD (DATA SET READY).
      LDB EQT19,I 
      SSB,RSS       FULL/DUPLEX DEVICE ?
      JSB COUT2     NO. INHIBIT INTERRUPTS ON 2ND CARD. 
      CLB 
      STB EQT17,I   SEVER LOGICAL DRIVER LINK.
      JMP INIT2     COMPLETE THIS REQUEST IMMEDIATELY.
      SPC 2 
ICONX EQU * 
      LDA EQT9,I
      AND B3
      CPA B3        CONTROL REQ ? 
      RSS              YES. 
      JMP ICONV        NO. INVALID. 
      LDA EQT9,I
      AND FCODM 
      CPA B100      INITIALIZE CONTROL REQ ?
      JMP INREQ     YES.
      SZA              CLEAR REQ? 
      JMP ICONV        NO. INVALID. 
      JSB CLALL        YES. CALL CLEAR PROCESSOR. 
      JMP INIT2        EXIT.
      SPC 2 
      SPC 1 
      SPC 1 
*   INITIALIZE REQUEST - MUST BUILD TABLE UNEQT. UNEQT WILL BE USED 
*   TO FIND THE CORRECT EQT WHEN P.73 FIELDS AN INTERRUPT.
      SPC 1 
INREQ EQU * 
      JSB SEQAD     ENTER EQT ADDR IN INTERNAL
      LDA EQT11,I     EQT TABLE - UNEQT.
      STA EQT17,I   SET POINTER TO EQT EXTENTION. 
      JSB SETP
      LDA EQT9,I    CALCULATE LOGICAL 
      AND B3          DRIVER'S ENTRY ADDRESS. 
      ADA EQT21 
      LDA A,I 
      STA LOGR
      JMP CLR       CONTINUE PROCESSING 
      SPC 2 
* 
      SPC 1 
BADLN EQU * 
      LDA BIT14     LINE ERROR. 
      JMP I73CP-2    TELL LOGICAL DVR.
      SPC 1 
      SPC 1 
CLR   EQU * 
      LDA EQT3,I    MASK 4 BIT
      AND UNIM1     UNIT #
      ALF 
      STA UNIT
      LDB EQT1
      STB 300B      =CURRENT EQT ADDR.
      CCB           INITIALIZE CALL 
      JSB LOGR,I    CALL LOGICAL DVR
      JMP INIT2     COMPLETION RETURN.
      NOP           CONTROL CONTINUATION RETURN.
      STA DADIR     SAVE LOGR DIRECTIVE 
      JSB SRTIM 
      LDA DADIR     CHECK LOGICAL DVR. DIRECTIVES.
      RAL,SLA       START READ DIREC? 
      JMP SREAD     YES.
      SSA           NO. START WRITE DIRECTIVE?
      JMP SWRIT     YES.
      LDA PQT9,I
      AND FCODM 
      ALF,ALF 
      RAL,RAL       RT. JUSTIFY FUNC. CODE. 
      STA B         SAVE IN B-REG.
      CPB D1        INITIALIZE REQ? 
      JMP INIT      YES.
      CPB D2        LINE OPEN REQ?
      JMP LOPEN     YES.
      CPB D3        LINE CLOSE REQ? 
      JMP LCLOS     YES.
      CPB D4        SET ECHO REQ? 
      JMP SECHO     YES.
      CPB D5        SET TERMINAL SPEED? 
      JMP SPEED     YES.
      JMP ICONV     INVALID REQ.
      SPC 1 
*   PROCESS INITIALIZE REQ. AFTER RETURNING FROM LOGR 
      SPC 1 
INIT  EQU * 
      JSB CF920     CONFIGURE CONTROL WORDS FOR THE 
*                                   12920A BOARD & STORE IN EQT34&35
      LDA EQT3,I
      ALF,RAL 
      LDB INAUX 
      SSA           IS THIS DEVICE ON MUX # 2 
      INB           YES. INCREMENT POINTER. 
      ISZ B,I       HAS AUX. CHANS BEEN INITIALIZED ? 
      JMP INIT2     YES. COMPLETE THIS REQ? 
      LDB AUXSP     AUX CHNL SPEED POINTER. 
      STB AUXSA 
      LDA =B040000
      STA UNIT      = UNT # 16 (1ST AUX CHNL) 
      LDA M5
      STA SAVEC     - # OF AUX CHNLS. 
UNIT1 EQU * 
      LDA AUXSA,I 
      JSB OUT       CONFIGURE CHNL. 
      LDB =B002000
      ADB UNIT      UNIT# = UNIT# + 1 
      STB UNIT
      ISZ AUXSA     BUMP AUX CHNLS SPEED PARM ADDR. 
      ISZ SAVEC     DONE ?
      JMP UNIT1     NO
INIT2 EQU * 
      JSB CEQAD     CLEAR EQT ADDR IN INTERNAL EQT TBL. 
      LDA D4        IMMEDIATE COMPLETION
      JMP REFEN+1   RESTORE FENSE & ALLOW INTERRUPTS. 
      SPC 1 
*   PROCESS LINE CLOSE REQ. AFTER RETURNING FROM LOGR 
*   PROCESS CLEAR REQ. WITHOUT CALLING LOGICAL DVR. 
      SPC 1 
LCLOS EQU * 
      LDA SCDBS     DISCONNECT. 
      JSB COUT
      LDA EQT34,I 
      AND CMB13     COMPLEMENT MASK FOR ENABLE BIT. 
      STA EQT34,I 
      JSB OUT       DISABLE INTERRUPTS FROM THIS CHL
      LDA EQT35,I 
      AND CMB13 
      STA EQT35,I 
      JSB OUT       DISABLE INTERRUPTS
      LDA EQT36,I 
      AND =B17700 
      STA EQT36,I    LINE STATUS = 0; DOWN. 
      LDB M5SEC     DELAY 5 SECONDS FOR MODEM HANGUP, 
      JSB PTIMR     THEN COMPLETE LINE CLOSE REQ. 
      JMP REFEN     
      SPC 1 
*     PROCESS SET ECHO REQ. AFTER RETURNING FROM LOGR 
      SPC 1 
SECHO EQU * 
      LDB EQT10,I 
      LDA EQT34,I 
      SZB           DISABLE ECHO ?
      JMP *+3       NO. ENABLE ECHO 
      AND CMB12     YES. ECHO BIT COMPLEMENT MASK.
      RSS           SKIP. 
      IOR BIT12     SET ECHO BIT. 
      STA EQT34,I   UPDATE RECEIVE PARAMETERS.
      JMP INIT2     INTERRUPTS & RETURN.
      SPC 1 
*     PROCESS TERMINAL SPEED AFTER RETURNING FROM LOGR
      SPC 1 
SPEED EQU * 
      LDA EQT10,I   GET CODED SPEED 
      STA EQT21,I   STORE CODED I/O SPEED(INPUT/OUT)
      AND RHALF 
      ADA SPTBP     INDEX INTO SPEED TBL
      LDA A,I       GET MUX SPEED.
      AND RHALF 
      STA B 
      LDA EQT35,I   UPDATE
      AND LHALF       SEND SPEED. 
      IOR B             PARAMETER.
      STA EQT35,I 
      LDA EQT21,I 
      AND LHALF 
      ALF,ALF 
      ADA SPTBP 
      LDA A,I 
      AND RHALF 
      STA B 
      LDA EQT34,I   UPDATE
      AND LHALF       RECEIVE SPEED.
      IOR B             PARAMETER.
      STA EQT34,I 
      JSB OUT       OUTPUT TO MUX CHANNEL.
      LDA EQT35,I 
      JSB OUT       OUTPUT REC. SPEED TO MUX CHANNEL
      JMP INIT2     SYSTEM INTERRUPTS & RETURN. 
      SPC 1 
*     PROCESS LINE OPEN REQ. AFTER RETURNING FROM LOGR
      SPC 1 
LOPEN EQU * 
      LDA EQT34,I   OUTPUT CONTROL WDS TO MUX.
      IOR BIT13     SET ENABLE BIT. 
      STA EQT34,I 
      JSB OUT 
      LDA EQT35,I 
      IOR BIT13     SET ENABLE BIT. 
      STA EQT35,I 
      JSB OUT 
      LDB EQT10,I   GET LINE OPEN OPTION PARAMETER
      CPB D1        RECEIVE OPTION? 
      JMP RECOP     YES.
      CPB D2        NO. SEND OPTION?
      JMP SENOP     YES.
      CPB D3        IDLE OPTION?
      JMP IDLOP     YES.
      SSB           NO. AUTO-SPEED ?
      JMP AUTOP     YES.
      JMP ICONV     NO. INVALID REQUEST.
      SPC 1 
*   RECEIVE AND IDLE OPTIONS. 
      SPC 1 
IDLOP EQU * 
      SPC 1 
RECOP EQU * 
      LDA EQT36,I   SET TRANSITION STATE
      AND CMB45     FLAG = 1 - RECEIVE. 
      IOR BIT4      CMB45=COMPLEMENT MASK BITS 4 & 5
      STA EQT36,I 
      LDA EQT19,I 
      SSA           103 MODEM/HW. 
      JMP RECO1     YES.
      LDA SCDAB     NO. 202 MODEM/HALF DUPLEX.
      JSB COUT      A= CD UP & CA DOWN (11011110) 
      LDA =B140012            INTERRUPT IF CB DROPS.
      JSB COUT2 
      JMP *+3 
RECO1 EQU *         ECHO PLEX 
      LDA SCDCA     A= CD & CA UP (ECHOPLEX)
      JSB COUT      OUTPUT TO CONTROL BOARD 
      LDB EQT10,I 
      SSB           AUTO-SPEED SELECTED TOO?
      RSS           YES. SKIP.
RECOX EQU *         NO. RETURN TO DOS.
      JMP REFEN 
      SPC 1 
      LDA EQT36,I   SET AUTO- 
      IOR BIT15     SPEED FLAG
      STA EQT36,I 
      JMP REFEN     CONTROL REQ. INITIATED. 
      SPC 1 
*  SEND OPTION
      SPC 1 
SENOP EQU * 
      LDA EQT36,I   SET TRANSITION STATE
      AND CMB45     FLAG = SEND (2) 
      IOR BIT5
      STA EQT36,I 
      LDA SCDCA     RAISE CD & CA 
      JSB COUT      OUTPUT
      LDB EQT19,I 
      SSB           ECHO PLEX/HARDWIRED ? (103 MODEM) 
      JMP SENO1     YES.
      LDA SSAB      NO. 202 MODEM 
      JSB COUT2     OUTPUT SA DOWN TO MUX BOARD # 4 
SENO1 EQU * 
      JMP REFEN 
      SPC 1 
*  AUTO-SPEED OPTION
      SPC 1 
AUTOP EQU * 
      LDB =B5413
      STB EQT21,I 
      LDA EQT34,I   SET 
      AND =B170000
      IOR S2400      LINE SPEED = 2400 BAUD 
      IOR BIT11       AND DIAGNOSE BIT
      STA EQT34,I 
      JSB OUT       OUTPUT CHANNEL DATA TO MUX. 
      LDA EQT36,I 
      AND B17       LINE STATUS 
      CPA D1         = RECEIVE ?? 
      RSS           YES. SKIP.
      JMP RECOP     NO. CALL LINE OPEN RECEIVE SUBR.
      LDA EQT36,I   SET 
      IOR BIT15     AUTO-SPEED FLAG 
      STA EQT36,I 
      JMP REFEN 
      SPC 2 
*  LOGR ISSUED A "START WRITE" DIRECTIVE WHEN CALLED FROM I.73 TO 
*  INITIATE A WRITE I/O REQ.
      SPC 1 
SWRIT EQU * 
      LDA EQT36,I 
      AND B17 
      SZA,RSS       LINE STATUS = DOWN ?
      JMP BADLN     YES. REPORT LINE ERROR TO LOGICAL.
      JSB SW202     NO. LINE IN SEND STATE ?
      RSS           YES. SKIP NEXT INSTRUCTION. 
      JMP REFEN     NO. LINE BEING TURNED TO SEND 
SW103 LDA DADIR     GOOD LINE STATUS: 
      AND B177
      JSB CHAR      OUTPUT CHAR 
      JMP REFEN 
      SPC 1 
*  START WRITE ON A HALF DUPLEX LINE (202 MODEM). 
*     RETURN: P+1 = LINE IN SEND DIRECTION (READY). 
*             P+2 = LINE NOT IN SEND DIRECTION. 
      SPC 1 
SW202 EQU * 
      NOP 
      LDB EQT19,I 
      SSB,RSS       FULL DUPLEX LINE? 
      JMP SW20A     NO. HALF DUPLEX.
      LDA EQT34,I   YES.
      JSB OUT        ENABLE INTERRUPTS ON READ CHNL.
      LDA EQT36,I 
      AND =B177700   SET LINE 
      IOR B2          STATE = SEND. 
      STA EQT36,I 
      JMP SW202,I    RETURN.
SW20A EQU * 
      LDA EQT36,I 
      AND B17 
      CPA B2        LINE ALREADY IN SEND STATE? 
      JMP SW202,I   YES. RETURN.
      SPC 1 
*     TURN OFF READ CHANNEL INTERRUPTS DURING WRITES !!!!!
      SPC 1 
      LDA EQT34,I 
      AND =B147777  CLEAR BITS 12 & 13. ECHO & INTER. 
      JSB OUT        OUTPUT NEW PARMS. TO MUX . 
      SPC 1 
      LDA SCDAS     NO. TURN LINE AROUND. 
      JSB COUT      RAISE CD & CA 
      LDA SSAB       AND LOWER SA 
      JSB COUT2 
      LDA DADIR 
      AND RHALF     STORE 
      STA B           OUTPUT
      LDA PQT6,I        DATA
      AND LHALF          IN 
      IOR B                EQT37,I, 
      STA PQT6,I          RT HALF.
      LDA EQT36,I   SET 
      AND =B117717   START WRITE FLAG 
      IOR BIT13       AND TRANSITION
      IOR BIT5          STATE FLAG
      STA EQT36,I         = SEND (2). 
      LDB ML300     DELAY 
      JSB PTIMR        300 MS 
      LDB M7        WAIT AN ADDITIONAL 700 MS 
      STB PQT15,I      FOR LINE TO TURN TO SEND STATE.
      ISZ SW202 
      JMP SW202,I 
      SPC 1 
SRWEX EQU *          OPERATION INITIATED. 
      JMP REFEN     RETURN TO DOS.
      SPC 1 
*  READ 
      SPC 1 
SREAD EQU * 
      LDA EQT36,I 
      AND B17 
      SZA,RSS       LINE DOWN ? 
      JMP BADLN     YES. REPORT BAD LINE TO LOGICAL DVR.
      JSB SR202     NO. TURN LINE TO RECEIVE STATE. 
      NOP 
      JMP REFEN      RETURN TO DOS. 
      SPC 1 
*   THIS SUBROUTINE TURNS HALF DUPLEX LINES TO THE RECEIVE DIRECTION
* 
*     RETURN: 
*       P+1 = LINE ALREADY IN RECEIVE DIRECTION.
*       P+2 = LINE IN PROCESS OF BEING TURNED TO RECEIVE DIRECTION. 
      SPC 1 
SR202 EQU * 
      NOP 
      LDA EQT34,I 
      JSB OUT       ENABLE ECHO & INTERRUPTS. 
      LDA EQT36,I   LINE ALREADY
      AND B17         IN READ 
      CPA D1            STATE?
      JMP SR202,I   YES. RETURN TO DO TIMING REQ. 
      LDB EQT19,I 
      SSB,RSS       FULL DUPLEX?
      JMP SR20A     NO. HALF DUPLEX.
      LDA EQT36,I    YES. 
      AND =B177700     CHANGE LINE STATE TO READ. 
      IOR B1
      STA EQT36,I 
      JMP SR202,I    RETURN.
SR20A EQU * 
      SPC 1 
*     TURN ON READ CHANNEL INTERRUPTS DURING READS !!!!!
      SPC 1 
      LDA SCDAF     NO. TURN LINE AROUND
      JSB COUT      RAISE CD AND LOWER CA WITHOUT 
      LDA EQT36,I   SET ITEM SR (START READ DIREC-
      AND =B117717  TIVE IISUED BY LOGICAL DVR. 
      IOR BIT14     SET TRANSITION
      IOR BIT4        LINE STATE = RECEIVE
      STA EQT36,I 
      LDB ML300     DELAY 
      JSB PTIMR       300 MS. 
      LDB M7
      STB PQT15,I    7 RETRIES. 
      ISZ SR202 
      JMP SR202,I   RETURN
      SPC 2 
*   CLALL INITIALIZES THE MUX CONTAINING THIS DEVICE TO DUMMY INPUT 
*   AND OUTPUT PARAMETERS IF THIS IS THE 1ST CLEAR REQUEST ISSUED 
*   TO A DEVICE ON THIS MUX.
      SPC 1 
CLALL EQU * 
      NOP 
      LDA EQT3,I
      ALF,RAL       MOVE MSB TO BIT # 15. 
      LDB INCLP 
      SSA           BUMP INDEX FOR 1ST MUX? 
      INB           NO. 2 ND MUX. 
      ISZ B,I       INHIBIT INTERRUPTS ON ALL CHNLS?
      JMP INIT2     YES 
      CLA 
      STA UNIT      START WITH UNIT # 0 
      LDB DM16        THRU UNIT # 15. 
      STB SAVEC 
CLRMX EQU * 
      LDA IPDMY     INHIBIT INTERRUPTS FROM INPUT CHS.
      JSB OUT 
      LDA OPDMY     INHIBIT INTERRUPTS FROM OUTPUT CH.
      JSB OUT 
      LDA UNIT      BUMP CHANNEL
      ADA =B002000     NUMBER.
      STA UNIT
      ISZ SAVEC     DONE??
      JMP CLRMX         NO. REPEAT. 
      JMP CLALL,I       YES .  EXIT.
      HED ASYNC MUX TIMOUT INITIATE/RESET/DEQUEUE SUBROUTINES.
*  INITIATE/RESET/DEQUEUE LOGICAL TIMER :::***... 
      SPC 1 
SRTIM EQU * 
      NOP 
      STB SAVEC     SAVE B-REG. 
      AND =B140000  READ OR WRITE 
      SZA,RSS        DIRECTIVE ISSEUD?
      JMP SRT1      NO. SKIP. 
      LDA EQT36,I   YES.
      SSA           AUTO-SPEED IN PROGRESS? 
      JSB CFSPD     YES. CONFIGURE PORT'S SPEED ETC.
SRT1  LDB SAVEC     RESTORE B-REG.
      SZB,RSS 
      JMP SRTIM,I   NO TIMING REQUESTED.  RETURN. 
      SSB           INITIATE/RESET TIMING ? 
      JMP IRTIM     YES.
      CLA           NO.  DEQUEUE TIMING REQ.
      LDB EQT30     ADDR OF LOGICAL TIMING BFR. 
      JSB $TIME     DEQUEUE 
      CLA 
      STA TIMV,I
      JMP SRTIM,I    AND RETURN.
IRTIM EQU * 
      LDA TIMV,I
      SZA 
      CMB,INB 
      STB TIMV,I
      LDA PQT1
      STA EQT30,I 
      LDB TIMAD 
      STB EQT31,I 
      LDB EQT30 
      LDA TIMV,I
      JSB $TIME 
      JMP SRTIM,I       RETURN. 
      SPC 2 
*     INITIATE/RESET/DEQUEUE PHYSICAL TIMER.
      SPC 1 
PTIMR EQU * 
      NOP 
      SZB,RSS 
      JMP PTIMR,I   EXIT IF B-REG = 0.
      SSB           INIT OR RESET TIMEOUT?
      JMP PIRTM     YES.
      CLA           NO. DEQUEUE TIMEOUT.
      LDB EQT26     ADDR OF TIMEOUT BLOCK.
      JSB $TIME     CALL TIMER. 
      CLA 
      STA PTIMV,I 
      JMP PTIMR,I 
PIRTM EQU * 
      LDA PTIMV,I 
      SZA           INITIATE TIMEOUT ?
      CMB,INB       NO. RESET TIMEOUT VALUE.
      STB PTIMV,I 
      LDA PQT1
      CMA,INA       = - EQT ADDR FOR PHYSICAL TIMEOUTS. 
      STA EQT26,I 
      LDB TIMAD     TIMEOUT SUBR ADDR.
      STB EQT27,I 
      LDB EQT26 
      LDA PTIMV,I 
      JSB $TIME 
      JMP PTIMR,I 
      HED ASYNC MUX DATA INTERRUPT PROCESSOR. 
*  THIS ROUTINE IS ENTERED WHEN A DATA BOARD INTERRUPTS.
* 
*   P73D1 PROCESSES DATA INTERRUPTS FROM MUX # 1. 
* 
      SPC 2 
P73D1 EQU * 
      NOP 
      CLF 0 
      JSB SAVAL     SAVE A,B,E, AND O.
      LDB P73D1 
      JSB SRSCU     SAVE RETURN ADDR, SC, ETC.
      ADA DM16      ADD -16 BASE 10 
      SSA           UNIT # < 16 ? 
      JMP P73DA-1   YES.
      LDB LASM1 
      SZB,RSS       IF LASM1 = 0, RETURN. 
      JSB RETRN 
      JSB SETP      SET POINTERS. 
      LDB EQT36,I 
      SSB,RSS       AUTO-SPEED ACTIVE FOR THIS DEVICE?
      JSB RETRN      NO.
      LDB LASM1     YES. USE LAST MAIN CHNL FOR AUTO- 
      JMP P73DA+2   SPEED TO INTERRUPT FOR AUX CHNLS
      ADA D16       ADD +16 
P73DA EQU * 
      ADA UNEQP       TO FIND THE 
      LDB A,I           PROPER EQT. 
      SZB,RSS       UNEQT ENTRY = 0 ? 
      JMP P73DX     YES.
      JSB SETP
      LDB PQT1
      LDA EQT36,I 
      SSA           AUTO-SPEED REQ. FOR THIS MAIN?
      STB LASM1     NO. UPDATE LAST MAIN .
      JMP P.73D     PROCESS INT.
*                                    INHIBIT
*                                     CHANNELS
P73DX EQU * 
      JSB RETRN     EXIT TO INTERRUPTED PROGRAM.
      SPC 1 
* 
*   P73D2 PROCESSES DATA INTERRUPTS FROM MUX # 2. 
* 
      SPC 1 
P73D2 EQU * 
      NOP 
      CLF 0 
      JSB SAVAL     SAVE A,B,E, AND O.
      LDB P73D2 
                                                                                                                                                                                                                                                            