The LBR$MAP_MODULE routine maps a module into process P2 space. Format LBR$MAP_MODULE library_index, ret_va_addr, ret_mod_len, txtrfa
1 – Arguments
library_index OpenVMS usage:longword_unsigned type: longword (unsigned) access: read only mechanism: by reference Library control index returned by the LBR$INI_CONTROL library routine. The library_index argument is the address of the longword that contains the index. ret_va_addr OpenVMS usage:address type: quadword address access: write only mechanism: by 32-bit or 64-bit reference The 32-bit or 64-bit virtual address of a naturally aligned quadword into which the routine returns the virtual address at which the routine mapped the library module. ret_mod_len OpenVMS usage:byte_count type: quadword (unsigned) access: read only mechanism: by reference The address of a naturally aligned quadword into which the library routine returns the module length. txtrfa OpenVMS usage:vector_longword_unsigned type: longword (unsigned) access: read only mechanism: by reference The module's record file address (RFA) of the library module header. The txtrfa argument is the address of the 2-longword array that specifies the RFA of the module header.
2 – Description
This routine maps a module, with the given txtrfa, into process P2 memory space and returns the virtual address where the module is mapped and the module size. Unlike other LBR services that use RMS services, LBR$MAP_MODULE also uses system services. Because of this, the secondary status for error returns is placed in LBR$$GL_SUBSTS. Use this secondary status to find additional status when an error is returned.