ASMB,L,C,R HED DBBUF IMAGE/1000 POINTER STORAGE AREAS NAM DBBUF,7 92069-16164 REV.1912 790130 * * ******************************************************************* * (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. ******************************************************************* * * * SOURCE: 92069-18164 * RELOC: 92069-16164 * * PRGMR: CEJ * * ******************************************************************* * * * * DBBUF is a subroutine containing only the space for and entry points * into the data base pointer table, the current Run Table address, the * DCB pointer table, the record buffer and the record buffer's length. * * The Run Table pointer table (DBRTP) contains the primary pointers to the * Run Table(s) of the data base(s) open to the program. There is room * in this table for up to 20 Run Tables. The current Run Table address * is kept in AIRUN. * * The DCB pointer table (DBDCP) contains the primary pointers to the DCBs * allocated for the program and the data base and data set mumber to * which the DCB currently belongs. There is room in this table for up * to 17 DCBs. * * The record buffer pointer (DBRBP) is the primary pointer to the record * buffer allocated for the program. There is only one record buffer * whose length is kept in DBRBL. * * In addition to the buffer pointers, DBBUF contains an external reference * needed to attach the memory manager pointer storage areas for managing * the available memory. Only one copy of DBBUF (and the memory manager * pointers) may be attached to a program to insure proper access to data * bases through the IMAGE software. This could cause a problem in seg- * mented programs. Therefore the main module of a segemented program must * reference DBBUF in some fashion. In order to facilitate this, the entry * point DBBUF is provided for a subroutine call in the main module. When * called, DBBUF merely picks up the return point and jumps back. In turn, * DBBUF contains the external reference to the memory manager necessary to * load its pointers with the main. * ENT AIRUN,DBBUF,DBDCP,DBDCT,DBDMX,DBDSZ,DBRBL ENT DBRBP,DBRTM,DBRTP EXT .ENTR,AVLM SUP * PARS BSS 0 DBBUF NOP JSB .ENTR DEF PARS JMP DBBUF,I * * Run Table pointer table * DBRTP DEF *+1 REP 20 NOP DBRTM DEC 20 * * Storage for current Run Table address * AIRUN NOP * * DCB pointer table * DBDCP DEF *+1 REP 34 NOP DBDCT NOP DBDMX DEC 17 DBDSZ DEC 272 * * Record buffer pointer * DBRBP DEC -1 * * Record buffer length * DBRBL NOP END