| 1 | // Camera - A3300 - platform_camera.h |
|---|
| 2 | |
|---|
| 3 | // This file contains the various settings values specific to the A3300 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 | // Sure values |
|---|
| 24 | // |
|---|
| 25 | #define CAM_DRYOS 1 |
|---|
| 26 | #define CAM_PROPSET 4 |
|---|
| 27 | #define CAM_DRYOS_2_3_R39 1 |
|---|
| 28 | #define CAM_DRYOS_2_3_R47 1 |
|---|
| 29 | |
|---|
| 30 | #define CAM_RAW_ROWPIX 4704 // Found @0xFFB213A0 a3300is |
|---|
| 31 | #define CAM_RAW_ROWS 3504 // Found @0xFFB21398 a3300is |
|---|
| 32 | |
|---|
| 33 | #define CAM_ADJUSTABLE_ALT_BUTTON 1 |
|---|
| 34 | #define CAM_ALT_BUTTON_NAMES { "Print", "Face", "Disp"} |
|---|
| 35 | #define CAM_ALT_BUTTON_OPTIONS { KEY_PRINT, KEY_FACE, KEY_DISPLAY } |
|---|
| 36 | |
|---|
| 37 | #undef CAM_UNCACHED_BIT |
|---|
| 38 | #define CAM_UNCACHED_BIT 0x40000000 // Found @0xff83a6a8 a3300is |
|---|
| 39 | |
|---|
| 40 | #define CAM_JPEG_WIDTH 4608 // a3300is @FFB213A0 |
|---|
| 41 | #define CAM_JPEG_HEIGHT 3456 // a3300is @FFB213A8 |
|---|
| 42 | |
|---|
| 43 | #define CAM_ACTIVE_AREA_X1 16 |
|---|
| 44 | #define CAM_ACTIVE_AREA_Y1 26 |
|---|
| 45 | #define CAM_ACTIVE_AREA_X2 4640 |
|---|
| 46 | #define CAM_ACTIVE_AREA_Y2 3486 |
|---|
| 47 | |
|---|
| 48 | #define DNG_VERT_RLE_BADPIXELS 1 |
|---|
| 49 | #define CAM_DNG_LENS_INFO { 50,10, 250,10, 28,10, 59,10 } // See comments in camera.h a3300is |
|---|
| 50 | |
|---|
| 51 | #undef CAM_SENSOR_BITS_PER_PIXEL |
|---|
| 52 | #define CAM_SENSOR_BITS_PER_PIXEL 12 |
|---|
| 53 | |
|---|
| 54 | #define cam_CFAPattern 0x02010100 // Red Green Green Blue |
|---|
| 55 | |
|---|
| 56 | #define CAM_COLORMATRIX1 \ |
|---|
| 57 | 827547, 1000000, -290458, 1000000, -126086, 1000000, \ |
|---|
| 58 | -12829, 1000000, 530507, 1000000, 50537, 1000000, \ |
|---|
| 59 | 5181, 1000000, 48183, 1000000, 245014, 1000000 |
|---|
| 60 | |
|---|
| 61 | #define cam_CalibrationIlluminant1 1 // Daylight |
|---|
| 62 | |
|---|
| 63 | #undef CAM_USES_ASPECT_CORRECTION |
|---|
| 64 | #define CAM_USES_ASPECT_CORRECTION 1 //camera uses the modified graphics primitives to map screens an viewports to buffers more sized |
|---|
| 65 | |
|---|
| 66 | #undef CAM_BITMAP_WIDTH |
|---|
| 67 | #define CAM_BITMAP_WIDTH 720 // Actual width of bitmap screen in bytes |
|---|
| 68 | |
|---|
| 69 | #define CAM_QUALITY_OVERRIDE 1 |
|---|
| 70 | |
|---|
| 71 | #define CAM_ZEBRA_NOBUF 1 |
|---|
| 72 | |
|---|
| 73 | #define PARAM_CAMERA_NAME 4 // parameter number for GetParameterData |
|---|
| 74 | |
|---|
| 75 | #undef CAM_HAS_ERASE_BUTTON |
|---|
| 76 | |
|---|
| 77 | #define CAM_HAS_ND_FILTER 1 |
|---|
| 78 | |
|---|
| 79 | #define CAM_VIDEO_QUALITY_ONLY 1 |
|---|
| 80 | #define CAM_AF_SCAN_DURING_VIDEO_RECORD 1 |
|---|
| 81 | #define CAM_CAN_MUTE_MICROPHONE 1 |
|---|
| 82 | |
|---|
| 83 | #define CAM_DATE_FOLDER_NAMING 1 |
|---|
| 84 | |
|---|
| 85 | #define CAM_STARTUP_CRASH_FILE_OPEN_FIX 1 |
|---|
| 86 | |
|---|
| 87 | #define CAM_DRIVE_MODE_FROM_TIMER_MODE 1 |
|---|
| 88 | |
|---|
| 89 | #undef CAM_HAS_MANUAL_FOCUS |
|---|
| 90 | #undef CAM_VIDEO_CONTROL |
|---|
| 91 | |
|---|
| 92 | #undef CAM_BITMAP_PALETTE |
|---|
| 93 | #define CAM_BITMAP_PALETTE 15 // palette number reserved for A3300 in core/gui_draw.h |
|---|
| 94 | |
|---|
| 95 | #define CHDK_COLOR_BASE 0xE2 // Start color index for CHDK colors loaded into camera palette. Kosy chose a place Canon doesn't seem to use. |
|---|
| 96 | #define CAM_LOAD_CUSTOM_COLORS 1 // Enable loading CHDK colors into the camera palette memory/hardware |
|---|
| 97 | |
|---|
| 98 | // Define shortcut overrides where defaults are not suitable |
|---|
| 99 | // a3300 has no erase button, so make DISP button the toggle_raw and Alt +/- shortcuts. |
|---|
| 100 | //Alt mode |
|---|
| 101 | // NOTE both of these conflict with adjustable alt |
|---|
| 102 | #define SHORTCUT_TOGGLE_RAW KEY_DISPLAY |
|---|
| 103 | #define SHORTCUT_MF_TOGGLE KEY_FACE |
|---|