This source file includes following definitions.
- shutdown
- debug_led
- camera_set_led
- get_flash_params_count
- vid_get_viewport_height
- vid_bitmap_refresh
- vid_get_bitmap_active_palette
- load_chdk_palette
- vid_get_palette_type
- vid_get_palette_size
1 #include "platform.h"
2 #include "platform_palette.h"
3 #include "lolevel.h"
4
5 void shutdown()
6 {
7 extern void _TurnOffE1(void);
8 _TurnOffE1();
9 while(1);
10 }
11
12 #define LED_PR 0xC02200F0
13
14
15 void debug_led(int state)
16 {
17 *(int*)LED_PR=state ? 0x46 : 0x44;
18 }
19
20 void camera_set_led(int led, int state, __attribute__ ((unused))int bright) {
21 static char led_table[2]={0,9};
22 _LEDDrive(led_table[led%sizeof(led_table)], state<=1 ? !state : state);
23 }
24
25 int get_flash_params_count(void){
26 return 0xa0;
27 }
28
29 long vid_get_viewport_height()
30 {
31 return 240;
32 }
33
34 void vid_bitmap_refresh() {
35
36 extern int full_screen_refresh;
37 extern void _ScreenUnlock();
38 extern void _ScreenLock();
39
40 full_screen_refresh |= 3;
41 _ScreenLock();
42 _ScreenUnlock();
43 }
44
45 void *vid_get_bitmap_active_palette() {
46 extern int active_palette_buffer;
47 extern char* palette_buffer[];
48 void* p = palette_buffer[active_palette_buffer];
49
50 if (p) p += 8;
51 return p;
52 }
53
54 #ifdef CAM_LOAD_CUSTOM_COLORS
55
56 void load_chdk_palette() {
57
58 extern int active_palette_buffer;
59
60 if ((active_palette_buffer == 0) || (active_palette_buffer == 4))
61 {
62 int *pal = (int*)vid_get_bitmap_active_palette();
63 if (pal && pal[CHDK_COLOR_BASE+0] != 0x33ADF62)
64 {
65 pal[CHDK_COLOR_BASE+0] = 0x33ADF62;
66 pal[CHDK_COLOR_BASE+1] = 0x326EA40;
67 pal[CHDK_COLOR_BASE+2] = 0x34CD57F;
68 pal[CHDK_COLOR_BASE+3] = 0x373BFAE;
69 pal[CHDK_COLOR_BASE+4] = 0x34BD6CA;
70 pal[CHDK_COLOR_BASE+5] = 0x395AB95;
71 pal[CHDK_COLOR_BASE+6] = 0x34766F0;
72 pal[CHDK_COLOR_BASE+7] = 0x31250F3;
73 pal[CHDK_COLOR_BASE+8] = 0x37F408F;
74 pal[CHDK_COLOR_BASE+9] = 0x3512D5B;
75 pal[CHDK_COLOR_BASE+10] = 0x3A9A917;
76 pal[CHDK_COLOR_BASE+11] = 0x3819137;
77 pal[CHDK_COLOR_BASE+12] = 0x3DED115;
78 pal[CHDK_COLOR_BASE+13] = 0x0090000;
79
80 extern char palette_control;
81 palette_control = 1;
82 vid_bitmap_refresh();
83 }
84 }
85 }
86 #endif
87
88 int vid_get_palette_type() { return 3; }
89 int vid_get_palette_size() { return 256 * 4; }