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

Makrodefinitionen

#define NR_AUTO   (0)
 
#define PAUSE_FOR_FILE_COUNTER   300
 

Funktionen

void __attribute__ ((naked, noinline))
 

Variablen

static long * nrflag = (long*)(0x8868+0x00)
 

Makro-Dokumentation

#define NR_AUTO   (0)

Definiert in Zeile 7 der Datei capt_seq.c.

#define PAUSE_FOR_FILE_COUNTER   300

Definiert in Zeile 9 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-R9,LR} \n"
17  "LDR R4, =0x36D7C \n"
18  "LDR R7, =0x2B64 \n"
19  "MOV R6, #0 \n"
20 "loc_FF870DC0:\n"
21  "LDR R0, [R7, #4] \n"
22  "MOV R2, #0 \n"
23  "MOV R1, SP \n"
24  "BL sub_003F7218 \n"
25  "TST R0, #1 \n"
26  "BEQ loc_FF870DEC \n"
27  "LDR R1, =0x493 \n"
28  "LDR R0, =0xFF87091C \n" // "SsShootTask.c"
29  "BL _DebugAssert \n"
30  "BL _ExitTask \n"
31  "LDMFD SP!, {R3-R9,PC} \n"
32 "loc_FF870DEC:\n"
33  "LDR R0, [SP] \n"
34  "LDR R1, [R0] \n"
35  "CMP R1, #0x20 \n"
36  "ADDCC PC, PC, R1, LSL #2 \n"
37  "B loc_FF871048 \n"
38  "B loc_FF870E80 \n"
39  "B loc_FF870E98 \n"
40  "B loc_FF870EFC \n"
41  "B loc_FF870F10 \n"
42  "B loc_FF870F08 \n"
43  "B loc_FF870F1C \n"
44  "B loc_FF870F24 \n"
45  "B loc_FF870F2C \n"
46  "B loc_FF870F48 \n"
47  "B loc_FF870F74 \n"
48  "B loc_FF870F54 \n"
49  "B loc_FF870F60 \n"
50  "B loc_FF870F68 \n"
51  "B loc_FF870F7C \n"
52  "B loc_FF870F84 \n"
53  "B loc_FF870F8C \n"
54  "B loc_FF870F94 \n"
55  "B loc_FF870F9C \n"
56  "B loc_FF870FA8 \n"
57  "B loc_FF870FB0 \n"
58  "B loc_FF870FB8 \n"
59  "B loc_FF870FC0 \n"
60  "B loc_FF870FC8 \n"
61  "B loc_FF870FD4 \n"
62  "B loc_FF870FDC \n"
63  "B loc_FF870FE4 \n"
64  "B loc_FF870FEC \n"
65  "B loc_FF870FF4 \n"
66  "B loc_FF871000 \n"
67  "B loc_FF871008 \n"
68  "B loc_FF871014 \n"
69  "B loc_FF871054 \n"
70 "loc_FF870E80:\n"
71  " BL shooting_expo_iso_override \n" // added
72  "BL sub_FF8715C8 \n"
73  " BL shooting_expo_param_override \n" // added
74  "BL sub_FF86EBBC \n"
75 // "LDR R0, [R4, #0x28] \n"
76 // "CMP R0, #0 \n"
77 // "BLNE sub_FF96473C \n" // above 3 lines removed - redundant with added lines below
78  " MOV R0, #0 \n" // patch added
79  " STR R0, [R4,#0x28] \n" //fixes overrides behavior at short shutter press
80  "B loc_FF871054 \n"
81 "loc_FF870E98:\n"
82  "LDR R5, [R0, #0x10] \n"
83  "LDR R0, [R4, #0x28] \n"
84  "CMP R0, #0 \n"
85  "BNE loc_FF870ED4 \n"
86  "BL sub_FF87249C \n"
87  "MOV R1, R5 \n"
88  "BL sub_FF8724F4 \n"
89  "LDR R0, =0x10F \n"
90  "MOV R2, #4 \n"
91  "ADD R1, R5, #0x24 \n"
92  "BL _SetPropertyCase \n"
93  "MOV R2, #4 \n"
94  "ADD R1, R5, #0x28 \n"
95  "MOV R0, #0x2C \n"
96  "BL _SetPropertyCase \n"
97 "loc_FF870ED4:\n"
98  "MOV R0, R5 \n"
99 // "BL sub_FF9646A0 \n" //original
100  "BL sub_FF9646A0_my \n" //patch
101  "BL capt_seq_hook_raw_here \n" // patch
102  "MOV R8, R0 \n"
103  "MOV R2, R5 \n"
104  "MOV R1, #1 \n"
105  "BL sub_FF86F06C \n"
106  "TST R8, #1 \n"
107  "MOVEQ R0, R5 \n"
108  "BLEQ sub_FF96401C \n"
109  "B loc_FF871054 \n"
110 "loc_FF870EFC:\n"
111  "MOV R0, #1 \n"
112  "BL sub_FF871898 \n"
113  "B loc_FF871054 \n"
114 "loc_FF870F08:\n"
115  "BL sub_FF87121C \n"
116  "B loc_FF870F14 \n"
117 "loc_FF870F10:\n"
118  "BL sub_FF8715A8 \n"
119 "loc_FF870F14:\n"
120  "STR R6, [R4, #0x28] \n"
121  "B loc_FF871054 \n"
122 "loc_FF870F1C:\n"
123  "BL sub_FF8715B0 \n"
124  "B loc_FF871054 \n"
125 "loc_FF870F24:\n"
126  "BL sub_FF871780 \n"
127  "B loc_FF870F4C \n"
128 "loc_FF870F2C:\n"
129  "LDR R5, [R0, #0x10] \n"
130  "MOV R0, R5 \n"
131  "BL sub_FF9647D4 \n"
132  "MOV R2, R5 \n"
133  "MOV R1, #9 \n"
134  "BL sub_FF86F06C \n"
135  "B loc_FF871054 \n"
136 "loc_FF870F48:\n"
137  "BL sub_FF871800 \n"
138 "loc_FF870F4C:\n"
139  "BL sub_FF86EBBC \n"
140  "B loc_FF871054 \n"
141 "loc_FF870F54:\n"
142  "LDR R0, [R4, #0x58] \n"
143  "BL sub_FF871C88 \n"
144  "B loc_FF871054 \n"
145 "loc_FF870F60:\n"
146  "BL sub_FF872038 \n"
147  "B loc_FF871054 \n"
148 "loc_FF870F68:\n"
149  "MOV R0, #0 \n"
150  "BL sub_FF87209C \n"
151  "B loc_FF871054 \n"
152 "loc_FF870F74:\n"
153  "BL sub_FF8715A8 \n"
154  "B loc_FF871054 \n"
155 "loc_FF870F7C:\n"
156  "BL sub_FF9633C8 \n"
157  "B loc_FF871054 \n"
158 "loc_FF870F84:\n"
159  "BL sub_FF963628 \n"
160  "B loc_FF871054 \n"
161 "loc_FF870F8C:\n"
162  "BL sub_FF9636E0 \n"
163  "B loc_FF871054 \n"
164 "loc_FF870F94:\n"
165  "BL sub_FF9637B4 \n"
166  "B loc_FF871054 \n"
167 "loc_FF870F9C:\n"
168  "MOV R0, #0 \n"
169  "BL sub_FF963A14 \n"
170  "B loc_FF871054 \n"
171 "loc_FF870FA8:\n"
172  "BL sub_FF963B84 \n"
173  "B loc_FF871054 \n"
174 "loc_FF870FB0:\n"
175  "BL sub_FF963C18 \n"
176  "B loc_FF871054 \n"
177 "loc_FF870FB8:\n"
178  "BL sub_FF963CD4 \n"
179  "B loc_FF871054 \n"
180 "loc_FF870FC0:\n"
181  "BL sub_FF871A0C \n"
182  "B loc_FF871054 \n"
183 "loc_FF870FC8:\n"
184  "BL sub_FF871A90 \n"
185  "BL sub_FF832298 \n"
186  "B loc_FF871054 \n"
187 "loc_FF870FD4:\n"
188  "BL sub_FF963884 \n"
189  "B loc_FF871054 \n"
190 "loc_FF870FDC:\n"
191  "BL sub_FF9638C4 \n"
192  "B loc_FF871054 \n"
193 "loc_FF870FE4:\n"
194  "BL sub_FF873944 \n"
195  "B loc_FF871054 \n"
196 "loc_FF870FEC:\n"
197  "BL sub_FF8739B8 \n"
198  "B loc_FF871054 \n"
199 "loc_FF870FF4:\n"
200  "LDR R0, [R0, #0xC] \n"
201  "BL sub_FF963DFC \n"
202  "B loc_FF871054 \n"
203 "loc_FF871000:\n"
204  "BL sub_FF963E6C \n"
205  "B loc_FF871054 \n"
206 "loc_FF871008:\n"
207  "BL sub_FF873A20 \n"
208  "BL sub_FF8739D8 \n"
209  "B loc_FF871054 \n"
210 "loc_FF871014:\n"
211  "MOV R0, #1 \n"
212  "BL sub_FF964ED4 \n"
213  "MOV R0, #1 \n"
214  "BL sub_FF964FFC \n"
215  "LDRH R0, [R4, #0x9C] \n"
216  "CMP R0, #4 \n"
217  "LDRNEH R0, [R4] \n"
218  "SUBNE R1, R0, #0x8200 \n"
219  "SUBNES R1, R1, #0x2E \n"
220  "BNE loc_FF871054 \n"
221  "BL sub_FF8739B8 \n"
222  "BL sub_FF873E7C \n"
223  "B loc_FF871054 \n"
224 "loc_FF871048:\n"
225  "LDR R1, =0x5F4 \n"
226  "LDR R0, =0xFF87091C \n" // "SsShootTask.c"
227  "BL _DebugAssert \n"
228 "loc_FF871054:\n"
229  "LDR R0, [SP] \n"
230  "LDR R1, [R0, #4] \n"
231  "LDR R0, [R7] \n"
232  "BL sub_003FAC6C \n"
233  "LDR R5, [SP] \n"
234  "LDR R0, [R5, #8] \n"
235  "CMP R0, #0 \n"
236  "LDREQ R1, =0x117 \n"
237  "LDREQ R0, =0xFF87091C \n" // "SsShootTask.c"
238  "BLEQ _DebugAssert \n"
239  "STR R6, [R5, #8] \n"
240  "B loc_FF870DC0 \n"
241  );
242 }

Variablen-Dokumentation

long* nrflag = (long*)(0x8868+0x00)
static

Definiert in Zeile 6 der Datei capt_seq.c.