Subversion Repositories Projects

Compare Revisions

Ignore whitespace Rev 1701 → Rev 1702

/C-OSD/arducam-osd/libraries/PTPCamera/eosvaluetitles.h
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__