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   150
 

Funktionen

void __attribute__ ((naked, noinline))
 

Variablen

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

Makro-Dokumentation

#define NR_AUTO   (0)

Definiert in Zeile 7 der Datei capt_seq.c.

#define PAUSE_FOR_FILE_COUNTER   150

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, =0x36C6C\n"
18  "LDR R7, =0x2AEC\n"
19  "MOV R6, #0\n"
20 "loc_FF86F100:\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_FF86F12C\n"
27  "LDR R1, =0x493\n"
28  "LDR R0, =0xFF86EC5C\n" // "SsShootTask.c"
29  "BL _DebugAssert\n"
30  "BL _ExitTask\n"
31  "LDMFD SP!, {R3-R9,PC}\n"
32 "loc_FF86F12C:\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_FF86F394\n"
38  "B loc_FF86F1C0\n"
39  "B loc_FF86F1D8\n"
40  "B loc_FF86F248\n"
41  "B loc_FF86F25C\n"
42  "B loc_FF86F254\n"
43  "B loc_FF86F268\n"
44  "B loc_FF86F270\n"
45  "B loc_FF86F278\n"
46  "B loc_FF86F294\n"
47  "B loc_FF86F2C0\n"
48  "B loc_FF86F2A0\n"
49  "B loc_FF86F2AC\n"
50  "B loc_FF86F2B4\n"
51  "B loc_FF86F2C8\n"
52  "B loc_FF86F2D0\n"
53  "B loc_FF86F2D8\n"
54  "B loc_FF86F2E0\n"
55  "B loc_FF86F2E8\n"
56  "B loc_FF86F2F4\n"
57  "B loc_FF86F2FC\n"
58  "B loc_FF86F304\n"
59  "B loc_FF86F30C\n"
60  "B loc_FF86F314\n"
61  "B loc_FF86F320\n"
62  "B loc_FF86F328\n"
63  "B loc_FF86F330\n"
64  "B loc_FF86F338\n"
65  "B loc_FF86F340\n"
66  "B loc_FF86F34C\n"
67  "B loc_FF86F354\n"
68  "B loc_FF86F360\n"
69  "B loc_FF86F3A0\n"
70 "loc_FF86F1C0:\n"
71  "BL shooting_expo_iso_override \n" // added
72  "BL sub_FF86F900\n"
73  "BL shooting_expo_param_override \n" // added
74  "BL sub_FF86CF58\n"
75 // "LDR R0, [R4, #0x28]\n"
76 // "CMP R0, #0\n"
77 // "BLNE sub_FF961044\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_FF86F3A0\n"
81 "loc_FF86F1D8:\n"
82  "LDR R5, [R0, #0x10]\n"
83  "LDR R0, [R4, #0x28]\n"
84  "CMP R0, #0\n"
85  "BNE loc_FF86F220\n"
86  "LDR R0, [R4, #0x8C]\n"
87  "TST R0, #0x30\n"
88  "BLNE sub_FF870AA4\n"
89  "BL sub_FF870784\n"
90  "MOV R1, R5\n"
91  "BL sub_FF8707DC\n"
92  "LDR R0, =0x10F\n"
93  "MOV R2, #4\n"
94  "ADD R1, R5, #0x24\n"
95  "BL _SetPropertyCase\n"
96  "MOV R2, #4\n"
97  "ADD R1, R5, #0x28\n"
98  "MOV R0, #0x2C\n"
99  "BL _SetPropertyCase\n"
100 "loc_FF86F220:\n"
101  "MOV R0, R5\n"
102 // "BL sub_FF960FAC\n" //original
103  "BL sub_FF960FAC_my\n" //patched
104  "BL capt_seq_hook_raw_here \n" // patch
105  "MOV R8, R0\n"
106  "MOV R2, R5\n"
107  "MOV R1, #1\n"
108  "BL sub_FF86D408\n"
109  "TST R8, #1\n"
110  "MOVEQ R0, R5\n"
111  "BLEQ sub_FF9609A0\n"
112  "B loc_FF86F3A0\n"
113 "loc_FF86F248:\n"
114  "MOV R0, #1\n"
115  "BL sub_FF86FBD0\n"
116  "B loc_FF86F3A0\n"
117 "loc_FF86F254:\n"
118  "BL sub_FF86F568\n"
119  "B loc_FF86F260\n"
120 "loc_FF86F25C:\n"
121  "BL sub_FF86F8E0\n"
122 "loc_FF86F260:\n"
123  "STR R6, [R4, #0x28]\n"
124  "B loc_FF86F3A0\n"
125 "loc_FF86F268:\n"
126  "BL sub_FF86F8E8\n"
127  "B loc_FF86F3A0\n"
128 "loc_FF86F270:\n"
129  "BL sub_FF86FAB8\n"
130  "B loc_FF86F298\n"
131 "loc_FF86F278:\n"
132  "LDR R5, [R0, #0x10]\n"
133  "MOV R0, R5\n"
134  "BL sub_FF961180\n"
135  "MOV R2, R5\n"
136  "MOV R1, #9\n"
137  "BL sub_FF86D408\n"
138  "B loc_FF86F3A0\n"
139 "loc_FF86F294:\n"
140  "BL sub_FF86FB38\n"
141 "loc_FF86F298:\n"
142  "BL sub_FF86CF58\n"
143  "B loc_FF86F3A0\n"
144 "loc_FF86F2A0:\n"
145  "LDR R0, [R4, #0x58]\n"
146  "BL sub_FF86FFA8\n"
147  "B loc_FF86F3A0\n"
148 "loc_FF86F2AC:\n"
149  "BL sub_FF870340\n"
150  "B loc_FF86F3A0\n"
151 "loc_FF86F2B4:\n"
152  "MOV R0, #0\n"
153  "BL sub_FF8703A4\n"
154  "B loc_FF86F3A0\n"
155 "loc_FF86F2C0:\n"
156  "BL sub_FF86F8E0\n"
157  "B loc_FF86F3A0\n"
158 "loc_FF86F2C8:\n"
159  "BL sub_FF95FD4C\n"
160  "B loc_FF86F3A0\n"
161 "loc_FF86F2D0:\n"
162  "BL sub_FF95FFAC\n"
163  "B loc_FF86F3A0\n"
164 "loc_FF86F2D8:\n"
165  "BL sub_FF960064\n"
166  "B loc_FF86F3A0\n"
167 "loc_FF86F2E0:\n"
168  "BL sub_FF960138\n"
169  "B loc_FF86F3A0\n"
170 "loc_FF86F2E8:\n"
171  "MOV R0, #0\n"
172  "BL sub_FF960398\n"
173  "B loc_FF86F3A0\n"
174 "loc_FF86F2F4:\n"
175  "BL sub_FF960508\n"
176  "B loc_FF86F3A0\n"
177 "loc_FF86F2FC:\n"
178  "BL sub_FF96059C\n"
179  "B loc_FF86F3A0\n"
180 "loc_FF86F304:\n"
181  "BL sub_FF960658\n"
182  "B loc_FF86F3A0\n"
183 "loc_FF86F30C:\n"
184  "BL sub_FF86FD44\n"
185  "B loc_FF86F3A0\n"
186 "loc_FF86F314:\n"
187  "BL sub_FF86FDB0\n"
188  "BL sub_FF832410\n"
189  "B loc_FF86F3A0\n"
190 "loc_FF86F320:\n"
191  "BL sub_FF960208\n"
192  "B loc_FF86F3A0\n"
193 "loc_FF86F328:\n"
194  "BL sub_FF960248\n"
195  "B loc_FF86F3A0\n"
196 "loc_FF86F330:\n"
197  "BL sub_FF871C80\n"
198  "B loc_FF86F3A0\n"
199 "loc_FF86F338:\n"
200  "BL sub_FF871CF4\n"
201  "B loc_FF86F3A0\n"
202 "loc_FF86F340:\n"
203  "LDR R0, [R0, #0xC]\n"
204  "BL sub_FF960780\n"
205  "B loc_FF86F3A0\n"
206 "loc_FF86F34C:\n"
207  "BL sub_FF9607F0\n"
208  "B loc_FF86F3A0\n"
209 "loc_FF86F354:\n"
210  "BL sub_FF871D5C\n"
211  "BL sub_FF871D14\n"
212  "B loc_FF86F3A0\n"
213 "loc_FF86F360:\n"
214  "MOV R0, #1\n"
215  "BL sub_FF96189C\n"
216  "MOV R0, #1\n"
217  "BL sub_FF9619C4\n"
218  "LDRH R0, [R4, #0x9C]\n"
219  "CMP R0, #4\n"
220  "LDRNEH R0, [R4]\n"
221  "SUBNE R1, R0, #0x8200\n"
222  "SUBNES R1, R1, #0x2E\n"
223  "BNE loc_FF86F3A0\n"
224  "BL sub_FF871CF4\n"
225  "BL sub_FF8721B8\n"
226  "B loc_FF86F3A0\n"
227 "loc_FF86F394:\n"
228  "LDR R1, =0x5F4\n"
229  "LDR R0, =0xFF86EC5C\n"
230  "BL _DebugAssert\n"
231 "loc_FF86F3A0:\n"
232  "LDR R0, [SP]\n"
233  "LDR R1, [R0, #4]\n"
234  "LDR R0, [R7]\n"
235  "BL sub_003FAC6C\n"
236  "LDR R5, [SP]\n"
237  "LDR R0, [R5, #8]\n"
238  "CMP R0, #0\n"
239  "LDREQ R1, =0x117\n"
240  "LDREQ R0, =0xFF86EC5C\n" // "SsShootTask.c"
241  "BLEQ _DebugAssert\n"
242  "STR R6, [R5, #8]\n"
243  "B loc_FF86F100\n"
244  );
245 }

Variablen-Dokumentation

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

Definiert in Zeile 6 der Datei capt_seq.c.