00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
genCom(
"Pointer size in bytes")
00030
00031 genVal(SizeofPointer, sizeof(PVOID))
00032
00033
00034
00035
00036
00037 genCom("Process State Enumerated Type Values")
00038
00039 genVal(ProcessInMemory, ProcessInMemory)
00040 genVal(ProcessOutOfMemory, ProcessOutOfMemory)
00041 genVal(ProcessInTransition, ProcessInTransition)
00042
00043
00044
00045
00046
00047 genCom("Thread State Enumerated Type Values")
00048
00049 genVal(Initialized, Initialized)
00050 genVal(Ready, Ready)
00051 genVal(Running, Running)
00052 genVal(Standby, Standby)
00053 genVal(Terminated, Terminated)
00054 genVal(Waiting, Waiting)
00055
00056
00057
00058
00059
00060 EnableInc(HAL)
00061
00062 genCom("Wait Reason and Wait Type Enumerated Type Values")
00063
00064 genVal(WrExecutive, Executive)
00065
00066 DisableInc(HAL)
00067
00068 genVal(WrEventPair, WrEventPair)
00069 genVal(WaitAny, WaitAny)
00070 genVal(WaitAll, WaitAll)
00071
00072
00073
00074
00075
00076 genCom("Apc State Structure Offset Definitions")
00077
00078 genDef(As,
KAPC_STATE, ApcListHead)
00079 genDef(As, KAPC_STATE, Process)
00080 genDef(As, KAPC_STATE, KernelApcInProgress)
00081 genDef(As, KAPC_STATE, KernelApcPending)
00082 genDef(As, KAPC_STATE, UserApcPending)
00083
00084
00085
00086
00087
00088 EnableInc(HAL)
00089
00090 genCom("Bug Check Code Definitions")
00091
00092 genVal(APC_INDEX_MISMATCH, APC_INDEX_MISMATCH)
00093 genVal(ATTEMPTED_SWITCH_FROM_DPC, ATTEMPTED_SWITCH_FROM_DPC)
00094 genVal(DATA_BUS_ERROR, DATA_BUS_ERROR)
00095 genVal(DATA_COHERENCY_EXCEPTION, DATA_COHERENCY_EXCEPTION)
00096 genVal(HAL1_INITIALIZATION_FAILED, HAL1_INITIALIZATION_FAILED)
00097 genVal(INSTRUCTION_BUS_ERROR, INSTRUCTION_BUS_ERROR)
00098 genVal(INSTRUCTION_COHERENCY_EXCEPTION, INSTRUCTION_COHERENCY_EXCEPTION)
00099 genVal(INTERRUPT_EXCEPTION_NOT_HANDLED, INTERRUPT_EXCEPTION_NOT_HANDLED)
00100 genVal(INTERRUPT_UNWIND_ATTEMPTED, INTERRUPT_UNWIND_ATTEMPTED)
00101 genVal(INVALID_AFFINITY_SET, INVALID_AFFINITY_SET)
00102 genVal(INVALID_DATA_ACCESS_TRAP, INVALID_DATA_ACCESS_TRAP)
00103 genVal(IRQL_GT_ZERO_AT_SYSTEM_SERVICE, IRQL_GT_ZERO_AT_SYSTEM_SERVICE)
00104 genVal(IRQL_NOT_LESS_OR_EQUAL, IRQL_NOT_LESS_OR_EQUAL)
00105 genVal(KMODE_EXCEPTION_NOT_HANDLED, KMODE_EXCEPTION_NOT_HANDLED)
00106 genVal(NMI_HARDWARE_FAILURE, NMI_HARDWARE_FAILURE)
00107 genVal(NO_USER_MODE_CONTEXT, NO_USER_MODE_CONTEXT)
00108 genVal(PAGE_FAULT_WITH_INTERRUPTS_OFF, PAGE_FAULT_WITH_INTERRUPTS_OFF)
00109 genVal(PANIC_STACK_SWITCH, PANIC_STACK_SWITCH)
00110 genVal(SPIN_LOCK_INIT_FAILURE, SPIN_LOCK_INIT_FAILURE)
00111 genVal(SYSTEM_EXIT_OWNED_MUTEX, SYSTEM_EXIT_OWNED_MUTEX)
00112 genVal(SYSTEM_SERVICE_EXCEPTION, SYSTEM_SERVICE_EXCEPTION)
00113 genVal(SYSTEM_UNWIND_PREVIOUS_USER, SYSTEM_UNWIND_PREVIOUS_USER)
00114 genVal(TRAP_CAUSE_UNKNOWN, TRAP_CAUSE_UNKNOWN)
00115 genVal(UNEXPECTED_KERNEL_MODE_TRAP, UNEXPECTED_KERNEL_MODE_TRAP)
00116
00117 DisableInc(HAL)
00118
00119
00120
00121
00122
00123 EnableInc(HAL)
00124
00125 genCom("Breakpoint type definitions")
00126
00127 genVal(DBG_STATUS_CONTROL_C, DBG_STATUS_CONTROL_C)
00128
00129 DisableInc(HAL)
00130
00131
00132
00133
00134
00135 genCom("Client Id Structure Offset Definitions")
00136
00137 genDef(Cid, CLIENT_ID, UniqueProcess)
00138 genDef(Cid, CLIENT_ID, UniqueThread)
00139
00140
00141
00142
00143
00144 genCom("Critical Section Structure Offset Definitions")
00145
00146 genDef(Cs, RTL_CRITICAL_SECTION, DebugInfo)
00147 genDef(Cs, RTL_CRITICAL_SECTION, LockCount)
00148 genDef(Cs, RTL_CRITICAL_SECTION, RecursionCount)
00149 genDef(Cs, RTL_CRITICAL_SECTION, OwningThread)
00150 genDef(Cs, RTL_CRITICAL_SECTION, LockSemaphore)
00151 genDef(Cs, RTL_CRITICAL_SECTION, SpinCount)
00152
00153
00154
00155
00156
00157 genCom("Critical Section Debug Information Structure Offset Definitions")
00158
00159 genDef(Cs, RTL_CRITICAL_SECTION_DEBUG, Type)
00160 genDef(Cs, RTL_CRITICAL_SECTION_DEBUG, CreatorBackTraceIndex)
00161 genDef(Cs, RTL_CRITICAL_SECTION_DEBUG, CriticalSection)
00162 genDef(Cs, RTL_CRITICAL_SECTION_DEBUG, ProcessLocksList)
00163 genDef(Cs, RTL_CRITICAL_SECTION_DEBUG, EntryCount)
00164 genDef(Cs, RTL_CRITICAL_SECTION_DEBUG, ContentionCount)
00165
00166
00167
00168
00169
00170 #if defined(_ALPHA_) || defined(_MIPS_) || defined(_PPC_) || defined(_IA64_)
00171
00172 genCom("Dispatcher Context Structure Offset Definitions")
00173
00174 genDef(Dc,
DISPATCHER_CONTEXT, ControlPc)
00175 genDef(Dc, DISPATCHER_CONTEXT, FunctionEntry)
00176 genDef(Dc, DISPATCHER_CONTEXT, EstablisherFrame)
00177 genDef(Dc, DISPATCHER_CONTEXT, ContextRecord)
00178
00179 #endif
00180
00181
00182
00183
00184
00185 EnableInc(HAL)
00186
00187 genCom("Exception Record Offset, Flag, and Enumerated Type Definitions")
00188
00189 genVal(EXCEPTION_NONCONTINUABLE, EXCEPTION_NONCONTINUABLE)
00190 genVal(EXCEPTION_UNWINDING, EXCEPTION_UNWINDING)
00191 genVal(EXCEPTION_EXIT_UNWIND, EXCEPTION_EXIT_UNWIND)
00192 genVal(EXCEPTION_STACK_INVALID, EXCEPTION_STACK_INVALID)
00193 genVal(EXCEPTION_NESTED_CALL, EXCEPTION_NESTED_CALL)
00194 genVal(EXCEPTION_TARGET_UNWIND, EXCEPTION_TARGET_UNWIND)
00195 genVal(EXCEPTION_COLLIDED_UNWIND, EXCEPTION_COLLIDED_UNWIND)
00196 genVal(EXCEPTION_UNWIND, EXCEPTION_UNWIND)
00197 genVal(EXCEPTION_EXECUTE_HANDLER, EXCEPTION_EXECUTE_HANDLER)
00198 genVal(EXCEPTION_CONTINUE_SEARCH, EXCEPTION_CONTINUE_SEARCH)
00199 genVal(EXCEPTION_CONTINUE_EXECUTION, EXCEPTION_CONTINUE_EXECUTION)
00200
00201 #if defined(_X86_)
00202
00203 genVal(EXCEPTION_CHAIN_END, (ULONG)EXCEPTION_CHAIN_END)
00204
00205 #endif
00206
00207 genSpc()
00208
00209 genVal(ExceptionContinueExecution, ExceptionContinueExecution)
00210 genVal(ExceptionContinueSearch, ExceptionContinueSearch)
00211 genVal(ExceptionNestedException, ExceptionNestedException)
00212 genVal(ExceptionCollidedUnwind, ExceptionCollidedUnwind)
00213
00214 genSpc()
00215
00216 genDef(Er, EXCEPTION_RECORD, ExceptionCode)
00217 genDef(Er, EXCEPTION_RECORD, ExceptionFlags)
00218 genDef(Er, EXCEPTION_RECORD, ExceptionRecord)
00219 genDef(Er, EXCEPTION_RECORD, ExceptionAddress)
00220 genDef(Er, EXCEPTION_RECORD, NumberParameters)
00221 genDef(Er, EXCEPTION_RECORD, ExceptionInformation)
00222 genVal(ExceptionRecordLength, (sizeof(EXCEPTION_RECORD) + 15) & (~15))
00223
00224 DisableInc(HAL)
00225
00226
00227
00228
00229
00230 EnableInc(HAL)
00231
00232 genCom("Fast Mutex Structure Offset Definitions")
00233
00234 genDef(Fm,
FAST_MUTEX, Count)
00235 genDef(Fm, FAST_MUTEX, Owner)
00236 genDef(Fm, FAST_MUTEX, Contention)
00237 genDef(Fm, FAST_MUTEX, Event)
00238 genDef(Fm, FAST_MUTEX, OldIrql)
00239
00240
00241
00242
00243
00244 genCom("Interrupt Priority Request Level Definitions")
00245
00246 genVal(APC_LEVEL, APC_LEVEL)
00247 genVal(DISPATCH_LEVEL, DISPATCH_LEVEL)
00248
00249 #if defined(_X86_)
00250
00251 genVal(CLOCK1_LEVEL, CLOCK1_LEVEL)
00252 genVal(CLOCK2_LEVEL, CLOCK2_LEVEL)
00253
00254 #endif
00255
00256 genVal(IPI_LEVEL, IPI_LEVEL)
00257 genVal(POWER_LEVEL, POWER_LEVEL)
00258 genVal(PROFILE_LEVEL, PROFILE_LEVEL)
00259 genVal(HIGH_LEVEL, HIGH_LEVEL)
00260 genVal(SYNCH_LEVEL, SYNCH_LEVEL)
00261
00262
00263
00264
00265
00266 genCom("Large Integer Structure Offset Definitions")
00267
00268 genDef(Li, LARGE_INTEGER, LowPart)
00269 genDef(Li, LARGE_INTEGER, HighPart)
00270
00271
00272
00273
00274
00275 genCom("List Entry Structure Offset Definitions")
00276
00277 genDef(Ls, LIST_ENTRY, Flink)
00278 genDef(Ls, LIST_ENTRY, Blink)
00279
00280
00281
00282
00283
00284 genCom("String Structure Offset Definitions")
00285
00286 genDef(Str, STRING, Length)
00287 genDef(Str, STRING, MaximumLength)
00288 genDef(Str, STRING, Buffer)
00289
00290
00291
00292
00293
00294 #if defined(_MIPS_) || defined(_PPC_) || defined(_X86_)
00295
00296 genCom("System Time Structure Offset Definitions")
00297
00298 genAlt(StLowTime, KSYSTEM_TIME, LowPart)
00299 genDef(St, KSYSTEM_TIME, High1Time)
00300 genDef(St, KSYSTEM_TIME, High2Time)
00301
00302 #endif
00303
00304
00305
00306
00307
00308 genCom("Time Structure Offset Definitions")
00309
00310 genAlt(TmLowTime, LARGE_INTEGER, LowPart)
00311 genAlt(TmHighTime, LARGE_INTEGER , HighPart)
00312
00313 DisableInc(HAL)
00314
00315
00316
00317
00318
00319 genCom("Thread Switch Counter Offset Definitions")
00320
00321 genDef(Tw,
KTHREAD_SWITCH_COUNTERS, FindAny)
00322 genDef(Tw, KTHREAD_SWITCH_COUNTERS, FindIdeal)
00323 genDef(Tw, KTHREAD_SWITCH_COUNTERS, FindLast)
00324 genDef(Tw, KTHREAD_SWITCH_COUNTERS, IdleAny)
00325 genDef(Tw, KTHREAD_SWITCH_COUNTERS, IdleCurrent)
00326 genDef(Tw, KTHREAD_SWITCH_COUNTERS, IdleIdeal)
00327 genDef(Tw, KTHREAD_SWITCH_COUNTERS, IdleLast)
00328 genDef(Tw, KTHREAD_SWITCH_COUNTERS, PreemptAny)
00329 genDef(Tw, KTHREAD_SWITCH_COUNTERS, PreemptCurrent)
00330 genDef(Tw, KTHREAD_SWITCH_COUNTERS, PreemptLast)
00331 genDef(Tw, KTHREAD_SWITCH_COUNTERS, SwitchToIdle)
00332
00333
00334
00335
00336
00337 genCom("Status Code Definitions")
00338
00339 #if defined(_ALPHA_)
00340
00341 genVal(STATUS_ALPHA_ARITHMETIC_EXCEPTION, STATUS_ALPHA_ARITHMETIC_EXCEPTION)
00342 genVal(STATUS_ALPHA_BAD_VIRTUAL_ADDRESS, STATUS_ALPHA_BAD_VIRTUAL_ADDRESS)
00343 genVal(STATUS_ALPHA_FLOATING_NOT_IMPLEMENTED, STATUS_ALPHA_FLOATING_NOT_IMPLEMENTED)
00344 genVal(STATUS_ALPHA_GENTRAP, STATUS_ALPHA_GENTRAP)
00345 genVal(STATUS_ALPHA_MACHINE_CHECK, (DATA_BUS_ERROR | 0xdfff0000))
00346
00347 #endif
00348
00349 #if defined(_IA64_)
00350 genVal(STATUS_IA64_INVALID_STACK, STATUS_IA64_INVALID_STACK)
00351 #endif
00352
00353 genVal(STATUS_ACCESS_VIOLATION, STATUS_ACCESS_VIOLATION)
00354 genVal(STATUS_ARRAY_BOUNDS_EXCEEDED, STATUS_ARRAY_BOUNDS_EXCEEDED)
00355 genVal(STATUS_BAD_COMPRESSION_BUFFER, STATUS_BAD_COMPRESSION_BUFFER)
00356 genVal(STATUS_BREAKPOINT, STATUS_BREAKPOINT)
00357 genVal(STATUS_DATATYPE_MISALIGNMENT, STATUS_DATATYPE_MISALIGNMENT)
00358 genVal(STATUS_FLOAT_DENORMAL_OPERAND, STATUS_FLOAT_DENORMAL_OPERAND)
00359 genVal(STATUS_FLOAT_DIVIDE_BY_ZERO, STATUS_FLOAT_DIVIDE_BY_ZERO)
00360 genVal(STATUS_FLOAT_INEXACT_RESULT, STATUS_FLOAT_INEXACT_RESULT)
00361 genVal(STATUS_FLOAT_INVALID_OPERATION, STATUS_FLOAT_INVALID_OPERATION)
00362 genVal(STATUS_FLOAT_OVERFLOW, STATUS_FLOAT_OVERFLOW)
00363 genVal(STATUS_FLOAT_STACK_CHECK, STATUS_FLOAT_STACK_CHECK)
00364 genVal(STATUS_FLOAT_UNDERFLOW, STATUS_FLOAT_UNDERFLOW)
00365 genVal(STATUS_FLOAT_MULTIPLE_FAULTS, STATUS_FLOAT_MULTIPLE_FAULTS)
00366 genVal(STATUS_FLOAT_MULTIPLE_TRAPS, STATUS_FLOAT_MULTIPLE_TRAPS)
00367 genVal(STATUS_GUARD_PAGE_VIOLATION, STATUS_GUARD_PAGE_VIOLATION)
00368 genVal(STATUS_ILLEGAL_FLOAT_CONTEXT, STATUS_ILLEGAL_FLOAT_CONTEXT)
00369 genVal(STATUS_ILLEGAL_INSTRUCTION, STATUS_ILLEGAL_INSTRUCTION)
00370 genVal(STATUS_INSTRUCTION_MISALIGNMENT, STATUS_INSTRUCTION_MISALIGNMENT)
00371 genVal(STATUS_INVALID_HANDLE, STATUS_INVALID_HANDLE)
00372 genVal(STATUS_INVALID_LOCK_SEQUENCE, STATUS_INVALID_LOCK_SEQUENCE)
00373 genVal(STATUS_INVALID_OWNER, STATUS_INVALID_OWNER)
00374 genVal(STATUS_INVALID_PARAMETER_1, STATUS_INVALID_PARAMETER_1)
00375 genVal(STATUS_INVALID_SYSTEM_SERVICE, STATUS_INVALID_SYSTEM_SERVICE)
00376 genVal(STATUS_INTEGER_DIVIDE_BY_ZERO, STATUS_INTEGER_DIVIDE_BY_ZERO)
00377 genVal(STATUS_INTEGER_OVERFLOW, STATUS_INTEGER_OVERFLOW)
00378 genVal(STATUS_IN_PAGE_ERROR, STATUS_IN_PAGE_ERROR)
00379 genVal(STATUS_KERNEL_APC, STATUS_KERNEL_APC)
00380 genVal(STATUS_LONGJUMP, STATUS_LONGJUMP)
00381 genVal(STATUS_NO_CALLBACK_ACTIVE, STATUS_NO_CALLBACK_ACTIVE)
00382 genVal(STATUS_NO_EVENT_PAIR, STATUS_NO_EVENT_PAIR)
00383 genVal(STATUS_PRIVILEGED_INSTRUCTION, STATUS_PRIVILEGED_INSTRUCTION)
00384 genVal(STATUS_SINGLE_STEP, STATUS_SINGLE_STEP)
00385 genVal(STATUS_STACK_OVERFLOW, STATUS_STACK_OVERFLOW)
00386 genVal(STATUS_SUCCESS, STATUS_SUCCESS)
00387 genVal(STATUS_THREAD_IS_TERMINATING, STATUS_THREAD_IS_TERMINATING)
00388 genVal(STATUS_TIMEOUT, STATUS_TIMEOUT)
00389 genVal(STATUS_UNWIND, STATUS_UNWIND)
00390 genVal(STATUS_WAKE_SYSTEM_DEBUGGER, STATUS_WAKE_SYSTEM_DEBUGGER)
00391
00392
00393
00394
00395
00396
00397
00398 genCom("APC Object Structure Offset Definitions")
00399
00400 genDef(Ap,
KAPC, Type)
00401 genDef(Ap, KAPC, Size)
00402 genDef(Ap, KAPC, Thread)
00403 genDef(Ap, KAPC, ApcListEntry)
00404 genDef(Ap, KAPC, KernelRoutine)
00405 genDef(Ap, KAPC, RundownRoutine)
00406 genDef(Ap, KAPC, NormalRoutine)
00407 genDef(Ap, KAPC, NormalContext)
00408 genDef(Ap, KAPC, SystemArgument1)
00409 genDef(Ap, KAPC, SystemArgument2)
00410 genDef(Ap, KAPC, ApcStateIndex)
00411 genDef(Ap, KAPC, ApcMode)
00412 genDef(Ap, KAPC, Inserted)
00413 genVal(ApcObjectLength, sizeof(KAPC))
00414
00415
00416
00417
00418
00419 EnableInc(HAL)
00420
00421 genCom("DPC object Structure Offset Definitions")
00422
00423 genDef(Dp,
KDPC, Type)
00424 genDef(Dp, KDPC, Number)
00425 genDef(Dp, KDPC, Importance)
00426 genDef(Dp, KDPC, DpcListEntry)
00427 genDef(Dp, KDPC, DeferredRoutine)
00428 genDef(Dp, KDPC, DeferredContext)
00429 genDef(Dp, KDPC, SystemArgument1)
00430 genDef(Dp, KDPC, SystemArgument2)
00431 genDef(Dp, KDPC, Lock)
00432 genVal(DpcObjectLength, sizeof(KDPC))
00433
00434 DisableInc(HAL)
00435
00436
00437
00438
00439
00440 genCom("Device Queue Object Structure Offset Definitions")
00441
00442 genDef(Dv,
KDEVICE_QUEUE, Type)
00443 genDef(Dv, KDEVICE_QUEUE, Size)
00444 genDef(Dv, KDEVICE_QUEUE, DeviceListHead)
00445 genAlt(DvSpinLock, KDEVICE_QUEUE, Lock)
00446 genDef(Dv, KDEVICE_QUEUE, Busy)
00447 genVal(DeviceQueueObjectLength, sizeof(KDEVICE_QUEUE))
00448
00449
00450
00451
00452
00453 genCom("Device Queue Entry Structure Offset Definitions")
00454
00455 genDef(De,
KDEVICE_QUEUE_ENTRY, DeviceListEntry)
00456 genDef(De, KDEVICE_QUEUE_ENTRY, SortKey)
00457 genDef(De, KDEVICE_QUEUE_ENTRY, Inserted)
00458 genVal(DeviceQueueEntryLength, sizeof(KDEVICE_QUEUE_ENTRY))
00459
00460
00461
00462
00463
00464 genCom("Event Object Structure Offset Definitions")
00465
00466 genDef(Ev,
DISPATCHER_HEADER, Type)
00467 genDef(Ev, DISPATCHER_HEADER, Size)
00468 genDef(Ev, DISPATCHER_HEADER, SignalState)
00469 genAlt(EvWaitListHead,
KEVENT, Header.WaitListHead)
00470 genVal(EventObjectLength, sizeof(KEVENT))
00471
00472
00473
00474
00475
00476 genCom("Event Pair Object Structure Offset Definitions")
00477
00478 genDef(Ep,
KEVENT_PAIR, Type)
00479 genDef(Ep, KEVENT_PAIR, Size)
00480 genDef(Ep, KEVENT_PAIR, EventLow)
00481 genDef(Ep, KEVENT_PAIR, EventHigh)
00482
00483 #if defined(_MIPS_) || defined(_PPC_) || defined(_IA64_)
00484
00485 #define EventOffset (OFFSET(KEVENT_PAIR, EventHigh) - \
00486 OFFSET(KEVENT_PAIR, EventLow))
00487
00488
00489
00490
00491
00492 genVal(SET_LOW_WAIT_HIGH, - (LONG)(EventOffset * 2))
00493 genVal(SET_HIGH_WAIT_LOW, - (LONG)EventOffset)
00494 genVal(SET_EVENT_PAIR_MASK, (LONG)EventOffset)
00495
00496 #endif
00497
00498
00499
00500
00501
00502 #if defined(_ALPHA_) || defined(_MIPS_) || defined(_PPC_) || defined(_IA64_)
00503
00504 EnableInc(HAL)
00505
00506 #endif
00507
00508 genCom("Interrupt Object Structure Offset Definitions")
00509
00510 genVal(InLevelSensitive, LevelSensitive)
00511 genVal(InLatched, Latched)
00512
00513 genSpc()
00514
00515 genDef(In,
KINTERRUPT, Type)
00516 genDef(In, KINTERRUPT, Size)
00517 genDef(In, KINTERRUPT, InterruptListEntry)
00518 genDef(In, KINTERRUPT, ServiceRoutine)
00519 genDef(In, KINTERRUPT, ServiceContext)
00520 genDef(In, KINTERRUPT, SpinLock)
00521 genDef(In, KINTERRUPT, ActualLock)
00522 genDef(In, KINTERRUPT, DispatchAddress)
00523 genDef(In, KINTERRUPT, Vector)
00524 genDef(In, KINTERRUPT, Irql)
00525 genDef(In, KINTERRUPT, SynchronizeIrql)
00526 genDef(In, KINTERRUPT, FloatingSave)
00527 genDef(In, KINTERRUPT, Connected)
00528 genDef(In, KINTERRUPT, Number)
00529 genDef(In, KINTERRUPT, Mode)
00530 genDef(In, KINTERRUPT, ShareVector)
00531 genDef(In, KINTERRUPT, DispatchCode)
00532 genVal(InterruptObjectLength, sizeof(KINTERRUPT))
00533
00534 #if defined(_X86_)
00535
00536 genSpc()
00537
00538 genVal(NORMAL_DISPATCH_LENGTH, NORMAL_DISPATCH_LENGTH * sizeof(ULONG))
00539 genVal(DISPATCH_LENGTH, DISPATCH_LENGTH * sizeof(ULONG))
00540
00541 #endif
00542
00543 #if defined(_ALPHA_) || defined(_MIPS_) || defined(_PPC_) || defined(_IA64_)
00544
00545 DisableInc(HAL)
00546
00547 #endif
00548
00549
00550
00551
00552
00553 genCom("Process Object Structure Offset Definitions")
00554
00555 genDef(Pr, DISPATCHER_HEADER, Type)
00556 genDef(Pr, DISPATCHER_HEADER, Size)
00557 genDef(Pr, DISPATCHER_HEADER, SignalState)
00558 genDef(Pr,
KPROCESS, ProfileListHead)
00559 genDef(Pr, KPROCESS, DirectoryTableBase)
00560
00561 #if defined(_X86_)
00562
00563 genDef(Pr, KPROCESS, LdtDescriptor)
00564 genDef(Pr, KPROCESS, Int21Descriptor)
00565 genDef(Pr, KPROCESS, IopmOffset)
00566 genDef(Pr, KPROCESS, Iopl)
00567 genDef(Pr, KPROCESS, VdmFlag)
00568
00569 #endif
00570
00571 #if defined(_IA64_)
00572
00573 genDef(Pr, KPROCESS, LdtDescriptor)
00574 genDef(Pr, KPROCESS, Int21Descriptor)
00575 genDef(Pr, KPROCESS, VdmFlag)
00576
00577 genDef(Pr, KPROCESS, ProcessRegion)
00578 genDef(Pr, KPROCESS, SessionRegion)
00579 genDef(Pr, KPROCESS, SessionMapInfo)
00580 genDef(Pr, KPROCESS, SessionParentBase)
00581
00582 #endif
00583
00584 genDef(Pr, KPROCESS, ActiveProcessors)
00585
00586 #if defined(_ALPHA_)
00587
00588 genDef(Pr, KPROCESS, RunOnProcessors)
00589 genDef(Pr, KPROCESS, ProcessSequence)
00590 genDef(Pr, KPROCESS, ProcessAsn)
00591
00592 #endif
00593
00594 genDef(Pr, KPROCESS, KernelTime)
00595 genDef(Pr, KPROCESS, UserTime)
00596 genDef(Pr, KPROCESS, ReadyListHead)
00597 genDef(Pr, KPROCESS, SwapListEntry)
00598 genDef(Pr, KPROCESS, ThreadListHead)
00599 genDef(Pr, KPROCESS, ProcessLock)
00600 genDef(Pr, KPROCESS, Affinity)
00601 genDef(Pr, KPROCESS, StackCount)
00602 genDef(Pr, KPROCESS, BasePriority)
00603 genDef(Pr, KPROCESS, ThreadQuantum)
00604 genDef(Pr, KPROCESS, AutoAlignment)
00605 genDef(Pr, KPROCESS, State)
00606 genVal(ProcessObjectLength, ((sizeof(KPROCESS) + 15) & ~15))
00607 genVal(ExtendedProcessObjectLength, ((sizeof(
EPROCESS) + 15) & ~15))
00608
00609
00610
00611
00612
00613 genCom("Profile Object Structure Offset Definitions")
00614
00615 genDef(Pf,
KPROFILE, Type)
00616 genDef(Pf, KPROFILE, Size)
00617 genDef(Pf, KPROFILE, ProfileListEntry)
00618 genDef(Pf, KPROFILE, Process)
00619 genDef(Pf, KPROFILE, RangeBase)
00620 genDef(Pf, KPROFILE, RangeLimit)
00621 genDef(Pf, KPROFILE, BucketShift)
00622 genDef(Pf, KPROFILE, Buffer)
00623 genDef(Pf, KPROFILE, Segment)
00624 genDef(Pf, KPROFILE, Affinity)
00625 genDef(Pf, KPROFILE, Source)
00626 genDef(Pf, KPROFILE, Started)
00627 genVal(ProfileObjectLength, sizeof(KPROFILE))
00628
00629
00630
00631
00632
00633 genCom("Queue Object Structure Offset Definitions")
00634
00635 genDef(Qu, DISPATCHER_HEADER, Type)
00636 genDef(Qu, DISPATCHER_HEADER, Size)
00637 genDef(Qu, DISPATCHER_HEADER, SignalState)
00638 genDef(Qu,
KQUEUE, EntryListHead)
00639 genDef(Qu, KQUEUE, CurrentCount)
00640 genDef(Qu, KQUEUE, MaximumCount)
00641 genDef(Qu, KQUEUE, ThreadListHead)
00642 genVal(QueueObjectLength, sizeof(KQUEUE))
00643
00644
00645
00646
00647
00648 genCom("Thread Object Structure Offset Definitions")
00649
00650 genDef(Ee,
EEVENT_PAIR, KernelEventPair)
00651 genDef(Et,
ETHREAD, Cid)
00652 genDef(Et, ETHREAD, PerformanceCountLow)
00653 genDef(Et, ETHREAD, PerformanceCountHigh)
00654 genVal(EtEthreadLength, ((sizeof(ETHREAD) + 15) & ~15))
00655
00656 genSpc()
00657
00658 genDef(Th, DISPATCHER_HEADER, Type)
00659 genDef(Th, DISPATCHER_HEADER, Size)
00660 genDef(Th, DISPATCHER_HEADER, SignalState)
00661 genDef(Th,
KTHREAD, MutantListHead)
00662 genDef(Th, KTHREAD, InitialStack)
00663 genDef(Th, KTHREAD, StackLimit)
00664 genDef(Th, KTHREAD, Teb)
00665 genDef(Th, KTHREAD, TlsArray)
00666 genDef(Th, KTHREAD, KernelStack)
00667 genDef(Th, KTHREAD, DebugActive)
00668 genDef(Th, KTHREAD, State)
00669 genDef(Th, KTHREAD, Alerted)
00670 genDef(Th, KTHREAD, Iopl)
00671 genDef(Th, KTHREAD, NpxState)
00672 genDef(Th, KTHREAD, Saturation)
00673 genDef(Th, KTHREAD, Priority)
00674 genDef(Th, KTHREAD, ApcState)
00675 genDef(Th, KTHREAD, ContextSwitches)
00676 genDef(Th, KTHREAD, WaitStatus)
00677 genDef(Th, KTHREAD, WaitIrql)
00678 genDef(Th, KTHREAD, WaitMode)
00679 genDef(Th, KTHREAD, WaitNext)
00680 genDef(Th, KTHREAD, WaitReason)
00681 genDef(Th, KTHREAD, WaitBlockList)
00682 genDef(Th, KTHREAD, WaitListEntry)
00683 genDef(Th, KTHREAD, WaitTime)
00684 genDef(Th, KTHREAD, BasePriority)
00685 genDef(Th, KTHREAD, DecrementCount)
00686 genDef(Th, KTHREAD, PriorityDecrement)
00687 genDef(Th, KTHREAD, Quantum)
00688 genDef(Th, KTHREAD, WaitBlock)
00689 genDef(Th, KTHREAD, KernelApcDisable)
00690 genDef(Th, KTHREAD, UserAffinity)
00691 genDef(Th, KTHREAD, SystemAffinityActive)
00692 genDef(Th, KTHREAD, ServiceTable)
00693
00694
00695
00696
00697 genDef(Th, KTHREAD, Queue)
00698 genDef(Th, KTHREAD, ApcQueueLock)
00699 genDef(Th, KTHREAD, Timer)
00700 genDef(Th, KTHREAD, QueueListEntry)
00701 genDef(Th, KTHREAD, Affinity)
00702 genDef(Th, KTHREAD, Preempted)
00703 genDef(Th, KTHREAD, ProcessReadyQueue)
00704 genDef(Th, KTHREAD, KernelStackResident)
00705 genDef(Th, KTHREAD, NextProcessor)
00706 genDef(Th, KTHREAD, CallbackStack)
00707 genDef(Th, KTHREAD, Win32Thread)
00708 genDef(Th, KTHREAD, TrapFrame)
00709 genDef(Th, KTHREAD, ApcStatePointer)
00710 genDef(Th, KTHREAD, PreviousMode)
00711 genDef(Th, KTHREAD, EnableStackSwap)
00712 genDef(Th, KTHREAD, LargeStack)
00713 genDef(Th, KTHREAD, KernelTime)
00714 genDef(Th, KTHREAD, UserTime)
00715 genDef(Th, KTHREAD, SavedApcState)
00716 genDef(Th, KTHREAD, Alertable)
00717 genDef(Th, KTHREAD, ApcStateIndex)
00718 genDef(Th, KTHREAD, ApcQueueable)
00719 genDef(Th, KTHREAD, AutoAlignment)
00720 genDef(Th, KTHREAD, StackBase)
00721 genDef(Th, KTHREAD, SuspendApc)
00722 genDef(Th, KTHREAD, SuspendSemaphore)
00723 genDef(Th, KTHREAD, ThreadListEntry)
00724 genDef(Th, KTHREAD, FreezeCount)
00725 genDef(Th, KTHREAD, SuspendCount)
00726 genDef(Th, KTHREAD, IdealProcessor)
00727 genDef(Th, KTHREAD, DisableBoost)
00728
00729 #if defined(_IA64_)
00730
00731 genDef(Th, KTHREAD, InitialBStore)
00732 genDef(Th, KTHREAD, BStoreLimit)
00733 genDef(Th, KTHREAD, KernelBStore)
00734 genDef(Th, KTHREAD, CallbackBStore)
00735
00736 #endif
00737
00738 genVal(ThreadObjectLength, ((sizeof(KTHREAD) + 15) & ~15))
00739 genVal(ExtendedThreadObjectLength, ((sizeof(ETHREAD) + 15) & ~15))
00740
00741 genSpc()
00742
00743 genVal(EVENT_WAIT_BLOCK_OFFSET, OFFSET(KTHREAD, WaitBlock) + (sizeof(
KWAIT_BLOCK) * EVENT_WAIT_BLOCK))
00744
00745 #if defined(_X86_)
00746
00747 genVal(NPX_STATE_NOT_LOADED, NPX_STATE_NOT_LOADED)
00748 genVal(NPX_STATE_LOADED, NPX_STATE_LOADED)
00749
00750 #endif
00751
00752
00753
00754
00755
00756 genCom("Timer object Structure Offset Definitions")
00757
00758 genDef(Ti, DISPATCHER_HEADER, Type)
00759 genDef(Ti, DISPATCHER_HEADER, Size)
00760 genDef(Ti, DISPATCHER_HEADER, Inserted)
00761 genDef(Ti, DISPATCHER_HEADER, SignalState)
00762 genDef(Ti,
KTIMER, DueTime)
00763 genDef(Ti, KTIMER, TimerListEntry)
00764 genDef(Ti, KTIMER, Dpc)
00765 genDef(Ti, KTIMER, Period)
00766 genVal(TimerObjectLength, sizeof(KTIMER))
00767
00768 genSpc()
00769
00770 genVal(TIMER_TABLE_SIZE, TIMER_TABLE_SIZE)
00771
00772
00773
00774
00775
00776 genCom("Wait Block Structure Offset Definitions")
00777
00778 genDef(Wb,
KWAIT_BLOCK, WaitListEntry)
00779 genDef(Wb, KWAIT_BLOCK, Thread)
00780 genDef(Wb, KWAIT_BLOCK, Object)
00781 genDef(Wb, KWAIT_BLOCK, NextWaitBlock)
00782 genDef(Wb, KWAIT_BLOCK, WaitKey)
00783 genDef(Wb, KWAIT_BLOCK, WaitType)
00784
00785
00786
00787
00788
00789 genCom("Fiber Structure Offset Definitions")
00790
00791 genDef(Fb, FIBER, FiberData)
00792 genDef(Fb, FIBER, ExceptionList)
00793 genDef(Fb, FIBER, StackBase)
00794 genDef(Fb, FIBER, StackLimit)
00795 genDef(Fb, FIBER, DeallocationStack)
00796 genDef(Fb, FIBER, FiberContext)
00797 genDef(Fb, FIBER, Wx86Tib)
00798
00799 #if defined(_IA64_)
00800
00801 genDef(Fb, FIBER, DeallocationBStore)
00802 genDef(Fb, FIBER, BStoreLimit)
00803
00804 #endif
00805
00806
00807
00808
00809
00810 genCom("Process Environment Block Structure Offset Definitions")
00811
00812 genDef(Pe, PEB, KernelCallbackTable)
00813
00814
00815
00816
00817
00818 genCom("System Service Descriptor Table Structure Definitions")
00819
00820 genVal(NUMBER_SERVICE_TABLES, NUMBER_SERVICE_TABLES)
00821 genVal(SERVICE_NUMBER_MASK, SERVICE_NUMBER_MASK)
00822 genVal(SERVICE_TABLE_SHIFT, SERVICE_TABLE_SHIFT)
00823 genVal(SERVICE_TABLE_MASK, SERVICE_TABLE_MASK)
00824 genVal(SERVICE_TABLE_TEST, SERVICE_TABLE_TEST)
00825
00826 genSpc()
00827
00828 genDef(Sd,
KSERVICE_TABLE_DESCRIPTOR, Base)
00829 genDef(Sd, KSERVICE_TABLE_DESCRIPTOR, Count)
00830 genDef(Sd, KSERVICE_TABLE_DESCRIPTOR, Limit)
00831 #if defined(_IA64_)
00832 genDef(Sd, KSERVICE_TABLE_DESCRIPTOR, TableBaseGpOffset)
00833 #endif
00834 genDef(Sd, KSERVICE_TABLE_DESCRIPTOR, Number)
00835
00836
00837
00838
00839
00840 genCom("Thread Environment Block Structure Offset Definitions")
00841
00842 genDef(Te, NT_TIB, StackBase)
00843 genDef(Te, NT_TIB, StackLimit)
00844 genDef(Te, NT_TIB, FiberData)
00845 genDef(Te, TEB, EnvironmentPointer)
00846 genDef(Te, TEB, ClientId)
00847 genDef(Te, TEB, ActiveRpcHandle)
00848 genDef(Te, TEB, ThreadLocalStoragePointer)
00849 genDef(Te, TEB, CountOfOwnedCriticalSections)
00850 genAlt(TePeb, TEB, ProcessEnvironmentBlock)
00851 genDef(Te, TEB, CsrClientThread)
00852 genDef(Te, TEB, WOW32Reserved)
00853 genAlt(TeSoftFpcr, TEB, FpSoftwareStatusRegister)
00854 genDef(Te, TEB, GdiClientPID)
00855 genDef(Te, TEB, GdiClientTID)
00856 genDef(Te, TEB, GdiThreadLocalInfo)
00857 genDef(Te, TEB, glDispatchTable)
00858 genDef(Te, TEB, glReserved1)
00859 genDef(Te, TEB, glReserved2)
00860 genDef(Te, TEB, glSectionInfo)
00861 genDef(Te, TEB, glSection)
00862 genDef(Te, TEB, glTable)
00863 genDef(Te, TEB, glCurrentRC)
00864 genDef(Te, TEB, glContext)
00865 genDef(Te, TEB, DeallocationStack)
00866 genDef(Te, TEB, TlsSlots)
00867 genDef(Te, TEB, Vdm)
00868 genDef(Te, TEB, GdiBatchCount)
00869 genDef(Te, TEB, Instrumentation)
00870
00871 #if defined(_IA64_)
00872
00873 genDef(Te, NT_TIB, ExceptionList)
00874 genDef(Te, TEB, DeallocationBStore)
00875 genDef(Te, TEB, BStoreLimit)
00876 genDef(Te, TEB, DbgSsReserved)
00877
00878 #endif
00879
00880 genVal(ThreadEnvironmentBlockLength, sizeof(TEB))
00881
00882
00883
00884
00885
00886 #if defined(_X86_)
00887
00888 EnableInc(HAL)
00889
00890 #endif
00891
00892 genCom("Lock Queue Structure Offset Definitions")
00893
00894 genNam(LOCK_QUEUE_WAIT)
00895 genNam(LOCK_QUEUE_OWNER)
00896 genVal(LOCK_QUEUE_HEADER_SIZE, sizeof(
KSPIN_LOCK_QUEUE))
00897 genSpc()
00898
00899 genNam(LockQueueDispatcherLock)
00900 genNam(LockQueueContextSwapLock)
00901 genNam(LockQueuePfnLock)
00902 genSpc()
00903
00904 genDef(Lq,
KSPIN_LOCK_QUEUE, Next)
00905 genDef(Lq, KSPIN_LOCK_QUEUE, Lock)
00906
00907 #if defined(_X86_)
00908
00909 DisableInc(HAL)
00910
00911 #endif