ASMB,R,L,C
      HED (FMGR) P.NAM: RETURN PROGRAM'S NAME 
*     NAME:   P.NAM 
*     SOURCE: 92071-18362 
*     RELOC:  92071-1X362 
*     PGMR:   E.D.B.
* 
*  **************************************************************** 
*  * (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.        * 
*  **************************************************************** 
* 
      NAM P.NAM,7 92071-1X362 REV.2041 800430 
* 
      ENT P.NAM 
* 
      EXT $IDA, $ID#, $IDSZ 
      EXT .ENTR, .XLD 
      SUP 
      SKP 
* 
*     DESCRIPTION 
* 
*     CALLING SEQUENCE: 
* 
*     CALL P.NAM(IBUF,IDSEG)
* 
*     WHERE:
* 
*     IBUF   WILL BE THE PROGRAM NAME (3-WORD ARRAY) FROM 
*            THE SPECIFIED ID SEGMENT 
* 
*     IDSEG  IS THE ID SEGMENT NUMBER 
      SKP 
* 
*     ENTRY 
* 
IBUF  NOP 
IDSEG NOP 
* 
P.NAM NOP 
      JSB .ENTR 
      DEF IBUF
* 
      CCA           GET A -1
      ADA IDSEG,I    ADD ID SEGMENT NUMBER
      STA TMP 
      JSB .XLD      GET NUMBER OF ID SEGMENTS 
      DEF $ID#+0
      CMA,INA        NEGATE 
      ADA TMP         ADD ID SEGMENT NUMBER 
      SSA,RSS       IF OUT OF RANGE,
      JMP BADID      THEN TREAT AS BAD SEGMENT NUMBER 
* 
      JSB .XLD      GET ID SEGMENT SIZE 
      DEF $IDSZ+0 
      MPY TMP       CALCULATE OFFSET
      ADA .12        TO PROGRAM NAME
      STA TMP         AND SAVE
      JSB .XLD      GET SEGMENT TABLE STARTING ADDRESS
      DEF $IDA+0
      ADA TMP        ADD OFFSET 
      STA TMP         AND SAVE
* 
      JSB .XLD      GET FIRST TWO CHARACTERS
      DEF A,I 
      STA IBUF,I     SAVE IN USER BUFFER
      ISZ IBUF
      ISZ TMP 
* 
      LDA TMP 
      JSB .XLD      GET MIDDLE TWO CHARACTERS 
      DEF A,I 
      STA IBUF,I     SAVE IN USER BUFFER
      ISZ IBUF
      ISZ TMP 
* 
      LDA TMP 
      JSB .XLD      GET LAST CHARACTER
      DEF A,I 
      AND C377       ISOLATE IT 
      IOR B40         MERGE WITH BLANK
      STA IBUF,I       SAVE IN USER BUFFER
* 
      CLA           SET FOR GOOD RETURN 
      JMP P.NAM,I 
* 
BADID CCA           SET FOR BAD RETURN
      JMP P.NAM,I 
* 
*     STORAGE AREA
* 
.12   DEC 12
* 
B40   OCT 40
C377  OCT 177400
* 
TMP   NOP           TEMPORARY STORAGE 
* 
A     EQU 0 
B     EQU 1 
* 
END   EQU * 
* 
      END 
    