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 120 #define CAM_DRIVE_MODE_FROM_TIMER_MODE 1 // use PROPCASE_TIMER_MODE to check for multiple shot custom timer. 121 // Used to enabled bracketing in custom timer, required on many recent cameras 122 // see http://chdk.setepontos.com/index.php/topic,3994.405.html 123 124 #define REMOTE_SYNC_STATUS_LED 0xC02200DC // specifies an LED that turns on while camera waits for USB remote to sync 125 126 #undef CAM_AF_LED 127 #define CAM_AF_LED 5 // Index of AF led in camera_set_led function 128 129 #define CAM_HOTSHOE_OVERRIDE 1 130 131 #define CAM_SD_OVER_IN_AF 1 132 #define CAM_SD_OVER_IN_AFL 1 133 #define CAM_SD_OVER_IN_MF 1 134 135 #define CAM_HAS_FILEWRITETASK_HOOK 1 136 137 #define CAM_HAS_CANON_RAW 1 // has native Canon raw 138 139 //--------------------------------------------------