ASMB,R,L,C    ** EQLU - FIND 'LU' FROM EQT4 ADDR IN B REG **
      HED -EQLU - FIND 'LU' FROM EQT4 ADDRESS IN B-REG
*     NAME:   EQLU
*     SOURCE: 92067-18040 
*     RELOC:  PART OF 92067-16035 
*     PGMR:   G.A.A.
* 
*  ***************************************************************
*  * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1978.  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.       *
*  ***************************************************************
* 
      NAM EQLU,6 92067-16035 REV.1805 770718
      ENT EQLU
      EXT .ZPRV 
* 
*     ROUTINE TO FIND THE LOGICAL UNIT NUMBER OF A DEVICE 
*     GIVEN THE ADDRESS OF WORD 4 OF ITS EQUIPMENT TABLE
*          CALLED AS FOLLOWS: 
* 
*          LDB EQT4       (PASSED FROM DVR00/DVR65) 
* 
*          JSB EQLU    -OR-    JSB EQLU   -OR-   CALL EQLU (LUSDI)
*          DEF *+2             DEF *+1
*          DEF LUSDI
* 
*          A-REG. = 0   IF NOT FOUND -OR- 
*          A-REG. = THE LOGICAL UNIT NUMBER IF FOUND
*          LUSDI  = RETURNED SAME AS A-REG. 
*          B-REG. = ASCII "00" -OR- LOGICAL UNIT IN ASCII (I.E. "16") 
* 
      SUP 
EQLU  NOP        ENTRY
      JSB .ZPRV 
      DEF LIBX
      STB EQT4     SAVE B-REG FOR LATER TEST
      LDA EQLU,I   GET ADRS OF RETURN ADDRESS 
      ISZ EQLU     BUMP TO POSSIBLE PRAM. 
      LDB EQLU,I   GET POSS. ADDRS OF PRAM. 
      CPA EQLU     PARAMETER PASSED?
      CLB          NO, SET DUMMY ADRS (A-REG.)
      STA EQLU     SET RETURN POINT FOR $LIBX 
      STB LUADR    SET PASSED PRAM. ADDRESS 
      CLA 
      STA LUNUM    SET LU POINTER 
NEXT  LDA LUNUM    GET CURRENT LU NUM-1 
      CPA LUMAX    DONE THRU ALL LU'S 
      JMP NTFND    YES, NOT FOUND!! 
      ISZ LUNUM    BUMP TO CURRENT LU 
      ADA DRT      POINT TO TABLE ADDRESS 
      LDA 0,I      GET CONTENTS 
      AND O77      MASK OF SUBCHANNEL BITS
      MPY D15      CALCULATE ADDRESS OF WORD 4
      ADA EQTA     BASE ADDRESS 
      ADA DM12     SUBTRACK ONE EQT & ADD DEC 3 
      CPA EQT4     COMPARE??
      JMP FOUND    YES !! 
      JMP NEXT     NO, TRY NEXT ONE 
      SPC 1 
NTFND STB LUNUM    NOT FOUND RETURN A=0 
FOUND LDA LUNUM    FOUND RETURN A= LU NUMBER
      DIV D10      CONVERT TO ASCII 
      ALF,ALF      POSITION MOST SIG. DIGIT 
      ADB 0        MIRGE IN LEAST 
      ADB ASC00    CONVERT TO ASCII 
      LDA LUNUM    RESTORE BINARY VALUE 
      STA LUADR,I  PASS BACK TO CALLER
LIBX  JMP EQLU,I   RETURN A=BIN. VALUE, B= ASCII VALUE
      DEF EQLU
      SPC 1 
EQT4  NOP 
LUADR NOP 
LUNUM NOP 
O77   OCT 77
D10   DEC 10
ASC00 ASC 1,00
D15   DEC 15
DM12  DEC -12 
EQTA  EQU 1650B 
DRT   EQU 1652B 
LUMAX EQU 1653B 
      END 
                                                                                                                                                                                          