root/platform/g10/platform_camera.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 // Camera - G10 - platform_camera.h
   2 
   3 // This file contains the various settings values specific to the G10 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_DRYOS                       1
  24 
  25     #undef  CAM_CIRCLE_OF_CONFUSION
  26     #define CAM_CIRCLE_OF_CONFUSION         7   // CoC value for camera/sensor (see http://www.dofmaster.com/digital_coc.html)
  27 
  28     #define CAM_PROPSET                     2
  29 
  30     #undef  CAM_USE_ZOOM_FOR_MF
  31     #define CAM_HAS_ND_FILTER               1
  32     #define CAM_HAS_NATIVE_ND_FILTER        1   // Camera has built-in ND filter with Canon menu support for enable/disable
  33 
  34     #define CAM_HAS_HI_ISO_AUTO_MODE        1
  35 
  36     #undef  CAM_EMUL_KEYPRESS_DURATION
  37     #define CAM_EMUL_KEYPRESS_DURATION      10
  38 
  39     #define CAM_ADJUSTABLE_ALT_BUTTON       1
  40     #define CAM_ALT_BUTTON_NAMES            { "Print", "Disp",  "AE Lock", "Jump" }
  41     #define CAM_ALT_BUTTON_OPTIONS          { KEY_PRINT, KEY_DISPLAY, KEY_AE_LOCK, KEY_METERING}
  42 
  43     #define CAM_RAW_ROWPIX                  4480    // G10 auto found @0xffacde38
  44     #define CAM_RAW_ROWS                    3348    // G10 auto found @0xffacde3c
  45 
  46     #define CAM_JPEG_WIDTH                  4416    // taken from G10 jpg header info
  47     #define CAM_JPEG_HEIGHT                 3312    // "
  48 
  49     #define CAM_ACTIVE_AREA_X1              12      // calibrated with G10 RAW picture converted with rawconvert.exe (rawconvert -12to8 -pgm -w=4480 -h=3348 g10.crw g10.pgm)
  50     #define CAM_ACTIVE_AREA_Y1              12      // "
  51     #define CAM_ACTIVE_AREA_X2              4440    // "
  52     #define CAM_ACTIVE_AREA_Y2              3334    // "
  53 
  54     #define CAM_QUALITY_OVERRIDE            1
  55     #define CAM_AF_SCAN_DURING_VIDEO_RECORD 1
  56     #define CAM_RESET_AEL_AFTER_VIDEO_AF    1   // Cam needs AE Lock state reset after AF in video recording
  57     #define CAM_HAS_JOGDIAL                 1
  58 
  59     #define CAM_BRACKETING                  1
  60     #define CAM_MULTIPART                   1
  61     #undef  CAM_UNCACHED_BIT
  62     #define CAM_UNCACHED_BIT                0x40000000  // G10 auto found @0xff828844
  63 
  64     #define CAM_SHOW_OSD_IN_SHOOT_MENU      1
  65 
  66     #define PARAM_CAMERA_NAME               4       // parameter number for GetParameterData
  67     #define PARAM_DISPLAY_MODE1             57      // param number for LCD display mode when camera in playback
  68     #define PARAM_DISPLAY_MODE2             58      // param number for LCD display mode when camera in record view hold mode
  69 
  70     #define CAM_LOAD_CUSTOM_COLORS          1      // Enable loading CHDK colors into the camera palette memory/hardware
  71 
  72     #undef  CAM_SENSOR_BITS_PER_PIXEL
  73     #define CAM_SENSOR_BITS_PER_PIXEL       12
  74 
  75     #undef  CAM_USES_ASPECT_CORRECTION
  76     #define CAM_USES_ASPECT_CORRECTION      1       //camera uses the modified graphics primitives to map screens an viewports to buffers more sized
  77     #undef  CAM_BITMAP_WIDTH
  78     #define CAM_BITMAP_WIDTH                720 // Actual width of bitmap screen in bytes
  79 
  80     #undef  EDGE_HMARGIN
  81     #define EDGE_HMARGIN 28
  82 
  83 
  84 /*
  85   from exif date in Adobe DNG Converted image applied to Canon CR2 file
  86     Unique Camera Model             : Canon PowerShot G10
  87     Color Matrix 1                  : 1.3591 -0.6592 0.0324 -0.344 1.0533 0.3374 -0.0169 0.1008 0.5612
  88     Color Matrix 2                  : 1.1093 -0.3906 -0.1028 -0.5047 1.2492 0.2879 -0.1003 0.175 0.5561
  89     Calibration Illuminant 1        : Standard Light A (17)
  90     Calibration Illuminant 2        : D65 (21)
  91     Forward Matrix 1                : 0.6117 0.4074 -0.0548 0.2413 1.0772 -0.3185 0.0231 -0.1931 0.995
  92     Forward Matrix 2                : 0.6117 0.4074 -0.0548 0.2413 1.0772 -0.3185 0.0231 -0.1931 0.995
  93 */
  94     #define cam_CFAPattern                  0x01000201   // 0x01000201 = Green Blue Red Green
  95     #define cam_CalibrationIlluminant1      17           // Standard Light A
  96     #define cam_CalibrationIlluminant2      21           // D65
  97     #define CAM_COLORMATRIX1    \
  98       13591, 10000, -6592, 10000,   324, 10000, \
  99       -3440, 10000, 10533, 10000,  3374, 10000, \
 100         169, 10000,  1008, 10000,  5612, 10000
 101     #define CAM_COLORMATRIX2    \
 102       11093, 10000, -3906, 10000, -1028, 10000, \
 103       -5047, 10000, 12492, 10000,  2879, 10000, \
 104       -1003, 10000,  1750, 10000,  5561, 10000
 105     #define CAM_FORWARDMATRIX1    \
 106        6117, 10000,  4074, 10000,  -548, 10000, \
 107        2413, 10000, 10772, 10000, -3185, 10000, \
 108         231, 10000, -1931, 10000,  9950, 10000
 109     #define CAM_FORWARDMATRIX2    \
 110        6117, 10000,  4074, 10000,  -548, 10000, \
 111        2413, 10000, 10772, 10000, -3185, 10000, \
 112         231, 10000, -1931, 10000,  9950, 10000
 113     #define CAM_DNG_EXPOSURE_BIAS           0,1          // Specify DNG exposure bias value to 0 (to override default of -0.5 in the dng.c code)
 114     #define CAM_DNG_LENS_INFO               { 61,10, 305,10, 28,10, 45,10 }
 115 
 116     // zebra
 117     #define CAM_ZEBRA_NOBUF                 1
 118 
 119     #define CAM_USE_ALT_SET_ZOOM_POINT      1   // Define to use the alternate code in lens_set_zoom_point()
 120 
 121     #define CAM_DRIVE_MODE_FROM_TIMER_MODE  1       // use PROPCASE_TIMER_MODE to check for multiple shot custom timer.
 122                                                     // Used to enabled bracketing in custom timer, required on many recent cameras
 123                                                     // see http://chdk.setepontos.com/index.php/topic,3994.405.html
 124 
 125     #define REMOTE_SYNC_STATUS_LED          0xC02200DC  // specifies an LED that turns on while camera waits for USB remote to sync
 126 
 127     #undef  CAM_AF_LED
 128     #define CAM_AF_LED                      5       // Index of AF led in camera_set_led function
 129 
 130     #define CAM_HOTSHOE_OVERRIDE            1
 131 
 132     #define CAM_SD_OVER_IN_AF               1
 133     #define CAM_SD_OVER_IN_AFL              1
 134     #define CAM_SD_OVER_IN_MF               1
 135 
 136     #define CAM_HAS_FILEWRITETASK_HOOK      1
 137 
 138     #define CAM_HAS_CANON_RAW                   1   // has native Canon raw
 139 
 140 //--------------------------------------------------

/* [<][>][^][v][top][bottom][index][help] */