The codebase to run the *spark d-fuser controller www.sparkav.co.uk/dvimixer

Dependencies:   SPK-TVOne DMX DmxArtNet NetServicesMin OSC PinDetect mRotaryEncoder iniparser mbed spk_oled_ssd1305 filter

Committer:
tobyspark
Date:
Sat Mar 10 19:26:44 2012 +0000
Revision:
0:87aab40d5806
Child:
1:f9fca21102e0
v15 - PCB a la toby; OLED a la toby

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tobyspark 0:87aab40d5806 1 // *spark audio-visual and v002
tobyspark 0:87aab40d5806 2 // RS232 Control for TV-One products
tobyspark 0:87aab40d5806 3 // Good for 1T-C2-750, others will need some extra work
tobyspark 0:87aab40d5806 4 // Copyright *spark audio-visual / v002 2009-2011
tobyspark 0:87aab40d5806 5
tobyspark 0:87aab40d5806 6 #ifndef SPKTVOne_h
tobyspark 0:87aab40d5806 7 #define SPKTVOne_h
tobyspark 0:87aab40d5806 8
tobyspark 0:87aab40d5806 9 // Sources - Note only higher end models have more than 2 in....
tobyspark 0:87aab40d5806 10 //#pragma mark -
tobyspark 0:87aab40d5806 11 //#pragma mark Channel / Sources
tobyspark 0:87aab40d5806 12
tobyspark 0:87aab40d5806 13 #define kTV1SourceRGB1 0x10
tobyspark 0:87aab40d5806 14 #define kTV1SourceRGB2 0x11
tobyspark 0:87aab40d5806 15 #define kTV1SourceRGB3 0x12
tobyspark 0:87aab40d5806 16 #define kTV1SourceRGB4 0x13
tobyspark 0:87aab40d5806 17 #define kTV1SourceRGB5 0x14
tobyspark 0:87aab40d5806 18 #define kTV1SourceRGB6 0x15
tobyspark 0:87aab40d5806 19
tobyspark 0:87aab40d5806 20 // Window
tobyspark 0:87aab40d5806 21 //#pragma mark -
tobyspark 0:87aab40d5806 22 //#pragma mark Window IDs
tobyspark 0:87aab40d5806 23
tobyspark 0:87aab40d5806 24 #define kTV1WindowIDA 'A' // aka 0x41
tobyspark 0:87aab40d5806 25 #define kTV1WindowIDB 'B'
tobyspark 0:87aab40d5806 26 #define kTV1WindowIDZ 'Z'
tobyspark 0:87aab40d5806 27 #define kTV1WindowIDLogoA 'a' // aka 0x61
tobyspark 0:87aab40d5806 28 #define kTV1WindowIDLogoB 'b'
tobyspark 0:87aab40d5806 29
tobyspark 0:87aab40d5806 30 //#pragma mark -
tobyspark 0:87aab40d5806 31 //#pragma mark Functions
tobyspark 0:87aab40d5806 32
tobyspark 0:87aab40d5806 33 // Complete function list for verbosity. We will probably only be using a small small subset. Useful to have in one place.
tobyspark 0:87aab40d5806 34
tobyspark 0:87aab40d5806 35 // Preset & Mixer Mode Functions
tobyspark 0:87aab40d5806 36 #define kTV1FunctionMode 0x109 // Values: 0 = Switcher, 1 = Independant, 2 = Dual PIP
tobyspark 0:87aab40d5806 37 #define kTV1FunctionPreset 0x225 // Values: 0 - 9 (Preset 1 to 10) Set the current preset for the following functions.
tobyspark 0:87aab40d5806 38 #define kTV1FunctionPresetLoad 0x226 // Values: 1 to Load - switches back to 0 after a load
tobyspark 0:87aab40d5806 39 #define kTV1FunctionPresetStore 0x227 // Values: 1 to Store - switches back to 0 after a store
tobyspark 0:87aab40d5806 40 #define kTV1FunctionPresetErase 0x228 // Values: 1 to Erase - switches back to 0 after erase
tobyspark 0:87aab40d5806 41
tobyspark 0:87aab40d5806 42 // Adjust output Functions
tobyspark 0:87aab40d5806 43 //#pragma mark -
tobyspark 0:87aab40d5806 44 #define kTV1FunctionAdjustOutputsOutputEnable 0x170 // Values: 0 = Blanked 1 = Active
tobyspark 0:87aab40d5806 45 #define kTV1FunctionAdjustOutputsLockSource 0x149 // Values: 0x10 to 0x1F = RGB1 - RGB 16 (see manual for other values corresponding to SDI, CV etc)
tobyspark 0:87aab40d5806 46 #define kTV1FunctionAdjustOutputsLockMethod 0x10A // Values: 0 = Off, 1 = Genlock, 2 = Lock & Mix (see manual for other values)
tobyspark 0:87aab40d5806 47 #define kTV1FunctionAdjustOutputsLockHShift 0x14A // Values: -4096 - 4096
tobyspark 0:87aab40d5806 48 #define kTV1FunctionAdjustOutputsLockVShift 0x14B // Values: -4096 - 4096
tobyspark 0:87aab40d5806 49 #define kTV1FunctionAdjustOutputsOutputResolution 0x083 // Values: 0 - 1000 (which resolution, "pragma mark" Resolutions for list.
tobyspark 0:87aab40d5806 50 #define kTV1FunctionAdjustOutputsOutputImageTypeA 0x0E2 // Values: 0 = RGBHV, 2 = RGBsB, 3 = YUV, 4 = tlYUV, 7 = tlRGB (Analog)
tobyspark 0:87aab40d5806 51 #define kTV1FunctionAdjustOutputsOutputImageTypeD 0x16C // Values: 0 = RGBHV, 3 = YUV, 9 = Not Available (?) (Digital)
tobyspark 0:87aab40d5806 52 #define kTV1FunctionAdjustOutputsHDCPRequired 0x233 // Values: 0 = Off, 1 = On (if display supports it)
tobyspark 0:87aab40d5806 53 #define kTV1FunctionAdjustOutputsHDCPStatus 0x234 // Values: 0 = Unavailable, 1 = Supported, 2 = Active, 3 = Repeater Supported, 4 = Repeater Active
tobyspark 0:87aab40d5806 54 #define kTV1FunctionAdjustOutputsBackgroundY 0x13B // Values: 16-235
tobyspark 0:87aab40d5806 55 #define kTV1FunctionAdjustOutputsBackgroundU 0x13C // Values: 16-235
tobyspark 0:87aab40d5806 56 #define kTV1FunctionAdjustOutputsBackgroundV 0x13D // Values: 16-235
tobyspark 0:87aab40d5806 57 #define kTV1FunctionAdjustOutputsSDIOptimization 0x197 // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 58 #define kTV1FunctionAdjustOutputsOutputStandard 0x101 // Values: 0 = NTSC/PAL, 1 = PAL-M / PAL-N, 2 = SECAM
tobyspark 0:87aab40d5806 59 #define kTV1FunctionAdjustOutputsCVYCIRE 0x133 // Values: -0.75 - 12.5
tobyspark 0:87aab40d5806 60 #define kTV1FunctionAdjustOutputsCVYCHue 0x139 // Values: -22 - 22
tobyspark 0:87aab40d5806 61 #define kTV1FunctionAdjustOutputsSCHPhase 0x085 // Values: -180 - 180
tobyspark 0:87aab40d5806 62 #define kTV1FunctionAdjustOutputsLumaBandwidth 0x134 // Values: 0 = Low, 1 = Medium, 2 = High
tobyspark 0:87aab40d5806 63 #define kTV1FunctionAdjustOutputsChromaBandwidth 0x135 // Values: 0 = Low, 1 = Medium, 2 = High
tobyspark 0:87aab40d5806 64 #define kTV1FunctionAdjustOutputsOutputChromaDelay 0x137 // Values: -4 - 3
tobyspark 0:87aab40d5806 65 #define kTV1FunctionAdjustOutputsPalWSS 0x130 // Values: 0-8 (see manual for value explanation)
tobyspark 0:87aab40d5806 66 #define kTV1FunctionAdjustOutputsTake 0x11E // Values: 0->1 Perform a Preview -> Program transition (?)
tobyspark 0:87aab40d5806 67 #define kTV1FunctionAdjustOutputsVolume 0x201 // Values: -16 - 15 (-16 = Mute)
tobyspark 0:87aab40d5806 68 // Left out additional functions specific to SDI Audio Channel adjustment
tobyspark 0:87aab40d5806 69
tobyspark 0:87aab40d5806 70 // Adjust Windows Functions - Note for window functions, you must specify a Window to work on via the below value
tobyspark 0:87aab40d5806 71 //#pragma mark -
tobyspark 0:87aab40d5806 72
tobyspark 0:87aab40d5806 73 #define kTV1FunctionAdjustWindowsWindowSource 0x82 // Values: 0x10 to 0x1F = RGB1 to RGB16
tobyspark 0:87aab40d5806 74 #define kTV1FunctionAdjustWindowsSelectUniSource 0x241 // Values: 0xE0 to OxEF for universal source 1 - 16
tobyspark 0:87aab40d5806 75 #define kTV1FunctionAdjustWindowsSourceResolution 0xF8 // Values: (Read only) Resolution #
tobyspark 0:87aab40d5806 76 #define kTV1FunctionAdjustWindowsEnable 0x12B // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 77 #define kTV1FunctionAdjustWindowsZoomLevel 0x86 // Values: 100 - 1000
tobyspark 0:87aab40d5806 78 #define kTV1FunctionAdjustWindowsZoomLevelH 0x103 // Values: 100 - 1000 (only if advanced aspect ratio mode is enabled)
tobyspark 0:87aab40d5806 79 #define kTV1FunctionAdjustWindowsZoomLevelV 0x105 // Values: 100 - 1000 (only if advanced aspect ratio mode is enabled)
tobyspark 0:87aab40d5806 80 #define kTV1FunctionAdjustWindowsAspectRationIn 0x107 // Values: 0.1:1 - 9.99:1 (read only)
tobyspark 0:87aab40d5806 81 #define kTV1FunctionAdjustWindowsZoomPanH 0x9F // Values: 0 - 100
tobyspark 0:87aab40d5806 82 #define kTV1FunctionAdjustWindowsZoomPanV 0xA0 // Values: 0 - 100
tobyspark 0:87aab40d5806 83 #define kTV1FunctionAdjustWindowsImageFreeze 0x9C // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 84 #define kTV1FunctionAdjustWindowsCropH 0x223 // Values: 0 - 100
tobyspark 0:87aab40d5806 85 #define kTV1FunctionAdjustWindowsCropV 0x224 // Values: 0 - 100
tobyspark 0:87aab40d5806 86 #define kTV1FunctionAdjustWindowsOutShiftH 0xAD // Values: -4096 - 4096
tobyspark 0:87aab40d5806 87 #define kTV1FunctionAdjustWindowsOutShiftV 0xAE // Values: -4096 - 4096
tobyspark 0:87aab40d5806 88 #define kTV1FunctionAdjustWindowsShrinkLevel 0x87 // Values: 10 - 100
tobyspark 0:87aab40d5806 89 #define kTV1FunctionAdjustWindowsShrinkLevelH 0x104 // Values: 10 - 100 (only if advanced aspect ratio mode is enabled)
tobyspark 0:87aab40d5806 90 #define kTV1FunctionAdjustWindowsShrinkLevelV 0x106 // Values: 10 - 100 (only if advanced aspect ratio mode is enabled)
tobyspark 0:87aab40d5806 91 #define kTV1FunctionAdjustWindowsShrinkEnable 0x18E // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 92 #define kTV1FunctionAdjustWindowsShrinkPosH 0xDA // Values: 0 - 100
tobyspark 0:87aab40d5806 93 #define kTV1FunctionAdjustWindowsShrinkPosV 0xDB // Values: 0 - 100
tobyspark 0:87aab40d5806 94 #define kTV1FunctionAdjustWindowsInTopLeftH 0x21B // ??
tobyspark 0:87aab40d5806 95 #define kTV1FunctionAdjustWindowsInTopLeftV 0x21D // ??
tobyspark 0:87aab40d5806 96 #define kTV1FunctionAdjustWindowsInSizeH 0x21C // ??
tobyspark 0:87aab40d5806 97 #define kTV1FunctionAdjustWindowsInSizeV 0x21E // ??
tobyspark 0:87aab40d5806 98 #define kTV1FunctionAdjustWindowsOutTopLeftH 0x21F // ??
tobyspark 0:87aab40d5806 99 #define kTV1FunctionAdjustWindowsOutTopLeftV 0x221 // ??
tobyspark 0:87aab40d5806 100 #define kTV1FunctionAdjustWindowsOutSizeH 0x220 // ??
tobyspark 0:87aab40d5806 101 #define kTV1FunctionAdjustWindowsOutTopLeft 0x222 // ??
tobyspark 0:87aab40d5806 102 #define kTV1FunctionAdjustWindowsAspectChange 0x190 // Values: 0 = Normal, 1 = Letterbox, 2 = PillarBox
tobyspark 0:87aab40d5806 103 #define kTV1FunctionAdjustWindowsAspectAdjust 0x102 // Values: 0 = Simple, 1 = Advanced
tobyspark 0:87aab40d5806 104 #define kTV1FunctionAdjustWindowsFlickerReduction 0x92 // Values: 0 = Off, 1 = Low, 2 = Medium, 3 = High
tobyspark 0:87aab40d5806 105 #define kTV1FunctionAdjustWindowsImageSmoothing 0xA1 // Values: 0 = Off, 1 = Medium, 2 = High
tobyspark 0:87aab40d5806 106 #define kTV1FunctionAdjustWindowsImageFlip 0x95 // Values: 0 = Off, 1 = Horizontal, 2 = Vertical, 3 = H & V
tobyspark 0:87aab40d5806 107 #define kTV1FunctionAdjustWindowsTemporalInterp 0x229 // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 108 #define kTV1FunctionAdjustWindowsMaxFadeLevel 0x10F // Values: 0 - 100
tobyspark 0:87aab40d5806 109 #define kTV1FunctionAdjustWindowsFadeOutIn 0x193 // Values -1 = Fade Out, 0 = No Action, 1 = Fade In
tobyspark 0:87aab40d5806 110 #define kTV1FunctionAdjustWindowsLayerPriority 0x144 // Values: 0 - 5
tobyspark 0:87aab40d5806 111 #define kTV1FunctionAdjustWindowsHeadPhonVolume 0xFD // Vaules: -16 - 15 (-16 = Mute)
tobyspark 0:87aab40d5806 112 #define kTV1FunctionAdjustWindowsAudioVolume 0x206 // Vaules: -128 - 127 (
tobyspark 0:87aab40d5806 113 #define kTV1FunctionAdjustWindowsAudioVolumeEnable 0x206 // Vaules: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 114
tobyspark 0:87aab40d5806 115 // Adjust Keyer
tobyspark 0:87aab40d5806 116 //#pragma mark -
tobyspark 0:87aab40d5806 117
tobyspark 0:87aab40d5806 118 #define kTV1FunctionAdjustKeyerEnable 0x127 // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 119 #define kTV1FunctionAdjustKeyerMinY 0xAF // Values: 0 - 255
tobyspark 0:87aab40d5806 120 #define kTV1FunctionAdjustKeyerMinU 0xB0 // Values: 0 - 255
tobyspark 0:87aab40d5806 121 #define kTV1FunctionAdjustKeyerMinV 0xB1 // Values: 0 - 255
tobyspark 0:87aab40d5806 122 #define kTV1FunctionAdjustKeyerMaxY 0xB2 // Values: 0 - 255
tobyspark 0:87aab40d5806 123 #define kTV1FunctionAdjustKeyerMaxU 0xB3 // Values: 0 - 255
tobyspark 0:87aab40d5806 124 #define kTV1FunctionAdjustKeyerMaxV 0xB4 // Values: 0 - 255
tobyspark 0:87aab40d5806 125 #define kTV1FunctionAdjustKeyerSoftnessY 0x121 // Values: 0 - 255
tobyspark 0:87aab40d5806 126 #define kTV1FunctionAdjustKeyerSoftnessU 0x123 // Values: 0 - 255
tobyspark 0:87aab40d5806 127 #define kTV1FunctionAdjustKeyerSoftnessV 0x125 // Values: 0 - 255
tobyspark 0:87aab40d5806 128 #define kTV1FunctionAdjustKeyerInvertY 0x122 // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 129 #define kTV1FunctionAdjustKeyerInvertU 0x124 // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 130 #define kTV1FunctionAdjustKeyerInvertV 0x126 // Values: 0 = Off, 1 = On (Typo in documentation, noted as 0x156)
tobyspark 0:87aab40d5806 131 #define kTV1FunctionAdjustKeyerSwap 0x144 // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 132
tobyspark 0:87aab40d5806 133 // Edge Blending (not used in TVOne 1T-C2-750, therefore not bothered with for now)
tobyspark 0:87aab40d5806 134 //#define kTV1FunctionAdjustEdgeBlendXXX
tobyspark 0:87aab40d5806 135
tobyspark 0:87aab40d5806 136 // Adjust Logos
tobyspark 0:87aab40d5806 137 //#pragma mark -
tobyspark 0:87aab40d5806 138
tobyspark 0:87aab40d5806 139 #define kTV1FunctionAdjustLogoEnable 0x12B // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 140 #define kTV1FunctionAdjustLogoNumber 0x143 // Values: 0 - 9 (Logo Selection)
tobyspark 0:87aab40d5806 141 #define kTV1FunctionAdjustLogoOutShiftH 0xAD // Values: 0 - 100
tobyspark 0:87aab40d5806 142 #define kTV1FunctionAdjustLogoOutShiftV 0xAE // Values: 0 - 100
tobyspark 0:87aab40d5806 143 #define kTV1FunctionAdjustLogoMaxFadeLevel 0x10F // Values: 0 - 100
tobyspark 0:87aab40d5806 144 #define kTV1FunctionAdjustLogoLayerPriority 0x144 // Values: 0 - 5
tobyspark 0:87aab40d5806 145
tobyspark 0:87aab40d5806 146 // Adjust Borders
tobyspark 0:87aab40d5806 147 //#pragma mark -
tobyspark 0:87aab40d5806 148
tobyspark 0:87aab40d5806 149 #define kTV1FunctionAdjustBorderEnable 0x150 // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 150 #define kTV1FunctionAdjustBorderSizeH 0x151 // Values: 0 - 99
tobyspark 0:87aab40d5806 151 #define kTV1FunctionAdjustBorderSizeV 0x152 // Values: 0 - 99
tobyspark 0:87aab40d5806 152 #define kTV1FunctionAdjustBorderOffsetH 0x153 // Values: 0 - 99
tobyspark 0:87aab40d5806 153 #define kTV1FunctionAdjustBorderOffsetV 0x154 // Values: 0 - 99
tobyspark 0:87aab40d5806 154 #define kTV1FunctionAdjustBorderY 0x155 // Values: 16 - 235
tobyspark 0:87aab40d5806 155 #define kTV1FunctionAdjustBorderU 0x156 // Values: 16 - 240
tobyspark 0:87aab40d5806 156 #define kTV1FunctionAdjustBorderV 0x157 // Values: 16 - 240
tobyspark 0:87aab40d5806 157 #define kTV1FunctionAdjustBorderOpacity 0x158 // Values: 0 - 100 ( 0 = Transparent, 100 = Opaque)
tobyspark 0:87aab40d5806 158
tobyspark 0:87aab40d5806 159 // Adjust Sources - Note: These functions require the Channel parameter to be properly set. Not all functions take all channels.
tobyspark 0:87aab40d5806 160 //#pragma mark -
tobyspark 0:87aab40d5806 161
tobyspark 0:87aab40d5806 162 #define kTV1FunctionAdjustSourceTestCard 0xDC // Values: 0 - 10
tobyspark 0:87aab40d5806 163 #define kTV1FunctionAdjustSourceAutoSet 0xFE // Values: 1 = Start AutoSet Procedure
tobyspark 0:87aab40d5806 164 #define kTV1FunctionAdjustSourceAspectCorrect 0x240 // Values: 0 = Fill, 1 = Aspect, 2 = H-Fit, 3 = V-Fit, 4 = 1:1
tobyspark 0:87aab40d5806 165 #define kTV1FunctionAdjustSourceEDID 0x243 // Values: 0 - 7 (edid entry number)
tobyspark 0:87aab40d5806 166 #define kTV1FunctionAdjustSourceEDIDCapureID 0x244 // Values: 0 - 7 (edid entry number) - entry to grab into
tobyspark 0:87aab40d5806 167 #define kTV1FunctionAdjustSourceEditCaptureGrab 0x245 // Values: 1 performs grab of Edid to currently set EDIDCapureID
tobyspark 0:87aab40d5806 168 #define kTV1FunctionAdjustSourceHDCPAdvertize 0x237 // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 169 #define kTV1FunctionAdjustSourceHDCPStatus 0x238 // Values: 0 = Inactive, 1 = Active (read only)
tobyspark 0:87aab40d5806 170 #define kTV1FunctionAdjustSourcePositionH 0xB6 // Values: -100 - 100
tobyspark 0:87aab40d5806 171 #define kTV1FunctionAdjustSourcePositionV 0xB7 // Values: -100 - 100
tobyspark 0:87aab40d5806 172 #define kTV1FunctionAdjustSourceSizeH 0xDE // Values: -100 - 100
tobyspark 0:87aab40d5806 173 #define kTV1FunctionAdjustSourceSizeV 0xDF // Values: -100 - 100
tobyspark 0:87aab40d5806 174 #define kTV1FunctionAdjustSourceAudioXXX // Ignored for now In source, Option IN source Volume, Balance
tobyspark 0:87aab40d5806 175 #define kTV1FunctionAdjustSourceOnSourceLoss 0xA3 // Values: 0 = Show, 1 = Freeze, 2 = Blue, 3 = Black, 4 = Remove
tobyspark 0:87aab40d5806 176 #define kTV1FunctionAdjustSourceSourceStable 0x22A // Values: 0 = Unstable, 1 = Stable
tobyspark 0:87aab40d5806 177 #define kTV1FunctionAdjustSourcePixelPhase 0x91 // Values: 0 - 31
tobyspark 0:87aab40d5806 178 #define kTV1FunctionAdjustSourceRGBInType 0xC1 // Values: 0 = Auto, 1 = D-RGB, 2 = D-YUV, 3 = A-RGB, 4 = A-YUV (Digital / Analog)
tobyspark 0:87aab40d5806 179 #define kTV1FunctionAdjustSourceRGBContributionR 0xC5 // Values: 75 - 150
tobyspark 0:87aab40d5806 180 #define kTV1FunctionAdjustSourceRGBContributionG 0xC6 // Values: 75 - 150
tobyspark 0:87aab40d5806 181 #define kTV1FunctionAdjustSourceRGBContributionB 0xC7 // Values: 75 - 150
tobyspark 0:87aab40d5806 182 #define kTV1FunctionAdjustSourceYUVSetup 0x23E // Values: 0 = 0 IRE, 1 = 7.5 IRE
tobyspark 0:87aab40d5806 183 #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
tobyspark 0:87aab40d5806 184 #define kTV1FunctionAdjustSourceFilmMode 0xE3 // Values: 0 = Not Detected 1 = Detected (read only)
tobyspark 0:87aab40d5806 185 #define kTV1FunctionAdjustSourceDiagonalInterp 0x22B // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 186 #define kTV1FunctionAdjustSourceNoiseReduction 0x23F // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 187 #define kTV1FunctionAdjustSourceBrightness 0xBB // Values: 0 - 180
tobyspark 0:87aab40d5806 188 #define kTV1FunctionAdjustSourceContrast 0xBC // Values: 0 - 180
tobyspark 0:87aab40d5806 189 #define kTV1FunctionAdjustSourceSaturation 0xB9 // Values: 0 - 180
tobyspark 0:87aab40d5806 190 #define kTV1FunctionAdjustSourceHue 0xBA // Values: -180 - 180
tobyspark 0:87aab40d5806 191 #define kTV1FunctionAdjustSourceSharpness 0x80 // Values: -7 - 7
tobyspark 0:87aab40d5806 192 #define kTV1FunctionAdjustSourceLumaDelay 0xBD // Values: -4 -3
tobyspark 0:87aab40d5806 193 #define kTV1FunctionAdjustSourceFieldSwap 0xC9 // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 194 #define kTV1FunctionAdjustSourceFieldOffset 0x196 // Values: = 0 - 7
tobyspark 0:87aab40d5806 195 #define kTV1FunctionAdjustSourceAudioChannel1 // Ignored for now
tobyspark 0:87aab40d5806 196 #define kTV1FunctionAdjustSourceAudioChannel2 // Ignored for now
tobyspark 0:87aab40d5806 197 #define kTV1FunctionAdjustSourceAudioChannel3 // Ignored for now
tobyspark 0:87aab40d5806 198 #define kTV1FunctionAdjustSourceAudioChannel4 // Ignored for now
tobyspark 0:87aab40d5806 199 #define kTV1FunctionAdjustSourceAudioChannel5 // Ignored for now
tobyspark 0:87aab40d5806 200 #define kTV1FunctionAdjustSourceAudioChannel6 // Ignored for now
tobyspark 0:87aab40d5806 201 #define kTV1FunctionAdjustSourceAudioChannel7 // Ignored for now
tobyspark 0:87aab40d5806 202
tobyspark 0:87aab40d5806 203 // Adjust Audio
tobyspark 0:87aab40d5806 204 //#pragma mark -
tobyspark 0:87aab40d5806 205 #define kTV1FunctionAdjustAudioXXX // Ignored for now
tobyspark 0:87aab40d5806 206
tobyspark 0:87aab40d5806 207 // Adjust Transitions
tobyspark 0:87aab40d5806 208 //#pragma mark -
tobyspark 0:87aab40d5806 209 #define kTV1FunctionAdjustTransitionType 0x112 // Values: 0 = Cut, 1 = Fade, 2 = Wipe, 3 = Push
tobyspark 0:87aab40d5806 210 #define kTV1FunctionAdjustTransitionFadeTime 0xF5 // Values: 0 - 50 (0 - 5.0 seconds)
tobyspark 0:87aab40d5806 211 #define kTV1FunctionAdjustTransitionWipeType 0x145 // Values: 0 = Left -> Right 1 = Right -> Left, 2 = Up -> Down, 3 = Down -> Up, 4 = Diagonal, 5 = Diamond
tobyspark 0:87aab40d5806 212 #define kTV1FunctionAdjustTransitionWipeSize 0x146 // Values: 10 - 2000
tobyspark 0:87aab40d5806 213
tobyspark 0:87aab40d5806 214 // Adjust Resolutions
tobyspark 0:87aab40d5806 215
tobyspark 0:87aab40d5806 216 /*
tobyspark 0:87aab40d5806 217 Note: You MUST set the 'Image to adjust' value to the correct value first,
tobyspark 0:87aab40d5806 218 and only then change the other values - otherwise you may be adjusting the wrong entry.
tobyspark 0:87aab40d5806 219 The user should not adjust the 'Image to adjust' entry using the front panel whilst also accessing it via RS232
tobyspark 0:87aab40d5806 220 */
tobyspark 0:87aab40d5806 221
tobyspark 0:87aab40d5806 222 //#pragma mark -
tobyspark 0:87aab40d5806 223 #define kTV1FunctionAdjustResolutionImageToAdjust 0x81 // Values: 0 - 1000 - the preset you wish to manipulate
tobyspark 0:87aab40d5806 224 #define kTV1FunctionAdjustResolutionInterlaced 0xCA // Values: 0 = Off, 1 = On
tobyspark 0:87aab40d5806 225 #define kTV1FunctionAdjustResolutionFreqCoarseH 0xBE // Values: 10,000 - 200,000
tobyspark 0:87aab40d5806 226 #define kTV1FunctionAdjustResolutionFreqFineH 0xBF // Values: 10,000 - 200,000
tobyspark 0:87aab40d5806 227 #define kTV1FunctionAdjustResolutionActiveH 0x96 // Values: 64 - 2047
tobyspark 0:87aab40d5806 228 #define kTV1FunctionAdjustResolutionActiveV 0x97 // Values: 64 - 2047
tobyspark 0:87aab40d5806 229 #define kTV1FunctionAdjustResolutionStartH 0x8B // Values: 0 - 1023
tobyspark 0:87aab40d5806 230 #define kTV1FunctionAdjustResolutionStartV 0x8C // Values: 0 - 1023
tobyspark 0:87aab40d5806 231 #define kTV1FunctionAdjustResolutionCLKS 0x8E // Values: 64 - 4095
tobyspark 0:87aab40d5806 232 #define kTV1FunctionAdjustResolutionLines 0xBE // Values: 64 - 2047
tobyspark 0:87aab40d5806 233 #define kTV1FunctionAdjustResolutionSyncH 0x8F // Values: 8 - 1023
tobyspark 0:87aab40d5806 234 #define kTV1FunctionAdjustResolutionSyncV 0x90 // Values: 1 - 1023
tobyspark 0:87aab40d5806 235 #define kTV1FunctionAdjustResolutionSyncPolarity 0x94 // Values: 0 - 3 (++, +-. -+. --)
tobyspark 0:87aab40d5806 236
tobyspark 0:87aab40d5806 237 // Adjust Misc
tobyspark 0:87aab40d5806 238 //#pragma mark -
tobyspark 0:87aab40d5806 239 #define kTV1FunctionAdjustFrontPanelLock 0xFC // Values: 0 = Unlocked, 1 = Locked
tobyspark 0:87aab40d5806 240
tobyspark 0:87aab40d5806 241 // Resolutions
tobyspark 0:87aab40d5806 242 //#pragma mark -
tobyspark 0:87aab40d5806 243 //#pragma mark Resolutions
tobyspark 0:87aab40d5806 244
tobyspark 0:87aab40d5806 245 // Selected Common Resolutions and resolution Descriptions. For a complete list, use the menu system in your TV1
tobyspark 0:87aab40d5806 246
tobyspark 0:87aab40d5806 247 // Res #27 640x480, 59.97Hz
tobyspark 0:87aab40d5806 248 // Res #28 640x480, 60Hz
tobyspark 0:87aab40d5806 249 // Res #99 1920x1080, 60Hz
tobyspark 0:87aab40d5806 250 // Res #104 = 1920x1200, 60Hz
tobyspark 0:87aab40d5806 251
tobyspark 0:87aab40d5806 252 #define kTV1ResolutionVGA 0x8
tobyspark 0:87aab40d5806 253 #define kTV1ResolutionNTSC 0xF
tobyspark 0:87aab40d5806 254 #define kTV1ResolutionPAL 0x10
tobyspark 0:87aab40d5806 255 #define kTV1ResolutionSVGA 0x12
tobyspark 0:87aab40d5806 256 #define kTV1ResolutionXGAp5994 0x1B
tobyspark 0:87aab40d5806 257 #define kTV1ResolutionXGAp60 0x1C
tobyspark 0:87aab40d5806 258 #define kTV1ResolutionXGAp75 0x1D
tobyspark 0:87aab40d5806 259 #define kTV1Resolution720p2398 0x27
tobyspark 0:87aab40d5806 260 #define kTV1Resolution720p24 0x28
tobyspark 0:87aab40d5806 261 #define kTV1Resolution720p25 0x29
tobyspark 0:87aab40d5806 262 #define kTV1Resolution720p2997 0x2A
tobyspark 0:87aab40d5806 263 #define kTV1Resolution720p30 0x2B
tobyspark 0:87aab40d5806 264 #define kTV1Resolution720p50 0x2C
tobyspark 0:87aab40d5806 265 #define kTV1Resolution720p5994 0x2D
tobyspark 0:87aab40d5806 266 #define kTV1Resolution720p60 0x2E
tobyspark 0:87aab40d5806 267 #define kTV1ResolutionWXGA5by3p60 0x30
tobyspark 0:87aab40d5806 268 #define kTV1ResolutionWXGA5by3p75 0x31
tobyspark 0:87aab40d5806 269 #define kTV1ResolutionWXGA16by10p60 0x34
tobyspark 0:87aab40d5806 270 #define kTV1ResolutionWXGA16by10p75 0x35
tobyspark 0:87aab40d5806 271 #define kTV1ResolutionSGAp60 0x3A
tobyspark 0:87aab40d5806 272 #define kTV1ResolutionSGAp75 0x3B
tobyspark 0:87aab40d5806 273 #define kTV1ResolutionWSXGAp60 0x40
tobyspark 0:87aab40d5806 274 #define kTV1ResolutionUXGAp60 0x47
tobyspark 0:87aab40d5806 275 #define kTV1ResolutionUXGAp75 0x4A
tobyspark 0:87aab40d5806 276 #define kTV1ResolutionUXGAp85 0x4B
tobyspark 0:87aab40d5806 277 #define kTV1ResolutionWSXGAPLUSp60 0x53
tobyspark 0:87aab40d5806 278 #define kTV1Resolution1080p2398 0x60 // NOTE Firmware 362 has higher resolution numbers for these resolutions
tobyspark 0:87aab40d5806 279 #define kTV1Resolution1080p24 0x62
tobyspark 0:87aab40d5806 280 #define kTV1Resolution1080p25 0x64
tobyspark 0:87aab40d5806 281 #define kTV1Resolution1080p2997 0x65
tobyspark 0:87aab40d5806 282 #define kTV1Resolution1080p30 0x66
tobyspark 0:87aab40d5806 283 #define kTV1Resolution1080p50 0x67
tobyspark 0:87aab40d5806 284 #define kTV1Resolution1080p5996 0x69
tobyspark 0:87aab40d5806 285 #define kTV1Resolution1080p60 0x6A
tobyspark 0:87aab40d5806 286 #define kTV1Resolution1080p75 0x6D
tobyspark 0:87aab40d5806 287 #define kTV1ResolutionWUXGAp60 0x70
tobyspark 0:87aab40d5806 288 #define kTV1ResolutionWUXGAp75 0x73
tobyspark 0:87aab40d5806 289 #define kTV1ResolutionWUXGAp85 0x74
tobyspark 0:87aab40d5806 290
tobyspark 0:87aab40d5806 291 #define kTV1ResolutionDescriptionVGA "VGA (640x480) @ 60Hz"
tobyspark 0:87aab40d5806 292 #define kTV1ResolutionDescriptionNTSC "NTSC (720x480 @ 59.95Hz)"
tobyspark 0:87aab40d5806 293 #define kTV1ResolutionDescriptionPAL "PAL (720x576 @ 50Hz)"
tobyspark 0:87aab40d5806 294 #define kTV1ResolutionDescriptionSVGA "SVGA (800x600) @ 60Hz"
tobyspark 0:87aab40d5806 295 #define kTV1ResolutionDescriptionXGAp5994 "XGA (1024x768) @ 59.94Hz"
tobyspark 0:87aab40d5806 296 #define kTV1ResolutionDescriptionXGAp60 "XGA (1024x768) @ 60Hz"
tobyspark 0:87aab40d5806 297 #define kTV1ResolutionDescriptionXGAp75 "XGA (1024x768) @ 75Hz"
tobyspark 0:87aab40d5806 298 #define kTV1ResolutionDescription720p2398 "720p HD (1280x720) @ 23.98Hz"
tobyspark 0:87aab40d5806 299 #define kTV1ResolutionDescription720p24 "720p HD (1280x720) @ 24Hz"
tobyspark 0:87aab40d5806 300 #define kTV1ResolutionDescription720p25 "720p HD (1280x720) @ 25Hz"
tobyspark 0:87aab40d5806 301 #define kTV1ResolutionDescription720p2997 "720p HD (1280x720) @ 29.97Hz"
tobyspark 0:87aab40d5806 302 #define kTV1ResolutionDescription720p30 "720p HD (1280x720) @ 30Hz"
tobyspark 0:87aab40d5806 303 #define kTV1ResolutionDescription720p50 "720p HD (1280x720) @ 50Hz"
tobyspark 0:87aab40d5806 304 #define kTV1ResolutionDescription720p5994 "720p HD (1280x720) @ 59.95Hz"
tobyspark 0:87aab40d5806 305 #define kTV1ResolutionDescription720p60 "720p HD (1280x720) @ 60Hz"
tobyspark 0:87aab40d5806 306 #define kTV1ResolutionDescriptionWXGA5by3p60 "WXGA (1280x768) @ 60Hz"
tobyspark 0:87aab40d5806 307 #define kTV1ResolutionDescriptionWXGA5by3p75 "WXGA (1280x768) @ 75Hz"
tobyspark 0:87aab40d5806 308 #define kTV1ResolutionDescriptionWXGA16by10p60 "WXGA (1280x800) @ 60Hz"
tobyspark 0:87aab40d5806 309 #define kTV1ResolutionDescriptionWXGA16by10p75 "WXGA (1280x800) @ 75Hz"
tobyspark 0:87aab40d5806 310 #define kTV1ResolutionDescriptionSGAp60 "SGA (1280x1024) @ 60Hz"
tobyspark 0:87aab40d5806 311 #define kTV1ResolutionDescriptionSGAp75 "SGA (1280x1024) @ 75Hz"
tobyspark 0:87aab40d5806 312 #define kTV1ResolutionDescriptionWSXGAp60 "WSXGA (1440x900) @ 60Hz"
tobyspark 0:87aab40d5806 313 #define kTV1ResolutionDescriptionUXGAp60 "UXGA (1600x1200) @ 60Hz"
tobyspark 0:87aab40d5806 314 #define kTV1ResolutionDescriptionUXGAp75 "UXGA (1600x1200) @ 75Hz"
tobyspark 0:87aab40d5806 315 #define kTV1ResolutionDescriptionUXGAp85 "UXGA (1600x1200) @ 85Hz"
tobyspark 0:87aab40d5806 316 #define kTV1ResolutionDescriptionWSXGAPLUSp60 "WSXGA+ (1680x1050) @ 60Hz"
tobyspark 0:87aab40d5806 317 #define kTV1ResolutionDescription1080p2398 "1080p (1920x1080) @ 23.98Hz"
tobyspark 0:87aab40d5806 318 #define kTV1ResolutionDescription1080p24 "1080p (1920x1080) @ 24Hz"
tobyspark 0:87aab40d5806 319 #define kTV1ResolutionDescription1080p25 "1080p (1920x1080) @ 25Hz"
tobyspark 0:87aab40d5806 320 #define kTV1ResolutionDescription1080p2997 "1080p (1920x1080) @ 29.97Hz"
tobyspark 0:87aab40d5806 321 #define kTV1ResolutionDescription1080p30 "1080p (1920x1080) @ 30Hz"
tobyspark 0:87aab40d5806 322 #define kTV1ResolutionDescription1080p50 "1080p (1920x1080) @ 50Hz"
tobyspark 0:87aab40d5806 323 #define kTV1ResolutionDescription1080p5996 "1080p (1920x1080) @ 59.94Hz"
tobyspark 0:87aab40d5806 324 #define kTV1ResolutionDescription1080p60 "1080p (1920x1080) @ 60Hz"
tobyspark 0:87aab40d5806 325 #define kTV1ResolutionDescription1080p75 "1080p (1920x1080) @ 75Hz"
tobyspark 0:87aab40d5806 326 #define kTV1ResolutionDescriptionWUXGAp60 "WUXGA (1920x1200) @ 60Hz"
tobyspark 0:87aab40d5806 327 #define kTV1ResolutionDescriptionWUXGAp75 "WUXGA (1920x1200) @ 75Hz"
tobyspark 0:87aab40d5806 328 #define kTV1ResolutionDescriptionWUXGAp85 "WUXGA (1920x1200) @ 85Hz"
tobyspark 0:87aab40d5806 329
tobyspark 0:87aab40d5806 330 #define kTV1Resolution2Kp60 0x71
tobyspark 0:87aab40d5806 331 #define kTV1ResolutionDescription2Kp60 "2K (2048x1080) @ 60Hz"
tobyspark 0:87aab40d5806 332 #define kTV1ResolutionDoubleWXGA 0x73
tobyspark 0:87aab40d5806 333 #define kTV1ResolutionDescriptionDoubleWXGA "DWXGA (2880x900) @ 60Hz"
tobyspark 0:87aab40d5806 334
tobyspark 0:87aab40d5806 335 // Triplehead resolutions
tobyspark 0:87aab40d5806 336 // Note these are currently either added to the resolution list (#123-125) via CorioTools
tobyspark 0:87aab40d5806 337 // Previously these were written over existing resolutions (#112-114)
tobyspark 0:87aab40d5806 338
tobyspark 0:87aab40d5806 339 #define kTV1ResolutionDualHeadSVGAp60 0x7B
tobyspark 0:87aab40d5806 340 #define kTV1ResolutionDescriptionDualHeadSVGAp60 "Dual Head SVGA (1600x600) @ 60Hz"
tobyspark 0:87aab40d5806 341
tobyspark 0:87aab40d5806 342 #define kTV1ResolutionDualHeadXGAp60 0x7C
tobyspark 0:87aab40d5806 343 #define kTV1ResolutionDescriptionDualHeadXGAp60 "Dual Head XGA (2048x768) @ 60 Hz"
tobyspark 0:87aab40d5806 344
tobyspark 0:87aab40d5806 345 #define kTV1ResolutionTripleHeadVGAp60 0x7D
tobyspark 0:87aab40d5806 346 #define kTV1ResolutionDescriptionTripleHeadVGAp60 "Triple Head VGA (1920x480) @ 60Hz"
tobyspark 0:87aab40d5806 347
tobyspark 0:87aab40d5806 348 #endif