CHDK_DE Vorschauversion  Trunk Rev. 6014
 Alle Datenstrukturen Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Makrodefinitionen
movie_rec.c-Dateireferenz
#include "conf.h"
+ Include-Abhängigkeitsdiagramm für movie_rec.c:

gehe zum Quellcode dieser Datei

Funktionen

void change_video_tables (__attribute__((unused)) int a, __attribute__((unused)) int b)
 
void set_quality (int *x)
 
void __attribute__ ((naked, noinline))
 *-------------------------------------------------------------------— Mehr ...
 

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 11 der Datei movie_rec.c.

11  {
12  asm volatile(
13  "STMFD SP!, {R2-R8,LR}\n"
14  "LDR R8, =0x3F5\n"
15  "LDR R7, =0x2710\n"
16  "LDR R4, =0x53F8\n"
17  "MOV R6, #0\n"
18  "MOV R5, #1\n"
19  "loc_FF86459C:\n" //done
20  "LDR R0, [R4,#0x18]\n"
21  "MOV R2, #0\n"
22  "ADD R1, SP, #4\n"
23  "BL sub_FF8274FC\n" //done
24  "LDR R2, =0xFF862E34\n" //done
25  "LDR R0, [R4,#0xB0]\n"
26  "MOV R3, R8\n"
27  "MOV R1, R7\n"
28  "BL sub_FF827DF8\n" //checked
29  "LDR R0, [R4,#0x20]\n"
30  "CMP R0, #0\n"
31  "BNE loc_FF86469C\n" //done
32  "LDR R0, [SP,#4]\n"
33  "LDR R1, [R0]\n"
34  "SUB R1, R1, #2\n"
35  "CMP R1, #0xB\n"
36  "ADDLS PC, PC, R1,LSL#2\n"
37  "B loc_FF86469C\n"
38  "loc_FF8645E4:\n" // ; CODE XREF: sub_FF864584+58j
39  "B loc_FF864644\n"
40 
41 "loc_FF8645E8:\n" // ; CODE XREF: sub_FF864584+58j
42  "B loc_FF86465C\n"
43 
44 "loc_FF8645EC:\n" // ; CODE XREF: sub_FF864584+58j
45  "B loc_FF86466C\n"
46 
47 "loc_FF8645F0:\n" // ; CODE XREF: sub_FF864584+58j
48  "B loc_FF864674\n"
49 
50 "loc_FF8645F4:\n" // ; CODE XREF: sub_FF864584+58j
51  "B loc_FF86464C\n"
52 
53 "loc_FF8645F8:\n" // ; CODE XREF: sub_FF864584+58j
54  "B loc_FF86467C\n"
55 
56 "loc_FF8645FC:\n" // ; CODE XREF: sub_FF864584+58j
57  "B loc_FF864654\n"
58 
59 "loc_FF864600:\n" // ; CODE XREF: sub_FF864584+58j
60  "B loc_FF86469C\n"
61 
62 "loc_FF864604:\n" // ; CODE XREF: sub_FF864584+58j
63  "B loc_FF86468C\n"
64 
65 "loc_FF864608:\n" // ; CODE XREF: sub_FF864584+58j
66  "B loc_FF864694\n"
67 
68 "loc_FF86460C:\n" // ; CODE XREF: sub_FF864584+58j
69  "B loc_FF864684\n"
70 
71 "loc_FF864610:\n" // ; CODE XREF: sub_FF864584+58j
72  "B loc_FF864614\n"
73 
74 "loc_FF864614:\n" // ; CODE XREF: sub_FF864584+58j
75 /*
76 ; jumptable FF8645DC entry 11
77  ADR R0, nullsub_265
78  STR R6, [R4,#0x34]
79  STR R0, [R4,#0x9C]
80  LDR R0, =nullsub_264
81  LDR R2, =sub_FF86334C
82  STR R0, [R4,#0xA0]
83  LDR R0, =sub_FF86345C
84  LDR R1, =0x1BA0C
85  STR R6, [R4,#0x24]
86  BL sub_FF83C1F4
87  STR R5, [R4,#0x38]
88  B loc_FF86469C
89 */
90  "LDR R0, =0xFF86422C\n" //done
91  "STR R6, [R4,#0x34]\n"
92  "STR R0, [R4,#0x9C]\n"
93  "LDR R0, =0xFF863348\n" //done
94  "LDR R2, =0xFF86334C\n"
95  "STR R0, [R4,#0xA0]\n"
96  "LDR R0, =0xFF86345C\n" //done
97  "LDR R1, =0x1BA0C\n"
98  "STR R6, [R4,#0x24]\n"
99  "BL sub_FF83C1F4\n" //checked
100  "STR R5, [R4,#0x38]\n"
101  "B loc_FF86469C\n" //done
102 
103 
104 "loc_FF864644:\n" // ; CODE XREF: sub_FF864584+58j
105 // ; sub_FF864584:loc_FF8645E4j
106 //;jumptable FF8645DC entry 0 ; LOCATION: MovieRecorder.c:0
107  "BL sub_FF864354\n"
108  "B loc_FF86469C\n"
109 
110 "loc_FF86464C:\n" // ; CODE XREF: sub_FF864584+58"j\n"
111 // ; sub_FF864584:loc_FF8645F4j
112 //; jumptable FF8645DC entry 4
113  "BL sub_FF863E84_my\n" //--->
114  "B loc_FF86469C\n"
115 
116 "loc_FF864654:\n" // ; CODE XREF: sub_FF864584+58j
117 // ; sub_FF864584:loc_FF8645FCj
118 //; jumptable FF8645DC entry 6
119  "BL sub_FF864A18\n"
120  "B loc_FF86469C\n"
121 
122 "loc_FF86465C:\n" // ; CODE XREF: sub_FF864584+58j
123 // ; sub_FF864584:loc_FF8645E8j
124 //; jumptable FF8645DC entry 1
125  "LDR R0, [R4,#0x38]\n"
126  "CMP R0, #5\n"
127  "STRNE R5, [R4,#0x28]\n"
128  "B loc_FF86469C\n"
129 
130 "loc_FF86466C:\n" // ; CODE XREF: sub_FF864584+58j
131 // ; sub_FF864584:loc_FF8645ECj
132 //; jumptable FF8645DC entry 2 ; LOCATION: MovieRecorder.c:0
133  "BL sub_FF863BCC\n"
134  "B loc_FF86469C\n"
135 
136 "loc_FF864674:\n" // ; CODE XREF: sub_FF864584+58j
137 // ; sub_FF864584:loc_FF8645F0j
138 //; jumptable FF8645DC entry 3 ; LOCATION: MovieRecorder.c:0
139  "BL sub_FF8638C0\n" //__MovieRecorder.c__0
140  "B loc_FF86469C\n"
141 
142 "loc_FF86467C:\n" // ; CODE XREF: sub_FF864584+58j
143  //; sub_FF864584:loc_FF8645F8j
144 //; jumptable FF8645DC entry 5 ; LOCATION: MovieRecorder.c:100
145  "BL sub_FF8632D4\n" //__MovieRecorder.c__100
146  "B loc_FF86469C\n"
147 
148 "loc_FF864684:\n" // ; CODE XREF: sub_FF864584+58j
149 // ; sub_FF864584:loc_FF86460Cj
150 //; jumptable FF8645DC entry 10 ; LOCATION: MovieRecorder.c:100
151  "BL sub_FF864980\n" //__MovieRecorder.c__100
152  "B loc_FF86469C\n"
153 
154 "loc_FF86468C:\n" // ; CODE XREF: sub_FF864584+58j
155 // ; sub_FF864584:loc_FF864604j
156 //; jumptable FF8645DC entry 8 ; LOCATION: MovieRecorder.c:0
157  "BL sub_FF864834\n" //__MovieRecorder.c__0
158  "B loc_FF86469C\n"
159 
160 "loc_FF864694:\n" // ; CODE XREF: sub_FF864584+58j
161  //; sub_FF864584:loc_FF864608j
162 //; jumptable FF8645DC entry 9 ; LOCATION: MovieRecorder.c:0
163  "BL sub_FF8637B0\n" //__MovieRecorder.c__0
164  "STR R5, [R4,#0xD8]\n"
165 
166 "loc_FF86469C:\n" // ; CODE XREF: sub_FF864584+44j
167 // ; sub_FF864584+58j ...
168 //; jumptable FF8645DC default entry
169 //; jumptable FF8645DC entry 7
170  "LDR R1, [SP,#4]\n"
171  "MOV R3, #0x430\n"
172  "STR R6, [R1]\n"
173  "STR R3, [SP]\n"
174  "LDR R3, =0xFF862E34\n" //done
175  "MOV R2, R7\n"
176  "LDR R0, [R4,#0x1C]\n"
177  "BL sub_FF827E50\n" //checked
178  "LDR R0, [R4,#0xB0]\n"
179  "BL sub_FF8279E8\n"
180  "B loc_FF86459C\n"
181 /* LDR R1, [SP,#0x20+var_1C]
182  MOV R3, #0x430
183  STR R6, [R1]
184  STR R3, [SP,#0x20+var_20]
185  ADR R3, aMovierecorder_ ; "MovieRecorder.c"
186  MOV R2, R7
187  LDR R0, [R4,#0x1C]
188  BL sub_FF827E50
189  LDR R0, [R4,#0xB0]
190  BL eventproc_export_GiveSemaphore ; LOCATION: KerSem.c:0
191  B loc_FF86459C
192 ; End of function sub_FF864584
193 */
194 
195  /*
196  "loc_FF8645E4:\n" //done
197  "B loc_FF864644\n"
198  "loc_FF8645E8:\n" //done
199  "B loc_FF86465C\n"
200  "loc_FF8645EC:\n" //done
201  "B loc_FF86466C\n"
202  "loc_FF8645F0:\n" //done
203  "B loc_FF864674\n"
204  "loc_FF8645F4:\n" //done
205  "B loc_FF86464C\n"
206  "loc_FF8645FC:\n" //done
207  "B loc_FF86467C\n"
208  "loc_FF864600:\n" //done
209  "B loc_FF864654\n"
210  "loc_FF864604:\n" //done
211  "B loc_FF86469C\n"
212  "loc_FF864608:\n" //done
213  "B loc_FF864694\n"
214  "loc_FF86460C:\n" //done
215  "B loc_FF86469C\n"
216  "loc_FF864610:\n" //done
217  "B loc_FF86468C\n"
218  "loc_FF864614:\n" //done
219  "B loc_FF86461C\n"
220  "loc_FF864618:\n" //done
221  "LDR R0, =0xFF864234\n"
222  "STR R6, [R4,#0x34]\n"
223  "STR R0, [R4,#0x9C]\n"
224  "LDR R0, =0xFF863350\n"
225  "LDR R2, =0xFF863354\n"
226  "STR R0, [R4,#0xA0]\n"
227  "LDR R0, =0xFF863464\n"
228  "LDR R1, =0x1BA0C\n"
229  "STR R6, [R4,#0x24]\n"
230  "BL sub_FF83C1F4\n"
231  "STR R5, [R4,#0x38]\n"
232  "B loc_FF8646A4\n"
233  "loc_FF86464C:\n"
234  "BL sub_FF86435C\n"
235  "B loc_FF8646A4\n"
236  "loc_FF864654:\n"
237  "BL sub_FF863E8C_my\n" //--------------->
238  "B loc_FF8646A4\n"
239  "loc_FF86465C:\n"
240  "BL sub_FF864A20\n"
241  "B loc_FF8646A4\n"
242  "loc_FF864664:\n"
243  "LDR R0, [R4,#0x38]\n"
244  "CMP R0, #5\n"
245  "STRNE R5, [R4,#0x28]\n"
246  "B loc_FF8646A4\n"
247  "loc_FF864674:\n"
248  "BL sub_FF863BD4\n"
249  "B loc_FF8646A4\n"
250  "loc_FF86467C:\n"
251  "BL sub_FF8638C8\n"
252  "B loc_FF8646A4\n"
253  "loc_FF864684:\n"
254  "BL sub_FF8632DC\n"
255  "B loc_FF8646A4\n"
256  "loc_FF86468C:\n"
257  "BL sub_FF864988\n"
258  "B loc_FF8646A4\n"
259  "loc_FF864694:\n"
260  "BL sub_FF86483C\n"
261  "B loc_FF8646A4\n"
262  "loc_FF86469C:\n"
263  "BL sub_FF8637B8\n"
264  "STR R5, [R4,#0xD8]\n"
265  "loc_FF8646A4:\n"
266  "LDR R1, [SP,#4]\n"
267  "MOV R3, #0x430\n"
268  "STR R6, [R1]\n"
269  "STR R3, [SP]\n"
270  "LDR R3, =0xFF862E3C\n"
271  "MOV R2, R7\n"
272  "LDR R0, [R4,#0x1C]\n"
273  "BL sub_FF827E50\n"
274  "LDR R0, [R4,#0xB0]\n"
275  "BL sub_FF8279E8\n"
276  "B loc_FF8645A4\n"
277  */
278  );
279 }
void change_video_tables ( __attribute__((unused)) int  a,
__attribute__((unused)) int  b 
)

Definiert in Zeile 3 der Datei movie_rec.c.

3 {}
void set_quality ( int *  x)

Definiert in Zeile 6 der Datei movie_rec.c.

6  { // -17 highest; +12 lowest
7  if (conf.video_mode) *x=12-((conf.video_quality-1)*(12+17)/(99-1));
8 }