1 // Camera - SX40HS - platform_camera.h 2 3 // This file contains the various settings values specific to the SX40HS 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 #define CAM_DRYOS_2_3_R47 1 27 28 #define DRAW_ON_ACTIVE_BITMAP_BUFFER_ONLY 1 // Draw pixels on active bitmap buffer only. 29 30 #undef CAM_AF_LED 31 #define CAM_AF_LED 1 // Index of AF led in camera_set_led function 32 33 #undef CAM_UNCACHED_BIT 34 #define CAM_UNCACHED_BIT 0x40000000 // Found @0xff02bea8 35 36 #define CAM_SWIVEL_SCREEN 1 37 #define CAM_ADJUSTABLE_ALT_BUTTON 1 38 #define CAM_ALT_BUTTON_NAMES { "Shrtcut", "Flash", "Video"} 39 #define CAM_ALT_BUTTON_OPTIONS { KEY_PRINT, KEY_FLASH, KEY_VIDEO } 40 #undef CAM_CAN_UNLOCK_OPTICAL_ZOOM_IN_VIDEO 41 #define CAM_HAS_VIDEO_BUTTON 1 42 #define CAM_VIDEO_QUALITY_ONLY 1 43 #define CAM_BRACKETING 1 44 #undef CAM_VIDEO_CONTROL 45 #define CAM_HAS_JOGDIAL 1 46 #undef CAM_USE_ZOOM_FOR_MF 47 #define CAM_SHOW_OSD_IN_SHOOT_MENU 1 48 49 #undef DEFAULT_RAW_EXT 50 #define DEFAULT_RAW_EXT 2 // use .CR2 51 #define CAM_ISO_LIMIT_IN_HQ_BURST 1420// Defines max market ISO override value for HQ Burst mode (higher values crash camera) 52 #define CAM_MIN_ISO_OVERRIDE 100 // Defines min market (non-zero) ISO override value (equvalent to market ISO 100) 53 // - lower value may crash if flash used [0 = AUTO, so always allowed] 54 55 // bayer sensor pattern 56 #define cam_CFAPattern 0x02010100 // Red Green Green Blue 57 58 #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) 59 60 #define CAM_DNG_LENS_INFO { 43,10, 1505,10, 27,10, 58,10 } // See comments in camera.h 61 62 //need fixing ***************************************************** 63 #define cam_CalibrationIlluminant1 1 64 #define CAM_COLORMATRIX1 \ 65 544808, 100000, -174047, 100000, -80399, 100000, \ 66 -75055, 100000, 440444, 100000, 11367, 100000, \ 67 -5801, 100000, 71589, 100000, 118914, 100000 68 69 // Sensor size, DNG image size & cropping 70 #define CAM_RAW_ROWPIX 4176 // Found @0xff18e050 71 #define CAM_RAW_ROWS 3060 // Found @0xff18e05c 72 #define CAM_JPEG_WIDTH 4000 73 #define CAM_JPEG_HEIGHT 3000 74 #define CAM_ACTIVE_AREA_X1 96 75 #define CAM_ACTIVE_AREA_Y1 16 76 #define CAM_ACTIVE_AREA_X2 4168 77 #define CAM_ACTIVE_AREA_Y2 3060 78 79 // camera name 80 #define PARAM_CAMERA_NAME 4 // parameter number for GetParameterData - Camera Model name 81 #define PARAM_OWNER_NAME 7 // parameter number for GetParameterData - Owner name 82 #define PARAM_DISPLAY_MODE1 59 // param number for LCD display mode when camera in playback 83 #define PARAM_DISPLAY_MODE2 62 // param number for LCD display mode when camera in record view hold mode 84 #undef CAM_SENSOR_BITS_PER_PIXEL 85 #define CAM_SENSOR_BITS_PER_PIXEL 12 86 87 #define CAM_QUALITY_OVERRIDE 1 88 89 // copied from the SX200 which has the same video buffer size 90 #undef CAM_USES_ASPECT_CORRECTION 91 #define CAM_USES_ASPECT_CORRECTION 1 //camera uses the modified graphics primitives to map screens an viewports to buffers more sized 92 #undef CAM_BITMAP_WIDTH 93 #undef CAM_BITMAP_HEIGHT 94 #define CAM_BITMAP_WIDTH 960 // Actual width of bitmap screen in bytes 95 #define CAM_BITMAP_HEIGHT 270 // Actual height of bitmap screen in rows 96 97 #undef EDGE_HMARGIN 98 #define EDGE_HMARGIN 2 99 100 #define CAM_DATE_FOLDER_NAMING 0x400 101 102 #undef CAM_KEY_PRESS_DELAY 103 #define CAM_KEY_PRESS_DELAY 60 // delay after a press 104 105 #define CAM_DRIVE_MODE_FROM_TIMER_MODE 1 // use PROPCASE_TIMER_MODE to check for multiple shot custom timer. 106 // Used to enabled bracketing in custom timer, required on many recent cameras 107 // see http://chdk.setepontos.com/index.php/topic,3994.405.html 108 109 #define CAM_AV_OVERRIDE_IRIS_FIX 1 // for cameras that require _MoveIrisWithAv function to override Av in bracketing. 110 111 #define CAM_DISABLE_RAW_IN_LOW_LIGHT_MODE 1 // For cameras with 'low light' mode that does not work with raw define this 112 #define CAM_HAS_MOVIE_DIGEST_MODE 1 // Changes the values in the 'movie_status' variable if the camera has this mode 113 114 #define CAM_LOAD_CUSTOM_COLORS 1 // Enable loading CHDK colors into the camera palette memory/hardware 115 116 #undef CAM_USB_EVENTID 117 #define CAM_USB_EVENTID 0x202 // Levent ID for USB control. Changed in DryOS R49 so needs to be overridable. 118 119 // #define REMOTE_SYNC_STATUS_LED 0xC0xxyyyy // specifies an LED that turns on while camera waits for USB remote to sync 120 121 #define CAM_HAS_CMOS 1 122 123 #undef CAMERA_MIN_DIST 124 #define CAMERA_MIN_DIST 95 // Override min subject distance 125 #undef CAMERA_MAX_DIST 126 #define CAMERA_MAX_DIST 9523810 // Override max subject distance 127 128 #define CAM_ZOOM_ASSIST_BUTTON_CONTROL 1 // Activate the menu option to allow disabling the zoom assist button 129 130 #define CAM_HAS_SPORTS_MODE 1 // Camera has SPORTS mode, enable RAW exception override control 131 132 // Define shortcut overrides where defaults are not suitable 133 #define SHORTCUT_TOGGLE_ZEBRA KEY_ERASE // On camera Shutter Half Press + Up = switch MF on/off 134 135 #define CAM_HAS_FILEWRITETASK_HOOK 1 // file write hook for remote capture etc 136 137 #define CAM_SD_OVER_IN_AFL 1 138 #define CAM_SD_OVER_IN_MF 1 139 140 #define CAM_IS_VID_REC_WORKS 1 // is_video_recording() function works 141 142 //--------------------------------------------------