CHDK_DE Vorschauversion  Trunk Rev. 5428
 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))
 

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)  )

!!

Definiert in Zeile 18 der Datei movie_rec.c.

18  {
19  asm volatile(
20  "STMFD SP!, {R4,LR}\n"
21  "SUB SP, SP, #4\n"
22  "MOV R4, SP\n"
23  "B sub_FFD2A3DC\n"
24  "sub_FFD2A338:\n"
25  "LDR R3, =0x646E8\n"
26  "LDR R2, [R3]\n"
27  "CMP R2, #0\n"
28  "BNE sub_FFD2A3C8\n"
29  "SUB R3, R12, #2\n"
30  "CMP R3, #9\n"
31  "LDRLS PC, [PC,R3,LSL#2]\n"
32  "B sub_FFD2A3C8\n"
33  ".long sub_FFD2A388\n"
34  ".long sub_FFD2A3A0\n"
35  ".long sub_FFD2A3A8\n"
36  ".long sub_FFD2A3B0\n"
37  ".long sub_FFD2A390\n"
38  ".long sub_FFD2A3B8\n"
39  ".long sub_FFD2A398\n"
40  ".long sub_FFD2A3C8\n"
41  ".long sub_FFD2A3C0\n"
42  ".long sub_FFD2A380\n"
43  "sub_FFD2A380:\n"
44  "BL sub_FFD2A474\n"
45  "B sub_FFD2A3C4\n"
46  "sub_FFD2A388:\n"
47  "BL unlock_optical_zoom\n"
48  "BL sub_FFD2A628\n"
49  "B sub_FFD2A3C4\n"
50  "sub_FFD2A390:\n"
51  // "BL sub_FFD2A9FC\n"
52  "BL sub_FFD2A9FC_my\n"//--------------->
53  "B sub_FFD2A3C4\n"
54  "sub_FFD2A398:\n"
55  "BL sub_FFD2AE30\n"
56  "B sub_FFD2A3C4\n"
57  "sub_FFD2A3A0:\n"
58  "BL sub_FFD2AC94\n"
59  "B sub_FFD2A3C4\n"
60  "sub_FFD2A3A8:\n"
61  "BL sub_FFD2AFA0\n"
62  "B sub_FFD2A3C4\n"
63  "sub_FFD2A3B0:\n"
64  "BL sub_FFD2B164\n"
65  "B sub_FFD2A3C4\n"
66  "sub_FFD2A3B8:\n"
67  "BL sub_FFD2AEB8\n"
68  "B sub_FFD2A3C4\n"
69  "sub_FFD2A3C0:\n"
70  "BL sub_FFD2ACE4\n"
71  "sub_FFD2A3C4:\n"
72  "LDR R1, [SP,#0xC-0xC]\n"
73  "sub_FFD2A3C8:\n"
74  "LDR R3, =0x6461C\n"
75  "MOV R2, #0\n"
76  "STR R2, [R1]\n"
77  "LDR R0, [R3]\n"
78  "BL sub_FFC104D8\n"
79  "sub_FFD2A3DC:\n"
80  "LDR R3, =0x64618\n"
81  "MOV R1, R4\n"
82  "LDR R0, [R3]\n"
83  "MOV R2, #0\n"
84  "BL sub_FFC100C0\n"
85  "LDR R0, [SP,#0xC-0xC]\n"
86  "LDR R12, [R0]\n"
87  "CMP R12, #0xC\n"
88  "MOV R1, R0\n"
89  "BNE sub_FFD2A338\n"
90  "LDR R3, =0x64614\n"
91  "LDR R0, [R3]\n"
92  "BL sub_FFC10E54\n"
93  "BL sub_FFC1161C\n"
94  "ADD SP, SP, #4\n"
95  "LDMFD SP!, {R4,PC}\n"
96  );
97 }
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.