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

gehe zum Quellcode dieser Datei

Makrodefinitionen

#define LED_PR   0xC0220128
 

Funktionen

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)
 
char * camera_jpeg_count_str ()
 
char * hook_raw_image_addr ()
 
void vid_bitmap_refresh ()
 
void * vid_get_bitmap_fb ()
 
void * vid_get_viewport_fb ()
 
int vid_get_viewport_width ()
 
long vid_get_viewport_height ()
 
int vid_get_viewport_yscale ()
 
void * vid_get_viewport_fb_d ()
 
void * vid_get_viewport_live_fb ()
 
int vid_get_palette_type ()
 
int vid_get_palette_size ()
 
void * vid_get_bitmap_active_palette ()
 

Makro-Dokumentation

#define LED_PR   0xC0220128

Definiert in Zeile 21 der Datei lib.c.

Dokumentation der Funktionen

char* camera_jpeg_count_str ( )

Definiert in Zeile 57 der Datei lib.c.

58 {
59  extern char jpeg_count_str[];
60  return jpeg_count_str;
61 }
void camera_set_led ( int  led,
int  state,
__attribute__((unused)) int  bright 
)

Definiert in Zeile 41 der Datei lib.c.

41  {
42  static char led_table[7]={0,1,2,3,10,14,15};
43  _LEDDrive(led_table[led%sizeof(led_table)], state<=1 ? !state : state);
44 }
void debug_led ( int  state)

Definiert in Zeile 23 der Datei lib.c.

24 {
25  volatile long *p=(void*)LED_PR;
26  if (state)
27  p[0]=0x46;
28  else
29  p[0]=0x44;
30 }
int get_flash_params_count ( void  )

Definiert in Zeile 46 der Datei lib.c.

46 { return 0x84; } // Found @0xff9968bc
char* hook_raw_image_addr ( void  )

Definiert in Zeile 63 der Datei lib.c.

64 {
65  return (char*)0x41C0F460; // G11 search for aCrwaddressLxCr " CrwAddress %lx, CrwSize H %ld V %ld\r" 0x41c0f460 0xEA0 0xAE0
66  // or for aCrawBuffP DCB "CRAW BUFF %p",0
67 }
void JogDial_CCW ( void  )

Definiert in Zeile 52 der Datei lib.c.

52  {
53  _PostLogicalEventForNotPowerType(0x875, 1); // RotateJogDialLeft
54 }
void JogDial_CW ( void  )

Definiert in Zeile 48 der Datei lib.c.

48  {
49  _PostLogicalEventForNotPowerType(0x874, 1); // RotateJogDialRight
50 }
void shutdown ( )

Definiert in Zeile 4 der Datei lib.c.

5 {
6  volatile long *p = (void*)0xC0220240; // G11
7 
8  asm(
9  "MRS R1, CPSR\n"
10  "AND R0, R1, #0x80\n"
11  "ORR R1, R1, #0x80\n"
12  "MSR CPSR_cf, R1\n"
13  :::"r1","r0");
14 
15  *p = 0x44;
16 
17  while(1);
18 }
void vid_bitmap_refresh ( )

Definiert in Zeile 69 der Datei lib.c.

70 {
71  extern int enabled_refresh_physical_screen; // screen lock counter
72  extern void _ScreenUnlock();
73 
74  _ScreenLock();
75  enabled_refresh_physical_screen = 1;
76  _ScreenUnlock();
77 }
void* vid_get_bitmap_active_palette ( )

Definiert in Zeile 140 der Datei lib.c.

141 {
142  extern int active_palette_buffer;
143  extern char** palette_buffer_ptr;
144  return palette_buffer_ptr[active_palette_buffer]+8;
145 }
void* vid_get_bitmap_fb ( )

Definiert in Zeile 79 der Datei lib.c.

80 {
81  return (void*)0x40471000; // G11 OK 100j loc_FF85A4BC ir 0xFF85A4C0 (at end of function DispCon_ShowBlackChart
82 }
int vid_get_palette_size ( )

Definiert in Zeile 138 der Datei lib.c.

138 { return 256 * 4 ; } // 16*4 or 256*4
int vid_get_palette_type ( )

Definiert in Zeile 137 der Datei lib.c.

137 { return 3 ; } // 1,2,3,4,or 5
void* vid_get_viewport_fb ( )

Definiert in Zeile 84 der Datei lib.c.

85 {
86 
87  return (void*)0x40587700;
88 /*
89 100j
90 ROM:FFB067B0 28 12 9F E5 LDR R1, =0x40587700 ; Load from Memory
91 ROM:FFB067B4 20 02 9F E5 LDR R0, =0x7E900 ; Load from Memory
92 ROM:FFB067B8 00 10 84 E5 STR R1, [R4] ; Store to Memory
93 ROM:FFB067BC 04 00 84 E5 STR R0, [R4,#4] ; Store to Memory
94 ROM:FFB067C0 95 0F 8F E2 ADR R0, aVramAddressP ; "VRAM Address : %p\r"
95 */
96 
97 }
void* vid_get_viewport_fb_d ( )

Definiert in Zeile 117 der Datei lib.c.

118 {
119  extern char *viewport_fb_d;
120  return viewport_fb_d;
121 }
long vid_get_viewport_height ( )

Definiert in Zeile 107 der Datei lib.c.

108 {
109  return 240;
110 }
void* vid_get_viewport_live_fb ( )

Definiert in Zeile 123 der Datei lib.c.

124 {
125  extern char active_viewport_buffer;
126  extern void* viewport_buffers[];
127 
128  int buf = active_viewport_buffer-1;
129  if(buf < 0) {
130  buf = 2;
131  }
132  // Hopefully return the most recently used viewport buffer so that motion detect, histogram, zebra and edge overly are using current image data
133  return viewport_buffers[buf];
134 }
int vid_get_viewport_width ( )

Definiert in Zeile 102 der Datei lib.c.

103 {
104  return 360;
105 }
int vid_get_viewport_yscale ( )

Definiert in Zeile 113 der Datei lib.c.

113  {
114  return 2; // G11 viewport is 480 pixels high
115 }