; ; dllblock.sh ; ; Definition of a Dynamic Link Library header ; ; © 1994-1998 Straylight ; ;----- Licensing note ------------------------------------------------------- ; ; This file is part of Straylight's Dynamic Linking System (SDLS) ; ; SDLS is free software; you can redistribute it and/or modify ; it under the terms of the GNU General Public License as published by ; the Free Software Foundation; either version 2, or (at your option) ; any later version. ; ; SDLS is distributed in the hope that it will be useful, ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; GNU General Public License for more details. ; ; You should have received a copy of the GNU General Public License ; along with SDLS. If not, write to the Free Software Foundation, ; 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. dl_MAGIC EQU &004C4C44 ;The magic file number dl_VERSION EQU 101 ;The format version known ^ 0 ;Start at 0! dl_next # 4 ;Link to next DLL dl_prev # 4 ;Link to previous DLL dl_wspace # 0 ;Workspace for non-shared DLL dl_clients # 4 ;Number of DLL clients dl_shared # 4 ;DLL's shared workspace ptr dl_extra # 0 ;Size of extra info ; Note that dl_wspace and dl_clients share the same address. dl_wspace is ; present if and only if dl_next==-1. This is set up by DLL_Load as ; necessary. Also, the top bit of the clients field is used to indicate ; that the count is `tentative' -- i.e. that all the associated DLLs have not ; been found yet. dl_magic # 4 ;Magic DLL identification dl_bversion # 4 ;Version number of binder dl_name # 4 ;Address of DLL name string dl_copyright # 4 ;Address of copyright string dl_version # 4 ;DLL's version number dl_relocate # 4 ;Branch to relocation code dl_stubs # 4 ;Offset of CLib entry points dl_entries # 4 ;Number of entry points dl_enames # 4 ;Names of the entry points dl_eveneer # 4 ;Entry points of the veneers dl_dllBase # 4 ;Base of external DLL defs dl_dllLimit # 4 ;Limit of external DLL defs dl_instBase # 4 ;Base of DLL instance defs dl_instLimit # 4 ;Limit of DLL instance defs ; --- Extra bits added in file format version 1.01 --- dl_zinitBase # 4 ;Pointer to zero-init base dl_zinitLimit # 4 ;Pointer to zero-init limit dl_appStubs # 4 ;Pointer to app entry stubs dl_appStubNames # 4 ;Pointer to app name table dl_strSize # 0 ;Size of this structure dl_tentative EQU &80000000 ;Tentative flag value ; --- DLL entry point type bits, added in file format 1.01a --- dl_shortEntries EQU (1<<31) ;Short non-APCS entry points dl_noNames EQU (1<<30) ;Name table is omitted END