📄 osddraw.h
字号:
//---------------------------------------------------------------------------
// Terawins Inc. Company Confidential Strictly Private
//
// $Archive: OSDDraw.h $
// $Revision: 0.01 $
// $Author: jwang $
// $Date: 2002/06/31 $
//
// --------------------------------------------------------------------------
// >>>>>>>>>>>>>>>>>>>>>>>>> COPYRIGHT NOTICE <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
// --------------------------------------------------------------------------
// Copyright 2002(c) Terawins Inc.
// --------------------------------------------------------------------------
#if !defined(__OSDDRAW_H__)
#define __OSDDRAW_H__
typedef enum{
eENGLISH=0x00,
} eLANGUAGE;
typedef struct tagOSDPARAMS
{
uCHAR cBright;
uCHAR cContrast;
uCHAR cSharp;
uCHAR cFreq;
uCHAR cPhase;
uCHAR cHPos;
uCHAR cVPos;
uCHAR cBkLight;
uCHAR cOSDHPos;
uCHAR cOSDVPos;
uCHAR cGain;
uCHAR cOffset;
uCHAR cDigiGain;
uCHAR cDigiOffset;
uCHAR cVolume;
uCHAR cLanguage;
} OSDPARAMS;
//Background foreground
//Background only in even ,bit 4 set 1 --> blink
#define PWBLUE_GREY 0xc3 //0xef
#define BLUE_GREY 0xce //0xef
#define BLUE_WHITE 0xEF
#define DBLUE_WHITE 0x4F
#define YELLOW_RED 0xC6
#define YELLOW_DBLUE 0xC4
#define GREEN_WHITE 0x8F
#define DBLUE_RED 0x46
#define RED_YELLOW 0x6C
#define LBLUE_WHITE 0xAF
#define LBLUE_GREEN 0xA5
#define LBLUE_RED 0xd7
#define BLACK_WHITE 0x2F
#define BLACK_GREY 0xc2 //0xe2
#define WHITE_PURPLE 0x4f
#define WHITE_GREY 0x8f
#define COL_TITLE YELLOW_RED
//#define COL_NORMAL BLUE_WHITE
#define COL_NORMAL BLACK_WHITE
#define COL_FOCUS DBLUE_WHITE
#define COL_GAUGE GREEN_WHITE
#define COL_SELECT BLACK_GREY
#define COL_ICON PWBLUE_GREY
#define COL_RED DBLUE_RED
#define COL_GREEN DBLUE_RED
#define COL_BLUE DBLUE_RED
#define COL_CLEAR 0x00
#define COL_NOSUPPORT RED_YELLOW
#define COL_NOSIGNAL YELLOW_DBLUE
#define COL_FRTYMENU LBLUE_WHITE
#define COL_FRAME LBLUE_GREEN
#define COL_PROCESS LBLUE_RED
#define LINE_LENGTH 27
#define GAUGE_LENGTH 20
#define FONT_SIZE10W16H 0x00
#define FONT_SIZE12W16H 0x01
#define FONT_SIZE14W16H 0x02
#define FONT_SIZE16W16H 0x03
#define FONT_SIZE10W18H 0x08
#define FONT_SIZE12W18H 0x09
#define FONT_SIZE14W18H 0x0a
#define FONT_SIZE16W18H 0x0b
#define WIDTH10 10
#define WIDTH12 12
#define WIDTH14 14
#define WIDTH16 16
#define HEIGHT16 16
#define HEIGHT18 18
#define HEIGHT20 20
#define HEIGHT24 24
#define COL_9300 0
#define COL_6500 1
#define COL_USER 2
#define COL_BRIGHT 3
#define CENTER 1
#define LEFT_BOTTOM 2
#define TOP 3
#define RIGHT_TOP 4
//#define NEW_OSD
#ifdef NEW_OSD
#define FONT_SIZE FONT_SIZE12W16H
#define FONT_WIDTH WIDTH12
#define FONT_HEIGHT HEIGHT16
enum{BAR_S_MIN=36, BAR_S_1, BAR_S_2, BAR_S_MAX}; //36, 37, 38, 39
enum{BAR_MIN=40, BAR1, BAR2, BAR_MAX}; //40 41 42 43
enum{BAR__E_MIN=44,BAR_E_1, BAR_E_2, BAR_E_MAX}; //44 45 46 47
#else
#define FONT_SIZE 0x20//FONT_SIZE12W18H
#define FONT_WIDTH WIDTH12
#define FONT_HEIGHT HEIGHT18
enum{BAR_S_MIN=36, BAR_S_1, BAR_S_2, BAR_S_MAX}; //36, 37, 38, 39
enum{BAR_MIN=40, BAR_1, BAR_2, BAR_MAX}; //40 41 42 43
enum{BAR_E_MIN=44,BAR_E_1, BAR_E_2, BAR_E_MAX}; //44 45 46 47
#endif
#define MAIN_MENU_TOTAL_LINES 12
#define SUB_MENU_TOTAL_LINES 7 //DigiMax OSD Language sub-menu
#define TOTAL_FONT_NUM sizeof(AllFonts)/sizeof(unsigned char*)
//#define TOTAL_FONT_NUM 56//64
#define FONT_DATA_START_ADDRESS 0x0000
#define MENU_RAM_START_ADDRESS ((TOTAL_FONT_NUM*FONT_HEIGHT)/32+1)*32
#define CHAR_MAIN_MENU_START ((MENU_RAM_START_ADDRESS>>4)&0x7F)
//MENU_RAM_START_ADDRESS must be times of 32
//#define MENU_RAM_START_ADDRESS 0x9c0 //0xc00 - 0x20 * line total
#define CHAR_RAM_END CHAR_MAIN_MENU_START+14
//Main Mnu
enum{
idVIDEOMENU=0x01,
idTVMENU,
idNULLMENU
};
enum{
ifaVIDEOMENU=0x01,
ifaNULLMENU
};
//Video Menu
enum{
idBRIGHTMENU=0x01,
idCONTRASTMENU,
idSHARPMENU,
idSATMENU,
//idVOLUMEMENU,
//idHUEMENU,
idLANGUAGEMENU,
idENDMENU
};
enum{
ifaBRIGHTMENU=0x01,
ifaCONTRASTMENU,
ifaSHARPMENU,
ifaSATMENU,
ifaHUEMENU,
ifaENDMENU
};
//TV Menu
enum{
idCHANNEL_TV=0x01,
#ifdef PAL
idBAND_TV,
iSOUNDSYSTEM_TV,
#endif
#ifdef NTSC
idSKIP_TV,
idSOURCE_TV,
#endif
idFINETUNE_TV,
idAUTOMEMORY_TV,
idRECALL_TV,
idEND
};
#ifdef AU_35
#define OSD_LENGTH 14
#else
#define OSD_LENGTH 28
#endif
#define OSD_LINE_NUM 10
#define NOSIGNAL_LENGTH 13
#define NOSUPPORT_LENGTH 14
#define COLORCAL_LENGTH 23
#define CALDOING_LENGTH 18
#define ICON_STAT 0
#define TXT_STAT 3
#define NUM_STAT 25
#define FCTRY_OSD_LENGTH 25
#define FCTRY_NUM_STAT 20
#define GAUGE_Y 7
//OSD number draw attabite
#define DRAW_BLANK 0x10
#define DRAW_ZERO 0x20
void OSDLogo(void);
void OSDInit(void);
void OSDLoadColor(void);
void OSDSetRamAddr(uWORD);
void OSDEventMgr(void);
void OSDOpenMenu(void);
void OSDFuncSelect(sCHAR);
void OSDFactoryFuncSelect(sCHAR);
void OSDFuncEnter(void);
void OSDFuncEnterVideo(void);
void OSDFuncExit(void);
void OSDFuncExitVideo(void);
void OSDDisable(void);
void OSDEnable(void);
void OSDExit(void);
void OSDShowPage(void);
void OSDShowChinesePage(void);
void OSDShowLine(uCHAR*,uCHAR,uCHAR,uCHAR,uCHAR);
void OSDMoveCursor(uCHAR, uCHAR);
void OSDMoveChineseCursor(uCHAR,uCHAR);
void OSDShowData(uCHAR);
void OSDShowVideoData(void);
void OSDShowFactoryVideoData(void);
void OSDDrawGauge(uCHAR cVal, uCHAR cMax, uCHAR x, uCHAR y, uCHAR cColor);
void OSDDrawNum(uWORD wVal, uCHAR cMax, uCHAR x, uCHAR y, uCHAR cColor, uCHAR cAttr);
void OSDDrawTVFreq(uWORD wFreq);
void OSDShowTV_Num(uCHAR cTemp);
void OSDDrawBand(uWORD wFreq);
void OSDNumConvert(uCHAR cNum);
void OSDShowInfo(uCHAR,uCHAR,uCHAR);
void OSDDrawSkip(void);
void OSDShowRESET(bit bTemp);
void OSDClearCursor(uCHAR cStart, uCHAR cEnd);
void OSDClearChineseCursor(uCHAR cStart,uCHAR cEnd);
void OSDCleanLine(uCHAR x,uCHAR y,uCHAR cColor,uCHAR cLength);
void OSDClearPage(void);
void OSDSetLineAttribute(uCHAR cLine,uCHAR cAttribute);
//void OSDShiftSrc(uCHAR cSrc1, uCHAR cSrc2);
void OSDShowSubpage(void);
void OSDDspMessages(uCHAR);
void OSDPosition(uCHAR);
//void OSDTVShowChannel(uCHAR x, uCHAR y, uCHAR cColor, uCHAR cChannel);
void OSDShowTVSource(sCHAR);
void OSDShowSource(void);
void OSDShowMode(void);
void OSDShowNTSC_PAL(void);
void OSDDrawSoundSystem(void);
void OSDShowRatio(void);
void OSDShowTVData(void);
#endif // __OSDDRAW_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -