CHDK_DE Vorschauversion  Trunk Rev. 5426
 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 GREEN_LED   0xC0220130
 
#define AF_LED   0xC0223030
 

Funktionen

char * hook_raw_image_addr ()
 
char * hook_alt_raw_image_addr ()
 
char * camera_jpeg_count_str ()
 
void vid_bitmap_refresh ()
 
void shutdown ()
 
void debug_led (int state)
 
void camera_set_led (int led, int state, int bright)
 
int get_flash_params_count (void)
 
void * vid_get_viewport_fb ()
 
void * vid_get_viewport_fb_d ()
 
void * vid_get_viewport_live_fb ()
 
int vid_get_viewport_yscale ()
 
int _GetVRAMHPixelsSize ()
 
int _GetVRAMVPixelsSize ()
 
int vid_get_viewport_width ()
 
int vid_get_viewport_width_proper ()
 
int vid_get_viewport_fulllscreen_width ()
 
long vid_get_viewport_height ()
 
int vid_get_viewport_height_proper ()
 
int vid_get_viewport_fullscreen_height ()
 
int vid_get_viewport_display_xoffset ()
 
int vid_get_viewport_display_xoffset_proper ()
 
int vid_get_viewport_display_yoffset_proper ()
 
int vid_get_palette_type ()
 
int vid_get_palette_size ()
 
void * vid_get_bitmap_fb ()
 
void * vid_get_bitmap_active_buffer ()
 
char * camera_jpeg_current_filename ()
 
char * camera_jpeg_current_gps ()
 

Variablen

int active_raw_buffer
 
char * raw_buffers []
 
char active_viewport_buffer
 
void * viewport_buffers []
 
static long vp_xo [4] = { 0, 0, 0, 44 }
 
int active_bitmap_buffer
 
char * bitmap_buffer []
 

Makro-Dokumentation

#define AF_LED   0xC0223030

Definiert in Zeile 36 der Datei lib.c.

#define GREEN_LED   0xC0220130

Definiert in Zeile 35 der Datei lib.c.

Dokumentation der Funktionen

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

Definiert in Zeile 18 der Datei lib.c.

19 {
20  extern char jpeg_count_str[];
21  return jpeg_count_str;
22 }
char* camera_jpeg_current_filename ( )

Definiert in Zeile 221 der Datei lib.c.

221  {
222  return (void*)0xBD06C; //0xFF1E2E88 search for "%03d-%04d"
223 }
char* camera_jpeg_current_gps ( )

Definiert in Zeile 225 der Datei lib.c.

225  {
226  return (void*)0xBD0E0;
227 }
void camera_set_led ( int  led,
int  state,
int  bright 
)

Definiert in Zeile 56 der Datei lib.c.

56  {
57  static char led_table[]={0,4}; // status, AF
58  _LEDDrive(led_table[led%sizeof(led_table)], state<=1 ? !state : state);
59 }
void debug_led ( int  state)

Definiert in Zeile 45 der Datei lib.c.

45  {
46  // using power LED, which defaults to on
47  // for debugging turn LED off if state is 1 and on for state = 0
48  // leaves LED on at end of debugging
49  *(int*)GREEN_LED=state ? 0x46 : 0x44;
50 }
int get_flash_params_count ( void  )

Definiert in Zeile 61 der Datei lib.c.

61  {
62  return 0xA6;
63 }
char* hook_alt_raw_image_addr ( )

Definiert in Zeile 13 der Datei lib.c.

14 {
16 }
char* hook_raw_image_addr ( void  )

Definiert in Zeile 8 der Datei lib.c.

9 {
11 }
void shutdown ( )

Definiert in Zeile 37 der Datei lib.c.

38 {
39  extern void _TurnOffE1(void);
40  _TurnOffE1();
41  while(1);
42 }
void vid_bitmap_refresh ( )

Definiert in Zeile 24 der Datei lib.c.

25 {
26  extern int full_screen_refresh;
27  extern void _ScreenUnlock();
28  extern void _ScreenLock();
29 
30  _ScreenLock();
31  full_screen_refresh |= 3;
32  _ScreenUnlock();
33 }
void* vid_get_bitmap_active_buffer ( )

Definiert in Zeile 176 der Datei lib.c.

176  {
178 }
void* vid_get_bitmap_fb ( )

Definiert in Zeile 171 der Datei lib.c.

171  {
172  // Return first bitmap buffer address
173  return bitmap_buffer[0];
174 }
int vid_get_palette_size ( )

Definiert in Zeile 166 der Datei lib.c.

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

Definiert in Zeile 165 der Datei lib.c.

165 { return 3; }
int vid_get_viewport_display_xoffset ( )

Definiert in Zeile 149 der Datei lib.c.

150 {
151  int m = mode_get();
152  int aspect_ratio=shooting_get_prop(PROPCASE_ASPECT_RATIO);
153 
154  if ((m & MODE_MASK) != MODE_PLAY) {
155  return (vp_xo[aspect_ratio]);
156  }
157  else
158  return 0;
159 }
int vid_get_viewport_display_xoffset_proper ( )

Definiert in Zeile 162 der Datei lib.c.

162 { return vid_get_viewport_display_xoffset()<<1; }
int vid_get_viewport_display_yoffset_proper ( )

Definiert in Zeile 163 der Datei lib.c.

163 { return vid_get_viewport_display_yoffset()<<1; }
void* vid_get_viewport_fb ( )

Definiert in Zeile 72 der Datei lib.c.

73 {
74  // Return first viewport buffer - for case when vid_get_viewport_live_fb not defined
75  return viewport_buffers[0];
76 }
void* vid_get_viewport_fb_d ( )

Definiert in Zeile 78 der Datei lib.c.

79 {
80  extern char *viewport_fb_d;
81  return viewport_fb_d;
82 }
int vid_get_viewport_fulllscreen_width ( )

Definiert in Zeile 110 der Datei lib.c.

111 {
112  return 720;
113 }
int vid_get_viewport_fullscreen_height ( )

Definiert in Zeile 140 der Datei lib.c.

141 {
143 }
long vid_get_viewport_height ( )

Definiert in Zeile 115 der Datei lib.c.

116 {
117  return 480;
118 }
int vid_get_viewport_height_proper ( )

Definiert in Zeile 120 der Datei lib.c.

121 {
122  int m = mode_get();
123  int aspect_ratio=shooting_get_prop(PROPCASE_ASPECT_RATIO);
124 
125  if (MODE_IS_VIDEO(m) || is_video_recording())
126  return 240;
127 
128  if ((m & MODE_MASK) != MODE_PLAY) {
129 // This mode causes problems to liveview, see notes.txt
130 // if((m&MODE_SHOOTING_MASK) == MODE_VIDEO_MOVIE_DIGEST)
131 // return 480;
132 
133  // 0 = 4:3, 1 = 16:9, 2 = 3:2, 3 = 1:1
134  if (aspect_ratio==1 || aspect_ratio==2)
135  return 480;
136  }
137  return ((m & MODE_MASK) == MODE_PLAY)?480:_GetVRAMVPixelsSize();
138 }
void* vid_get_viewport_live_fb ( )

Definiert in Zeile 84 der Datei lib.c.

85 {
86  if (MODE_IS_VIDEO(mode_get()))
87  return viewport_buffers[0]; // Video only seems to use the first viewport buffer.
88 
89  // Hopefully return the most recently used viewport buffer so that motion detect, histogram, zebra and edge overly are using current image data
91 }
int vid_get_viewport_width ( )

Definiert in Zeile 101 der Datei lib.c.

102 {
103  return 720;
104 }
int vid_get_viewport_width_proper ( )

Definiert in Zeile 106 der Datei lib.c.

106  {
107  return ((mode_get()&MODE_MASK) == MODE_PLAY)?720:_GetVRAMHPixelsSize();
108 }
int vid_get_viewport_yscale ( )

Definiert in Zeile 94 der Datei lib.c.

94  {
95  return 2;
96 }

Variablen-Dokumentation

int active_bitmap_buffer
int active_raw_buffer
char active_viewport_buffer
char* bitmap_buffer[]

Definiert in Zeile 84 der Datei lib.c.

char* raw_buffers[]
void* viewport_buffers[]
long vp_xo[4] = { 0, 0, 0, 44 }
static

Definiert in Zeile 147 der Datei lib.c.