ASMB,C,Q
      NAM LUDV5,7 92425-16051 REV.2001 791028 
* 
*---------------------------------------------------------------
* 
*     RELOC.     92425-16051
*     SOURCE     92425-18051
* 
* 
*     HP 92425C TEST SYSTEM SOFTWARE IS THE PROPRIETARY 
*     MATERIAL OF THE HEWLETT-PACKARD COMPANY.  USE AND 
*     DISCLOSURE THEREOF ARE RESTRICTED BY WRITTEN AGREEMENT. 
* 
*     (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979. 
*     ALL RIGHTS RESERVED.  NO PART OF THIS PROGRAM 
*     MAY BE PHOTOCOPIED, REPRODUCED OR TRANSLATED
*     TO ANOTHER PROGRAM LANGUAGE WITHOUT THE PRIOR 
*     WRITTEN CONSENT OF THE HEWLETT-PACKARD COMPANY. 
* 
*---------------------------------------------------------------
* 
* 
*     LUDV(STN,TYPE,NUMBER) 
*     LUDV(STN,TYPE)
* 
*                    WHERE  STN = SESSION LU # OF STATION.
*                           TYPE= DEVICE TYPE 
*                           NUMB= UNIT NUMBER 
* 
*     RETURNS LUN OF DEVICE 
* 
* 
      ENT LUDV
      EXT DRTXX,.ENTR,LUTRU 
* 
A     EQU 0 
B     EQU 1 
* 
AISN  NOP 
ATYP  NOP 
ANUM  DEF D1        POINT TO DEFAULT VALUE
LUDV  NOP 
      JSB .ENTR 
      DEF AISN
* 
      LDA ATYP,I
      AND B777
      ALF 
      STA B 
* 
      LDA ANUM,I
      AND B17 
* 
      IOR B 
      STA DVWRD    STORE DEVICE WORD TO BE SEARCHED FOR.
* 
      LDA AISN,I    .A. = LU OF CRT 
*     SZA,RSS       LU=0 ?
*     JMP NONE        YES! EXIT 
*     SSA             NO, IS IT NEGATIVE? 
*     JMP NONE        YES! EXIT 
      JSB LUTRU     GET SYSTEM LU OF TERMINAL.X 
      DEF *+2 
      DEF AISN,I
* 
      CPA M1       EXIT IF SYSTEM LU IS NOT AVAILABLE.
      JMP NONE
* 
      STA SYSLU   SAVE THE TERMINAL SYSTEM LU 
* 
      XLB DRTXX 
      INB 
      XLA B,I     FETCH THE NO. OF TERMINAL WORDS.
* 
      SZA,RSS 
      JMP NONE    EXIT IF DRTXX IS NOT VALID. 
* 
      ARS          DEVIDE BY 2 TO GET NO. OF TERMINALS. 
      CMA         SAVE THE NUMBER OF TERMINAL WORDS 
      STA CNT     SAVE THE DOWN COUNT VALUE.
* 
      INB         INCREMENT TO 1ST CLUSTER VALUE
* 
GETER ISZ CNT     INCREMENT TERMINAL COUNT AND TEST FOR END.
      JMP *+2     NOT END 
      JMP NONE    END. THIS TERM IS NOT SET UP IN DRTXX.
* 
      XLA B,I     GET THE CLUSTER TO TERM SYS LU WORD.
      AND B377    EXTRACT THE TERM SYS LU 
      CPA SYSLU   IS THIS THE RIGHT TERMINAL ?
      JMP GETCL   YES. GO GET THE CLUSTER.
* 
      ADB D2      NO. GOTO NEXT TERMINAL WORD 
      JMP GETER   CONTINUE SEARCH.
* 
* 
************************************************************************* 
GETCL XLA B,I     GET THE TERMINAL WORD AGAIN.
* 
      ALF,ALF     EXTRACT THE CLUSTER NUMBER. 
      AND B377
      STA CLS     SAVE THE CLUSTER NUMBER.
* 
      XLA DRTXX   CALCULATE THE ADDRESS OF 1ST CLUSTER WORD.
      INA 
      XLB A,I     GET NO. OF TERMINALS WORDS. 
      ADB A       CALCULATE LAST TERM WORD ADDRESS. 
      INB         CALCULATE 1ST CLUSTER WORD ADDRESS. 
* 
CLOOP XLA B,I    FETCH THE CLUSTER WORD.
      AND B377   EXTRACT THE CLUSTER VALUE
      CPA CLS    TEST FOR RIGHT CLUSTER.
* 
      JMP GTLU   YES. GO GET LU NUMBER. 
* 
      STB A 
      INA        CALCULATE ADDRESS OF # OF CLUSTER WORDS. 
      XLB A,I 
      ADB A      CALCULATE ADDRESS OF LAST CLUSTER WORD.
      INB        CALCULATE ADDRESS OF NEXT CLUSTER. 
* 
      JMP CLOOP  GO CHECK NEXT CLUSTER. 
* 
************************************************************************
GTLU  INB 
      XLA B,I    FETCH NUMBER OF WORDS FOR THIS CLUSTER.
      ARS        DEVIDE BY 2 TO GET NO. OF DEVICES. 
      CMA 
      STA CNT    SAVE COUNT DOWN VALUE. 
* 
* 
      INB        SET ADDRESS TO FIRST DEVICE WORD.
* 
DLOOP ISZ CNT    TEST FOR END OF DEVICES. 
      JMP *+2    NOT END. 
      JMP CHTER  END. GO CHECK IF DEVICE IS TERMINAL. 
* 
      XLA B,I    GET DEVICE WORD. 
      CPA DVWRD  IS THIS THE CORRECT WORD?
      JMP DONE   YES. 
* 
      ADB D2     NO. GO TO NEXT DEVICE WORD.
      JMP DLOOP 
* 
*********************************************************************** 
* 
CHTER CLA,INA    RETURN A SESSION LU OF 1 IF
      LDB D1U1   DEVICE TYPE = 1 AND UNIT = 1.
      CPB DVWRD 
      JMP EXIT   YES. RETURN LU OF 1. 
      JMP NONE   NO.  NOT TERMINAL DEVICE.
*********************************************************************** 
* 
NONE  CLA         NONE FOUND. RETURN ZERO.
      JMP EXIT
* 
DONE  INB 
      XLA B,I    FETCH SES TO SYS LU WORD.
      AND B377   EXTRACT SESSION LU.
* 
EXIT  LDB AD1       RESTORE 2ND PARM DEFAULT VALUE
      STB ANUM
      JMP LUDV,I
* 
AD1   DEF D1
D1    DEC 1 
D2    DEC 2 
D7    DEC 7 
B17   OCT 17
D1U1  OCT 21    DEVICE TYPE 1, UNIT 1 
B377  OCT 377 
B777  OCT 777 
M1    DEC -1
ADDR  BSS 1 
SYSLU BSS 1 
CLS   BSS 1 
CNT   BSS 1 
DVWRD BSS 1 
      END 
                                                                                                                                                                                      