CHDK_DE Vorschauversion  Trunk Rev. 5428
 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 "conf.h"
#include "../../../generic/capt_seq.c"
+ Include-Abhängigkeitsdiagramm für capt_seq.c:

gehe zum Quellcode dieser Datei

Funktionen

void __attribute__ ((naked, noinline))
 *-------------------------------------------------------------------— Mehr ...
 

Variablen

static long * nrflag = (long*)(0x6cb8-0x08)
 

Dokumentation der Funktionen

void __attribute__ ( (naked, noinline)  )

*-------------------------------------------------------------------—

!!

Definiert in Zeile 12 der Datei capt_seq.c.

12  {
13  asm volatile (
14 " STMFD SP!, {R3-R9,LR} \n"
15 " LDR R6, =0x2B04 \n"
16 " LDR R4, =0x4A5C8 \n"
17 " MOV R9, #1 \n"
18 " MOV R7, #0 \n"
19 "loc_FF876E84:\n"
20 " LDR R0, [R6, #4] \n"
21 " MOV R2, #0 \n"
22 " MOV R1, SP \n"
23 " BL sub_FF837F08 \n"
24 " TST R0, #1 \n"
25 " BEQ loc_FF876EB0 \n"
26 " LDR R1, =0x5B3 \n"
27 " LDR R0, =0xFF8769B0 \n"
28 " BL sub_FF81E88C \n"
29 " BL sub_FF81E844 \n"
30 " LDMFD SP!, {R3-R9,PC} \n"
31 "loc_FF876EB0:\n"
32 " LDR R0, [SP] \n"
33 " LDR R1, [R0] \n"
34 " CMP R1, #0x1F \n"
35 " ADDLS PC, PC, R1, LSL #2 \n"
36 " B loc_FF877154 \n"
37 " B loc_FF876F44 \n"
38 " B loc_FF876FA8 \n"
39 " B loc_FF876FE4 \n"
40 " B loc_FF876FF8 \n"
41 " B loc_FF876FF0 \n"
42 " B loc_FF877000 \n"
43 " B loc_FF877008 \n"
44 " B loc_FF877010 \n"
45 " B loc_FF877068 \n"
46 " B loc_FF877090 \n"
47 " B loc_FF877074 \n"
48 " B loc_FF877080 \n"
49 " B loc_FF877088 \n"
50 " B loc_FF877098 \n"
51 " B loc_FF8770A0 \n"
52 " B loc_FF8770A8 \n"
53 " B loc_FF8770B0 \n"
54 " B loc_FF8770B8 \n"
55 " B loc_FF8770C4 \n"
56 " B loc_FF8770CC \n"
57 " B loc_FF8770D4 \n"
58 " B loc_FF8770DC \n"
59 " B loc_FF8770E4 \n"
60 " B loc_FF8770F0 \n"
61 " B loc_FF8770F8 \n"
62 " B loc_FF877100 \n"
63 " B loc_FF877108 \n"
64 " B loc_FF877110 \n"
65 " B loc_FF877118 \n"
66 " B loc_FF877120 \n"
67 " B loc_FF87712C \n"
68 " B loc_FF877160 \n"
69 "loc_FF876F44:\n"
70 " BL sub_FF8777F4 \n"
71 " BL shooting_expo_param_override\n"
72 " BL sub_FF874C6C \n"
73 
74 // this code added to avoid some incorrect behavior if overrides are used.
75  // but it can cause some unexpected side effects. In this case, remove this code!
76  "MOV R0, #0\n"
77  "STR R0, [R4,#0x24]\n" // fixes overrides behavior at short shutter press
78 //end of modified code
79 " LDR R0, [R4, #0x24] \n"
80 " CMP R0, #0 \n"
81 " BEQ loc_FF877160 \n"
82 " BL sub_FF87668C \n"
83 " MOV R5, R0 \n"
84 " LDR R0, [R4, #0x24] \n"
85 " CMP R0, #0 \n"
86 " BEQ loc_FF876F8C \n"
87 " MOV R0, #0xC \n"
88 " BL sub_FF87BB14 \n"
89 " TST R0, #1 \n"
90 " STRNE R9, [R6, #0x10] \n"
91 " LDRNE R0, [R5, #8] \n"
92 " ORRNE R0, R0, #0x40000000 \n"
93 " STRNE R0, [R5, #8] \n"
94 " BNE loc_FF877160 \n"
95 "loc_FF876F8C:\n"
96 " MOV R0, R5 \n"
97 " BL sub_FF876930 \n"
98 " MOV R0, R5 \n"
99 " BL sub_FF94FE74_my \n" //----------------->
100 " BL capt_seq_hook_raw_here\n"
101 " TST R0, #1 \n"
102 " STRNE R9, [R6, #0x10] \n"
103 " B loc_FF877160 \n"
104 "loc_FF876FA8:\n"
105 " LDR R0, [R4, #0x24] \n"
106 " CMP R0, #0 \n"
107 " BNE loc_FF876FD4 \n"
108 " MOV R0, #0xC \n"
109 " BL sub_FF87BB14 \n"
110 " TST R0, #1 \n"
111 " LDRNE R0, [SP] \n"
112 " MOVNE R1, #1 \n"
113 " LDRNE R2, [R0, #0xC] \n"
114 " MOVNE R0, #1 \n"
115 " BNE loc_FF877060 \n"
116 "loc_FF876FD4:\n"
117 " LDR R0, [SP] \n"
118 " BL sub_FF877278_my \n" //----------------->
119 "loc_FF876FDC:\n"
120 " STR R7, [R4, #0x24] \n"
121 " B loc_FF877160 \n"
122 "loc_FF876FE4:\n"
123 " MOV R0, #1 \n"
124 " BL sub_FF877A50 \n"
125 " B loc_FF877160 \n"
126 "loc_FF876FF0:\n"
127 " BL sub_FF877430 \n"
128 " B loc_FF876FDC \n"
129 "loc_FF876FF8:\n"
130 " BL sub_FF8777D4 \n"
131 " B loc_FF876FDC \n"
132 "loc_FF877000:\n"
133 " BL sub_FF8777DC \n"
134 " B loc_FF877160 \n"
135 "loc_FF877008:\n"
136 " BL sub_FF877970 \n"
137 " B loc_FF87706C \n"
138 "loc_FF877010:\n"
139 " LDR R5, [R0, #0xC] \n"
140 " BL sub_FF8777E4 \n"
141 " MOV R0, R5 \n"
142 " BL sub_FF94EB30 \n"
143 " TST R0, #1 \n"
144 " MOV R8, R0 \n"
145 " BNE loc_FF877050 \n"
146 " BL sub_FF888CD8 \n"
147 " STR R0, [R5, #0x18] \n"
148 " MOV R0, R5 \n"
149 " BL sub_FF94FD8C \n"
150 " MOV R0, R5 \n"
151 " BL sub_FF95018C \n"
152 " MOV R8, R0 \n"
153 " LDR R0, [R5, #0x18] \n"
154 " BL sub_FF888EEC \n"
155 "loc_FF877050:\n"
156 " BL sub_FF8777D4 \n"
157 " MOV R2, R5 \n"
158 " MOV R1, #9 \n"
159 " MOV R0, R8 \n"
160 "loc_FF877060:\n"
161 " BL sub_FF875158 \n"
162 " B loc_FF877160 \n"
163 "loc_FF877068:\n"
164 " BL sub_FF8779D0 \n"
165 "loc_FF87706C:\n"
166 " BL sub_FF874C6C \n"
167 " B loc_FF877160 \n"
168 "loc_FF877074:\n"
169 " LDR R0, [R4, #0x54] \n"
170 " BL sub_FF877DE0 \n"
171 " B loc_FF877160 \n"
172 "loc_FF877080:\n"
173 " BL sub_FF878094 \n"
174 " B loc_FF877160 \n"
175 "loc_FF877088:\n"
176 " BL sub_FF878128 \n"
177 " B loc_FF877160 \n"
178 "loc_FF877090:\n"
179 " BL sub_FF8777D4 \n"
180 " B loc_FF877160 \n"
181 "loc_FF877098:\n"
182 " BL sub_FF94ED48 \n"
183 " B loc_FF877160 \n"
184 "loc_FF8770A0:\n"
185 " BL sub_FF94EF5C \n"
186 " B loc_FF877160 \n"
187 "loc_FF8770A8:\n"
188 " BL sub_FF94EFF4 \n"
189 " B loc_FF877160 \n"
190 "loc_FF8770B0:\n"
191 " BL sub_FF94F0C4 \n"
192 " B loc_FF877160 \n"
193 "loc_FF8770B8:\n"
194 " MOV R0, #0 \n"
195 " BL sub_FF94F314 \n"
196 " B loc_FF877160 \n"
197 "loc_FF8770C4:\n"
198 " BL sub_FF94F470 \n"
199 " B loc_FF877160 \n"
200 "loc_FF8770CC:\n"
201 " BL sub_FF94F500 \n"
202 " B loc_FF877160 \n"
203 "loc_FF8770D4:\n"
204 " BL sub_FF94F5C0 \n"
205 " B loc_FF877160 \n"
206 "loc_FF8770DC:\n"
207 " BL sub_FF877BCC \n"
208 " B loc_FF877160 \n"
209 "loc_FF8770E4:\n"
210 " BL sub_FF877C6C \n"
211 " BL sub_FF835F60 \n"
212 " B loc_FF877160 \n"
213 "loc_FF8770F0:\n"
214 " BL sub_FF94F190 \n"
215 " B loc_FF877160 \n"
216 "loc_FF8770F8:\n"
217 " BL sub_FF94F1FC \n"
218 " B loc_FF877160 \n"
219 "loc_FF877100:\n"
220 " BL sub_FF87A1E8 \n"
221 " B loc_FF877160 \n"
222 "loc_FF877108:\n"
223 " BL sub_FF87A254 \n"
224 " B loc_FF877160 \n"
225 "loc_FF877110:\n"
226 " BL sub_FF94F740 \n"
227 " B loc_FF877160 \n"
228 "loc_FF877118:\n"
229 " BL sub_FF94F7AC \n"
230 " B loc_FF877160 \n"
231 "loc_FF877120:\n"
232 " BL sub_FF87A2B0 \n"
233 " BL sub_FF87A270 \n"
234 " B loc_FF877160 \n"
235 "loc_FF87712C:\n"
236 " MOV R0, #1 \n"
237 " BL sub_FF950A04 \n"
238 " MOV R0, #1 \n"
239 " BL sub_FF950B14 \n"
240 " LDRH R0, [R4, #0x98] \n"
241 " CMP R0, #4 \n"
242 " BNE loc_FF877160 \n"
243 " BL sub_FF87A254 \n"
244 " BL sub_FF87A728 \n"
245 " B loc_FF877160 \n"
246 "loc_FF877154:\n"
247 " LDR R1, =0x708 \n"
248 " LDR R0, =0xFF8769B0 \n"
249 " BL sub_FF81E88C \n"
250 "loc_FF877160:\n"
251 " LDR R0, [SP] \n"
252 " LDR R1, [R0, #4] \n"
253 " LDR R0, [R6] \n"
254 " BL sub_FF8809C4 \n"
255 " LDR R5, [SP] \n"
256 " LDR R0, [R5, #8] \n"
257 " CMP R0, #0 \n"
258 " LDREQ R1, =0x131 \n"
259 " LDREQ R0, =0xFF8769B0 \n"
260 " BLEQ sub_FF81E88C \n"
261 " STR R7, [R5, #8] \n"
262 " B loc_FF876E84 \n"
263 );
264 
265 }

Variablen-Dokumentation

long* nrflag = (long*)(0x6cb8-0x08)
static

Definiert in Zeile 6 der Datei capt_seq.c.