CHDK_DE Vorschauversion  Trunk Rev. 6014
 Alle Datenstrukturen Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Makrodefinitionen
capt_seq.c-Dateireferenz
#include "lolevel.h"
#include "platform.h"
#include "core.h"
#include "../../../generic/capt_seq.c"
+ Include-Abhängigkeitsdiagramm für capt_seq.c:

gehe zum Quellcode dieser Datei

Makrodefinitionen

#define USE_STUBS_NRFLAG   1
 

Funktionen

void __attribute__ ((naked, noinline))
 

Makro-Dokumentation

#define USE_STUBS_NRFLAG   1

Definiert in Zeile 8 der Datei capt_seq.c.

Dokumentation der Funktionen

void __attribute__ ( (naked, noinline)  )

!!

Definiert in Zeile 14 der Datei capt_seq.c.

14  {
15 asm volatile (
16 " STMFD SP!, {R3-R7,LR} \n"
17 " LDR R6, =0x54C0 \n"
18 
19 "loc_FFC4F100:\n"
20 " LDR R0, [R6, #8] \n"
21 " MOV R2, #0 \n"
22 " MOV R1, SP \n"
23 " BL sub_FFC17B08 /*_ReceiveMessageQueue*/ \n"
24 " TST R0, #1 \n"
25 " BEQ loc_FFC4F12C \n"
26 " LDR R1, =0x48E \n"
27 " LDR R0, =0xFFC4EDF8 /*'SsShootTask.c'*/ \n"
28 " BL _DebugAssert \n"
29 " BL _ExitTask \n"
30 " LDMFD SP!, {R3-R7,PC} \n"
31 
32 "loc_FFC4F12C:\n"
33 " LDR R0, [SP] \n"
34 " LDR R1, [R0] \n"
35 " CMP R1, #0x1A \n"
36 " ADDLS PC, PC, R1, LSL#2 \n"
37 " B loc_FFC4F354 \n"
38 " B loc_FFC4F1AC \n"
39 " B loc_FFC4F1B4 \n"
40 " B loc_FFC4F23C \n"
41 " B loc_FFC4F250 \n"
42 " B loc_FFC4F248 \n"
43 " B loc_FFC4F258 \n"
44 " B loc_FFC4F260 \n"
45 " B loc_FFC4F26C \n"
46 " B loc_FFC4F2C4 \n"
47 " B loc_FFC4F250 \n"
48 " B loc_FFC4F2CC \n"
49 " B loc_FFC4F2D4 \n"
50 " B loc_FFC4F2DC \n"
51 " B loc_FFC4F2E4 \n"
52 " B loc_FFC4F2EC \n"
53 " B loc_FFC4F2F4 \n"
54 " B loc_FFC4F2FC \n"
55 " B loc_FFC4F304 \n"
56 " B loc_FFC4F30C \n"
57 " B loc_FFC4F318 \n"
58 " B loc_FFC4F324 \n"
59 " B loc_FFC4F32C \n"
60 " B loc_FFC4F334 \n"
61 " B loc_FFC4F33C \n"
62 " B loc_FFC4F344 \n"
63 " B loc_FFC4F34C \n"
64 " B loc_FFC4F360 \n"
65 
66 "loc_FFC4F1AC:\n"
67 " BL sub_FFD1717C \n"
68 " BL shooting_expo_param_override\n" // added
69 " B loc_FFC4F264 \n"
70 
71 "loc_FFC4F1B4:\n"
72 " LDR R4, [R0, #0xC] \n"
73 " LDR R0, [R4, #8] \n"
74 " ORR R0, R0, #1 \n"
75 " STR R0, [R4, #8] \n"
76 " MOV R0, #2 \n"
77 " BL sub_FFC4A04C \n"
78 " BL sub_FFD1716C \n"
79 " MOV R0, R4 \n"
80 " BL sub_FFD17554 \n"
81 " TST R0, #1 \n"
82 " MOVNE R2, R4 \n"
83 " MOVNE R1, #1 \n"
84 " BNE loc_FFC4F2BC \n"
85 " BL sub_FFD35818 \n"
86 " BL sub_FFC5DC44 \n"
87 " STR R0, [R4, #0x14] \n"
88 " MOV R0, R4 \n"
89 " BL sub_FFD1854C \n"
90 " BL sub_FFD18FB0 \n"
91 " MOV R0, R4 \n"
92 " BL sub_FFD18614_my \n" // --> Patched. Old value = 0xFFD18614.
93 " BL capt_seq_hook_raw_here \n" // added
94 " MOV R5, R0 \n"
95 " BL sub_FFD19F90 \n"
96 " BL sub_FFD19FCC \n"
97 " MOV R2, R4 \n"
98 " MOV R1, #1 \n"
99 " MOV R0, R5 \n"
100 " BL sub_FFC4D860 \n"
101 " BL sub_FFD189C4 \n"
102 " CMP R0, #0 \n"
103 " LDRNE R0, [R4, #8] \n"
104 " ORRNE R0, R0, #0x2000 \n"
105 " STRNE R0, [R4, #8] \n"
106 " B loc_FFC4F360 \n"
107 
108 "loc_FFC4F23C:\n"
109 " MOV R0, #1 \n"
110 " BL sub_FFD17310 \n"
111 " B loc_FFC4F360 \n"
112 
113 "loc_FFC4F248:\n"
114 " BL sub_FFD16DD0 \n"
115 " B loc_FFC4F360 \n"
116 
117 "loc_FFC4F250:\n"
118 " BL sub_FFD1715C \n"
119 " B loc_FFC4F360 \n"
120 
121 "loc_FFC4F258:\n"
122 " BL sub_FFD17164 \n"
123 " B loc_FFC4F360 \n"
124 
125 "loc_FFC4F260:\n"
126 " BL sub_FFD17230 \n"
127 
128 "loc_FFC4F264:\n"
129 " BL sub_FFC4D4E0 \n"
130 " B loc_FFC4F360 \n"
131 
132 "loc_FFC4F26C:\n"
133 " LDR R4, [R0, #0xC] \n"
134 " BL sub_FFD1716C \n"
135 " MOV R0, R4 \n"
136 " BL sub_FFD178D4 \n"
137 " TST R0, #1 \n"
138 " MOV R5, R0 \n"
139 " BNE loc_FFC4F2AC \n"
140 " BL sub_FFC5DC44 \n"
141 " STR R0, [R4, #0x14] \n"
142 " MOV R0, R4 \n"
143 " BL sub_FFD1854C \n"
144 " MOV R0, R4 \n"
145 " BL sub_FFD18A24 \n"
146 " MOV R5, R0 \n"
147 " LDR R0, [R4, #0x14] \n"
148 " BL sub_FFC5DE50 \n"
149 
150 "loc_FFC4F2AC:\n"
151 " BL sub_FFD1715C \n"
152 " MOV R2, R4 \n"
153 " MOV R1, #9 \n"
154 " MOV R0, R5 \n"
155 
156 "loc_FFC4F2BC:\n"
157 " BL sub_FFC4D860 \n"
158 " B loc_FFC4F360 \n"
159 
160 "loc_FFC4F2C4:\n"
161 " BL sub_FFD17290 \n"
162 " B loc_FFC4F264 \n"
163 
164 "loc_FFC4F2CC:\n"
165 " BL sub_FFD17B50 \n"
166 " B loc_FFC4F360 \n"
167 
168 "loc_FFC4F2D4:\n"
169 " BL sub_FFD17D38 \n"
170 " B loc_FFC4F360 \n"
171 
172 "loc_FFC4F2DC:\n"
173 " BL sub_FFD17DC8 \n"
174 " B loc_FFC4F360 \n"
175 
176 "loc_FFC4F2E4:\n"
177 " BL sub_FFD17E7C \n"
178 " B loc_FFC4F360 \n"
179 
180 "loc_FFC4F2EC:\n"
181 " MOV R0, #0 \n"
182 " B loc_FFC4F310 \n"
183 
184 "loc_FFC4F2F4:\n"
185 " BL sub_FFD18170 \n"
186 " B loc_FFC4F360 \n"
187 
188 "loc_FFC4F2FC:\n"
189 " BL sub_FFD18204 \n"
190 " B loc_FFC4F360 \n"
191 
192 "loc_FFC4F304:\n"
193 " BL sub_FFD182CC \n"
194 " B loc_FFC4F360 \n"
195 
196 "loc_FFC4F30C:\n"
197 " MOV R0, #1 \n"
198 
199 "loc_FFC4F310:\n"
200 " BL sub_FFD18020 \n"
201 " B loc_FFC4F360 \n"
202 
203 "loc_FFC4F318:\n"
204 " BL sub_FFD1742C \n"
205 " BL sub_FFC14A34 \n"
206 " B loc_FFC4F360 \n"
207 
208 "loc_FFC4F324:\n"
209 " BL sub_FFD17F38 \n"
210 " B loc_FFC4F360 \n"
211 
212 "loc_FFC4F32C:\n"
213 " BL sub_FFD17F7C \n"
214 " B loc_FFC4F360 \n"
215 
216 "loc_FFC4F334:\n"
217 " BL sub_FFD19F74 \n"
218 " B loc_FFC4F360 \n"
219 
220 "loc_FFC4F33C:\n"
221 " BL sub_FFD19F90 \n"
222 " B loc_FFC4F360 \n"
223 
224 "loc_FFC4F344:\n"
225 " BL sub_FFD19FA0 \n"
226 " B loc_FFC4F360 \n"
227 
228 "loc_FFC4F34C:\n"
229 " BL sub_FFD19FCC \n"
230 " B loc_FFC4F360 \n"
231 
232 "loc_FFC4F354:\n"
233 " LDR R1, =0x58E \n"
234 " LDR R0, =0xFFC4EDF8 /*'SsShootTask.c'*/ \n"
235 " BL _DebugAssert \n"
236 
237 "loc_FFC4F360:\n"
238 " LDR R0, [SP] \n"
239 " LDR R1, [R0, #4] \n"
240 " LDR R0, [R6, #4] \n"
241 " BL sub_FFC17884 /*_SetEventFlag*/ \n"
242 " LDR R4, [SP] \n"
243 " LDR R0, [R4, #8] \n"
244 " CMP R0, #0 \n"
245 " LDREQ R1, =0x10D \n"
246 " LDREQ R0, =0xFFC4EDF8 /*'SsShootTask.c'*/ \n"
247 " BLEQ _DebugAssert \n"
248 " MOV R0, #0 \n"
249 " STR R0, [R4, #8] \n"
250 " B loc_FFC4F100 \n"
251 );
252 }