source: trunk/src/win32k/include/dev32hlp.h@ 5087

Last change on this file since 5087 was 1678, checked in by bird, 26 years ago

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

File size: 4.4 KB
Line 
1/* $Id: dev32hlp.h,v 1.3 1999-11-10 01:45:32 bird Exp $
2 *
3 * Dev32Hlp - 32-bit Device helpers.
4 *
5 * Copyright (c) 1999 knut st. osmundsen
6 *
7 * Project Odin Software License can be found in LICENSE.TXT
8 *
9 */
10#ifndef _dev32hlp_h_
11#define _dev32hlp_h_
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
17/*******************************************************************************
18* Defined Constants *
19*******************************************************************************/
20#define D32HLPCALL _Optlink
21#define D32RET ULONG
22
23
24/*
25 * D32Hlp_VMAlloc
26 */
27#define VMDHA_16M 0x0001UL
28#define VMDHA_FIXED 0x0002UL
29#define VMDHA_SWAP 0x0004UL
30#define VMDHA_CONTIG 0x0008UL
31#define VMDHA_PHYS 0x0010UL
32#define VMDHA_PROCESS 0x0020UL
33#define VMDHA_SGSCONT 0x0040UL
34#define VMDHA_RESERVE 0x0100UL
35#define VMDHA_USEHIGHMEM 0x0800UL
36
37/*
38 * D32Hlp_VMLock
39 */
40#define VMDHL_NOBLOCK 0x0001UL
41#define VMDHL_CONTIGUOUS 0x0002UL
42#define VMDHL_16M 0x0004UL
43#define VMDHL_WRITE 0x0008UL
44#define VMDHL_LONG 0x0010UL
45#define VMDHL_VERIFY 0x0020UL
46
47/*
48 * D32Hlp_VMSetMem
49 */
50#define VMDHS_DECOMMIT 0x0001UL
51#define VMDHS_RESIDENT 0x0002UL
52#define VMDHS_SWAP 0x0004UL
53
54/*
55 * D32Hlp_GetDOSVar
56 */
57/* 0 reserved */
58#define DHGETDOSV_SYSINFOSEG 1
59#define DHGETDOSV_LOCINFOSEG 2
60/* 3 reserved */
61#define DHGETDOSV_VECTORSDF 4
62#define DHGETDOSV_VECTORREBOOT 5
63#define DHGETDOSV_YIELDFLAG 7
64#define DHGETDOSV_TCYIELDFLAG 8
65#define DHGETDOSV_DOSTABLES 9 /* undocumented */
66#define DHGETDOSV_STRP_COMMON 10 /* undocumented */
67#define DHGETDOSV_DOSCODEPAGE 11
68#define DHGETDOSV_INTERRUPTLEV 13
69#define DHGETDOSV_DEVICECLASSTABLE 14
70#define DHGETDOSV_DMQSSELECTOR 15
71#define DHGETDOSV_APMINFO 16
72#define DHGETDOSV_APM_LENGTH 17 /* undocumented? */
73
74
75
76/*******************************************************************************
77* Header Files *
78*******************************************************************************/
79#ifndef __infoseg_h
80#define __infoseg_h
81#include <infoseg.h>
82#endif
83
84/*******************************************************************************
85* Structures and Typedefs *
86*******************************************************************************/
87typedef struct _LockHandle
88{
89 char ach[12];
90} LOCKHANDLE, *PLOCKHANDLE;
91
92
93/*******************************************************************************
94* Function Prototypes *
95*******************************************************************************/
96PVOID D32HLPCALL D32Hlp_VirtToLin(ULONG ulPtr16);
97PVOID D32HLPCALL D32Hlp_VirtToLin2(USHORT usSelector,
98 ULONG ulOffset);
99D32RET D32HLPCALL D32Hlp_VirtToLin3(USHORT usSelector,
100 ULONG ulOffset,
101 PPVOID ppvLinAddress);
102PVOID D32HLPCALL D32Hlp_GetDOSVar(USHORT ulVarNumber, USHORT ulVarMember);
103VOID D32HLPCALL D32Hlp_Yield(VOID);
104PVOID D32HLPCALL D32Hlp_VMAlloc(ULONG flFlags,
105 ULONG cbSize,
106 ULONG ulPhysAddr);
107D32RET D32HLPCALL D32Hlp_VMFree(PVOID pvAddress);
108D32RET D32HLPCALL D32Hlp_VMSetMem(PVOID pvAddress,
109 ULONG cbSize,
110 ULONG flFlags);
111D32RET D32HLPCALL D32Hlp_VMLock(PVOID pvAddress,
112 ULONG ulLength,
113 ULONG flFlags,
114 PVOID pvPagelist,
115 PLOCKHANDLE pLockHandle,
116 PULONG pulPageListCount);
117D32RET D32HLPCALL D32Hlp_VMLock2(PVOID pvAddress,
118 ULONG ulLength,
119 ULONG flFlags,
120 PLOCKHANDLE pLockHandle);
121D32RET D32HLPCALL D32Hlp_VMUnLock(PLOCKHANDLE pLockHandle);
122
123
124#ifdef __cplusplus
125}
126#endif
127#endif
Note: See TracBrowser for help on using the repository browser.