📄 oldsetup.h
字号:
#include "winav.h"
#ifndef __OSD_H__
#include "osd.h"
#endif
#ifndef __SETUP_H__
#define __SETUP_H__
//////////////////////////////////////////////////////////////////////
// brian.171, high light all the setup area
// Define this would use VCD3.0 area as the background of entire Setup OSD area
#define SETUP_HIGHLIGHT_BACKGROUND
#ifdef SETUP_HIGHLIGHT_BACKGROUND
// Brian.171, define the setup VCD3.0 highlight color
#define SETUP_VCD30_COLOR HAL_VCD30_COLOR_BLACK //We define a goup of values in hal.h. You can use them directly or define one for yourself.
//They are HAL_VCD30_COLOR_BLACK, HAL_VCD30_COLOR_BLUE, HAL_VCD30_COLOR_RED, HAL_VCD30_COLOR_WHITE, HAL_VCD30_COLOR_YELLOW, HAL_VCD30_COLOR_GREEN.
#define SETUP_VCD30_CONTRAST 0x7 //The range can be 0x1 to 0xf. The 0x1 is the lightest.
#else
#define SETUP_VCD30_COLOR HAL_VCD30_COLOR_BLUE //We define a goup of values in hal.h. You can use them directly or define one for yourself.
//They are HAL_VCD30_COLOR_BLACK, HAL_VCD30_COLOR_BLUE, HAL_VCD30_COLOR_RED, HAL_VCD30_COLOR_WHITE, HAL_VCD30_COLOR_YELLOW, HAL_VCD30_COLOR_GREEN.
#define SETUP_VCD30_CONTRAST 0x7 //The range can be 0x1 to 0xf. The 0x1 is the lightest.
#endif
// Brian.171a
// This is a workaround to make SCF/SCB, FF look like paused (before the real KEY_PAUSE issue is solved)
// However add this would also make it change to PLAY mode when exit Setup.
#define PLAY_AFTER_EXIT_SETUP
// Brian.172r
// define this to blink the selection bar
#define SETUP_BLINKING_SELECTION
// Brian2.78b
#define SUPPORT_BACK_DOOR_IN_RELEASE
// Brian0.87
//#define SUPPORT_EXTRA_PAL_MODE
// *** We have a more flexible way for this, so don't use the old method. *** Old method: // TCH1.01b; #define USE_DEFAULT_PASSWORD //If you don't want default password when reading the default value, please mark it.
// Brian1.24, flag for set default
#define USE_DEFAULT_PASSWORD 0x01
#define USE_DEFAULT_REGIONCODE 0x02
#define USE_DEFAULT_PARENTAL_CTRL 0x04 // This is the Parental Control backdoor, not the Parental Level
#define USE_DEFAULT_APS_CTRL 0x08
#define SETUP_GLOBAL_OFFSET_X 0
#define SETUP_GLOBAL_OFFSET_Y 0
// Brian1.24,
// READ_OPTIONAL_DEFAULT decides which one is set to default.
// With our standard release, we still set parental, region code and APS to default.
// If you want to have differnt setting, just change the mask
// This is for BACKDOOR "1234"
#define READ_OPTIONAL_DEFAULT USE_DEFAULT_APS_CTRL|USE_DEFAULT_REGIONCODE|USE_DEFAULT_PARENTAL_CTRL
// This is for BACKDOOR "6666"
#define READ_TOTAL_DEFAULT 0xFF // set all bit to 1 means set all to deafult value.
// This is for the Custom->Read (default)
#define SETUP_CUSTOM_READ_DEFAULT USE_DEFAULT_APS_CTRL|USE_DEFAULT_REGIONCODE|USE_DEFAULT_PARENTAL_CTRL
#ifndef DOLBY_CERTIFICATION //kevin0.80
#define NO_DNR_ITEM //If you don't want the DNR item, please open this define
#endif
#define ENABLE_CUSTOM_SETUP //This define will enable all custom setup in VCD mode.
//#define SETUP_REDUCE_LUMINANCE //Open this define to reduce the luminance when entering SETUP menu.
//#define SETUP_NO_RGB_OUTPUT //Open this define to remove RGB value in video output, For 28AF, this has been defined in winav.h
//#define SETUP_NO_ANGLE_MARK // Open this to remove the Angle menu, brian.161
//#define SETUP_NO_BRIGHTNESS_CONTRAST // Open this to remove the Brightness/Bontrast menu, brian.161
// User should modify here for Parental level
#define SETUP_DEFAULT_PARENTAL SETUP_CUSTOM_PC_LEVEL_8
// User should modify here for ASPECT view
#ifdef RELEASE_SETTING
#define SETUP_DEFAULT_ASPECT SETUP_SCREEN_TV_TYPE_WIDE
#else
#define SETUP_DEFAULT_ASPECT SETUP_SCREEN_TV_TYPE_LB
#endif // RELEASE_SETTING
#define SETUP_DEFAULT_SCREEN_SAVER SETUP_SCREEN_SAVER_ON // Brian0.84 it is not implement yet
#define SETUP_DEFAULT_TV_SYSTEM SETUP_SCREEN_TV_SYSTEM_NTSC
#define SETUP_DEFAULT_BRIGHTNESS SETUP_SCREEN_BRIGHTNESS_NORMAL
#define SETUP_DEFAULT_CONTRAST SETUP_SCREEN_CONTRAST_0
#define SETUP_DEFAULT_CHROM_PHASE SETUP_SCREEN_CHROM_PHASE_0 // Brian1.25, Chroma phase
#define SETUP_DEFAULT_VIDEO_OUTPUT SETUP_SCREEN_VIDEO_OUTPUT_NORMAL
#define SETUP_DEFAULT_AUDIO_DIGITAL_OUT SETUP_AUDIO_DIGITAL_OUT_SPDIF_RAW
#ifdef SUPPORT_2_CHANNEL_ONLY // Brian1.06
#define SETUP_DEFAULT_AUDIO_ANALOG_OUT SETUP_AUDIO_ANALOG_OUT_2CH // LLY2.82, 2CH
#else
#define SETUP_DEFAULT_AUDIO_ANALOG_OUT SETUP_AUDIO_ANALOG_OUT_51CH
#endif
#define SETUP_DEFAULT_AUDIO_DOWNMIX SETUP_AUDIO_DOWNMIX_LORO
#define SETUP_DEFAULT_AUDIO_PROLOGIC SETUP_AUDIO_PROLOGIC_OFF // Brian1.08
#define SETUP_DEFAULT_AUDIO_CENTER SETUP_AUDIO_CENTER_ON
#define SETUP_DEFAULT_AUDIO_REAR SETUP_AUDIO_REAR_ON
#define SETUP_DEFAULT_AUDIO_SUBWOOFER SETUP_AUDIO_SUBWOOFER_ON
#define SETUP_DEFAULT_AUDIO_LPCM SETUP_AUDIO_LPCM_48K
#define SETUP_DEFAULT_AUDIO_DNR SETUP_AUDIO_DNR_0
#define SETUP_DEFAULT_AUDIO_KARAOKE SETUP_AUDIO_KARAOKE_ON
#define SETUP_DEFAULT_SMART_PLAY SETUP_CUSTOM_SMART_PLAY_OFF
#ifdef SETUP_NO_ANGLE_MARK
#define SETUP_DEFAULT_ANGLE_MARK SETUP_CUSTOM_ANGLE_MARK_OFF // brian.161
#else // #ifdef SETUP_NO_ANGLE_MARK
#define SETUP_DEFAULT_ANGLE_MARK SETUP_CUSTOM_ANGLE_MARK_ON
#endif // #ifdef SETUP_NO_ANGLE_MARK
#define SETUP_DEFAULT_UI_STYLE SETUP_CUSTOM_UI_STYLE_3 // brian.161
#define SETUP_DEFAULT_PROGRESSIVE_SCAN SETUP_PROGRESSIVE_SCAN_OFF // Brian0.81
//#define SETUP_DEFAULT_AUDIO_DIGITAL_OUT SETUP_AUDIO_DIGITAL_OUT_SPDIF_RAW // Brian0.82
//LLY2.82#define SETUP_DEFAULT_AUDIO_ANALOG_OUT SETUP_AUDIO_ANALOG_OUT_51CH // Brian0.82
// Customer should modify here for region code
#define SETUP_DEFAULT_REGION REGION_ALL
#define SETUP_DEFAULT_APS_CTL TRUE
#define SETUP_DEFAULT_PARENTAL_CTL TRUE
#ifdef SUPPORT_VCD_CONTROL
#define SETUP_DEFAULT_VCD_CTL FALSE // ** TCH2.74;
#else
#define SETUP_DEFAULT_VCD_CTL FALSE // ** TCH2.74; must set FALSE as original setting support VCD playback.
#endif // #define SUPPORT_VCD_CONTROL
#define SETUP_DEFAULT_DEBUG_MODE SETUP_DEBUG_MODE_DSU1_EN
#define SETUP_DEFAULT_AP_MODE 0
#if (SELL_DESTINATION == CHINA)
#define SETUP_DEFAULT_OSD_LANGUAGE SETUP_LANGUAGE_OSD_SIMP_CHINESE
#define SETUP_DEFAULT_MENU_LANGUAGE SETUP_LANGUAGE_MENU_CHINESE
#define SETUP_DEFAULT_AUDIO_LANGUAGE SETUP_LANGUAGE_AUDIO_CHINESE
#define SETUP_DEFAULT_SPST_LANGUAGE SETUP_LANGUAGE_SP_CHINESE
//#define SETUP_DEFAULT_EX_SPST_LANGUAGE SETUP_LANGUAGE_EX_SP_ASCII
#define SETUP_DEFAULT_ENCODING_LANGUAGE SETUP_LANGUAGE_ENCODING_ASCII
#elif (SELL_DESTINATION == HONGKONG)
#define SETUP_DEFAULT_OSD_LANGUAGE SETUP_LANGUAGE_OSD_TRAD_CHINESE
#define SETUP_DEFAULT_MENU_LANGUAGE SETUP_LANGUAGE_MENU_CHINESE
#define SETUP_DEFAULT_AUDIO_LANGUAGE SETUP_LANGUAGE_AUDIO_CHINESE
#define SETUP_DEFAULT_SPST_LANGUAGE SETUP_LANGUAGE_SP_CHINESE
//#define SETUP_DEFAULT_EX_SPST_LANGUAGE SETUP_LANGUAGE_EX_SP_ASCII
#define SETUP_DEFAULT_ENCODING_LANGUAGE SETUP_LANGUAGE_ENCODING_ASCII
#elif (SELL_DESTINATION == TAIWAN)
#define SETUP_DEFAULT_OSD_LANGUAGE SETUP_LANGUAGE_OSD_TRAD_CHINESE
#define SETUP_DEFAULT_MENU_LANGUAGE SETUP_LANGUAGE_MENU_CHINESE
#define SETUP_DEFAULT_AUDIO_LANGUAGE SETUP_LANGUAGE_AUDIO_CHINESE
#define SETUP_DEFAULT_SPST_LANGUAGE SETUP_LANGUAGE_SP_CHINESE
//#define SETUP_DEFAULT_EX_SPST_LANGUAGE SETUP_LANGUAGE_EX_SP_ASCII
#define SETUP_DEFAULT_ENCODING_LANGUAGE SETUP_LANGUAGE_ENCODING_ASCII
#elif (SELL_DESTINATION == BRITISH)
#define SETUP_DEFAULT_OSD_LANGUAGE SETUP_LANGUAGE_OSD_ENGLISH
#define SETUP_DEFAULT_MENU_LANGUAGE SETUP_LANGUAGE_MENU_ENGLISH
#define SETUP_DEFAULT_AUDIO_LANGUAGE SETUP_LANGUAGE_AUDIO_ENGLISH
#define SETUP_DEFAULT_SPST_LANGUAGE SETUP_LANGUAGE_SP_ENGLISH
//#define SETUP_DEFAULT_EX_SPST_LANGUAGE SETUP_LANGUAGE_EX_SP_WESTERN_EUROPEAN
#define SETUP_DEFAULT_ENCODING_LANGUAGE SETUP_LANGUAGE_ENCODING_WESTERN_EUROPEAN
#elif (SELL_DESTINATION == FRANCE)
#define SETUP_DEFAULT_OSD_LANGUAGE SETUP_LANGUAGE_OSD_FRENCH
#define SETUP_DEFAULT_MENU_LANGUAGE SETUP_LANGUAGE_MENU_FRENCH
#define SETUP_DEFAULT_AUDIO_LANGUAGE SETUP_LANGUAGE_AUDIO_FRENCH
#define SETUP_DEFAULT_SPST_LANGUAGE SETUP_LANGUAGE_SP_FRENCH
//#define SETUP_DEFAULT_EX_SPST_LANGUAGE SETUP_LANGUAGE_EX_SP_WESTERN_EUROPEAN
#define SETUP_DEFAULT_ENCODING_LANGUAGE SETUP_LANGUAGE_ENCODING_WESTERN_EUROPEAN
#elif (SELL_DESTINATION == GERMANY)
#define SETUP_DEFAULT_OSD_LANGUAGE SETUP_LANGUAGE_OSD_GERMAN
#define SETUP_DEFAULT_MENU_LANGUAGE SETUP_LANGUAGE_MENU_GERMAN
#define SETUP_DEFAULT_AUDIO_LANGUAGE SETUP_LANGUAGE_AUDIO_GERMAN
#define SETUP_DEFAULT_SPST_LANGUAGE SETUP_LANGUAGE_SP_GERMAN
//#define SETUP_DEFAULT_EX_SPST_LANGUAGE SETUP_LANGUAGE_EX_SP_WESTERN_EUROPEAN
#define SETUP_DEFAULT_ENCODING_LANGUAGE SETUP_LANGUAGE_ENCODING_WESTERN_EUROPEAN
#elif (SELL_DESTINATION == ITALY)
#define SETUP_DEFAULT_OSD_LANGUAGE SETUP_LANGUAGE_OSD_ITALIAN
#define SETUP_DEFAULT_MENU_LANGUAGE SETUP_LANGUAGE_MENU_ITALIAN
#define SETUP_DEFAULT_AUDIO_LANGUAGE SETUP_LANGUAGE_AUDIO_ITALIAN
#define SETUP_DEFAULT_SPST_LANGUAGE SETUP_LANGUAGE_SP_ITALIAN
//#define SETUP_DEFAULT_EX_SPST_LANGUAGE SETUP_LANGUAGE_EX_SP_WESTERN_EUROPEAN
#define SETUP_DEFAULT_ENCODING_LANGUAGE SETUP_LANGUAGE_ENCODING_WESTERN_EUROPEAN
#elif (SELL_DESTINATION == SPAIN)
#define SETUP_DEFAULT_OSD_LANGUAGE SETUP_LANGUAGE_OSD_SPANISH
#define SETUP_DEFAULT_MENU_LANGUAGE SETUP_LANGUAGE_MENU_SPANISH
#define SETUP_DEFAULT_AUDIO_LANGUAGE SETUP_LANGUAGE_AUDIO_SPANISH
#define SETUP_DEFAULT_SPST_LANGUAGE SETUP_LANGUAGE_SP_SPANISH
//#define SETUP_DEFAULT_EX_SPST_LANGUAGE SETUP_LANGUAGE_EX_SP_WESTERN_EUROPEAN
#define SETUP_DEFAULT_ENCODING_LANGUAGE SETUP_LANGUAGE_ENCODING_WESTERN_EUROPEAN
#elif (SELL_DESTINATION == PORTUGAL)
#define SETUP_DEFAULT_OSD_LANGUAGE SETUP_LANGUAGE_OSD_ENGLISH
#define SETUP_DEFAULT_MENU_LANGUAGE SETUP_LANGUAGE_MENU_PORTUGUESE
#define SETUP_DEFAULT_AUDIO_LANGUAGE SETUP_LANGUAGE_AUDIO_PORTUGUESE
#define SETUP_DEFAULT_SPST_LANGUAGE SETUP_LANGUAGE_SP_PORTUGUESE
//#define SETUP_DEFAULT_EX_SPST_LANGUAGE SETUP_LANGUAGE_EX_SP_WESTERN_EUROPEAN
#define SETUP_DEFAULT_ENCODING_LANGUAGE SETUP_LANGUAGE_ENCODING_WESTERN_EUROPEAN
#elif (SELL_DESTINATION == EUROPE)
#define SETUP_DEFAULT_OSD_LANGUAGE SETUP_LANGUAGE_OSD_ENGLISH
#define SETUP_DEFAULT_MENU_LANGUAGE SETUP_LANGUAGE_MENU_ENGLISH
#define SETUP_DEFAULT_AUDIO_LANGUAGE SETUP_LANGUAGE_AUDIO_ENGLISH
#define SETUP_DEFAULT_SPST_LANGUAGE SETUP_LANGUAGE_SP_ENGLISH
//#define SETUP_DEFAULT_EX_SPST_LANGUAGE SETUP_LANGUAGE_EX_SP_WESTERN_EUROPEAN
#define SETUP_DEFAULT_ENCODING_LANGUAGE SETUP_LANGUAGE_ENCODING_WESTERN_EUROPEAN
#elif (SELL_DESTINATION == JAPAN) // LLY.276-5, for Japanese OSD
#define SETUP_DEFAULT_OSD_LANGUAGE SETUP_LANGUAGE_OSD_JAPANESE
#define SETUP_DEFAULT_MENU_LANGUAGE SETUP_LANGUAGE_MENU_JAPANESE
#define SETUP_DEFAULT_AUDIO_LANGUAGE SETUP_LANGUAGE_AUDIO_JAPANESE
#define SETUP_DEFAULT_SPST_LANGUAGE SETUP_LANGUAGE_SP_JAPANESE
//#define SETUP_DEFAULT_EX_SPST_LANGUAGE SETUP_LANGUAGE_EX_SP_ASCII
#define SETUP_DEFAULT_ENCODING_LANGUAGE SETUP_LANGUAGE_ENCODING_ASCII
#elif (SELL_DESTINATION == KOREA) // Brian1.07, Jeff 20030916 Add for Korean OSD
#define SETUP_DEFAULT_OSD_LANGUAGE SETUP_LANGUAGE_OSD_KOREAN
#define SETUP_DEFAULT_MENU_LANGUAGE SETUP_LANGUAGE_MENU_KOREAN
#define SETUP_DEFAULT_AUDIO_LANGUAGE SETUP_LANGUAGE_AUDIO_KOREAN
#define SETUP_DEFAULT_SPST_LANGUAGE SETUP_LANGUAGE_SP_KOREAN
//#define SETUP_DEFAULT_EX_SPST_LANGUAGE SETUP_LANGUAGE_EX_SP_ASCII
#define SETUP_DEFAULT_ENCODING_LANGUAGE SETUP_LANGUAGE_ENCODING_ASCII
#endif
//definition for initializing SETUP status
#define SETUP_POWERON_INITIAL 1
#define SETUP_OTHERS_INITIAL 0
//Internal functions declaration
void _WriteSetupData(BYTE bSetup, BYTE bDefaultPassword);
void _ReadSetupData(void);
BYTE _ConvertBackDoorRegionNum(BYTE bOriginalNum);
BYTE _ConvertBackDoorRegionToIndex(BYTE bOriginalNum);
WORD _GetPasswordNumber(void);
void _SaveDataToSetupInfo(void);
void _ProcessBackDoor(BYTE bActionMode);
void _SetMenuEnable(BYTE bMode);
void _SetBrightnessToIC(void);
void _SetContrastToIC(void);
void _SetDNRToIC(void);
void _SetTVSystemToIC(void);
void _SetVideoAspectToIC(void); // TCC276
void _SetVideoOutputToIC(void);
void _TransferSetupInfoToIndex(void);
void _TransferLanguageToSPRM(void);
#ifndef NO_DISC_MODE //CoCo2.37p
void _TransferOthersMenuLanguageCode(WORD wLanguageCode);
void _TransferOthersAudioLanguageCode(WORD wLanguageCode);
void _TransferOthersSPSTLanguageCode(WORD wLanguageCode);
#endif //#ifndef NO_DISC_MODE //CoCo2.37p
WORD _GetLanguageNumber(void);//(BYTE bID);
void _ClearAllHighlight(void);
void _ReloadFontTable(BYTE bLanguage);
void _ExitBackDoor(void);
void _ExitSetup(void);
void _RecoverVariables(void);
//Export APIs
void SETUP_GDIInit(void);
BIT SETUP_Initial(void);
BYTE SETUP_ProcessKey(void);
BYTE SETUP_InputPassword(BYTE bKey);
BYTE SETUP_GetMenuInfo(BYTE bIndex, BYTE bInfoType);
void SETUP_PartialRedraw(DWORD X0, DWORD Y0, DWORD X1, DWORD Y1);
BYTE SETUP_Recover(BYTE bRecoverRegion);
void SETUP_Exit(BYTE bExitMode);
void SETUP_ChangeValue(BYTE bID);
void SETUP_SetDefaultValue(BYTE bType); // Brian1.24
void SETUP_Trigger(void);
void SETUP_AdjustSetting(BYTE bID);
void SETUP_ConfigOSDRegion(void);
void SETUP_LoadLanguage(void);
typedef enum tagID_LIST
{
SETUP_ID_BASE=0,
// Main menu item
SETUP_MAIN_BASE=SETUP_ID_BASE,
SETUP_MAIN_LANGUAGE=SETUP_MAIN_BASE,
SETUP_MAIN_SCREEN,
SETUP_MAIN_AUDIO,
SETUP_MAIN_CUSTOM,
SETUP_MAIN_EXIT,
// Main->Language sub menu
SETUP_LANGUAGE_BASE=6,
SETUP_LANGUAGE_OSD=SETUP_LANGUAGE_BASE,
SETUP_LANGUAGE_MENU,
SETUP_LANGUAGE_AUDIO,
SETUP_LANGUAGE_SUBTITLE,
//SETUP_LANGUAGE_EX_SUBTITLE,
SETUP_LANGUAGE_ENCODING,
// Main->Screen sub menu
SETUP_SCREEN_BASE=11,
SETUP_SCREEN_TV_TYPE=SETUP_SCREEN_BASE,
#ifndef NO_SCREEN_SAVER // Brian1.20
SETUP_SCREEN_SAVER,
#endif
SETUP_SCREEN_TV_SYSTEM,
SETUP_SCREEN_VIDEO_OUTPUT,
//SETUP_SCREEN_PROGRESSIVE_SCAN, // Brian1.06, P-SCAN is integrated into Video Output
SETUP_SCREEN_BRIGHTNESS,
SETUP_SCREEN_CONTRAST,
#ifdef SUPPORT_ADJUST_CHROM_PHASE // Brian1.25, Chroma phase
SETUP_SCREEN_CHROM_PHASE,
#endif
SETUP_SCREEN_PROGRESSIVE_SCAN, // Brian1.06, P-SCAN is integrated into Video Output, but still need this ID, so move it to the end
// Main->Audio sub menu
SETUP_AUDIO_BASE=19,
SETUP_AUDIO_DIGITAL_OUT=SETUP_AUDIO_BASE,
#ifndef SUPPORT_2_CHANNEL_ONLY // Brian1.05
SETUP_AUDIO_ANALOG_OUT,
#endif
SETUP_AUDIO_DOWNMIX,
#ifndef SUPPORT_2_CHANNEL_ONLY // Brian1.05
SETUP_AUDIO_PROLOGIC, // Brian1.08
SETUP_AUDIO_CENTER,
SETUP_AUDIO_REAR,
SETUP_AUDIO_SUBWOOFER,
#ifndef REMOVE_SETUP_SPEAKER_TEST
SETUP_AUDIO_SPEAKER_TEST,
#endif
#endif
SETUP_AUDIO_DNR,
SETUP_AUDIO_LPCM,
SETUP_AUDIO_KARAOKE,
// Brian1.05, still need these ID, but must put it at the end of menu
// so the ID seuqence of real items are continuous
#ifdef SUPPORT_2_CHANNEL_ONLY
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -