📄 gamma.lst
字号:
C51 COMPILER V7.06 GAMMA 06/16/2005 10:05:41 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE GAMMA
OBJECT MODULE PLACED IN F:\T100_C~1\HUI_CH~1\铁将军\SIMULA~2\GAMMA.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE F:\T100_C~1\HUI_CH~1\铁将军\SIMULA~2\GAMMA.C DB SB OE
stmt level source
1 #include <reg51.h>
2 #include "common.h"
3 #include "System.h"
4 #include "TW101Reg.h"
5 #include "TwoWire.h"
6 #include "Gamma.h"
7 #include "GammaDat.h"
8
9 #define GM_RGB_ALL_SAME
10
11
12 //********************************************************************
13 //Gamma Table
14 //********************************************************************
15 char code GAMMAData[]={
16 0x50,39,
17 0x93,1,
18 0x00,
19 0x94,34,0x00,
20 0x00,0x10,0x28,0x38,0x40,0x48,0x50,0x58,
21 0x60,0x68,0x70,0x78,0x80,0x84,0x88,0x8c,
22 0x90,0x94,0x98,0x9c,0xA0,0xA8,0xB0,0xB8,
23 0xC0,0xC8,0xD0,0xD8,0xE0,0xE8,0xF0,0xF8,0xFF,
24 -1
25 };
26 char code FilterData[]={
27 //
28 0x50,92,
29 0x70,1,
30 0x81,
31 0x71,84,0x00,
32 /*0x54,0x92,0x94,0x82,0xD4,0x72,0x15,0x6B,0x55,0x5B,0x96,0x53,0xB5,0x43,0xD5,0x3B,
33 0xF4,0x2B,0x14,0x24,0x34,0x1C,0x54,0x14,0x74,0x0C,0x94,0x04,0xB4,0xCC,0xB3,0xD4,
34 //H fitler coef data
35 0x15,0x60,0xB5,0x14,0x40,0xB5,0x13,0x20,0xB5,0x13,0x02,0xBD,0x13,0xC4,0xBC,0x34,0xA6,0xC4,
36 0x34,0x68,0xC4,0x34,0x2A,0xC4,0x54,0xEC,0xCB,0x55,0x90,0xCB,0x75,0x52,0xD3,0x96,0x14,0xD3,
37 0x96,0xB6,0xCA,0xB6,0x58,0xCA,0xD7,0xFA,0xC1,0xF7,0x9C,0xC1,
38 //V16/H_16
39 0x38,0xDF,0xDC,//*/
40
41 //Vertical Filter Data output to register
42 0x00,0x82,0x51,0x7A,0x71,0x72,0x91,0x6A,
43 0xB1,0x62,0xD1,0x5A,0xF1,0x52,0x11,0x4B,
44 0x31,0x43,0x51,0x3B,0x71,0x33,0x91,0x2B,
45 0xB1,0x23,0xD1,0x1B,0xF1,0x13,0xE0,0x0B,
46 //H fitler coef data
47 0x00,0x00,0x04,0x00,0xE2,0x8B,0x11,0xC4,
48 0x8B,0x11,0x86,0x8B,0x11,0x68,0x93,0x11,
49 0x2A,0x93,0x32,0x0C,0x9B,0x32,0xCE,0x9A,
50 0x32,0x90,0x9A,0x32,0x52,0x9A,0x52,0x14,
51 0xA2,0x52,0xD6,0xA1,0x52,0x98,0xA1,0x72,
52 0x58,0x99,0x93,0x1A,0x99,0x93,0xDC,0x98,
53 //V16/H_16
54 0x93,0x1E,0x04,//*/
55 0x70,1,
C51 COMPILER V7.06 GAMMA 06/16/2005 10:05:41 PAGE 2
56 0xB0,
57 -1
58 };
59
60 /****************************************************************/
61 /* */
62 /* */
63 /* */
64 /****************************************************************/
65
66 void I2CWriteTbl(char *pString)
67 {
68 1 uCHAR cAddr,cReg,cNum0,cNum1,cINC;
69 1 while(*pString != -1)
70 1 {
71 2 cAddr = *pString++;
72 2 cNum0 = *pString++;
73 2 while(cNum0)
74 2 {
75 3 cReg = *pString++;
76 3 cNum1 = *pString++;
77 3 cNum0 -= (cNum1+2);
78 3 if(cNum1!=1)
79 3 {
80 4 cINC = *pString++;
81 4 cNum1 -= 1;
82 4 }
83 3 while(cNum1--)
84 3 {
85 4 I2CWriteByte(cAddr,cReg,*pString++);
86 4 cReg+=cINC;
87 4 }
88 3 }
89 2 }
90 1 }
91
92
93 void LoadGammaTable(uCHAR cGammaModeID)
94 {
95 1 // I2CWriteTbl(GAMMAData);
96 1 // I2CWriteTbl(FilterData);
97 1 #if 1
98 1 uCHAR i;
99 1 uCHAR c;
100 1 unsigned char code *p=pcGammaData[cGammaModeID];
101 1 unsigned char code *pg=pcGammaData[cGammaModeID];
102 1 unsigned char code *pb=pcGammaData[cGammaModeID];
103 1
104 1 #ifndef GM_RGB_ALL_SAME
uCHAR j;
uCHAR code **ppcGm;
uCHAR code *pcGm=pcGammaData[cGammaModeID];
#endif // GM_RGB_ALL_SAME
109 1
110 1 //disable I2C Auto_Inc_Address
111 1 I2CWriteByte(TW101,TW_INTERFACE,I2CReadByte(TW101,TW_INTERFACE)&~AUTO_INC);
112 1 //
113 1 #if 1//def GM_RGB_ALL_SAME
114 1 I2CWriteByte(TW101,IMG_FUN_CTRL,(I2CReadByte(TW101,IMG_FUN_CTRL)&0x3f)|0xc0);
115 1 I2CWriteByte(TW101,GAMMA_ADDR,0x00);
116 1
117 1 for(i=0;i<GAMMA_TABLE_DATA_SIZE;i++) {
C51 COMPILER V7.06 GAMMA 06/16/2005 10:05:41 PAGE 3
118 2 c=*p++;
119 2 // if(c)c=c-c/16;
120 2 I2CWriteByte(TW101,GAMMA_DATA,(c));
121 2 }
122 1 I2CWriteByte(TW101,IMG_FUN_CTRL,(I2CReadByte(TW101,IMG_FUN_CTRL)&0x3f)|0x80);
123 1 I2CWriteByte(TW101,GAMMA_ADDR,0x00);
124 1 for(i=0;i<GAMMA_TABLE_DATA_SIZE;i++) {
125 2 c=*pg++;
126 2 I2CWriteByte(TW101,GAMMA_DATA,c);
127 2 }
128 1 I2CWriteByte(TW101,IMG_FUN_CTRL,(I2CReadByte(TW101,IMG_FUN_CTRL)&0x3f)|0x40);
129 1 I2CWriteByte(TW101,GAMMA_ADDR,0x00);
130 1 for(i=0;i<GAMMA_TABLE_DATA_SIZE;i++) {
131 2 c=*pb++;
132 2 I2CWriteByte(TW101,GAMMA_DATA,c);
133 2 }
134 1 //11.13 I2CWriteByte(TW101,GAMMA_DATA,pcGammaDataRGB[cGammaModeID][i]);
135 1 #endif // GM_RGB_ALL_SAME
136 1 #if 0 //def GM_RGB_ALL_SAME
I2CWriteByte(TW101,IMG_FUN_CTRL,I2CReadByte(TW101,IMG_FUN_CTRL)&GAMMA_RGB);
I2CWriteByte(TW101,GAMMA_ADDR,0x00);
for(i=0;i<GAMMA_TABLE_DATA_SIZE;i++) {
c=*p++;
I2CWriteByte(TW101,GAMMA_DATA,c);
}
//11.13 I2CWriteByte(TW101,GAMMA_DATA,pcGammaDataRGB[cGammaModeID][i]);
#endif // GM_RGB_ALL_SAME
146 1
147 1 #ifndef GM_RGB_ALL_SAME
ppcGm = pcGammaData + cGammaModeID*GAMMA_PNUM;
for(j=3;j<=1;j--){
pcGm = *ppcGm++;
I2CWriteByte(TW101,IMG_FUN_CTRL,(I2CReadByte(TW101,IMG_FUN_CTRL)& ~GAMMA_CTL_MSK)|(j<<6));
I2CWriteByte(TW101,GAMMA_ADDR,0x00);
for(i=0;i<33;i++)
I2CWriteByte(TW101,GAMMA_DATA,pcGm[i]);
}
#endif // GM_RGB_ALL_SAME
158 1
159 1 // I2CWriteByte(TW101,IMG_FUN_CTRL,I2CReadByte(TW101,IMG_FUN_CTRL)|ENGAMMA);
160 1 I2CWriteByte(TW101,TW_INTERFACE,I2CReadByte(TW101,TW_INTERFACE)|AUTO_INC);
161 1
162 1 return;
163 1 #endif
164 1 }
C51 COMPILER V7.06 GAMMA 06/16/2005 10:05:41 PAGE 4
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
ScaleEnd . . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
ROMDATA. . . . . . . . . . . . . . . . TYPEDEF CODE INT ----- 2
VIDEOINPUT . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
sCHAR. . . . . . . . . . . . . . . . . TYPEDEF ----- CHAR ----- 1
uCHAR. . . . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
BOOL16 . . . . . . . . . . . . . . . . TYPEDEF ----- U_INT ----- 2
sROM8. . . . . . . . . . . . . . . . . TYPEDEF CODE CHAR ----- 1
uROM8. . . . . . . . . . . . . . . . . TYPEDEF CODE U_CHAR ----- 1
ScaleFULL. . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
isrcCVIDEO2. . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
isrcCVIDEO3. . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
isrcCVIDEO4. . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
BOOL . . . . . . . . . . . . . . . . . TYPEDEF DATA INT ----- 2
sWORD. . . . . . . . . . . . . . . . . TYPEDEF ----- INT ----- 2
Scale4_3 . . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
VOID . . . . . . . . . . . . . . . . . TYPEDEF ----- VOID ----- -----
uWORD. . . . . . . . . . . . . . . . . TYPEDEF ----- U_INT ----- 2
BITS . . . . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
_LoadGammaTable. . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
cGammaModeID . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
i. . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
c. . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0001H 1
p. . . . . . . . . . . . . . . . . . AUTO DATA PTR 0002H 2
pg . . . . . . . . . . . . . . . . . AUTO DATA PTR 0004H 2
pb . . . . . . . . . . . . . . . . . AUTO DATA PTR 0006H 2
_I2CReadByte . . . . . . . . . . . . . EXTERN CODE PROC ----- -----
BYTE . . . . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
pcGammaData. . . . . . . . . . . . . . PUBLIC CODE ARRAY 0021H 9
WORD . . . . . . . . . . . . . . . . . TYPEDEF ----- U_INT ----- 2
_I2CWriteByte. . . . . . . . . . . . . EXTERN CODE PROC ----- -----
sROM16 . . . . . . . . . . . . . . . . TYPEDEF CODE INT ----- 2
uROM16 . . . . . . . . . . . . . . . . TYPEDEF CODE U_INT ----- 2
isrc_end . . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
_I2CWriteTbl . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
pString. . . . . . . . . . . . . . . AUTO DATA PTR 0000H 3
cAddr. . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0003H 1
cReg . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0004H 1
cNum0. . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0005H 1
cNum1. . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0006H 1
cINC . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0007H 1
GammaDataTableRGB0 . . . . . . . . . . PUBLIC CODE ARRAY 0000H 33
isrcTV . . . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
GAMMAData. . . . . . . . . . . . . . . PUBLIC CODE ARRAY 002AH 42
FilterData . . . . . . . . . . . . . . PUBLIC CODE ARRAY 0054H 95
Scale16_9. . . . . . . . . . . . . . . E_CONST ----- U_CHAR ----- 1
Scale_Type . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
sDWORD . . . . . . . . . . . . . . . . TYPEDEF ----- LONG ----- 4
uDWORD . . . . . . . . . . . . . . . . TYPEDEF ----- U_LONG ----- 4
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 445 ----
CONSTANT SIZE = 179 ----
XDATA SIZE = ---- ----
C51 COMPILER V7.06 GAMMA 06/16/2005 10:05:41 PAGE 5
PDATA SIZE = ---- ----
DATA SIZE = ---- 16
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 + -