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

*-------------------------------------------------------------------—

!!

Definiert in Zeile 17 der Datei movie_rec.c.

17  {
18  asm volatile (
19  "STMFD SP!, {R2-R8,LR}\n"
20  "LDR R8, =0x4B2\n"
21  "LDR R7, =0x2710\n"
22  "LDR R4, =0x69D8\n"
23  "MOV R6, #0\n"
24  "MOV R5, #1\n"
25  "loc_FF96BD48:\n"
26  "LDR R0, [R4,#0x1C]\n"
27  "MOV R2, #0\n"
28  "ADD R1, SP, #4\n"
29  "BL sub_FF83994C\n" // LOCATION: KerQueue.c:0
30  "LDR R0, [R4,#0x24]\n"
31  "CMP R0, #0\n"
32  "BNE loc_FF96BE24\n"
33  "LDR R0, [SP,#4]\n"
34  "LDR R1, [R0]\n"
35  "SUB R1, R1, #2\n"
36  "CMP R1, #9\n"
37  "ADDLS PC, PC, R1,LSL#2\n"
38  "B loc_FF96BE24\n"
39  "loc_FF96BD7C:\n"
40  "B loc_FF96BDD4\n"
41  "loc_FF96BD80:\n"
42  "B loc_FF96BDF8\n"
43  "loc_FF96BD84:\n"
44  "B loc_FF96BE08\n"
45  "loc_FF96BD88:\n"
46  "B loc_FF96BE10\n"
47  "loc_FF96BD8C:\n"
48  "B loc_FF96BDDC\n"
49  "loc_FF96BD90:\n"
50  "B loc_FF96BE18\n"
51  "loc_FF96BD94:\n"
52  "B loc_FF96BDE8\n"
53  "loc_FF96BD98:\n"
54  "B loc_FF96BE24\n"
55  "loc_FF96BD9C:\n"
56  "B loc_FF96BE20\n"
57  "loc_FF96BDA0:\n"
58  "B loc_FF96BDA4\n"
59  "loc_FF96BDA4:\n" // jumptable FF96BD74 entry 9
60  "LDR R0, =0xFF96B414\n"
61  "STR R6, [R4,#0x38]\n"
62  "STR R0, [R4,#0xA8]\n"
63  //"ADR R0, =0xFF96BA00\n"
64  //"LDR R0, =0xFF96BA00\n" // compiler does not like ADR
65  "LDR R0, =sub_FF96BA00_my\n" // +
66  "STR R0, [R4,#0xAC]\n"
67  "LDR R0, =0xFF96AD2C\n"
68  "LDR R2, =0xFF96AC48\n"
69  "LDR R1, =0x983CC\n"
70  "STR R6, [R4,#0x28]\n"
71  "BL sub_FF8511CC\n"
72  "STR R5, [R4,#0x3C]\n"
73  "B loc_FF96BE24\n"
74  "loc_FF96BDD4:\n" // jumptable FF96BD74 entry 0
75  //"BL unlock_optical_zoom\n" // not needed because canon firmware allow zoom
76  "BL sub_FF96B83C\n" // MovieRecorder.c
77  "B loc_FF96BE24\n"
78  "loc_FF96BDDC:\n" // jumptable FF96BD74 entry 4
79  "LDR R1, [R4,#0xAC]\n"
80  "BLX R1\n"
81  "B loc_FF96BE24\n"
82  "loc_FF96BDE8:\n" // jumptable FF96BD74 entry 6
83  "LDR R1, [R0,#0x18]\n"
84  "LDR R0, [R0,#4]\n"
85  "BL sub_FFAB0524\n" // LOCATION: MovWriter.c:0
86  "B loc_FF96BE24\n"
87  "loc_FF96BDF8:\n" // jumptable FF96BD74 entry 1
88  "LDR R0, [R4,#0x3C]\n"
89  "CMP R0, #5\n"
90  "STRNE R5, [R4,#0x2C]\n"
91  "B loc_FF96BE24\n"
92  "loc_FF96BE08:\n" // jumptable FF96BD74 entry 2
93  "BL sub_FF96B0EC\n" // MovieRecorder.c 1000
94  "B loc_FF96BE24\n"
95  "loc_FF96BE10:\n" // jumptable FF96BD74 entry 3
96  "BL sub_FF96AD78\n" // MovieRecorder.c 0\n"
97  "B loc_FF96BE24\n"
98  "loc_FF96BE18:\n" // jumptable FF96BD74 entry 5
99  "BL sub_FF96ABD4\n" // MovieRecorder.c 100
100  "B loc_FF96BE24\n"
101  "loc_FF96BE20:\n" // jumptable FF96BD74 entry 8
102  "BL sub_FF96BF8C\n" // MovieRecorder.c 100
103  "loc_FF96BE24:\n" // jumptable FF96BD74 default entry, jumptable FF96BD74 entry 7
104  "LDR R1, [SP,#4]\n"
105  "LDR R3, =0xFF96AA5C\n" // "MovieRecorder.c"
106  "STR R6, [R1]\n"
107  "STR R8, [SP]\n"
108  "LDR R0, [R4,#0x20]\n"
109  "MOV R2, R7\n"
110  "BL sub_FF83A2A0\n"
111  "B loc_FF96BD48\n"
112  );
113 }
void change_video_tables ( __attribute__((unused)) int  a,
__attribute__((unused)) int  b 
)

Definiert in Zeile 6 der Datei movie_rec.c.

6  {
7  //int i;
8  //for (i=0;i<24;i++) table[i]=(def_table[i]*a)/b;
9 }
void set_quality ( int *  x)

Definiert in Zeile 12 der Datei movie_rec.c.

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