Ignore:
Timestamp:
Feb 20, 2000, 12:52:00 AM (26 years ago)
Author:
bird
Message:

Partly finished 16-bit import code++.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/win32k/include/probkrnl.h

    r2827 r2831  
    1 /* $Id: probkrnl.h,v 1.7 2000-02-19 08:40:30 bird Exp $
     1/* $Id: probkrnl.h,v 1.8 2000-02-19 23:52:00 bird Exp $
    22 *
    33 * Include file for ProbKrnl.
     
    1616*   Defined Constants And Macros                                               *
    1717*******************************************************************************/
    18 #define NUMBER_OF_PROCS      14
    19 #define MAX_LENGTH_NAME      32
     18#define NBR_OF_KRNLIMPORTS      16      /* When this is changed make sure to   */
     19                                        /* update the arrays in d32init.c and  */
     20                                        /* probkrnl32.c */
     21#define MAX_LENGTH_NAME         32      /* Max length for the function. */
    2022
    21 /* entry-point type flag */
    22 #define EPT_PROC              0 /* procedure - overload procedure*/
    23 #define EPT_PROCIMPORT        1 /* procedure - import only */
    24 #define EPT_VAR               2 /* variable/non-procedure - not implemented yet */
     23/* Entry-Point Type flag */
     24#define EPT_PROC                0x00    /* procedure - overload procedure*/
     25#define EPT_PROCIMPORT          0x01    /* procedure 32bit - import only */
     26#define EPT_VARIMPORT           0x02    /* variable/non-procedure 32bit - not implemented yet */
     27#define EPT_32BIT               0x00    /* 16 bit entry-point  */
     28#define EPT_16BIT               0x80    /* 32 bit entry-point */
     29#define EPT_BIT_MASK            0x80    /* Mask bit entry-point */
     30#define EPT16BitEntry(a)    (((a).fType & EPT_BIT_MASK) == EPT_16BIT)
     31#define EPT32BitEntry(a)    (((a).fType & EPT_BIT_MASK) == EPT_32BIT)
     32
     33/* 32bit types */
     34#define EPT_PROC32              (EPT_PROC | EPT_32BIT)
     35#define EPT_PROCIMPORT32        (EPT_PROCIMPORT | EPT_32BIT)
     36
     37/* 16bit types */
     38#define EPT_PROC16              (EPT_PROC | EPT_16BIT)        /* no implemented yet! */
     39#define EPT_PROCIMPORT16        (EPT_PROCIMPORT | EPT_16BIT)  /* far proc in calltab with a far jmp. */
    2540
    2641
     
    2944*******************************************************************************/
    3045#pragma pack(1)
    31 typedef struct tagPROCS
     46typedef struct tagIMPORTKRNLSYM
    3247{
    33    unsigned char       fFound;
    34    unsigned char       iObject;
    35    unsigned short int  cchName;
    36    unsigned char       achName[MAX_LENGTH_NAME];
    37    unsigned long  int  offObject;
    38    unsigned long  int  ulAddress;
    39    unsigned char       fType;
    40 } PROCS;
     48   unsigned char       fFound;          /* This is set when name is found */
     49   unsigned char       iObject;         /* Object number the name was found in*/
     50   unsigned short int  cchName;         /* Length of the name (optmize search) (INPUT) */
     51   unsigned char       achName[MAX_LENGTH_NAME]; /* Name (INPUT) */
     52   unsigned long  int  offObject;       /* Offset into the object */
     53   unsigned long  int  ulAddress;       /* 32-bit flat address */
     54   unsigned short int  usSel;           /* Select of the object */
     55   unsigned char       fType;           /* Entry-Point Type Flags */
     56} IMPORTKRNLSYM;
    4157#pragma pack()
    4258
     
    4763*   NOTE! These are only available at init time!                               *
    4864*******************************************************************************/
    49 extern PROCS _aProcTab[NUMBER_OF_PROCS];    /* 'aProcTab'        in PrbKrnl.c */
    50 extern unsigned long int  _ulBuild;         /* 'ulBuild'         in PrbKrnl.c */
    51 extern unsigned short int _usVerMajor;      /* 'usVerMajor'      in PrbKrnl.c */
    52 extern unsigned short int _usVerMinor;      /* 'usVerMinor'      in PrbKrnl.c */
     65extern IMPORTKRNLSYM _aImportTab[NBR_OF_KRNLIMPORTS]; /* 'aImportTab' in PrbKrnl.c */
     66extern unsigned long int  _ulBuild;     /* 'ulBuild'         in PrbKrnl.c */
     67extern unsigned short int _usVerMajor;  /* 'usVerMajor'      in PrbKrnl.c */
     68extern unsigned short int _usVerMinor;  /* 'usVerMinor'      in PrbKrnl.c */
    5369
    5470#ifdef INCL_16 /* 16-bit only */
Note: See TracChangeset for help on using the changeset viewer.