📄 osd.h
字号:
#ifndef _OSD_H
#define _OSD_H
//define by Alvin
#define OSD_WIDTH 31
#define OSD_HIGH 15
#define ONE_BIT_START_ADDR 468 // ONE_BIT_START_ADDR % 9 == 0
#define TWO_BIT_START_ADDR 3159// (TWO_BIT_START_ADDR - ONE_BIT_START_ADDR) %9 == 0
#define FOUR_BIT_START_ADDR 3690// (FOUR_BIT_START_ADDR - TWO_BIT_START_ADDR) %9 == 0
#define OFFSET_2BIT 16
#define OFFSET_4BIT 100
#define LANG_OFFSET 124
#define MAX_PAGE 7 //16
#define MAX_DSUB_ITEM 6 //16
#define MAX_DVI_ITEM 6 //10
#define MAX_VIDEO_ITEM 6
#define MAX_L2_ITEM 3
#define MAX_FACT_ITEM 26
#define OSD_FACT_HPOS PanelWidth - OSD_WIDTH*12-2 //918
#define OSD_FACT_VPOS 2
#define OSD_IN_MAIN_MENU 1
#define OSD_IN_FACT_MENU 2
#define OSD_IN_ERROR_MENU 3
#define OSD_IN_OUT_MENU 4
#define OSD_IN_AUTO_MENU 5
#define OSD_IN_IMSG_MENU 6
//
#define ROW0 0
#define ROW1 OSD_WIDTH
#define ROW2 OSD_WIDTH*2
#define ROW3 OSD_WIDTH*3
#define ROW4 OSD_WIDTH*4
#define ROW5 OSD_WIDTH*5
#define ROW6 OSD_WIDTH*6
#define ROW7 OSD_WIDTH*7
#define ROW8 OSD_WIDTH*8
#define ROW9 OSD_WIDTH*9
#define ROW10 OSD_WIDTH*10
#define ROW11 OSD_WIDTH*11
#define ROW12 OSD_WIDTH*12
#define ROW13 OSD_WIDTH*13
#define ROW14 OSD_WIDTH*14
#define ROW15 OSD_WIDTH*15
#define ROW16 OSD_WIDTH*16
#define ROW17 OSD_WIDTH*17
#define ROW18 OSD_WIDTH*18
#define BAR_SEGMENT 5
#define BAR_LENGTH 7
#define CBAR_SEGMENT 5
#define CBAR_LENGTH 10
#define REG_PAGE1 0x00
#define REG_PAGE2 0x01
#define REG_PAGE3 0x10
#define enOSD 0x01
#define enWIN1 0x02
#define enWIN2 0x04
#define enWIN3 0x08
#define enWIN4 0x10
//0xff Write Type flag
#define tyRED_GAMMA 0x00
#define tyGREEN_GAMMA 0x10
#define tyBLUE_GAMMA 0x20
#define tyRGB_GAMMA 0x30
#define tySRAM_CODE_ONLY 0x40
#define tySRAM_ATT_MSB 0x50
#define tySRAM_ATT_LSB 0x60
#define tySRAM_ATT_RW 0x70
#define tySRAM_CODE_ATT 0x80
#define tySRAM_CODE_CC_CD 0x90
#define tySRAM_1BIT 0xa0
#define tySRAM_2BIT 0xb0
#define tySRAM_4BIT 0xc0
#define tySRAM_PALETTE 0xd0
#define tyDDC0 0xe0
#define tyDDC1 0xf0
#define tyPORT_READ 0x04
#define tyPORT_WRITE 0x00
#define tyWITH_LANGTH 0x01
//0xaa window attrib
#define atWIN_TRANSLUCENT 0x10
#define atWIN_SHADOW_2L 0x00
#define atWIN_SHADOW_4L 0x04
#define atWIN_SHADOW_6L 0x08
#define atWIN_SHADOW_8L 0x0c
#define atWIN_SHADOW_EN 0x02
//WINDOW define
#define WINDOW1 0
#define WINDOW2 1
#define WINDOW3 2
#define WINDOW4 3
#define WIN4_X1 0
#define WIN4_X2 OSD_WIDTH-1
#define WIN4_Y1 0
#define WIN4_Y2 OSD_HIGH-3
#define WIN4_ATTR atWIN_SHADOW_4L
#define WIN4_COLOR bGRAY>>4//bBLUE>>4
#define WIN3_X1 WIN4_X1+4
#define WIN3_X2 WIN4_X2-4
#define WIN3_Y1 WIN4_Y1+9
#define WIN3_Y2 WIN4_Y2-1
#define WIN3_ATTR atWIN_SHADOW_4L
#define WIN3_COLOR bCYAN>>4
#define WIN2_X1 0
#define WIN2_X2 OSD_WIDTH-1
#define WIN2_Y1 0
#define WIN2_Y2 OSD_HIGH-3
#define WIN2_ATTR atWIN_SHADOW_4L | atWIN_SHADOW_EN
#define WIN2_COLOR bLIGHT>>4//bBLUE>>4
//OSD Position
#define OSD_X1 0//PanelWidth/16-1
#define OSD_X2 PanelWidth/16-OSD_WIDTH*12+1//15*PanelWidth/16-OSD_WIDTH*12+1
#define OSD_X3 (PanelWidth-OSD_WIDTH*12)/2
#define OSD_Y1 0//PanelHeight/12-1
#define OSD_Y2 PanelHeight-OSD_HIGH*18+1//11*PanelHeight/12-OSD_HIGH*18+1
#define OSD_Y3 (PanelHeight-OSD_HIGH*18)/2
#define OSD_Y4 (PanelHeight-6*18)/2
//Code Attrib define
#define caONE_BIT_256 0x0000
#define caONE_BIT_512 0x0004
#define caTWO_BIT 0x0008
#define caFOUR_BIT 0x000c
#define caMIX 0x0002
#define caBLINK 0x0001
// OSD Palette Data
#define clBLACK 0x0000
#define clRED 0xf800
#define clGREEN 0x07e0
#define clBLUE 0x001F
#define clCYAN (clBLUE|clGREEN)
#define clMAGENTA (clRED|clBLUE)
#define clYELLOW (clRED|clGREEN)
#define clWHITE (clRED|clGREEN|clBLUE)
#define clDGREEN 0x0410
#define clGRAY 0xB596//0x8410//0x8C71
#define clLIGHT 0xCE59
#define clLBLUE 0x0010//0x02b6
#define bBLACK 0x0000
#define bRED 0x0020
#define bGREEN 0x0030
#define bBLUE 0x0040
#define bCYAN 0x0050
#define bMAGENTA 0x0060
#define bYELLOW 0x0070
#define bWHITE 0x0080
#define bDGREEN 0x0090
#define bGRAY 0x00a0
#define bLIGHT 0x00b0
#define bLBLUE 0x00c0
#define fBLACK 0x0000
#define fRED 0x0100
#define fGREEN 0x0200
#define fBLUE 0x0300
#define fCYAN 0x0400
#define fMAGENTA 0x0500
#define fYELLOW 0x0600
#define fWHITE 0x0700
#define fDGREEN 0x0900
#define fGRAY 0x0a00
#define fLIGHT 0x0b00
#define fLBLUE 0x0c00
#define BAR_COLOR fMAGENTA|bBLACK //(13*4+OFFSET_2BIT)<<8
#define VALUE_COLOR fMAGENTA|bBLACK
#define DESC_COLOR fWHITE|bBLACK
#define FUN_COLOR fWHITE|bBLACK
#define SEL_FUN_COLOR fMAGENTA|bBLACK //(13*4+OFFSET_2BIT)<<8
#define RES_COLOR fGREEN|bBLACK
#define MODE_COLOR fRED|bGRAY
#define SET_ICON_COLOR bBLUE>>4
#define WAIT_COLOR (64+OFFSET_4BIT)<<8
#define WARING_COLOR (80+OFFSET_4BIT)<<8
#define SOURCE_COLOR fYELLOW|bBLACK
#define VERSION_COLOR fWHITE|fBLACK
#define MAINMENU_RES_ADDR ROW11+14
#define MAINMENU_DESC_ADDR ROW4+2
#define MAINMENU_VALUE_ADDR ROW4+25
#define MAINMENU_BAR_ADDR ROW4+16
#define MAINMENU_MODE_ADDR ROW12+6
#define FACTMENU_BAR_ADDR ROW10+10
#define FACTMENU_VALUE_ADDR ROW10+19
#define HOTKEYMENU_RES_ADDR ROW2+14
#define HOTKEYMENU_DESC_ADDR ROW1+2
#define HOTKEYMENU_VALUE_ADDR ROW1+25
#define HOTKEYMENU_BAR_ADDR ROW1+16
#define VERSION_ADDR ROW0+2
#define BACKLIGHTTIME_ADDR ROW12+20
#define MSG_OUTRANGE 0
#define MSG_NOSYNC 1
#define MSG_DISCONNECT 2
#define MSG_AUTOTUNE 3
#define MSG_AUTOCOLOR 4
#define MSG_EEPROMINIT 5
#define MSG_AUTOSET 6 //LO_CS
typedef struct{
unsigned char Index;
unsigned short Address;
unsigned char L2Max;
unsigned char Icon;
}ICONDEF;
typedef struct{
unsigned char Index;
unsigned short Address;
unsigned short SelAddr;
unsigned char *Tab;
}FACTDEF;
/***************************************************************************
*
* Project : NT68563
*
* File name : OSD_tab.H
*
* Purpose : This is the declaration file for OSD font.
*
* Rev Date Author(s) Remark
* --- ------ --------- --------------------------------------------
*
***************************************************************************/
#define _Space 0x20 /* : */
#define _DOT 0x2e /* : */
//number
#define _0 0x30 /* 0 */
#define _1 0x31 /* 1 */
#define _2 0x32 /* 2 */
#define _3 0x33 /* 3 */
#define _4 0x34 /* 4 */
#define _5 0x35 /* 5 */
#define _6 0x36 /* 6 */
#define _7 0x37 /* 7 */
#define _8 0x38 /* 8 */
#define _9 0x39 /* 9 */
#define _2DOT 0x3A /* : */
#define _A 0x41 // A
#define _B 0x42 // B
#define _C 0x43 // C
#define _D 0x44 // D
#define _E 0x45 // E
#define _F 0x46 // F
#define _G 0x47 // G
#define _H 0x48 // H
#define _I 0x49 // I
#define _J 0x4A // J
#define _K 0x4B // K
#define _L 0x4C // L
#define _M 0x4D // M
#define _N 0x4E // N
#define _O 0x4F // O
#define _P 0x50 // P
#define _Q 0x51 // Q
#define _R 0x52 // R
#define _S 0x53 // S
#define _T 0x54 // T
#define _U 0x55 // U
#define _V 0x56 // V
#define _W 0x57 // W
#define _X 0x58 // X
#define _Y 0x59 // Y
#define _Z 0x5A // Z
#define _a 0x61 // a
#define _b 0x62 // b
#define _c 0x63 // c
#define _d 0x64 // d
#define _e 0x65 // e
#define _f 0x66 // f
#define _g 0x67 // g
#define _h 0x68 // h
#define _i 0x69 // i
#define _j 0x6A // j
#define _k 0x6B // k
#define _l 0x6C // l
#define _m 0x6D // m
#define _n 0x6E // n
#define _o 0x6F // o
#define _p 0x70 // p
#define _q 0x71 // q
#define _r 0x72 // r
#define _s 0x73 // s
#define _t 0x74 // t
#define _u 0x75 // u
#define _v 0x76 // v
#define _w 0x77 // w
#define _x 0x78 // x
#define _y 0x79 // y
#define _z 0x7A // z
#define _P00 0x7b // B//
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -