ASMB,R,Q,C HED LINKAGE SUBROUTINE * * NAME: T.LNK * SOURCE: 92076-18018 * RELOC: PART OF 92076-16002 * PGMR: B.J.L. * * **************************************************************** * * (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 T.LNK,8 92076-1X018 REV.2001 790130 92076-16002 * SUP * ENT T.LNK ENT T.LN1 * EXT OLY.C,.ENTR * * * THE FOLLOWING SUBROUTINE PROVIDES THE LINKAGE * FROM THE MAIN TO EACH OF THE TWO SEGMENTS OF RTETG. * IF THE SEGMENT CANNOT BE LOADED OLY.C WILL RETURN * TO THE DEF SNAME+1. A FLAG WILL BE SET AND RETURNED * TO THE CALLER INDICATING THAT THE SEGMENT IS NOT LOADED. * * CALLING SEQUENCE: * JSB T.LNK * DEF *+4 * DEF SUBROUTINE# (SIGN BIT = DON'T LOAD SEGMENT) * DEF OVERLAY# * DEF FLAG * * SUB# NOP OVLAY NOP FLAG NOP T.LNK NOP JSB .ENTR DEF SUB# LDA SUB#,I LDB OVLAY,I RAL,CLE,ERA GET SIGN BIT. STA NSUB SAVE SUBROUTINE NUMBER. SEZ NEED WE LOAD THE SEGMENT? JMP T.LN2 NO - WE HAVE IT. ADB NSEG FIX UP SEGMENT NAME STB SNAME+1 TO LOAD PROPER SEGMENT. JSB OLY.C LOAD THE SEGMENT. DEF SNAME SEGMENT NAME LDA D1 SET FLAG ON STA FLAG,I JMP T.LNK,I RETURN * T.LN1 LDA NSUB SEGMENT RETURNS HERE. STB T.SUB STORE CALSB ADDRESS. T.LN2 JSB T.SUB,I TRANSFER TO DESIRED SUBROUTINE. JMP T.LNK,I RETURN TO MAIN. * NSUB BSS 1 T.SUB BSS 1 SNAME ASC 3,TG00S NSEG ASC 1,00 D1 DEC 1 D8 DEC 8 * END