📄 display.lst
字号:
249 1
250 1 #endif
251 1 #ifdef WVGA
if(!m_cStandard)//NTSC
*wDHTotal = ((int)fDHTotalF/2 * 2);
else
*wDHTotal = ((int)fDHTotalF/2 * 2)-0x0a;
#endif
258 1 m_dwBuff[1] = dwFrameXclkCnt*1000/ (*wDHTotal);
259 1 *wDVTotal = m_dwBuff[1] / 1000;
260 1 *wDVFrac = m_dwBuff[1] % 1000;
261 1
262 1 return fDHTotalF;
263 1 }
264
265 uWORD DisplayVibration(float fDHTotalF, uWORD wDHTotal, uWORD* wDVTotal, uWORD wDWVSZ, uWORD wDVFrac)
266 {
267 1 uWORD wActiveDiff;
268 1 uWORD wVibLeft;
269 1
270 1 wActiveDiff=(fDHTotalF-wDHTotal)*wDWVSZ;
271 1
272 1 if(wDVFrac % 10 >= 5)
273 1 wDVFrac = wDVFrac / 10 + 1;
274 1 else
275 1 wDVFrac = wDVFrac / 10;
276 1
277 1 if(wDVFrac < 95)
278 1 {
279 2 wDVFrac = wDVFrac + 5;
280 2 m_wBuff[0] = (unsigned long)wDVFrac*wDHTotal/100;
281 2 }
282 1 else
283 1 {
284 2 m_wBuff[0] = 0;
285 2 }
286 1 //m_wBuff[0] is fraction part of output hsync(pixels)
287 1
288 1
289 1 if(m_wBuff[0]<wActiveDiff)
290 1 {
291 2 if(wActiveDiff-m_wBuff[0]>=wDHTotal*0.3)
292 2 {
293 3 *wDVTotal -= 1;
294 3 m_wBuff[0] += wDHTotal;
295 3 }
296 2 }
297 1 if(m_wBuff[0]>=wActiveDiff)
298 1 {
299 2 if(wActiveDiff <= (unsigned long)wDWVSZ * 255 / 128)
300 2 m_cBuff[0]=(unsigned long)wActiveDiff*128/wDWVSZ;
301 2 else
C51 COMPILER V7.06 DISPLAY 06/16/2005 10:05:42 PAGE 6
302 2 m_cBuff[0]=255;
303 2 #ifndef T100 //Ruby test 2004-08-19
I2CWriteByte(TW101, 0x86, m_cBuff[0]);
#endif
306 2 //Ruby test 2004-06-03
307 2 m_cBuff[0]=(m_wBuff[0]-wActiveDiff)/(*wDVTotal-DWVSST-DISP_DFLT_VSWIDTH-wDWVSZ);
308 2 /////
309 2 #ifndef T100
I2CWriteByte(TW101, 0x87, m_cBuff[0]);
#endif
312 2 wVibLeft=0;
313 2 }
314 1 else
315 1 {
316 2 if(m_wBuff[0] <= (unsigned long)wDWVSZ*255/128)
317 2 m_cBuff[0]=(unsigned long)m_wBuff[0]*128/wDWVSZ;
318 2 else
319 2 m_cBuff[0]=255;
320 2 #ifndef T100 //Ruby test 2004-08-19
I2CWriteByte(TW101, 0x86, m_cBuff[0]);
I2CWriteByte(TW101, 0x87, 0);
#endif
324 2 wVibLeft=(wActiveDiff-m_wBuff[0]);
325 2 }
326 1 return wVibLeft; //Remap DCLK
327 1 }
328
329
330 uDWORD DisplayGetXclkCnt(uDWORD dwFrameXclkCnt)
331 {
332 1 dwFrameXclkCnt *= DNDIV_40;
333 1 return dwFrameXclkCnt;
334 1 }
335
336 uDWORD GetInputVSyncXclkCnt(void)
337 {
338 1 uDWORD dwVSyncCount;
339 1
340 1 m_cBuff[0] = I2CReadByte(TW101, 0x50);
341 1 I2CWriteByte(TW101, 0x50, m_cBuff[0] | 0x10); //Start to Measurement VSYNC counter using XCLK
342 1
343 1 m_cBuff[0] = 100;
344 1 while(m_cBuff[0]--)
345 1 {
346 2 twdDelay(1);
347 2 if ((I2CReadByte(TW101, 0x50)&0x20)) //V sync counter is done exit
348 2 break;
349 2 }
350 1 m_cBuff[0] = I2CReadByte(TW101, 0x50);
351 1 m_cBuff[0] &= 0xCF; //Disable Auto Position
352 1 I2CWriteByte(TW101, 0x50, m_cBuff[0]);
353 1
354 1 dwVSyncCount = I2CReadByte(TW101, 0x53);
355 1 dwVSyncCount <<= 8;
356 1 dwVSyncCount |= I2CReadByte(TW101, 0x52);
357 1 dwVSyncCount <<= 8;
358 1 dwVSyncCount |= I2CReadByte(TW101, 0x51);
359 1
360 1 return dwVSyncCount;
361 1 }
362
363
C51 COMPILER V7.06 DISPLAY 06/16/2005 10:05:42 PAGE 7
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P0 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0080H 1
isrcSVIDEO . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
P1 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0090H 1
P2 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A0H 1
idVIDEO_SHARP_INDEX. . . . . . . . . . E_CONST ----- U_CHAR ----- 1
_DisplayGetHVTotal . . . . . . . . . . PUBLIC CODE PROC 0000H -----
wDHTotal . . . . . . . . . . . . . . AUTO DATA PTR 0000H 3
wDVTotal . . . . . . . . . . . . . . AUTO DATA PTR 0003H 3
wDVFrac. . . . . . . . . . . . . . . AUTO DATA PTR 0006H 3
wDWVSZ . . . . . . . . . . . . . . . AUTO DATA U_INT 0009H 2
dwFrameXclkCnt . . . . . . . . . . . AUTO DATA U_LONG 000BH 4
fDHTotalF. . . . . . . . . . . . . . AUTO DATA FLOAT 000FH 4
ScaleEnd . . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
ROMDATA. . . . . . . . . . . . . . . . TYPEDEF CODE INT ----- 2
VIDEOINPUT . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
tagEEPVIDEO. . . . . . . . . . . . . . * TAG * ----- STRUCT ----- 8
cSharp . . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0000H 1
cBright. . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0001H 1
cContrast. . . . . . . . . . . . . . MEMBER ----- U_CHAR 0002H 1
cSat . . . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0003H 1
cHue . . . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0004H 1
cVolume. . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0005H 1
cSource. . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0006H 1
cFlag. . . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0007H 1
sCHAR. . . . . . . . . . . . . . . . . TYPEDEF ----- CHAR ----- 1
idTVCHANNEL_STAT . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
uCHAR. . . . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
BOOL16 . . . . . . . . . . . . . . . . TYPEDEF ----- U_INT ----- 2
DSPPLL_40. . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
DSPPLL_42. . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
_DisplayGetXclkCnt . . . . . . . . . . PUBLIC CODE PROC 0000H -----
dwFrameXclkCnt . . . . . . . . . . . * REG * DATA U_LONG 0004H 4
DSPPLL_36. . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
sROM8. . . . . . . . . . . . . . . . . TYPEDEF CODE CHAR ----- 1
uROM8. . . . . . . . . . . . . . . . . TYPEDEF CODE U_CHAR ----- 1
idVIDEO_FLAG_INDEX . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
ScaleFULL. . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
m_wVTotal. . . . . . . . . . . . . . . EXTERN IDATA U_INT ----- 2
_twdDelay. . . . . . . . . . . . . . . EXTERN CODE PROC ----- -----
isrcCVIDEO2. . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
isrcCVIDEO3. . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
isrcCVIDEO4. . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
BOOL . . . . . . . . . . . . . . . . . TYPEDEF DATA INT ----- 2
m_dwBuff . . . . . . . . . . . . . . . EXTERN DATA ARRAY ----- 8
sWORD. . . . . . . . . . . . . . . . . TYPEDEF ----- INT ----- 2
Scale4_3 . . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
VOID . . . . . . . . . . . . . . . . . TYPEDEF ----- VOID ----- -----
uWORD. . . . . . . . . . . . . . . . . TYPEDEF ----- U_INT ----- 2
BITS . . . . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
_I2CReadByte . . . . . . . . . . . . . EXTERN CODE PROC ----- -----
BYTE . . . . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
m_cBuff. . . . . . . . . . . . . . . . EXTERN IDATA ARRAY ----- 4
m_wHRes. . . . . . . . . . . . . . . . EXTERN DATA U_INT ----- 2
DSPPLL_DEFAULT . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
eEEPVIDEO. . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
_DisplaySetPrefill . . . . . . . . . . PUBLIC CODE PROC 0000H -----
wDWVSZ . . . . . . . . . . . . . . . AUTO DATA U_INT 0000H 2
C51 COMPILER V7.06 DISPLAY 06/16/2005 10:05:42 PAGE 8
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
wDHTotal . . . . . . . . . . . . . . AUTO DATA U_INT 0002H 2
wDVTotal . . . . . . . . . . . . . . AUTO DATA U_INT 0004H 2
wPrefill . . . . . . . . . . . . . . AUTO DATA U_INT 0006H 2
WORD . . . . . . . . . . . . . . . . . TYPEDEF ----- U_INT ----- 2
m_cScaleratio. . . . . . . . . . . . . EXTERN IDATA U_CHAR ----- 1
DisplayProcess . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
wDVTotal . . . . . . . . . . . . . . AUTO DATA U_INT 0000H 2
wDHTotal . . . . . . . . . . . . . . AUTO DATA U_INT 0002H 2
wVOffset . . . . . . . . . . . . . . AUTO DATA U_INT 0004H 2
wDWVSZ . . . . . . . . . . . . . . . AUTO DATA U_INT 0006H 2
wDVFrac. . . . . . . . . . . . . . . AUTO DATA U_INT 0008H 2
wVibLeft . . . . . . . . . . . . . . AUTO DATA U_INT 000AH 2
wDHBlk . . . . . . . . . . . . . . . AUTO DATA U_INT 000CH 2
fDHTotalF. . . . . . . . . . . . . . * REG * DATA FLOAT 0004H 4
m_dwTemp . . . . . . . . . . . . . . . PUBLIC DATA ARRAY 0000H 8
_I2CWriteByte. . . . . . . . . . . . . EXTERN CODE PROC ----- -----
idVIDEO_BRIGHT_INDEX . . . . . . . . . E_CONST ----- U_CHAR ----- 1
cNTSC_OFFSET . . . . . . . . . . . . . EXTERN DATA U_CHAR ----- 1
m_wVRes. . . . . . . . . . . . . . . . EXTERN DATA U_INT ----- 2
m_wBuff. . . . . . . . . . . . . . . . EXTERN IDATA ARRAY ----- 6
sROM16 . . . . . . . . . . . . . . . . TYPEDEF CODE INT ----- 2
uROM16 . . . . . . . . . . . . . . . . TYPEDEF CODE U_INT ----- 2
isrc_end . . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
EEPVIDEO . . . . . . . . . . . . . . . TYPEDEF ----- STRUCT ----- 8
cSharp . . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0000H 1
cBright. . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0001H 1
cContrast. . . . . . . . . . . . . . MEMBER ----- U_CHAR 0002H 1
cSat . . . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0003H 1
cHue . . . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0004H 1
cVolume. . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0005H 1
cSource. . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0006H 1
cFlag. . . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0007H 1
_DisplaySetTiming. . . . . . . . . . . PUBLIC CODE PROC 0000H -----
wDHTotal . . . . . . . . . . . . . . AUTO DATA U_INT 0000H 2
wDVTotal . . . . . . . . . . . . . . AUTO DATA U_INT 0002H 2
wTemp. . . . . . . . . . . . . . . . AUTO DATA U_INT 0004H 2
idVIDEO_SOURCE_INDEX . . . . . . . . . E_CONST ----- U_CHAR ----- 1
m_wDWHSZ . . . . . . . . . . . . . . . PUBLIC DATA U_INT 0008H 2
idVIDEO_VOLUME_INDEX . . . . . . . . . E_CONST ----- U_CHAR ----- 1
isrcTV . . . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
idVIDEO_HUE_INDEX. . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
m_cStandard. . . . . . . . . . . . . . EXTERN IDATA U_CHAR ----- 1
GetInputVSyncXclkCnt . . . . . . . . . PUBLIC CODE PROC 0000H -----
dwVSyncCount . . . . . . . . . . . . AUTO DATA U_LONG 0000H 4
cPAL_OFFSET. . . . . . . . . . . . . . EXTERN DATA U_CHAR ----- 1
idVIDEO_SAT_INDEX. . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
Scale16_9. . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
_DisplayVibration. . . . . . . . . . . PUBLIC CODE PROC 0000H -----
fDHTotalF. . . . . . . . . . . . . . AUTO DATA FLOAT 0000H 4
wDHTotal . . . . . . . . . . . . . . AUTO DATA U_INT 0004H 2
wDVTotal . . . . . . . . . . . . . . AUTO DATA PTR 0006H 3
wDWVSZ . . . . . . . . . . . . . . . AUTO DATA U_INT 0009H 2
wDVFrac. . . . . . . . . . . . . . . AUTO DATA U_INT 000BH 2
wActiveDiff. . . . . . . . . . . . . AUTO DATA U_INT 000DH 2
wVibLeft . . . . . . . . . . . . . . AUTO DATA U_INT 000FH 2
Scale_Type . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
idVIDEO_CONTRAST_INDEX . . . . . . . . E_CONST ----- U_CHAR ----- 1
C51 COMPILER V7.06 DISPLAY 06/16/2005 10:05:42 PAGE 9
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
sDWORD . . . . . . . . . . . . . . . . TYPEDEF ----- LONG ----- 4
uDWORD . . . . . . . . . . . . . . . . TYPEDEF ----- U_LONG ----- 4
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 2299 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 10 68
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 + -