⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 setup.c

📁 M3355的源代码
💻 C
📖 第 1 页 / 共 5 页
字号:
#include <comsub.h>
#if ( _SETUP_MODE==_SETUP_MENU_Enable )

#include <ui_sub.h>
#include <nv.h>

#include <gui.h>
#include <ui.h>
#include <setupfunc.h>
#include <setupdefine.h>
#include <setup_cfg.h>
#include "setupshow.h"

#include "../normal/nmosd.h"

#include "setup.h"
#include "..\fileopenmenu\MediaPlayerOutlook.h"
#include "../cstm/fend/frntp.h"
#include "../normal/nmscreen.h"

extern BYTE internalOrform;

BYTE bCurValueInCurChoice[2];


BYTE bRecordInputPswTime = 0;

BYTE bConfirmKey;//true means "ENTER";FALSE means "CANCEL"
BYTE InputPass[4] = "    ";
BYTE PassCnt = 0;
BYTE InputNum[4] = {0xff,0xff,0xff,0xff};
void SetSpeakerTimer(void);
void SetWarningTimer(void);
void WarningTimerAct(void);

//
SETUP_GLOBALVAR Setup_g_Var;

const CountryCode_S bCountryCode[26]=
    {
        /*0*/		{'A',{'D','E','F','G','I','L','M','N','O','Q','R','S','T','U','W','Z'}},
        /*1*/		{'B',{'A','B','D','E','F','G','H','I','J','M','N','O','R','S','T','V','W','Y','Z'}},
        /*2*/		{'C',{'A','C','F','G','H','I','K','L','M','N','O','R','S','U','V','X','Y','Z'}},
        /*3*/		{'D',{'E','J','K','M','O','Z'}},
        /*4*/		{'E',{'C','E','G','H','R','S','T'}},
        /*5*/		{'F',{'I','J','K','M','O','R','X'}},
        /*6*/		{'G',{'A','B','D','E','F','H','I','L','M','N','P','Q','R','S','T','U','W','Y'}},
        /*7*/		{'H',{'K','M','N','R','T','U'}},
        /*8*/		{'I',{'D','E','L','N','O','Q','R','S','T'}},
        /*9*/		{'J',{'M','O','P'}},
        /*10*/		{'K',{'E','G','H','I','M','N','P','R','W','Y','Z'}},
        /*11*/		{'L',{'A','B','O','I','K','R','S','T','U','V','Y',}},
        /*12*/		{'M',{'A','C','D','G','H','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'}},
        /*13*/		{'N',{'A','C','E','F','G','I','L','O','P','R','U','Z'}},
        /*14*/		{'O',{'M'}},
        /*15*/		{'P',{'A','E','F','G','H','K','L','M','N','R','T','W','Y'}},
        /*16*/		{'Q',{'A'}},
        /*17*/		{'R',{'E','O','U','W'}},
        /*18*/		{'S',{'A','B','C','D','E','G','H','I','J','K','L','M','N','O','R','T','U','V','Y','Z'}},
        /*19*/		{'T',{'C','D','F','G','H','J','K','M','N','O','P','R','T','V','W','Z'}},
        /*20*/		{'U',{'A','G','K','M','S','Y','Z'}},
        /*21*/		{'V',{'A','C','E','G','I','N','U'}},
        /*22*/		{'W',{'F','S'}},
        /*23*/		{'Y',{'E','T','U'}},
        /*24*/		{'Z',{'A','M','R','W'}}
    };

static T_DWORD_FUNC_PTR SetupObjRespondFPKey[17] =
    {
#if (_SETUP_MIXCHOICE_MODE == _SETUP_MIXCHOICE_ENABLE_)

        SetupMixChoiceRespondFPKey,
#else
	SetupChoiceRespondFPKey/*NULL*/,
#endif
SetupPSWChoiceRespondFPKey,SetupVerifyChoiceRespondFPKey,
        SetupChoiceRespondFPKey,
#if (_SETUP_51SPEAKER_MODE == _SETUP_51SPEAKER_ENABLE_)
        SetupRActiveChoiceRespondFPKey,SetupRPassiveChoiceRespondFPKey,
        SetupTimerCallbackRespondFPKey,
#else 
        NULL, NULL, NULL,
#endif
        SetupCauseHPageRespondFPKey,
#if (_SETUP_51SPEAKER_MODE == _SETUP_51SPEAKER_ENABLE_)
        SetupRPassiveSizeRespondFPKEY,SetupRPassiveDisRespondFPKEY,
#else
	   NULL,NULL,
#endif
        SetupPasswordRespondFPKey,
        SetupCauseDisaRespomdFPKey,SetupByCauseDisaRespomdFPKey,
#if (_SETUP_PSCAN_MODE == _SETUP_PSCAN_ENABLE_)

        SetupPScanRespondFPKey,
#else
	NULL,
#endif        
        SetupOSDLangRespondFPKey,SetupKaraChoiceRespondFPKey,SetupVoutPutChoiceRespondFPKey,
    };


#if 0
BYTE GetSetupWarnMode()
{
	if(Setup_g_Var.bUnderConfirmMenu)
		return TRUE;
	else 
		return FALSE;
}
#endif

#if 0
void InitDiscLang()
{
	int i;
#ifdef _LANG_GROUP_0
	#define _ORDER_INDEX  0
#endif

#ifdef _LANG_GROUP_1
	#define _ORDER_INDEX 1
#endif
#ifdef _LANG_GROUP_2
	#define _ORDER_INDEX  2
#endif
#ifdef _LANG_GROUP_3
	#define _ORDER_INDEX 3
#endif
#ifdef _LANG_GROUP_4
	#define _ORDER_INDEX  4
#endif
#ifdef _LANG_GROUP_5
	#define _ORDER_INDEX  5
#endif
#ifdef _LANG_GROUP_6
	#define _ORDER_INDEX  6
#endif
#ifdef _LANG_GROUP_7
	#define _ORDER_INDEX 7
#endif
#ifdef _LANG_GROUP_8
	#define _ORDER_INDEX  8
#endif
#ifdef _LANG_GROUP_9
	#define _ORDER_INDEX  9
#endif    
#ifdef _LANG_GROUP_10
	#define _ORDER_INDEX  10
#endif
#ifdef _LANG_GROUP_11
	#define _ORDER_INDEX  11
#endif
#ifdef _LANG_GROUP_12
	#define _ORDER_INDEX  12
#endif
#ifdef _LANG_GROUP_13
	#define _ORDER_INDEX  13
#endif
#ifdef _LANG_GROUP_14
	#define _ORDER_INDEX  14
#endif
#ifdef _LANG_GROUP_100
	#define _ORDER_INDEX  14
#endif



		DiscAudio.bFuncCmds[0] = SETUPFUNC_NALANG_ORIGINAL;
		DiscAudio.wItemChoiceIDs[0]= RS_SETUP_NVLANG_ORIGINAL;
		DiscMenu.bFuncCmds[0] = SETUPFUNC_NALANG_ORIGINAL;
		DiscMenu.wItemChoiceIDs[0]= RS_SETUP_NVLANG_ORIGINAL;

	
	for(i=1;i<(1+Setup_DiscLang[_ORDER_INDEX].bLanguageNum);i++)
	{
		DiscAudio.bFuncCmds[i] = Setup_DiscLang[_ORDER_INDEX].bFuncCmd[i-1];
		DiscAudio.wItemChoiceIDs[i]= Setup_DiscLang[_ORDER_INDEX].bLangRSCID[i-1];
		DiscMenu.bFuncCmds[i] = Setup_DiscLang[_ORDER_INDEX].bFuncCmd[i-1];
		DiscMenu.wItemChoiceIDs[i]= Setup_DiscLang[_ORDER_INDEX].bLangRSCID[i-1];

	}
		DiscAudio.bFuncCmds[1+Setup_DiscLang[_ORDER_INDEX].bLanguageNum] = SETUPFUNC_NALANG_OHTER;
		DiscAudio.wItemChoiceIDs[1+Setup_DiscLang[_ORDER_INDEX].bLanguageNum]= RS_SETUP_NVLANG_OTHER_SELECTION;
		DiscMenu.bFuncCmds[1+Setup_DiscLang[_ORDER_INDEX].bLanguageNum] = SETUPFUNC_NALANG_OHTER;
		DiscMenu.wItemChoiceIDs[1+Setup_DiscLang[_ORDER_INDEX].bLanguageNum]= RS_SETUP_NVLANG_OTHER_SELECTION;

	DiscSubtitle.bFuncCmds[0] = SETUPFUNC_NALANG_OFF;
	DiscSubtitle.wItemChoiceIDs[0]= RS_SETUP_CONFIRM_OFF;
	DiscSubtitle.bFuncCmds[1] = SETUPFUNC_NALANG_ORIGINAL;
	DiscSubtitle.wItemChoiceIDs[1]= RS_SETUP_NVLANG_ORIGINAL;

	for(i=2;i<(2+Setup_DiscLang[_ORDER_INDEX].bLanguageNum);i++)
	{
		DiscSubtitle.bFuncCmds[i] = Setup_DiscLang[_ORDER_INDEX].bFuncCmd[i-2];
		DiscSubtitle.wItemChoiceIDs[i]= Setup_DiscLang[_ORDER_INDEX].bLangRSCID[i-2];
	}
	DiscSubtitle.bFuncCmds[2+Setup_DiscLang[_ORDER_INDEX].bLanguageNum] = SETUPFUNC_NALANG_OHTER;
	DiscSubtitle.wItemChoiceIDs[2+Setup_DiscLang[_ORDER_INDEX].bLanguageNum]= RS_SETUP_NVLANG_OTHER_SELECTION;

}
#endif

/*added by xianzhong to down size.   Aug.3.2004*/
void decrease_by_step(BYTE *op, BYTE Range)
{
      if(*op <= 0)
          *op = Range - 1;
      else
          (*op)--;
}

/*added by xianzhong to down size.   Aug.3.2004*/
void increase_by_step(BYTE *op, BYTE Range)
{
      if(*op >= Range - 1)
          *op = 0;
      else
          (*op)++;
}

/*added by xianzhong to down size.   Aug.3.2004*/	
void CommonKeyUpOrDown(BOOL bUp)
{
    do{
        if(bUp)
        {
            decrease_by_step(&(Setup_g_Var.bCurItem), Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->bItemNums);
        }else
        {
            increase_by_step(&(Setup_g_Var.bCurItem), Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->bItemNums);
        }
 	 }while((Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem]->bObjectType&0x80)==0x80);
     
     Setup_g_Var.bActiveObj = Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem]->bObjectType;
     Setup_g_Var.bCurChoice = GetCurChoice(Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem]);
     
}

/*added by xianzhong to down size.   Aug.3.2004*/
void Item_CommonKeyUpOrDown(BOOL bUp, BOOL bOrginal)
{
    if(bOrginal)HighLightItem(Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem], Setup_g_Var.bCurItem, HL_OFF);

    CommonKeyUpOrDown(bUp);
    	
    HighLightItem(Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem], Setup_g_Var.bCurItem, HL_ON);
}

#if (_SETUP_51SPEAKER_MODE == _SETUP_51SPEAKER_ENABLE_)
/*added by xianzhong to down size.   Aug.3.2004*/
void Audio_CommonKeyUpOrDown(BOOL bUp, BOOL bOrginal)
{
    if(bOrginal) HighLightAudioChoice(Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem], Setup_g_Var.bCurItem, Setup_g_Var.bCurChoice, 1);

    CommonKeyUpOrDown(bUp);
    
    HighLightAudioChoice(Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem], Setup_g_Var.bCurItem, Setup_g_Var.bCurChoice, 0);
}
#endif
BYTE InCurLangGOP(BYTE bLangId)
{
	int i;
	
	for(i=0;i<8;i++)
	{
		if(bLangId == DiscAudio.bFuncCmds[i+1])
			return TRUE;
			
	}
	return FALSE;
}
void ReorderItems(lpSETUP_PAGE pPage)
{
    int i,j;

    for(i=0;i<MAX_ITEM_IN_PAGE;i++)
    {
        if(pPage->SetupItems[i] == NULL)
        {
            for(j=i;j<(MAX_ITEM_IN_PAGE-1);j++)
            {
                pPage->SetupItems[j] =pPage->SetupItems[j+1];
            }
            pPage->SetupItems[MAX_ITEM_IN_PAGE-1] = NULL;

        }
    }
    for(i=0;i<MAX_ITEM_IN_PAGE;i++)
    {
        if(pPage->SetupItems[i] == NULL)
            break;
    }
    pPage->bItemNums = i;
}


void InitSetupCfg_in()
{
    int i,j;

    if(GetDefSetupPara(GETCMD_DTS))
        Page_Audio.SetupItems[1] = &DTSONItem;
    else
        Page_Audio.SetupItems[1] = &DTSOFFItem;

    if(!GetDefSetupPara(GETCMD_CHANNEL))
    {
        Page_Audio.SetupItems[4] = NULL;
    }
    else
    {
        Page_Audio.SetupItems[4] = &ChannelSwitch;
    }
    Page_Audio.SetupItems[5] = &DRC;
#ifdef _KARAOKE_ENABLE_
	Page_Audio.SetupItems[6] =NULL;
#else 
	Page_Audio.SetupItems[6] = &Vocal;
#endif
        
    Page_Display.SetupItems[4] = &NpSwitch;
	Page_Display.SetupItems[4]->wItemChoiceIDs[0] = RS_GUI_DEINT_MODE_AUTO;
	Page_Display.SetupItems[4]->wItemChoiceIDs[1] = RS_SETUP_DISP_PAL;
	Page_Display.SetupItems[4]->wItemChoiceIDs[2] = RS_SETUP_DISP_NTSC;

	Page_Display.SetupItems[4]-> bFuncCmds[0] = SETUPFUNC_NP_AUTO;
	Page_Display.SetupItems[4]-> bFuncCmds[1] = SETUPFUNC_NP_PAL;
	Page_Display.SetupItems[4]-> bFuncCmds[2] = SETUPFUNC_NP_NTSC;

    if(GetDefSetupPara(GETCMD_VCD))
    {
    	Page_Other.SetupItems[0]=&PBC;
    	#if (AUTOPLAY_SETUP == AUTOPLAY_SETUP_ENABLE)
    	Page_Other.SetupItems[1]=&AutoPlaySet;
    	Page_Other.SetupItems[2]=&BlackLevel;
    	Page_Other.SetupItems[3]=&LoadDefault;
    	Page_Other.SetupItems[4]=&ScrsaverV;
	 	Page_Other.SetupItems[5]=&LastPlay;
#else
    	Page_Other.SetupItems[1]=&BlackLevel;
    	Page_Other.SetupItems[2]=&LoadDefault;
    	Page_Other.SetupItems[3]=&ScrsaverV;
		Page_Other.SetupItems[4]=&LastPlay;
    	Page_Other.SetupItems[5]=NULL;
    	#endif
    }
    else
    {
    	Page_Other.SetupItems[0]=NULL;
    	
    	#if (AUTOPLAY_SETUP == AUTOPLAY_SETUP_ENABLE)
    	Page_Other.SetupItems[1]=&AutoPlaySet;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -