亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? setup.c

?? 車載電子影音系統(tǒng)dvd播放系統(tǒng)原程序代碼
?? C
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
#define MAIN_SETUP_DECLARE


#include "winav.h"

#ifndef SYSTEM_8051
#include <stdio.h>
#include <stdlib.h>
#endif

#include <string.h>

#include    "input.h"
#include    "osd.h"
#include    "hal.h"
#include    "cc.h"
//#include "gdimsg.chi"
#include	"setup.h"
#include    "avsys.h"   // LLY.277a-2
#include    "hal.h"
#include    "chips.h"

#include    "navigate.h"
#include    "ucode.h"
#include    "cdinfo.h"
#include    "utl.h"
#include    "servo.h"

#include	"gdi.h"
#include	"osd3.h"

#include    "comutl.h"      // TCH1.21-1;
#include    "CTString.h"    // Brian2.31

//CoCo1.11a, for backdoor
// Brian1.11b
#define BACKDOOR_DISPLAY_VERSION_START_V	268 //Brian1.25 //300//400
#define BACKDOOR_DISPLAY_VERSION_START_H	(120+SETUP_GLOBAL_OFFSET) // Brian1.24


// Brian0.87
// We can enter back door when selection bar is on a specified position
// BACKDOOR_ENTRY_POINT defines this position
#define BACKDOOR_ENTRY_POINT    SETUP_MAIN_LANGUAGE

#define WRITE_EEPROM_ENABLE
//#define SUPPORT_BACK_DOOR_APS 


// brian.277a-3rd, definition for _SetTestTone function
#define MUTE_CHANNEL    0
#define L_CHANNEL       1
#define R_CHANNEL       2
#define C_CHANNEL       3
#define LS_CHANNEL      4
#define RS_CHANNEL      5
#define SW_CHANNEL      6

#ifndef REMOVE_SETUP_SPEAKER_TEST
BYTE    _bTestToneStage;
DWORD   _dwStageCount;
BYTE    _bDSPTestTone;  // record whether we are using DSP test tone micro code or not
#endif

// Brian1.08a
#ifdef SUPPORT_SETUP_HORIZONTAL_ICON_MENU
// for horizontal icon menu, the backdoor area is moved to bottom-right
#define BACKDOOR_DISPLAY_X      (460+SETUP_GLOBAL_OFFSET) // Brian1.24
#define BACKDOOR_DISPLAY_Y      280

#define BACKDOOR_SERVO_X      (300+SETUP_GLOBAL_OFFSET) // Brian1.24
#define BACKDOOR_SERVO_Y      280

#else

#define BACKDOOR_DISPLAY_X      (460+SETUP_GLOBAL_OFFSET) // Brian1.24
#define BACKDOOR_DISPLAY_Y      36

#define BACKDOOR_SERVO_X      (300+SETUP_GLOBAL_OFFSET) // Brian1.24
#define BACKDOOR_SERVO_Y      36

#endif


#define BACKDOOR_OUTPUT_NUMBER(X, Y, NUM)\
    {\
        GDI_FILL_RECT(X, Y, X+95, Y+31, OSDSETUP_ENTRY_MAIN_COLOR_BG);\
        GDI_NumberToString(NUM);\
        __wGDIx=X;\
        __wGDIy=Y;\
        GDI_DrawString();\
    }

#define BACKDOOR_OUTPUT_STRING(X, Y)\
    {\
        GDI_FILL_RECT(BACKDOOR_SERVO_X, Y, BACKDOOR_SERVO_X+225, Y+31, OSDSETUP_ENTRY_MAIN_COLOR_BG);\
        GDI_CopyMsgString();\
        __wGDIx=X;\
        __wGDIy=Y;\
        GDI_DrawString();\
    }

#define BACKDOOR_CLEAR_NUMBER()\
    {\
        GDI_FILL_RECT(BACKDOOR_SERVO_X, BACKDOOR_SERVO_Y, BACKDOOR_SERVO_X+225, BACKDOOR_SERVO_Y+31, OSDSETUP_ENTRY_MAIN_COLOR_BG);\
    }



//LJY275e
// wyc.277a-2, rename by SUPPORT_CDIF.
#ifdef SUPPORT_CDIF
BIT gbtServoInfo = FALSE;       
BIT gbtServoRegRW = FALSE;      
BYTE gbKeyCntr, gbTestItem;     
WORD gwValue;   
void _ServoDebugInfo(void) ;

#endif //SUPPORT_CDIF       
#ifdef PRESTOP_BEFORE_SETUP_AND_PROGRAM //XuLi.230
BYTE __bPreCountStop;//Xuli1.26, Save the previous stop mode before entering SETUP to decide if need resume after exit.
extern BYTE __bProgramStop; //Xuli1.26, Use this variable check such condition: if program cause stop, then SETUP, __bPreCountStop<>0, but still need resume after exit SETUP
#endif

// save to EEPROM info.
//BIT     __btInputPassword; //=FALSE;
//BYTE    __bPasswordIndex; // = 0;
BYTE    __bPassword[SETUP_PASSWORD_NO+1];
BYTE    __bSetupMode; // = FALSE; put in _INITIAL_Variables_PowerON

//BYTE    __btInputMenuLanguageCode; //=FALSE;
//BYTE    __bMenuLanguageCodeIndex; // = 0;
//BYTE    __bMenuLanguageCode[4];

//BYTE    __btInputAudioLanguageCode; //=FALSE;
//BYTE    __bAudioLanguageCodeIndex; // = 0;
//BYTE    __bAudioLanguageCode[4];

//BYTE    __btInputSPSTLanguageCode; //=FALSE;
//BYTE    __bSPSTLanguageCodeIndex;// = 0;
//BYTE    __bSPSTLanguageCode[4];

BYTE	__bLanguageCode[4];

BYTE    _bAudioTypeChange; // = FALSE;
BYTE    _bParentalControlChange; // = FALSE;

// for SETUP_InputPassword
BYTE    __bInputPassword; //=FALSE;
BYTE    __bInputPasswordIndex; // = 0;


BYTE *pbSetupPtr;

BYTE    i;
BYTE _bSetupTemp;

#ifdef _DEBUG_INFO
BYTE _bEEPROMError = 0;
#endif

// update Setup info to SPRM
extern  WORD __wSPRMs [24];
extern  BYTE __bNowBTNNumber;
extern  BYTE __bInvalidRegion;
extern  BYTE _bShowCEMessage;
extern  BYTE __bServoRevision[5];
extern  void _SetAudType(BYTE bType);  // in CHIPS module

void    _SetAngleMarkTime(void);
void    _WriteSetupData(BYTE bSetup, BYTE bDefaultPassword);
void    _SetTestTone(BYTE bChannel);
void    _SoftVolumeMax(void); // brian.277a-3rd
void OSDSETUP_Display(void);
void OSDSETUP_ProcessSpeaker(void);

//CoCo1.11a, for backdoor
void _OutputAllSWVersion(void);
void _OutputVersion(void);
void _ClearVersionRegion(void);

//RECT    _rcArea;
BYTE	_bPasswordOK=FALSE;
BYTE    __SetupMode=FALSE;


extern BYTE    _bGDIInit;
extern BYTE __bThumbnailRepaint;
extern BYTE    __bThumbnailMode;

extern  BYTE    DATA    _bOSDLang;

//CoCo1.11a, for backdoor
extern WORD _wHPos;
extern WORD __wVStart; // Brian1.25, for temp usage in _OutputAllSWVersion
extern BYTE    _bUDEData[6];
extern COPYINFO    cpinfo ; // Brian1.25

void _SaveDataToSetupInfo(void);
void _ProcessBackDoorKey(void);
void _SpeakerTest(void);
void _SetAnalogEnable(void);

//Alex1.07a, 20031013 SHOW PSCAN PROMPT
#if defined (SUPPORT_PSCAN_PROMPT_SETUP) || defined (SUPPORT_PSCAN_PROMPT_OSD)
extern BYTE __bOSDPromptPreKey;
extern BYTE __bOSDPromptMode;
extern BYTE OSDSETUP_InputPscan(BYTE bKey);
extern void OSDSETUP_ScreenVideoOutputPscanDlg(void);
#endif //#if defined (SUPPORT_PSCAN_PROMPT_SETUP) || defined (SUPPORT_PSCAN_PROMPT_OSD)


BYTE SETUP_ProcessKey(BYTE bKey)
{

    if ((__bSetupMode == FALSE) && (__bKey!=KEY_SETUP))
    {
        // If not in SETUP mode now, and Key is not SETUP
        // just return, process as normal keys
        return __bKey; //FALSE;
    }

    if ((__bKey == KEY_POWER) || (__bKey == KEY_OPEN_CLOSE))
    {
       
        //clear highlight
        HAL_VCD30_Area(FALSE);
        __bSetupMode = FALSE;
        //Brian1.05
        //_bDoBackDoor = FALSE;
        if (_bDoBackDoor)
            _ExitBackDoor();
        __bInputPassword = FALSE;

#if defined (SUPPORT_PSCAN_PROMPT_SETUP) || defined (SUPPORT_PSCAN_PROMPT_OSD)
            // Brian1.07a, cancel PScan prompt
            __bOSDPromptMode = FALSE;
#endif


        //Brian0.86-2
        // clear the region and inform OSD
        GDI_ClearRegion(__bCurrentRegionId);
//        OSD_Output(MSG_OSDAPP, OSD_APPMODE_EXIT, 0x0); 
		OSD_OUTPUT_MACRO(MSG_OSDAPP, OSD_APPMODE_EXIT, 0x0); // Brian1.02

        return __bKey; //TRUE;
    }

    // Brian2.81, we treate compound KEY_PLAY_PAUSE/ KEY_PAUSE_STEP as KEY_PAUSE in backdoor
    if (_bDoBackDoor)
    {
        if (__bKey == KEY_PLAY_PAUSE || __bKey == KEY_PAUSE_STEP)
            __bKey = KEY_PAUSE;

        _ProcessBackDoorKey();
        return KEY_NO_KEY;

    }
    else
    {
        if (__bKey == KEY_PLAY || __bKey == KEY_PLAY_PAUSE)
            __bKey = KEY_ENTER;

    }


	if (__bInputPassword)
	{
		extern BYTE _bMENUTemp;

		if (__wMENUCurrentItemId == SETUP_CUSTOM_CHANGE_PASSWORD)
		{

			_bMENUTemp = OSDSETUP_ChangePassword(__bKey);
			if (_bMENUTemp == SETUP_INPUT_PASSWORD_VERIFIED)
			{

#ifdef WRITE_EEPROM_ENABLE //SYSTEM_8051
            HAL_EEPROM_PWrite(SETUP_ADDR_PASSSTRING, &__SetupInfo.wDefaultPassword, 2);
#endif
			}

			__bKey = KEY_NO_KEY;

		}
		else if (__wMENUCurrentItemId == SETUP_CUSTOM_PARENTAL)
		{
			_bMENUTemp = SETUP_InputPassword(__bKey);
			if (_bMENUTemp == SETUP_INPUT_PASSWORD_CORRECT)
			{
				__bKey = KEY_RIGHT;
				_bPasswordOK = TRUE;
			
			}
			else
			{
				__bKey = KEY_NO_KEY;

			}
		}
//Alex1.07a,20031013 SETUP_SHOW_PSCAN_PROMP
#ifdef SUPPORT_PSCAN_PROMPT_SETUP   
        //Alex1.07a 20031009 if current menu is one of pscan, 
        //  choose support pscan or not
        
        else if (__wMENUCurrentItemId == SETUP_SCREEN_VIDEO_OUTPUT_YUV_PSCAN ||
			     __wMENUCurrentItemId == SETUP_SCREEN_VIDEO_OUTPUT_RGB_PSCAN ||
				 __wMENUCurrentItemId == SETUP_SCREEN_VIDEO_OUTPUT_VGA) 
                

		{   
            
            _bMENUTemp = OSDSETUP_InputPscan(__bKey);
            // move to OSD3 to handle it
            /*
			if (_bMENUTemp == SETUP_INPUT_PASSWORD_CORRECT)
			{
                OSDMENU_MenuOperation(KEY_ENTER);                
                _SaveDataToSetupInfo();      
			}
            */
            /*
            else if (_bMENUTemp ==SETUP_INPUT_PASSWORD_WRONG)
            {
               
                switch (__wMENUCurrentItemId)
				{

                    case SETUP_SCREEN_VIDEO_OUTPUT_VGA:                                                
                        OSDMENU_MenuOperation(KEY_UP);
                        OSDMENU_MenuOperation(KEY_UP);                       
                    case SETUP_SCREEN_VIDEO_OUTPUT_YUV_PSCAN:
                    case SETUP_SCREEN_VIDEO_OUTPUT_RGB_PSCAN:                           
                        OSDMENU_MenuOperation(KEY_UP);
                        OSDMENU_MenuOperation(KEY_UP);  
                    OSDMENU_MenuOperation(KEY_ENTER);                   
                }
            }
            _SaveDataToSetupInfo();      
            */
		}        
#endif //#ifdef SUPPORT_PSCAN_PROMPT_SETUP


		else //if (__wMENUCurrentItemId == SETUP_LANGUAGE_MENU_OTHERS ||
			 //    __wMENUCurrentItemId == SETUP_LANGUAGE_AUDIO_OTHERS ||
			 //	 __wMENUCurrentItemId == SETUP_LANGUAGE_SP_OTHERS)
		{
			_bMENUTemp = OSDSETUP_InputLanguageCode(__bKey);
			if (_bMENUTemp == SETUP_INPUT_PASSWORD_CORRECT)
			{
				OSDMENU_MenuOperation(KEY_ENTER);
				//_SaveDataToSetupInfo(); // Brian1.07, move after Language code transfer and put in __SetupInfo.xxxLanguageCode

				switch (__wMENUPrevItemId)
				{
				case SETUP_LANGUAGE_MENU_OTHERS:
					//Save the menu language code to __SetupInfo
					__SetupInfo.wMenuLanguageCode = _GetLanguageNumber();
					//Save the data to EEPROM
#ifdef WRITE_EEPROM_ENABLE //SYSTEM_8051
					HAL_EEPROM_PWrite(SETUP_ADDR_MENU_LANGUAGE_CODE, &__SetupInfo.wMenuLanguageCode, 2);
#endif
					break;
				case SETUP_LANGUAGE_AUDIO_OTHERS:
					//Save the menu language code to __SetupInfo
					__SetupInfo.wAudioLanguageCode = _GetLanguageNumber();
#ifdef WRITE_EEPROM_ENABLE //SYSTEM_8051
					HAL_EEPROM_PWrite(SETUP_ADDR_AUDIO_LANGUAGE_CODE, &__SetupInfo.wAudioLanguageCode, 2);
#endif
					break;
				case SETUP_LANGUAGE_SP_OTHERS:
					//Save the menu language code to __SetupInfo
					__SetupInfo.wSPSTLanguageCode = _GetLanguageNumber();
#ifdef WRITE_EEPROM_ENABLE//SYSTEM_8051
					HAL_EEPROM_PWrite(SETUP_ADDR_SPST_LANGUAGE_CODE, &__SetupInfo.wSPSTLanguageCode, 2);
#endif

					break;
				}
				// has been called in the previous _SaveDataToSetupInfo()
				//_TransferLanguageToSPRM();

                _SaveDataToSetupInfo(); // Brian1.07, put it here so when it call _TransferLanguageToSPRM, the __SetupInfo.xxxLanguageCode is correct

			} // end if (_bMENUTemp == SETUP_INPUT_PASSWORD_CORRECT)
			__bKey = KEY_NO_KEY;

		}


	}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产酒店精品激情| 在线观看欧美日本| 亚洲一区影音先锋| 久久久久88色偷偷免费| 欧美体内she精高潮| 丁香亚洲综合激情啪啪综合| 亚洲国产精品自拍| 国产精品国产三级国产有无不卡 | 欧美日韩一二区| 国产成人在线免费| 美女视频一区二区三区| 亚洲成人资源网| 亚洲视频 欧洲视频| 久久久蜜臀国产一区二区| 欧美一区二区三区四区高清| 欧美色综合天天久久综合精品| 国产精品综合一区二区三区| 蜜桃久久精品一区二区| 亚洲一二三四在线观看| 亚洲欧美区自拍先锋| 欧美激情一区二区三区全黄 | 日韩欧美成人一区| 欧美性猛交xxxxxxxx| 91小宝寻花一区二区三区| 成人国产一区二区三区精品| 国产精品456| 国产精品99久久久| 国产乱妇无码大片在线观看| 国产中文字幕一区| 久久精品国产精品亚洲红杏| 久久精品国产亚洲一区二区三区| 视频一区免费在线观看| 五月综合激情婷婷六月色窝| 亚洲综合在线第一页| 亚洲综合一区在线| 亚洲成人综合视频| 日日摸夜夜添夜夜添精品视频| 亚洲一二三专区| 午夜精品福利一区二区蜜股av| 亚洲高清在线精品| 日韩高清一区二区| 青草av.久久免费一区| 人妖欧美一区二区| 国内精品伊人久久久久av影院 | 欧美成人伊人久久综合网| 欧美一区二区三区男人的天堂| 欧美一区二区私人影院日本| 欧美一级欧美三级在线观看| 欧美r级电影在线观看| 久久精品一区蜜桃臀影院| 中文一区二区在线观看| 国产精品成人一区二区艾草| 亚洲欧美电影院| 丝袜美腿亚洲综合| 国产真实乱偷精品视频免| 成人精品高清在线| 色天使色偷偷av一区二区| 欧美日韩成人综合| 久久综合久久久久88| 国产精品美女久久久久av爽李琼| 一区二区三区四区国产精品| 石原莉奈在线亚洲三区| 精品亚洲免费视频| 成人免费看视频| 在线观看一区二区精品视频| 日韩亚洲欧美一区| 中文天堂在线一区| 亚洲小说欧美激情另类| 国产一区高清在线| caoporn国产一区二区| 欧美日韩一区中文字幕| 亚洲精品一区二区三区影院 | 精品一区二区三区av| 欧美丰满高潮xxxx喷水动漫| 精品国产一区二区三区忘忧草 | 成人激情视频网站| 欧美三级电影在线看| 亚洲精品一区二区三区香蕉| 亚洲人吸女人奶水| 美美哒免费高清在线观看视频一区二区| 国产最新精品免费| 欧美视频自拍偷拍| 欧美国产欧美综合| 亚欧色一区w666天堂| 国产成人精品午夜视频免费| 欧美三级资源在线| 中文在线资源观看网站视频免费不卡| 五月天国产精品| 97精品国产露脸对白| 欧美va亚洲va国产综合| 亚洲免费av在线| 国产精品77777| 欧美精品在线观看一区二区| 国产精品美女久久久久av爽李琼| 蜜臀av一区二区在线免费观看| 91日韩一区二区三区| 日韩女同互慰一区二区| 一区二区三区在线免费播放| 岛国av在线一区| 日韩欧美久久久| 亚洲国产精品久久不卡毛片| 成人国产精品免费观看动漫 | 亚洲成人午夜影院| av在线一区二区| 久久久.com| 蜜桃视频一区二区三区| 欧美中文字幕久久| 亚洲人精品午夜| 国产成人av电影免费在线观看| 日韩欧美一二三区| 婷婷开心激情综合| 色哟哟日韩精品| 国产精品女同互慰在线看| 精品一区二区三区在线播放| 制服丝袜亚洲播放| 午夜影院久久久| 在线看国产一区二区| 亚洲精品久久嫩草网站秘色| jlzzjlzz亚洲日本少妇| 国产女人18水真多18精品一级做| 国模冰冰炮一区二区| 日韩精品中文字幕一区二区三区| 偷偷要91色婷婷| 欧美欧美午夜aⅴ在线观看| 亚洲一区二区三区四区在线| 色老汉一区二区三区| 日韩一区在线免费观看| 不卡一区在线观看| 中文字幕中文乱码欧美一区二区| 丁香六月久久综合狠狠色| 久久日韩精品一区二区五区| 激情av综合网| 久久久九九九九| 成人午夜看片网址| 亚洲国产精品v| jizz一区二区| 亚洲精品国产一区二区三区四区在线| 99久久国产综合精品色伊 | 亚洲国产另类av| 精品视频在线视频| 调教+趴+乳夹+国产+精品| 欧美日韩精品高清| 蜜桃av一区二区| 精品理论电影在线观看| 国内久久精品视频| 欧美激情一区二区三区蜜桃视频 | 日韩在线一区二区三区| 7777精品伊人久久久大香线蕉超级流畅 | 国产色综合一区| 不卡欧美aaaaa| 伊人婷婷欧美激情| 88在线观看91蜜桃国自产| 久草精品在线观看| 国产欧美一区二区在线| 91亚洲大成网污www| 一区二区三区免费| 91精品国产综合久久精品| 精品一区二区三区欧美| 国产精品乱码妇女bbbb| 欧美午夜电影一区| 日本亚洲视频在线| 国产亚洲成年网址在线观看| 91最新地址在线播放| 丝袜国产日韩另类美女| 国产日韩欧美精品电影三级在线| 99精品国产热久久91蜜凸| 午夜精品一区二区三区三上悠亚| 精品福利一区二区三区免费视频| 成人免费av在线| 亚洲一线二线三线久久久| 日韩精品资源二区在线| k8久久久一区二区三区| 人人精品人人爱| 国产精品黄色在线观看| 欧美一区二区免费视频| 粉嫩aⅴ一区二区三区四区五区| 亚洲制服丝袜av| 久久久国产综合精品女国产盗摄| 色香蕉久久蜜桃| 经典三级在线一区| 亚洲综合视频在线| 国产日韩欧美综合在线| 欧美日韩二区三区| 成人午夜免费av| 蜜臀国产一区二区三区在线播放| 综合激情成人伊人| 精品久久久久一区二区国产| 91一区二区在线| 韩国v欧美v亚洲v日本v| 亚洲国产欧美在线人成| 国产欧美一区二区精品婷婷 | 久久久久久久久久久久久久久99| 91福利视频网站| 丁香天五香天堂综合| 麻豆一区二区99久久久久| 亚洲日本在线观看| 久久久www成人免费毛片麻豆| 欧美老年两性高潮| 色中色一区二区| 成人综合激情网|