1 | /* $Id: win32k.h,v 1.3 2000-02-18 19:27:29 bird Exp $
|
---|
2 | *
|
---|
3 | * Top level make file for the Win32k library.
|
---|
4 | * Contains library and 32-bit IOCtl definition.
|
---|
5 | *
|
---|
6 | * Copyright (c) 2000 knut st. osmundsen (knut.stange.osmundsen@pmsc.no)
|
---|
7 | *
|
---|
8 | * Project Odin Software License can be found in LICENSE.TXT
|
---|
9 | *
|
---|
10 | */
|
---|
11 | #ifndef _WIN32K_H_
|
---|
12 | #define _WIN32K_H_
|
---|
13 |
|
---|
14 | /*******************************************************************************
|
---|
15 | * Defined Constants And Macros *
|
---|
16 | *******************************************************************************/
|
---|
17 | /*
|
---|
18 | * IOCtls categories.
|
---|
19 | */
|
---|
20 | #define IOCTL_W32K_K32 0xC1
|
---|
21 | #define IOCTL_W32K_ELF 0xC2
|
---|
22 |
|
---|
23 | /*
|
---|
24 | * K32 category - these are the functions found in the k32 directory.
|
---|
25 | */
|
---|
26 | #define K32_ALLOCMEMEX 0x01
|
---|
27 |
|
---|
28 |
|
---|
29 | /*
|
---|
30 | * Elf category
|
---|
31 | */
|
---|
32 | #define ELF_DUMMY 0x01
|
---|
33 |
|
---|
34 |
|
---|
35 | /*******************************************************************************
|
---|
36 | * Structures and Typedefs *
|
---|
37 | *******************************************************************************/
|
---|
38 | /*
|
---|
39 | * K32 category parameter structs
|
---|
40 | */
|
---|
41 | typedef struct _k32AllocMemEx
|
---|
42 | {
|
---|
43 | PVOID pv; /* Pointer to allocated memory block */
|
---|
44 | /* On input this holds the suggested */
|
---|
45 | /* location of the block. */
|
---|
46 | ULONG cb; /* Blocksize (bytes) */
|
---|
47 | ULONG flFlags; /* Flags (equal to DosAllocMem flags) */
|
---|
48 | ULONG ulCS; /* Call CS */
|
---|
49 | ULONG ulEIP; /* Call EIP */
|
---|
50 | ULONG rc; /* Return code. */
|
---|
51 | } K32ALLOCMEMEX, *PK32ALLOCMEMEX;
|
---|
52 |
|
---|
53 |
|
---|
54 |
|
---|
55 |
|
---|
56 | #ifdef INCL_WIN32K_LIB
|
---|
57 | /*******************************************************************************
|
---|
58 | * External Functions *
|
---|
59 | *******************************************************************************/
|
---|
60 | APIRET APIENTRY libWin32kInit(void);
|
---|
61 | APIRET APIENTRY libWin32kTerm(void);
|
---|
62 | APIRET APIENTRY DosAllocMemEx(PPVOID ppv, ULONG cb, ULONG flag);
|
---|
63 |
|
---|
64 |
|
---|
65 | #endif
|
---|
66 |
|
---|
67 | #endif
|
---|