0,0 → 1,296 |
/* Copyright (C) 2010-2011 Circuits At Home, LTD. All rights reserved. |
|
This software may be distributed and modified under the terms of the GNU |
General Public License version 2 (GPL2) as published by the Free Software |
Foundation and appearing in the file GPL2.TXT included in the packaging of |
this file. Please note that GPL2 Section 2[b] requires that all works based |
on this software must also be made publicly available under the terms of |
the GPL2 ("Copyleft"). |
|
Contact information |
------------------- |
|
Circuits At Home, LTD |
Web : http://www.circuitsathome.com |
e-mail : support@circuitsathome.com |
*/ |
#if !defined(__EOSVALUETITLES_H__) |
#define __EOSVALUETITLES_H__ |
|
#include <inttypes.h> |
#include <avr/pgmspace.h> |
#include <valuelist.h> |
|
typedef uint8_t VT_APERTURE; |
typedef uint8_t VT_MODE; |
typedef uint8_t VT_WB; |
typedef uint8_t VT_SHSPEED; |
typedef uint8_t VT_PSTYLE; |
typedef uint8_t VT_ISO; |
typedef uint8_t VT_EXPCOMP; |
|
#define VT_MODE_TEXT_LEN 4 |
#define VT_WB_TEXT_LEN 4 |
#define VT_SHSPEED_TEXT_LEN 5 |
#define VT_PSTYLE_TEXT_LEN 4 |
#define VT_ISO_TEXT_LEN 5 |
#define VT_EXPCOMP_TEXT_LEN 7 |
#define VT_APT_TEXT_LEN 4 |
|
const ValueTitle<VT_APERTURE, VT_APT_TEXT_LEN> ApertureTitles[] PROGMEM = |
{ |
{0x00, {' ', ' ', '0', 0 } }, |
{0x08, {' ', ' ', '1', 0 } }, |
{0x0B, {'1', '.', '1', 0 } }, |
{0x0C, {'1', '.', '2', 0 } }, |
{0x0D, {'1', '.', '2', 0 } }, |
{0x10, {'1', '.', '4', 0 } }, |
{0x13, {'1', '.', '6', 0 } }, |
{0x14, {'1', '.', '8', 0 } }, |
{0x15, {'1', '.', '8', 0 } }, |
{0x18, {'2', '.', '0', 0 } }, |
{0x1B, {'2', '.', '2', 0 } }, |
{0x1C, {'2', '.', '5', 0 } }, |
{0x1D, {'2', '.', '5', 0 } }, |
{0x20, {'2', '.', '8', 0 } }, |
{0x23, {'3', '.', '2', 0 } }, |
{0x24, {'3', '.', '5', 0 } }, |
{0x25, {'3', '.', '5', 0 } }, |
{0x28, {'4', '.', '0', 0 } }, |
{0x2B, {'4', '.', '5', 0 } }, |
{0x2C, {'4', '.', '5', 0 } }, |
{0x2D, {'5', '.', '0', 0 } }, |
{0x30, {'5', '.', '6', 0 } }, |
{0x33, {'6', '.', '3', 0 } }, |
{0x34, {'6', '.', '7', 0 } }, |
{0x35, {'7', '.', '1', 0 } }, |
{0x38, {'8', '.', '0', 0 } }, |
{0x3B, {'9', '.', '0', 0 } }, |
{0x3C, {'9', '.', '5', 0 } }, |
{0x3D, {' ', '1', '0', 0 } }, |
{0x40, {' ', '1', '1', 0 } }, |
{0x43, {' ', '1', '3', 0 } }, |
{0x44, {' ', '1', '3', 0 } }, |
{0x45, {' ', '1', '4', 0 } }, |
{0x48, {' ', '1', '6', 0 } }, |
{0x4B, {' ', '1', '8', 0 } }, |
{0x4C, {' ', '1', '9', 0 } }, |
{0x4D, {' ', '2', '0', 0 } }, |
{0x50, {' ', '2', '2', 0 } }, |
{0x53, {' ', '2', '5', 0 } }, |
{0x54, {' ', '2', '7', 0 } }, |
{0x55, {' ', '2', '9', 0 } }, |
{0x58, {' ', '3', '2', 0 } }, |
{0x5B, {' ', '3', '6', 0 } }, |
{0x5C, {' ', '3', '8', 0 } }, |
{0x5D, {' ', '4', '0', 0 } }, |
{0x60, {' ', '4', '5', 0 } }, |
{0x63, {' ', '5', '1', 0 } }, |
{0x64, {' ', '5', '4', 0 } }, |
{0x65, {' ', '5', '7', 0 } }, |
{0x68, {' ', '6', '4', 0 } }, |
{0x6B, {' ', '7', '2', 0 } }, |
{0x6C, {' ', '7', '6', 0 } }, |
{0x6D, {' ', '8', '0', 0 } }, |
{0x70, {' ', '9', '1', 0 } } |
}; |
|
const ValueTitle<VT_SHSPEED, VT_SHSPEED_TEXT_LEN> ShutterSpeedTitles[] PROGMEM = |
{ |
{0x0c, {'B','u','l','b',0} }, |
{0x10, {' ','3','0','"',0} }, |
{0x13, {' ','2','5','"',0} }, |
{0x14, {' ','2','0','"',0} }, |
{0x15, {' ','2','0','"',0} }, |
{0x18, {' ','1','5','"',0} }, |
{0x1B, {' ','1','3','"',0} }, |
{0x1C, {' ','1','0','"',0} }, |
{0x1D, {' ','1','0','"',0} }, |
{0x20, {' ',' ','8','"',0} }, |
{0x23, {' ',' ','6','"',0} }, |
{0x24, {' ',' ','6','"',0} }, |
{0x25, {' ',' ','5','"',0} }, |
{0x28, {' ',' ','4','"',0} }, |
{0x2B, {' ','3','"','2',0} }, |
{0x2C, {' ',' ','3','"',0} }, |
{0x2D, {' ','2','"','5',0} }, |
{0x30, {' ',' ','2','"',0} }, |
{0x33, {' ','1','"','6',0} }, |
{0x34, {' ','1','"','5',0} }, |
{0x35, {' ','1','"','3',0} }, |
{0x38, {' ',' ','1','"',0} }, |
{0x3B, {' ','0','"','8',0} }, |
{0x3C, {' ','0','"','7',0} }, |
{0x3D, {' ','0','"','6',0} }, |
{0x40, {' ','0','"','5',0} }, |
{0x43, {' ','0','"','4',0} }, |
{0x44, {' ','0','"','3',0} }, |
{0x45, {' ','0','"','3',0} }, |
{0x48, {' ',' ',' ','4',0} }, |
{0x4B, {' ',' ',' ','5',0} }, |
{0x4C, {' ',' ',' ','6',0} }, |
{0x4D, {' ',' ',' ','6',0} }, |
{0x50, {' ',' ',' ','8',0} }, |
{0x53, {' ',' ','1','0',0} }, |
{0x54, {' ',' ','1','0',0} }, |
{0x55, {' ',' ','1','3',0} }, |
{0x58, {' ',' ','1','5',0} }, |
{0x5B, {' ',' ','2','0',0} }, |
{0x5C, {' ',' ','2','0',0} }, |
{0x5D, {' ',' ','2','5',0} }, |
{0x60, {' ',' ','3','0',0} }, |
{0x63, {' ',' ','4','0',0} }, |
{0x64, {' ',' ','4','5',0} }, |
{0x65, {' ',' ','5','0',0} }, |
{0x68, {' ',' ','6','0',0} }, |
{0x6B, {' ',' ','8','0',0} }, |
{0x6C, {' ',' ','9','0',0} }, |
{0x6D, {' ','1','0','0',0} }, |
{0x70, {' ','1','2','5',0} }, |
{0x73, {' ','1','6','0',0} }, |
{0x74, {' ','1','8','0',0} }, |
{0x75, {' ','2','0','0',0} }, |
{0x78, {' ','2','5','0',0} }, |
{0x7B, {' ','3','2','0',0} }, |
{0x7C, {' ','3','5','0',0} }, |
{0x7D, {' ','4','0','0',0} }, |
{0x80, {' ','5','0','0',0} }, |
{0x83, {' ','6','4','0',0} }, |
{0x84, {' ','7','5','0',0} }, |
{0x85, {' ','8','0','0',0} }, |
{0x88, {'1','0','0','0',0} }, |
{0x8B, {'1','2','5','0',0} }, |
{0x8C, {'1','5','0','0',0} }, |
{0x8D, {'1','6','0','0',0} }, |
{0x90, {'2','0','0','0',0} }, |
{0x93, {'2','5','0','0',0} }, |
{0x94, {'3','0','0','0',0} }, |
{0x95, {'3','2','0','0',0} }, |
{0x98, {'4','0','0','0',0} }, |
{0x9B, {'5','0','0','0',0} }, |
{0x9C, {'6','0','0','0',0} }, |
{0x9D, {'6','4','0','0',0} }, |
{0xA0, {'8','0','0','0',0} } |
}; |
|
const ValueTitle<VT_ISO, VT_ISO_TEXT_LEN> IsoTitles[] PROGMEM = |
{ |
{0x28, {'6',' ',' ',' ',0} }, |
{0x30, {'1','2',' ',' ',0} }, |
{0x38, {'2','5',' ',' ',0} }, |
{0x40, {'5','0',' ',' ',0} }, |
{0x48, {'1','0','0',' ',0} }, |
{0x4b, {'1','2','5',' ',0} }, |
{0x4d, {'1','6','0',' ',0} }, |
{0x50, {'2','0','0',' ',0} }, |
{0x53, {'2','5','0',' ',0} }, |
{0x55, {'3','2','0',' ',0} }, |
{0x58, {'4','0','0',' ',0} }, |
{0x5b, {'5','0','0',' ',0} }, |
{0x5d, {'6','4','0',' ',0} }, |
{0x60, {'8','0','0',' ',0} }, |
{0x63, {'1','0','0','0',0} }, |
{0x65, {'1','2','5','0',0} }, |
{0x68, {'1','6','0','0',0} }, |
{0x70, {'3','2','0','0',0} }, |
{0x78, {'6','4','0','0',0} } |
}; |
|
// Exposure Compensation Title Array |
const ValueTitle<VT_EXPCOMP, VT_EXPCOMP_TEXT_LEN> ExpCompTitles[] PROGMEM = |
{ |
{0x28, {'+','5',' ',' ',' ',' ',0} }, |
{0x25, {'+','4',' ','2','/','3',0} }, |
{0x23, {'+','4',' ','1','/','3',0} }, |
{0x20, {'+','4',' ',' ',' ',' ',0} }, |
{0x1d, {'+','3',' ','2','/','3',0} }, |
{0x1b, {'+','3',' ','1','/','3',0} }, |
{0x18, {'+','3',' ',' ',' ',' ',0} }, |
{0x15, {'+','2',' ','2','/','3',0} }, |
{0x14, {'+','2',' ','1','/','2',0} }, |
{0x13, {'+','2',' ','1','/','3',0} }, |
{0x10, {'+','2',' ',' ',' ',' ',0} }, |
{0x0d, {'+','1',' ','2','/','3',0} }, |
{0x0c, {'+','1',' ','1','/','2',0} }, |
{0x0b, {'+','1',' ','1','/','3',0} }, |
{0x08, {'+','1',' ',' ',' ',' ',0} }, |
{0x05, {'+','2','/','3',' ',' ',0} }, |
{0x04, {'+','1','/','2',' ',' ',0} }, |
{0x03, {'+','1','/','3',' ',' ',0} }, |
{0x00, {'0',' ',' ',' ',' ',' ',0} }, |
{0xfd, {'-','1','/','3',' ',' ',0} }, |
{0xfc, {'-','1','/','2',' ',' ',0} }, |
{0xfb, {'-','2','/','3',' ',' ',0} }, |
{0xf8, {'-','1',' ',' ',' ',' ',0} }, |
{0xf5, {'-','1',' ','1','/','3',0} }, |
{0xf4, {'-','1',' ','1','/','2',0} }, |
{0xf3, {'-','1',' ','2','/','3',0} }, |
{0xf0, {'-','2',' ',' ',' ',' ',0} }, |
{0xed, {'-','2',' ','1','/','3',0} }, |
{0xec, {'-','2',' ','1','/','2',0} }, |
{0xeb, {'-','2',' ','2','/','3',0} }, |
{0xe8, {'-','3',' ',' ',' ',' ',0} }, |
{0xe5, {'-','3',' ','1','/','3',0} }, |
{0xe3, {'-','3',' ','2','/','3',0} }, |
{0xe0, {'-','4',' ',' ',' ',' ',0} }, |
{0xdd, {'-','4',' ','1','/','3',0} }, |
{0xdb, {'-','3',' ','2','/','3',0} }, |
{0xd8, {'-','5',' ',' ',' ',' ',0} } |
}; |
|
// Shooting Mode Title Array |
const ValueTitle<VT_MODE, VT_MODE_TEXT_LEN> ModeTitles[] PROGMEM = |
{ |
{0, {'P',' ',' ',0} }, // Program |
{1, {'T','v',' ',0} }, // Tv |
{2, {'A','v',' ',0} }, // Av |
{3, {'M',' ',' ',0} }, // Manual |
{4, {'B','l','b',0} }, // Bulb |
{5, {'A','-','D',0} }, // A-DEP |
{6, {'D','E','P',0} }, // DEP |
{7, {'C',' ',' ',0} }, // Custom |
{8, {'L','c','k',0} }, // Lock |
{9, {'G','r','n',0} }, // Green (Fully Automatic Mode) |
{10,{'N','g','h',0} }, // Night Portrait |
{11,{'S','p','r',0} }, // Sports |
{13,{'L','n','d',0} }, // Landscape |
{14,{'C','l','s',0} }, // Closeup |
{15,{'N','/','F',0} } // No Flash |
}; |
|
// White Balance Title Array |
const ValueTitle<VT_WB, VT_WB_TEXT_LEN> WbTitles[] PROGMEM = |
{ |
{0, {'A','W','B',0} }, // Auto White Balance |
{1, {'D','a','y',0} }, // Daylight |
{2, {'C','l','d',0} }, // Clouds |
{3, {'T','n','g',0} }, // Tungsteen |
{4, {'F','l','r',0} }, // Fluoriscent |
{5, {'S','t','r',0} }, // Strobe |
{6, {'W','/','P',0} }, // White Paper |
{8, {'S','h','d',0} } // Shade |
}; |
|
// Picture Style Title Array |
const ValueTitle<VT_PSTYLE, VT_PSTYLE_TEXT_LEN> PStyleTitles[] PROGMEM = |
{ |
{0x21, {'U','s','1',0} }, // User 1 |
{0x22, {'U','s','2',0} }, // User 2 |
{0x23, {'U','s','3',0} }, // User 3 |
{0x81, {'S','t','d',0} }, // Standard |
{0x82, {'P','r','t',0} }, // Portrait |
{0x83, {'L','n','d',0} }, // Landscape |
{0x84, {'N','t','l',0} }, // Neutral |
{0x85, {'F','t','h',0} }, // Faithful |
{0x86, {'M','o','n',0} } // Monochrome |
}; |
|
#define VT_APT_COUNT sizeof(ApertureTitles) / (sizeof(VT_APERTURE) + VT_APT_TEXT_LEN) |
#define VT_MODE_COUNT sizeof(ModeTitles) / (sizeof(VT_MODE) + VT_MODE_TEXT_LEN) |
#define VT_WB_COUNT sizeof(WbTitles) / (sizeof(VT_WB) + VT_WB_TEXT_LEN) |
#define VT_SHSPEED_COUNT sizeof(ShutterSpeedTitles) / (sizeof(VT_SHSPEED) + VT_SHSPEED_TEXT_LEN) |
#define VT_PSTYLE_COUNT sizeof(PStyleTitles) / (sizeof(VT_PSTYLE) + VT_PSTYLE_TEXT_LEN) |
#define VT_ISO_COUNT sizeof(IsoTitles) / (sizeof(VT_ISO) + VT_ISO_TEXT_LEN) |
#define VT_EXPCOMP_COUNT sizeof(ExpCompTitles) / (sizeof(VT_EXPCOMP) + VT_EXPCOMP_TEXT_LEN) |
|
#endif // __EOSVALUETITLES_H__ |