root/platform/g12/platform_camera.h

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

INCLUDED FROM


   1 // Camera - g12 - platform_camera.h
   2 
   3 // This file contains the various settings values specific to the g12 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                         4
  24     #define CAM_DRYOS                           1
  25     #define CAM_DRYOS_2_3_R39                   1
  26 
  27     #undef  CAM_CIRCLE_OF_CONFUSION
  28     #define CAM_CIRCLE_OF_CONFUSION             7   // CoC value for camera/sensor (see http://www.dofmaster.com/digital_coc.html)
  29 
  30     #define DRAW_ON_ACTIVE_BITMAP_BUFFER_ONLY   1   // Draw pixels on active bitmap buffer only.
  31 
  32     #undef  CAM_AF_LED
  33     #define CAM_AF_LED                          4   // Index of AF led in camera_set_led function
  34 
  35     #define CAM_SWIVEL_SCREEN                   1
  36 
  37     #undef  CAM_EMUL_KEYPRESS_DURATION
  38     #define CAM_EMUL_KEYPRESS_DURATION          10
  39 
  40     #define CAM_ADJUSTABLE_ALT_BUTTON           1
  41     #define CAM_ALT_BUTTON_NAMES                { "Print", "Disp",  "AE Lock", "Jump" }
  42     #define CAM_ALT_BUTTON_OPTIONS              { KEY_PRINT, KEY_DISPLAY, KEY_AE_LOCK, KEY_METERING}
  43 
  44     #define CAM_AF_SCAN_DURING_VIDEO_RECORD     1
  45     #define CAM_RESET_AEL_AFTER_VIDEO_AF        1   // Cam needs AE Lock state reset after AF in video recording
  46     #define CAM_VIDEO_AF_BUTTON_NAMES           { "", "Shutter", "Set", "AE Lock" }
  47     #define CAM_VIDEO_AF_BUTTON_OPTIONS         { 0, KEY_SHOOT_HALF, KEY_SET, KEY_AE_LOCK }
  48 
  49     #define CAM_MULTIPART                       1
  50     #define CAM_HAS_JOGDIAL                     1
  51     #undef  CAM_USE_ZOOM_FOR_MF
  52     #define CAM_HAS_ND_FILTER                   1
  53     #define CAM_HAS_NATIVE_ND_FILTER            1   // Camera has built-in ND filter with Canon menu support for enable/disable
  54 
  55     #define CAM_BRACKETING                      1
  56     #undef  CAM_VIDEO_CONTROL
  57     #define CAM_VIDEO_QUALITY_ONLY              1
  58     #define CAM_QUALITY_OVERRIDE                1
  59     #undef  CAM_UNCACHED_BIT
  60     #define CAM_UNCACHED_BIT                    0x40000000  // S90 @FF8875FC(via ExMem.FreeCacheable)
  61     #define CAM_SHOW_OSD_IN_SHOOT_MENU          1
  62 
  63     #undef DEFAULT_RAW_EXT
  64     #define DEFAULT_RAW_EXT                     2   // use .CR2
  65 
  66     // camera name
  67     #define PARAM_CAMERA_NAME                   4   // parameter number for GetParameterData - Camera Model name
  68     #define PARAM_OWNER_NAME                    7   // parameter number for GetParameterData - Owner name
  69     #define PARAM_DISPLAY_MODE1                 59  // param number for LCD display mode when camera in playback
  70     #define PARAM_DISPLAY_MODE2                 62  // param number for LCD display mode when camera in record view hold mode
  71     #undef  CAM_SENSOR_BITS_PER_PIXEL
  72     #define CAM_SENSOR_BITS_PER_PIXEL           12
  73 
  74     #undef  CAM_USES_ASPECT_CORRECTION
  75     #define CAM_USES_ASPECT_CORRECTION          1   //camera uses the modified graphics primitives to map screens an viewports to buffers more sized
  76     #undef CAM_BITMAP_WIDTH
  77     #undef CAM_BITMAP_HEIGHT
  78     #define CAM_BITMAP_WIDTH                    960 // Actual width of bitmap screen in bytes
  79     #define CAM_BITMAP_HEIGHT                   270 // Actual height of bitmap screen in rows
  80 
  81     #undef  EDGE_HMARGIN
  82     #define EDGE_HMARGIN                        2
  83 
  84     #define CAM_MIN_ISO_OVERRIDE                80  // Defines min market (non-zero) ISO override value - lower value may crash if flash used [0 = AUTO, so always allowed]
  85 
  86     // bayer sensor pattern
  87     #define cam_CFAPattern                      0x02010100  // Red  Green  Green  Blue
  88 
  89     #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)
  90 
  91     #define    CAM_DNG_LENS_INFO                { 61,10, 305,10, 28,10, 45,10 }    // See comments in camera.h
  92 
  93     // From Adobe DNG converter
  94     #define cam_CalibrationIlluminant1          17  // Standard Light A
  95     #define CAM_COLORMATRIX1 \
  96       14105, 10000, -7096, 10000,  -274, 10000, \
  97       -1073, 10000,  9014, 10000,  2450, 10000, \
  98          50, 10000,   536, 10000,  5097, 10000
  99     #define cam_CalibrationIlluminant2          21  // D65
 100     #define CAM_COLORMATRIX2 \
 101       13244, 10000, -5501, 10000, -1248, 10000, \
 102       -1508, 10000,  9858, 10000,  1935, 10000, \
 103        -270, 10000,  1083, 10000,  4366, 10000
 104     #define CAM_FORWARDMATRIX1 \
 105        5403, 10000,  3396, 10000,   844, 10000, \
 106         146, 10000, 10896, 10000, -1042, 10000, \
 107         -98, 10000, -3426, 10000, 11775, 10000
 108     #define CAM_FORWARDMATRIX2 \
 109        4851, 10000,  5333, 10000,  -542, 10000, \
 110         812, 10000, 11996, 10000, -2809, 10000, \
 111          55, 10000, -1871, 10000, 10067, 10000
 112 
 113     // Sensor size, DNG image size & cropping
 114     #define CAM_RAW_ROWPIX                      3744
 115     #define CAM_RAW_ROWS                        2784
 116     #define CAM_CROP_ORIGIN_X                   20      // Override calculated JPEG Crop position (18)
 117     #define CAM_JPEG_WIDTH                      3648
 118     #define CAM_JPEG_HEIGHT                     2736
 119     #define CAM_ACTIVE_AREA_X1                  52
 120     #define CAM_ACTIVE_AREA_Y1                  12
 121     #define CAM_ACTIVE_AREA_X2                  (CAM_RAW_ROWPIX-8)
 122     #define CAM_ACTIVE_AREA_Y2                  (CAM_RAW_ROWS-12)
 123 
 124     #define CAM_DATE_FOLDER_NAMING              0x400 //Value found in the last function, which is called in GetImageFolder. (first compare)
 125 
 126     #define CAM_DRIVE_MODE_FROM_TIMER_MODE      1   // use PROPCASE_TIMER_MODE to check for multiple shot custom timer.
 127                                                     // Used to enabled bracketing in custom timer, required on many recent cameras
 128                                                     // see http://chdk.setepontos.com/index.php/topic,3994.405.html
 129 
 130     #define CAM_AV_OVERRIDE_IRIS_FIX            1   // for cameras that require _MoveIrisWithAv function to override Av.
 131 
 132     #define CAM_DISABLE_RAW_IN_LOW_LIGHT_MODE   1   // For cameras with 'low light' mode that does now work with raw define this
 133 
 134     #define CAM_LOAD_CUSTOM_COLORS              1   // Enable loading CHDK colors into the camera palette memory/hardware
 135 
 136 //    #define REMOTE_SYNC_STATUS_LED     0xC0xxyyyy        // specifies an LED that turns on while camera waits for USB remote to sync
 137 
 138     #define CAM_USE_ALT_SET_ZOOM_POINT          1   // Define to use the alternate code in lens_set_zoom_point()
 139     #define CAM_USE_OPTICAL_MAX_ZOOM_STATUS     1   // Use ZOOM_OPTICAL_MAX to reset zoom_status when switching from digital to optical zoom in gui_std_kbd_process()
 140 
 141     #undef  CAMERA_MIN_DIST
 142     #define CAMERA_MIN_DIST                     68      // Override min subject distance
 143     #undef  CAMERA_MAX_DIST
 144     #define CAMERA_MAX_DIST                     258065  // Override max subject distance
 145 
 146     // Define shortcut overrides where defaults are not suitable
 147     #define SHORTCUT_TOGGLE_HISTO               KEY_ERASE   // On camera Shutter Half Press + Up = switch MF on/off
 148 
 149     #define CAM_HAS_FILEWRITETASK_HOOK          1   // file write hook for remote capture etc
 150 
 151     #define CAM_HOTSHOE_OVERRIDE                1
 152 
 153     #define CAM_SD_OVER_IN_AF                   1
 154     #define CAM_SD_OVER_IN_AFL                  1
 155     #define CAM_SD_OVER_IN_MF                   1
 156 
 157     #define CAM_IS_VID_REC_WORKS                1   // is_video_recording() function works
 158     
 159     #define CAM_REMOTE_USES_PRECISION_SYNC      1               // USB remote precision sync patch works with this camera
 160     #define GPIO_VSYNC_CURRENT                  0xC0F070C8  // vsync current status register used by USB remote precision sync
 161 
 162     #define CAM_HAS_CANON_RAW                   1   // has native Canon raw
 163 
 164 //--------------------------------------------------

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