ASMB,R,L,C
*     NAME:   GTOPN 
*     SOURCE: 92070-18060 
*     RELOC:  92070-16060 
*     PGMR:   M.L.K.
* 
*  ***************************************************************
*  * (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 HEWLETT-PACKARD COMPANY.       *
*  ***************************************************************
* 
* 
      NAM GTOPN,7  92070-1X060  REV.1941  790709
* 
*     THIS ROUTINE CALCULATES THE CURRENT OPEN FLAG FOR 
*     FMGR AND FMP.  THE FORMAT OF THE OPEN FLAG IS:
* 
*     ------------------------------------------------- 
*     !  !   SEQ#    !  CPU#  !     ID SEGMENT #      ! 
*     ------------------------------------------------- 
*      15 14       11 10     8  7                    0
* 
      SKP 
      ENT GTOPN 
      EXT $IDA,$IDSZ,$XQT,$CPU
      SUP 
* 
GTOPN NOP 
      ISZ GTOPN     SET UP RETURN ADDRESS 
      STB SAVB      SAVE B REGISTER 
* 
      CLB           CLEAR B FOR DIVIDE
      LDA $IDA      GET START OF ID SEGMENTS
      CMA,INA       MAKE IT NEGATIVE
      ADA $XQT      ADD CURRENT ADDRESS TO GET OFFSET 
      DIV $IDSZ     AND DIVIDE BY ID SIZE FOR ID# 
      INA           ADD ONE SO NUMBERED 1 TO N
      STA B 
* 
      LDA $XQT      GET CURRENT ID AGAIN
      ADA OFSET     ADD OFFSET TO SEQUENCE NUMBER 
      LDA A,I       GET SEQUENCE NUMBER 
      AND B170K     ISOLATE SEQUENCE COUNT
      CLE,ERA       MOVE SEQUENCE COUNT TO BITS 11 - 14 
      IOR B         ADD IN THE ID NUMBER
      STA B 
* 
      LDA $CPU      GET CPU NUMBER
      AND B7        ALLOW 0 - 7 
      ALF,ALF       MOVE TO BITS 8 - 10 
      IOR B         ADD IN CPU NUMBER 
      LDB SAVB      RESTORE B REGISTER
      JMP GTOPN,I   RETURN
      SKP 
OFSET DEC 28
B170K OCT 170000
B7    OCT 7 
SAVB  NOP 
* 
A     EQU 0 
B     EQU 1 
* 
END   EQU * 
      END 
                                                                                                                                                                                                                                                    