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

gehe zum Quellcode dieser Datei

Funktionen

char * hook_raw_image_addr ()
 
void * vid_get_bitmap_fb ()
 
void * vid_get_viewport_fb ()
 
void * vid_get_viewport_fb_d ()
 
int _GetVRAMHPixelsSize ()
 
int _GetVRAMVPixelsSize ()
 
int vid_get_viewport_width_proper ()
 
int vid_get_viewport_width ()
 
int vid_get_viewport_height_proper ()
 
long vid_get_viewport_height ()
 
void * vid_get_viewport_live_fb ()
 
char * camera_jpeg_count_str ()
 
int vid_get_palette_type ()
 
int vid_get_palette_size ()
 
void * vid_get_bitmap_active_palette ()
 
void * vid_get_bitmap_active_buffer ()
 
int vid_get_viewport_fullscreen_height ()
 
int vid_get_viewport_fullscreen_width ()
 
int vid_get_viewport_display_xoffset ()
 
int vid_get_viewport_display_yoffset ()
 

Dokumentation der Funktionen

int _GetVRAMHPixelsSize ( )
int _GetVRAMVPixelsSize ( )
char* camera_jpeg_count_str ( )

Definiert in Zeile 164 der Datei lib.c.

165 {
166  return (char*)0x6E8D0 ; // from 700 added orig. 0x78688
167 }
char* hook_raw_image_addr ( void  )

Definiert in Zeile 4 der Datei lib.c.

5 {
6  return (char*)0x105B8AC0; // OK (find on ".crw")
7 
8 }
void* vid_get_bitmap_active_buffer ( )

Definiert in Zeile 177 der Datei lib.c.

178 {
179  return (void*)(*(int*)0x5ED0); // FFD23420 DisplayPhysicalScreenWithYUVPalette
180 }
void* vid_get_bitmap_active_palette ( )

Definiert in Zeile 173 der Datei lib.c.

173  {
174  return (void *)0x634E0; // GetPaletteFromPhysicalScreen
175 }
void* vid_get_bitmap_fb ( )

Definiert in Zeile 41 der Datei lib.c.

42 {
43  return (void*)0x103C79A0; // OK (find in _CreatePhysicalVram)
44 }
int vid_get_palette_size ( )

Definiert in Zeile 171 der Datei lib.c.

171 { return 16*4; }
int vid_get_palette_type ( )

Definiert in Zeile 170 der Datei lib.c.

170 { return 1; }
int vid_get_viewport_display_xoffset ( )

Definiert in Zeile 207 der Datei lib.c.

207  {
208  int m = mode_get();
209  if((m&MODE_MASK) == MODE_PLAY) {
210  return 0;
211  } else if((m&MODE_SHOOTING_MASK) == MODE_STITCH) {
212  short dir=0;
213  short seq=0;
216  // overall stitch window is 3/4 screen width, centered
217  // live part is 1/2, so margin is either 1/8th or 3/8th
218  if(dir==0) {
219  return seq?132:44;
220  } else {
221  return seq?44:132;
222  }
223 #ifdef FAKE_ASPECT
224  } else if((m&MODE_SHOOTING_MASK) == MODE_PORTRAIT) {
225  return 44;
226 #endif
227  }
228  return 0;
229 }
int vid_get_viewport_display_yoffset ( )

Definiert in Zeile 241 der Datei lib.c.

241  {
242  int m = mode_get();
243  if((m&MODE_MASK) == MODE_PLAY) {
244  return 0;
245  }
246 #ifdef FAKE_ASPECT
248  return 30;
249  }
250 #endif
251  return ((m&MODE_SHOOTING_MASK) == MODE_STITCH)?60:0; // window is 120, centered in 240 screen
252 }
void* vid_get_viewport_fb ( )

Definiert in Zeile 46 der Datei lib.c.

47 {
48  return (void*)0x105F17A0; // OK (find on "VRAM Address : %p")
49 }
void* vid_get_viewport_fb_d ( )

Definiert in Zeile 51 der Datei lib.c.

52 {
53 // from ewavr
54  int x=(*(int*)0x63AD0); // found in sub_FFD25770
55  return (void *)x;
56 // if we start camera in PB mode with movie on display, this pointer will be NULL
57 // _fb isn't valid data, but at least it doesn't crash
58 // return (void*) (x ? (void *)x : vid_get_viewport_fb()) ;
59 }
int vid_get_viewport_fullscreen_height ( )

Definiert in Zeile 182 der Datei lib.c.

182  {
183  // except for stitch, always full screen
184  int m = mode_get();
186 #ifdef FAKE_ASPECT
187  || (m&MODE_SHOOTING_MASK) == MODE_LANDSCAPE
188 #endif
189  )) {
190  return 240;
191  }
193 }
int vid_get_viewport_fullscreen_width ( )

Definiert in Zeile 194 der Datei lib.c.

194  {
195  // except for stitch, always full screen
196  int m = mode_get();
198 #ifdef FAKE_ASPECT
199  || (m&MODE_SHOOTING_MASK) == MODE_PORTRAIT
200 #endif
201  )) {
202  return 704;
203  }
205 }
long vid_get_viewport_height ( )

Definiert in Zeile 110 der Datei lib.c.

110  {
112 }
int vid_get_viewport_height_proper ( )

Definiert in Zeile 91 der Datei lib.c.

91  {
92  int m = mode_get();
93  // TODO not correct if TV out connected
94  if((m&MODE_MASK) == MODE_PLAY) {
95  return 240;
96  }
97 #ifdef FAKE_ASPECT
98  // fake 16:9 mode
100  return 180;
101  }
102 #endif
103  // return hard coded width since mode doesn't update at the same time as GetVRAMHPixelsSize
104  if((m&MODE_SHOOTING_MASK) == MODE_STITCH) {
105  return 120;
106  }
107  return _GetVRAMVPixelsSize();
108 }
void* vid_get_viewport_live_fb ( )

Definiert in Zeile 150 der Datei lib.c.

151 {
152  void **fb=(void **)0x5288;
153  unsigned char buff = *((unsigned char*)0x5298);
154  if (buff == 0) {
155  buff = 2;
156  }
157  else {
158  buff--;
159  }
160  return fb[buff];
161 }
int vid_get_viewport_width ( )

Definiert in Zeile 87 der Datei lib.c.

87  {
89 }
int vid_get_viewport_width_proper ( )

Definiert in Zeile 69 der Datei lib.c.

69  {
70  int m = mode_get();
71  if((m&MODE_MASK) == MODE_PLAY) {
72  return 704;
73  }
74 #ifdef FAKE_ASPECT
75  // fake 1:1 mode
77  return 528;
78  }
79 #endif
80  // return hard coded width since mode doesn't update at the same time as GetVRAMHPixelsSize
81  if((m&MODE_SHOOTING_MASK) == MODE_STITCH) {
82  return 352;
83  }
84  return _GetVRAMHPixelsSize();
85 }