?? osddrawt100.lst
字號:
C51 COMPILER V7.07 OSDDRAWT100 10/27/2005 16:13:34 PAGE 1
C51 COMPILER V7.07, COMPILATION OF MODULE OSDDRAWT100
OBJECT MODULE PLACED IN .\Obj\OSDDRAWT100.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Source\OSD\OSDDRAWT100.c BROWSE INCDIR(.\Include\;.\Source\;.\Include\Panel
-\) DEBUG OBJECTEXTEND PRINT(.\OSDDRAWT100.lst) OBJECT(.\Obj\OSDDRAWT100.obj)
stmt level source
1 #include <reg51.h>
2 #include "common.h"
3 #include "System.h"
4 #include "Struct.h"
5 #include "OSDDraw.h"// mark by Sherman 05'10'21
6 //#include "OSDDRAWT100.h" // for test
7
8
9 #include "Keypad.h"
10 #include "TwoWire.h"
11 #include "TW10xReg.h"
12 #include "OSDCtrl.h"
13 //#include "SrcCtrl.h"
14 //#include "Display.h"
15 #include "Video.h"
16 #include "Tuner.h"
17
18 #ifdef NEW_OSD
#include "OSD_1216.h"
//#include "font1216.c"
#else
22 #include "OSD1218.h"
23 //#include "font1218.c"
24 #endif
25
26 #include "OSDTbl.h"
27 #include "OSDMENUT100.H" // change by Sherman 05'10'21
28
29 extern uCHAR ir_data;
30 extern uCHAR m_cSoundSystem;
31
32 extern bit m_bAir_Cable;
33 extern bit m_bTV_Skip;
34 extern bit m_bKyPowerFlat;
35 extern bit m_bBKPowerOn;
36 extern bit m_bOSDEnable;
37 extern bit m_bKyPowerOn;
38 extern bit m_bChipPowerOn;
39 extern bit m_bKyBlocked;
40 extern uCHAR idata m_cBuff[5];
41 extern uWORD idata m_wBuff[3];
42 extern uDWORD m_dwBuff[2];
43 extern uCHAR idata m_cOSDEvent;
44 extern uCHAR idata m_cCurreKey;
45 extern uCHAR idata m_cPreKey;
46 extern uCHAR idata m_cItem;
47 extern uCHAR idata m_cOSDFunc;
48 extern uWORD idata m_wVRes;
49 extern uWORD idata m_wHRes;
50 extern uCHAR idata m_cSource;
51
52 extern uCHAR idata m_cTV_Num;
53
54 extern uDWORD m_dwVFrameCntPre;
C51 COMPILER V7.07 OSDDRAWT100 10/27/2005 16:13:34 PAGE 2
55 extern uWORD m_wHSyncPeriodPre;
56 extern void BKPower(void);
57 extern void PowerManage(void);
58 extern void AutoScanChannel(void);
59
60 #if VIDEO_AVAILABLE
61 extern EEPVIDEO idata EepVideo;
62 #endif
63
64 #ifdef TIMER0
65 extern void Timer0Start(void);
66 extern void Timer0Stop(void);
67 #endif
68
69 #ifdef NVRAM
70 #include "NVRam.h"
71 extern uWORD idata m_wEepRom;
72 #endif
73
74 #define GAUGE_Y 7
75
76
77 // ADC Digi
78 //Bright,contrast,sharp,freq,phase,hpos,vpos,Bklight,OSDH/V,Gain/Offset Gain/Offset Volume
79 OSDPARAMS code sOSDParamsMax=
80 {0xff, 0xff, 5, 20, 0x1f, 40, 20, 20, 80,65, 0xC0,0xff, 0xff,0xff, 0xFF};
81 OSDPARAMS code sOSDParamsMin=
82 {0, 0, 0, 0, 0x00, 0, 0, 0, 1,1, 0,0, 0,0, 0x00};
83 OSDPARAMS code sOSDParamsDef=
84 {0x80, 0x80, 2, 10, 0x10, 20, 10, 10, 75,45, 0x80,0x80, 0x80,0x80, 0x40};
85
86 uCHAR code cOSDMenuLutData[32]={
87 //0xGB, 0x0R
88 0x00,0x00, //0
89 0x0f,0x00, //1 blue
90 0x00,0x00, //2 black
91 0x0f,0x0a, //3 purple
92 0x0e,0x00, //4 dark blue
93 0xf8,0x00, //5 green
94 0x22,0x0A, //6 red
95 0xc4,0x0c, //7 olive
96 0x88,0x05, //8 light grey
97 0xb9,0x0b, //9 purple
98 0xBD,0x05, //A purple
99 0x0f,0x0f, //B
100 0xA3,0x0A, //C Yellow
101 0xcc,0x0c, //D light grey
102 0x68,0x03, //E Light Blue Main Menu Background or 0x79, 0x04 which is a litter light
103 0xff,0x0f, //F white
104 };
105
106 void OSDLoadColor(void)
107 {
108 1 uCHAR i;
109 1 I2CWriteByte(TW101,OSD_CFG_INDEX,OSD_LUT_RAM_DATA);
110 1 for(i=0;i<32;i++)
111 1 I2CWriteByte(TW101,OSD_CFG_DATA,cOSDMenuLutData[i]);
112 1
113 1 }
114
115 void OSDSetRamAddr(uWORD address)
116 {
C51 COMPILER V7.07 OSDDRAWT100 10/27/2005 16:13:34 PAGE 3
117 1 I2CWriteByte(TW101,OSD_RAM_AH,(uCHAR)(address>>8));
118 1 I2CWriteByte(TW101,OSD_RAM_AL,(uCHAR)(address & 0xff));
119 1 //EA=0;
120 1 }
121
122 void OSDEnable(void)
123 {
124 1 m_bOSDEnable = 1;
125 1 OSDCfgWr(OSD_CTRL,0x98);
126 1 //OSDCfgWr(OSD_CTRL,0x99); //For malata only
127 1
128 1 #ifdef TIMER0
129 1 // if(m_bFactryMode) return;
130 1 Timer0Start();
131 1 #endif
132 1
133 1 }
134
135 void OSDDisable(void)
136 {
137 1 /*
138 1 #ifdef TIMER0
139 1 if(!m_bFactryMode)
140 1
141 1 #endif
142 1 */ Timer0Stop();
143 1 OSDCfgWr(OSD_CTRL,0x18);
144 1 m_cOSDEvent=0;
145 1 m_cOSDFunc=0;
146 1 m_cItem=1;
147 1 // m_bAdjRGBColor=0; //Init color
148 1 m_bOSDEnable=0;
149 1 m_cCurreKey=m_cPreKey=0xFF;
150 1 }
151
152 void OSDExit(void)
153 {
154 1 OSDCfgWr(OSD_CTRL,0x18);
155 1 OSDCfgWr(0x10,0x00); //Disable window
156 1 OSDDisable();
157 1 OSDClearPage();
158 1 }
159
160 void OSDEventMgr(void)
161 {
162 1 Timer0Stop();
163 1 switch(m_cOSDEvent){
164 2 case CLOSEMENU:
165 2 OSDExit();
166 2 break;
167 2 case OPENMENU:
168 2 m_cItem=1;
169 2 OSDOpenMenu();
170 2 //m_cOSDFunc|=m_cItem;
171 2 OSDMoveCursor(0x00,0x17);
172 2 break;
173 2 case FUNCSELCT_IN:
174 2 OSDFuncSelect(1);
175 2 // OSDShowData(COL_GAUGE);
176 2 break;
177 2 case FUNCSELCT_DN:
178 2 OSDFuncSelect(-1);
C51 COMPILER V7.07 OSDDRAWT100 10/27/2005 16:13:34 PAGE 4
179 2 // OSDShowData(COL_GAUGE);
180 2 break;
181 2 case FUNCENTER:
182 2 if(/*Ruby m_cOSDFunc==idVOLUMEMENU||*/m_cOSDFunc==idBRIGHTMENU
183 2 ||m_cOSDFunc==idCONTRASTMENU||m_cOSDFunc==idSATMENU_VIDEO||m_cOSDFunc==idSHARP_VIDEO
184 2 ||m_cOSDFunc==idHUEMENU_VIDEO||idTIMEMENU_VIDEO)
185 2 {
186 3 OSDClearPage();
187 3 OSDCfgWr(0x10,0x00); //Disable window
188 3 //Ruby test OSDPosition(LEFT_BOTTOM);
189 3 OSDPosition(CENTER);
190 3 OSDShowSubpage();
191 3 break;
192 3 }
193 2
194 2 OSDFuncEnter();
195 2 break;
196 2 case FUNCEXIT:
197 2 OSDFuncExit();
198 2 break;
199 2 case FUNCADJ_IN:
200 2 OSDItemAdj(INCREASE);
201 2 break;
202 2 case FUNCADJ_IN1:
203 2 OSDItemAdj(INCREASE1);
204 2 break;
205 2 case FUNCADJ_DN:
206 2 OSDItemAdj(DECREASE);
207 2 break;
208 2 case FUNCADJ_DN1:
209 2 OSDItemAdj(DECREASE1);
210 2 break;
211 2 case FUNCADCCAL:
212 2 break;
213 2 case POWERMANAGE:
214 2 m_bKyPowerOn = m_bKyPowerOn^0x01;
215 2 PowerManage();
216 2 //if(m_bChipPowerOn)
217 2 // BKPower();
218 2 break;
219 2 default: break;
220 2 }
221 1
222 1 if(m_bOSDEnable)
223 1 Timer0Start();
224 1 }
225
226 void OSDOpenMenu(void)
227 {
228 1 OSDPosition(CENTER);
229 1 switch(m_cOSDFunc){
230 2 case idMAINMENU:
231 2 break;
232 2 case idCOLORMENU:
233 2 break;
234 2 case idLANGMENU:
235 2 break;
236 2 case idTVMENU_VIDEO:
237 2 OSDShowLine(iBlankLine,0,0,COL_TITLE,OSD_LENGTH);
238 2 OSDShowLine(iTuning_E,0,0,COL_TITLE,OSD_LENGTH);
239 2
240 2 OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)0<<5)+20);
C51 COMPILER V7.07 OSDDRAWT100 10/27/2005 16:13:34 PAGE 5
241 2 twdWr_Burst_A(OSD_RAM_DL);
242 2 twdWr_Burst_D('M');
243 2 twdWr_Burst_D(COL_TITLE);
244 2 twdWr_Burst_D('H');
245 2 twdWr_Burst_D(COL_TITLE);
246 2 twdWr_Burst_D(0x17); //'z'
247 2 twdWr_Burst_D(COL_TITLE);
248 2 twdWr_Burst_D(BLANK); //'z'
249 2 twdWr_Burst_D(COL_TITLE);
250 2 //Draw shadow
251 2 //OSDSetRamAddr(MENU_RAM_START_ADDRESS+((int)0<<5)+24);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -