root/platform/a650/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_num

   1 #define PARAM_FILE_COUNTER      0x38
   2 
   3 #include "platform.h"
   4 
   5 const ApertureSize aperture_sizes_table[] = {
   6     {  9, 288, "2.8" },
   7     { 10, 320, "3.2" },
   8     { 11, 352, "3.5" },
   9     { 12, 384, "4.0" },
  10     { 13, 416, "4.5" },
  11     { 14, 448, "5.0" },
  12     { 15, 480, "5.6" },
  13     { 16, 512, "6.3" },
  14     { 17, 544, "7.1" },
  15     { 18, 576, "8.0" },
  16 };
  17 
  18 const ShutterSpeed shutter_speeds_table[] = {
  19     { -12, -384, "15", 15000000 },
  20     { -11, -352, "13", 13000000 },
  21     { -10, -320, "10", 10000000 },
  22     {  -9, -288, "8",   8000000 },
  23     {  -8, -256, "6",   6000000 },
  24     {  -7, -224, "5",   5000000 },
  25     {  -6, -192, "4",   4000000 },
  26     {  -5, -160, "3.2", 3200000 },
  27     {  -4, -128, "2.5", 2500000 },
  28     {  -3,  -96, "2",   2000000 },
  29     {  -2,  -64, "1.6", 1600000 },
  30     {  -1,  -32, "1.3", 1300000 },
  31     {   0,    0, "1",   1000000 },
  32     {   1,   32, "0.8",  800000 },
  33     {   2,   64, "0.6",  600000 },
  34     {   3,   96, "0.5",  500000 },
  35     {   4,  128, "0.4",  400000 },
  36     {   5,  160, "0.3",  300000 },
  37     {   6,  192, "1/4",  250000 },
  38     {   7,  224, "1/5",  200000 },
  39     {   8,  256, "1/6",  166667 },
  40     {   9,  288, "1/8",  125000 },
  41     {  10,  320, "1/10", 100000 },
  42     {  11,  352, "1/13",  76923 },
  43     {  12,  384, "1/15",  66667 },
  44     {  13,  416, "1/20",  50000 },
  45     {  14,  448, "1/25",  40000 },
  46     {  15,  480, "1/30",  33333 },
  47     {  16,  512, "1/40",  25000 },
  48     {  17,  544, "1/50",  20000 },
  49     {  18,  576, "1/60",  16667 },
  50     {  19,  608, "1/80",  12500 },
  51     {  20,  640, "1/100", 10000 },
  52     {  21,  672, "1/125",  8000 },
  53     {  22,  704, "1/160",  6250 },
  54     {  23,  736, "1/200",  5000 },
  55     {  24,  768, "1/250",  4000 },
  56     {  25,  800, "1/320",  3125 },
  57     {  26,  832, "1/400",  2500 },
  58     {  27,  864, "1/500",  2000 },
  59     {  28,  896, "1/640",  1563 },
  60     {  29,  928, "1/800",  1250 },
  61     {  30,  960, "1/1000", 1000 },
  62     {  31,  992, "1/1250",  800 },
  63     {  32, 1024, "1/1600",  625 },
  64     {  33, 1056, "1/2000",  500 },
  65 };
  66 
  67 const ISOTable iso_table[] = {
  68     { -1,    1,   "HI", -1},
  69     {  0,    0, "Auto", -1},
  70     {  1,   80,   "80", -1},
  71     {  2,  100,  "100", -1},
  72     {  3,  200,  "200", -1},
  73     {  4,  400,  "400", -1},
  74     {  5,  800,  "800", -1},
  75     {  6, 1600, "1600", -1},
  76 };          
  77 
  78 /*
  79 http://www.usa.canon.com/consumer/controller?act=ModelInfoAct&fcategoryid=221&modelid=15658#ModelTechSpecsAct
  80 
  81 Shooting Modes
  82         Auto, P, Av, Tv, M, C, Portrait, Landscape,
  83         Special Scene
  84                 (Foliage, Snow, Beach, Fireworks, Night Scene, Aquarium, Underwater, Indoor, ISO 3200),
  85         Kids & Pets, Night Snapshot, Stitch Assist, Movie
  86 Movie: 640 x 480 (30 fps/30 fps LP), 320 x 240 (30 fps) available up to 4GB or 60 minutes, 160 x 120 (3 minutes at 15 fps)
  87 canon mode list in FFE8E628 100d
  88 
  89 NOTE: this is NOT CONFIRMED. Original contained errors!
  90 */
  91 
  92 const CapturemodeMap modemap[] = {
  93     { MODE_AUTO,               32768 },
  94     { MODE_P,                  32772 },
  95     { MODE_TV,                 32771 },
  96     { MODE_AV,                 32770 },
  97     { MODE_M,                  32769 },
  98     { MODE_VIDEO_STD,          2597  },
  99     { MODE_VIDEO_COMPACT,      2599  },
 100     { MODE_STITCH,             33290 },
 101     { MODE_UNDERWATER,         16406 },  
 102     { MODE_AQUARIUM,           16407 },  
 103     { MODE_NIGHT_SCENE,        16398 },  
 104     { MODE_FOLIAGE,            16402 },   
 105     { MODE_SNOW,               16403 },  
 106     { MODE_BEACH,              16404 },  
 107     { MODE_FIREWORK,           16405 },  
 108     { MODE_INDOOR,             16401 }, // guessed, was non-scene canon number in original modemap
 109     { MODE_ISO_3200,           16412 }, // guessed from canon list
 110     { MODE_KIDS_PETS,          32784 }, 
 111     { MODE_NIGHT_SNAPSHOT,     32779 },
 112     { MODE_LANDSCAPE,          32780 }, 
 113     { MODE_PORTRAIT,           32781 },
 114 // { ???, 8222 } // probably C
 115 };
 116 
 117 #include "../generic/shooting.c"
 118 
 119 const int dof_tbl[] = {7400, 8210, 9040, 9860, 10670, 12730, 14780, 16820, 18890, 21970, 25030, 29170, 36780, 44400};
 120 const int dof_tbl_size = sizeof(dof_tbl)/sizeof(dof_tbl[0]);
 121 
 122 long get_file_next_counter() {
 123     return get_file_counter();
 124 }
 125 
 126 long get_target_file_num() {
 127     long n;
 128     
 129     n = get_file_next_counter();
 130     n = (n>>4)&0x3FFF;
 131     return n;
 132 }
 133 
 134 long get_target_dir_num() {
 135     long n;
 136     
 137     n = get_file_next_counter();
 138     n = (n>>18)&0x3FF;
 139     return n;
 140 }

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