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

gehe zum Quellcode dieser Datei

Makrodefinitionen

#define LED_PR   0xC0220120
 

Funktionen

char * hook_raw_image_addr ()
 
int _GetBatteryTemperature ()
 
char * camera_jpeg_count_str ()
 
void shutdown ()
 
void debug_led (int state)
 
void camera_set_led (int led, int state, __attribute__((unused)) int bright)
 
int get_flash_params_count (void)
 
void JogDial_CW (void)
 
void JogDial_CCW (void)
 
int vid_get_viewport_width ()
 
long vid_get_viewport_height ()
 
int vid_get_viewport_xoffset ()
 
void * vid_get_viewport_fb ()
 
void * vid_get_viewport_live_fb ()
 
void * vid_get_viewport_fb_d ()
 
void * vid_get_bitmap_fb ()
 
void vid_bitmap_refresh ()
 
void * vid_get_bitmap_active_palette ()
 
void * vid_get_bitmap_active_buffer ()
 
int vid_get_palette_type ()
 
int vid_get_palette_size ()
 

Variablen

char active_viewport_buffer
 
void * viewport_buffers []
 
int active_bitmap_buffer
 
char * bitmap_buffer []
 

Makro-Dokumentation

#define LED_PR   0xC0220120

Definiert in Zeile 24 der Datei lib.c.

Dokumentation der Funktionen

int _GetBatteryTemperature ( )

Definiert in Zeile 10 der Datei lib.c.

10 { return -99;}
char* camera_jpeg_count_str ( )

Definiert in Zeile 12 der Datei lib.c.

13 {
14  extern char jpeg_count_str[];
15  return jpeg_count_str;
16 }
void camera_set_led ( int  led,
int  state,
__attribute__((unused)) int  bright 
)

Definiert in Zeile 35 der Datei lib.c.

35  {
36  static char led_table[2]={0,4};
37  if(state<=1) _LEDDrive(led_table[led%sizeof(led_table)], (!state)&1);
38 }
void debug_led ( int  state)

Definiert in Zeile 25 der Datei lib.c.

26 {
27  // using power LED, which defaults to on
28  // for debugging turn LED off if state is 1 and on for state = 0
29  *(int*)LED_PR=state ? 0x46 : 0x44;
30 }
int get_flash_params_count ( void  )

Definiert in Zeile 40 der Datei lib.c.

41 {
42  return 0xA6;
43 }
char* hook_raw_image_addr ( void  )

Definiert in Zeile 5 der Datei lib.c.

5  {
6  return (char*) 0x420F6420; //Found @0xffb5a2f4 search for "BJPEG BUFF"
7 }
void JogDial_CCW ( void  )

Definiert in Zeile 50 der Datei lib.c.

51 {
52  _PostLogicalEventToUI(0x873, 1); // RotateJogDialLeft (in table @ ffc1b2a4, fw 1.00a)
53 }
void JogDial_CW ( void  )

Definiert in Zeile 45 der Datei lib.c.

46 {
47  _PostLogicalEventToUI(0x872, 1); // RotateJogDialRight (in table @ ffc1b298, fw 1.00a)
48 }
void shutdown ( )

Definiert in Zeile 18 der Datei lib.c.

19 {
20  extern void __attribute__((noreturn)) _finish_shutdown(void);
21  _finish_shutdown();
22 }
void vid_bitmap_refresh ( )

Definiert in Zeile 137 der Datei lib.c.

138 {
139  extern int full_screen_refresh;
140  extern void _ScreenLock();
141  extern void _ScreenUnlock();
142 
143  full_screen_refresh |= 3;
144  _ScreenLock();
145  _ScreenUnlock();
146 }
void* vid_get_bitmap_active_buffer ( )

Definiert in Zeile 164 der Datei lib.c.

165 {
167 }
void* vid_get_bitmap_active_palette ( )

Definiert in Zeile 148 der Datei lib.c.

149 {
150  extern int active_palette_buffer;
151  extern int** palette_buffer_ptr;
152  int *p = palette_buffer_ptr[active_palette_buffer];
153  // active_palette_buffer can point at null when
154  // func and menu are opened for the first time
155  if(!p) {
156  p = palette_buffer_ptr[0];
157  if(!p) {
158  return (void *)0;
159  }
160  }
161  return (p+1);
162 }
void* vid_get_bitmap_fb ( )

OSD screen

Definiert in Zeile 130 der Datei lib.c.

131 {
132  // Return first bitmap buffer address
133  return bitmap_buffer[0];
134 }
int vid_get_palette_size ( )

Definiert in Zeile 205 der Datei lib.c.

205 { return 256 * 4; }
int vid_get_palette_type ( )

Definiert in Zeile 204 der Datei lib.c.

204 { return 3; }
void* vid_get_viewport_fb ( )

IMG viewport in 'rec' mode

Definiert in Zeile 98 der Datei lib.c.

99 {
100  // Return first viewport buffer - for case when vid_get_viewport_live_fb not defined
101  return viewport_buffers[0];
102 }
void* vid_get_viewport_fb_d ( )

IMG viewport in 'play' mode

Definiert in Zeile 120 der Datei lib.c.

121 {
122  extern char *viewport_fb_d;
123  return viewport_fb_d;
124 }
long vid_get_viewport_height ( )

Definiert in Zeile 65 der Datei lib.c.

66 {
68  {
69  return 240;
70  }
71  extern int _GetVRAMVPixelsSize();
72  return _GetVRAMVPixelsSize();
73 
74 }
void* vid_get_viewport_live_fb ( )

Definiert in Zeile 104 der Datei lib.c.

105 {
106  int i = active_viewport_buffer - 1;
107  // video appears to only use 3 buffers
109  if(i < 0) {
110  i = 2;
111  }
112  } else if(i < 0) {
113  i = 3;
114  }
115 
116  // Hopefully return the most recently used viewport buffer so that motion detect, histogram, zebra and edge overly are using current image data
117  return viewport_buffers[i];
118 }
int vid_get_viewport_width ( )

Definiert in Zeile 55 der Datei lib.c.

56 {
58  {
59  return 360;
60  }
61  extern int _GetVRAMHPixelsSize();
62  return _GetVRAMHPixelsSize() >> 1;
63 }
int vid_get_viewport_xoffset ( )

Definiert in Zeile 78 der Datei lib.c.

79 {
81  {
82  return 0;
83  }
85  return 0;
86  }
87  if(shooting_get_prop(PROPCASE_ASPECT_RATIO) == 3) { // 1:1 appears to use X offset
88  return 44;
89  }
90  return 0;
91 }

Variablen-Dokumentation

int active_bitmap_buffer
char active_viewport_buffer
char* bitmap_buffer[]

Definiert in Zeile 84 der Datei lib.c.

void* viewport_buffers[]