root/platform/sx170is/platform_camera.h

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

INCLUDED FROM


   1 // Camera - SX170IS - platform_camera.h
   2 
   3 // This file contains the various settings values specific to the SX170IS 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                     6
  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     #undef  CAM_CIRCLE_OF_CONFUSION
  29     #define CAM_CIRCLE_OF_CONFUSION         6   // CoC value for camera/sensor (see http://www.dofmaster.com/digital_coc.html)
  30 
  31     #define CAM_RAW_ROWPIX                  4704    // Found @0xff959c2c
  32     #define CAM_RAW_ROWS                    3504    // Found @0xff959c38
  33 
  34     #define CAM_JPEG_WIDTH                  4608    //To do
  35     #define CAM_JPEG_HEIGHT                 3456    //To do
  36 
  37     #define CAM_ACTIVE_AREA_X1              16      //To do
  38     #define CAM_ACTIVE_AREA_Y1              26      //To do
  39     #define CAM_ACTIVE_AREA_X2              4640    //To do
  40     #define CAM_ACTIVE_AREA_Y2              3486    //To do
  41 
  42     #undef  CAM_UNCACHED_BIT
  43     #define CAM_UNCACHED_BIT          0x40000000    // Found @0xff815f04
  44 
  45     #undef  CAM_SENSOR_BITS_PER_PIXEL
  46     #define CAM_SENSOR_BITS_PER_PIXEL       12
  47 
  48     #define CAM_DNG_LENS_INFO               { 50,10, 800,10, 35,10, 59,10 } // See comments in camera.h
  49 
  50     #define cam_CFAPattern                  0x01000201   // [Green Blue Red Green]
  51 
  52     // TODO C&P from D10
  53     #define CAM_COLORMATRIX1                             \
  54     827547, 1000000, -290458, 1000000, -126086, 1000000, \
  55     -12829, 1000000,  530507, 1000000,   50537, 1000000, \
  56       5181, 1000000,   48183, 1000000,  245014, 1000000
  57     #define cam_CalibrationIlluminant1      1       // Daylight
  58 
  59     #undef  CAM_USE_ZOOM_FOR_MF
  60 
  61     #define CAM_HAS_VIDEO_BUTTON                1
  62     #define CAM_HAS_MOVIE_DIGEST_MODE           1   // camera doesn't actually have digest mode, this is needed by is_video_recording
  63     #define CAM_IS_VID_REC_WORKS                1   // is_video_recording() function works
  64 
  65     #define  CAM_EXT_TV_RANGE                   1    // CHDK can make exposure time longer than 64s
  66 
  67     #undef  CAM_VIDEO_CONTROL
  68 // not working
  69     #undef CAM_CHDK_HAS_EXT_VIDEO_MENU
  70 //    #define CAM_VIDEO_QUALITY_ONLY            1
  71 //    #define CAM_CHDK_HAS_EXT_VIDEO_MENU       1
  72 
  73     // MakeDirectory_Fut not found, using mkdir
  74     #define MKDIR_RETURN_ONE_ON_SUCCESS
  75 
  76     //aspect correction
  77     #undef  CAM_USES_ASPECT_CORRECTION
  78     #define CAM_USES_ASPECT_CORRECTION              1   //camera uses the modified graphics primitives to map screens an viewports to buffers more sized
  79     #undef CAM_BITMAP_WIDTH
  80     #define CAM_BITMAP_WIDTH                      720   // Actual width of bitmap screen in bytes
  81 
  82     #define CAM_LOAD_CUSTOM_COLORS                  1   // Enable loading CHDK colors into the camera palette memory/hardware
  83 
  84     #define CAM_HAS_JOGDIAL                         1
  85     #define CAM_ADJUSTABLE_ALT_BUTTON               1
  86     #define CAM_ALT_BUTTON_NAMES                    { "Playback", "Disp", "Video" }
  87     #define CAM_ALT_BUTTON_OPTIONS                  { KEY_PLAYBACK, KEY_DISPLAY, KEY_VIDEO }
  88 
  89     // TODO
  90     #undef  CAM_USB_EVENTID
  91     #define CAM_USB_EVENTID                         0x202 // Levent ID for USB control. Changed in DryOS R49 so needs to be overridable.
  92 
  93     // TODO
  94     #define CAM_DATE_FOLDER_NAMING                  0x400
  95 
  96     #define PARAM_CAMERA_NAME                       3 // parameter number for GetParameterData
  97 
  98     #define CAM_FILE_COUNTER_IS_VAR                 1 // file counter is variable file_counter_var in stubs, not a param
  99 
 100     #define  CAM_HAS_FILEWRITETASK_HOOK             1 // FileWriteTask hook is available (local file write can be prevented)
 101     #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
 102 
 103     #define CAM_HAS_ZOOM_LEVER                      1 // Camera has dedicated zoom buttons
 104     #define CAM_NEED_SET_ZOOM_DELAY                 300 // Define to add a delay after setting the zoom position
 105     #define CAM_USE_OPTICAL_MAX_ZOOM_STATUS         1 // Use ZOOM_OPTICAL_MAX to reset zoom_status when switching from digital to optical zoom
 106 
 107 //To do
 108 //  #define REMOTE_SYNC_STATUS_LED  0xC0220130???     // specifies an LED that turns on while camera waits for USB remote to sync
 109 
 110     #undef  CAM_AF_LED
 111     #define CAM_AF_LED                          1   // Index of AF led in camera_set_led function
 112 
 113     #undef  CAM_KEY_PRESS_DELAY
 114     #define CAM_KEY_PRESS_DELAY                     120  // delay after a press - Required by zoom_in/zoom_out buttons
 115 
 116     #define CAM_SD_OVER_IN_AF                       1
 117     #define CAM_SD_OVER_IN_AFL                      1
 118     #define CAM_SD_OVER_IN_MF                       1
 119 
 120     #define  DRAW_ON_ACTIVE_BITMAP_BUFFER_ONLY      1
 121     
 122     #define CAM_DRIVE_MODE_FROM_TIMER_MODE          1
 123 
 124     #define CAM_3ARG_DebugAssert                1   // DebugAssert takes 3 arguments
 125 
 126 //----------------------------------------------------------

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