source: trunk/src/win32k/include/options.h@ 1678

Last change on this file since 1678 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: 3.7 KB
Line 
1/* $Id: options.h,v 1.4 1999-11-10 01:45:33 bird Exp $
2 *
3 * Options.
4 *
5 * Copyright (c) 1998-1999 knut st. osmundsen
6 *
7 * Project Odin Software License can be found in LICENSE.TXT
8 *
9 */
10
11#ifndef _options_h_
12#define _options_h_
13
14/*******************************************************************************
15* Defined Constants And Macros *
16*******************************************************************************/
17/* fKernel */
18#define KF_UNI 0x00000000UL
19#define KF_SMP 0x00000001UL
20
21/* fPE */
22#define FLAGS_PE_NOT 0x00000000UL
23#define FLAGS_PE_PE2LX 0x00000001UL
24#define FLAGS_PE_PE 0x00000002UL
25#define FLAGS_PE_MIXED 0x00000003UL
26
27/* ulInfoLevel */
28#define INFOLEVEL_QUIET 0x00000000UL
29#define INFOLEVEL_ERROR 0x00000001UL
30#define INFOLEVEL_WARNING 0x00000002UL
31#define INFOLEVEL_INFO 0x00000003UL
32#define INFOLEVEL_INFOALL 0x00000004UL
33
34/* Set defaults. */
35#define SET_OPTIONS_TO_DEFAULT(o) \
36 o.fQuiet = FALSE; \
37 o.usCom = OUTPUT_COM2; \
38 o.fLogging = FALSE; \
39 o.fKernel = KF_UNI; \
40 o.ulBuild = ~0UL; \
41 o.usVerMajor = ~0; \
42 o.usVerMinor = ~0; \
43 o.fPE = FLAGS_PE_PE2LX; \
44 o.ulInfoLevel = INFOLEVEL_QUIET;\
45 o.fElf = FALSE; \
46 o.fScript = FALSE; \
47 o.fNoLoader = FALSE; \
48 o.cbHeap = 0x100000; /* 1MB */ \
49 o.cbHeapMax = 0x100000; /* 1MB */ \
50 o.cbHeapResident = 0x10000; /* 64KB */ \
51 o.cbHeapMaxResident = 0x1000; /* 4KB */ \
52
53
54/*******************************************************************************
55* Structures and Typedefs *
56*******************************************************************************/
57/** Option struct */
58struct options
59{
60 /** @cat misc */
61 BOOL fQuiet; /* Quiet initialization. */
62
63 /** @cat logging options */
64 USHORT usCom; /* Output port no. */
65 BOOL fLogging; /* Logging. */
66
67 /** @cat kernel selection */
68 ULONG fKernel; /* Smp or uni kernel. */
69 ULONG ulBuild; /* Kernel build. */
70 USHORT usVerMajor; /* OS/2 major ver - 20 */
71 USHORT usVerMinor; /* OS/2 minor ver - 30,40 */
72
73 /** @cat Options affecting the generated LX executables */
74 BOOL fPE; /* Flags set the type of conversion. */
75 ULONG ulInfoLevel; /* Pe2Lx InfoLevel. */
76
77 /** @cat Options affecting the generated ELF executables */
78 BOOL fElf; /* Elf flags. */
79
80 /** @cat Options affecting the script executables */
81 BOOL fScript; /* Script flags. */
82
83 /** @cat Options affecting the script executables */
84 BOOL fNoLoader; /* No loader stuff. */
85
86 /** @cat Options affecting the heap. */
87 ULONG cbHeap; /* Initial heapsize. */
88 ULONG cbHeapMax; /* Maximum heapsize. */
89 ULONG cbHeapResident; /* Initial residentheapsize. */
90 ULONG cbHeapMaxResident; /* Maxiumem residentheapsize. */
91};
92
93
94/*******************************************************************************
95* Global Variables *
96*******************************************************************************/
97extern struct options options; /* defined in d32globals.c */
98
99#endif
100
Note: See TracBrowser for help on using the repository browser.