root/platform/n_facebook/platform_camera.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 
   2 // Camera - Powershot N Facebook - platform_camera.h
   3 
   4 // This file contains the various settings values specific to the PowerShot N Facebook camera.
   5 // This file is referenced via the 'include/camera.h' file and should not be loaded directly.
   6 
   7 // If adding a new settings value put a suitable default in 'include/camera.h',
   8 // along with documentation on what the setting does and how to determine the correct value.
   9 // If the setting should not have a default value then add it in 'include/camera.h'
  10 // using the '#undef' directive along with appropriate documentation.
  11 
  12 // Override any default values with your camera specific values in this file. Try and avoid
  13 // having override values that are the same as the default value.
  14 
  15 // When overriding a setting value there are two cases:
  16 // 1. If removing the value, because it does not apply to your camera, use the '#undef' directive.
  17 // 2. If changing the value it is best to use an '#undef' directive to remove the default value
  18 //    followed by a '#define' to set the new value.
  19 
  20 // When porting CHDK to a new camera, check the documentation in 'include/camera.h'
  21 // for information on each setting. If the default values are correct for your camera then
  22 // don't override them again in here.
  23 
  24     #define CAM_PROPSET                     6
  25     #define CAM_DRYOS                       1
  26     #define CAM_DRYOS_2_3_R39               1               // Defined for cameras with DryOS version R39 or higher
  27     #define CAM_DRYOS_2_3_R47               1               // Defined for cameras with DryOS version R47 or higher
  28 
  29     #define CAM_RAW_ROWPIX                  4176            // Found @0xff2016a4
  30     #define CAM_RAW_ROWS                    3062            // Found @0xff2016b0
  31     #undef  CAM_SENSOR_BITS_PER_PIXEL
  32     #define CAM_SENSOR_BITS_PER_PIXEL       12
  33 
  34     #undef  CAM_UNCACHED_BIT
  35     #define CAM_UNCACHED_BIT                0x40000000      // Found @0xff03a120
  36 
  37     #define CAM_JPEG_WIDTH                  4000            // from jpeg exif info
  38     #define CAM_JPEG_HEIGHT                 3000            //
  39 
  40     #define CAM_FILE_COUNTER_IS_VAR         1               // file counter is variable file_counter_var in stubs, not a param
  41     #define CAM_DATE_FOLDER_NAMING          0x080           // Found @0xff3a8a28 (pass as 3rd param to GetImageFolder)
  42 
  43     #undef  CAM_HAS_ERASE_BUTTON                            // No erase button
  44     #undef  CAM_HAS_MANUAL_FOCUS                            // No manual focus mode
  45     #define CAM_HAS_CMOS                    1
  46     #define CAM_HAS_ND_FILTER               1
  47     #undef  CAM_HAS_IRIS_DIAPHRAGM
  48 
  49     #undef  CAM_USES_ASPECT_CORRECTION
  50     #define CAM_USES_ASPECT_CORRECTION      1               // camera uses the modified graphics primitives to map screens and viewports to buffers more sized
  51     #define CAM_LOAD_CUSTOM_COLORS          1               // Enable loading CHDK colors into the camera palette memory/hardware
  52 
  53     #undef  CAM_BITMAP_WIDTH
  54     #define CAM_BITMAP_WIDTH                720             // Actual width of bitmap screen in bytes (may be larger than displayed area)
  55     #undef  EDGE_HMARGIN
  56     #define EDGE_HMARGIN                    1               // edge overlay margin
  57     #undef  CAM_MENU_BORDERWIDTH
  58     #define CAM_MENU_BORDERWIDTH            -3              // Need to leave this much border to avoid overlap with on screen buttons (added to CAM_TS_BUTTON_BORDER).
  59     #undef  CAM_TS_BUTTON_BORDER
  60     #define CAM_TS_BUTTON_BORDER            50              // 60  = Define this to leave a border on each side of the palette display.
  61     #undef  CAM_DISP_ALT_TEXT                               // Turn off <ALT> at bottom of screen in Alt mode - changes button color instead
  62     #define CAM_TOUCHSCREEN_UI              1               // Enable touch screen U/I
  63 
  64     #undef  CAM_EMUL_KEYPRESS_DELAY
  65     #define CAM_EMUL_KEYPRESS_DELAY         80              // Delay to interpret <alt>-button press as longpress
  66     #undef  CAM_EMUL_KEYPRESS_DURATION
  67     #define CAM_EMUL_KEYPRESS_DURATION      10
  68 
  69     #undef  MKDIR_RETURN_ONE_ON_SUCCESS                     // mkdir() return 1 on success, 0 on fail.
  70 
  71     #define PARAM_CAMERA_NAME               3               // parameter number for GetParameterData - Camera Model name
  72 
  73     #define CAM_HAS_FILEWRITETASK_HOOK      1
  74     #define CAM_FILEWRITETASK_SEEKS         1
  75     #define CAM_SHOW_OSD_IN_SHOOT_MENU      1
  76 
  77     #define CAM_ACTIVE_AREA_X1              92              // DNG stuff
  78     #define CAM_ACTIVE_AREA_Y1              14
  79     #define CAM_ACTIVE_AREA_X2              4160
  80     #define CAM_ACTIVE_AREA_Y2              3050
  81     #define cam_CFAPattern                  0x02010100      // bayer sensor pattern Red  Green  Green  Blue
  82     #define CAM_DNG_EXPOSURE_BIAS           0,1             // DNG exposure bias value to 0 (to override default of -0.5 in the dng.c code)
  83     #define CAM_DNG_LENS_INFO               { 28,10, 2240,10, 30,10, 59,10 } // See comments in camera.h
  84     #define cam_CalibrationIlluminant1      1
  85     #define CAM_COLORMATRIX1    \
  86     544808, 1000000, -174047, 1000000, -80399, 1000000, \
  87     -75055, 1000000, 440444, 1000000, 11367, 1000000, \
  88     -5801, 1000000, 71589, 1000000, 118914, 1000000
  89 
  90     #undef  CAM_USB_EVENTID
  91     #define CAM_USB_EVENTID                 0x202           // Levent ID for USB control. Changed in DryOS R49, R50 so needs to be overridable.
  92 
  93     #define CAM_SD_OVER_IN_AFL              1               // probably not going to work well
  94     #define CAM_SD_OVER_IN_MF               1               //
  95 
  96     #undef  CAM_GUI_FSELECT_SIZE
  97     #define CAM_GUI_FSELECT_SIZE            15, 6, 8       // use narrow columns in file select window gui
  98 
  99     #define CAM_IS_VID_REC_WORKS            1   // is_video_recording() function works
 100 
 101     #define CAM_HAS_WIFI                        1   // Camera has wifi support
 102 
 103     #undef  CAM_VIDEO_CONTROL
 104     #define CAM_HAS_VIDEO_BUTTON            1
 105     #undef  CAM_CHDK_HAS_EXT_VIDEO_MENU
 106 
 107     #undef CAM_AF_LED
 108     #define CAM_AF_LED                      1
 109 
 110 //------ Powershot N - fence for values checked as okay - stuff below here not checked yet ---------------
 111 
 112     #undef  CAM_USE_ZOOM_FOR_MF                             // not useful if cam does not have Canon MF mode - just changes focus mode
 113     #define CAM_NEED_SET_ZOOM_DELAY         300             // add a delay after setting the zoom position
 114 
 115     #define CAM_BRACKETING                  1               // allow disable of RAW saving in native Ev bracketing
 116     #define CAM_DRIVE_MODE_FROM_TIMER_MODE  1               // use PROPCASE_TIMER_MODE to check for multiple shot custom timer.
 117 
 118 //    #define CAM_VIDEO_QUALITY_ONLY          1
 119     #define CAM_HAS_MOVIE_DIGEST_MODE       1
 120     #undef  CAM_CAN_UNLOCK_OPTICAL_ZOOM_IN_VIDEO
 121     #undef  CAM_CHDK_HAS_EXT_VIDEO_TIME
 122 
 123 
 124 //--------------------------------------------------

/* [<][>][^][v][top][bottom][index][help] */