CHDK_DE Vorschauversion  Trunk Rev. 5429
 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 
11 
12  asm volatile (
13  "STMFD SP!, {R3-R9,LR}\n"
14  "LDR R6, =0x2C58\n"
15  "LDR R4, =0x39F60\n"
16  "MOV R9, #1\n"
17  "MOV R7, #0\n"
18 "loc_FF87A26C:\n"
19  "LDR R0, [R6,#4]\n"
20  "MOV R2, #0\n"
21  "MOV R1, SP\n"
22  "BL sub_FF8382FC \n"
23  "TST R0, #1\n"
24  "BEQ loc_FF87A298\n"
25  "LDR R1, =0x5B3\n"
26  "LDR R0, =0xFF879A7C\n"
27  "BL sub_FF81E88C\n"
28  "BL sub_FF81E844 \n"
29  "LDMFD SP!, {R3-R9,PC}\n"
30 "loc_FF87A298:\n"
31  "LDR R0, [SP]\n"
32  "LDR R1, [R0]\n"
33  "CMP R1, #0x21\n"
34  "ADDLS PC, PC, R1,LSL#2\n"
35  "B loc_FF87A55C\n"
36 "loc_FF87A2AC:\n"
37  "B loc_FF87A334\n"
38 "loc_FF87A2B0:\n"
39  "B loc_FF87A3A0\n"
40 "loc_FF87A2B4:\n"
41  "B loc_FF87A3DC\n"
42 "loc_FF87A2B8:\n"
43  "B loc_FF87A3F0\n"
44 "loc_FF87A2BC:\n"
45  "B loc_FF87A3E8\n"
46 "loc_FF87A2C0:\n"
47  "B loc_FF87A3F8\n"
48 "loc_FF87A2C4:\n"
49  "B loc_FF87A400\n"
50 "loc_FF87A2C8:\n"
51  "B loc_FF87A408\n"
52 "loc_FF87A2CC:\n"
53  "B loc_FF87A460\n"
54 "loc_FF87A2D0:\n"
55  "B loc_FF87A488\n"
56 "loc_FF87A2D4:\n"
57  "B loc_FF87A46C\n"
58 "loc_FF87A2D8:\n"
59  "B loc_FF87A478\n"
60 "loc_FF87A2DC:\n"
61  "B loc_FF87A480\n"
62 "loc_FF87A2E0:\n"
63  "B loc_FF87A490\n"
64 "loc_FF87A2E4:\n"
65  "B loc_FF87A498\n"
66 "loc_FF87A2E8:\n"
67  "B loc_FF87A4A0\n"
68 "loc_FF87A2EC:\n"
69  "B loc_FF87A4A8\n"
70 "loc_FF87A2F0:\n"
71  "B loc_FF87A4B0\n"
72 "loc_FF87A2F4:\n"
73  "B loc_FF87A4B8\n"
74 "loc_FF87A2F8:\n"
75  "B loc_FF87A4C0\n"
76 "loc_FF87A2FC:\n"
77  "B loc_FF87A4C8\n"
78 "loc_FF87A300:\n"
79  "B loc_FF87A4D0\n"
80 "loc_FF87A304:\n"
81  "B loc_FF87A4D8\n"
82 "loc_FF87A308:\n"
83  "B loc_FF87A4E4\n"
84 "loc_FF87A30C:\n"
85  "B loc_FF87A4EC\n"
86 "loc_FF87A310:\n"
87  "B loc_FF87A4F8\n"
88 "loc_FF87A314:\n"
89  "B loc_FF87A500\n"
90 "loc_FF87A318:\n"
91  "B loc_FF87A508\n"
92 "loc_FF87A31C:\n"
93  "B loc_FF87A510\n"
94 "loc_FF87A320:\n"
95  "B loc_FF87A518\n"
96 "loc_FF87A324:\n"
97  "B loc_FF87A520\n"
98 "loc_FF87A328:\n"
99  "B loc_FF87A528\n"
100 "loc_FF87A32C:\n"
101  "B loc_FF87A534\n"
102 "loc_FF87A330:\n"
103  "B loc_FF87A568\n"
104 "loc_FF87A334:\n"
105  "BL sub_FF87AB70\n"
106  "BL shooting_expo_param_override\n" // +
107  "BL sub_FF877BC0\n"
108 // copied over from SX10 don't know if we need it yet
109 // this code added to avoid some incorrect behavior if overrides are used.
110 // but it can cause some unexpected side effects. In this case, remove this code!
111  "MOV R0, #0\n"
112  "STR R0, [R4,#0x24]\n" // fixes overrides behavior at short shutter press
113  // end of my code
114 
115  "LDR R0, [R4,#0x24]\n"
116  "CMP R0, #0\n"
117  "BEQ loc_FF87A568\n"
118  "BL sub_FF879750\n"
119  "MOV R5, R0\n"
120  "LDR R0, [R4,#0x24]\n"
121  "CMP R0, #0\n"
122  "BEQ loc_FF87A37C\n"
123  "MOV R0, #0xC\n"
124  "BL sub_FF87F9A8\n"
125  "TST R0, #1\n"
126  "STRNE R9, [R6,#0x10]\n"
127  "LDRNE R0, [R5,#8]\n"
128  "ORRNE R0, R0, #0x40000000\n"
129  "STRNE R0, [R5,#8]\n"
130  "BNE loc_FF87A568\n"
131 "loc_FF87A37C:\n"
132  "MOV R0, R5\n"
133  "BL sub_FF966224\n"
134  "MOV R0, R5\n"
135  "BL sub_FF879B30\n"
136  "MOV R0, R5\n"
137  //"BL sub_FF966AC0 \n"
138  "BL sub_FF966AC0_my\n" // -------------->
139  "BL capt_seq_hook_raw_here\n" // +
140  "TST R0, #1\n"
141  "STRNE R9, [R6,#0x10]\n"
142  "B loc_FF87A568\n"
143 "loc_FF87A3A0:\n"
144  "LDR R0, [R4,#0x24]\n"
145  "CMP R0, #0\n"
146  "BNE loc_FF87A3CC\n"
147  "MOV R0, #0xC\n"
148  "BL sub_FF87F9A8\n"
149  "TST R0, #1\n"
150  "LDRNE R0, [SP]\n"
151  "MOVNE R1, #1\n"
152  "LDRNE R2, [R0,#0xC]\n"
153  "MOVNE R0, #1\n"
154  "BNE loc_FF87A458\n"
155 "loc_FF87A3CC:\n"
156  "LDR R0, [SP]\n"
157  //"BL sub_FF879BA8\n" //- capt_seq_hook ist called in this subroutine
158  "BL sub_FF879BA8_my\n" //---------->
159 "loc_FF87A3D4:\n"
160  "STR R7, [R4,#0x24]\n"
161  "B loc_FF87A568\n"
162 "loc_FF87A3DC:\n"
163  "MOV R0, #1\n"
164  "BL sub_FF87ADC4 \n"
165  "B loc_FF87A568\n"
166 "loc_FF87A3E8:\n"
167  "BL sub_FF87A820\n"
168  "B loc_FF87A3D4\n"
169 "loc_FF87A3F0:\n"
170  "BL sub_FF87AB50\n"
171  "B loc_FF87A3D4\n"
172 "loc_FF87A3F8:\n"
173  "BL sub_FF87AB58\n"
174  "B loc_FF87A568\n"
175 "loc_FF87A400:\n"
176  "BL sub_FF87ACE4\n"
177  "B loc_FF87A464\n"
178 "loc_FF87A408:\n"
179  "LDR R5, [R0,#0xC]\n"
180  "BL sub_FF87AB60\n"
181  "MOV R0, R5\n"
182  "BL sub_FF9656B0 \n"
183  "TST R0, #1\n"
184  "MOV R8, R0\n"
185  "BNE loc_FF87A448\n"
186  "BL sub_FF88CC70 \n"
187  "STR R0, [R5,#0x18]\n"
188  "MOV R0, R5\n"
189  "BL sub_FF9669D8 \n"
190  "MOV R0, R5\n"
191  "BL sub_FF966DD8 \n"
192  "MOV R8, R0\n"
193  "LDR R0, [R5,#0x18]\n"
194  "BL sub_FF88CE84 \n"
195 "loc_FF87A448:\n"
196  "BL sub_FF87AB50\n"
197  "MOV R2, R5\n"
198  "MOV R1, #9\n"
199  "MOV R0, R8\n"
200 "loc_FF87A458:\n"
201  "BL sub_FF878128 \n"
202  "B loc_FF87A568\n"
203 "loc_FF87A460:\n"
204  "BL sub_FF87AD44\n"
205 "loc_FF87A464:\n"
206  "BL sub_FF877BC0\n"
207  "B loc_FF87A568\n"
208 "loc_FF87A46C:\n"
209  "LDR R0, [R4,#0x54]\n"
210  "BL sub_FF87B624 \n"
211  "B loc_FF87A568\n"
212 "loc_FF87A478:\n"
213  "BL sub_FF87B8D8\n"
214  "B loc_FF87A568\n"
215 "loc_FF87A480:\n"
216  "BL sub_FF87B96C\n"
217  "B loc_FF87A568\n"
218 "loc_FF87A488:\n"
219  "BL sub_FF87AB50\n"
220  "B loc_FF87A568\n"
221 "loc_FF87A490:\n"
222  "BL sub_FF9658CC\n"
223  "B loc_FF87A568\n"
224 "loc_FF87A498:\n"
225  "BL sub_FF965AE0\n"
226  "B loc_FF87A568\n"
227 "loc_FF87A4A0:\n"
228  "BL sub_FF965B68\n"
229  "B loc_FF87A568\n"
230 "loc_FF87A4A8:\n"
231  "BL sub_FF965C58\n"
232  "B loc_FF87A568\n"
233 "loc_FF87A4B0:\n"
234  "BL sub_FF965D4C\n"
235  "B loc_FF87A568\n"
236 "loc_FF87A4B8:\n"
237  "MOV R0, #0\n"
238  "B loc_FF87A4DC\n"
239 "loc_FF87A4C0:\n"
240  "BL sub_FF965F68\n"
241  "B loc_FF87A568\n"
242 "loc_FF87A4C8:\n"
243  "BL sub_FF965FF8\n"
244  "B loc_FF87A568\n"
245 "loc_FF87A4D0:\n"
246  "BL sub_FF9660B8\n"
247  "B loc_FF87A568\n"
248 "loc_FF87A4D8:\n"
249  "MOV R0, #1\n"
250 "loc_FF87A4DC:\n"
251  "BL sub_FF965E18\n"
252  "B loc_FF87A568\n"
253 "loc_FF87A4E4:\n"
254  "BL sub_FF87AFAC\n"
255  "B loc_FF87A568\n"
256 "loc_FF87A4EC:\n"
257  "BL sub_FF87B04C\n"
258  "BL sub_FF87A690 \n"
259  "B loc_FF87A568\n"
260 "loc_FF87A4F8:\n"
261  "BL sub_FF87B3C0\n"
262  "B loc_FF87A568\n"
263 "loc_FF87A500:\n"
264  "BL sub_FF87B4DC\n"
265  "B loc_FF87A568\n"
266 "loc_FF87A508:\n"
267  "BL sub_FF879A08\n"
268  "B loc_FF87A568\n"
269 "loc_FF87A510:\n"
270  "BL sub_FF835FDC\n"
271  "B loc_FF87A568\n"
272 "loc_FF87A518:\n"
273  "BL sub_FF87DD2C\n"
274  "B loc_FF87A568\n"
275 "loc_FF87A520:\n"
276  "BL sub_FF87DD94\n"
277  "B loc_FF87A568\n"
278 "loc_FF87A528:\n"
279  "BL sub_FF87DDF0\n"
280  "BL sub_FF87DDB0\n"
281  "B loc_FF87A568\n"
282 "loc_FF87A534:\n"
283  "MOV R0, #1\n"
284  "BL sub_FF967640\n"
285  "MOV R0, #1\n"
286  "BL sub_FF967750\n"
287  "LDRH R0, [R4,#0xA0]\n"
288  "CMP R0, #4\n"
289  "BNE loc_FF87A568\n"
290  "BL sub_FF87DD94\n"
291  "BL sub_FF87E1DC\n"
292  "B loc_FF87A568\n"
293 "loc_FF87A55C:\n"
294  "LDR R1, =0x708\n"
295  "LDR R0, =0xFF879A7C\n"
296  "BL sub_FF81E88C\n"
297 "loc_FF87A568:\n"
298  "LDR R0, [SP]\n"
299  "LDR R1, [R0,#4]\n"
300  "LDR R0, [R6]\n"
301  "BL sub_FF88495C\n"
302  "LDR R5, [SP]\n"
303  "LDR R0, [R5,#8]\n"
304  "CMP R0, #0\n"
305  "LDREQ R1, =0x131\n"
306  "LDREQ R0, =0xFF879A7C\n"
307  "BLEQ sub_FF81E88C\n"
308  "STR R7, [R5,#8]\n"
309  "B loc_FF87A26C\n"
310  );
311 }

Variablen-Dokumentation

long* nrflag = (long*)0x7FD0
static

Definiert in Zeile 5 der Datei capt_seq.c.