source: trunk/platform/sx20/platform_camera.h @ 1527

Revision 1527, 4.6 KB checked in by philmoz, 17 months ago (diff)

Merge latest code from reyalp-flt branch to main trunk.

  • Property svn:eol-style set to native
RevLine 
[1140]1// Camera - SX20 - platform_camera.h
2
3// This file contains the various settings values specific to the SX20 camera.
4// This file is referenced via the 'include/camera.h' file and should not be loaded directly.
5
6// If adding a new settings value put a suitable default in 'include/camera.h',
7// along with documentation on what the setting does and how to determine the correct value.
8// If the setting should not have a default value then add it in 'include/camera.h'
9// using the '#undef' directive along with appropriate documentation.
10
11// Override any default values with your camera specific values in this file. Try and avoid
12// having override values that are the same as the default value.
13
14// When overriding a setting value there are two cases:
15// 1. If removing the value, because it does not apply to your camera, use the '#undef' directive.
16// 2. If changing the value it is best to use an '#undef' directive to remove the default value
17//    followed by a '#define' to set the new value.
18
19// When porting CHDK to a new camera, check the documentation in 'include/camera.h'
20// for information on each setting. If the default values are correct for your camera then
21// don't override them again in here.
22
23        #define CAM_PROPSET                                     3
24        #define CAM_DRYOS                                       1
25        #define CAM_DRYOS_2_3_R39                       1
26
27        #define CAM_RAW_ROWPIX                          4080
28        #define CAM_RAW_ROWS                            3048
29
30        #define CAM_SWIVEL_SCREEN                       1
31        #define CAM_ADJUSTABLE_ALT_BUTTON       1
32        #undef  CAM_CAN_SD_OVER_NOT_IN_MF
33        #undef  CAM_CAN_UNLOCK_OPTICAL_ZOOM_IN_VIDEO
34        #define CAM_HAS_VIDEO_BUTTON            1
35        #define CAM_VIDEO_QUALITY_ONLY          1
36        #define CAM_BRACKETING                          1
37        #undef  CAM_VIDEO_CONTROL
38        #define CAM_MULTIPART                           1
39        #define CAM_HAS_JOGDIAL                         1
40        #undef  CAM_USE_ZOOM_FOR_MF
41        #undef  CAM_UNCACHED_BIT                        // shut up compiler
42        #define CAM_UNCACHED_BIT                        0x40000000
43
[1418]44
45    #define CAM_DNG_LENS_INFO               { 50,10, 100,10, 28,10, 57,10 } // See comments in camera.h
[1140]46        // pattern
47        #define cam_CFAPattern 0x02010100 // Red  Green  Green  Blue
48        // color
49
50        #define CAM_COLORMATRIX1                               \
51      827547, 1000000, -290458, 1000000, -126086, 1000000, \
52      -12829, 1000000,  530507, 1000000,   50537, 1000000, \
53        5181, 1000000,   48183, 1000000,  245014, 1000000
54
55        #define cam_CalibrationIlluminant1      1 // Daylight
56        // cropping
57        #define CAM_JPEG_WIDTH                          4000
58        #define CAM_JPEG_HEIGHT                         3000
59        #define CAM_ACTIVE_AREA_X1                      24
60        #define CAM_ACTIVE_AREA_Y1                      12
61        #define CAM_ACTIVE_AREA_X2                      4080-48
62        #define CAM_ACTIVE_AREA_Y2                      3048-24
63        // camera name
64        #define PARAM_CAMERA_NAME                       4 // parameter number for GetParameterData
65        #undef  CAM_SENSOR_BITS_PER_PIXEL
66        #define CAM_SENSOR_BITS_PER_PIXEL       12
67
68        #define CAM_EXT_TV_RANGE                        1
69        #define CAM_QUALITY_OVERRIDE            1
70
[1303]71        // Updated Aug 2011 to use X2 aspect ratio correction instead of 9/4
[1140]72        #undef CAM_USES_ASPECT_CORRECTION
73        #define CAM_USES_ASPECT_CORRECTION              1  //camera uses the modified graphics primitives to map screens an viewports to buffers more sized
[1527]74    #undef CAM_BITMAP_WIDTH
75    #undef CAM_BITMAP_HEIGHT
76    #define CAM_BITMAP_WIDTH                960 // Actual width of bitmap screen in bytes
77    #define CAM_BITMAP_HEIGHT               270 // Actual height of bitmap screen in rows
[1140]78
79    #define CAM_ZEBRA_ASPECT_ADJUST 1
[1303]80   
81#ifndef OPT_EXMEM_MALLOC
82    #define CAM_ZEBRA_NOBUF                 1
83#endif
[1140]84
85        #undef CAM_BITMAP_PALETTE
86        #define CAM_BITMAP_PALETTE              6
87
88   //zebra letterbox for saving memory
89   #undef ZEBRA_HMARGIN0
90   #define ZEBRA_HMARGIN0  30 //this 30 rows are not used by the display buffer is 720x240 effective, no 960x270, i.e. (270-240) reduction in widht possible but not done (more difficult to manage it and slower).
91 
92   #undef EDGE_HMARGIN
93   #define EDGE_HMARGIN 28
[1146]94
[1303]95    #define CAM_DATE_FOLDER_NAMING          0x100 //Value found in the last function, which is called in GetImageFolder. (first compare)
[1146]96        #define CAM_STARTUP_CRASH_FILE_OPEN_FIX 1                               // enable fix for camera crash at startup when opening the conf / font files
97                                                                                                                        // see http://chdk.setepontos.com/index.php?topic=6179.0
98
[1303]99    #define CAM_FIRMWARE_MEMINFO        1       // Use 'GetMemInfo' to get free memory size.
[1224]100
101    #define CAM_DRIVE_MODE_FROM_TIMER_MODE      // use PROPCASE_TIMER_MODE to check for multiple shot custom timer.
102                                                // Used to enabled bracketing in custom timer, required on many recent cameras
103                                                // see http://chdk.setepontos.com/index.php/topic,3994.405.html
104
[1303]105    #define CAM_DETECT_SCREEN_ERASE     1       // Turn on guard pixels to detect screen erase and redraw CHDK buttons and menus
106
[1140]107//----------------------------------------------------------
108
Note: See TracBrowser for help on using the repository browser.