3 RAW("#include <kxarm.h>"),
7 CONSTANT(CPSR_THUMB_ENABLE
),
8 CONSTANT(CPSR_FIQ_DISABLE
),
9 CONSTANT(CPSR_IRQ_DISABLE
),
10 CONSTANT(CPSR_USER_MODE
),
11 CONSTANT(CPSR_FIQ_MODE
),
12 CONSTANT(CPSR_IRQ_MODE
),
13 CONSTANT(CPSR_SVC_MODE
),
14 CONSTANT(CPSR_ABORT_MODE
),
15 CONSTANT(CPSR_UND_MODE
),
18 HEADER("C1 Register Values"),
19 CONSTANT(C1_MMU_CONTROL
),
20 CONSTANT(C1_ALIGNMENT_CONTROL
),
21 CONSTANT(C1_DCACHE_CONTROL
),
22 CONSTANT(C1_ICACHE_CONTROL
),
23 CONSTANT(C1_VECTOR_CONTROL
),
25 HEADER("Loader Parameter Block Offsets"),
26 OFFSET(LpbKernelStack
, LOADER_PARAMETER_BLOCK
, KernelStack
),
27 OFFSET(LpbPanicStack
, LOADER_PARAMETER_BLOCK
, u
.Arm
.PanicStack
),
28 OFFSET(LpbInterruptStack
, LOADER_PARAMETER_BLOCK
, u
.Arm
.InterruptStack
),
30 HEADER("Trap Frame offsets"),
31 OFFSET(TrDbgArgMark
, KTRAP_FRAME
, DbgArgMark
),
32 OFFSET(TrR0
, KTRAP_FRAME
, R0
),
33 OFFSET(TrR1
, KTRAP_FRAME
, R1
),
34 OFFSET(TrR2
, KTRAP_FRAME
, R2
),
35 OFFSET(TrR3
, KTRAP_FRAME
, R3
),
36 OFFSET(TrR4
, KTRAP_FRAME
, R4
),
37 OFFSET(TrR5
, KTRAP_FRAME
, R5
),
38 OFFSET(TrR6
, KTRAP_FRAME
, R6
),
39 OFFSET(TrR7
, KTRAP_FRAME
, R7
),
40 OFFSET(TrR8
, KTRAP_FRAME
, R8
),
41 OFFSET(TrR9
, KTRAP_FRAME
, R9
),
42 OFFSET(TrR10
, KTRAP_FRAME
, R10
),
43 OFFSET(TrR11
, KTRAP_FRAME
, R11
),
44 OFFSET(TrR12
, KTRAP_FRAME
, R12
),
45 OFFSET(TrUserSp
, KTRAP_FRAME
, UserSp
),
46 OFFSET(TrUserLr
, KTRAP_FRAME
, UserLr
),
47 OFFSET(TrSvcSp
, KTRAP_FRAME
, SvcSp
),
48 OFFSET(TrSvcLr
, KTRAP_FRAME
, SvcLr
),
49 OFFSET(TrPc
, KTRAP_FRAME
, Pc
),
50 OFFSET(TrSpsr
, KTRAP_FRAME
, Spsr
),
51 SIZE(TrapFrameLength
, KTRAP_FRAME
),
53 HEADER("Exception Frame offsets"),
54 OFFSET(ExR4
, KEXCEPTION_FRAME
, R4
),
55 OFFSET(ExR5
, KEXCEPTION_FRAME
, R5
),
56 OFFSET(ExR6
, KEXCEPTION_FRAME
, R6
),
57 OFFSET(ExR7
, KEXCEPTION_FRAME
, R7
),
58 OFFSET(ExR8
, KEXCEPTION_FRAME
, R8
),
59 OFFSET(ExR9
, KEXCEPTION_FRAME
, R9
),
60 OFFSET(ExR10
, KEXCEPTION_FRAME
, R10
),
61 OFFSET(ExR11
, KEXCEPTION_FRAME
, R11
),
62 OFFSET(ExLr
, KEXCEPTION_FRAME
, Lr
),
63 OFFSET(ExSpsr
, KEXCEPTION_FRAME
, Psr
), // name?
64 SIZE(ExceptionFrameLength
, KEXCEPTION_FRAME
),
67 CONSTANTX(KiPcr
, 0xFFFFF000),
69 HEADER("PCR Offsets"),
70 //OFFSET(PcCurrentIrql, KPCR, CurrentIrql),
72 HEADER("KTHREAD Offsets"),
73 OFFSET(ThKernelStack
, KTHREAD
, KernelStack
),
75 HEADER("CONTEXT Offsets"),
76 OFFSET(CsContextFlags
, CONTEXT
, ContextFlags
),
77 OFFSET(CsR0
, CONTEXT
, R0
),
78 OFFSET(CsR1
, CONTEXT
, R1
),
79 OFFSET(CsR2
, CONTEXT
, R2
),
80 OFFSET(CsR3
, CONTEXT
, R3
),
81 OFFSET(CsR4
, CONTEXT
, R4
),
82 OFFSET(CsR5
, CONTEXT
, R5
),
83 OFFSET(CsR6
, CONTEXT
, R6
),
84 OFFSET(CsR7
, CONTEXT
, R7
),
85 OFFSET(CsR8
, CONTEXT
, R8
),
86 OFFSET(CsR9
, CONTEXT
, R9
),
87 OFFSET(CsR10
, CONTEXT
, R10
),
88 OFFSET(CsR11
, CONTEXT
, R11
),
89 OFFSET(CsR12
, CONTEXT
, R12
),
90 OFFSET(CsSp
, CONTEXT
, Sp
),
91 OFFSET(CsLr
, CONTEXT
, Lr
),
92 OFFSET(CsPc
, CONTEXT
, Pc
),
93 OFFSET(CsCpsr
, CONTEXT
, Cpsr
),
95 CONSTANT(CONTEXT_FULL
),
97 HEADER("DebugService Control Types"),
98 CONSTANT(BREAKPOINT_BREAK
),
99 CONSTANT(BREAKPOINT_PRINT
),
100 CONSTANT(BREAKPOINT_PROMPT
),
101 CONSTANT(BREAKPOINT_LOAD_SYMBOLS
),
102 CONSTANT(BREAKPOINT_UNLOAD_SYMBOLS
),
103 CONSTANT(BREAKPOINT_COMMAND_STRING
),