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   0xC022D1FC
 
#define AF_LED   0xC022D034
 

Funktionen

char * hook_raw_image_addr ()
 
char * hook_alt_raw_image_addr ()
 
void vid_bitmap_refresh ()
 
void shutdown ()
 
void * vid_get_bitmap_fb ()
 
int get_flash_params_count (void)
 
void * vid_get_viewport_fb ()
 
char * camera_jpeg_count_str ()
 
void debug_led (int state)
 
void camera_set_led (int led, int state, __attribute__((unused)) int bright)
 
void * vid_get_viewport_fb_d ()
 
void * vid_get_viewport_live_fb ()
 
int vid_get_viewport_yscale ()
 
int vid_get_viewport_width ()
 
long vid_get_viewport_height ()
 
int vid_get_viewport_display_xoffset ()
 
int vid_get_viewport_display_xoffset_proper ()
 
int vid_get_viewport_display_yoffset_proper ()
 
int vid_get_viewport_height_proper ()
 
int vid_get_viewport_fullscreen_height ()
 
int vid_get_palette_type ()
 
int vid_get_palette_size ()
 
void * vid_get_bitmap_active_palette ()
 
void * vid_get_bitmap_active_buffer ()
 
void JogDial_CW (void)
 
void JogDial_CCW (void)
 

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   0xC022D034

Definiert in Zeile 36 der Datei lib.c.

#define LED_PR   0xC022D1FC

Definiert in Zeile 35 der Datei lib.c.

Dokumentation der Funktionen

char* camera_jpeg_count_str ( )

Definiert in Zeile 47 der Datei lib.c.

48 {
49  extern char jpeg_count_str[];
50  return jpeg_count_str;
51 }
void camera_set_led ( int  led,
int  state,
__attribute__((unused)) int  bright 
)

Definiert in Zeile 62 der Datei lib.c.

62  {
63  static char led_table[]={0,12}; // status, AF
64  _LEDDrive(led_table[led%sizeof(led_table)], state<=1 ? !state : state);
65 }
void debug_led ( int  state)

Definiert in Zeile 53 der Datei lib.c.

54 {
55  volatile long *p=(void*)LED_PR;
56  if (state)
57  p[0]=0x93d800;
58  else
59  p[0]=0x83dc00;
60 }
int get_flash_params_count ( void  )

Definiert in Zeile 44 der Datei lib.c.

44 { return 0xdc; } // Found @0xff23513c
char* hook_alt_raw_image_addr ( )

Definiert in Zeile 13 der Datei lib.c.

14 {
15  return raw_buffers[((active_raw_buffer & 1)^1)];
16 }
char* hook_raw_image_addr ( void  )

Definiert in Zeile 8 der Datei lib.c.

9 {
10  return raw_buffers[active_raw_buffer & 1];
11 }
void JogDial_CCW ( void  )

Definiert in Zeile 165 der Datei lib.c.

166 {
167  _PostLogicalEventToUI(0x873, 1); // RotateJogDialLeft (in table @ ???, fw 1.01a)
168 }
void JogDial_CW ( void  )

Definiert in Zeile 160 der Datei lib.c.

161 {
162  _PostLogicalEventToUI(0x872, 1); // RotateJogDialRight (in table @ ????, fw 1.01a)
163 }
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 _ScreenLock();
28  extern void _ScreenUnlock();
29 
30  full_screen_refresh |= 3;
31  _ScreenLock();
32  _ScreenUnlock();
33 }
void* vid_get_bitmap_active_buffer ( )

Definiert in Zeile 152 der Datei lib.c.

152  {
154 }
void* vid_get_bitmap_active_palette ( )

Definiert in Zeile 143 der Datei lib.c.

144 {
145  extern void *palette_buffer_ptr;
146  return palette_buffer_ptr;
147 }
void* vid_get_bitmap_fb ( )

OSD screen

Definiert in Zeile 43 der Datei lib.c.

43 { return (void*)0x40711000; } // Found @0xff06e5f8
int vid_get_palette_size ( )

Definiert in Zeile 141 der Datei lib.c.

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

Definiert in Zeile 140 der Datei lib.c.

140 { return 3; }
int vid_get_viewport_display_xoffset ( )

Definiert in Zeile 124 der Datei lib.c.

125 {
126  int m = mode_get();
127  int aspect_ratio=shooting_get_prop(PROPCASE_ASPECT_RATIO);
128 
129  if ((m & MODE_MASK) != MODE_PLAY) {
130  return (vp_xo[aspect_ratio]);
131  }
132  else
133  return 0;
134 }
int vid_get_viewport_display_xoffset_proper ( )

Definiert in Zeile 136 der Datei lib.c.

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

Definiert in Zeile 137 der Datei lib.c.

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

IMG viewport in 'rec' mode

Definiert in Zeile 45 der Datei lib.c.

45 { return (void*)0x40866b80; } // Found @0xff4d2e04
void* vid_get_viewport_fb_d ( )

IMG viewport in 'play' mode

Definiert in Zeile 70 der Datei lib.c.

71 {
72  extern char *viewport_fb_d;
73  return viewport_fb_d;
74 }
int vid_get_viewport_fullscreen_height ( )

Definiert in Zeile 139 der Datei lib.c.

139 { return 480; }
long vid_get_viewport_height ( )

Definiert in Zeile 101 der Datei lib.c.

102 {
103 
104  int m = mode_get();
105  int aspect_ratio=shooting_get_prop(PROPCASE_ASPECT_RATIO);
106 
107  if (MODE_IS_VIDEO(m) || is_video_recording())
108  return 240;
109 
110  if ((m & MODE_MASK) != MODE_PLAY)
111  {
112  // 0 = 4:3, 1 = 16:9, 2 = 3:2, 3 = 1:1
113  if (aspect_ratio==1 || aspect_ratio==2)
114  return 240;
115  }
116  extern int _GetVRAMVPixelsSize();
117  return ((m & MODE_MASK) == MODE_PLAY)?240:_GetVRAMVPixelsSize()>>1;
118 }
int vid_get_viewport_height_proper ( )

Definiert in Zeile 138 der Datei lib.c.

138 { return vid_get_viewport_height() * 2; }
void* vid_get_viewport_live_fb ( )

Definiert in Zeile 76 der Datei lib.c.

77 {
78  //if (MODE_IS_VIDEO(mode_get()) || is_video_recording())
79  // return viewport_buffers[0]; // Video only seems to use the first viewport buffer.
80 
81  // Hopefully return the most recently used viewport buffer so that motion detect, histogram, zebra and edge overly are using current image data
82  // verified -1 gives best response
84 }
int vid_get_viewport_width ( )

Definiert in Zeile 91 der Datei lib.c.

92 {
94  {
95  return 360;
96  }
97  extern int _GetVRAMHPixelsSize();
98  return _GetVRAMHPixelsSize() >> 1;
99 }
int vid_get_viewport_yscale ( )

Definiert in Zeile 87 der Datei lib.c.

87  {
88  return 2;
89 }

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 122 der Datei lib.c.