home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 6 File / 06-File.zip / ramfs102.zip / src / patch / ldrmte.h < prev    next >
Encoding:
C/C++ Source or Header  |  2002-10-20  |  3.4 KB  |  100 lines

  1. /* $Id: ldrmte.h,v 1.1.2.1 2002/10/21 00:11:39 root Exp $ */
  2.  
  3. /* OS/2 loader structures - derived from various SDF files */
  4.  
  5. #ifndef LDRMTE_INCLUDED
  6. #define LDRMTE_INCLUDED
  7.  
  8. /* Swappable Module Table Entry */
  9.  
  10. struct ldrsmte_s
  11. {
  12.  ulong_t smte_mpages;                   /* 0x00 */
  13.  ulong_t smte_startobj;                 /* 0x04 */
  14.  ulong_t smte_eip;                      /* 0x08 */
  15.  ulong_t smte_stackobj;                 /* 0x0c */
  16.  ulong_t smte_esp;                      /* 0x10 */
  17.  ulong_t smte_pageshift;                /* 0x14 */
  18.  ulong_t smte_fixupsize;                /* 0x18 */
  19.  ulong_t smte_objtab;                   /* 0x1c */
  20.  ulong_t smte_objcnt;                   /* 0x20 */
  21.  ulong_t smte_objmap;                   /* 0x24 */
  22.  ulong_t smte_itermap;                  /* 0x28 */
  23.  ulong_t smte_rsrctab;                  /* 0x2c */
  24.  ulong_t smte_rsrccnt;                  /* 0x30 */
  25.  ulong_t smte_restab;                   /* 0x34 */
  26.  ulong_t smte_enttab;                   /* 0x38 */
  27.  ulong_t smte_fpagetab;                 /* 0x3c */
  28.  ulong_t smte_frectab;                  /* 0x40 */
  29.  ulong_t smte_impmod;                   /* 0x44 */
  30.  ulong_t smte_impproc;                  /* 0x48 */
  31.  ulong_t smte_datapage;                 /* 0x4c */
  32.  ulong_t smte_nrestab;                  /* 0x50 */
  33.  ulong_t smte_cbnrestab;                /* 0x54 */
  34.  ulong_t smte_autods;                   /* 0x58 */
  35.  ulong_t smte_debuginfo;                /* 0x5c */
  36.  ulong_t smte_debuglen;                 /* 0x60 */
  37.  ulong_t smte_heapsize;                 /* 0x64 */
  38.  ulong_t smte_path;                     /* 0x68 */
  39.  ushort_t smte_semcount;                /* 0x6c */
  40.  ushort_t smte_semowner;                /* 0x6e */
  41.  ulong_t smte_pfilecache;               /* 0x70 */
  42.  ulong_t smte_stacksize;                /* 0x74 */
  43.  ushort_t smte_alignshift;              /* 0x78 */
  44.  ushort_t smte_NEexpver;                /* 0x7a */
  45.  ushort_t smte_pathlen;                 /* 0x7c */
  46.  ushort_t smte_NEexetype;               /* 0x7e */
  47.  ushort_t smte_csegpack;                /* 0x80 */
  48. #ifdef AURORA
  49.  uchar_t smte_major_os;                 /* 0x82 */
  50.  uchar_t smte_minor_os;                 /* 0x83 */
  51. #endif
  52. };
  53.  
  54. #ifdef XR_M006
  55.  
  56. /* RAS MTE entry */
  57.  
  58. struct ldrRAS_s
  59. {
  60.  ulong_t RASmte_objtab;                 /* 0x00 */
  61.  ulong_t RASmte_objcnt;                 /* 0x04 */
  62.  ulong_t RASmte_rsrccnt;                /* 0x08 */
  63. };
  64.  
  65. #endif
  66.  
  67. /* Object Table Entry */
  68.  
  69. struct ldrote_s
  70. {
  71.  ulong_t ote_size;                      /* 0x00 */
  72.  ulong_t ote_base;                      /* 0x04 */
  73.  ulong_t ote_flags;                     /* 0x08 */
  74.  ulong_t ote_pagemap;                   /* 0x0c */
  75.  ulong_t ote_mapsize;                   /* 0x10 */
  76.  unsigned long reserved;                /* 0x14 - seems to be a union */
  77. };
  78.  
  79.  
  80. /* Module Table Entry */
  81.  
  82. struct ldrmte_s
  83. {
  84.  ushort_t mte_flags2;                   /* 0x00 */
  85.  ushort_t mte_handle;                   /* 0x02 */
  86.  struct ldrsmte_s *mte_swapmte;         /* 0x04 */
  87.  struct ldrmte_s *mte_link;             /* 0x08 */
  88.  ulong_t mte_flags1;                    /* 0x0c */
  89.  ulong_t mte_impmodcnt;                 /* 0x10 */
  90.  ushort_t mte_sfn;                      /* 0x14 */
  91.  ushort_t mte_usecnt;                   /* 0x16 */
  92.  char mte_modname[8];                   /* 0x18 */
  93. #ifdef XR_M006
  94.  struct ldrRAS_s *mte_RAS;              /* 0x20 */
  95.  ulong_t mte_modver;                    /* 0x24 */
  96. #endif
  97. };
  98.  
  99. #endif
  100.