📄 osd2_initial.lst
字号:
201 1 FontsStart = font4BP0_000;
202 1 OSD2Load4BPFont();
203 1 #endif //ICON4BP
204 1 IC_WritByte(TWIC_P0,OSD2_CFG_INDEX,0x09);
205 1 for(m_wBuff[0] =0;m_wBuff[0]<18;m_wBuff[0]++)
206 1 {
207 2 IC_WritByte(TWIC_P0,OSD2_CFG_DATA,0);
208 2 }
209 1
210 1 //Fill pattern
211 1 /* OSD2CfgWr(0x30,0x4B);
212 1 OSD2CfgWr(0x31,0x80);
213 1 OSD2CfgWr(0x32,6);
214 1 OSD2CfgWr(0x33,12);
215 1 OSD2CfgWr(0x35,00);
216 1 OSD2CfgWr(0x38,0x0C);
217 1 OSD2CfgWr(0x3C,0xE7);
218 1 OSD2CfgWr(0x3E,0xE9);
219 1 for(m_wBuff[1]=0; m_wBuff[1]<(FontHeight); m_wBuff[1]++)
220 1 {
221 1 m_wBuff[2] = m_wBuff[1]*6;
222 1 OSD2CfgWr(0x37,font4BP0_Pat[m_wBuff[2] ]);
223 1 OSD2CfgWr(0x37,font4BP0_Pat[m_wBuff[2]+1]);
224 1 OSD2CfgWr(0x37,font4BP0_Pat[m_wBuff[2]+2]);
225 1 OSD2CfgWr(0x37,font4BP0_Pat[m_wBuff[2]+3]);
226 1 OSD2CfgWr(0x37,font4BP0_Pat[m_wBuff[2]+4]);
227 1 OSD2CfgWr(0x37,font4BP0_Pat[m_wBuff[2]+5]);
228 1 }
229 1 */
230 1
231 1 }
232 void OSD2LoadColor()
233 {
234 1
235 1 //~ Load Main Color Look Up Table.~//
236 1 #ifdef ICON4BP
237 1 OSD2CfgWr(OSD_COLOR_LUT_ADR_PORT,0x00);
238 1 IC_WritByte(TWIC_P0,OSD2_CFG_INDEX,0x09);
239 1 #ifdef T128
C51 COMPILER V8.08 OSD2_INITIAL 11/23/2007 00:57:19 PAGE 5
for(m_wBuff[0] =0;m_wBuff[0]<COLORTBLNUM;m_wBuff[0]++)
{
IC_WritByte(TWIC_P0,OSD2_CFG_DATA,Icon4BPColorTable[m_wBuff[0]]);
}
#else
245 1 ICWr_Burst_A(OSD2_CFG_DATA);
246 1 for(m_wBuff[0] =0;m_wBuff[0]<COLORTBLNUM;m_wBuff[0]++)
247 1 {
248 2 ICWr_Burst_D(Icon4BPColorTable[m_wBuff[0]]);
249 2 }
250 1 ICWr_Burst_P();
251 1 #endif
252 1 OSD2CfgWr(OSD_COLOR_LUT_ADR_PORT,0x80);
253 1 IC_WritByte(TWIC_P0,OSD2_CFG_INDEX,0x09);
254 1 for(m_wBuff[0]=0;m_wBuff[0]<18;m_wBuff[0]++)
255 1 {
256 2 IC_WritByte(TWIC_P0,OSD2_CFG_DATA,0);
257 2 IC_WritByte(TWIC_P0,OSD2_CFG_DATA,0);
258 2 IC_WritByte(TWIC_P0,OSD2_CFG_DATA,0);
259 2 }
260 1 #endif //ICON4BP
261 1 #ifdef ICON2BP
//~Load Char2BP Color Remap LUT.~//
OSD2CfgWr(OSD_COLOR_LUT_ADR_PORT,0x80);
IC_WritByte(TWIC_P0,OSD2_CFG_INDEX,0x09);
for(m_wBuff[0]=0;m_wBuff[0]<16;m_wBuff[0]++)
{
IC_WritByte(TWIC_P0,OSD2_CFG_DATA,IndexColorTable[m_wBuff[0]*3+2]);
IC_WritByte(TWIC_P0,OSD2_CFG_DATA,IndexColorTable[m_wBuff[0]*3+1]);
IC_WritByte(TWIC_P0,OSD2_CFG_DATA,IndexColorTable[m_wBuff[0]*3]);
}
#endif //ICON2BP
272 1
273 1 }
274 #ifdef ICON2BP
void OSD2Load2BPFont(void)
{
OSD2SetRamAddr(Font2BPDataStrAdr);
if(FontWidth==OSD2FONTWIDTH12)
{
for(m_wBuff[1]=0;m_wBuff[1]<Font2BPNum;m_wBuff[1]++)
{
for(m_wBuff[0]=0; m_wBuff[0]<(FontHeight); m_wBuff[0]+=2)
{
m_wBuff[2] = (m_wBuff[1]* FontHeight+m_wBuff[0])*3;
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]+1]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]+3]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]+2]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]+5]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]+4]);
}
}
}
}
#endif //ICON2BP
296
297 #ifdef ICON4BP
298 void OSD2Load4BPFont(void)
299 {
300 1 OSD2SetRamAddr(OSD2Font4BPDataStrAdr);
301 1 if(OSD2FontWidth==OSD2FONTWIDTH12)
C51 COMPILER V8.08 OSD2_INITIAL 11/23/2007 00:57:19 PAGE 6
302 1 {
303 2 #ifdef T128
for(m_wBuff[0]=0;m_wBuff[0]<OSD2Font4BPNum;m_wBuff[0]++)
{
for(m_wBuff[1]=0; m_wBuff[1]<(OSD2FontHeight); m_wBuff[1]++)
{
m_wBuff[2] = (m_wBuff[0]* OSD2FontHeight+m_wBuff[1])*6;
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +1]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +3]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +2]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +5]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +4]);
}
}
#else
319 2 ICWr_Burst_A(OSD2_RAM_DL);
320 2 for(m_wBuff[0]=0;m_wBuff[0]<OSD2Font4BPNum;m_wBuff[0]++)
321 2 {
322 3 for(m_wBuff[1]=0; m_wBuff[1]<(OSD2FontHeight); m_wBuff[1]++)
323 3 {
324 4
325 4 m_wBuff[2] = (m_wBuff[0]* OSD2FontHeight+m_wBuff[1])*6;
326 4 ICWr_Burst_D(FontsStart[m_wBuff[2] +1]);
327 4 ICWr_Burst_D(FontsStart[m_wBuff[2]]);
328 4 ICWr_Burst_D(FontsStart[m_wBuff[2] +3]);
329 4 ICWr_Burst_D(FontsStart[m_wBuff[2] +2]);
330 4 ICWr_Burst_D(FontsStart[m_wBuff[2] +5]);
331 4 ICWr_Burst_D(FontsStart[m_wBuff[2] +4]);
332 4 }
333 3 }
334 2 ICWr_Burst_P();
335 2 #endif
336 2 }
337 1 else if(OSD2FontWidth==OSD2FONTWIDTH16)
338 1 {
339 2 #ifdef T128
for(m_wBuff[0]=0;m_wBuff[0]<OSD2Font4BPNum;m_wBuff[0]++)
{
for(m_wBuff[1]=0; m_wBuff[1]<(OSD2FontHeight); m_wBuff[1]++)
{
m_wBuff[2] = (m_wBuff[0]* OSD2FontHeight+m_wBuff[1])*8;
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +1]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2]]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +3]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +2]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +5]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +4]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +7]);
IC_WritByte(TWIC_P0,OSD2_RAM_DL,FontsStart[m_wBuff[2] +6]);
}
}
#else
357 2 ICWr_Burst_A(OSD2_RAM_DL);
358 2 for(m_wBuff[0]=0;m_wBuff[0]<OSD2Font4BPNum;m_wBuff[0]++)
359 2 {
360 3 for(m_wBuff[1]=0; m_wBuff[1]<(OSD2FontHeight); m_wBuff[1]++)
361 3 {
362 4
363 4 m_wBuff[2] = (m_wBuff[0]* OSD2FontHeight+m_wBuff[1])*8;
C51 COMPILER V8.08 OSD2_INITIAL 11/23/2007 00:57:19 PAGE 7
364 4 ICWr_Burst_D(FontsStart[m_wBuff[2] +1]);
365 4 ICWr_Burst_D(FontsStart[m_wBuff[2]]);
366 4 ICWr_Burst_D(FontsStart[m_wBuff[2] +3]);
367 4 ICWr_Burst_D(FontsStart[m_wBuff[2] +2]);
368 4 ICWr_Burst_D(FontsStart[m_wBuff[2] +5]);
369 4 ICWr_Burst_D(FontsStart[m_wBuff[2] +4]);
370 4 ICWr_Burst_D(FontsStart[m_wBuff[2] +7]);
371 4 ICWr_Burst_D(FontsStart[m_wBuff[2] +6]);
372 4 }
373 3 }
374 2 ICWr_Burst_P();
375 2
376 2 #endif
377 2 }
378 1
379 1 }
380
381 #endif //ICON4BP
382 /*void OSD2PatternFillInit(uCHAR code * pPattern,uCHAR ColorDepth, uCHAR Height, uCHAR Width)
383 {
384 OSD2CfgWr(OSD_PT_CTRL,ColorDepth);
385 OSD2CfgWr(OSD_PT_LUT_BASEADD,0x80);
386 OSD2CfgWr(OSD_PT_HSIZE,Height);
387 OSD2CfgWr(OSD_PT_VSIZE,Width);
388 OSD2CfgWr(OSD_PT_ALPBL_CTRL,00);
389
390 m_wBuff[2] = (Height*Width)/((ColorDepth&0x0C)>>2);
391 OSD2CfgWr(OSD_PT_CTRL,(ColorDepth|0x01));
392 for(m_wBuff[1]=0; m_wBuff[1]<m_wBuff[2]; m_wBuff[1]++)
393 {
394 OSD2CfgWr(OSD_PT_RAM_WRITE_PORT,pPattern[m_wBuff[1]]);
395 }
396 } */
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1031 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- 2
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -