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*)0x61AC
 

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

Definiert in Zeile 14 der Datei capt_seq.c.

14  {
15 asm volatile (
16 " STMFD SP!, {R4,LR} \n"
17 " SUB SP, SP, #4 \n"
18 " MOV R4, SP \n"
19 " B loc_FF95F27C \n"
20 
21 "loc_FF95F114:\n"
22 " LDR R2, [SP] \n"
23 " LDR R3, [R2] \n"
24 " MOV R0, R2 \n"
25 " CMP R3, #0x14 \n"
26 " LDRLS PC, [PC, R3, LSL#2] \n"
27 " B loc_FF95F250 \n"
28 " .long loc_FF95F180 \n"
29 " .long loc_FF95F1A0 \n"
30 " .long loc_FF95F1B4 \n"
31 " .long loc_FF95F1C4 \n"
32 " .long loc_FF95F1BC \n"
33 " .long loc_FF95F1CC \n"
34 " .long loc_FF95F1D4 \n"
35 " .long loc_FF95F1E0 \n"
36 " .long loc_FF95F1E8 \n"
37 " .long loc_FF95F1F4 \n"
38 " .long loc_FF95F1FC \n"
39 " .long loc_FF95F204 \n"
40 " .long loc_FF95F20C \n"
41 " .long loc_FF95F214 \n"
42 " .long loc_FF95F21C \n"
43 " .long loc_FF95F228 \n"
44 " .long loc_FF95F230 \n"
45 " .long loc_FF95F238 \n"
46 " .long loc_FF95F240 \n"
47 " .long loc_FF95F248 \n"
48 " .long loc_FF95F264 \n"
49 
50 "loc_FF95F180:\n"
51 " BL sub_FF960B50 \n"
52 " BL shooting_expo_param_override\n" // +
53 " BL sub_FF95CE98 \n"
54 " LDR R3, =0x99C40 \n"
55 " MOV R2, #0\n" // added
56 " STR R2, [R3,#0x24]\n" // added, fixes overrides behavior at short shutter press (from S95)
57 //" LDR R2, [R3, #0x24] \n" // above patch makes these three lines redundant
58 //" CMP R2, #0 \n"
59 //" BEQ loc_FF95F260 \n"
60 //" BL _sub_FF95ED60 \n"
61 " B loc_FF95F260 \n"
62 
63 "loc_FF95F1A0:\n"
64 " BL sub_FF95EC90_my \n" // --> Patched. Old value = 0xFF95EC90.
65 
66 "loc_FF95F1A4:\n"
67 " LDR R2, =0x99C40 \n"
68 " MOV R3, #0 \n"
69 " STR R3, [R2, #0x24] \n"
70 " B loc_FF95F260 \n"
71 
72 "loc_FF95F1B4:\n"
73 " BL sub_FF960EE0 \n"
74 " B loc_FF95F260 \n"
75 
76 "loc_FF95F1BC:\n"
77 " BL sub_FF95FD50 \n"
78 " B loc_FF95F1A4 \n"
79 
80 "loc_FF95F1C4:\n"
81 " BL sub_FF9600EC \n"
82 " B loc_FF95F1A4 \n"
83 
84 "loc_FF95F1CC:\n"
85 " BL sub_FF9600FC \n"
86 " B loc_FF95F260 \n"
87 
88 "loc_FF95F1D4:\n"
89 " BL sub_FF960C34 \n"
90 " BL sub_FF95CE98 \n"
91 " B loc_FF95F260 \n"
92 
93 "loc_FF95F1E0:\n"
94 " BL sub_FF95EE34 \n"
95 " B loc_FF95F260 \n"
96 
97 "loc_FF95F1E8:\n"
98 " BL sub_FF960C9C \n"
99 " BL sub_FF95CE98 \n"
100 " B loc_FF95F260 \n"
101 
102 "loc_FF95F1F4:\n"
103 " BL sub_FF9600EC \n"
104 " B loc_FF95F260 \n"
105 
106 "loc_FF95F1FC:\n"
107 " BL sub_FF961434 \n"
108 " B loc_FF95F260 \n"
109 
110 "loc_FF95F204:\n"
111 " BL sub_FF961780 \n"
112 " B loc_FF95F260 \n"
113 
114 "loc_FF95F20C:\n"
115 " BL sub_FF961804 \n"
116 " B loc_FF95F260 \n"
117 
118 "loc_FF95F214:\n"
119 " BL sub_FF9618F0 \n"
120 " B loc_FF95F260 \n"
121 
122 "loc_FF95F21C:\n"
123 " MOV R0, #0 \n"
124 " BL sub_FF9619B8 \n"
125 " B loc_FF95F260 \n"
126 
127 "loc_FF95F228:\n"
128 " BL sub_FF961B24 \n"
129 " B loc_FF95F260 \n"
130 
131 "loc_FF95F230:\n"
132 " BL sub_FF961BB8 \n"
133 " B loc_FF95F260 \n"
134 
135 "loc_FF95F238:\n"
136 " BL sub_FF961C74 \n"
137 " B loc_FF95F260 \n"
138 
139 "loc_FF95F240:\n"
140 " BL sub_FF961D60 \n"
141 " B loc_FF95F260 \n"
142 
143 "loc_FF95F248:\n"
144 " BL sub_FF961DB4 \n"
145 " B loc_FF95F260 \n"
146 
147 "loc_FF95F250:\n"
148 " MOV R1, #0x36C \n"
149 " LDR R0, =0xFF95EA1C /*'ShootTask.c'*/ \n"
150 " ADD R1, R1, #1 \n"
151 " BL _DebugAssert \n"
152 
153 "loc_FF95F260:\n"
154 " LDR R2, [SP] \n"
155 
156 "loc_FF95F264:\n"
157 " LDR R3, =0x6F114 \n"
158 " LDR R1, [R2, #4] \n"
159 " LDR R0, [R3] \n"
160 " BL sub_FF81FCE4 /*_SetEventFlag*/ \n"
161 " LDR R0, [SP] \n"
162 " BL sub_FF95EA98 \n"
163 
164 "loc_FF95F27C:\n"
165 " LDR R3, =0x6F118 \n"
166 " MOV R1, R4 \n"
167 " LDR R0, [R3] \n"
168 " MOV R2, #0 \n"
169 " BL sub_FF8203FC /*_ReceiveMessageQueue*/ \n"
170 " TST R0, #1 \n"
171 " BEQ loc_FF95F114 \n"
172 " MOV R1, #0x2A4 \n"
173 " LDR R0, =0xFF95EA1C /*'ShootTask.c'*/ \n"
174 " ADD R1, R1, #3 \n"
175 " BL _DebugAssert \n"
176 " BL _ExitTask \n"
177 " ADD SP, SP, #4 \n"
178 " LDMFD SP!, {R4,PC} \n"
179 );
180 }

Variablen-Dokumentation

long* nrflag = (long*)0x61AC
static

Definiert in Zeile 8 der Datei capt_seq.c.