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 "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*)0x6718
 

Dokumentation der Funktionen

void __attribute__ ( (naked, noinline)  )

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

!!

Definiert in Zeile 14 der Datei capt_seq.c.

14  {
15  asm volatile (
16 " STMFD SP!, {R3-R9,LR}\n"
17 " LDR R6, =0x2988\n"
18 " LDR R4, =0x37B08\n"
19 " MOV R9, #1\n"
20 " MOV R7, #0\n"
21 "loc_FF872FA4:\n"
22 " LDR R0, [R6,#4]\n"
23 " MOV R2, #0\n"
24 " MOV R1, SP\n"
25 " BL sub_FF837DC8\n"
26 " TST R0, #1\n"
27 " BEQ loc_FF872FD0\n"
28 " LDR R1, =0x5B4\n"
29 " LDR R0, =0xFF872B20\n"
30 " BL sub_FF81E88C\n"
31 " BL sub_FF81E844\n"
32 " LDMFD SP!, {R3-R9,PC}\n"
33 "loc_FF872FD0:\n"
34 " LDR R0, [SP]\n"
35 " LDR R1, [R0]\n"
36 " CMP R1, #0x1D\n"
37 " ADDLS PC, PC, R1,LSL#2\n"
38 " B loc_FF87325C\n"
39 
40 "loc_FF872FE4: B loc_FF87305C\n"
41 "loc_FF872FE8: B loc_FF8730C0\n"
42 "loc_FF872FEC: B loc_FF8730FC\n"
43 "loc_FF872FF0: B loc_FF873110\n"
44 "loc_FF872FF4: B loc_FF873108\n"
45 "loc_FF872FF8: B loc_FF873118\n"
46 "loc_FF872FFC: B loc_FF873120\n"
47 "loc_FF873000: B loc_FF873128\n"
48 "loc_FF873004: B loc_FF873180\n"
49 "loc_FF873008: B loc_FF8731A8\n"
50 "loc_FF87300C: B loc_FF87318C\n"
51 "loc_FF873010: B loc_FF873198\n"
52 "loc_FF873014: B loc_FF8731A0\n"
53 "loc_FF873018: B loc_FF8731B0\n"
54 "loc_FF87301C: B loc_FF8731B8\n"
55 "loc_FF873020: B loc_FF8731C0\n"
56 "loc_FF873024: B loc_FF8731C8\n"
57 "loc_FF873028: B loc_FF8731D0\n"
58 "loc_FF87302C: B loc_FF8731DC\n"
59 "loc_FF873030: B loc_FF8731E4\n"
60 "loc_FF873034: B loc_FF8731EC\n"
61 "loc_FF873038: B loc_FF8731F4\n"
62 "loc_FF87303C: B loc_FF8731FC\n"
63 "loc_FF873040: B loc_FF873208\n"
64 "loc_FF873044: B loc_FF873210\n"
65 "loc_FF873048: B loc_FF873218\n"
66 "loc_FF87304C: B loc_FF873220\n"
67 "loc_FF873050: B loc_FF873228\n"
68 "loc_FF873054: B loc_FF873234\n"
69 "loc_FF873058: B loc_FF873268\n"
70 
71 "loc_FF87305C:\n"
72 " BL sub_FF8738E8\n"
73 " BL shooting_expo_param_override\n" // added
74 " BL sub_FF870DD8\n"
75 
76 // this code added to avoid some incorrect behavior if overrides are used.
77  // but it can cause some unexpected side effects. In this case, remove this code!
78 " MOV R0, #0\n"
79 " STR R0, [R4,#0x24]\n" // fixes overrides behavior at short shutter press
80 
81 " LDR R0, [R4,#0x24]\n"
82 " CMP R0, #0\n"
83 " BEQ loc_FF873268\n"
84 " BL sub_FF872800\n"
85 " MOV R5, R0\n"
86 " LDR R0, [R4,#0x24]\n"
87 " CMP R0, #0\n"
88 " BEQ loc_FF8730A4\n"
89 " MOV R0, #0xC\n"
90 " BL sub_FF877A2C\n"
91 " TST R0, #1\n"
92 " STRNE R9, [R6,#0x10]\n"
93 " LDRNE R0, [R5,#8]\n"
94 " ORRNE R0, R0, #0x40000000\n"
95 " STRNE R0, [R5,#8]\n"
96 " BNE loc_FF873268\n"
97 
98 "loc_FF8730A4:\n"
99 " MOV R0, R5\n"
100 " BL sub_FF872AA4\n"
101 " MOV R0, R5\n"
102 
103 //" BL sub_FF942438\n"
104 " BL sub_FF942438_my\n" // patched
105 
106 " TST R0, #1\n"
107 " STRNE R9, [R6,#0x10]\n"
108 " B loc_FF873268\n"
109 
110 "loc_FF8730C0:\n"
111 " LDR R0, [R4,#0x24]\n"
112 " CMP R0, #0\n"
113 " BNE loc_FF8730EC\n"
114 " MOV R0, #0xC\n"
115 " BL sub_FF877A2C\n"
116 " TST R0, #1\n"
117 " LDRNE R0, [SP]\n"
118 " MOVNE R1, #1\n"
119 " LDRNE R2, [R0,#0xC]\n"
120 " MOVNE R0, #1\n"
121 " BNE loc_FF873178\n"
122 
123 "loc_FF8730EC:\n"
124 " LDR R0, [SP]\n"
125 //" BL sub_FF873380\n"
126 " BL sub_FF873380_my\n" // patched
127 
128 "loc_FF8730F4:\n"
129 " STR R7, [R4,#0x24]\n"
130 " B loc_FF873268\n"
131 
132 "loc_FF8730FC:\n"
133 " MOV R0, #1\n"
134 " BL sub_FF873B3C\n"
135 " B loc_FF873268\n"
136 
137 "loc_FF873108:\n"
138 " BL sub_FF873528\n"
139 " B loc_FF8730F4\n"
140 
141 "loc_FF873110:\n"
142 " BL sub_FF8738C8\n"
143 " B loc_FF8730F4\n"
144 
145 "loc_FF873118:\n"
146 " BL sub_FF8738D0\n"
147 " B loc_FF873268\n"
148 
149 "loc_FF873120:\n"
150 " BL sub_FF873A5C\n"
151 " B loc_FF873184\n"
152 
153 "loc_FF873128:\n"
154 " LDR R5, [R0,#0xC]\n"
155 " BL sub_FF8738D8\n"
156 " MOV R0, R5\n"
157 " BL sub_FF941250\n"
158 " TST R0, #1\n"
159 " MOV R8, R0\n"
160 " BNE loc_FF873168\n"
161 " BL sub_FF884AE4\n"
162 " STR R0, [R5,#0x18]\n"
163 " MOV R0, R5\n"
164 " BL sub_FF942350\n"
165 " MOV R0, R5\n"
166 " BL sub_FF94274C\n"
167 " MOV R8, R0\n"
168 " LDR R0, [R5,#0x18]\n"
169 " BL sub_FF884CE8\n"
170 "loc_FF873168:\n"
171 " BL sub_FF8738C8\n"
172 " MOV R2, R5\n"
173 " MOV R1, #9\n"
174 " MOV R0, R8\n"
175 "loc_FF873178:\n"
176 " BL sub_FF8712C4\n"
177 " B loc_FF873268\n"
178 
179 "loc_FF873180:\n"
180 " BL sub_FF873ABC\n"
181 "loc_FF873184:\n"
182 " BL sub_FF870DD8\n"
183 " B loc_FF873268\n"
184 "loc_FF87318C:\n"
185 " LDR R0, [R4,#0x54]\n"
186 " BL sub_FF873EC8\n"
187 " B loc_FF873268\n"
188 "loc_FF873198:\n"
189 " BL sub_FF87417C\n"
190 " B loc_FF873268\n"
191 "loc_FF8731A0:\n"
192 " BL sub_FF874210\n"
193 " B loc_FF873268\n"
194 "loc_FF8731A8:\n"
195 " BL sub_FF8738C8\n"
196 " B loc_FF873268\n"
197 "loc_FF8731B0:\n"
198 " BL sub_FF941468\n"
199 " B loc_FF873268\n"
200 "loc_FF8731B8:\n"
201 " BL sub_FF94167C\n"
202 " B loc_FF873268\n"
203 "loc_FF8731C0:\n"
204 " BL sub_FF941714\n"
205 " B loc_FF873268\n"
206 "loc_FF8731C8:\n"
207 " BL sub_FF9417E4\n"
208 " B loc_FF873268\n"
209 "loc_FF8731D0:\n"
210 " MOV R0, #0\n"
211 " BL sub_FF941A34\n"
212 " B loc_FF873268\n"
213 "loc_FF8731DC:\n"
214 " BL sub_FF941B84\n"
215 " B loc_FF873268\n"
216 "loc_FF8731E4:\n"
217 " BL sub_FF941C14\n"
218 " B loc_FF873268\n"
219 "loc_FF8731EC:\n"
220 " BL sub_FF941CD4\n"
221 " B loc_FF873268\n"
222 "loc_FF8731F4:\n"
223 " BL sub_FF873CB4\n"
224 " B loc_FF873268\n"
225 "loc_FF8731FC:\n"
226 " BL sub_FF873D54\n"
227 " BL sub_FF835F18\n"
228 " B loc_FF873268\n"
229 "loc_FF873208:\n"
230 " BL sub_FF9418B0\n"
231 " B loc_FF873268\n"
232 "loc_FF873210:\n"
233 " BL sub_FF94191C\n"
234 " B loc_FF873268\n"
235 "loc_FF873218:\n"
236 " BL sub_FF8761DC\n"
237 " B loc_FF873268\n"
238 "loc_FF873220:\n"
239 " BL sub_FF876244\n"
240 " B loc_FF873268\n"
241 "loc_FF873228:\n"
242 " BL sub_FF8762A0\n"
243 " BL sub_FF876260\n"
244 " B loc_FF873268\n"
245 "loc_FF873234:\n"
246 " MOV R0, #1\n"
247 " BL sub_FF942F90\n"
248 " MOV R0, #1\n"
249 " BL sub_FF9430A0\n"
250 " LDRH R0, [R4,#0x98]\n"
251 " CMP R0, #4\n"
252 " BNE loc_FF873268\n"
253 " BL sub_FF876244\n"
254 " BL sub_FF876680\n"
255 " B loc_FF873268\n"
256 
257 "loc_FF87325C:\n"
258 " LDR R1, =0x709\n"
259 " LDR R0, =0xFF872B20\n"
260 " BL sub_FF81E88C\n"
261 
262 "loc_FF873268:\n"
263 " LDR R0, [SP]\n"
264 " LDR R1, [R0,#4]\n"
265 " LDR R0, [R6]\n"
266 " BL sub_FF87C7E8\n"
267 " LDR R5, [SP]\n"
268 " LDR R0, [R5,#8]\n"
269 " CMP R0, #0\n"
270 " LDREQ R1, =0x132\n"
271 " LDREQ R0, =0xFF872B20\n"
272 " BLEQ sub_FF81E88C\n"
273 " STR R7, [R5,#8]\n"
274 " B loc_FF872FA4\n"
275  );
276 }

Variablen-Dokumentation

long* nrflag = (long*)0x6718
static

Definiert in Zeile 7 der Datei capt_seq.c.