ASMB,R,L,C
      NAM HPIBT,6  92070-1X313  REV 1941  800326
* 
      ENT HPIBT,HPIBB,CNFUE 
* 
      EXT .ZPRV,$LUTA,$LIBR,$LIBX 
* 
******************************************************************* 
*  * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1980.  ALL RIGHTS      * 
*  * RESERVED.  NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED,       * 
*  * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT * 
*  * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY.        * 
******************************************************************* 
* 
*     HPIB CONFIGURATION TABLE *
* 
*  ***PLEASE NOTIFY BASIC/L MANAGER OF ANY CHANGES TO THIS ROUTINE*** 
* 
*     RELOC:  PART OF 92070-12005 AND 92076-12002 
*     SOURCE: 92070-18313 
*     PGMR:   T.A.L.
* 
A     EQU 0 
B     EQU 1 
* 
HPIBT NOP           ZERO HPIB CNFG TABLE & DISABLE ERROR
      JSB $LIBR     HANDLING FOR AN HP-IB DEVICE. 
       NOP      
      CLA,INA       SET LU=1
      STA LU
NXTLU JSB CNFUE     CHECK LU CONFIGURATION
      SZA           LU CONFIGURED IN HPIB TABLE?
      JMP ZDVT      YES, DISABLE BIT 14 IN DVT20
CONT  LDA LU        GET LU AGAIN
      CPA .64       LAST LU IN HPIB TABLE?
      JMP ZEROT     YES, NOW ZERO HPIB CNFG TABLE 
      INA           INDEX TO NEXT LU
      STA LU        SAVE IT 
      JMP NXTLU     CHECK NEXT LU CONFIGURATION 
* 
ZDVT  LDB LU        GET LU
      ADB $LUTA     ADD DVT TABLE ENTRY ADDR. 
      ADB M1        MINUS 1 
      LDB B,I       GET DVT ADDRESS 
      ADB .19       INDEX TO DVT20
      LDA B,I       ZERO DISABLE/ENABLE ERROR HANDLING
      AND MSK14     BIT (BIT 14) IN DVT20.
      STA B,I       RESTORE DVT20 
      JMP CONT      CONTINUE
* 
ZEROT CLA           ZERO HPIB TABLE 
      LDB HPIBB     GET CONFIGURATION TABLE ADDR. 
ZERO  STA B,I       ZERO
      INB            CONFIGURATION TABLE
      CPB HPIBE     DONE? 
      RSS           YES, RETURN 
      JMP ZERO      NO, ZERO REST OF TABLE
      JSB $LIBX     RETURN
       DEF HPIBT
* 
HPIBB DEF LUFLG 
LUFLG REP 4         HPIB CONFIGURATION TABLE
      NOP 
HPIBE DEF * 
* 
* 
CNFUE NOP           A REGISTER CONTAINS LU
      JSB .ZPRV 
       DEF END
      AND B77       MASK IT 
      CLB           CLEAR TABLE ADDR. OFFSET
CNF2  ADA M17       FIND WORD CONTAINING LU (16 LU'S/WORD)
      SSA           WORD FOUND? 
      JMP CNF4      YES, TABLE ADDR. OFFSET IN B. 
      INA           NO, ADJUST LU 
      INB           ADJUST OFFSET 
      JMP CNF2      TRY AGAIN 
CNF4  INA           COMPUTE NUMBER OF BITS TO ROTATE
      CMA,INA       TO SIGN BIT POSITION. 
      SZA           LESS THAN 16? 
      IOR RRL       YES, MERGE NUMBER OF BITS TO ROTATE 
      STA CNF6      SAVE RRL N
      LDA HPIBB     GET TABLE STARTING ADDRESS
      ADB A         ADD OFFSET
      LDA B,I       GET WORD CONTAINING LU BIT POSITION 
CNF6  NOP           ROTATE LU POSITION TO SIGN BIT
      AND BIT15     ZERO BIT 15 
      RAL           RETURN A=0/1, DISABLE/ENABLE
END   JMP CNFUE,I   ERROR HANDLING. 
       DEF CNFUE
* 
LU    NOP 
B77   OCT 77
.19   DEC 19
.64   DEC 64
M1    DEC -1
M17   DEC -17 
BIT15 OCT 100000
MSK14 OCT 137777
RRL   RRL 16
      END 
                                                                          