📄 osd.c
字号:
if((int)addr_vy(osd_free) >= (int)OBV_H)
{
psprintf(linebuf, "OSD BUFFER OVERFLOW(osd_init_prog).... %x(%x)\n",
addr_vy(osd_free), OBV_H);
epp_write_slow(linebuf);
}
#endif
#endif
ClearOsdMsg(0);
osd_enable();
}
/*
** New init()
** for DVD setup menu
*/
void osd_init_setup_main(void)
{
#ifdef IR_SETUP_MENU_ON//EDO_REDUCE
osd_disable();
// setup first free address
osd_free = addr_vxvy(0, 0);
//MAX creation
//region[0].osd_w = 14 * 4;
//region[0].osd_h = 6 * OSD_FONT_HEIGHT;
#if CONFIG==CONFIG_COMBO_SVCD
// setup region 6
region[6].osd_w = 24 * 4; //13*4;
region[6].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[6], 72, 45 + (OSD_FONT_HEIGHT * 6), NULL,
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 5
region[5].osd_w = 24 * 4; //13*4;
region[5].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[5], 72, 45 + (OSD_FONT_HEIGHT * 5), ®ion[6],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 4
region[4].osd_w = 24 * 4; //13*4;
region[4].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[4], 72, 45 + (OSD_FONT_HEIGHT * 4), ®ion[5],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 3
region[3].osd_w = 24 * 4; //13*4;
region[3].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[3], 72, 45 + (OSD_FONT_HEIGHT * 3), ®ion[4],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 2
region[2].osd_w = 24 * 4; //13*4;
region[2].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[2], 72, 45 + (OSD_FONT_HEIGHT * 2), ®ion[3],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 1
region[1].osd_w = 24 * 4; //13*4;
region[1].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[1], 72, 45 + (OSD_FONT_HEIGHT * 1), ®ion[2],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 0
region[0].osd_w = 24 * 4; //13*4;
region[0].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[0], 72, 45 + (OSD_FONT_HEIGHT * 0), ®ion[1],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
#ifdef MONE_OSD_BUFFER
if((int)addr_vy(osd_free) >= (int)(MEM_AUDYA_DEF - MEM_OSDYA_DEF))
{
psprintf(linebuf,
"OSD BUFFER OVERFLOW(osd_init_setup_main)....%x-%x(%x)\n",
addr_vx(osd_free), addr_vy(osd_free),
(MEM_AUDYA_DEF - MEM_OSDYA_DEF));
epp_write(linebuf);
}
#endif
#else
// setup region 5
region[5].osd_w = 13 * 4;
region[5].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[5], 110, 60 + (OSD_FONT_HEIGHT * 5), NULL,
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 4
region[4].osd_w = 13 * 4;
region[4].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[4], 110, 60 + (OSD_FONT_HEIGHT * 4), ®ion[5],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 3
region[3].osd_w = 13 * 4;
region[3].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[3], 110, 60 + (OSD_FONT_HEIGHT * 3), ®ion[4],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 2
region[2].osd_w = 13 * 4;
region[2].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[2], 110, 60 + (OSD_FONT_HEIGHT * 2), ®ion[3],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 1
region[1].osd_w = 13 * 4;
region[1].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[1], 110, 60 + (OSD_FONT_HEIGHT * 1), ®ion[2],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 0
region[0].osd_w = 13 * 4;
region[0].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[0], 110, 60 + (OSD_FONT_HEIGHT * 0), ®ion[1],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
#ifdef MONE_OSD_BUFFER
if((int)addr_vy(osd_free) >= (int)OBV_H)
{
psprintf(linebuf, "OSD BUFFER OVERFLOW(osd_init_setup_main).... %x(%x)\n",
addr_vy(osd_free), OBV_H);
epp_write_slow(linebuf);
}
#endif
#endif
ClearOsdMsg(0);
osd_enable();
#endif//IR_SETUP_MENU_ON
}
void osd_init_setup_set_eq(void)
{
#ifdef IR_SETUP_MENU_ON//EDO_REDUCE
osd_disable();
// setup first free address
osd_free = addr_vxvy(0, 0);
#if CONFIG==CONFIG_COMBO_SVCD
// setup region 5
region[5].osd_w = 26 * 4; //20*4;
region[5].osd_h = 8; //4*OSD_FONT_HEIGHT;
osd_create_region(®ion[5], 72,
(45 + (OSD_FONT_HEIGHT * 3) + 3 * 16 + 16 + 16), NULL,
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 4
region[4].osd_w = 26 * 4; //20*4;
region[4].osd_h = 8; //4*OSD_FONT_HEIGHT;
osd_create_region(®ion[4], 72, (45 + (OSD_FONT_HEIGHT * 3) + 3 * 16 + 8),
®ion[5], OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 3
region[3].osd_w = 26 * 4; //20*4;
region[3].osd_h = 3 * 16 + 2; //4*OSD_FONT_HEIGHT;
osd_create_region(®ion[3], 72, 45 + (OSD_FONT_HEIGHT * 3), ®ion[4],
OSD_FORMAT_16COLOR, OSD_NONINTERLACED);
// setup region 2
region[2].osd_w = 26 * 4; //20*4;
region[2].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[2], 72, 45 + (OSD_FONT_HEIGHT * 2), ®ion[3],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 1
region[1].osd_w = 26 * 4; //20*4;
region[1].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[1], 72, 45 + (OSD_FONT_HEIGHT * 1), ®ion[2],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 0
region[0].osd_w = 26 * 4; //20*4;
region[0].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[0], 72, 45 + (OSD_FONT_HEIGHT * 0), ®ion[1],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
#ifdef MONE_OSD_BUFFER
if((int)addr_vy(osd_free) >= (int)(MEM_AUDYA_DEF - MEM_OSDYA_DEF))
{
psprintf(linebuf,
"OSD BUFFER OVERFLOW(osd_init_setup_set_eq).... %x(%x)\n",
addr_vy(osd_free), (MEM_AUDYA_DEF - MEM_OSDYA_DEF));
epp_write(linebuf);
}
#endif
#else
// setup region 3
region[3].osd_w = 20 * 4; //13*4;
region[3].osd_h = 8; //4*OSD_FONT_HEIGHT;
osd_create_region(®ion[3], 110,
(60 + (OSD_FONT_HEIGHT * 1) + 3 * 16 + 16 + 16), NULL,
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 2
region[2].osd_w = 20 * 4; //13*4;
region[2].osd_h = 8; //4*OSD_FONT_HEIGHT;
osd_create_region(®ion[2], 110,
(60 + (OSD_FONT_HEIGHT * 1) + 3 * 16 + 8), ®ion[3],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 1
region[1].osd_w = 20 * 4; //13*4;
region[1].osd_h = 3 * 16 + 2; //4*OSD_FONT_HEIGHT;
osd_create_region(®ion[1], 110, 60 + (OSD_FONT_HEIGHT * 1), ®ion[2],
OSD_FORMAT_16COLOR, OSD_NONINTERLACED);
// setup region 0
region[0].osd_w = 20 * 4; //13*4;
region[0].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[0], 110, 60 + (OSD_FONT_HEIGHT * 0), ®ion[1],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
#ifdef MONE_OSD_BUFFER
if((int)addr_vy(osd_free) >= (int)OBV_H)
{
psprintf(linebuf,
"OSD BUFFER OVERFLOW(osd_init_setup_set_eq).... %x(%x)\n",
addr_vy(osd_free), OBV_H);
epp_write_slow(linebuf);
}
#endif
#endif
ClearOsdMsg(0);
osd_enable();
#endif//IR_SETUP_MENU_ON
}
void osd_init_setup_show_eq(void)
{
#ifdef IR_SETUP_MENU_ON//EDO_REDUCE
osd_disable();
// setup first free address
osd_free = addr_vxvy(0, 0);
#if CONFIG==CONFIG_COMBO_SVCD
// setup region 4
region[4].osd_w = 26 * 4; //20*4;
region[4].osd_h = 3 * 16 + 2; //4*OSD_FONT_HEIGHT;
osd_create_region(®ion[4], 72, 45 + (OSD_FONT_HEIGHT * 4), NULL,
OSD_FORMAT_16COLOR, OSD_NONINTERLACED);
// setup region 3
region[3].osd_w = 26 * 4; //20*4;
region[3].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[3], 72, 45 + (OSD_FONT_HEIGHT * 3), ®ion[4],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 2
region[2].osd_w = 26 * 4; //20*4;
region[2].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[2], 72, 45 + (OSD_FONT_HEIGHT * 2), ®ion[3],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 1
region[1].osd_w = 26 * 4; //20*4;
region[1].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[1], 72, 45 + (OSD_FONT_HEIGHT * 1), ®ion[2],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 0
region[0].osd_w = 26 * 4; //20*4;
region[0].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[0], 72, 45 + (OSD_FONT_HEIGHT * 0), ®ion[1],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
#ifdef MONE_OSD_BUFFER
if((int)addr_vy(osd_free) >= (int)(MEM_AUDYA_DEF - MEM_OSDYA_DEF))
{
psprintf(linebuf,
"OSD BUFFER OVERFLOW(osd_init_setup_show_eq).... %x(%x)\n",
addr_vy(osd_free), (MEM_AUDYA_DEF - MEM_OSDYA_DEF));
epp_write(linebuf);
}
#endif
#else
// setup region 4
region[2].osd_w = 20 * 4; //13*4;
region[2].osd_h = 3 * 16 + 2; //4*OSD_FONT_HEIGHT;
osd_create_region(®ion[2], 110, 60 + (OSD_FONT_HEIGHT * 2), NULL,
OSD_FORMAT_16COLOR, OSD_NONINTERLACED);
// setup region 1
region[1].osd_w = 20 * 4;
region[1].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[1], 110, 60 + (OSD_FONT_HEIGHT * 1), ®ion[2],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
// setup region 0
region[0].osd_w = 20 * 4;
region[0].osd_h = OSD_FONT_HEIGHT;
osd_create_region(®ion[0], 110, 60 + (OSD_FONT_HEIGHT * 0), ®ion[1],
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
#ifdef MONE_OSD_BUFFER
if((int)addr_vy(osd_free) >= (int)OBV_H)
{
psprintf(linebuf,
"OSD BUFFER OVERFLOW(osd_init_setup_show_eq).... %x(%x)\n",
addr_vy(osd_free), OBV_H);
epp_write_slow(linebuf);
}
#endif
#endif
ClearOsdMsg(0);
osd_enable();
#endif//IR_SETUP_MENU_ON
}
//
// FUNCTION
// osd_init_realtime_eq
//
// DESCRIPTION
// initialize (3dsound)osd-printing function
//
void osd_init_realtime_eq(void)
{
// #include "avd.h"
osd_disable();
osd_free = addr_vxvy(0, 0);
#if 0
// setup region 4
//region[4].osd_w = 20*4;
//region[4].osd_h = 8;
//osd_create_region(®ion[4], 110,(IsAVDDisplayPAL()?(215+3*16+4):(175+3*16+4)),NULL, OSD_FORMAT_4COLOR,
// OSD_NONINTERLACED);
//setup region 3//220(for EQ chart display)
//region[3].osd_w = 20*4;//21 * 4;
//region[3].osd_h = 3*16+4;//2 * 28;//4 * 28 for others interlaced;2*28 for others non-interlaced
//osd_create_region(®ion[3], 110, (IsAVDDisplayPAL()?215:175), ®ion[4], OSD_FORMAT_16COLOR,
// OSD_NONINTERLACED);
#endif
// setup region 4
#if CONFIG==CONFIG_COMBO_SVCD
region[4].osd_w = 26 * 4;
region[4].osd_h = 8;
osd_create_region(®ion[4], 75, (170 + 3 * 16 + 2 + 4), NULL,
OSD_FORMAT_4COLOR, OSD_NONINTERLACED);
#else
region[4].osd_w = 20 * 4;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -