Changeset 4068 for branches/GRACE/src


Ignore:
Timestamp:
Aug 22, 2000, 5:00:22 AM (25 years ago)
Author:
bird
Message:

More code is completed.
Test stuff is broken. (Missing fake functions/variables for the new functions.)

Location:
branches/GRACE/src/win32k
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • branches/GRACE/src/win32k/Makefile

    r4017 r4068  
    11################################################################################
    2 # $Id: Makefile,v 1.43.4.4 2000-08-15 06:15:55 bird Exp $
     2# $Id: Makefile,v 1.43.4.5 2000-08-22 03:00:16 bird Exp $
    33#
    44# Win32k makefile.
     
    343343    $(WIN32KOBJ)\d32Win32kIOCtl.obj \
    344344    $(WIN32KOBJ)\k32AllocMemEx.obj \
    345     $(WIN32KOBJ)\mytkExecPgm.obj
     345    $(WIN32KOBJ)\mytkExecPgm.obj\
     346    $(WIN32KOBJ)\mytkStartProcess.obj
    346347
    347348
  • branches/GRACE/src/win32k/dev16/probkrnl.c

    r4065 r4068  
    1 /* $Id: probkrnl.c,v 1.20.4.8 2000-08-21 22:59:34 bird Exp $
     1/* $Id: probkrnl.c,v 1.20.4.9 2000-08-22 03:00:16 bird Exp $
    22 *
    33 * Description:   Autoprobes the os2krnl file and os2krnl[*].sym files.
     
    103103    {FALSE, -1, 11, "_VMGetOwner",          -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 12 */
    104104    {FALSE, -1, 11, "g_tkExecPgm",          -1,  -1,  -1,  -1, EPT_PROC32},        /* 13 */
    105     {FALSE, -1, 11, "f_FuStrLenZ",          -1,  -1,  -1,  -1, EPT_PROCIMPORT16},  /* 14 */
    106     {FALSE, -1, 10, "f_FuStrLen",           -1,  -1,  -1,  -1, EPT_PROCIMPORT16},  /* 15 */
    107     {FALSE, -1,  8, "f_FuBuff",             -1,  -1,  -1,  -1, EPT_PROCIMPORT16},  /* 16 */
    108     {FALSE, -1, 16, "_VMObjHandleInfo",     -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 17 */
    109     {FALSE, -1, 18, "_VMPseudoHandleMap",   -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 18 */
    110     {FALSE, -1, 12, "_ldrOpenPath",         -1,  -1,  -1,  -1, EPT_PROC32},        /* 19 */
    111     {FALSE, -1, 12, "_LDRClearSem",         -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 20 */
    112     {FALSE, -1, 14, "_ldrFindModule",       -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 21 */
    113     {FALSE, -1, 17, "_KSEMRequestMutex",    -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 22 */
    114     {FALSE, -1, 17, "_KSEMReleaseMutex",    -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 23 */
    115     {FALSE, -1,  7, "_LdrSem",              -1,  -1,  -1,  -1, EPT_VARIMPORT32},   /* 24 */
    116     {FALSE, -1, 11, "_LDRLibPath",          -1,  -1,  -1,  -1, EPT_VARIMPORT32},   /* 25 */
    117     {FALSE, -1,  9, "_TKSuBuff",            -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 26 */
    118     {FALSE, -1,  9, "_TKFuBuff",            -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 27 */
    119     {FALSE, -1, 11, "_TKFuBufLen",          -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 28 */
    120     {FALSE, -1, 21, "_ldrValidateMteHandle",-1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 29 */
    121     {FALSE, -1,  8, "_pTCBCur",             -1,  -1,  -1,  -1, EPT_VARIMPORT16},   /* 30 */
    122     {FALSE, -1,  9, "_pPTDACur",            -1,  -1,  -1,  -1, EPT_VARIMPORT16},   /* 31 */
    123     {FALSE, -1, 10, "ptda_start",           -1,  -1,  -1,  -1, EPT_VARIMPORT16},   /* 32 */
    124     {FALSE, -1, 12, "ptda_environ",         -1,  -1,  -1,  -1, EPT_VARIMPORT16},   /* 33 */
    125     {FALSE, -1, 11, "ptda_module",          -1,  -1,  -1,  -1, EPT_VARIMPORT16},   /* 34 */
    126     {FALSE, -1, 18, "ptda_pBeginLIBPATH",   -1,  -1,  -1,  -1, EPT_VARIMPORT16},   /* 35 */
    127     {FALSE, -1, 16, "_ldrpFileNameBuf",     -1,  -1,  -1,  -1, EPT_VARIMPORT32},   /* 36 */
     105    {FALSE, -1, 16, "g_tkStartProcess",     -1,  -1,  -1,  -1, EPT_PROC32},        /* 14 */
     106    {FALSE, -1, 11, "f_FuStrLenZ",          -1,  -1,  -1,  -1, EPT_PROCIMPORT16},  /* 15 */
     107    {FALSE, -1, 10, "f_FuStrLen",           -1,  -1,  -1,  -1, EPT_PROCIMPORT16},  /* 16 */
     108    {FALSE, -1,  8, "f_FuBuff",             -1,  -1,  -1,  -1, EPT_PROCIMPORT16},  /* 17 */
     109    {FALSE, -1, 16, "_VMObjHandleInfo",     -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 18 */
     110    {FALSE, -1, 18, "_VMPseudoHandleMap",   -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 19 */
     111    {FALSE, -1, 12, "_ldrOpenPath",         -1,  -1,  -1,  -1, EPT_PROC32},        /* 20 */
     112    {FALSE, -1, 12, "_LDRClearSem",         -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 21 */
     113    {FALSE, -1, 14, "_ldrFindModule",       -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 22 */
     114    {FALSE, -1, 17, "_KSEMRequestMutex",    -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 23 */
     115    {FALSE, -1, 17, "_KSEMReleaseMutex",    -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 24 */
     116    {FALSE, -1, 15, "_KSEMQueryMutex",      -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 25 */
     117    {FALSE, -1,  9, "_KSEMInit",            -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 26 */
     118    {FALSE, -1,  7, "_LdrSem",              -1,  -1,  -1,  -1, EPT_VARIMPORT32},   /* 27 */
     119    {FALSE, -1, 11, "_LDRLibPath",          -1,  -1,  -1,  -1, EPT_VARIMPORT32},   /* 28 */
     120    {FALSE, -1,  9, "_TKSuBuff",            -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 29 */
     121    {FALSE, -1,  9, "_TKFuBuff",            -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 30 */
     122    {FALSE, -1, 11, "_TKFuBufLen",          -1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 31 */
     123    {FALSE, -1, 21, "_ldrValidateMteHandle",-1,  -1,  -1,  -1, EPT_PROCIMPORT32},  /* 32 */
     124    {FALSE, -1,  8, "_pTCBCur",             -1,  -1,  -1,  -1, EPT_VARIMPORT16},   /* 33 */
     125    {FALSE, -1,  9, "_pPTDACur",            -1,  -1,  -1,  -1, EPT_VARIMPORT16},   /* 34 */
     126    {FALSE, -1, 10, "ptda_start",           -1,  -1,  -1,  -1, EPT_VARIMPORT16},   /* 35 */
     127    {FALSE, -1, 12, "ptda_environ",         -1,  -1,  -1,  -1, EPT_VARIMPORT16},   /* 36 */
     128    {FALSE, -1, 11, "ptda_module",          -1,  -1,  -1,  -1, EPT_VARIMPORT16},   /* 37 */
     129    {FALSE, -1, 18, "ptda_pBeginLIBPATH",   -1,  -1,  -1,  -1, EPT_VARIMPORT16},   /* 38 */
     130    {FALSE, -1, 16, "_ldrpFileNameBuf",     -1,  -1,  -1,  -1, EPT_VARIMPORT32},   /* 39 */
    128131
    129132};
     
    16671670        int         i;
    16681671
    1669         printf16("/* $Id: probkrnl.c,v 1.20.4.8 2000-08-21 22:59:34 bird Exp $\n"
     1672        printf16("/* $Id: probkrnl.c,v 1.20.4.9 2000-08-22 03:00:16 bird Exp $\n"
    16701673                 "*\n"
    16711674                 "* Autogenerated kernel symbol database.\n"
  • branches/GRACE/src/win32k/include/LdrCalls.h

    r4065 r4068  
    1 /* $Id: LdrCalls.h,v 1.3.4.5 2000-08-21 22:59:38 bird Exp $
     1/* $Id: LdrCalls.h,v 1.3.4.6 2000-08-22 03:00:19 bird Exp $
    22 *
    33 * Prototypes for the loader overrided function.
     
    192192 *            OS2 errorcode on failure. (ERROR_INTERRUPT?)
    193193 */
    194 #define LDRRequestSem()   KSEMRequestMutex((HKMTX)pLdrSem, (ULONG)-1)
     194#define LDRRequestSem()   KSEMRequestMutex(pLdrSem, (ULONG)-1)
    195195
    196196
     
    199199 */
    200200#ifdef _OS2KSEM_h_
    201 extern HKMTX *  pLdrSem;
     201extern PKSEMMTX    pLdrSem;
    202202#endif
    203203
  • branches/GRACE/src/win32k/include/OS2KSEM.h

    r3829 r4068  
    1 /* $Id: OS2KSEM.h,v 1.1 2000-07-16 22:21:19 bird Exp $
     1/* $Id: OS2KSEM.h,v 1.1.2.1 2000-08-22 03:00:18 bird Exp $
    22 *
    33 * OS/2 kernel Semaphore functions.
     
    1616*   Defined Constants And Macros                                               *
    1717*******************************************************************************/
    18 #define KSEM_INDEFINITE_WAIT     -1L
    19 #define KSEM_IMMEDIATE_RETURN     0L
     18#define KSEM_INDEFINITE_WAIT       -1L
     19#define KSEM_IMMEDIATE_RETURN       0L
     20
     21/*
     22 * Semaphore type. ( Used with the generic KSEM routines. )
     23 */
     24#define KSEM_EVENT                  0
     25#define KSEM_MUTEX                  1
     26#define KSEM_SHARED                 2
     27
     28/*
     29 * Sempahore flags. (according to SG24-4640-00)
     30 */
     31#define KSEM_DEFAULT                0
     32#define KSEM_NOINTERRUPT            1
     33#define KSEM_WRITE                  2
     34#define KSEM_DISPLAYID              4
     35#define KSEM_NOBLOCKED              8
    2036
    2137
     
    2339*   Structures and Typedefs                                                    *
    2440*******************************************************************************/
    25 typedef ULONG  HKSEM;                   /* Handle to kernel semaphore. */
    26 typedef HKSEM  PHKSEM;                  /* Pointer to kernel semaphore handle. */
    27 typedef HKSEM  HKMTX;                   /* Handle to kernel mutex semaphore. */
    28 typedef HKSEM  HKEV;                    /* Handle to kernel event semaphore. */
     41/* (This is according to SG24-4640-00.) */
     42
     43typedef struct _KSEMSHR
     44{
     45    /**
     46     * Astrict 16 is byte while retail 12 is bytes.
     47     * We'll reserve 20 bytes just to be sure!.
     48     */
     49    char achDummy[20];
     50}   KSEMSHR,
     51   *PKSEMSHR,
     52   *HKSEMSHR;                           /* Handle to kernel shared semphore. */
     53typedef HKSEMSHR * PHKSEMSHR;
     54
     55
     56typedef struct _KSEMMTX
     57{
     58    /**
     59     * Astrict is 12 byte while retail is 8 bytes.
     60     * We'll reserve 20 bytes just to be sure!
     61     */
     62    char achDummy[20];
     63}   KSEMMTX,
     64   *PKSEMMTX,
     65   *HKSEMMTX;                           /* Handle to kernel mutex semaphore. */
     66typedef HKSEMMTX * PHKSEMMTX;
     67
     68
     69typedef struct _KSEMEVT
     70{
     71    /**
     72     * Astrict is 16 byte while retail is 12 bytes.
     73     * We'll reserve 20 bytes just to be sure!
     74     */
     75    char achDummy[20];
     76}   KSEMEVT,
     77   *PKSEMEVT,
     78   *HKSEMEVT;                           /* Handle to kernel event sempahore. */
     79typedef HKSEMEVT * PHKSEMEVT;
     80
     81
     82typedef union _KSEM
     83{
     84    KSEMSHR shr;
     85    KSEMMTX mtx;
     86    KSEMEVT evt;
     87} KSEM, *PKSEM, *HKSEM;                 /* Generic kernel semaphore handle. */
     88typedef HKSEM * PHKSEM;
    2989
    3090
     
    3494/*
    3595 * Mutex semaphores.
    36  * NOTE! Only is KSEMRequestMutex currently is imported!
    3796 */
    38 extern ULONG KRNLCALL KSEMRequestMutex(HKMTX hkmtx, ULONG ulTimeout);
    39 extern VOID  KRNLCALL KSEMReleaseMutex(HKMTX hkmtx);
    40 extern ULONG KRNLCALL KSEMQueryMutex(HKMTX hkmtx, PUSHORT pus);
     97extern ULONG KRNLCALL KSEMRequestMutex(HKSEMMTX hkmtx, ULONG ulTimeout);
     98extern VOID  KRNLCALL KSEMReleaseMutex(HKSEMMTX hkmtx);
     99extern ULONG KRNLCALL KSEMQueryMutex(HKSEMMTX hkmtx, PUSHORT pcusNest);
    41100
    42101
     
    48107extern VOID  KRNLCALL KSEMPostEvent(HKEV hkevent);
    49108extern ULONG KRNLCALL KSEMWaitEvent(HKEV hkevent);
     109#endif
    50110
    51111/*
    52112 * Some other KSEM prefixed functions - parameters's not that obvious...
    53113 */
     114#if 0
    54115extern ULONG KRNLCALL KSEMAlloc(PHKSEM phksem, ULONG p1, ULONG p2);
    55116extern ULONG KRNLCALL KSEMCreate(PHKSEM phksem, ULONG type);
     
    57118extern ULONG KRNLCALL KSEMRequestShared(HKSEM hksem, ULONG);
    58119extern VOID  KRNLCALL KSEMDestroy(HKSEM hksem);
    59 extern VOID  KRNLCALL KSEMInit(HKSEM hksem, ULONG p1, ULONG p2);
     120#endif
     121extern VOID  KRNLCALL KSEMInit(PKSEM pksem, ULONG fulType, ULONG fulFlags);
     122#if 0
    60123extern VOID  KRNLCALL KSEMQuery(HKSEM hksem, ULONG p2)
    61124extern VOID  KRNLCALL KSEMRelease(HKSEM hksem);
  • branches/GRACE/src/win32k/include/ldr.h

    r4065 r4068  
    1 /* $Id: ldr.h,v 1.5.4.4 2000-08-21 22:59:38 bird Exp $
     1/* $Id: ldr.h,v 1.5.4.5 2000-08-22 03:00:19 bird Exp $
    22 *
    33 * ldr - Our loader "subsystem" public header file.
     
    217217#define CCHFILENAME     261             /* This is defined in mytkExecPgm.asm too. */
    218218#define CCHARGUMENTS   1536             /* This is defined in mytkExecPgm.asm too. */
    219 extern char         fLdrSemTaken;
    220219extern const char   fTkExecPgm;
    221220extern char         achTkExecPgmFilename[CCHFILENAME];
  • branches/GRACE/src/win32k/include/pe2lx.h

    r4065 r4068  
    1 /* $Id: pe2lx.h,v 1.9.4.3 2000-08-21 22:59:38 bird Exp $
     1/* $Id: pe2lx.h,v 1.9.4.4 2000-08-22 03:00:19 bird Exp $
    22 *
    33 * Pe2Lx class declarations. Ring 0 and Ring 3
     
    7575    BOOL    isExe();
    7676    BOOL    isDll();
    77     static HMTE getKernel32SFN()        {   return sfnKernel32;   }
     77    static SFN getKernel32SFN()        {   return sfnKernel32;   }
    7878    static VOID setKernel32SFN(SFN sfn) {   sfnKernel32 = sfn;    }
    7979    static VOID invalidateOdin32Path();
  • branches/GRACE/src/win32k/include/probkrnl.h

    r4065 r4068  
    1 /* $Id: probkrnl.h,v 1.13.4.6 2000-08-21 22:59:39 bird Exp $
     1/* $Id: probkrnl.h,v 1.13.4.7 2000-08-22 03:00:20 bird Exp $
    22 *
    33 * Include file for ProbKrnl.
     
    1616*   Defined Constants And Macros                                               *
    1717*******************************************************************************/
    18 #define NBR_OF_KRNLIMPORTS      37      /* When this is changed make sure to   */
     18#define NBR_OF_KRNLIMPORTS      40      /* When this is changed make sure to   */
    1919                                        /* update the arrays in d32init.c and  */
    2020                                        /* probkrnl.c */
  • branches/GRACE/src/win32k/ldr/ldr.cpp

    r4065 r4068  
    1 /* $Id: ldr.cpp,v 1.7.4.2 2000-08-21 22:59:39 bird Exp $
     1/* $Id: ldr.cpp,v 1.7.4.3 2000-08-22 03:00:20 bird Exp $
    22 *
    33 * ldr.cpp - Loader helpers.
     
    1414#define INCL_DOSERRORS
    1515#define INCL_NOPMAPI
    16 
     16#define INCL_OS2KRNL_SEM
    1717
    1818/*******************************************************************************
     
    238238    }
    239239
    240     /*
    241      * Increment the object counters.
    242      */
    243     switch (fFlags & MOD_TYPE_MASK)
    244     {
    245         case MOD_TYPE_PE2LX:  Pe2Lx::cLoadedModules++;
    246 #ifdef DEBUG
    247         /*case MOD_TYPE_ELF2LX: Elf2Lx::cElf2Lx++;*/
    248         default:
    249             kprintf(("addModule: fFlags don't have any MOD_TYPE_* (%x).\n", fFlags));
    250 #endif
    251     }
    252 
    253240    return NO_ERROR;
    254241}
     
    290277        case MOD_TYPE_PE2LX:
    291278            delete pMod->Data.pPe2Lx;
    292             Pe2Lx::cLoadedModules--;
    293279            break;
    294280/*
    295281        case MOD_TYPE_ELF2LX:
    296             Elf2Lx::cLoadedModules--;
    297282            break;
    298283*/
  • branches/GRACE/src/win32k/ldr/myldrOpen.cpp

    r4046 r4068  
    1 /* $Id: myldrOpen.cpp,v 1.10.4.4 2000-08-19 14:37:15 bird Exp $
     1/* $Id: myldrOpen.cpp,v 1.10.4.5 2000-08-22 03:00:21 bird Exp $
    22 *
    33 * myldrOpen - ldrOpen.
     
    116116        {
    117117            kprintf(("myldrOpen-%d: rmalloc(640) failed\n", cNesting));
    118             goto semcleanup;
     118            goto ret;
    119119        }
    120120
     
    640640    #endif
    641641
    642 semcleanup:
    643     /*
    644      * We have to clean the smaphore which was taken by mytkExecPgm here
    645      * because we might not return before the new child is finsished
    646      * executing.
    647      * It is not risk in releasing the semphore here since it's taken
    648      * three times now. First by tkExecPgm then by LDROpenExe.
    649      */
    650     if (isLdrStateExecPgm() && fLdrSemTaken)
    651     {
    652         KSEMReleaseMutex((HKMTX)pLdrSem);
    653         fLdrSemTaken = 0;
    654     }
    655 
     642ret:
    656643    /** @sketch
    657644     *  Return rc.
  • branches/GRACE/src/win32k/pe2lx/pe2lx.cpp

    r4065 r4068  
    1 /* $Id: pe2lx.cpp,v 1.18.4.5 2000-08-21 22:59:40 bird Exp $
     1/* $Id: pe2lx.cpp,v 1.18.4.6 2000-08-22 03:00:22 bird Exp $
    22 *
    33 * Pe2Lx class implementation. Ring 0 and Ring 3
     
    170170    {NULL,                                 NULL} /* end-of-list entry */
    171171};
     172
     173LONG            Pe2Lx::cLoadedModules;  /* Count of existing objects. Updated by constructor and destructor. */
     174const char *    Pe2Lx::pszOdin32Path;   /* Odin32 base path (include a slash). */
     175SFN             Pe2Lx::sfnKernel32;     /* Odin32 Kernel32 filehandle. */
    172176
    173177
     
    46924696BOOL Pe2Lx::initOdin32Path()
    46934697{
     4698    #if 0
    46944699    APIRET rc;
    46954700    PMTE   pMTE;
     
    47544759
    47554760    return rc == NO_ERROR;
     4761    #else
     4762    return FALSE;
     4763    #endif
    47564764}
    47574765
  • branches/GRACE/src/win32k/win32k.vpj

    r4065 r4068  
    11[COMPILER]
    22MACRO=odin32_maketagfile();\n
    3 FILTEREXPANSION=1 1 1 1 0 0 0 0 1 0 0 0 0 1
     3FILTEREXPANSION=1 1 0 0 0 0 0 0 1 0 0 0 0 1
    44compile=concur|capture|clear|:Compile:&Compile,nmake %n.obj
    55make=concur|capture|clear|:Build:&Build,nmake
     
    102102ldr\myldrRead.cpp
    103103ldr\mytkExecPgm.asm
     104ldr\mytkStartProcess.asm
    104105ldr\myVMAllocMem.cpp
    105106lib\libDosAllocMemEx.c
     
    143144test\init.asm
    144145test\win32ktst.c
     146[ASSOCIATION]
     147[STATE]
     148SCREEN: 1600 1200 176 176 1244 800 0 0 M 0 0 0 0 1275 898
     149CWD: H:\CODING\WORK\ODIN32\src\win32k
     150BUFFER: BN="F:\VSLICK40\OS2\vrestore.slk"
     151BI: MA=1 254 1  TABS=1 9  WWS=3 IWT=0 ST=0 IN=0 BW=0 US=0 RO=0 SE=0 SN=0 BIN=0 MN=Fundamental   HM=0 MF=1
     152VIEW: LN=.0 CL=1 LE=0 CX=0 CY=1 WI=5 BI=22 HT=0 HN=0 HF=0 HC=4
     153BUFFER: BN="H:\coding\work\odin32\src\win32k\libconv.c"
     154BI: MA=1 74 1  TABS=1 5  WWS=1 IWT=0 ST=0 IN=2 BW=0 US=32000 RO=0 SE=1 SN=0 BIN=0 MN=C  HM=0 MF=0
     155VIEW: LN=.11148 CL=33 LE=0 CX=32 CY=37 WI=5 BI=17 HT=0 HN=0 HF=0 HC=4
     156BUFFER: BN="H:\CODING\WORK\ODIN32\src\win32k\dev16\probkrnl.c"
     157BI: MA=1 74 1  TABS=1 5  WWS=1 IWT=0 ST=0 IN=2 BW=0 US=32000 RO=0 SE=1 SN=0 BIN=0 MN=C  HM=0 MF=0
     158VIEW: LN=.5619 CL=30 LE=0 C CY=1 WI=5 BI=9 HT=0 HN=0 HF=0 HC=4
     159BUFFER: BN="H:\CODING\WORK\ODIN32\src\win32k\test\win32ktst.c"
     160BI: MA=1 74 1  TABS=1 5  WWS=1 IWT=0 ST=0 IN=2 BW=0 US=32000 RO=0 SE=1 SN=0 BIN=0 MN=C  HM=0 MF=872
     161VIEW: LN=.6408 CL=13 LE=0 CX=12 CY=38 WI=5 BI=10 HT=0 HN=0 HF=0 HC=4
     162WINDOW: 26 25 967 704 -1 -1 M  WF=0 WT=2 "System Monospaced,10,0,1"
     163BUFFER: BN="H:\CODING\WORK\ODIN32\src\win32k\test\win32ktst.c"
     164VIEW: LN=.6119 CL=76 LE=0 CX=75 CY=29 WI=194 BI=10 HT=0 HN=0 HF=0 HC=4
     165FILEHIST: 5
     166F:\VSLICK40\OS2\vrestore.slk
     167H:\coding\work\odin32\src\win32k\libconv.c
     168H:\coding\work\odin32\src\win32k\makefile
     169H:\CODING\WORK\ODIN32\src\win32k\include\test.h
     170H:\CODING\WORK\ODIN32\src\win32k\test\win32ktst.c
     171PRINTER: 2
    145172
     173
Note: See TracChangeset for help on using the changeset viewer.