1 // Camera - IXUS300_SD4000 - platform_camera.h 2 3 // This file contains the various settings values specific to the IXUS300_SD4000 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 3 24 #define CAM_DRYOS 1 25 #define CAM_DRYOS_2_3_R39 1 // ROM:FFB5E1C0, actually its DRYOS version 2.3, release #0043 26 27 #define CAM_HAS_CMOS 1 28 29 #undef CAM_UNCACHED_BIT // shut up compiler 30 #define CAM_UNCACHED_BIT 0x40000000 // ROM:FF88A248 via ExMem.FreeCacheable() 31 32 #undef CAM_HAS_ERASE_BUTTON 33 34 #define CAM_HAS_ND_FILTER 1 35 36 #undef CAM_HAS_MANUAL_FOCUS 37 38 #undef CAM_CAN_UNLOCK_OPTICAL_ZOOM_IN_VIDEO // canon firmware allow optical zoom while recording movie 39 40 #define CAM_VIDEO_QUALITY_ONLY 1 // ToDo: Video Bitrate override cause crash 41 #define CAM_HAS_JOGDIAL 1 42 #define CAM_FEATURE_FEATHER 1 43 #define CAM_MULTIPART 1 44 #define CAM_DATE_FOLDER_NAMING 0x100 45 46 #undef CAM_DEFAULT_ALT_BUTTON 47 #define CAM_DEFAULT_ALT_BUTTON KEY_PLAYBACK // alt button for cameras without adjustable alt 48 #undef CAM_HAS_DISP_BUTTON 49 #undef CAM_KEY_PRESS_DELAY 50 #define CAM_KEY_PRESS_DELAY 100 // delay after a press 51 52 #undef DNG_BADPIXEL_VALUE_LIMIT 53 #define DNG_BADPIXEL_VALUE_LIMIT 16 // Camera sensor apparently has bad pixels with value > 0 & <=16 54 55 #define CAM_DNG_LENS_INFO { 49,10, 186,10, 20,10, 53,10 } // See comments in camera.h 56 #define cam_CFAPattern 0x02010100 // Red Green Green Blue, OK 57 58 #define CAM_COLORMATRIX1 \ 59 640019, 1000000, -220031, 1000000, -96241, 1000000, \ 60 -77419, 1000000, 639766, 1000000, 44009, 1000000, \ 61 17965, 1000000, 78396, 1000000, 231868, 1000000 62 63 #define cam_CalibrationIlluminant1 1 // Daylight 64 65 #define CAM_RAW_ROWPIX 3816 // ROM:FFB28EEC 66 #define CAM_RAW_ROWS 2784 // ROM:FFB28EF4 67 68 #define CAM_JPEG_WIDTH 3648 // JPEG Exif data or ROM:FFB28EFC 69 #define CAM_JPEG_HEIGHT 2736 // JPEG Exif data or ROM:FFB28F04 70 71 #define CAM_ACTIVE_AREA_X1 120 // x offset (right) 72 #define CAM_ACTIVE_AREA_Y1 24 // y offset (down) 73 #define CAM_ACTIVE_AREA_X2 3784 74 #define CAM_ACTIVE_AREA_Y2 2764 75 76 #undef CAM_SENSOR_BITS_PER_PIXEL 77 #define CAM_SENSOR_BITS_PER_PIXEL 12 78 79 #define PARAM_CAMERA_NAME 4 // parameter number (index) for GetParameterData to get Camera Name 80 81 #define CAM_LOAD_CUSTOM_COLORS 1 // Enable loading CHDK colors into the camera palette memory/hardware 82 83 #undef CAM_USES_ASPECT_CORRECTION 84 #define CAM_USES_ASPECT_CORRECTION 1 // camera uses the modified graphics primitives to map screens an viewports to buffers more sized 85 #undef CAM_SCREEN_WIDTH 86 #undef CAM_BITMAP_WIDTH 87 #undef CAM_BITMAP_HEIGHT 88 #define CAM_SCREEN_WIDTH 480 // Width of bitmap screen in CHDK co-ordinates 89 #define CAM_BITMAP_WIDTH 960 // Actual width of bitmap screen in bytes 90 #define CAM_BITMAP_HEIGHT 270 // Actual height of bitmap screen in rows 91 92 #define REMOTE_SYNC_STATUS_LED 0xc0220134 // specifies an LED that turns on while camera waits for USB remote to sync 93 94 #define CAM_DRIVE_MODE_FROM_TIMER_MODE 1 // use PROPCASE_TIMER_MODE to check for multiple shot custom timer. 95 96 #define CAM_QUALITY_OVERRIDE 1 // enable 'super fine' override 97 98 #undef CAM_SD_OVER_IN_AF // crashes trying to use Subject Distance Overrides if MF or AFL not set 99 #define CAM_SD_OVER_IN_AFL 1 // 100 #define CAM_SD_OVER_IN_MF 1 // 101 102 #undef CAM_AF_LED 103 #define CAM_AF_LED 2 // index of AF led in camera_set_led function 104 105 #define CAM_NEED_SET_ZOOM_DELAY 300 // Define to add a delay after setting the zoom position 106 107 #define CAM_MIN_ISO_OVERRIDE (125+1) // Defines min market (non-zero) ISO override value - lower value may crash if flash used [0 = AUTO, so always allowed] (+1 due to rounding issues) 108 109 #define CAM_HAS_FILEWRITETASK_HOOK 1 110 111 //--------------------------------------------------