1 // Camera - sx710hs - platform_camera.h 2 3 // This file contains the various settings values specific to the sx710hs 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 7 24 25 #define CAM_HAS_SPORTS_MODE 1 26 27 #define CAM_AV_OVERRIDE_IRIS_FIX 1 // for cameras that require _MoveIrisWithAv function to override Av (for bracketing). 28 29 // doesn't seem to needed 30 // #undef CAM_KEY_PRESS_DELAY 31 // #define CAM_KEY_PRESS_DELAY 60 // delay after a press 32 33 #define CAM_ADJUSTABLE_ALT_BUTTON 1 34 35 #define CAM_ALT_BUTTON_NAMES { "Playback", "Video", "Wifi" } 36 #define CAM_ALT_BUTTON_OPTIONS { KEY_PLAYBACK, KEY_VIDEO, KEY_WIFI} 37 #define CAM_DRIVE_MODE_FROM_TIMER_MODE 1 38 39 // default zebra shortcut (left) conflicts with canon AF lock 40 #define SHORTCUT_TOGGLE_ZEBRA KEY_MENU 41 42 #define CAM_DRYOS 1 43 #define CAM_DRYOS_2_3_R39 1 44 #define CAM_DRYOS_2_3_R47 1 45 46 #define CAM_HAS_CMOS 1 47 48 // unlocked by default, not needed 49 #undef CAM_CAN_UNLOCK_OPTICAL_ZOOM_IN_VIDEO 50 #define CAM_HAS_VIDEO_BUTTON 1 51 52 // has disp 53 // #undef CAM_HAS_DISP_BUTTON 54 // no dedicated erase 55 #undef CAM_HAS_ERASE_BUTTON 56 #undef CAM_USE_ZOOM_FOR_MF 57 58 // not implemented 59 #undef CAM_CHDK_HAS_EXT_VIDEO_MENU 60 #undef CAM_VIDEO_CONTROL 61 62 // minimal recording or not only 63 #define CAM_SIMPLE_MOVIE_STATUS 1 64 65 #define CAM_IS_VID_REC_WORKS 1 // Define if the 'is_video_recording()' function works 66 67 #define CAM_HAS_JOGDIAL 1 68 #undef CAM_USE_ZOOM_FOR_MF 69 70 #undef CAM_UNCACHED_BIT 71 #define CAM_UNCACHED_BIT 0x40000000 72 73 // default 74 // #define CAM_CIRCLE_OF_CONFUSION 5 // CoC value for camera/sensor (see http://www.dofmaster.com/digital_coc.html) 75 76 #define CAM_DNG_LENS_INFO { 45,10,1350,10,32,10,69,10 } 77 #define cam_CFAPattern 0x02010100 78 79 // TODO C&P form sx60hs 80 #define cam_CalibrationIlluminant1 17 81 82 #define CAM_COLORMATRIX1 \ 83 15686, 10000, -8326, 10000, -246, 10000, \ 84 -1888, 10000, 10463, 10000, 1645, 10000, \ 85 286, 10000, 708, 10000, 6145, 10000 86 87 #define cam_CalibrationIlluminant2 21 // D65 88 89 #define CAM_COLORMATRIX2 \ 90 13161, 10000, -5451, 10000, -1344, 10000, \ 91 -1989, 10000, 10654, 10000, 1531, 10000, \ 92 -47, 10000, 1271, 10000, 4955, 10000 93 #define CAM_FORWARDMATRIX1 \ 94 3002, 10000, 3390, 10000, 3251, 10000, \ 95 1080, 10000, 6247, 10000, 2674, 10000, \ 96 341, 10000, 42, 10000, 7868, 10000 97 98 #define CAM_FORWARDMATRIX2 \ 99 3678, 10000, 4352, 10000, 1613, 10000, \ 100 1429, 10000, 8091, 10000, 480, 10000, \ 101 577, 10000, 26, 10000, 7648, 10000 102 103 #define CAM_RAW_ROWPIX 5344 104 #define CAM_RAW_ROWS 3950 105 106 #define CAM_JPEG_WIDTH 5184 107 #define CAM_JPEG_HEIGHT 3888 108 109 #define CAM_ACTIVE_AREA_X1 96 // normal level at 120 110 #define CAM_ACTIVE_AREA_Y1 18 // visible pixels start at 17, 18 to keep even, normal level at 22 111 #define CAM_ACTIVE_AREA_X2 5344 // active area extends to right 112 #define CAM_ACTIVE_AREA_Y2 3950 // active area extends to bottom of image 113 114 #define PARAM_CAMERA_NAME 3 115 116 // found by calling GetImageFolder with single bits sets 117 #define CAM_DATE_FOLDER_NAMING 0x80 118 119 #define CAM_FILE_COUNTER_IS_VAR 1 // file counter is variable file_counter_var in stubs, not a param 120 121 #undef CAM_SENSOR_BITS_PER_PIXEL 122 #define CAM_SENSOR_BITS_PER_PIXEL 12 123 124 #define CAM_EXT_TV_RANGE 1 // up to 1024s appears to be supported natively in firmware, exp_drv required for short exposure 125 126 #undef CAM_EXT_AV_RANGE 127 // up to APEX 864 F22.6 at max zoom, 657 F 10 at wide 128 #define CAM_EXT_AV_RANGE 9 // Number of 1/3 stop increments to extend the Av range beyond the Canon default smallest aperture 129 130 #define CAM_SHOW_OSD_IN_SHOOT_MENU 1 131 132 #define DRAW_ON_ACTIVE_BITMAP_BUFFER_ONLY 1 // Draw pixels on active bitmap buffer only. 133 134 // seems to be 640x480 135 #undef CAM_BITMAP_WIDTH 136 #undef CAM_BITMAP_HEIGHT 137 #undef CAM_SCREEN_WIDTH 138 #undef CAM_SCREEN_HEIGHT 139 #define CAM_BITMAP_WIDTH 640 // Actual width of bitmap screen in <s>bytes</s> pixels 140 #define CAM_BITMAP_HEIGHT 480 // Actual height of bitmap screen in rows 141 #define CAM_SCREEN_WIDTH 640 // Width of bitmap screen in CHDK co-ordinates (360 or 480 pre digic 6, actual width for digic 6) 142 #define CAM_SCREEN_HEIGHT 480 // Height of bitmap screen in CHDK co-ordinates (always 240 pre digic 6, actual height for digic 6) 143 #define CAM_SUPPORT_BITMAP_RES_CHANGE 1 144 145 146 // TODO 147 #undef EDGE_HMARGIN 148 #define EDGE_HMARGIN 10 149 150 #define CAM_HAS_FILEWRITETASK_HOOK 1 151 // doesn't appear to use complicated multi pass or seek in normal cases 152 //#define CAM_FILEWRITETASK_SEEKS 1 153 154 #undef CAM_BITMAP_PALETTE 155 #define CAM_BITMAP_PALETTE 100 156 157 #define CAM_ZEBRA_NOBUF 1 158 159 #undef CAMERA_MIN_DIST 160 #define CAMERA_MIN_DIST 10 // Override min subject distance, min get_focus() value using MF 161 #undef CAMERA_MAX_DIST 162 #define CAMERA_MAX_DIST 1562414 // Override max subject distance, max get_focus() value at max zoom using MF before it goes to -1 163 164 //#define CAM_CHDK_HAS_EXT_VIDEO_TIME 1 165 166 #undef CAM_USB_EVENTID 167 #define CAM_USB_EVENTID 0x202 // Levent ID for USB control. Changed in DryOS R49, R50 so needs to be overridable. 168 169 // #define CAM_HAS_MOVIE_DIGEST_MODE 1 170 171 // TODO - haven't checked default values 172 #define CAM_NEED_SET_ZOOM_DELAY 300 173 174 #define MKDIR_RETURN_ONE_ON_SUCCESS 1 // mkdir() return 1 on success, 0 on fail. 175 176 #undef REMOTE_SYNC_STATUS_LED 177 // #define REMOTE_SYNC_STATUS_LED 0xC022C30C // TODO specifies an LED that turns on while camera waits for USB remote to sync 178 #define CAM_REMOTE_HDMI_HPD 1 // Camera supports using HDMI hotplug detect for remote signal 179 #define CAM_REMOTE_HDMI_POWER_OVERRIDE 1 // Camera requires HDMI power to be forced on in rec mode 180 #define CAM_REMOTE_ANALOG_AV 1 // Camera supports analog AV detect for remote signal 181 #define CAM_REMOTE_AtoD_CHANNEL 3 // Camera supports using 3rd battery terminal as well as USB for remote - value = A/D channel to poll 182 // sx710 - Open circuit = ~4090, 10k ohm = ~1380?, 3.5k = ~600 (56C as bat temp) 183 #undef CAM_REMOTE_AtoD_THRESHOLD 184 #define CAM_REMOTE_AtoD_THRESHOLD 800 // 3rd battery terminal A/D reading threshold ( lower = 1, higher = 0 ) 185 186 // camera crashes if sd override used in AF 187 // #define CAM_SD_OVER_IN_AF 1 188 #define CAM_SD_OVER_IN_AFL 1 189 #define CAM_SD_OVER_IN_MF 1 190 191 // AF led, for MD test code 192 #undef CAM_AF_LED 193 #define CAM_AF_LED 1 194 195 #define CAM_HAS_WIFI 1 // Camera has wifi support 196 197 //--------------------------------------------------