CHDK_DE Vorschauversion  Trunk Rev. 5426
 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 (int a, int b)
 
void __attribute__ ((naked, noinline))
 *-------------------------------------------------------------------— Mehr ...
 

Variablen

int * video_quality = &conf.video_quality
 
int * video_mode = &conf.video_mode
 
long def_table [68]
 
long table [68]
 
long CompressionRateTable [] = {0x60, 0x5D, 0x5A, 0x57, 0x54, 0x51, 0x4D, 0x48, 0x42, 0x3B, 0x32, 0x29, 0x22, 0x1D, 0x17, 0x14, 0x10, 0xE, 0xB, 9, 7, 6, 5, 4, 3, 2, 1}
 

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

28 {
29  asm volatile (
30  "STMFD SP!, {R2-R8,LR}\n"
31  "LDR R8, =0x32B\n"
32  "LDR R7, =0x2710\n"
33  "LDR R4, =0x5368\n"
34  "MOV R6, #0\n"
35  "MOV R5, #1\n"
36 
37  "loc_FF859E10:\n"
38  "LDR R0, [R4,#0x1C]\n"
39  "MOV R2, #0\n"
40  "ADD R1, SP, #0x20-0x1C\n"
41  "BL sub_FF827D8C\n" // LOCATION: KerQueue.c:0
42  "LDR R0, [R4,#0x24]\n"
43  "CMP R0, #0\n"
44  "BNE loc_FF859EE0\n"
45  "LDR R0, [SP,#0x20-0x1C]\n"
46  "LDR R1, [R0]\n"
47  "SUB R1, R1, #2\n"
48  "CMP R1, #9\n"
49  "ADDLS PC, PC, R1,LSL#2\n"
50  "B loc_FF859EE0\n"
51 
52  "loc_FF859E44:\n"
53  "B loc_FF859E94\n"
54 
55  "loc_FF859E48:\n"
56  "B loc_FF859EB4\n"
57 
58  "loc_FF859E4C:\n"
59  "B loc_FF859EC4\n"
60 
61  "loc_FF859E50:\n"
62  "B loc_FF859ECC\n"
63 
64  "loc_FF859E54:\n"
65  "B loc_FF859E9C\n"
66 
67  "loc_FF859E58:\n"
68  "B loc_FF859ED4\n"
69 
70  "loc_FF859E5C:\n"
71  "B loc_FF859EA4\n"
72 
73  "loc_FF859E60:\n"
74  "B loc_FF859EE0\n"
75 
76  "loc_FF859E64:\n"
77  "B loc_FF859EDC\n"
78 
79  "loc_FF859E68:\n"
80  "B loc_FF859E6C\n"
81 
82  "loc_FF859E6C:\n"
83  // jumptable FF859E6C entry 9
84  "STR R6, [R4,#0x38]\n"
85  "LDR R0, =0xFF859ACC\n" // nullsub_234
86  "LDR R2, =0xFF8593FC\n"
87  "LDR R1, =0x199A8\n"
88  "STR R0, [R4,#0xA4]\n"
89  "LDR R0, =0xFF8594E0\n"
90  "STR R6, [R4,#0x28]\n"
91  "BL sub_FF8C5EB8\n"
92  "STR R5, [R4,#0x3C]\n"
93  "B loc_FF859EE0\n"
94 
95  "loc_FF859E94:\n"
96  // jumptable FF859E6C entry 0
97  "BL unlock_optical_zoom\n" //------------->
98  "BL sub_FF859BC4\n" // LOCATION: MovieRecorder.c:0
99  "B loc_FF859EE0\n"
100 
101  "loc_FF859E9C:\n"
102  // jumptable FF859E6C entry 4
103  "BL sub_FF859890_my\n" //------------->
104  "B loc_FF859EE0\n"
105 
106  "loc_FF859EA4:\n"
107  // jumptable FF859E6C entry 6
108  "LDR R1, [R0,#0x10]\n"
109  "LDR R0, [R0,#4]\n"
110  "BL sub_FF9364A4\n" // LOCATION: AviWriter.c:0
111  "B loc_FF859EE0\n"
112 
113  "loc_FF859EB4:\n"
114  // jumptable FF859E6C entry 1
115  "LDR R0, [R4,#0x3C]\n"
116  "CMP R0, #5\n"
117  "STRNE R5, [R4,#0x2C]\n"
118  "B loc_FF859EE0\n"
119 
120  "loc_FF859EC4:\n"
121  // jumptable FF859E6C entry 2
122  "BL sub_FF859694\n" // LOCATION: MovieRecorder.c:1000
123  "B loc_FF859EE0\n"
124 
125  "loc_FF859ECC:\n"
126  // jumptable FF859E6C entry 3
127  "BL sub_FF85952C\n"
128  "B loc_FF859EE0\n"
129 
130  "loc_FF859ED4:\n"
131  // jumptable FF859E6C entry 5
132  "BL sub_FF859388\n" // LOCATION: MovieRecorder.c:100
133  "B loc_FF859EE0\n"
134 
135  "loc_FF859EDC:\n"
136  // jumptable FF859E6C entry 8
137  "BL sub_FF85A048\n" // LOCATION: MovieRecorder.c:100
138 
139  "loc_FF859EE0:\n"
140  // jumptable FF859E6C default entry
141  // jumptable FF859E6C entry 7
142  "LDR R1, [SP,#0x20-0x1C]\n"
143  "LDR R3, =0xFF85918C\n" // aMovierecorder_ ; "MovieRecorder.c"
144  "STR R6, [R1]\n"
145  "STR R8, [SP,#0x20-0x20]\n"
146  "LDR R0, [R4,#0x20]\n"
147  "MOV R2, R7\n"
148  "BL sub_FF81BC30\n"
149  "B loc_FF859E10\n"
150  );
151 }
void change_video_tables ( int  a,
int  b 
)

Definiert in Zeile 16 der Datei movie_rec.c.

16  {
17  int i;
18 
19  for (i=0;i<68;i++) {
20  table[i]=(def_table[i]*a)/b;
21  }
22 }

Variablen-Dokumentation

long CompressionRateTable[] = {0x60, 0x5D, 0x5A, 0x57, 0x54, 0x51, 0x4D, 0x48, 0x42, 0x3B, 0x32, 0x29, 0x22, 0x1D, 0x17, 0x14, 0x10, 0xE, 0xB, 9, 7, 6, 5, 4, 3, 2, 1}

Definiert in Zeile 24 der Datei movie_rec.c.

long def_table[68]
Initialisierung:
= {
0x2000, 0x38D, 0x788, 0xBE1, 0x10CB, 0x1642, 0x1C48, 0x22F9, 0x2A79, 0x32AA, 0x3C01, 0x4637,
0x5190, 0x5E0E, 0x5800, 0x9C5, 0x14B8, 0x20C9, 0x2E31, 0x3D39, 0x4DC9, 0x6030, 0x74D1, 0x8B8D,
0xA509, 0xC160, 0xE054, 0x102AF, 0x10000, 0x1C6A, 0x3C45, 0x5F60, 0x8661, 0xB21A, 0xE249, 0x117D2,
0x153D5, 0x195F8, 0x1E01C, 0x2328E, 0x28C99, 0x2F08B, 0x8000, 0xE35, 0x1E23, 0x2FB0, 0x4331, 0x590D,
0x7125, 0x8BE9, 0xA9EB, 0xCAFC, 0xF00E, 0x11947, 0x1464D, 0x17846, 0x1CCD, -0x2E1, -0x579, 0x4F33,
-0x7EB, -0xF0C, 0xE666, -0x170A, -0x2BC6, 0x7333, -0xB85, -0x15E3}

Definiert in Zeile 6 der Datei movie_rec.c.

long table[68]

Definiert in Zeile 14 der Datei movie_rec.c.

int* video_mode = &conf.video_mode

Definiert in Zeile 4 der Datei movie_rec.c.

int* video_quality = &conf.video_quality

Definiert in Zeile 3 der Datei movie_rec.c.