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

Funktionen

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

Variablen

static long * nrflag = (long*)0x7FD0
 

Dokumentation der Funktionen

void __attribute__ ( (naked, noinline)  )

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

!!

IS_ERROR( hSoundHandle )

IS_ERROR( RetCode )

IS_ERROR( RetCode )

IS_ERROR( RetCode )

IS_ERROR( RetCode )

"MOV R3, #0\n" "STR R3, [R9]\n"

TODO! below is from sd400

"MOV R3, #0\n" "STR R3, [R9]\n"

TODO! below is from sd400

__MovieRecorder_c__100

__MovieRecorder_c__100

Definiert in Zeile 9 der Datei capt_seq.c.

9  {
10  asm volatile (
11  "STMFD SP!, {R3-R9,LR}\n"
12  "LDR R6, =0x2C58\n"
13  "LDR R4, =0x39F60\n"
14  "MOV R9, #1\n"
15  "MOV R7, #0\n"
16 "loc_FF87A21C:\n"
17  "LDR R0, [R6,#4]\n"
18  "MOV R2, #0\n"
19  "MOV R1, SP\n"
20  "BL sub_FF8382FC\n"
21  "TST R0, #1\n"
22  "BEQ loc_FF87A248\n"
23  "LDR R1, =0x5B3\n"
24  "LDR R0, =0xFF879A2C\n"
25  "BL sub_FF81E88C\n"
26  "BL sub_FF81E844\n"
27  "LDMFD SP!, {R3-R9,PC}\n"
28 "loc_FF87A248:\n"
29  "LDR R0, [SP]\n"
30  "LDR R1, [R0]\n"
31  "CMP R1, #0x21\n"
32  "ADDLS PC, PC, R1,LSL#2\n"
33  "B loc_FF87A50C\n"
34 "loc_FF87A25C:\n"
35  "B loc_FF87A2E4\n"
36 "loc_FF87A260:\n"
37  "B loc_FF87A350\n"
38 "loc_FF87A264:\n"
39  "B loc_FF87A38C\n"
40 "loc_FF87A268:\n"
41  "B loc_FF87A3A0\n"
42 "loc_FF87A26C:\n"
43  "B loc_FF87A398\n"
44 "loc_FF87A270:\n"
45  "B loc_FF87A3A8\n"
46 "loc_FF87A274:\n"
47  "B loc_FF87A3B0\n"
48 "loc_FF87A278:\n"
49  "B loc_FF87A3B8\n"
50 "loc_FF87A27C:\n"
51  "B loc_FF87A410\n"
52 "loc_FF87A280:\n"
53  "B loc_FF87A438\n"
54 "loc_FF87A284:\n"
55  "B loc_FF87A41C\n"
56 "loc_FF87A288:\n"
57  "B loc_FF87A428\n"
58 "loc_FF87A28C:\n"
59  "B loc_FF87A430\n"
60 "loc_FF87A290:\n"
61  "B loc_FF87A440\n"
62 "loc_FF87A294:\n"
63  "B loc_FF87A448\n"
64 "loc_FF87A298:\n"
65  "B loc_FF87A450\n"
66 "loc_FF87A29C:\n"
67  "B loc_FF87A458\n"
68 "loc_FF87A2A0:\n"
69  "B loc_FF87A460\n"
70 "loc_FF87A2A4:\n"
71  "B loc_FF87A468\n"
72 "loc_FF87A2A8:\n"
73  "B loc_FF87A470\n"
74 "loc_FF87A2AC:\n"
75  "B loc_FF87A478\n"
76 "loc_FF87A2B0:\n"
77  "B loc_FF87A480\n"
78 "loc_FF87A2B4:\n"
79  "B loc_FF87A488\n"
80 "loc_FF87A2B8:\n"
81  "B loc_FF87A494\n"
82 "loc_FF87A2BC:\n"
83  "B loc_FF87A49C\n"
84 "loc_FF87A2C0:\n"
85  "B loc_FF87A4A8\n"
86 "loc_FF87A2C4:\n"
87  "B loc_FF87A4B0\n"
88 "loc_FF87A2C8:\n"
89  "B loc_FF87A4B8\n"
90 "loc_FF87A2CC:\n"
91  "B loc_FF87A4C0\n"
92 "loc_FF87A2D0:\n"
93  "B loc_FF87A4C8\n"
94 "loc_FF87A2D4:\n"
95  "B loc_FF87A4D0\n"
96 "loc_FF87A2D8:\n"
97  "B loc_FF87A4D8\n"
98 "loc_FF87A2DC:\n"
99  "B loc_FF87A4E4\n"
100 "loc_FF87A2E0:\n"
101  "B loc_FF87A518\n"
102 "loc_FF87A2E4:\n"
103  "BL sub_FF87AB20\n"
104  "BL shooting_expo_param_override\n" // +
105  "BL sub_FF877B70\n"
106 
107 // copied over from SX10 don't know if we need it yet
108 // this code added to avoid some incorrect behavior if overrides are used.
109 // but it can cause some unexpected side effects. In this case, remove this code!
110  "MOV R0, #0\n"
111  "STR R0, [R4,#0x24]\n" // fixes overrides behavior at short shutter press
112  // end of my code
113 
114  "LDR R0, [R4,#0x24]\n"
115  "CMP R0, #0\n"
116  "BEQ loc_FF87A518\n"
117  "BL sub_FF879700\n"
118  "MOV R5, R0\n"
119  "LDR R0, [R4,#0x24]\n"
120  "CMP R0, #0\n"
121  "BEQ loc_FF87A32C\n"
122  "MOV R0, #0xC\n"
123  "BL sub_FF87F92C\n"
124  "TST R0, #1\n"
125  "STRNE R9, [R6,#0x10]\n"
126  "LDRNE R0, [R5,#8]\n"
127  "ORRNE R0, R0, #0x40000000\n"
128  "STRNE R0, [R5,#8]\n"
129  "BNE loc_FF87A518\n"
130 "loc_FF87A32C:\n"
131  "MOV R0, R5\n"
132  "BL sub_FF966014\n"
133  "MOV R0, R5\n"
134  "BL sub_FF879AE0\n"
135  "MOV R0, R5\n"
136  //"BL sub_FF9668B0\n"
137  "BL sub_FF9668B0_my\n" // -------------->
138  "BL capt_seq_hook_raw_here\n" // +
139  "TST R0, #1\n"
140  "STRNE R9, [R6,#0x10]\n"
141  "B loc_FF87A518\n"
142 "loc_FF87A350:\n"
143  "LDR R0, [R4,#0x24]\n"
144  "CMP R0, #0\n"
145  "BNE loc_FF87A37C\n"
146  "MOV R0, #0xC\n"
147  "BL sub_FF87F92C\n"
148  "TST R0, #1\n"
149  "LDRNE R0, [SP]\n"
150  "MOVNE R1, #1\n"
151  "LDRNE R2, [R0,#0xC]\n"
152  "MOVNE R0, #1\n"
153  "BNE loc_FF87A408\n"
154 "loc_FF87A37C:\n"
155  "LDR R0, [SP]\n"
156  //"BL sub_FF879B58\n" // - capt_seq_hook ist called in this subroutine
157  "BL sub_FF879B58_my\n" // ------------------->
158 "loc_FF87A384:\n"
159  "STR R7, [R4,#0x24]\n"
160  "B loc_FF87A518\n"
161 "loc_FF87A38C:\n"
162  "MOV R0, #1\n"
163  "BL sub_FF87AD74\n"
164  "B loc_FF87A518\n"
165 "loc_FF87A398:\n"
166  "BL sub_FF87A7D0\n"
167  "B loc_FF87A384\n"
168 "loc_FF87A3A0:\n"
169  "BL sub_FF87AB00\n"
170  "B loc_FF87A384\n"
171 "loc_FF87A3A8:\n"
172  "BL sub_FF87AB08\n"
173  "B loc_FF87A518\n"
174 "loc_FF87A3B0:\n"
175  "BL sub_FF87AC94\n"
176  "B loc_FF87A414\n"
177 "loc_FF87A3B8:\n"
178  "LDR R5, [R0,#0xC]\n"
179  "BL sub_FF87AB10\n"
180  "MOV R0, R5\n"
181  "BL sub_FF9654A0\n"
182  "TST R0, #1\n"
183  "MOV R8, R0\n"
184  "BNE loc_FF87A3F8\n"
185  "BL sub_FF88CBF4\n"
186  "STR R0, [R5,#0x18]\n"
187  "MOV R0, R5\n"
188  "BL sub_FF9667C8\n"
189  "MOV R0, R5\n"
190  "BL sub_FF966BC8\n"
191  "MOV R8, R0\n"
192  "LDR R0, [R5,#0x18]\n"
193  "BL sub_FF88CE08\n"
194 "loc_FF87A3F8:\n"
195  "BL sub_FF87AB00\n"
196  "MOV R2, R5\n"
197  "MOV R1, #9\n"
198  "MOV R0, R8\n"
199 "loc_FF87A408:\n"
200  "BL sub_FF8780D8\n"
201  "B loc_FF87A518\n"
202 "loc_FF87A410:\n"
203  "BL sub_FF87ACF4\n"
204 "loc_FF87A414:\n"
205  "BL sub_FF877B70\n"
206  "B loc_FF87A518\n"
207 "loc_FF87A41C:\n"
208  "LDR R0, [R4,#0x54]\n"
209  "BL sub_FF87B5D4\n"
210  "B loc_FF87A518\n"
211 "loc_FF87A428:\n"
212  "BL sub_FF87B888\n"
213  "B loc_FF87A518\n"
214 "loc_FF87A430:\n"
215  "BL sub_FF87B91C\n"
216  "B loc_FF87A518\n"
217 "loc_FF87A438:\n"
218  "BL sub_FF87AB00\n"
219  "B loc_FF87A518\n"
220 "loc_FF87A440:\n"
221  "BL sub_FF9656BC\n"
222  "B loc_FF87A518\n"
223 "loc_FF87A448:\n"
224  "BL sub_FF9658D0\n"
225  "B loc_FF87A518\n"
226 "loc_FF87A450:\n"
227  "BL sub_FF965958\n"
228  "B loc_FF87A518\n"
229 "loc_FF87A458:\n"
230  "BL sub_FF965A48\n"
231  "B loc_FF87A518\n"
232 "loc_FF87A460:\n"
233  "BL sub_FF965B3C\n"
234  "B loc_FF87A518\n"
235 "loc_FF87A468:\n"
236  "MOV R0, #0\n"
237  "B loc_FF87A48C\n"
238 "loc_FF87A470:\n"
239  "BL sub_FF965D58\n"
240  "B loc_FF87A518\n"
241 "loc_FF87A478:\n"
242  "BL sub_FF965DE8\n"
243  "B loc_FF87A518\n"
244 "loc_FF87A480:\n"
245  "BL sub_FF965EA8\n"
246  "B loc_FF87A518\n"
247 "loc_FF87A488:\n"
248  "MOV R0, #1\n"
249 "loc_FF87A48C:\n"
250  "BL sub_FF965C08\n"
251  "B loc_FF87A518\n"
252 "loc_FF87A494:\n"
253  "BL sub_FF87AF5C\n"
254  "B loc_FF87A518\n"
255 "loc_FF87A49C:\n"
256  "BL sub_FF87AFFC\n"
257  "BL sub_FF87A640\n"
258  "B loc_FF87A518\n"
259 "loc_FF87A4A8:\n"
260  "BL sub_FF87B370\n"
261  "B loc_FF87A518\n"
262 "loc_FF87A4B0:\n"
263  "BL sub_FF87B48C\n"
264  "B loc_FF87A518\n"
265 "loc_FF87A4B8:\n"
266  "BL sub_FF8799B8\n"
267  "B loc_FF87A518\n"
268 "loc_FF87A4C0:\n"
269  "BL sub_FF835FDC\n"
270  "B loc_FF87A518\n"
271 "loc_FF87A4C8:\n"
272  "BL sub_FF87DCDC\n"
273  "B loc_FF87A518\n"
274 "loc_FF87A4D0:\n"
275  "BL sub_FF87DD44\n"
276  "B loc_FF87A518\n"
277 "loc_FF87A4D8:\n"
278  "BL sub_FF87DDA0\n"
279  "BL sub_FF87DD60\n"
280  "B loc_FF87A518\n"
281 "loc_FF87A4E4:\n"
282  "MOV R0, #1\n"
283  "BL sub_FF967430\n"
284  "MOV R0, #1\n"
285  "BL sub_FF967540\n"
286  "LDRH R0, [R4,#0xA0]\n"
287  "CMP R0, #4\n"
288  "BNE loc_FF87A518\n"
289  "BL sub_FF87DD44\n"
290  "BL sub_FF87E18C\n"
291  "B loc_FF87A518\n"
292 "loc_FF87A50C:\n"
293  "LDR R1, =0x708\n"
294  "LDR R0, =0xFF879A2C\n"
295  "BL sub_FF81E88C\n"
296 "loc_FF87A518:\n"
297  "LDR R0, [SP]\n"
298  "LDR R1, [R0,#4]\n"
299  "LDR R0, [R6]\n"
300  "BL sub_FF8848E0\n"
301  "LDR R5, [SP]\n"
302  "LDR R0, [R5,#8]\n"
303  "CMP R0, #0\n"
304  "LDREQ R1, =0x131\n"
305  "LDREQ R0, =0xFF879A2C\n"
306  "BLEQ sub_FF81E88C\n"
307  "STR R7, [R5,#8]\n"
308  "B loc_FF87A21C\n"
309  );
310 }

Variablen-Dokumentation

long* nrflag = (long*)0x7FD0
static

Definiert in Zeile 5 der Datei capt_seq.c.