CHDK_DE Vorschauversion  Trunk Rev. 5249
 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_table1 [9] ={0x2000,0x38D,0x788,0x5800,0x9C5,0x14B8,0x10000,0x1C6A,0x3C45}
 
long def_table2 [9] ={0x1CCD,-0x2E1,-0x579,0x4F33,-0x7EB,-0xF0C,0xE666,-0x170A,-0x2BC6}
 
long table1 [9]
 
long table2 [9]
 
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

__MovieRecorder_c__100

__MovieRecorder_c__100

Definiert in Zeile 19 der Datei movie_rec.c.

19  { // sub_FF949728
20 asm volatile (
21  " STMFD SP!, {R4,LR} \n"
22  " SUB SP, SP, #4 \n"
23  " MOV R4, SP \n"
24  " B loc_FF9497E8 \n"
25 "loc_FF949738:\n"
26  " LDR R3, =0x740C0 \n"
27  " LDR R2, [R3] \n"
28  " CMP R2, #0 \n"
29  " BNE loc_FF9497D4 \n"
30  " SUB R3, R12, #1 \n"
31  " CMP R3, #0xA \n"
32  " LDRLS PC, [PC, R3, LSL #2] \n"
33  " B loc_FF9497D4 \n"
34  " .long loc_FF949784 \n"
35  " .long loc_FF94978C \n"
36  " .long loc_FF9497A4 \n"
37  " .long loc_FF9497AC \n"
38  " .long loc_FF9497B4 \n"
39  " .long loc_FF949794 \n"
40  " .long loc_FF9497BC \n"
41  " .long loc_FF94979C \n"
42  " .long loc_FF9497D4 \n"
43  " .long loc_FF9497CC \n"
44  " .long loc_FF9497C4 \n"
45 "loc_FF949784:\n"
46  " BL sub_FF949868 \n"
47  " B loc_FF9497D0 \n"
48 "loc_FF94978C:\n"
49  " BL unlock_optical_zoom\n" // +
50  " BL sub_FF949A9C \n"
51  " B loc_FF9497D0 \n"
52 "loc_FF949794:\n"
53  " BL sub_FF949F54_my \n" // ->
54  " B loc_FF9497D0 \n"
55 "loc_FF94979C:\n"
56  " BL sub_FF94A3A8 \n"
57  " B loc_FF9497D0 \n"
58 "loc_FF9497A4:\n"
59  " BL sub_FF94A1CC \n"
60  " B loc_FF9497D0 \n"
61 "loc_FF9497AC:\n"
62  " BL sub_FF94A5B4 \n"
63  " B loc_FF9497D0 \n"
64 "loc_FF9497B4:\n"
65  " BL sub_FF94A7CC \n"
66  " B loc_FF9497D0 \n"
67 "loc_FF9497BC:\n"
68  " BL sub_FF94A468 \n"
69  " B loc_FF9497D0 \n"
70 "loc_FF9497C4:\n"
71  " BL sub_FF94A548 \n"
72  " B loc_FF9497D0 \n"
73 "loc_FF9497CC:\n"
74  " BL sub_FF94A21C \n"
75 "loc_FF9497D0:\n"
76  " LDR R1, [SP] \n"
77 "loc_FF9497D4:\n"
78  " LDR R3, =0x73FF0 \n"
79  " MOV R2, #0 \n"
80  " STR R2, [R1] \n"
81  " LDR R0, [R3] \n"
82  " BL sub_FF8207A4 \n"
83 "loc_FF9497E8:\n"
84  " LDR R3, =0x73FEC \n"
85  " MOV R1, R4 \n"
86  " LDR R0, [R3] \n"
87  " MOV R2, #0 \n"
88  " BL sub_FF82038C \n"
89  " LDR R0, [SP] \n"
90  " LDR R12, [R0] \n"
91  " CMP R12, #0xC \n"
92  " MOV R1, R0 \n"
93  " BNE loc_FF949738 \n"
94  " LDR R3, =0x73FE4 \n"
95  " LDR R0, [R3] \n"
96  " BL sub_FF821160 \n"
97  " BL sub_FF821928 \n"
98  " ADD SP, SP, #4 \n"
99  " LDMFD SP!, {R4,PC} \n"
100  );
101 }
void change_video_tables ( int  a,
int  b 
)

Definiert in Zeile 11 der Datei movie_rec.c.

11  {
12  int i;
13  for (i=0;i<9;i++) {table1[i]=(def_table1[i]*a)/b; table2[i]=(def_table2[i]*a)/b;}
14 }

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

long def_table1[9] ={0x2000,0x38D,0x788,0x5800,0x9C5,0x14B8,0x10000,0x1C6A,0x3C45}

Definiert in Zeile 6 der Datei movie_rec.c.

long def_table2[9] ={0x1CCD,-0x2E1,-0x579,0x4F33,-0x7EB,-0xF0C,0xE666,-0x170A,-0x2BC6}

Definiert in Zeile 7 der Datei movie_rec.c.

long table1[9]

Definiert in Zeile 9 der Datei movie_rec.c.

long table2[9]

Definiert in Zeile 9 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.