📄 dual_align.c
字号:
case(_ALIGN3_RAM_EE_ADC_PLUS):
case(_ALIGN3_RAM_EE_ADC_MINUS):
{
if((RamI2cCommandData[1]&0xF0)==0x30)
{//gain
if(RamI2cCommandData[0]==_ALIGN3_RAM_EE_ADC_PLUS)
stAdcData.AdcGain[RamI2cCommandData[1]-0x33]+=RamI2cCommandData[2];
else
stAdcData.AdcGain[RamI2cCommandData[1]-0x33]-=RamI2cCommandData[2];
RamI2cCommandData[2]=stAdcData.AdcGain[RamI2cCommandData[1]-0x33];
}
else if((RamI2cCommandData[1]&0xF0)==0x20)
{//offset
if(RamI2cCommandData[0]==_ALIGN3_RAM_EE_ADC_PLUS)
stAdcData.AdcOffset[RamI2cCommandData[1]-0x23]+=RamI2cCommandData[2];
else
stAdcData.AdcOffset[RamI2cCommandData[1]-0x23]-=RamI2cCommandData[2];
RamI2cCommandData[2]=stAdcData.AdcOffset[RamI2cCommandData[1]-0x23];
}
CAdjustAdcGainOffset();
CEepromSaveAdcData();
}
break;
case(_ALIGN3_READ_EE_ADC):
{
if((RamI2cCommandData[1]&0xF0)==0x20)
RamI2cCommandData[2]=stAdcData.AdcOffset[RamI2cCommandData[1]-0x23];
else if((RamI2cCommandData[1]&0xF0)==0x30)
RamI2cCommandData[2]=stAdcData.AdcGain[RamI2cCommandData[1]-0x33];
}
break;
case(_ALIGN1_WRITE_EEPROM):
{
if((RamI2cCommandData[1]>=0)&&(RamI2cCommandData[1]<=10)) // write serial number
{
CEepromWrite(_EEPROM_SN_ADDRESS+RamI2cCommandData[1],LENGTH(1) ,&RamI2cCommandData[2]);
break;
}
if(RamI2cCommandData[1]==0xB1) // write timer
{
CEepromRead(_DUTYTIMER_DATA_ADDRESS+4,LENGTH(1) ,&pData[10]);
pData[12]=((RamI2cCommandData[2]&0xfe)>>1);
pData[13]=((RamI2cCommandData[2]&0x01)<<7 | (pData[10]&0x7f));
CEepromWrite(_DUTYTIMER_DATA_ADDRESS+3,LENGTH(2) ,&pData[12]);
break;
}
else if(RamI2cCommandData[1]==0xB2)
{
CEepromRead(_DUTYTIMER_DATA_ADDRESS+4,LENGTH(1) ,&pData[10]);
pData[12]=((RamI2cCommandData[2]&0xfe)>>1 | (pData[10]&0x80));
pData[13]=((RamI2cCommandData[2]&0x01)<<7);
CEepromWrite(_DUTYTIMER_DATA_ADDRESS+4,LENGTH(2) ,&pData[12]);
break;
}
if(RamI2cCommandData[1]==_ALIGN2_EE_OSD_H)
{
#if(_OSD_TYPE == _BENQ_OSD)
g_usHEndPos=AlignMapToReal(RamI2cCommandData[2],_OSD_HPOS_MAX_BENQ,_OSD_HPOS_MIN_BENQ);
#else//_GENERIC_OSD
g_usHEndPos=AlignMapToReal(RamI2cCommandData[2],_OSD_HPOS_MAX_GENERIC,_OSD_HPOS_MIN_GENERIC);
#endif
pData[12] = HIBYTE(g_usHEndPos);
pData[13] = LOBYTE(g_usHEndPos);
#if(_OSD_TYPE == _BENQ_OSD)
CEepromWrite(_EEPROM_MENUPOSH_BENQ_ADDRESS,LENGTH(2),&pData[12]);
#else//_GENERIC_OSD
CEepromWrite(_EEPROM_MENUPOSH_GENERIC_ADDRESS,LENGTH(2),&pData[12]);
#endif
// break; //ryan 081218
}
if(RamI2cCommandData[1]==_ALIGN2_EE_OSD_V)
{
#if(_OSD_TYPE == _BENQ_OSD)
g_usVEndPos=AlignMapToReal((100-RamI2cCommandData[2]),_OSD_VPOS_MAX_BENQ,_OSD_VPOS_MIN_BENQ);
#else
g_usVEndPos=AlignMapToReal((100-RamI2cCommandData[2]),_OSD_VPOS_MAX_GENERIC,_OSD_VPOS_MIN_GENERIC);
#endif
pData[12] = HIBYTE(g_usVEndPos);
pData[13] = LOBYTE(g_usVEndPos);
#if(_OSD_TYPE == _BENQ_OSD)
CEepromWrite(_EEPROM_MENUPOSV_BENQ_ADDRESS,LENGTH(2),&pData[12]);
#else
CEepromWrite(_EEPROM_MENUPOSV_GENERIC_ADDRESS,LENGTH(2),&pData[12]);
#endif
// break;//ryan 081218
}
if(RamI2cCommandData[1]==_ALIGN2_EE_LANGUAGE)
{
#if(_OSD_TYPE == _BENQ_OSD)
pData[14]=LanguageIndexExchangeBenq[RamI2cCommandData[2]];
stGlobalData0.Language=pData[14];
if(stGlobalData0.Language>=_LANGUAGE_AMOUNT_BENQ)
{
stGlobalData0.Language=_ENGLISH_BENQ;
pData[14]=LanguageIndexExchangeBenq[1];
}
#else//_GENERIC_OSD
pData[14]=LanguageIndexExchangeGeneric[RamI2cCommandData[2]];
stGlobalData0.Language=pData[14];
if(stGlobalData0.Language>=_LANGUAGE_AMOUNT_GENERIC)
{
stGlobalData0.Language=_ENGLISH_GENERIC;
pData[14]=LanguageIndexExchangeGeneric[1];
}
#endif
}
else if(RamI2cCommandData[1]==_ALIGN2_EE_CT_INDEX)
{
#if(_OSD_TYPE == _BENQ_OSD)
pData[14]=ColorIndexExchangeBenq[RamI2cCommandData[2]];
#else//_GENERIC_OSD
pData[14]=ColorIndexExchangeGeneric[RamI2cCommandData[2]];
#endif
}
else if((RamI2cCommandData[1]>=_ALIGN2_EE_C1R)&&(RamI2cCommandData[1]<=_ALIGN2_EE_SRGBB)) //ARKIN 1227
{
if(RamI2cCommandData[2]>=_COLOR_MAX) RamI2cCommandData[2]=_COLOR_MAX;
if(RamI2cCommandData[2]<=_COLOR_MIN) RamI2cCommandData[2]=_COLOR_MIN;
pData[14]=RamI2cCommandData[2];
}
else if(RamI2cCommandData[1]==_ALIGN2_EE_CONTRAST)
pData[14]=AlignMapToReal(RamI2cCommandData[2],_CONTRAST_MAX,_CONTRAST_MIN);
else if((RamI2cCommandData[1]==_ALIGN2_EE_BRIGHT)) //ARKIN 1227
pData[14]=AlignMapToReal(RamI2cCommandData[2],_BACKLIGHT_MAX,_BACKLIGHT_MIN);
else if((RamI2cCommandData[1]==_ALIGN2_EE_SRGB_BRIGHT)) //ARKIN 1227
pData[14]=AlignMapToReal(RamI2cCommandData[2],_BACKLIGHT_MAX,_BACKLIGHT_MIN);
else if(RamI2cCommandData[1]==_ALIGN2_EE_VOLUME)
{
#if(_OSD_TYPE == _BENQ_OSD)
pData[14]=AlignMapToReal(RamI2cCommandData[2],_VOLUME_MAX_BENQ,_VOLUME_MIN_BENQ);
#else
pData[14]=AlignMapToReal(RamI2cCommandData[2],_VOLUME_MAX_GENERIC,_VOLUME_MIN_GENERIC);
#endif
}
else
pData[14]=RamI2cCommandData[2];
CEepromWrite(AlignGetEEAddress(),LENGTH(1),&pData[14]);
CEepromLoadGlobalData0();
CEepromLoadColorTempData();
CEepromLoadGlobalData1();
CEepromLoadGlobalData4();
CEepromLoadPictureData();//arkin 1227
CEepromRead(_SRGB_DEFAULT_DATA_ADDRESS,LENGTH(1),&ucSrgbDefaultBrightReal); //0103-2
CAdjustBacklight(); //arkin 1227
}
break;
case(_ALIGN1_READ_EEPROM):
{
if((RamI2cCommandData[1]>=0)&&(RamI2cCommandData[1]<=10)) // Read serial number
{
CEepromRead(_EEPROM_SN_ADDRESS+RamI2cCommandData[1],LENGTH(1) ,&RamI2cCommandData[2]);
}
else if(RamI2cCommandData[1]==0xB1) // Read timer
{
CEepromRead(_DUTYTIMER_DATA_ADDRESS+3,LENGTH(2) ,&pData[12]);
RamI2cCommandData[2]= (((pData[12]&0x7f)<<1) | ((pData[13]&0x80)>>7));
}
else if(RamI2cCommandData[1]==0xB2)
{
CEepromRead(_DUTYTIMER_DATA_ADDRESS+4,LENGTH(2) ,&pData[12]);
RamI2cCommandData[2]= (((pData[12]&0x7f)<<1) | ((pData[13]&0x80)>>7));
}
else if(RamI2cCommandData[1]==_ALIGN2_EE_LANGUAGE)
{
CEepromRead(_EEPROM_LANGUAGE_ADDRESS,LENGTH(1),&pData[15]);
#if(_OSD_TYPE == _BENQ_OSD)
{
for(i=0;i<17;i++)
{
if(LanguageIndexExchangeBenq[i]==pData[15])
RamI2cCommandData[2]=i;
}
}
#else//_GENERIC_OSD
{
for(i=0;i<8;i++)
{
if(LanguageIndexExchangeGeneric[i]==pData[15])
{
if((i == 0x08) || (i == 0x09) || (i == 0x0D) || (i == 0x0E) || (i == 0x0F) || (i == 0x10))
{
RamI2cCommandData[2]=0x01;
break;
}
else if(i == 0x06)
{
RamI2cCommandData[2]=0x07;
break;
}
else
{
RamI2cCommandData[2]=i;
break;
}
}
}
}
#endif
}
else if(RamI2cCommandData[1]==_ALIGN2_EE_CT_INDEX)
{
CEepromRead(_EEPROM_COLORTEMP_ADDRESS,LENGTH(1),&pData[15]);
#if(_OSD_TYPE == _BENQ_OSD)
for(i=1;i<7;i++)
{
if(ColorIndexExchangeBenq[i]==pData[15])
RamI2cCommandData[2]=i;
}
#else
for(i=1;i<5;i++)
{
if(ColorIndexExchangeGeneric[i]==pData[15])
RamI2cCommandData[2]=i;
}
#endif
}
else if(RamI2cCommandData[1]==_ALIGN2_EE_OSD_H)
{
#if(_OSD_TYPE == _BENQ_OSD)
CEepromRead(_EEPROM_MENUPOSH_BENQ_ADDRESS,LENGTH(2),&pData[12]);
#else//_GENERIC_OSD
CEepromRead(_EEPROM_MENUPOSH_GENERIC_ADDRESS,LENGTH(2),&pData[12]);
#endif
g_usHEndPos=((pData[12]<<8) | (pData[13]));
#if(_OSD_TYPE == _BENQ_OSD)
RamI2cCommandData[2]=AlignMapToPercent(g_usHEndPos,_OSD_HPOS_MAX_BENQ,_OSD_HPOS_MIN_BENQ);
#else//_GENERIC_OSD
RamI2cCommandData[2]=AlignMapToPercent(g_usHEndPos,_OSD_HPOS_MAX_GENERIC,_OSD_HPOS_MIN_GENERIC);
#endif
}
else if(RamI2cCommandData[1]==_ALIGN2_EE_OSD_V)
{
#if(_OSD_TYPE == _BENQ_OSD)
CEepromRead(_EEPROM_MENUPOSV_BENQ_ADDRESS,LENGTH(2),&pData[12]);
#else//_GENERIC_OSD
CEepromRead(_EEPROM_MENUPOSV_GENERIC_ADDRESS,LENGTH(2),&pData[12]);
#endif
g_usVEndPos=((pData[12]<<8) | (pData[13]));
#if(_OSD_TYPE == _BENQ_OSD)
RamI2cCommandData[2] = 100 - AlignMapToPercent(g_usVEndPos,_OSD_VPOS_MAX_BENQ,_OSD_VPOS_MIN_BENQ);
#else//_GEGERIC_OSD
RamI2cCommandData[2] = 100 - AlignMapToPercent(g_usVEndPos,_OSD_VPOS_MAX_GENERIC,_OSD_VPOS_MIN_GENERIC);
#endif
}
else
{
CEepromRead(AlignGetEEAddress(),LENGTH(1),&RamI2cCommandData[2]);
if((RamI2cCommandData[1]==_ALIGN2_EE_SRGB_BRIGHT) || (RamI2cCommandData[1]==_ALIGN2_EE_BRIGHT))
RamI2cCommandData[2]=AlignMapToPercent(RamI2cCommandData[2],_BACKLIGHT_MAX,_BACKLIGHT_MIN);
else if(RamI2cCommandData[1]==_ALIGN2_EE_CONTRAST)
RamI2cCommandData[2]=AlignMapToPercent(RamI2cCommandData[2],_CONTRAST_MAX,_CONTRAST_MIN);
else
RamI2cCommandData[2]=RamI2cCommandData[2];
}
}
break;
case(_ALIGN1_COLORTEMP):
{
if(RamI2cCommandData[1]<=5)
{
#if(_OSD_TYPE == _BENQ_OSD)
stGlobalData0.ColorTemp=ColorIndexExchangeBenq[RamI2cCommandData[1]];
#else
stGlobalData0.ColorTemp=ColorIndexExchangeGeneric[RamI2cCommandData[1]];
#endif
stGlobalData0.StandardModeCT=stGlobalData0.ColorTemp;
#if(_OSD_TYPE == _BENQ_OSD)
if(stGlobalData0.ColorTemp==_SRGB_COLOR)
stGlobalData4.PictureMode=_SRGB_PICTURE;
else
stGlobalData4.PictureMode=_STANDARD_PICTURE;
#else//_GEGNERIC_OSD
stGlobalData4.PictureMode=_STANDARD_PICTURE;
#endif
CEepromLoadColorTempData();
CEepromLoadPictureData();
CAdjustAccessGammaTable();
#if(_OSD_TYPE == _BENQ_OSD)
CAdjustDemoWindow();
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -