ASMB,L,C
        HED COMPILER LIBRARY - GET SEGMENT
* 
*************************************************************** 
* (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1977.  ALL RIGHTS     * 
* RESERVED.  NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, RE-  * 
* REPRODUCED, OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITH- * 
* OUT THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY.   * 
*************************************************************** 
* 
*   SOURCE: 19060-18062 
* 
* 
* 
      NAM OLY.C,7 92060-16103 780815 REV. 1901 $CLIB
      EXT EXEC,$OPSY
      ENT OLY.C 
      ENT C.OLY     ADDRESS OF CURRENT SEGS ID
* 
*  THIS COMPILER LIBRARY ROUTINE LOADS A NEW SEGMENT INTO MEMORY
*  AND TRANSFERS CONTROL TO IT. 
* 
*       CALLING SEQUENCE:  JSB OLY.C
*                          DEF SEGID     POINTER TO SEGMENT NAME
* 
* 
OLY.C NOP           ENTRY 
      LDA OLY.C,I 
      STA C.OLY     SEGMENT NAME
TRY   JSB EXEC      CALL THE SUPERVISOR 
      DEF *+3 
      DEF SEGL
C.OLY NOP 
      LDA C.OLY     SEGMENT NOT FOUND  TRY TO RP IT 
      INA 
      STA N34       SET UP ADDRESSES FOR T5IDM
      INA 
      STA N5
      JSB EXEC      CALL T5IDM TO LOAD THE SEGMENT
      DEF RTN 
      DEF N23I
      DEF T5IDM 
      DEF C.OLY,I 
N34   NOP 
N5    NOP 
      DEF K1
RTN   JMP EXIT      ERROR RETURN JUST EXIT
* 
      LDA $OPSY     FIGURE OUT HOW TO GET THE RETURN VALUE
      ERA,SLA       TEST THE DMS BIT
      JMP DMS       IF DMS INSTALLED JMP
* 
      LDA B,I       ELSE JUST LOAD THE DATA 
      JMP TS        GO TEST THE RESULT
* 
DMS   XLA B,I       DMS  DO THE DMS CROSS LOAD
TS    SZA,RSS       IF ZERO THEN THE SEGMENT WAS SET UP 
      JMP TRY       SO GO TRY AGAIN 
EXIT  ISZ OLY.C     SHOULD NOT RETURN 
      JMP OLY.C,I   IF IT RETURNS, EXIT 
* 
SEGL  OCT 100010
T5IDM ASC 3,T5IDM 
N23I  DEF 23,I
K1    DEC 1 
A     EQU 0 
B     EQU 1 
      END 
                                                                                                      