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

📄 osdvp.h

📁 车载电子影音系统dvd播放系统原程序代码
💻 H
📖 第 1 页 / 共 2 页
字号:
#define OSDVP_REGION_KEY_COLOR                      OSDVP_PALETTE_ENTRY_REGION_KEY
#define OSDVP_REGION_KEY_NUMBER_INDEX               1

//define the distance between region 11 and region 12
#define OSDVP_DISTANCE_REGION_AUDIO_TVMODE          0

#define OSDVP_REGION_TVMODE_START_H                 (OSDVP_REGION_AUDIO_START_H+OSDVP_REGION_AUDIO_WIDTH+OSDVP_DISTANCE_REGION_AUDIO_TVMODE)
#define OSDVP_REGION_TVMODE_START_V                 OSDVP_REGION_LINE_2_START_V
#define OSDVP_REGION_TVMODE_WIDTH                   144
#define OSDVP_REGION_TVMODE_HEIGHT                  OSDVP_REGION_LINE_2_HEIGHT
#define OSDVP_REGION_TVMODE_ITEM_COLOR              OSDVP_PALETTE_ENTRY_REGION_TVMODE_ITEM
#define OSDVP_REGION_TVMODE_INFO_COLOR              OSDVP_PALETTE_ENTRY_REGION_TVMODE_INFO

//define the distance TV mode and TV
#define OSDVP_DISTANCE_REGION_TVMODE_TV             0

#define OSDVP_REGION_TV_START_H                     (OSDVP_REGION_TVMODE_START_H+OSDVP_REGION_TVMODE_WIDTH+OSDVP_DISTANCE_REGION_TVMODE_TV)
#define OSDVP_REGION_TV_START_V                     OSDVP_REGION_LINE_2_START_V
#define OSDVP_REGION_TV_WIDTH                       168
#define OSDVP_REGION_TV_HEIGHT                      OSDVP_REGION_LINE_2_HEIGHT
#define OSDVP_REGION_TV_COLOR                       OSDVP_PALETTE_ENTRY_REGION_TV

//define the distance between TV mode and equalizer.
#define OSDVP_DISTANCE_REGION_TVMODE_EQUALIZER      8       

//Region:Equalizer
#define OSDVP_REGION_EQUALIZER_START_H              (OSDVP_REGION_TVMODE_START_H+OSDVP_REGION_TVMODE_WIDTH+OSDVP_DISTANCE_REGION_TVMODE_EQUALIZER)
#define OSDVP_REGION_EQUALIZER_START_V              OSDVP_REGION_LINE_2_START_V
#define OSDVP_REGION_EQUALIZER_WIDTH                144
#define OSDVP_REGION_EQUALIZER_HEIGHT               OSDVP_REGION_LINE_2_HEIGHT
#define OSDVP_REGION_EQUALIZER_COLOR                OSDVP_PALETTE_ENTRY_REGION_EQUALIZER

#else
//define the starting position and the size of the virtual panel
#define OSDVP_START_H                               0 //16 //CoCo1.24, for OSD horizontal position move
#define OSDVP_START_V                               54//40
#define OSDVP_WIDTH                                 600

//define the height of each line.
#define OSDVP_REGION_LINE_0_HEIGHT                  32
#define OSDVP_REGION_LINE_1_HEIGHT                  32
#define OSDVP_REGION_LINE_2_HEIGHT                  32

//define the distance between each line
#define OSDVP_DISTANCE_LINE_0_1                     5
#define OSDVP_DISTANCE_LINE_1_2                     5

//define the vertical string position for each line
#define OSDVP_REGION_LINE_0_START_V                 OSDVP_START_V
#define OSDVP_REGION_LINE_1_START_V                 (OSDVP_REGION_LINE_0_START_V+OSDVP_REGION_LINE_0_HEIGHT+OSDVP_DISTANCE_LINE_0_1)
#define OSDVP_REGION_LINE_2_START_V                 (OSDVP_REGION_LINE_1_START_V+OSDVP_REGION_LINE_1_HEIGHT+OSDVP_DISTANCE_LINE_1_2)

//define the height of the virtual panel
#define OSDVP_HEIGHT                                (OSDVP_REGION_LINE_0_HEIGHT+OSDVP_DISTANCE_LINE_0_1+OSDVP_REGION_LINE_1_HEIGHT+OSDVP_DISTANCE_LINE_1_2+OSDVP_REGION_LINE_2_HEIGHT)
            
//Region1: display the title for DVD
#define OSDVP_REGION_TITLE_START_H                  (OSDVP_START_H+8)
#define OSDVP_REGION_TITLE_START_V                  OSDVP_REGION_LINE_0_START_V
#define OSDVP_REGION_TITLE_WIDTH                    152
#define OSDVP_REGION_TITLE_HEIGHT                   OSDVP_REGION_LINE_0_HEIGHT
#define OSDVP_REGION_TITLE_ITEM_COLOR               OSDVP_PALETTE_ENTRY_REGION_TITLE_ITEM
#define OSDVP_REGION_TITLE_INFO_COLOR               OSDVP_PALETTE_ENTRY_REGION_TITLE_INFO
#define OSDVP_REGION_TITLE_INFO_NUMBER_INDEX        0

//define the distance between region 1 and region 2.
#define OSDVP_DISTANCE_REGION_TITLE_CHAPTER         0

//Region2: display the chapter for DVD
#define OSDVP_REGION_CHAPTER_START_H                (OSDVP_REGION_TITLE_START_H+OSDVP_REGION_TITLE_WIDTH+OSDVP_DISTANCE_REGION_TITLE_CHAPTER)                    
#define OSDVP_REGION_CHAPTER_START_V                OSDVP_REGION_LINE_0_START_V
#define OSDVP_REGION_CHAPTER_WIDTH                  184
#define OSDVP_REGION_CHAPTER_HEIGHT                 OSDVP_REGION_LINE_0_HEIGHT
#define OSDVP_REGION_CHAPTER_ITEM_COLOR             OSDVP_PALETTE_ENTRY_REGION_CHAPTER_ITEM
#define OSDVP_REGION_CHAPTER_INFO_COLOR             OSDVP_PALETTE_ENTRY_REGION_CHAPTER_INFO
#define OSDVP_REGION_CHAPTER_INFO_NUMBER_INDEX      0

//Region: a special title+chapter region (for DVD menu, title menu)
#define OSDVP_REGION_MENU_START_H                   (OSDVP_START_H+8)
#define OSDVP_REGION_MENU_START_V                   OSDVP_REGION_LINE_0_START_V
#define OSDVP_REGION_MENU_WIDTH                     (OSDVP_REGION_TITLE_WIDTH+OSDVP_DISTANCE_REGION_TITLE_CHAPTER+OSDVP_REGION_CHAPTER_WIDTH)
#define OSDVP_REGION_MENU_HEIGHT                    OSDVP_REGION_LINE_0_HEIGHT
#define OSDVP_REGION_MENU_COLOR                     OSDVP_PALETTE_ENTRY_REGION_MENU

//Region3: display subtitle for DVD
#define OSDVP_REGION_SUBTITLE_START_H               (OSDVP_START_H+8)
#define OSDVP_REGION_SUBTITLE_START_V               OSDVP_REGION_LINE_1_START_V
#define OSDVP_REGION_SUBTITLE_WIDTH                 288
#define OSDVP_REGION_SUBTITLE_HEIGHT                OSDVP_REGION_LINE_1_HEIGHT
#define OSDVP_REGION_SUBTITLE_ITEM_COLOR            OSDVP_PALETTE_ENTRY_REGION_SUBTITLE_ITEM
#define OSDVP_REGION_SUBTITLE_INFO_COLOR            OSDVP_PALETTE_ENTRY_REGION_SUBTITLE_INFO
#define OSDVP_REGION_SUBTITLE_INFO_NUMBER_INDEX     0

//define the distance between region 3 and region 4
#define OSDVP_DISTANCE_REGION_SUBTITLE_AST          0

//Region4: display language for DVD
#define OSDVP_REGION_AST_START_H                    (OSDVP_REGION_SUBTITLE_START_H+OSDVP_REGION_SUBTITLE_WIDTH+OSDVP_DISTANCE_REGION_SUBTITLE_AST)
#define OSDVP_REGION_AST_START_V                    OSDVP_REGION_LINE_1_START_V
#define OSDVP_REGION_AST_WIDTH                      (OSDVP_START_H+OSDVP_WIDTH-OSDVP_REGION_AST_START_H-1)
#define OSDVP_REGION_AST_HEIGHT                     OSDVP_REGION_LINE_1_HEIGHT
#define OSDVP_REGION_AST_ITEM_COLOR                 OSDVP_PALETTE_ENTRY_REGION_AST_ITEM
#define OSDVP_REGION_AST_INFO_COLOR                 OSDVP_PALETTE_ENTRY_REGION_AST_INFO
#define OSDVP_REGION_AST_INFO_NUMBER_INDEX          0

//define the distance between region 1 and region 2.
#define OSDVP_DISTANCE_REGION_CHAPTER_TIME          8

//Region8: display the time
#define OSDVP_REGION_TIME_START_H                   (OSDVP_REGION_CHAPTER_START_H+OSDVP_REGION_CHAPTER_WIDTH+OSDVP_DISTANCE_REGION_CHAPTER_TIME)
#define OSDVP_REGION_TIME_START_V                   OSDVP_REGION_LINE_0_START_V
#define OSDVP_REGION_TIME_WIDTH                     128
#define OSDVP_REGION_TIME_HEIGHT                    OSDVP_REGION_LINE_0_HEIGHT
#define OSDVP_REGION_TIME_COLOR                     OSDVP_PALETTE_ENTRY_REGION_TIME
#define OSDVP_REGION_TIME_NUMBER_INDEX              1

//#define OSDVP_DISTANCE_REGION_TIME_STATUS           40
#define OSDVP_DISTANCE_REGION_STATUS_BACKGROUND     8

//define the region to display playing mode.
//#define OSDVP_REGION_STATUS_START_H                  (OSDVP_REGION_TIME_START_H+OSDVP_REGION_TIME_WIDTH+OSDVP_DISTANCE_REGION_TIME_STATUS)
#define OSDVP_REGION_STATUS_WIDTH                   32
#define OSDVP_REGION_STATUS_START_H                 (OSDVP_START_H+OSDVP_WIDTH-OSDVP_DISTANCE_REGION_STATUS_BACKGROUND-OSDVP_REGION_STATUS_WIDTH)
#define OSDVP_REGION_STATUS_START_V                 OSDVP_REGION_LINE_0_START_V
#define OSDVP_REGION_STATUS_HEIGHT                  OSDVP_REGION_LINE_0_HEIGHT
#define OSDVP_REGION_STATUS_COLOR                   OSDVP_PALETTE_ENTRY_REGION_STATUS

//Show other Repeat Status
#define OSDVP_REGION_REPEAT_WIDTH                   32
#define OSDVP_REGION_REPEAT_START_H                 (OSDVP_REGION_STATUS_START_H - OSDVP_REGION_REPEAT_WIDTH)
#define OSDVP_REGION_REPEAT_START_V                 OSDVP_REGION_LINE_0_START_V
#define OSDVP_REGION_REPEAT_HEIGHT                  OSDVP_REGION_LINE_0_HEIGHT
#define OSDVP_REGION_REPEAT_COLOR                   OSDVP_PALETTE_ENTRY_REGION_REPEAT

//Show other Program status
#define OSDVP_REGION_PROGRAM_WIDTH                  32
#define OSDVP_REGION_PROGRAM_START_H                (OSDVP_REGION_REPEAT_START_H - OSDVP_REGION_PROGRAM_WIDTH)
#define OSDVP_REGION_PROGRAM_START_V                OSDVP_REGION_LINE_0_START_V
#define OSDVP_REGION_PROGRAM_HEIGHT                 OSDVP_REGION_LINE_0_HEIGHT
#define OSDVP_REGION_PROGRAM_COLOR                  OSDVP_PALETTE_ENTRY_REGION_PROGRAM

//define the distance between region 4 and region 9
#define OSDVP_DISTANCE_REGION_AST_KEY               0

//define the distance between region 9 and region 10
#define OSDVP_DISTANCE_REGION_TIME_KEY              24

//Region9: display the key
#define OSDVP_REGION_KEY_START_H                    (OSDVP_REGION_TIME_START_H+OSDVP_REGION_TIME_WIDTH+OSDVP_DISTANCE_REGION_TIME_KEY)
#define OSDVP_REGION_KEY_START_V                    OSDVP_REGION_LINE_0_START_V
//#define OSDVP_REGION_KEY_WIDTH                      176
#define OSDVP_REGION_KEY_WIDTH                      (OSDVP_START_H+OSDVP_WIDTH-OSDVP_REGION_KEY_START_H-1)
#define OSDVP_REGION_KEY_HEIGHT                     OSDVP_REGION_LINE_0_HEIGHT
#define OSDVP_REGION_KEY_COLOR                      OSDVP_PALETTE_ENTRY_REGION_KEY
#define OSDVP_REGION_KEY_NUMBER_INDEX               1

//define the distance between region 5 and region 10
#define OSDVP_DISTANCE_REGION_PLAY_AUDIO            0

//Region10: display audio (type+info)
#define OSDVP_REGION_AUDIO_START_H                  (OSDVP_START_H+8)
#define OSDVP_REGION_AUDIO_START_V                  OSDVP_REGION_LINE_2_START_V
#define OSDVP_REGION_AUDIO_WIDTH                    152
#define OSDVP_REGION_AUDIO_HEIGHT                   OSDVP_REGION_LINE_2_HEIGHT
#define OSDVP_REGION_AUDIO_COLOR                    OSDVP_PALETTE_ENTRY_REGION_AUDIO
#define OSDVP_REGION_AUDIO_LETTER_INDEX             0

//define the distance between region 11 and region 12
#define OSDVP_DISTANCE_REGION_AUDIO_TVMODE          0

#define OSDVP_REGION_TVMODE_START_H                 (OSDVP_REGION_AUDIO_START_H+OSDVP_REGION_AUDIO_WIDTH+OSDVP_DISTANCE_REGION_AUDIO_TVMODE)
#define OSDVP_REGION_TVMODE_START_V                 OSDVP_REGION_LINE_2_START_V
#define OSDVP_REGION_TVMODE_WIDTH                   144
#define OSDVP_REGION_TVMODE_HEIGHT                  OSDVP_REGION_LINE_2_HEIGHT
#define OSDVP_REGION_TVMODE_ITEM_COLOR              OSDVP_PALETTE_ENTRY_REGION_TVMODE_ITEM
#define OSDVP_REGION_TVMODE_INFO_COLOR              OSDVP_PALETTE_ENTRY_REGION_TVMODE_INFO

//define the distance TV mode and TV
#define OSDVP_DISTANCE_REGION_TVMODE_TV             0

#define OSDVP_REGION_TV_START_H                     (OSDVP_REGION_TVMODE_START_H+OSDVP_REGION_TVMODE_WIDTH+OSDVP_DISTANCE_REGION_TVMODE_TV)
#define OSDVP_REGION_TV_START_V                     OSDVP_REGION_LINE_2_START_V
#define OSDVP_REGION_TV_WIDTH                       168
#define OSDVP_REGION_TV_HEIGHT                      OSDVP_REGION_LINE_2_HEIGHT
#define OSDVP_REGION_TV_COLOR                       OSDVP_PALETTE_ENTRY_REGION_TV

//define the distance between TV mode and equalizer.
#define OSDVP_DISTANCE_REGION_TVMODE_EQUALIZER      8       

//Region:Equalizer
#define OSDVP_REGION_EQUALIZER_START_H              (OSDVP_REGION_TVMODE_START_H+OSDVP_REGION_TVMODE_WIDTH+OSDVP_DISTANCE_REGION_TVMODE_EQUALIZER)
#define OSDVP_REGION_EQUALIZER_START_V              OSDVP_REGION_LINE_2_START_V
#define OSDVP_REGION_EQUALIZER_WIDTH                144
#define OSDVP_REGION_EQUALIZER_HEIGHT               OSDVP_REGION_LINE_2_HEIGHT
#define OSDVP_REGION_EQUALIZER_COLOR                OSDVP_PALETTE_ENTRY_REGION_EQUALIZER

//define the distance between TV amd angle
#define OSDVP_DISTANCE_REGION_TV_ANGLE              8

//Region12: display angle
#define OSDVP_REGION_ANGLE_START_H                  (OSDVP_REGION_TV_START_H+OSDVP_REGION_TV_WIDTH+OSDVP_DISTANCE_REGION_TV_ANGLE)
#define OSDVP_REGION_ANGLE_START_V                  OSDVP_REGION_LINE_2_START_V
#define OSDVP_REGION_ANGLE_WIDTH                    104
#define OSDVP_REGION_ANGLE_HEIGHT                   OSDVP_REGION_LINE_2_HEIGHT
#define OSDVP_REGION_ANGLE_ITEM_COLOR               OSDVP_PALETTE_ENTRY_REGION_ANGLE_ITEM
#define OSDVP_REGION_ANGLE_INFO_COLOR               OSDVP_PALETTE_ENTRY_REGION_ANGLE_INFO
#define OSDVP_REGION_ANGLE_NUMBER_INDEX             0

#endif //#if (SDRAM_CONFIGURATION == SDRAM_16M)

//Exported API for OSD control module.
BYTE OSDVP_Update(BYTE bMessage, WORD wParam);

//internal API
BYTE _OSDVP_ShowInfo(BYTE bMessage);
void _OSDVP_Initial(void);
void _OSDVP_InitializeGDI(void);
void _OSDVP_ClearRegion(BYTE bClearRegion, BYTE bPos);
void _OSDVP_OutputString(BYTE bMessage, BYTE bType);
void _OSDVP_ShowDiscType(void);
void _OSDVP_DrawRegion(BYTE bRegion, BYTE bType, BYTE bPos);
void _OSDVP_ShowDVDItems(void);
void _OSDVP_ShowTitle(BYTE bType);
void _OSDVP_ShowChapter(BYTE bType);
void _OSDVP_ShowAST(BYTE bType);
void _OSDVP_ShowSPST(BYTE bType);
void _OSDVP_ShowAudioOutput(void);
void _OSDVP_ShowTVMode(BYTE bType);
void _OSDVP_ShowPSCAN(void);
void _OSDVP_ShowAngle(BYTE bType);
void _OSDVP_GetInfoPos(BYTE bMessage);
void _OSDVP_ShowUnknownTime(void);
void _OSDVP_ShowTime(void);
void _OSDVP_UpdateUnknownRegions(void);
void _OSDVP_ShowItem(BYTE bMessage);
BYTE _OSDVP_ClearInfo(void);
void _OSDVP_CodeToLanguage(WORD wCode);
void _OSDVP_ShowPlayingStatus(void);
void _OSDVP_ShowUnknownSPST(void);
void _OSDVP_ShowUnknownAST(void);
void _OSDVP_ShowUnknownAngle(void);


//OSD global variables
extern BYTE _bOSDVPTemp;
extern WORD _wOSDVPTemp;
extern WORD _wOSDInfo;
extern WORD _wOSDVPHPos;
extern BYTE _bOSDIndex;
extern BYTE _bOSDMsg;
extern BYTE _bOSDVPStage;

#endif //__OSDVP_H__

⌨️ 快捷键说明

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