1 // Camera - sx610hs - platform_camera.h 2 3 // This file contains the various settings values specific to the sx610hs 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 #define CAM_DRYOS 1 25 #define CAM_DRYOS_2_3_R39 1 // Defined for cameras with DryOS version R39 or higher 26 #define CAM_DRYOS_2_3_R47 1 // Defined for cameras with DryOS version R47 or higher 27 28 29 #define CAM_RAW_ROWPIX 5344 30 #define CAM_RAW_ROWS 3950 31 32 #define CAM_JPEG_WIDTH 5184 //Canon spec. 33 #define CAM_JPEG_HEIGHT 3888 34 35 #define CAM_ACTIVE_AREA_X1 120 36 #define CAM_ACTIVE_AREA_Y1 16 37 #define CAM_ACTIVE_AREA_X2 5344 // active all the way to the edge 38 #define CAM_ACTIVE_AREA_Y2 3950 // active all the way to the bottom 39 40 #undef CAM_UNCACHED_BIT 41 #define CAM_UNCACHED_BIT 0x40000000 42 43 #undef CAM_SENSOR_BITS_PER_PIXEL 44 #define CAM_SENSOR_BITS_PER_PIXEL 12 45 46 #undef CAM_HAS_CMOS 47 #define CAM_HAS_CMOS 1 48 49 #define CAM_DNG_LENS_INFO { 45,10, 810, 10, 38,10, 69, 10 } // See comments in camera.h 50 51 #define cam_CFAPattern 0x02010100 // Red Green Green Blue 52 53 54 // TODO C&P from D10 55 #define CAM_COLORMATRIX1 \ 56 14052, 10000, -5229, 10000, -1156, 10000, \ 57 -1325, 10000, 9420, 10000, 2252, 10000, \ 58 -498, 10000, 1957, 10000, 4116, 10000 59 #define cam_CalibrationIlluminant1 21 // D65 60 61 #undef CAM_HAS_IRIS_DIAPHRAGM 62 #undef CAM_HAS_DISP_BUTTON 63 #undef CAM_USE_ZOOM_FOR_MF 64 #undef CAM_HAS_MANUAL_FOCUS 65 #undef CAM_HAS_ERASE_BUTTON 66 67 #define CAM_HAS_ND_FILTER 1 68 69 #define CAM_HAS_VIDEO_BUTTON 1 70 #define CAM_HAS_MOVIE_DIGEST_MODE 1 // camera doesn't actually have digest mode, this is needed by is_video_recording 71 // #define CAM_IS_VID_REC_WORKS 1 // is_video_recording() function works 72 #undef CAM_IS_VID_REC_WORKS 73 74 #undef CAM_VIDEO_CONTROL 75 #undef CAM_CHDK_HAS_EXT_VIDEO_MENU 76 77 // #define CAM_AF_SCAN_DURING_VIDEO_RECORD 1 78 79 #undef CAM_CAN_UNLOCK_OPTICAL_ZOOM_IN_VIDEO // unlocked in canon firmware by default 80 81 // MakeDirectory_Fut not found, using mkdir 82 #define MKDIR_RETURN_ONE_ON_SUCCESS 83 84 //aspect correction 85 #undef CAM_USES_ASPECT_CORRECTION 86 #define CAM_USES_ASPECT_CORRECTION 1 87 #undef CAM_BITMAP_WIDTH 88 #define CAM_BITMAP_WIDTH 960 // Actual width of bitmap screen in bytes 89 #undef CAM_BITMAP_HEIGHT 90 #define CAM_BITMAP_HEIGHT 270 91 92 #define CAM_ADJUSTABLE_ALT_BUTTON 1 93 94 #define CAM_ALT_BUTTON_NAMES { "Playback", "Video", "Wifi" } 95 #define CAM_ALT_BUTTON_OPTIONS { KEY_PLAYBACK, KEY_VIDEO, KEY_WIFI } 96 97 #undef CAM_USB_EVENTID 98 #define CAM_USB_EVENTID 0x202 // Levent ID for USB control. Changed in DryOS R49 so needs to be overridable. 99 100 101 #define CAM_DATE_FOLDER_NAMING 0x080 102 103 #define PARAM_CAMERA_NAME 3 104 105 #define CAM_FILE_COUNTER_IS_VAR 1 // file counter is variable file_counter_var in stubs, not a param 106 107 #define CAM_HAS_FILEWRITETASK_HOOK 1 // FileWriteTask hook is available (local file write can be prevented) 108 // doesn't appear to use complicated multi pass or seek in normal cases (based on similarity to elph180) 109 // #define CAM_FILEWRITETASK_SEEKS 1 // Camera's FileWriteTask can do Lseek() - DryOS r50 or higher, the define could also be CAM_DRYOS_2_3_R50 110 111 #define CAM_NEED_SET_ZOOM_DELAY 500 // Define to add a delay after setting the zoom position 112 113 // only non-AF led available 114 // #define REMOTE_SYNC_STATUS_LED 0xC022302C // specifies an LED that turns on while camera waits for USB remote to sync 115 116 #undef CAM_AF_LED 117 #define CAM_AF_LED 1 118 119 #undef CAM_KEY_PRESS_DELAY 120 #define CAM_KEY_PRESS_DELAY 60 // delay after a press - Required by zoom_in/zoom_out buttons 121 122 123 #define CAM_SD_OVER_IN_AF 1 124 #define CAM_SD_OVER_IN_AFL 1 125 #define CAM_SD_OVER_IN_MF 1 126 127 #define DRAW_ON_ACTIVE_BITMAP_BUFFER_ONLY 1 128 129 #define CAM_3ARG_DebugAssert 1 130 131 #define CAM_HAS_WIFI 1 // Camera has wifi support 132 133 //---------------------------------------------------------- 134 #undef CAM_DEFAULT_MENU_CURSOR_BG 135 #undef CAM_DEFAULT_MENU_CURSOR_FG 136 #define CAM_DEFAULT_MENU_CURSOR_BG IDX_COLOR_RED // Override menu cursor colors 137 #define CAM_DEFAULT_MENU_CURSOR_FG IDX_COLOR_WHITE // Override menu cursor colors