RS232 control for TVOne products

Dependents:   SPK-DVIMXR

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers spk_tvone.h Source File

spk_tvone.h

00001 // *spark audio-visual and v002
00002 // RS232 Control for TV-One products
00003 // Good for 1T-C2-750, others will need some extra work
00004 
00005 /* Copyright (c) 2009 Toby Harris and Anton Marini, MIT License
00006  *
00007  * Permission is hereby granted, free of charge, to any person obtaining a copy of this software 
00008  * and associated documentation files (the "Software"), to deal in the Software without restriction, 
00009  * including without limitation the rights to use, copy, modify, merge, publish, distribute, 
00010  * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is 
00011  * furnished to do so, subject to the following conditions:
00012  *
00013  * The above copyright notice and this permission notice shall be included in all copies or 
00014  * substantial portions of the Software.
00015  *
00016  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 
00017  * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 
00018  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 
00019  * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 
00020  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
00021  */
00022 
00023 #ifndef SPKTVOne_h
00024 #define SPKTVOne_h
00025 
00026 // Uncomment if your 750 has had one of the following firmware updates
00027 // ie. if you have stock firmware (v265) ensure both are commented.
00028 //#define kTV1Firmware415
00029 #define kTV1FirmwareSPKDF
00030 
00031 // Bounding timings for sending RS232 to the unit
00032 #define kTV1CommandTimeoutMillis 100
00033 #define kTV1CommandMinimumMillis 30
00034 
00035 // Sources - Note only higher end models have more than 2 in....
00036 //#pragma mark -
00037 //#pragma mark Channel / Sources
00038 
00039 #define kTV1SourceRGB1                                0x10
00040 #define kTV1SourceRGB2                                0x11    
00041 #define kTV1SourceRGB3                                0x12 
00042 #define kTV1SourceRGB4                                0x13 
00043 #define kTV1SourceRGB5                                0x14 
00044 #define kTV1SourceRGB6                                0x15 
00045 #define kTV1SourceSIS1                                0xF0
00046 #define kTV1SourceSIS2                                0xF1
00047 
00048 // Window
00049 //#pragma mark -
00050 //#pragma mark Window IDs
00051 
00052 #define kTV1WindowIDA                                'A' // aka 0x41 
00053 #define kTV1WindowIDB                                'B'
00054 #define kTV1WindowIDZ                                'Z'
00055 #define kTV1WindowIDLogoA                            'a'    // aka 0x61
00056 #define kTV1WindowIDLogoB                            'b'
00057 
00058 //#pragma mark -
00059 //#pragma mark Functions
00060 
00061 // Complete function list for verbosity. We will probably only be using a small small subset. Useful to have in one place.
00062 
00063 // Preset & Mixer Mode Functions
00064 #define kTV1FunctionMode                            0x109    // Values: 0 = Switcher, 1 = Independant, 2 = Dual PIP
00065 #define kTV1FunctionPreset                          0x225    // Values: 0 - 9 (Preset 1 to 10) Set the current preset for the following functions. Update: No! Empirically, values are 1-10.     
00066 #define kTV1FunctionPresetLoad                      0x226    // Values: 1 to Load - switches back to 0 after a load
00067 #define kTV1FunctionPresetStore                     0x227    // Values: 1 to Store - switches back to 0 after a store
00068 #define kTV1FunctionPresetErase                     0x228    // Values: 1 to Erase - switches back to 0 after erase
00069 #define kTV1FunctionPowerOnPresetStore              0x0C8    // Values: 1 to store - switches back to 0 after a store
00070 
00071 // Adjust output Functions
00072 //#pragma mark -
00073 #define kTV1FunctionAdjustOutputsOutputEnable        0x170    // Values: 0 = Blanked 1 = Active
00074 #define kTV1FunctionAdjustOutputsLockSource            0x149    // Values: 0x10 to 0x1F = RGB1 - RGB 16 (see manual for other values corresponding to SDI, CV etc)
00075 #define kTV1FunctionAdjustOutputsLockMethod            0x10A    // Values: 0 = Off, 1 = Genlock, 2 = Lock & Mix (see manual for other values)
00076 #define kTV1FunctionAdjustOutputsLockHShift            0x14A    // Values: -4096 - 4096
00077 #define kTV1FunctionAdjustOutputsLockVShift            0x14B    // Values: -4096 - 4096
00078 #define kTV1FunctionAdjustOutputsOutputResolution    0x083    // Values: 0 - 1000 (which resolution, "pragma mark" Resolutions for list.
00079 #define kTV1FunctionAdjustOutputsOutputImageTypeA    0x0E2    // Values: 0 = RGBHV, 2 = RGBsB, 3 = YUV, 4 = tlYUV, 7 = tlRGB (Analog)
00080 #define kTV1FunctionAdjustOutputsOutputImageTypeD    0x16C    // Values: 0 = RGBHV, 3 = YUV, 9 = Not Available (?) (Digital)
00081 #define kTV1FunctionAdjustOutputsHDCPRequired        0x233    // Values: 0 = Off, 1 = On (if display supports it)
00082 #define kTV1FunctionAdjustOutputsHDCPStatus            0x234    // Values: 0 = Unavailable, 1 = Supported, 2 = Active, 3 = Repeater Supported, 4 = Repeater Active
00083 #define kTV1FunctionAdjustOutputsBackgroundY        0x13B    // Values: 16-235
00084 #define kTV1FunctionAdjustOutputsBackgroundU        0x13C    // Values: 16-235
00085 #define kTV1FunctionAdjustOutputsBackgroundV        0x13D    // Values: 16-235
00086 #define kTV1FunctionAdjustOutputsSDIOptimization    0x197    // Values: 0 = Off, 1 = On
00087 #define kTV1FunctionAdjustOutputsOutputStandard        0x101    // Values: 0 = NTSC/PAL, 1 = PAL-M / PAL-N, 2 = SECAM
00088 #define kTV1FunctionAdjustOutputsCVYCIRE            0x133    // Values: -0.75 - 12.5
00089 #define kTV1FunctionAdjustOutputsCVYCHue            0x139    // Values: -22 - 22
00090 #define kTV1FunctionAdjustOutputsSCHPhase            0x085    // Values: -180 - 180 
00091 #define kTV1FunctionAdjustOutputsLumaBandwidth        0x134    // Values: 0 = Low, 1 = Medium, 2 = High
00092 #define kTV1FunctionAdjustOutputsChromaBandwidth    0x135    // Values: 0 = Low, 1 = Medium, 2 = High
00093 #define kTV1FunctionAdjustOutputsOutputChromaDelay    0x137    // Values: -4 - 3
00094 #define kTV1FunctionAdjustOutputsPalWSS                0x130    // Values: 0-8 (see manual for value explanation) 
00095 #define kTV1FunctionAdjustOutputsTake                0x11E    // Values: 0->1 Perform a Preview -> Program transition (?)
00096 #define kTV1FunctionAdjustOutputsVolume                0x201    // Values: -16 - 15 (-16 = Mute)
00097 // Left out additional functions specific to SDI Audio Channel adjustment
00098 
00099 // Adjust Windows Functions -  Note for window functions, you must specify a Window to work on via the below value
00100 //#pragma mark -
00101 
00102 #define kTV1FunctionAdjustWindowsWindowSource        0x82    // Values: 0x10 to 0x1F = RGB1 to RGB16
00103 #define kTV1FunctionAdjustWindowsSelectUniSource    0x241    // Values: 0xE0 to OxEF for universal source 1 - 16
00104 #define kTV1FunctionAdjustWindowsSourceResolution    0xF8    // Values: (Read only) Resolution #
00105 #define kTV1FunctionAdjustWindowsEnable                0x12B    // Values: 0 = Off, 1 = On
00106 #define kTV1FunctionAdjustWindowsZoomLevel            0x86    // Values: 100 - 1000
00107 #define kTV1FunctionAdjustWindowsZoomLevelH            0x103    // Values: 100 - 1000 (only if advanced aspect ratio mode is enabled)
00108 #define kTV1FunctionAdjustWindowsZoomLevelV            0x105    // Values: 100 - 1000 (only if advanced aspect ratio mode is enabled)
00109 #define kTV1FunctionAdjustWindowsAspectRationIn        0x107    // Values: 0.1:1 - 9.99:1 (read only)
00110 #define kTV1FunctionAdjustWindowsZoomPanH            0x9F    // Values: 0 - 100
00111 #define kTV1FunctionAdjustWindowsZoomPanV            0xA0    // Values: 0 - 100
00112 #define kTV1FunctionAdjustWindowsImageFreeze        0x9C    // Values: 0 = Off, 1 = On
00113 #define kTV1FunctionAdjustWindowsCropH                0x223    // Values: 0 - 100
00114 #define kTV1FunctionAdjustWindowsCropV                0x224    // Values: 0 - 100
00115 #define kTV1FunctionAdjustWindowsOutShiftH            0xAD    // Values: -4096 - 4096
00116 #define kTV1FunctionAdjustWindowsOutShiftV            0xAE    // Values: -4096 - 4096
00117 #define kTV1FunctionAdjustWindowsShrinkLevel        0x87    // Values: 10 - 100
00118 #define kTV1FunctionAdjustWindowsShrinkLevelH        0x104    // Values: 10 - 100 (only if advanced aspect ratio mode is enabled)
00119 #define kTV1FunctionAdjustWindowsShrinkLevelV        0x106    // Values: 10 - 100 (only if advanced aspect ratio mode is enabled)
00120 #define kTV1FunctionAdjustWindowsShrinkEnable        0x18E    // Values: 0 = Off, 1 = On
00121 #define kTV1FunctionAdjustWindowsShrinkPosH            0xDA    // Values: 0 - 100
00122 #define kTV1FunctionAdjustWindowsShrinkPosV            0xDB    // Values: 0 - 100
00123 #define kTV1FunctionAdjustWindowsInTopLeftH            0x21B    // ??
00124 #define kTV1FunctionAdjustWindowsInTopLeftV            0x21D    // ??
00125 #define kTV1FunctionAdjustWindowsInSizeH            0x21C    // ??
00126 #define kTV1FunctionAdjustWindowsInSizeV            0x21E    // ??
00127 #define kTV1FunctionAdjustWindowsOutTopLeftH        0x21F    // ??
00128 #define kTV1FunctionAdjustWindowsOutTopLeftV        0x221    // ??
00129 #define kTV1FunctionAdjustWindowsOutSizeH            0x220    // ??
00130 #define kTV1FunctionAdjustWindowsOutTopLeft            0x222    // ??
00131 #define kTV1FunctionAdjustWindowsAspectChange        0x190    // Values: 0 = Normal, 1 = Letterbox, 2 = PillarBox
00132 #define kTV1FunctionAdjustWindowsAspectAdjust        0x102    // Values: 0 = Simple, 1 = Advanced
00133 #define kTV1FunctionAdjustWindowsFlickerReduction    0x92    // Values: 0 = Off, 1 = Low, 2 = Medium, 3 = High
00134 #define kTV1FunctionAdjustWindowsImageSmoothing        0xA1    // Values: 0 = Off, 1 = Medium, 2 = High
00135 #define kTV1FunctionAdjustWindowsImageFlip            0x95    // Values: 0 = Off, 1 = Horizontal, 2 = Vertical, 3 = H & V
00136 #define kTV1FunctionAdjustWindowsTemporalInterp        0x229    // Values: 0 = Off, 1 = On
00137 #define kTV1FunctionAdjustWindowsMaxFadeLevel        0x10F    // Values: 0 - 100
00138 #define kTV1FunctionAdjustWindowsFadeOutIn            0x193    // Values -1 = Fade Out, 0 = No Action, 1 = Fade In
00139 #define kTV1FunctionAdjustWindowsLayerPriority        0x144    // Values: 0 - 5
00140 #define kTV1FunctionAdjustWindowsHeadPhonVolume        0xFD    // Vaules: -16 - 15 (-16 = Mute)
00141 #define kTV1FunctionAdjustWindowsAudioVolume        0x206    // Vaules: -128 - 127 (
00142 #define kTV1FunctionAdjustWindowsAudioVolumeEnable    0x206    // Vaules: 0 = Off, 1 = On
00143 
00144 // Adjust Keyer
00145 //#pragma mark -
00146 
00147 #define kTV1FunctionAdjustKeyerEnable                0x127    // Values: 0 = Off, 1 = On
00148 #define kTV1FunctionAdjustKeyerMinY                    0xAF    // Values: 0 - 255        
00149 #define kTV1FunctionAdjustKeyerMinU                    0xB0    // Values: 0 - 255
00150 #define kTV1FunctionAdjustKeyerMinV                    0xB1    // Values: 0 - 255
00151 #define kTV1FunctionAdjustKeyerMaxY                    0xB2    // Values: 0 - 255
00152 #define kTV1FunctionAdjustKeyerMaxU                    0xB3    // Values: 0 - 255
00153 #define kTV1FunctionAdjustKeyerMaxV                    0xB4    // Values: 0 - 255
00154 #define kTV1FunctionAdjustKeyerSoftnessY            0x121    // Values: 0 - 255
00155 #define kTV1FunctionAdjustKeyerSoftnessU            0x123    // Values: 0 - 255
00156 #define kTV1FunctionAdjustKeyerSoftnessV            0x125    // Values: 0 - 255
00157 #define kTV1FunctionAdjustKeyerInvertY                0x122    // Values: 0 = Off, 1 = On
00158 #define kTV1FunctionAdjustKeyerInvertU                0x124    // Values: 0 = Off, 1 = On
00159 #define kTV1FunctionAdjustKeyerInvertV                0x126    // Values: 0 = Off, 1 = On (Typo in documentation, noted as 0x156) 
00160 #define kTV1FunctionAdjustKeyerSwap                    0x144    // Values: 0 = Off, 1 = On
00161 
00162 // Edge Blending (not used in TVOne 1T-C2-750, therefore not bothered with for now)
00163 //#define kTV1FunctionAdjustEdgeBlendXXX
00164 
00165 // Adjust Logos
00166 //#pragma mark -
00167 
00168 #define kTV1FunctionAdjustLogoEnable                0x12B    // Values: 0 = Off, 1 = On
00169 #define kTV1FunctionAdjustLogoNumber                0x143    // Values: 0 - 9 (Logo Selection)
00170 #define kTV1FunctionAdjustLogoOutShiftH                0xAD    // Values: 0 - 100
00171 #define kTV1FunctionAdjustLogoOutShiftV                0xAE    // Values: 0 - 100
00172 #define kTV1FunctionAdjustLogoMaxFadeLevel            0x10F    // Values: 0 - 100
00173 #define kTV1FunctionAdjustLogoLayerPriority            0x144    // Values: 0 - 5
00174 
00175 // Adjust Borders
00176 //#pragma mark -
00177 
00178 #define kTV1FunctionAdjustBorderEnable                0x150    // Values: 0 = Off, 1 = On
00179 #define kTV1FunctionAdjustBorderSizeH                0x151    // Values: 0 - 99
00180 #define kTV1FunctionAdjustBorderSizeV                0x152    // Values: 0 - 99
00181 #define kTV1FunctionAdjustBorderOffsetH                0x153    // Values: 0 - 99
00182 #define kTV1FunctionAdjustBorderOffsetV                0x154    // Values: 0 - 99
00183 #define kTV1FunctionAdjustBorderY                    0x155    // Values: 16 - 235
00184 #define kTV1FunctionAdjustBorderU                    0x156    // Values: 16 - 240    
00185 #define kTV1FunctionAdjustBorderV                    0x157    // Values: 16 - 240
00186 #define kTV1FunctionAdjustBorderOpacity                0x158    // Values: 0 - 100 ( 0 = Transparent, 100 = Opaque)
00187 
00188 // Adjust Sources - Note: These functions require the Channel parameter to be properly set. Not all functions take all channels.
00189 //#pragma mark -
00190 
00191 #define kTV1FunctionAdjustSourceTestCard            0xDC    // Values: 0 - 10
00192 #define kTV1FunctionAdjustSourceAutoSet                0xFE    // Values: 1 = Start AutoSet Procedure
00193 #define kTV1FunctionAdjustSourceAspectCorrect        0x240    // Values: 0 = Fill, 1 = Aspect, 2 = H-Fit, 3 = V-Fit, 4 = 1:1
00194 #define kTV1FunctionAdjustSourceEDID                0x243    // Values: 0 - 7 (edid entry number)
00195 #define kTV1FunctionAdjustSourceEDIDCapureID        0x244    // Values: 0 - 7 (edid entry number) - entry to grab into
00196 #define kTV1FunctionAdjustSourceEditCaptureGrab        0x245    // Values: 1 performs grab of Edid to currently set EDIDCapureID
00197 #define kTV1FunctionAdjustSourceHDCPAdvertize        0x237    // Values: 0 = Off, 1 = On
00198 #define kTV1FunctionAdjustSourceHDCPStatus            0x238    // Values: 0 = Inactive, 1 = Active (read only)
00199 #define kTV1FunctionAdjustSourcePositionH            0xB6    // Values: -100 - 100
00200 #define kTV1FunctionAdjustSourcePositionV            0xB7    // Values: -100 - 100
00201 #define kTV1FunctionAdjustSourceSizeH                0xDE    // Values: -100 - 100
00202 #define kTV1FunctionAdjustSourceSizeV                0xDF    // Values: -100 - 100
00203 #define kTV1FunctionAdjustSourceAudioXXX                    // Ignored for now In source, Option IN source Volume, Balance 
00204 #define kTV1FunctionAdjustSourceOnSourceLoss        0xA3    // Values: 0 = Show, 1 = Freeze, 2 = Blue, 3 = Black, 4 = Remove
00205 #define kTV1FunctionAdjustSourceSourceStable        0x22A    // Values: 0 = Unstable, 1 = Stable
00206 #define kTV1FunctionAdjustSourcePixelPhase            0x91    // Values: 0 - 31
00207 #define kTV1FunctionAdjustSourceRGBInType            0xC1    // Values: 0 = Auto, 1 = D-RGB, 2 = D-YUV, 3 = A-RGB, 4 = A-YUV (Digital / Analog)
00208 #define kTV1FunctionAdjustSourceRGBContributionR    0xC5    // Values: 75 - 150
00209 #define kTV1FunctionAdjustSourceRGBContributionG    0xC6    // Values: 75 - 150    
00210 #define kTV1FunctionAdjustSourceRGBContributionB    0xC7    // Values: 75 - 150
00211 #define kTV1FunctionAdjustSourceYUVSetup            0x23E    // Values: 0 = 0 IRE, 1 = 7.5 IRE
00212 #define kTV1FunctionAdjustSourceDeInterlace            0xB8    // Values: 0 = Normal, 1 = Auto, 2 = Film 3:2, 3 = Motion Compensation Low, 4 = Motion Compensation Medium, 5 = Motion Compensation High, 6 = Frame / Bob
00213 #define kTV1FunctionAdjustSourceFilmMode            0xE3    // Values: 0 = Not Detected 1 = Detected (read only) 
00214 #define kTV1FunctionAdjustSourceDiagonalInterp        0x22B    // Values: 0 = Off, 1 = On
00215 #define kTV1FunctionAdjustSourceNoiseReduction        0x23F    // Values: 0 = Off, 1 = On
00216 #define kTV1FunctionAdjustSourceBrightness            0xBB    // Values: 0 - 180    
00217 #define kTV1FunctionAdjustSourceContrast            0xBC    // Values: 0 - 180
00218 #define kTV1FunctionAdjustSourceSaturation            0xB9    // Values: 0 - 180
00219 #define kTV1FunctionAdjustSourceHue                    0xBA    // Values: -180 - 180
00220 #define kTV1FunctionAdjustSourceSharpness            0x80    // Values: -7 - 7
00221 #define kTV1FunctionAdjustSourceLumaDelay            0xBD    // Values: -4 -3
00222 #define kTV1FunctionAdjustSourceFieldSwap            0xC9    // Values: 0 = Off, 1 = On
00223 #define kTV1FunctionAdjustSourceFieldOffset            0x196    // Values: = 0 - 7
00224 #define kTV1FunctionAdjustSourceAudioChannel1                // Ignored for now
00225 #define kTV1FunctionAdjustSourceAudioChannel2                // Ignored for now
00226 #define kTV1FunctionAdjustSourceAudioChannel3                // Ignored for now
00227 #define kTV1FunctionAdjustSourceAudioChannel4                // Ignored for now
00228 #define kTV1FunctionAdjustSourceAudioChannel5                // Ignored for now
00229 #define kTV1FunctionAdjustSourceAudioChannel6                // Ignored for now
00230 #define kTV1FunctionAdjustSourceAudioChannel7                // Ignored for now
00231 
00232 // Adjust Audio
00233 //#pragma mark -
00234 #define kTV1FunctionAdjustAudioXXX                            // Ignored for now
00235 
00236 // Adjust Transitions
00237 //#pragma mark -
00238 #define kTV1FunctionAdjustTransitionType            0x112    // Values: 0 = Cut, 1 = Fade, 2 = Wipe, 3 = Push
00239 #define kTV1FunctionAdjustTransitionFadeTime        0xF5    // Values: 0 - 50 (0 - 5.0 seconds)
00240 #define kTV1FunctionAdjustTransitionWipeType        0x145    // Values: 0 = Left -> Right 1 = Right -> Left, 2 = Up -> Down, 3 = Down -> Up, 4 = Diagonal, 5 = Diamond 
00241 #define kTV1FunctionAdjustTransitionWipeSize        0x146    // Values: 10 - 2000
00242 
00243 // Adjust Resolutions
00244 
00245 /* 
00246  Note: You MUST set the 'Image to adjust' value to the correct value first, 
00247  and only then change the other values - otherwise you may be adjusting the wrong entry. 
00248  The user should not adjust the 'Image to adjust' entry using the front panel whilst also accessing it via RS232
00249  */
00250 
00251 //#pragma mark -
00252 #define kTV1FunctionAdjustResolutionImageToAdjust    0x81    // Values: 0 - 1000 - the preset you wish to manipulate
00253 #define kTV1FunctionAdjustResolutionInterlaced        0xCA    // Values: 0 = Off, 1 = On
00254 #define kTV1FunctionAdjustResolutionFreqCoarseH        0xBE    // Values: 10,000 - 200,000
00255 #define kTV1FunctionAdjustResolutionFreqFineH        0xBF    // Values: 10,000 - 200,000
00256 #define kTV1FunctionAdjustResolutionActiveH            0x96    // Values: 64 - 2047
00257 #define kTV1FunctionAdjustResolutionActiveV            0x97    // Values: 64 - 2047
00258 #define kTV1FunctionAdjustResolutionStartH            0x8B    // Values: 0 - 1023
00259 #define kTV1FunctionAdjustResolutionStartV            0x8C    // Values: 0 - 1023
00260 #define kTV1FunctionAdjustResolutionCLKS            0x8D    // Values: 64 - 4095
00261 #define kTV1FunctionAdjustResolutionLines            0x8E    // Values: 64 - 2047
00262 #define kTV1FunctionAdjustResolutionSyncH            0x8F    // Values: 8 - 1023
00263 #define kTV1FunctionAdjustResolutionSyncV            0x90    // Values: 1 - 1023
00264 #define kTV1FunctionAdjustResolutionSyncPolarity    0x94    // Values: 0 - 3 (++, +-. -+. --)
00265 
00266 // Adjust Misc
00267 //#pragma mark -
00268 #define kTV1FunctionAdjustFrontPanelLock            0xFC    // Values: 0 = Unlocked, 1 = Locked
00269 #define kTV1FunctionReadSoftwareVersion             0x0D2
00270 #define kTV1FunctionReadProductType                 0x0C4
00271 #define kTV1FunctionReadBoardType                   0x0C2
00272 
00273 // Resolutions
00274 //#pragma mark -
00275 //#pragma mark Resolutions
00276 
00277 // Selected Common Resolutions and resolution Descriptions. For a complete list, use the menu system in your TV1
00278 
00279 // Res #27 640x480, 59.97Hz
00280 // Res #28 640x480, 60Hz
00281 // Res #99 1920x1080, 60Hz
00282 // Res #104 = 1920x1200, 60Hz
00283 
00284 #define kTV1ResolutionVGA                    0x8            
00285 #define kTV1ResolutionNTSC                    0xF                    
00286 #define kTV1ResolutionPAL                    0x10            
00287 #define kTV1ResolutionSVGA                    0x12        
00288 #define kTV1ResolutionXGAp5994                0x1B                    
00289 #define kTV1ResolutionXGAp60                0x1C                    
00290 #define kTV1ResolutionXGAp75                0x1D                     
00291 #define kTV1Resolution720p2398                0x27                
00292 #define kTV1Resolution720p24                0x28            
00293 #define kTV1Resolution720p25                0x29            
00294 #define kTV1Resolution720p2997                0x2A                
00295 #define kTV1Resolution720p30                0x2B            
00296 #define kTV1Resolution720p50                0x2C            
00297 #define kTV1Resolution720p5994                0x2D            
00298 #define kTV1Resolution720p60                0x2E            
00299 #define kTV1ResolutionWXGA5by3p60            0x30                         
00300 #define kTV1ResolutionWXGA5by3p75            0x31                         
00301 #define kTV1ResolutionWXGA16by10p60            0x34                         
00302 #define kTV1ResolutionWXGA16by10p75            0x35         
00303 #define kTV1ResolutionSGAp60                0x3A                    
00304 #define kTV1ResolutionSGAp75                0x3B        
00305 #define kTV1ResolutionWSXGAp60                0x40        
00306 
00307 #if defined kTV1Firmware415
00308  #define kTV1ResolutionUXGAp60                0x47                    
00309  #define kTV1ResolutionUXGAp75                0x4A                    
00310  #define kTV1ResolutionUXGAp85                0x4B
00311  #define kTV1ResolutionWSXGAPLUSp60           0x53
00312  #define kTV1Resolution1080p60                0x6D
00313  #define kTV1Resolution1080p75                0x66        
00314  #define kTV1ResolutionWUXGAp60               0x69                        
00315  #define kTV1ResolutionWUXGAp75               0x6C                        
00316  #define kTV1ResolutionWUXGAp85               0x6D
00317  
00318 #elif defined kTV1FirmwareSPKDF
00319  #define kTV1ResolutionUXGAp60                76                    
00320  #define kTV1ResolutionUXGAp75                79                    
00321  #define kTV1ResolutionUXGAp85                80
00322  #define kTV1ResolutionWSXGAPLUSp60           85
00323  #define kTV1Resolution1080p2398              99            
00324  #define kTV1Resolution1080p24                101              
00325  #define kTV1Resolution1080p25                103            
00326  #define kTV1Resolution1080p2997              104         
00327  #define kTV1Resolution1080p30                105        
00328  #define kTV1Resolution1080p50                106        
00329  #define kTV1Resolution1080p5996              108  
00330  #define kTV1Resolution1080p60                109
00331  #define kTV1Resolution1080p75                112        
00332  #define kTV1ResolutionWUXGAp60               115                        
00333  #define kTV1ResolutionWUXGAp75               118                        
00334  #define kTV1ResolutionWUXGAp85               119
00335   
00336  #define kTV1ResolutionDualHeadSVGAp60        75        
00337  #define kTV1ResolutionDescriptionDualHeadSVGAp60    "Dual Head SVGA (1600x600) @ 60Hz"        
00338  #define kTV1ResolutionDualHeadXGAp60         123
00339  #define kTV1ResolutionDescriptionDualHeadXGAp60   "Dual Head XGA (2048x768) @ 60 Hz"
00340  #define kTV1ResolutionTripleHeadVGAp60        90        
00341  #define kTV1ResolutionDescriptionTripleHeadVGAp60    "Triple Head VGA (1920x480) @ 60Hz"
00342  
00343 #else
00344  #define kTV1Resolution1080p2398                0x60            
00345  #define kTV1Resolution1080p24                0x62              
00346  #define kTV1Resolution1080p25                0x64            
00347  #define kTV1Resolution1080p2997                0x65         
00348  #define kTV1Resolution1080p30                0x66        
00349  #define kTV1Resolution1080p50                0x67        
00350  #define kTV1Resolution1080p5996                0x69        
00351  #define kTV1Resolution1080p60                0x6A                
00352  #define kTV1Resolution1080p75                0x6D        
00353  #define kTV1ResolutionWUXGAp60                0x70                        
00354  #define kTV1ResolutionWUXGAp75                0x73                     
00355  #define kTV1ResolutionWUXGAp85                0x74
00356 #endif
00357 
00358 #define kTV1ResolutionDescriptionVGA                "VGA (640x480) @ 60Hz"
00359 #define kTV1ResolutionDescriptionNTSC                "NTSC (720x480 @ 59.95Hz)"                        
00360 #define kTV1ResolutionDescriptionPAL                "PAL (720x576 @ 50Hz)"    
00361 #define kTV1ResolutionDescriptionSVGA                "SVGA (800x600) @ 60Hz"    
00362 #define kTV1ResolutionDescriptionXGAp5994            "XGA (1024x768) @ 59.94Hz"                        
00363 #define kTV1ResolutionDescriptionXGAp60                "XGA (1024x768) @ 60Hz"                            
00364 #define kTV1ResolutionDescriptionXGAp75                "XGA (1024x768) @ 75Hz"                            
00365 #define kTV1ResolutionDescription720p2398            "720p HD (1280x720) @ 23.98Hz"                    
00366 #define kTV1ResolutionDescription720p24                "720p HD (1280x720) @ 24Hz"                        
00367 #define kTV1ResolutionDescription720p25                "720p HD (1280x720) @ 25Hz"                        
00368 #define kTV1ResolutionDescription720p2997            "720p HD (1280x720) @ 29.97Hz"                    
00369 #define kTV1ResolutionDescription720p30                "720p HD (1280x720) @ 30Hz"                        
00370 #define kTV1ResolutionDescription720p50                "720p HD (1280x720) @ 50Hz"                        
00371 #define kTV1ResolutionDescription720p5994            "720p HD (1280x720) @ 59.95Hz"                     
00372 #define kTV1ResolutionDescription720p60                "720p HD (1280x720) @ 60Hz"                        
00373 #define kTV1ResolutionDescriptionWXGA5by3p60        "WXGA (1280x768) @ 60Hz"                        
00374 #define kTV1ResolutionDescriptionWXGA5by3p75        "WXGA (1280x768) @ 75Hz"                        
00375 #define kTV1ResolutionDescriptionWXGA16by10p60        "WXGA (1280x800) @ 60Hz"                        
00376 #define kTV1ResolutionDescriptionWXGA16by10p75        "WXGA (1280x800) @ 75Hz"        
00377 #define kTV1ResolutionDescriptionSGAp60                "SGA (1280x1024) @ 60Hz"                         
00378 #define kTV1ResolutionDescriptionSGAp75                "SGA (1280x1024) @ 75Hz"         
00379 #define kTV1ResolutionDescriptionWSXGAp60            "WSXGA (1440x900) @ 60Hz"
00380 #define kTV1ResolutionDescriptionUXGAp60            "UXGA (1600x1200) @ 60Hz"                         
00381 #define kTV1ResolutionDescriptionUXGAp75            "UXGA (1600x1200) @ 75Hz"                         
00382 #define kTV1ResolutionDescriptionUXGAp85            "UXGA (1600x1200) @ 85Hz"
00383 #define kTV1ResolutionDescriptionWSXGAPLUSp60     "WSXGA+ (1680x1050) @ 60Hz"
00384 #define kTV1ResolutionDescription1080p2398        "1080p (1920x1080) @ 23.98Hz"                     
00385 #define kTV1ResolutionDescription1080p24            "1080p (1920x1080) @ 24Hz"                        
00386 #define kTV1ResolutionDescription1080p25            "1080p (1920x1080) @ 25Hz"                        
00387 #define kTV1ResolutionDescription1080p2997        "1080p (1920x1080) @ 29.97Hz"                    
00388 #define kTV1ResolutionDescription1080p30            "1080p (1920x1080) @ 30Hz"                        
00389 #define kTV1ResolutionDescription1080p50            "1080p (1920x1080) @ 50Hz"                        
00390 #define kTV1ResolutionDescription1080p5996        "1080p (1920x1080) @ 59.94Hz"
00391 #define kTV1ResolutionDescription1080p60            "1080p (1920x1080) @ 60Hz"                        
00392 #define kTV1ResolutionDescription1080p75      "1080p (1920x1080) @ 75Hz"    
00393 #define kTV1ResolutionDescriptionWUXGAp60            "WUXGA (1920x1200) @ 60Hz"                        
00394 #define kTV1ResolutionDescriptionWUXGAp75            "WUXGA (1920x1200) @ 75Hz"                        
00395 #define kTV1ResolutionDescriptionWUXGAp85            "WUXGA (1920x1200) @ 85Hz"    
00396 
00397 #define kTV1Resolution2Kp60                0x71        
00398 #define kTV1ResolutionDescription2Kp60                "2K (2048x1080) @ 60Hz"    
00399 #define kTV1ResolutionDoubleWXGA            0x73        
00400 #define kTV1ResolutionDescriptionDoubleWXGA            "DWXGA (2880x900) @ 60Hz"                                        
00401 
00402 #endif