ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

ksamd64.template.h
Go to the documentation of this file.
00001 
00002 HEADER("CR0 flags"),
00003 CONSTANT(CR0_PE),
00004 CONSTANT(CR0_MP),
00005 CONSTANT(CR0_EM),
00006 CONSTANT(CR0_TS),
00007 CONSTANT(CR0_ET),
00008 CONSTANT(CR0_NE),
00009 CONSTANT(CR0_WP),
00010 CONSTANT(CR0_AM),
00011 CONSTANT(CR0_NW),
00012 CONSTANT(CR0_CD),
00013 CONSTANT(CR0_PG),
00014 
00015 HEADER("CR4 flags"),
00016 CONSTANT(CR4_VME),
00017 CONSTANT(CR4_PVI),
00018 CONSTANT(CR4_TSD),
00019 CONSTANT(CR4_DE),
00020 CONSTANT(CR4_PSE),
00021 CONSTANT(CR4_PAE),
00022 CONSTANT(CR4_MCE),
00023 CONSTANT(CR4_PGE),
00024 CONSTANT(CR4_FXSR),
00025 CONSTANT(CR4_XMMEXCPT),
00026 CONSTANT(CR4_CHANNELS),
00027 
00028 HEADER("KeFeatureBits flags"),
00029 CONSTANT(KF_RDTSC),
00030 CONSTANT(KF_CR4),
00031 CONSTANT(KF_GLOBAL_PAGE),
00032 CONSTANT(KF_LARGE_PAGE),
00033 CONSTANT(KF_CMPXCHG8B),
00034 CONSTANT(KF_FAST_SYSCALL),
00035 
00036 HEADER("Machine type definitions"),
00037 CONSTANT(MACHINE_TYPE_ISA),
00038 CONSTANT(MACHINE_TYPE_EISA),
00039 CONSTANT(MACHINE_TYPE_MCA),
00040 
00041 HEADER("EFLAGS"),
00042 CONSTANT(EFLAGS_TF_MASK),
00043 CONSTANT(EFLAGS_TF_SHIFT),
00044 CONSTANT(EFLAGS_IF_MASK),
00045 CONSTANT(EFLAGS_IF_SHIFT),
00046 CONSTANT(EFLAGS_ID_MASK),
00047 
00048 HEADER("Hypervisor Enlightenment Definitions"),
00049 //CONSTANT(HV_MMU_USE_HYPERCALL_FOR_ADDRESS_SWITCH),
00050 //CONSTANT(HV_MMU_USE_HYPERCALL_FOR_LOCAL_FLUSH),
00051 //CONSTANT(HV_MMU_USE_HYPERCALL_FOR_REMOTE_FLUSH),
00052 //CONSTANT(HV_X64_MSR_APIC_EOI),
00053 //CONSTANT(HV_APIC_ENLIGHTENED),
00054 //CONSTANT(HV_KE_USE_HYPERCALL_FOR_LONG_SPIN_WAIT),
00055 //CONSTANT(HV_VIRTUAL_APIC_NO_EOI_REQUIRED_V),
00056 //CONSTANT(HvApicFlags),
00057 
00058 HEADER("KDGT selectors"),
00059 CONSTANT(KGDT64_NULL),
00060 CONSTANT(KGDT64_R0_CODE),
00061 CONSTANT(KGDT64_R0_DATA),
00062 CONSTANT(KGDT64_R3_CMCODE),
00063 CONSTANT(KGDT64_R3_DATA),
00064 CONSTANT(KGDT64_R3_CODE),
00065 CONSTANT(KGDT64_SYS_TSS),
00066 CONSTANT(KGDT64_R3_CMTEB),
00067 
00068 HEADER("Machine Specific Register Numbers"),
00069 CONSTANT(MSR_EFER),
00070 CONSTANT(MSR_STAR),
00071 CONSTANT(MSR_LSTAR),
00072 CONSTANT(MSR_CSTAR),
00073 CONSTANT(MSR_SYSCALL_MASK),
00074 CONSTANT(MSR_FS_BASE),
00075 CONSTANT(MSR_GS_BASE),
00076 CONSTANT(MSR_GS_SWAP),
00077 CONSTANT(MSR_MCG_STATUS),
00078 CONSTANT(MSR_AMD_ACCESS),
00079 
00080 HEADER("Flags for MSR_EFER"),
00081 CONSTANT(MSR_LMA),
00082 CONSTANT(MSR_LME),
00083 CONSTANT(MSR_SCE),
00084 CONSTANT(MSR_NXE),
00085 CONSTANT(MSR_PAT),
00086 CONSTANT(MSR_DEGUG_CTL),
00087 CONSTANT(MSR_LAST_BRANCH_FROM),
00088 CONSTANT(MSR_LAST_BRANCH_TO),
00089 CONSTANT(MSR_LAST_EXCEPTION_FROM),
00090 CONSTANT(MSR_LAST_EXCEPTION_TO),
00091 
00092 HEADER("Flags for MSR_DEGUG_CTL"),
00093 //CONSTANT(MSR_DEBUG_CTL_LBR),
00094 //CONSTANT(MSR_DEBUG_CRL_BTF),
00095 
00096 HEADER("Fatal exception codes"),
00097 CONSTANT(EXCEPTION_DIVIDED_BY_ZERO),
00098 CONSTANT(EXCEPTION_DEBUG),
00099 CONSTANT(EXCEPTION_NMI),
00100 CONSTANT(EXCEPTION_INT3),
00101 CONSTANT(EXCEPTION_BOUND_CHECK),
00102 CONSTANT(EXCEPTION_INVALID_OPCODE),
00103 CONSTANT(EXCEPTION_NPX_NOT_AVAILABLE),
00104 CONSTANT(EXCEPTION_DOUBLE_FAULT),
00105 CONSTANT(EXCEPTION_NPX_OVERRUN),
00106 CONSTANT(EXCEPTION_INVALID_TSS),
00107 CONSTANT(EXCEPTION_SEGMENT_NOT_PRESENT),
00108 CONSTANT(EXCEPTION_STACK_FAULT),
00109 CONSTANT(EXCEPTION_GP_FAULT),
00110 CONSTANT(EXCEPTION_RESERVED_TRAP),
00111 CONSTANT(EXCEPTION_NPX_ERROR),
00112 CONSTANT(EXCEPTION_ALIGNMENT_CHECK),
00113 
00114 HEADER("Argument Home Address"),
00115 CONSTANT(P1Home),
00116 CONSTANT(P2Home),
00117 CONSTANT(P3Home),
00118 CONSTANT(P4Home),
00119 
00120 HEADER("CONTEXT"),
00121 OFFSET(CONTEXT_P1Home, CONTEXT, P1Home),
00122 OFFSET(CONTEXT_P2Home, CONTEXT, P2Home),
00123 OFFSET(CONTEXT_P3Home, CONTEXT, P3Home),
00124 OFFSET(CONTEXT_P4Home, CONTEXT, P4Home),
00125 OFFSET(CONTEXT_P5Home, CONTEXT, P5Home),
00126 OFFSET(CONTEXT_P6Home, CONTEXT, P6Home),
00127 OFFSET(CONTEXT_ContextFlags, CONTEXT, ContextFlags),
00128 OFFSET(CONTEXT_MxCsr, CONTEXT, MxCsr),
00129 OFFSET(CONTEXT_SegCs, CONTEXT, SegCs),
00130 OFFSET(CONTEXT_SegDs, CONTEXT, SegDs),
00131 OFFSET(CONTEXT_SegEs, CONTEXT, SegEs),
00132 OFFSET(CONTEXT_SegFs, CONTEXT, SegFs),
00133 OFFSET(CONTEXT_SegGs, CONTEXT, SegGs),
00134 OFFSET(CONTEXT_SegSs, CONTEXT, SegSs),
00135 OFFSET(CONTEXT_EFlags, CONTEXT, EFlags),
00136 OFFSET(CONTEXT_Dr0, CONTEXT, Dr0),
00137 OFFSET(CONTEXT_Dr1, CONTEXT, Dr1),
00138 OFFSET(CONTEXT_Dr2, CONTEXT, Dr2),
00139 OFFSET(CONTEXT_Dr3, CONTEXT, Dr3),
00140 OFFSET(CONTEXT_Dr6, CONTEXT, Dr6),
00141 OFFSET(CONTEXT_Dr7, CONTEXT, Dr7),
00142 OFFSET(CONTEXT_Rax, CONTEXT, Rax),
00143 OFFSET(CONTEXT_Rcx, CONTEXT, Rcx),
00144 OFFSET(CONTEXT_Rdx, CONTEXT, Rdx),
00145 OFFSET(CONTEXT_Rbx, CONTEXT, Rbx),
00146 OFFSET(CONTEXT_Rsp, CONTEXT, Rsp),
00147 OFFSET(CONTEXT_Rbp, CONTEXT, Rbp),
00148 OFFSET(CONTEXT_Rsi, CONTEXT, Rsi),
00149 OFFSET(CONTEXT_Rdi, CONTEXT, Rdi),
00150 OFFSET(CONTEXT_R8, CONTEXT, R8),
00151 OFFSET(CONTEXT_R9, CONTEXT, R9),
00152 OFFSET(CONTEXT_R10, CONTEXT, R10),
00153 OFFSET(CONTEXT_R11, CONTEXT, R11),
00154 OFFSET(CONTEXT_R12, CONTEXT, R12),
00155 OFFSET(CONTEXT_R13, CONTEXT, R13),
00156 OFFSET(CONTEXT_R14, CONTEXT, R14),
00157 OFFSET(CONTEXT_R15, CONTEXT, R15),
00158 OFFSET(CONTEXT_Rip, CONTEXT, Rip),
00159 OFFSET(CONTEXT_FltSave, CONTEXT, FltSave),
00160 OFFSET(CONTEXT_Xmm0, CONTEXT, Xmm0),
00161 OFFSET(CONTEXT_Xmm1, CONTEXT, Xmm1),
00162 OFFSET(CONTEXT_Xmm2, CONTEXT, Xmm2),
00163 OFFSET(CONTEXT_Xmm3, CONTEXT, Xmm3),
00164 OFFSET(CONTEXT_Xmm4, CONTEXT, Xmm4),
00165 OFFSET(CONTEXT_Xmm5, CONTEXT, Xmm5),
00166 OFFSET(CONTEXT_Xmm6, CONTEXT, Xmm6),
00167 OFFSET(CONTEXT_Xmm7, CONTEXT, Xmm7),
00168 OFFSET(CONTEXT_Xmm8, CONTEXT, Xmm8),
00169 OFFSET(CONTEXT_Xmm9, CONTEXT, Xmm9),
00170 OFFSET(CONTEXT_Xmm10, CONTEXT, Xmm10),
00171 OFFSET(CONTEXT_Xmm11, CONTEXT, Xmm11),
00172 OFFSET(CONTEXT_Xmm12, CONTEXT, Xmm12),
00173 OFFSET(CONTEXT_Xmm13, CONTEXT, Xmm13),
00174 OFFSET(CONTEXT_Xmm14, CONTEXT, Xmm14),
00175 OFFSET(CONTEXT_Xmm15, CONTEXT, Xmm15),
00176 OFFSET(CONTEXT_DebugControl, CONTEXT, DebugControl),
00177 OFFSET(CONTEXT_LastBranchToRip, CONTEXT, LastBranchToRip),
00178 OFFSET(CONTEXT_LastBranchFromRip, CONTEXT, LastBranchFromRip),
00179 OFFSET(CONTEXT_LastExceptionToRip, CONTEXT, LastExceptionToRip),
00180 OFFSET(CONTEXT_LastExceptionFromRip, CONTEXT, LastExceptionFromRip),
00181 OFFSET(CONTEXT_VectorControl, CONTEXT, VectorControl),
00182 OFFSET(CONTEXT_VectorRegister, CONTEXT, VectorRegister),
00183 SIZE(CONTEXT_FRAME_LENGTH, CONTEXT),
00184 
00185 HEADER("DISPATCHER_CONTEXT"),
00186 OFFSET(DcControlPc, DISPATCHER_CONTEXT, ControlPc),
00187 OFFSET(DcImageBase, DISPATCHER_CONTEXT, ImageBase),
00188 OFFSET(DcFunctionEntry, DISPATCHER_CONTEXT, FunctionEntry),
00189 OFFSET(DcEstablisherFrame, DISPATCHER_CONTEXT, EstablisherFrame),
00190 OFFSET(DcTargetIp, DISPATCHER_CONTEXT, TargetIp),
00191 OFFSET(DcContextRecord, DISPATCHER_CONTEXT, ContextRecord),
00192 OFFSET(DcLanguageHandler, DISPATCHER_CONTEXT, LanguageHandler),
00193 OFFSET(DcHandlerData, DISPATCHER_CONTEXT, HandlerData),
00194 OFFSET(DcHistoryTable, DISPATCHER_CONTEXT, HistoryTable),
00195 OFFSET(DcScopeIndex, DISPATCHER_CONTEXT, ScopeIndex),
00196 
00197 HEADER("KEXCEPTION_FRAME"),
00198 OFFSET(KEXCEPTION_FRAME_P1Home, KEXCEPTION_FRAME, P1Home),
00199 OFFSET(KEXCEPTION_FRAME_P2Home, KEXCEPTION_FRAME, P2Home),
00200 OFFSET(KEXCEPTION_FRAME_P3Home, KEXCEPTION_FRAME, P3Home),
00201 OFFSET(KEXCEPTION_FRAME_P4Home, KEXCEPTION_FRAME, P4Home),
00202 OFFSET(KEXCEPTION_FRAME_P5, KEXCEPTION_FRAME, P5),
00203 OFFSET(KEXCEPTION_FRAME_Xmm6, KEXCEPTION_FRAME, Xmm6),
00204 OFFSET(KEXCEPTION_FRAME_Xmm7, KEXCEPTION_FRAME, Xmm7),
00205 OFFSET(KEXCEPTION_FRAME_Xmm8, KEXCEPTION_FRAME, Xmm8),
00206 OFFSET(KEXCEPTION_FRAME_Xmm9, KEXCEPTION_FRAME, Xmm9),
00207 OFFSET(KEXCEPTION_FRAME_Xmm10, KEXCEPTION_FRAME, Xmm10),
00208 OFFSET(KEXCEPTION_FRAME_Xmm11, KEXCEPTION_FRAME, Xmm11),
00209 OFFSET(KEXCEPTION_FRAME_Xmm12, KEXCEPTION_FRAME, Xmm12),
00210 OFFSET(KEXCEPTION_FRAME_Xmm13, KEXCEPTION_FRAME, Xmm13),
00211 OFFSET(KEXCEPTION_FRAME_Xmm14, KEXCEPTION_FRAME, Xmm14),
00212 OFFSET(KEXCEPTION_FRAME_Xmm15, KEXCEPTION_FRAME, Xmm15),
00213 OFFSET(KEXCEPTION_FRAME_MxCsr, KEXCEPTION_FRAME, MxCsr),
00214 OFFSET(KEXCEPTION_FRAME_Rbp, KEXCEPTION_FRAME, Rbp),
00215 OFFSET(KEXCEPTION_FRAME_Rbx, KEXCEPTION_FRAME, Rbx),
00216 OFFSET(KEXCEPTION_FRAME_Rdi, KEXCEPTION_FRAME, Rdi),
00217 OFFSET(KEXCEPTION_FRAME_Rsi, KEXCEPTION_FRAME, Rsi),
00218 OFFSET(KEXCEPTION_FRAME_R12, KEXCEPTION_FRAME, R12),
00219 OFFSET(KEXCEPTION_FRAME_R13, KEXCEPTION_FRAME, R13),
00220 OFFSET(KEXCEPTION_FRAME_R14, KEXCEPTION_FRAME, R14),
00221 OFFSET(KEXCEPTION_FRAME_R15, KEXCEPTION_FRAME, R15),
00222 OFFSET(KEXCEPTION_FRAME_Return, KEXCEPTION_FRAME, Return),
00223 OFFSET(KEXCEPTION_FRAME_InitialStack, KEXCEPTION_FRAME, InitialStack),
00224 OFFSET(KEXCEPTION_FRAME_TrapFrame, KEXCEPTION_FRAME, TrapFrame),
00225 OFFSET(KEXCEPTION_FRAME_CallbackStack, KEXCEPTION_FRAME, CallbackStack),
00226 OFFSET(KEXCEPTION_FRAME_OutputBuffer, KEXCEPTION_FRAME, OutputBuffer),
00227 OFFSET(KEXCEPTION_FRAME_OutputLength, KEXCEPTION_FRAME, OutputLength),
00228 SIZE(KEXCEPTION_FRAME_LENGTH, KEXCEPTION_FRAME),
00229 
00230 HEADER("JUMP_BUFFER"),
00231 OFFSET(JbFrame, _JUMP_BUFFER, Frame),
00232 OFFSET(JbRbx, _JUMP_BUFFER, Rbx),
00233 OFFSET(JbRsp, _JUMP_BUFFER, Rsp),
00234 OFFSET(JbRbp, _JUMP_BUFFER, Rbp),
00235 OFFSET(JbRsi, _JUMP_BUFFER, Rsi),
00236 OFFSET(JbRdi, _JUMP_BUFFER, Rdi),
00237 OFFSET(JbR12, _JUMP_BUFFER, R12),
00238 OFFSET(JbR13, _JUMP_BUFFER, R13),
00239 OFFSET(JbR14, _JUMP_BUFFER, R14),
00240 OFFSET(JbR15, _JUMP_BUFFER, R15),
00241 OFFSET(JbRip, _JUMP_BUFFER, Rip),
00242 //OFFSET(JbMxCsr, _JUMP_BUFFER, MxCsr), // Spare
00243 //OFFSET(JbFpCsr, _JUMP_BUFFER, FpCsr),
00244 OFFSET(JbXmm6, _JUMP_BUFFER, Xmm6),
00245 OFFSET(JbXmm7, _JUMP_BUFFER, Xmm7),
00246 OFFSET(JbXmm8, _JUMP_BUFFER, Xmm8),
00247 OFFSET(JbXmm9, _JUMP_BUFFER, Xmm9),
00248 OFFSET(JbXmm10, _JUMP_BUFFER, Xmm10),
00249 OFFSET(JbXmm11, _JUMP_BUFFER, Xmm11),
00250 OFFSET(JbXmm12, _JUMP_BUFFER, Xmm12),
00251 OFFSET(JbXmm13, _JUMP_BUFFER, Xmm13),
00252 OFFSET(JbXmm14, _JUMP_BUFFER, Xmm14),
00253 OFFSET(JbXmm15, _JUMP_BUFFER, Xmm15),
00254 
00255 HEADER("KGDTENTRY64"),
00256 OFFSET(KgdtBaseLow, KGDTENTRY64, BaseLow),
00257 OFFSET(KgdtBaseMiddle, KGDTENTRY64, Bytes.BaseMiddle),
00258 OFFSET(KgdtBaseHigh, KGDTENTRY64, Bytes.BaseHigh),
00259 OFFSET(KgdtBaseUpper, KGDTENTRY64, BaseUpper),
00260 OFFSET(KgdtLimitHigh, KGDTENTRY64, Bytes.Flags2),
00261 OFFSET(KgdtLimitLow, KGDTENTRY64, LimitLow),
00262 //CONSTANT(KGDT_LIMIT_ENCODE_MASK),
00263 
00264 HEADER("KPRCB"),
00265 OFFSET(PbMxCsr, KPRCB, MxCsr),
00266 OFFSET(PbNumber, KPRCB, Number),
00267 OFFSET(PbInterruptRequest, KPRCB, InterruptRequest),
00268 OFFSET(PbIdleHalt, KPRCB, IdleHalt),
00269 OFFSET(PbCurrentThread, KPRCB, CurrentThread),
00270 OFFSET(PbNextThread, KPRCB, NextThread),
00271 OFFSET(PbIdleThread, KPRCB, IdleThread),
00272 OFFSET(PbNestingLevel, KPRCB, NestingLevel),
00273 OFFSET(PbRspBase, KPRCB, RspBase),
00274 OFFSET(PbPrcbLock, KPRCB, PrcbLock),
00275 OFFSET(PbSetMember, KPRCB, SetMember),
00276 OFFSET(PbProcessorState, KPRCB, ProcessorState),
00277 OFFSET(PbCpuType, KPRCB, CpuType),
00278 OFFSET(PbCpuID, KPRCB, CpuID),
00279 OFFSET(PbCpuStep, KPRCB, CpuStep),
00280 OFFSET(PbHalReserved, KPRCB, HalReserved),
00281 OFFSET(PbMinorVersion, KPRCB, MinorVersion),
00282 OFFSET(PbMajorVersion, KPRCB, MajorVersion),
00283 OFFSET(PbBuildType, KPRCB, BuildType),
00284 OFFSET(PbCpuVendor, KPRCB, CpuVendor),
00285 //OFFSET(PbCoresPerPhysicalProcessor, KPRCB, CoresPerPhysicalProcessor),
00286 //OFFSET(PbLogicalProcessorsPerCore, KPRCB, LogicalProcessorsPerCore),
00287 OFFSET(PbApicMask, KPRCB, ApicMask),
00288 OFFSET(PbCFlushSize, KPRCB, CFlushSize),
00289 OFFSET(PbAcpiReserved, KPRCB, AcpiReserved),
00290 OFFSET(PbInitialApicId, KPRCB, InitialApicId),
00291 //OFFSET(PbStride, KPRCB, Stride),
00292 OFFSET(PbLockQueue, KPRCB, LockQueue),
00293 OFFSET(PbPPLookasideList, KPRCB, PPLookasideList),
00294 OFFSET(PbPPNPagedLookasideList, KPRCB, PPNPagedLookasideList),
00295 OFFSET(PbPPPagedLookasideList, KPRCB, PPPagedLookasideList),
00296 OFFSET(PbPacketBarrier, KPRCB, PacketBarrier),
00297 OFFSET(PbDeferredReadyListHead, KPRCB, DeferredReadyListHead),
00298 OFFSET(PbLookasideIrpFloat, KPRCB, LookasideIrpFloat),
00299 //OFFSET(PbSystemCalls, KPRCB, SystemCalls),
00300 //OFFSET(PbReadOperationCount, KPRCB, ReadOperationCount),
00301 //OFFSET(PbWriteOperationCount, KPRCB, WriteOperationCount),
00302 //OFFSET(PbOtherOperationCount, KPRCB, OtherOperationCount),
00303 //OFFSET(PbReadTransferCount, KPRCB, ReadTransferCount),
00304 //OFFSET(PbWriteTransferCount, KPRCB, WriteTransferCount),
00305 //OFFSET(PbOtherTransferCount, KPRCB, OtherTransferCount),
00306 //OFFSET(PbContextSwitches, KPRCB, ContextSwitches),
00307 OFFSET(PbTargetSet, KPRCB, TargetSet),
00308 OFFSET(PbIpiFrozen, KPRCB, IpiFrozen),
00309 OFFSET(PbRequestMailbox, KPRCB, RequestMailbox),
00310 OFFSET(PbSenderSummary, KPRCB, SenderSummary),
00311 //OFFSET(PbDpcListHead, KPRCB, DpcListHead),
00312 //OFFSET(PbDpcLock, KPRCB, DpcLock),
00313 //OFFSET(PbDpcQueueDepth, KPRCB, DpcQueueDepth),
00314 //OFFSET(PbDpcCount, KPRCB, DpcCount),
00315 OFFSET(PbDpcStack, KPRCB, DpcStack),
00316 OFFSET(PbMaximumDpcQueueDepth, KPRCB, MaximumDpcQueueDepth),
00317 OFFSET(PbDpcRequestRate, KPRCB, DpcRequestRate),
00318 OFFSET(PbMinimumDpcRate, KPRCB, MinimumDpcRate),
00319 OFFSET(PbDpcInterruptRequested, KPRCB, DpcInterruptRequested),
00320 OFFSET(PbDpcThreadRequested, KPRCB, DpcThreadRequested),
00321 OFFSET(PbDpcRoutineActive, KPRCB, DpcRoutineActive),
00322 OFFSET(PbDpcThreadActive, KPRCB, DpcThreadActive),
00323 OFFSET(PbTimerHand, KPRCB, TimerHand),
00324 OFFSET(PbTimerRequest, KPRCB, TimerRequest),
00325 OFFSET(PbTickOffset, KPRCB, TickOffset),
00326 OFFSET(PbMasterOffset, KPRCB, MasterOffset),
00327 OFFSET(PbDpcLastCount, KPRCB, DpcLastCount),
00328 OFFSET(PbQuantumEnd, KPRCB, QuantumEnd),
00329 OFFSET(PbDpcSetEventRequest, KPRCB, DpcSetEventRequest),
00330 OFFSET(PbIdleSchedule, KPRCB, IdleSchedule),
00331 OFFSET(PbReadySummary, KPRCB, ReadySummary),
00332 OFFSET(PbDispatcherReadyListHead, KPRCB, DispatcherReadyListHead),
00333 OFFSET(PbInterruptCount, KPRCB, InterruptCount),
00334 OFFSET(PbKernelTime, KPRCB, KernelTime),
00335 OFFSET(PbUserTime, KPRCB, UserTime),
00336 OFFSET(PbDpcTime, KPRCB, DpcTime),
00337 OFFSET(PbInterruptTime, KPRCB, InterruptTime),
00338 OFFSET(PbAdjustDpcThreshold, KPRCB, AdjustDpcThreshold),
00339 OFFSET(PbSkipTick, KPRCB, SkipTick),
00340 OFFSET(PbPollSlot, KPRCB, PollSlot),
00341 OFFSET(PbParentNode, KPRCB, ParentNode),
00342 OFFSET(PbMultiThreadProcessorSet, KPRCB, MultiThreadProcessorSet),
00343 OFFSET(PbMultiThreadSetMaster, KPRCB, MultiThreadSetMaster),
00344 //OFFSET(PbStartCycles, KPRCB, StartCycles),
00345 OFFSET(PbPageColor, KPRCB, PageColor),
00346 OFFSET(PbNodeColor, KPRCB, NodeColor),
00347 OFFSET(PbNodeShiftedColor, KPRCB,NodeShiftedColor),
00348 OFFSET(PbSecondaryColorMask, KPRCB, SecondaryColorMask),
00349 OFFSET(PbSleeping, KPRCB, Sleeping),
00350 //OFFSET(PbCycleTime, KPRCB, CycleTime),
00351 //OFFSET(PbFastReadNoWait, KPRCB, FastReadNoWait),
00352 //OFFSET(PbFastReadWait, KPRCB, FastReadWait),
00353 //OFFSET(PbFastReadNotPossible, KPRCB, FastReadNotPossible),
00354 //OFFSET(PbCopyReadNoWait, KPRCB, CopyReadNoWait),
00355 //OFFSET(PbCopyReadWait, KPRCB, CopyReadWait),
00356 //OFFSET(PbCopyReadNoWaitMiss, KPRCB, CopyReadNoWaitMiss),
00357 //OFFSET(PbAlignmentFixupCount, KPRCB, AlignmentFixupCount),
00358 //OFFSET(PbExceptionDispatchCount, KPRCB, ExceptionDispatchCount),
00359 OFFSET(PbVendorString, KPRCB, VendorString),
00360 OFFSET(PbPowerState, KPRCB, PowerState),
00361 SIZE(ProcessorBlockLength, KPRCB),
00362 
00363 HEADER("KPCR"),
00364 //OFFSET(PcGdt, KPCR, Gdt),
00365 //OFFSET(PcTss, KPCR, Tss),
00366 OFFSET(PcUserRsp, KPCR, UserRsp),
00367 OFFSET(PcSelf, KPCR, Self),
00368 OFFSET(PcCurrentPrcb, KPCR, CurrentPrcb),
00369 OFFSET(PcLockArray, KPCR, LockArray),
00370 //OFFSET(PcTeb, KPCR, Teb),
00371 //OFFSET(PcIdt, KPCR, Idt),
00372 OFFSET(PcIrql, KPCR, Irql),
00373 OFFSET(PcStallScaleFactor, KPCR, StallScaleFactor),
00374 OFFSET(PcHalReserved, KPCR, HalReserved),
00375 //OFFSET(PcPrcb, KPCR, Prcb),
00376 //OFFSET(PcMxCsr, KPCR, MxCsr),
00377 //OFFSET(PcNumber, KPCR, Number),
00378 //OFFSET(PcInterruptRequest, KPCR, InterruptRequest),
00379 //OFFSET(PcIdleHalt, KPCR, IdleHalt),
00380 OFFSET(PcCurrentThread, KIPCR, Prcb.CurrentThread),
00381 //OFFSET(PcNextThread, KPCR, NextThread),
00382 //OFFSET(PcIdleThread, KPCR, IdleThread),
00383 //OFFSET(PcIpiFrozen, KPCR, IpiFrozen),
00384 //OFFSET(PcNestingLevel, KPCR, NestingLevel),
00385 OFFSET(PcRspBase, KIPCR, Prcb.RspBase),
00386 //OFFSET(PcPrcbLock, KPCR, PrcbLock),
00387 OFFSET(PcSetMember, KIPCR, Prcb.SetMember),
00388 #if 0
00389 OFFSET(PcCr0, KIPCR, Prcb.Cr0),
00390 OFFSET(PcCr2, KIPCR, Prcb.Cr2),
00391 OFFSET(PcCr3, KIPCR, Prcb.Cr3),
00392 OFFSET(PcCr4, KIPCR, Prcb.Cr4),
00393 OFFSET(PcKernelDr0, KIPCR, Prcb.KernelDr0),
00394 OFFSET(PcKernelDr1, KIPCR, Prcb.KernelDr1),
00395 OFFSET(PcKernelDr2, KIPCR, Prcb.KernelDr2),
00396 OFFSET(PcKernelDr3, KIPCR, Prcb.KernelDr3),
00397 OFFSET(PcKernelDr7, KIPCR, Prcb.KernelDr7),
00398 OFFSET(PcGdtrLimit, KIPCR, Prcb.GdtrLimit),
00399 OFFSET(PcGdtrBase, KIPCR, Prcb.GdtrBase),
00400 OFFSET(PcIdtrLimit, KIPCR, IdtrLimit),
00401 OFFSET(PcIdtrBase, KIPCR, IdtrBase),
00402 OFFSET(PcTr, KIPCR, Tr),
00403 OFFSET(PcLdtr, KIPCR, Ldtr),
00404 OFFSET(PcDebugControl, KIPCR, DebugControl),
00405 OFFSET(PcLastBranchToRip, KIPCR, LastBranchToRip),
00406 OFFSET(PcLastBranchFromRip, KIPCR, LastBranchFromRip),
00407 OFFSET(PcLastExceptionToRip, KIPCR, LastExceptionToRip),
00408 OFFSET(PcLastExceptionFromRip, KIPCR, LastExceptionFromRip),
00409 OFFSET(PcCr8, KIPCR, Cr8),
00410 #endif
00411 OFFSET(PcCpuType, KIPCR, Prcb.CpuType),
00412 OFFSET(PcCpuID, KIPCR, Prcb.CpuID),
00413 OFFSET(PcCpuStep, KIPCR, Prcb.CpuStep),
00414 OFFSET(PcCpuVendor, KIPCR, Prcb.CpuVendor),
00415 OFFSET(PcCFlushSize, KIPCR, Prcb.CFlushSize),
00416 OFFSET(PcDeferredReadyListHead, KIPCR, Prcb.DeferredReadyListHead),
00417 OFFSET(PcSystemCalls, KIPCR, Prcb.KeSystemCalls),
00418 OFFSET(PcDpcRoutineActive, KIPCR, Prcb.DpcRoutineActive),
00419 OFFSET(PcInterruptCount, KIPCR, Prcb.InterruptCount),
00420 OFFSET(PcDebuggerSavedIRQL, KIPCR, Prcb.DebuggerSavedIRQL),
00421 OFFSET(PcTickOffset, KIPCR, Prcb.TickOffset),
00422 OFFSET(PcMasterOffset, KIPCR, Prcb.MasterOffset),
00423 OFFSET(PcSkipTick, KIPCR, Prcb.SkipTick),
00424 #if (NTDDI_VERSION >= NTDDI_LONGHORN)
00425 OFFSET(PcVirtualApicAssist, KIPCR, Prcb.VirtualApicAssist),
00426 OFFSET(PcStartCycles, KIPCR, Prcb.StartCycles),
00427 #endif
00428 SIZE(ProcessorControlRegisterLength, KIPCR),
00429 
00430 HEADER("KPROCESSOR_STATE"),
00431 OFFSET(PsSpecialRegisters, KPROCESSOR_STATE, SpecialRegisters),
00432 OFFSET(PsCr0, KPROCESSOR_STATE, SpecialRegisters.Cr0),
00433 OFFSET(PsCr2, KPROCESSOR_STATE, SpecialRegisters.Cr2),
00434 OFFSET(PsCr3, KPROCESSOR_STATE, SpecialRegisters.Cr3),
00435 OFFSET(PsCr4, KPROCESSOR_STATE, SpecialRegisters.Cr4),
00436 OFFSET(PsKernelDr0, KPROCESSOR_STATE, SpecialRegisters.KernelDr0),
00437 OFFSET(PsKernelDr1, KPROCESSOR_STATE, SpecialRegisters.KernelDr1),
00438 OFFSET(PsKernelDr2, KPROCESSOR_STATE, SpecialRegisters.KernelDr2),
00439 OFFSET(PsKernelDr3, KPROCESSOR_STATE, SpecialRegisters.KernelDr3),
00440 OFFSET(PsKernelDr6, KPROCESSOR_STATE, SpecialRegisters.KernelDr6),
00441 OFFSET(PsKernelDr7, KPROCESSOR_STATE, SpecialRegisters.KernelDr7),
00442 OFFSET(PsGdtr, KPROCESSOR_STATE, SpecialRegisters.Gdtr),
00443 OFFSET(PsIdtr, KPROCESSOR_STATE, SpecialRegisters.Idtr),
00444 OFFSET(PsTr, KPROCESSOR_STATE, SpecialRegisters.Tr),
00445 OFFSET(PsLdtr, KPROCESSOR_STATE, SpecialRegisters.Ldtr),
00446 OFFSET(PsMxCsr, KPROCESSOR_STATE, SpecialRegisters.MxCsr),
00447 OFFSET(PsContextFrame, KPROCESSOR_STATE, ContextFrame),
00448 OFFSET(PsDebugControl, KPROCESSOR_STATE, SpecialRegisters.DebugControl),
00449 OFFSET(PsLastBranchToRip, KPROCESSOR_STATE, SpecialRegisters.LastBranchToRip),
00450 OFFSET(PsLastBranchFromRip, KPROCESSOR_STATE, SpecialRegisters.LastBranchFromRip),
00451 OFFSET(PsLastExceptionToRip, KPROCESSOR_STATE, SpecialRegisters.LastExceptionToRip),
00452 OFFSET(PsLastExceptionFromRip, KPROCESSOR_STATE, SpecialRegisters.LastExceptionFromRip),
00453 OFFSET(PsCr8, KPROCESSOR_STATE, SpecialRegisters.Cr8),
00454 SIZE(ProcessorStateLength, KPROCESSOR_STATE),
00455 
00456 HEADER("KSTART_FRAME"),
00457 OFFSET(SfP1Home, KSTART_FRAME, P1Home),
00458 OFFSET(SfP2Home, KSTART_FRAME, P2Home),
00459 OFFSET(SfP3Home, KSTART_FRAME, P3Home),
00460 OFFSET(SfP4Home, KSTART_FRAME, P4Home),
00461 OFFSET(SfReturn, KSTART_FRAME, Return),
00462 SIZE(KSTART_FRAME_LENGTH, KSTART_FRAME),
00463 
00464 HEADER("KSPECIAL_REGISTERS"),
00465 OFFSET(SrKernelDr0, KSPECIAL_REGISTERS, KernelDr0),
00466 OFFSET(SrKernelDr1, KSPECIAL_REGISTERS, KernelDr1),
00467 OFFSET(SrKernelDr2, KSPECIAL_REGISTERS, KernelDr2),
00468 OFFSET(SrKernelDr3, KSPECIAL_REGISTERS, KernelDr3),
00469 OFFSET(SrKernelDr6, KSPECIAL_REGISTERS, KernelDr6),
00470 OFFSET(SrKernelDr7, KSPECIAL_REGISTERS, KernelDr7),
00471 OFFSET(SrGdtr, KSPECIAL_REGISTERS, Gdtr),
00472 OFFSET(SrIdtr, KSPECIAL_REGISTERS, Idtr),
00473 OFFSET(SrTr, KSPECIAL_REGISTERS, Tr),
00474 OFFSET(SrMxCsr, KSPECIAL_REGISTERS, MxCsr),
00475 OFFSET(SrMsrGsBase, KSPECIAL_REGISTERS, MsrGsBase),
00476 OFFSET(SrMsrGsSwap, KSPECIAL_REGISTERS, MsrGsSwap),
00477 OFFSET(SrMsrStar, KSPECIAL_REGISTERS, MsrStar),
00478 OFFSET(SrMsrLStar, KSPECIAL_REGISTERS, MsrLStar),
00479 OFFSET(SrMsrCStar, KSPECIAL_REGISTERS, MsrCStar),
00480 OFFSET(SrMsrSyscallMask, KSPECIAL_REGISTERS, MsrSyscallMask),
00481 
00482 HEADER("KSYSTEM_TIME"),
00483 OFFSET(StLowTime, KSYSTEM_TIME, LowPart),
00484 OFFSET(StHigh1Time, KSYSTEM_TIME, High1Time),
00485 OFFSET(StHigh2Time, KSYSTEM_TIME, High2Time),
00486 
00487 HEADER("KSWITCH_FRAME"),
00488 OFFSET(SwP5Home, KSWITCH_FRAME, P5Home),
00489 OFFSET(SwApcBypass, KSWITCH_FRAME, ApcBypass),
00490 OFFSET(SwRbp, KSWITCH_FRAME, Rbp),
00491 OFFSET(SwReturn, KSWITCH_FRAME, Return),
00492 SIZE(SwitchFrameLength, KSWITCH_FRAME),
00493 SIZE(KSWITCH_FRAME_LENGTH, KSWITCH_FRAME),
00494 
00495 HEADER("KTRAP_FRAME"),
00496 OFFSET(KTRAP_FRAME_P1Home, KTRAP_FRAME, P1Home),
00497 OFFSET(KTRAP_FRAME_P2Home, KTRAP_FRAME, P2Home),
00498 OFFSET(KTRAP_FRAME_P3Home, KTRAP_FRAME, P3Home),
00499 OFFSET(KTRAP_FRAME_P4Home, KTRAP_FRAME, P4Home),
00500 OFFSET(KTRAP_FRAME_P5, KTRAP_FRAME, P5),
00501 OFFSET(KTRAP_FRAME_PreviousMode, KTRAP_FRAME, PreviousMode),
00502 OFFSET(KTRAP_FRAME_PreviousIrql, KTRAP_FRAME, PreviousIrql),
00503 OFFSET(KTRAP_FRAME_FaultIndicator, KTRAP_FRAME, FaultIndicator),
00504 OFFSET(KTRAP_FRAME_ExceptionActive, KTRAP_FRAME, ExceptionActive),
00505 OFFSET(KTRAP_FRAME_MxCsr, KTRAP_FRAME, MxCsr),
00506 OFFSET(KTRAP_FRAME_Rax, KTRAP_FRAME, Rax),
00507 OFFSET(KTRAP_FRAME_Rcx, KTRAP_FRAME, Rcx),
00508 OFFSET(KTRAP_FRAME_Rdx, KTRAP_FRAME, Rdx),
00509 OFFSET(KTRAP_FRAME_R8, KTRAP_FRAME, R8),
00510 OFFSET(KTRAP_FRAME_R9, KTRAP_FRAME, R9),
00511 OFFSET(KTRAP_FRAME_R10, KTRAP_FRAME, R10),
00512 OFFSET(KTRAP_FRAME_R11, KTRAP_FRAME, R11),
00513 OFFSET(KTRAP_FRAME_GsBase, KTRAP_FRAME, GsBase),
00514 OFFSET(KTRAP_FRAME_GsSwap, KTRAP_FRAME,GsSwap),
00515 OFFSET(KTRAP_FRAME_Xmm0, KTRAP_FRAME, Xmm0),
00516 OFFSET(KTRAP_FRAME_Xmm1, KTRAP_FRAME, Xmm1),
00517 OFFSET(KTRAP_FRAME_Xmm2, KTRAP_FRAME, Xmm2),
00518 OFFSET(KTRAP_FRAME_Xmm3, KTRAP_FRAME, Xmm3),
00519 OFFSET(KTRAP_FRAME_Xmm4, KTRAP_FRAME, Xmm4),
00520 OFFSET(KTRAP_FRAME_Xmm5, KTRAP_FRAME, Xmm5),
00521 OFFSET(KTRAP_FRAME_FaultAddress, KTRAP_FRAME, FaultAddress),
00522 OFFSET(KTRAP_FRAME_TimeStampCKCL, KTRAP_FRAME, TimeStampCKCL),
00523 OFFSET(KTRAP_FRAME_Dr0, KTRAP_FRAME, Dr0),
00524 OFFSET(KTRAP_FRAME_Dr1, KTRAP_FRAME, Dr1),
00525 OFFSET(KTRAP_FRAME_Dr2, KTRAP_FRAME, Dr2),
00526 OFFSET(KTRAP_FRAME_Dr3, KTRAP_FRAME, Dr3),
00527 OFFSET(KTRAP_FRAME_Dr6, KTRAP_FRAME, Dr6),
00528 OFFSET(KTRAP_FRAME_Dr7, KTRAP_FRAME, Dr7),
00529 OFFSET(KTRAP_FRAME_DebugControl, KTRAP_FRAME, DebugControl),
00530 OFFSET(KTRAP_FRAME_LastBranchToRip, KTRAP_FRAME, LastBranchToRip),
00531 OFFSET(KTRAP_FRAME_LastBranchFromRip, KTRAP_FRAME, LastBranchFromRip),
00532 OFFSET(KTRAP_FRAME_LastExceptionToRip, KTRAP_FRAME, LastExceptionToRip),
00533 OFFSET(KTRAP_FRAME_LastExceptionFromRip, KTRAP_FRAME, LastExceptionFromRip),
00534 OFFSET(KTRAP_FRAME_LastBranchControl, KTRAP_FRAME, LastBranchControl),
00535 OFFSET(KTRAP_FRAME_LastBranchMSR, KTRAP_FRAME, LastBranchMSR),
00536 OFFSET(KTRAP_FRAME_SegDs, KTRAP_FRAME, SegDs),
00537 OFFSET(KTRAP_FRAME_SegEs, KTRAP_FRAME, SegEs),
00538 OFFSET(KTRAP_FRAME_SegFs, KTRAP_FRAME, SegFs),
00539 OFFSET(KTRAP_FRAME_SegGs, KTRAP_FRAME, SegGs),
00540 OFFSET(KTRAP_FRAME_TrapFrame, KTRAP_FRAME, TrapFrame),
00541 OFFSET(KTRAP_FRAME_Rbx, KTRAP_FRAME, Rbx),
00542 OFFSET(KTRAP_FRAME_Rdi, KTRAP_FRAME, Rdi),
00543 OFFSET(KTRAP_FRAME_Rsi, KTRAP_FRAME, Rsi),
00544 OFFSET(KTRAP_FRAME_Rbp, KTRAP_FRAME, Rbp),
00545 OFFSET(KTRAP_FRAME_ErrorCode, KTRAP_FRAME, ErrorCode),
00546 OFFSET(KTRAP_FRAME_TimeStampKlog, KTRAP_FRAME, TimeStampKlog),
00547 OFFSET(KTRAP_FRAME_Rip, KTRAP_FRAME, Rip),
00548 OFFSET(KTRAP_FRAME_SegCs, KTRAP_FRAME, SegCs),
00549 OFFSET(KTRAP_FRAME_Logging, KTRAP_FRAME, Logging),
00550 OFFSET(KTRAP_FRAME_EFlags, KTRAP_FRAME, EFlags),
00551 OFFSET(KTRAP_FRAME_Rsp, KTRAP_FRAME, Rsp),
00552 OFFSET(KTRAP_FRAME_SegSs, KTRAP_FRAME, SegSs),
00553 OFFSET(KTRAP_FRAME_CodePatchCycle, KTRAP_FRAME, CodePatchCycle),
00554 SIZE(KTRAP_FRAME_LENGTH, KTRAP_FRAME),
00555 
00556 #if (NTDDI_VERSION >= NTDDI_WIN7)
00557 HEADER("KTIMER_TABLE"),
00558 OFFSET(TtEntry, KTIMER_TABLE, TimerEntries),
00559 OFFSET(TtTime, KTIMER_TABLE_ENTRY, Time),
00560 SIZE(TIMER_ENTRY_SIZE, KTIMER_TABLE_ENTRY),
00561 SIZE(TIMER_TABLE_SIZE, KTIMER_TABLE),
00562 SIZE(KTIMER_TABLE_SIZE, KTIMER_TABLE),
00563 #endif
00564 
00565 HEADER("KTSS"),
00566 OFFSET(TssRsp0, KTSS64, Rsp0),
00567 OFFSET(TssRsp1, KTSS64, Rsp1),
00568 OFFSET(TssRsp2, KTSS64, Rsp2),
00569 OFFSET(TssPanicStack, KTSS64, Ist[1]),
00570 OFFSET(TssMcaStack, KTSS64, Ist[2]),
00571 OFFSET(TssNmiStack, KTSS64, Ist[3]),
00572 OFFSET(TssIoMapBase, KTSS64, IoMapBase),
00573 SIZE(TssLength, KTSS64),
00574 
00575 HEADER("EXCEPTION_RECORD"),
00576 OFFSET(EXCEPTION_RECORD_ExceptionCode, EXCEPTION_RECORD, ExceptionCode),
00577 OFFSET(EXCEPTION_RECORD_ExceptionFlags, EXCEPTION_RECORD, ExceptionFlags),
00578 OFFSET(EXCEPTION_RECORD_ExceptionRecord, EXCEPTION_RECORD, ExceptionRecord),
00579 OFFSET(EXCEPTION_RECORD_ExceptionAddress, EXCEPTION_RECORD, ExceptionAddress),
00580 OFFSET(EXCEPTION_RECORD_NumberParameters, EXCEPTION_RECORD, NumberParameters),
00581 OFFSET(EXCEPTION_RECORD_ExceptionInformation, EXCEPTION_RECORD, ExceptionInformation),
00582 
00583 HEADER("KTHREAD"),
00584 OFFSET(KTHREAD_WAIT_IRQL, KTHREAD, WaitIrql),
00585 OFFSET(KTHREAD_TrapFrame, KTHREAD, TrapFrame),
00586 OFFSET(KTHREAD_PreviousMode, KTHREAD, PreviousMode),
00587 OFFSET(KTHREAD_KernelStack, KTHREAD, KernelStack),
00588 OFFSET(KTHREAD_UserApcPending, KTHREAD, ApcState.UserApcPending),
00589 
00590 HEADER("KINTERRUPT"),
00591 
00592 OFFSET(KINTERRUPT_Type, KINTERRUPT, Type),
00593 OFFSET(KINTERRUPT_Size, KINTERRUPT, Size),
00594 OFFSET(KINTERRUPT_InterruptListEntry, KINTERRUPT, InterruptListEntry),
00595 OFFSET(KINTERRUPT_ServiceRoutine, KINTERRUPT, ServiceRoutine),
00596 OFFSET(KINTERRUPT_ServiceContext, KINTERRUPT, ServiceContext),
00597 OFFSET(KINTERRUPT_SpinLock, KINTERRUPT, SpinLock),
00598 OFFSET(KINTERRUPT_TickCount, KINTERRUPT, TickCount),
00599 OFFSET(KINTERRUPT_ActualLock, KINTERRUPT, ActualLock),
00600 OFFSET(KINTERRUPT_DispatchAddress, KINTERRUPT, DispatchAddress),
00601 OFFSET(KINTERRUPT_Vector, KINTERRUPT, Vector),
00602 OFFSET(KINTERRUPT_Irql, KINTERRUPT, Irql),
00603 OFFSET(KINTERRUPT_SynchronizeIrql, KINTERRUPT, SynchronizeIrql),
00604 OFFSET(KINTERRUPT_FloatingSave, KINTERRUPT, FloatingSave),
00605 OFFSET(KINTERRUPT_Connected, KINTERRUPT, Connected),
00606 OFFSET(KINTERRUPT_Number, KINTERRUPT, Number),
00607 OFFSET(KINTERRUPT_ShareVector, KINTERRUPT, ShareVector),
00608 OFFSET(KINTERRUPT_Mode, KINTERRUPT, Mode),
00609 OFFSET(KINTERRUPT_ServiceCount, KINTERRUPT, ServiceCount),
00610 OFFSET(KINTERRUPT_DispatchCount, KINTERRUPT, DispatchCount),
00611 OFFSET(KINTERRUPT_TrapFrame, KINTERRUPT, TrapFrame),
00612 OFFSET(KINTERRUPT_DispatchCode, KINTERRUPT, DispatchCode),

Generated on Fri May 25 2012 04:27:10 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.