Ignore:
Timestamp:
Nov 10, 1999, 2:45:38 AM (26 years ago)
Author:
bird
Message:

Some bugsfixes - Yield is disabled.
Added parameters.
Correcte moduleheaders.
Introduced a new base class for virtual lx modules + some elf sketches.

Location:
trunk/src/win32k/include
Files:
2 added
21 edited

Legend:

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

    r847 r1678  
    1 /* $Id: LdrCalls.h,v 1.1 1999-09-06 02:19:58 bird Exp $
     1/* $Id: LdrCalls.h,v 1.2 1999-11-10 01:45:32 bird Exp $
    22 *
    33 * Prototypes for the loader overrided function.
    44 *
    55 * Copyright (c) 1998-1999 knut st. osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
  • trunk/src/win32k/include/OS2Krnl.h

    r1467 r1678  
    1 /* $Id: OS2Krnl.h,v 1.2 1999-10-27 02:02:55 bird Exp $
     1/* $Id: OS2Krnl.h,v 1.3 1999-11-10 01:45:31 bird Exp $
    22 *
    33 * OS/2 kernel structures, typedefs and macros.
     4 *
     5 * Project Odin Software License can be found in LICENSE.TXT
    46 *
    57 */
  • trunk/src/win32k/include/asmutils.h

    r1467 r1678  
    1 /* $Id: asmutils.h,v 1.2 1999-10-27 02:02:55 bird Exp $
     1/* $Id: asmutils.h,v 1.3 1999-11-10 01:45:32 bird Exp $
    22 *
    33 * Assembly utilities.
    44 *
    55 * Copyright (c) 1998-1999 knut st. osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
  • trunk/src/win32k/include/cout.h

    r1467 r1678  
    1 /* $Id: cout.h,v 1.2 1999-10-27 02:02:55 bird Exp $
     1/* $Id: cout.h,v 1.3 1999-11-10 01:45:32 bird Exp $
    22 *
    33 * cout - cout replacement.
    44 *
    55 * Copyright (c) 1998-1999 knut st. osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
  • trunk/src/win32k/include/dev16.h

    r1467 r1678  
    1 /* $Id: dev16.h,v 1.2 1999-10-27 02:02:56 bird Exp $
     1/* $Id: dev16.h,v 1.3 1999-11-10 01:45:32 bird Exp $
    22 * dev16 - 16-bit specific. Should not be used in 32-bit C/C++.
    33 *
    44 * Copyright (c) 1999 knut st. osmundsen
     5 *
     6 * Project Odin Software License can be found in LICENSE.TXT
    57 *
    68 */
  • trunk/src/win32k/include/dev32.h

    r1467 r1678  
    1 /* $Id: dev32.h,v 1.3 1999-10-27 02:02:56 bird Exp $
     1/* $Id: dev32.h,v 1.4 1999-11-10 01:45:32 bird Exp $
    22 *
    33 * dev32 - header file for 32-bit part of the driver.
    44 *
    55 * Copyright (c) 1999 knut st. osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
  • trunk/src/win32k/include/dev32hlp.h

    r1535 r1678  
    1 /* $Id: dev32hlp.h,v 1.2 1999-10-31 23:57:03 bird Exp $
     1/* $Id: dev32hlp.h,v 1.3 1999-11-10 01:45:32 bird Exp $
    22 *
    33 * Dev32Hlp - 32-bit Device helpers.
    44 *
    55 * Copyright (c) 1999 knut st. osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
  • trunk/src/win32k/include/devSegDf.inc

    r1467 r1678  
    1 ; $Id: devSegDf.inc,v 1.2 1999-10-27 02:02:56 bird Exp $
     1; $Id: devSegDf.inc,v 1.3 1999-11-10 01:45:32 bird Exp $
    22;
    33; Segment definitions for win32k.sys.
    44;
    55; Copyright (c) 1998-1999 knut st. osmundsen
     6;
     7; Project Odin Software License can be found in LICENSE.TXT
    68;
    79
  • trunk/src/win32k/include/elf.h

    r1270 r1678  
    1 /* $Id: elf.h,v 1.1 1999-10-14 01:17:55 bird Exp $
     1/* $Id: elf.h,v 1.2 1999-11-10 01:45:32 bird Exp $
    22 *
    33 * ELF stuff.
    44 *
    55 * Copyright (c) 1999 knut st. osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
  • trunk/src/win32k/include/ldr.h

    r1467 r1678  
    1 /* $Id: ldr.h,v 1.3 1999-10-27 02:02:56 bird Exp $
     1/* $Id: ldr.h,v 1.4 1999-11-10 01:45:32 bird Exp $
    22 *
    33 * ldr - loader header file.
    44 *
    55 * Copyright (c)  1999 knut  St.  osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
     
    4547            union
    4648            {
     49                ModuleBase *pModule;    /* Pointer to a Pe2Lx object. (Win32 executables) */
     50                #if defined(_PE2LX_H_)
    4751                Pe2Lx *     pPe2Lx;     /* Pointer to a Pe2Lx object. (Win32 executables) */
    48                 #if 0
     52                #endif
     53                #if defined(_ELF2LX_H_)
    4954                Elf2Lx *    pElf2Lx;    /* Pointer to a Elf2Lx object. (ELF executables) */
     55                #endif
     56                #if defined(_SCRIPT_H_)
    5057                Script *    pScript;    /* Pointer to a Script object. (Shell scripts) */
     58                #endif
     59                #if defined(_PE_H_)
    5160                Pe *        pPe;        /* Pointer to a Pe object. (Ring3 loader) */
    5261                #endif
    53                 void *      pv;
    5462            } Data;                     /* Pointer to data. Currently it's allways a Pe2Lx object! */
    5563        } MODULE, *PMODULE;
     
    7078        PMODULE     getModuleByFilename(PCSZ pszFilename);
    7179
    72         ULONG       addModule(SFN hFile, PMTE pMTE, ULONG fFlags, void *pData);
     80        ULONG       addModule(SFN hFile, PMTE pMTE, ULONG fFlags, ModuleBase *pModObj);
    7381        ULONG       removeModule(SFN hFile);
    7482
  • trunk/src/win32k/include/malloc.h

    r1535 r1678  
    1 /* $Id: malloc.h,v 1.4 1999-10-31 23:57:04 bird Exp $
     1/* $Id: malloc.h,v 1.5 1999-11-10 01:45:32 bird Exp $
    22 *
    33 * Heap.
     
    77 *
    88 * Copyright (c) 1999 knut st. osmundsen
     9 *
     10 * Project Odin Software License can be found in LICENSE.TXT
    911 *
    1012 */
  • trunk/src/win32k/include/new.h

    r1269 r1678  
    1 /* $Id: new.h,v 1.2 1999-10-14 01:16:50 bird Exp $
     1/* $Id: new.h,v 1.3 1999-11-10 01:45:32 bird Exp $
    22 *
    33 * new - new and delete operators.
    44 *
    55 * Copyright (c) 1998-1999 knut st. osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
  • trunk/src/win32k/include/omf.h

    r847 r1678  
    1 /* $Id: omf.h,v 1.1 1999-09-06 02:19:59 bird Exp $ */
     1/* $Id: omf.h,v 1.2 1999-11-10 01:45:33 bird Exp $ */
    22/*
    33 * OMF stuff
    44 *
    55 * Copyright (c) 1999 knut st. osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
  • trunk/src/win32k/include/options.h

    r1535 r1678  
    1 /* $Id: options.h,v 1.3 1999-10-31 23:57:04 bird Exp $
     1/* $Id: options.h,v 1.4 1999-11-10 01:45:33 bird Exp $
    22 *
    33 * Options.
     
    4646            o.fScript     = FALSE;          \
    4747            o.fNoLoader   = FALSE;          \
    48             o.cbHeap      = 0x100000; /* 1MB */
     48            o.cbHeap      = 0x100000; /* 1MB */ \
     49            o.cbHeapMax   = 0x100000; /* 1MB */ \
     50            o.cbHeapResident    = 0x10000; /* 64KB */ \
     51            o.cbHeapMaxResident = 0x1000;  /* 4KB */ \
    4952
    5053
     
    8386    /** @cat Options affecting the heap. */
    8487    ULONG       cbHeap;             /* Initial heapsize. */
    85     #if 0
    8688    ULONG       cbHeapMax;          /* Maximum heapsize. */
    8789    ULONG       cbHeapResident;     /* Initial residentheapsize. */
    8890    ULONG       cbHeapMaxResident;  /* Maxiumem residentheapsize. */
    89     #endif
    9091};
    9192
  • trunk/src/win32k/include/pe2lx.h

    r1467 r1678  
    1 /* $Id: pe2lx.h,v 1.5 1999-10-27 02:02:57 bird Exp $
     1/* $Id: pe2lx.h,v 1.6 1999-11-10 01:45:33 bird Exp $
    22 *
    33 * Pe2Lx class declarations. Ring 0 and Ring 3
     
    1818*******************************************************************************/
    1919/*
    20  * Misc
    21  */
    22 #define PAGESIZE                    0x1000
    23 
    24 /*
    2520 * BufferedRVAReader config
    2621 */
    2722#define BUFFEREDRVAREADER_BUFFERSIZE PAGESIZE   /* reader code assumes this size... */
    28 
    29 
    30 /*
    31  * Error definitions (used in addition to them in bseerr.h)
    32  */
    33 #define ERROR_FAILED_TO_ADD_OBJECT          0x42000000UL
    34 #define ERROR_INITMETHOD_NOT_INITTIME       0x42000001UL
    35 #define ERROR_INTERNAL_PROCESSING_ERROR     0x42000002UL
    36 
    37 
    38 /*
    39  * Output macros.
    40  * Macros:          option   infolevel
    41  *      printIPE    -W1      Error
    42  *      printErr    -W1      Error
    43  *      printWar    -W2      Warning
    44  *      printInf    -W3      Info
    45  *      printInfA   -W4      InfoAll
    46  */
    47 #define printIPE(a) (Pe2Lx::ulInfoLevel >= Pe2Lx::Error ? \
    48                      Pe2Lx::printf("\nerror(%d:"__FUNCTION__"): !Internal Processing Error!\n\t", __LINE__), \
    49                      Pe2Lx::printf a,  \
    50                      Pe2Lx::printf("\n")  \
    51                      : (void)0,(void)0,(void)0 )
    52 #define printErr(a) (Pe2Lx::ulInfoLevel >= Pe2Lx::Error ? \
    53                      Pe2Lx::printf("error(%d:"__FUNCTION__"): ", __LINE__), \
    54                      Pe2Lx::printf a  \
    55                      : (void)0,(void)0 )
    56 #define printWar(a) (Pe2Lx::ulInfoLevel >= Pe2Lx::Warning ? \
    57                      Pe2Lx::printf("warning("__FUNCTION__"): "), \
    58                      Pe2Lx::printf a  \
    59                      : (void)0,(void)0 )
    60 #define printInf(a) (Pe2Lx::ulInfoLevel >= Pe2Lx::Info ? \
    61                      Pe2Lx::printf a : (void)0 )
    62 #define printInfA(a)(Pe2Lx::ulInfoLevel >= Pe2Lx::InfoAll ? \
    63                      Pe2Lx::printf a : (void)0 )
    6423
    6524
     
    9756 * @approval    knut st. osmundsen
    9857 */
    99 class Pe2Lx
     58class Pe2Lx : public ModuleBase
    10059{
    10160public:
     
    11271
    11372    /** @cat public Helper methods */
    114     BOOL   queryIsModuleName(PCSZ pszFilename);
    11573    ULONG  querySizeOfLxFile();
    11674    VOID   dumpVirtualLxFile();
    117 
    11875
    11976private:
     
    165122    static VOID dumpSectionHeader(PIMAGE_SECTION_HEADER pSection);
    166123
    167     /** @cat static print method */
    168 public:
    169     static VOID printf(PCSZ pszFormat, ...);
    170 
    171124private:
    172125    /** @cat private data members - allways present.  */
    173     #ifdef DEBUG
    174     BOOL        fInitTime;              /* init time indicator (debug) */
    175     #endif
    176     SFN         hFile;                  /* filehandle */
    177     PSZ         pszFilename;            /* fullpath */
    178     PSZ         pszModuleName;          /* filename without extention. */
    179126    BOOL        fAllInOneObject;        /* The All-in-object fix will be or is applied. */
    180127    PLXOBJECT   paObjects;              /* Pointer to object array. */
     
    241188        ULONG flFlags;                      /* equivalent object flags */
    242189    } paSecChars2Flags[];
    243 
    244 public:
    245     static ULONG ulInfoLevel;                    /* Current output message detail level. */
    246     enum {Quiet, Error, Warning, Info, InfoAll}; /* Output message detail levels. */
    247190};
    248191
  • trunk/src/win32k/include/probkrnl.h

    r1467 r1678  
    1 /* $Id: probkrnl.h,v 1.2 1999-10-27 02:02:57 bird Exp $
     1/* $Id: probkrnl.h,v 1.3 1999-11-10 01:45:33 bird Exp $
    22 *
    33 * Include file for ProbKrnl.
    44 *
    55 * Copyright (c) 1998-1999 knut st. osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
  • trunk/src/win32k/include/sprintf.h

    r847 r1678  
    1 /* $Id: sprintf.h,v 1.1 1999-09-06 02:19:59 bird Exp $
     1/* $Id: sprintf.h,v 1.2 1999-11-10 01:45:33 bird Exp $
    22 *
    33 * sprintf/vsprintf header file.
    44 *
    55 * Copyright (c) 1999 knut st. osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
  • trunk/src/win32k/include/sym.h

    r847 r1678  
    1 /* $Id: sym.h,v 1.1 1999-09-06 02:19:59 bird Exp $
     1/* $Id: sym.h,v 1.2 1999-11-10 01:45:34 bird Exp $
    22 *
    33 * Sym-file definitions and structs.
     4 *
     5 * Project Odin Software License can be found in LICENSE.TXT
    46 *
    57 */
  • trunk/src/win32k/include/types.h

    r847 r1678  
    1 /* $Id: types.h,v 1.1 1999-09-06 02:20:00 bird Exp $
     1/* $Id: types.h,v 1.2 1999-11-10 01:45:34 bird Exp $
    22 *
    33 * Common typedeclarations.
    44 *
    55 * Copyright (c) 1999 knut st. osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
  • trunk/src/win32k/include/vprintf.h

    r1270 r1678  
    1 /* $Id: vprintf.h,v 1.1 1999-10-14 01:17:56 bird Exp $
     1/* $Id: vprintf.h,v 1.2 1999-11-10 01:45:34 bird Exp $
    22 *
    33 * printf/vprintf header file.
    44 *
    55 * Copyright (c) 1999 knut st. osmundsen
     6 *
     7 * Project Odin Software License can be found in LICENSE.TXT
    68 *
    79 */
     
    2426int printf(const char *pszFormat, ...);
    2527int vprintf(const char *pszFormat, va_list args);
     28int vprintf2(const char *pszFormat, va_list args);
    2629
    2730/*
  • trunk/src/win32k/include/yield.h

    r1535 r1678  
    1 /* $Id: yield.h,v 1.2 1999-10-31 23:57:05 bird Exp $
     1/* $Id: yield.h,v 1.3 1999-11-10 01:45:34 bird Exp $
    22 *
    33 * Yield - conversion may take some time. So it is necessary to
     
    55 *
    66 * Copyright (c) 1998-1999 knut st. osmundsen
     7 *
     8 * Project Odin Software License can be found in LICENSE.TXT
    79 *
    810 */
     
    1820    BOOL Yield(void);
    1921#else
    20     #define Yield() FALSE
     22    #define Yield() (DosSleep(0) == NO_ERROR)
    2123#endif
    2224
Note: See TracChangeset for help on using the changeset viewer.