root/platform/ixus1000_sd4500/shooting.c

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

DEFINITIONS

This source file includes following definitions.
  1. get_file_next_counter
  2. get_target_file_num
  3. get_target_dir_name
  4. get_target_dir_num

   1 #include "lolevel.h"
   2 #include "platform.h"
   3 #include "core.h"
   4 #include "conf.h"
   5 #include "keyboard.h"
   6 //#define PARAM_FILE_COUNTER      0x02  // with 02 worked changin the script but??
   7 
   8 #define PARAM_FILE_COUNTER      0x3A
   9 
  10 #define PARAM_EXPOSURE_COUNTER  0x02
  11 
  12 //No zoom 3.1 3.5 4.0 4.5 5.0 5.6 6.3 7.1 8.0
  13 //maz zoom 5.9 7.1 8.0
  14  //ASM1989 sx210 values
  15 const ApertureSize aperture_sizes_table[] = {
  16         {  9, 343, "3.4" },
  17     { 10, 352, "3.5" },
  18         { 11, 384, "4.0" },
  19         { 12, 416, "4.5" },
  20         { 13, 448, "5.0" },
  21         { 14, 480, "5.6" },
  22         { 15, 512, "6.3" },
  23         { 16, 544, "7.1" },
  24         { 17, 576, "8.0" }
  25 };
  26 
  27 const ShutterSpeed shutter_speeds_table[] = {
  28         { -12, -384, "15", 15000000 },
  29         { -11, -352, "13", 13000000 },
  30         { -10, -320, "10", 10000000 },
  31         {  -9, -288, "8",   8000000 },
  32         {  -8, -256, "6",   6000000 },
  33         {  -7, -224, "5",   5000000 },
  34         {  -6, -192, "4",   4000000 },
  35         {  -5, -160, "3.2", 3200000 },
  36         {  -4, -128, "2.5", 2500000 },
  37         {  -3,  -96, "2",   2000000 },
  38         {  -2,  -64, "1.6", 1600000 },
  39         {  -1,  -32, "1.3", 1300000 },
  40         {   0,    0, "1",   1000000 },
  41         {   1,   32, "0.8",  800000 },
  42         {   2,   64, "0.6",  600000 },
  43         {   3,   96, "0.5",  500000 },
  44         {   4,  128, "0.4",  400000 },
  45         {   5,  160, "0.3",  300000 },
  46         {   6,  192, "1/4",  250000 },
  47         {   7,  224, "1/5",  200000 },
  48         {   8,  256, "1/6",  166667 },
  49         {   9,  288, "1/8",  125000 },
  50         {  10,  320, "1/10", 100000 },
  51         {  11,  352, "1/13",  76923 },
  52         {  12,  384, "1/15",  66667 },
  53         {  13,  416, "1/20",  50000 },
  54         {  14,  448, "1/25",  40000 },
  55         {  15,  480, "1/30",  33333 },
  56         {  16,  512, "1/40",  25000 },
  57         {  17,  544, "1/50",  20000 },
  58         {  18,  576, "1/60",  16667 },
  59         {  19,  608, "1/80",  12500 },
  60         {  20,  640, "1/100", 10000 },
  61         {  21,  672, "1/125",  8000 },
  62         {  22,  704, "1/160",  6250 },
  63         {  23,  736, "1/200",  5000 },
  64         {  24,  768, "1/250",  4000 },
  65         {  25,  800, "1/320",  3125 },
  66         {  26,  832, "1/400",  2500 },
  67         {  27,  864, "1/500",  2000 },
  68         {  28,  896, "1/640",  1563 },
  69         {  29,  928, "1/800",  1250 },
  70         {  30,  960, "1/1000", 1000 },
  71         {  31,  992, "1/1250",  800 },
  72         {  32, 1024, "1/1600",  625 },
  73         {  33, 1056, "1/2000",  500 },
  74         {  34, 1088, "1/2500",  400 },
  75         {  35, 1120, "1/3200",  313 },
  76 };
  77 
  78 
  79 //BerndR 11.03.10
  80 const ISOTable iso_table[] = {
  81    { -1,    1,   "HI", -1},
  82    {  0,    0, "Auto", -1},
  83    {  1,  125 , "125", -1},
  84    {  2,  200,  "200", -1},
  85    {  3,  400,  "400", -1},
  86    {  4,  800,  "800", -1},
  87    {  5, 1600, "1600", -1},
  88    {  6, 3200, "3200", -1},
  89 };
  90 
  91 /*
  92 http://www.usa.canon.com/cusa/consumer/products/cameras/digital_cameras/powershot_sd4500_is#Specifications
  93 Shooting Modes
  94 Auto, P, Portrait, Kids&Pets, Smart Shutter, High-speed Burst, Best Image Selection, Handheld Night Scene, Low Light, Super Vivid, Poster Effect, Color Accent, Color Swap, Fish-eye Effect, Miniature Effect, Beach, Foliage, Snow, Fireworks, Long Shutter, Stitch Assist, Movie
  95 */
  96 const CapturemodeMap modemap[] = {
  97     { MODE_AUTO,                32768  },
  98     { MODE_P,                   32772  },
  99     { MODE_PORTRAIT,            32783  },
 100     { MODE_KIDS_PETS,           32786  },
 101     { MODE_SMART_SHUTTER,       33321  },
 102     { MODE_FACE_SELF_TIMER,     33320  },
 103     { MODE_WINK_SELF_TIMER,     33322  },
 104     { MODE_HIGHSPEED_BURST,     33288  },
 105     { MODE_BEST_IMAGE,          33289  },
 106     { MODE_NIGHT_SCENE,         33325  }, // NOTE handheld night scene
 107     { MODE_LOWLIGHT,            32801  },
 108     { MODE_SUPER_VIVID,         33318  },
 109     { MODE_POSTER_EFFECT,       33319  },
 110     { MODE_COLOR_ACCENT,        33309  },
 111     { MODE_COLOR_SWAP,          33310  },
 112     { MODE_FISHEYE,             33323  },
 113     { MODE_MINIATURE,           33324  },
 114     { MODE_BEACH,               32791  },
 115     { MODE_FOLIAGE,             32789  },
 116     { MODE_SNOW,                32790  },
 117     { MODE_FIREWORK,            32792  },
 118     { MODE_LONG_SHUTTER,        32774  },
 119     { MODE_STITCH,              33292  },
 120     { MODE_VIDEO_STD,           2614  },
 121     { MODE_VIDEO_SUPER_SLOW,    2619  },
 122     { MODE_VIDEO_MINIATURE,     2620  },
 123     { MODE_VIDEO_COLOR_ACCENT,  2612  },
 124     { MODE_VIDEO_COLOR_SWAP,    2613  },
 125 };
 126 
 127 #include "../generic/shooting.c"
 128 
 129 long get_file_next_counter() {
 130         return get_file_counter();
 131 }
 132 
 133 long get_target_file_num() {
 134         long n;
 135 
 136 
 137         n = get_file_next_counter();
 138 
 139     n = (n>>4)&0x3FFF;
 140 
 141     //n+=22;
 142         return n;
 143 }
 144 /*
 145 long get_target_dir_num() {
 146         long n;
 147 
 148         n = get_file_next_counter();
 149 
 150         n = (n>>18)&0x3FF;
 151 
 152         //n+=22;
 153         //n=n/1000;
 154         //n+=101;
 155         return n;
 156 }*/
 157 
 158 
 159 #if defined(CAM_DATE_FOLDER_NAMING)
 160 // SX30 uses date to name directory
 161 void get_target_dir_name(char *out)
 162 {
 163         extern void _GetImageFolder(char*,int,int,int);
 164         out[0] = 'A';
 165         _GetImageFolder(out+1,get_file_next_counter(),CAM_DATE_FOLDER_NAMING,time(NULL));
 166 }
 167 #else
 168 long get_target_dir_num() {
 169         long n;
 170 
 171         n = get_file_next_counter();
 172         n = (n>>18)&0x3FF;
 173         return n;
 174 }
 175 #endif
 176 
 177 
 178 // not used ? -> CAM_DRAW_EXPOSITION
 179 /*
 180 char* shooting_get_tv_str()
 181 {
 182     short int tvv;
 183     long i;
 184     _GetPropertyCase(PROPCASE_TV, &tvv, sizeof(tvv));   // 262 for DiGiC III
 185     for (i=0;i<SS_SIZE;i++){
 186         if (shutter_speeds_table[i].prop_id >= tvv)
 187             return (char*)shutter_speeds_table[i].name;
 188     }
 189     return (void*)"?";
 190 }
 191 
 192 char* shooting_get_av_str()
 193 {
 194     short int avv;
 195     long i;
 196     _GetPropertyCase(PROPCASE_AV, &avv, sizeof(avv));   // 23 for DiGiC III
 197     for (i=0;i<AS_SIZE;i++){
 198         if (aperture_sizes_table[i].prop_id == avv)
 199             return (char*)aperture_sizes_table[i].name;
 200     }
 201     return (char*) "?";
 202 }
 203 
 204 char* shooting_get_iso_str()
 205 {
 206     short int isov;
 207     long i;
 208     _GetPropertyCase(PROPCASE_ISO_MODE, &isov, sizeof(isov));
 209     for (i=0;i<ISO_SIZE;i++){
 210    if (iso_table[i].prop_id == isov)
 211        return (char*)iso_table[i].name;
 212     }
 213     return (char*) "?";
 214 }
 215 
 216 */

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