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

📄 vfdspec.h

📁 MTK1389D dvd原程序
💻 H
📖 第 1 页 / 共 4 页
字号:
    {"multi_on",    {ICON_pal, ICON_ntsc},
        {ICON_empty }              },
    {"colonon",      {ICON_colon1,ICON_colon2},
                    {ICON_empty },                     },
    {"colonoff",    {ICON_empty },
        {ICON_colon1,ICON_colon2}      },

};
#endif
#ifdef VFD_13
#define  VFD_MODE       0x02

// *********************************************************************
// Predefined ANODE
// *********************************************************************
#define  ANODE_EMPTY    GET_NODE_WORD(0x8, 0x01)
#define  ICON_EMPTY     {0x8, 0x01}

// *********************************************************************
// Refresh Table
// *********************************************************************
BYTE pbVfdRefresh[] = {
    0x00, 0x01, 0x02, 0x03,
    0x04, 0x05, 0x06, 0x07,
    0x08, 0x09, 0x0a,0x0b
};

strucVfdIcon prVfdWheel[] = {
  { 0x1,0x80},
  {0x1,0x40},
  {0x1,0x20},
  {0x1,0x10},
  {0x1,0x8},
  {0x1,0x4},
  /*{0x00, 0x80},
  {0x00, 0x40},
  {0x00, 0x20},
  {0x00, 0x10},
  {0x00, 0x08},
  {0x00, 0x04},
  {0x00, 0x02},*/
};

// *********************************************************************
// Panel/Controller Attributes
// *********************************************************************
#define VFD_CHAR_SEG_SZ        8

#include "vfd_char.h"

#define VFD_SHADOW_LEN           VFD_REFRESH_TBL_SZ

#define VFD_FIELD_MAX   6

BYTE pbVfdMsgPosition[] = {
  //  VFD_TITLE+1,
		VFD_TRACK,  VFD_TRACK+1,
		//VFD_MIN100, 
		VFD_MINUTE,
    VFD_MINUTE+1, VFD_SECOND, VFD_SECOND+1
};

typedef struct structVfdSegment
{
  WORD pwSeg[VFD_CHAR_SEG_SZ];
} strucVfdSegment;

#define SEG_TRACK_HIGH { \
  GET_NODE_WORD(0x0,0x80), \
  GET_NODE_WORD(0x0,0x40), \
  GET_NODE_WORD(0x0,0x8), \
  GET_NODE_WORD(0x0,0x2), \
  GET_NODE_WORD(0x0,0x4), \
  GET_NODE_WORD(0x0,0x20), \
  GET_NODE_WORD(0x0,0x10), \
  ANODE_EMPTY \
}

#define SEG_TRACK_LOW { \
  GET_NODE_WORD(0x2,0x80), \
  GET_NODE_WORD(0x2,0x40), \
  GET_NODE_WORD(0x2,0x8), \
  GET_NODE_WORD(0x2,0x2), \
  GET_NODE_WORD(0x2,0x4), \
  GET_NODE_WORD(0x2,0x20), \
  GET_NODE_WORD(0x2,0x10), \
  ANODE_EMPTY \
}

#define SEG_MINUTE_HIGH { \
  GET_NODE_WORD(0x5,0x80), \
  GET_NODE_WORD(0x5,0x40), \
  GET_NODE_WORD(0x5,0x8), \
  GET_NODE_WORD(0x5,0x2), \
  GET_NODE_WORD(0x5,0x4), \
  GET_NODE_WORD(0x5,0x20), \
  GET_NODE_WORD(0x5,0x10), \
  ANODE_EMPTY \
}

#define SEG_MINUTE_LOW { \
  GET_NODE_WORD(0x4,0x80), \
  GET_NODE_WORD(0x4,0x40), \
  GET_NODE_WORD(0x4,0x8), \
  GET_NODE_WORD(0x4,0x2), \
  GET_NODE_WORD(0x4,0x4), \
  GET_NODE_WORD(0x4,0x20), \
  GET_NODE_WORD(0x4,0x10), \
  ANODE_EMPTY \
}

#define SEG_SECOND_HIGH { \
   GET_NODE_WORD(0x7,0x80), \
  GET_NODE_WORD(0x7,0x40), \
  GET_NODE_WORD(0x7,0x8), \
  GET_NODE_WORD(0x7,0x2), \
  GET_NODE_WORD(0x7,0x4), \
  GET_NODE_WORD(0x7,0x20), \
  GET_NODE_WORD(0x7,0x10), \
  ANODE_EMPTY \
}

#define SEG_SECOND_LOW { \
  GET_NODE_WORD(0x6,0x80), \
  GET_NODE_WORD(0x6,0x40), \
  GET_NODE_WORD(0x6,0x8), \
  GET_NODE_WORD(0x6,0x2), \
  GET_NODE_WORD(0x6,0x4), \
  GET_NODE_WORD(0x6,0x20), \
  GET_NODE_WORD(0x6,0x10), \
  ANODE_EMPTY \
}

#define SEG_HOUR { \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY \
}

#define SEG_TITLE_HIGH { \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY \
}

#define SEG_TITLE_LOW { \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY, \
  ANODE_EMPTY \
}

strucVfdSegment prVfdCharSegments[] = {
    SEG_TRACK_HIGH,
    SEG_TRACK_LOW,
    SEG_MINUTE_HIGH,
    SEG_MINUTE_LOW,
    SEG_SECOND_HIGH,
    SEG_SECOND_LOW,
    SEG_HOUR,
 //   SEG_TITLE_HIGH,
  //  SEG_TITLE_LOW,
};

#define VFD_MSG_CHAR_NUM  8

typedef struct structVfdMsg {
    char * pcName;
    WORD pwMsg[VFD_MSG_CHAR_NUM];
} strucVfdMsg;

strucVfdMsg prVfdMsg[] = {
  {"stop",    {CHAR_, CHAR_,CHAR_S,CHAR_t,CHAR_O,CHAR_P, CHAR_end}},
  {"root",    {CHAR_, CHAR_, CHAR_R,CHAR_O,CHAR_O,CHAR_t,CHAR_end}},
  {"title",   { CHAR_, CHAR_t,CHAR_I,CHAR_t,CHAR_L,CHAR_E,CHAR_end}},
  {"nodisc",  {CHAR_n,CHAR_O,CHAR_d,CHAR_I,CHAR_S,CHAR_C,CHAR_end}},
  {"undisc",  {CHAR_U,CHAR_n,CHAR_d,CHAR_I,CHAR_S,CHAR_C,CHAR_end}},
  {"open",    {CHAR_, CHAR_, CHAR_O,CHAR_P,CHAR_E,CHAR_n,CHAR_end}},
  {"close",   {CHAR_, CHAR_C,CHAR_L,CHAR_O,CHAR_S,CHAR_E,CHAR_end}},
  {"vcd",     { CHAR_, CHAR_,CHAR_U,CHAR_C,CHAR_d,CHAR_,  CHAR_end}},
  {"svcd",    { CHAR_, CHAR_, CHAR_S,CHAR_U,CHAR_C,CHAR_d,CHAR_end}},
  {"loading", {CHAR_, CHAR_, CHAR_L,CHAR_O,CHAR_A,CHAR_d,CHAR_end}},
  {"off",     {CHAR_, CHAR__,CHAR_O,CHAR_F,CHAR_F,CHAR__,CHAR_end}},
  {"hello",   { CHAR_, CHAR_H,CHAR_E,CHAR_L,CHAR_L,CHAR_O,CHAR_end}},
  {"jpeg",    {CHAR_, CHAR_, CHAR_J,CHAR_P,CHAR_E,CHAR_g,CHAR_end}},
  {"p_cd",    {CHAR_, CHAR_, CHAR_P,CHAR__,CHAR_c,CHAR_d,CHAR_end}},
  {"pbc_play",{CHAR_P,CHAR_b,CHAR_c,CHAR_P,CHAR_L,CHAR_A,CHAR_end}},
  {"digest",  {CHAR_ ,CHAR_,CHAR_d,CHAR_g,CHAR_S,CHAR_t, CHAR_end}},
  {"err",     {CHAR_ ,CHAR_, CHAR_E,CHAR_R,CHAR_R,CHAR_, CHAR_end}},
  {"upg",     {CHAR_ ,CHAR_U,CHAR_P,CHAR_g,CHAR_, CHAR_, CHAR_end}},
  {"clearall",{ CHAR_, CHAR_, CHAR_, CHAR_, CHAR_, CHAR_, CHAR_end}}
};

#if (VFD_CHAR_SEG_SZ <= 8)
#define CHAR_all  0x00ff
#elif (VFD_CHAR_SEG_SZ == 10)
#define CHAR_all  0x03ff
#elif (VFD_CHAR_SEG_SZ == 14)
#define CHAR_all  0x3fff
#endif

#define ICON_pbc        GET_NODE_WORD(0x5,0x1)
#define ICON_angle      ICON_empty
#define ICON_repeat  ICON_empty //  GET_NODE_WORD(0x4,0x1)
#define ICON_all       ICON_empty //GET_NODE_WORD(0x02, 0x40)
#define ICON_dvd        GET_NODE_WORD(0x4,0x1)
#define ICON_super      GET_NODE_WORD(0x3,0x1)
#define ICON_vcd        GET_NODE_WORD(0x3,0x80)
#define ICON_mp3        GET_NODE_WORD(0x7,0x1)
#define ICON_cd         GET_NODE_WORD(0x3,0x40)
#define ICON_colon1     GET_NODE_WORD(0x6,0x1)
#define ICON_colon2    ICON_empty// GET_NODE_WORD(0x07, 0x01)
#define ICON_play    ICON_empty //  GET_NODE_WORD(0x02, 0x10)
#define ICON_pause    ICON_empty // GET_NODE_WORD(0x02, 0x20)
#define ICON_ac3       ICON_empty// GET_NODE_WORD(0x08, 0x02)
#define ICON_dts       ICON_empty// GET_NODE_WORD(0x08, 0x01)

#define ICON_empty      ANODE_EMPTY

#define ICON_ntsc        GET_NODE_WORD(0x2,0x1)
#define ICON_pal         GET_NODE_WORD(0x3,0x20)
#define ICON_vocal      ICON_empty
#define ICON_one        ICON_empty
#define ICON_program    ICON_empty
#define ICON_l           GET_NODE_WORD(0x3,0x4)
#define ICON_slash       GET_NODE_WORD(0x3,0x8)
#define ICON_r           GET_NODE_WORD(0x3,0x2)
#define ICON_random     ICON_empty
#define ICON_s7         ICON_empty
#define ICON_s6         ICON_empty
#define ICON_s5         ICON_empty
#define ICON_s4         ICON_empty
#define ICON_s3         ICON_empty
#define ICON_s2         ICON_empty
#define ICON_s1         ICON_empty
#define ICON_seta       ICON_empty
#define ICON_setb       ICON_empty
#define ICON_chapter    ICON_empty
#define ICON_title      ICON_empty
#define ICON_circle     GET_NODE_WORD(0x01,0x02)
#define ICON_micphon   GET_NODE_WORD(0x03,0x10)

strucVfdIconMacro prVfdIconMacro[] = {
    /* Repeat AB related */
    {"a2b_a",       {ICON_seta}, {ICON_setb}  },
    {"a2b_b",       {ICON_seta, ICON_setb}, {ICON_empty }  },
    {"a2b_cancel",  {ICON_empty }, {ICON_seta, ICON_setb}  },

    /* Audio selection */
    {"mono_l",      {ICON_l},
        {ICON_r, ICON_slash}        },
    {"mono_r",      {ICON_r},
        {ICON_l, ICON_slash}        },
    {"stereo",      {ICON_slash, ICON_l, ICON_r},
        {ICON_empty}          },
    {"stereo_off",  {ICON_empty},
        {ICON_slash, ICON_l, ICON_r}},
    {"vocal_l",      {ICON_l},
        {ICON_slash, ICON_r}        },
    {"vocal_r",      {ICON_r},
        {ICON_slash, ICON_l}        },
    {"vocal_off",   {ICON_empty},
                    {ICON_empty}                      },

    /* Play selection */
    {"fb",      {ICON_empty}, {ICON_play, ICON_pause} },
    {"ff",      {ICON_empty}, {ICON_play, ICON_pause} },
    {"pause",   {ICON_pause}, {ICON_play} },
    {"play",    {ICON_play}, {ICON_pause}  },
    {"stop",    {ICON_empty}, {ICON_play, ICON_pause} },

    /* PBC selection */
    {"pbc_on",  {ICON_pbc}, {ICON_empty} },
    {"pbc_off",  {ICON_empty}, {ICON_pbc}  },

    /* Intro/digest */
    {"intro_on",{ICON_empty}, {ICON_empty} },
    {"intro_off",{ICON_empty}, {ICON_empty} },

    /* Mic. colon, track, hyphen etc */
    {"colon_on", {ICON_colon2}, {ICON_empty} },
    {"colon_off",{ICON_empty}, {ICON_colon2} },
    {"track",    {ICON_chapter}, {ICON_title} },
    {"title",    {ICON_title, ICON_chapter}, {ICON_empty} },

    /* title on/off */
    {"title_on", {ICON_title}, {ICON_empty} },
    {"title_off",{ICON_empty}, {ICON_title} },

    /* Play sequence */
    {"sequence",    {ICON_empty}, {ICON_program, ICON_random, ICON_repeat, ICON_all, ICON_seta, ICON_setb} },
    {"program",      {ICON_program},
        {ICON_random, ICON_pbc}        },
    {"shuffle",      {ICON_random},
        {ICON_program, ICON_pbc}        },

    /* Repeat related */
    {"repeat_off",  {ICON_empty},
                    {ICON_repeat, ICON_one, ICON_all, ICON_seta, ICON_setb}        },
    {"repeat_one",  {ICON_repeat},
        {ICON_all}            },
    {"repeat_all",  {ICON_repeat, ICON_all},
        {ICON_empty}          },

    /* CD type */
    {"svcd",        {ICON_vcd,   ICON_super, ICON_cd},
                    {ICON_dvd}                                          },
    {"cdda",        {ICON_cd},
                    {ICON_super, ICON_vcd, ICON_dvd}      },
    {"vcd",         {ICON_vcd, ICON_cd},
                    {ICON_super, ICON_dvd}        },

    /* TV type */
    {"ntsc",      {ICON_ntsc},
        {ICON_pal}          },
    {"pal",      {ICON_pal},
        {ICON_ntsc}                 },

    /* Key shift */
    {"key_up",      {ICON_empty},
        {ICON_empty}          },
    {"key_down",    {ICON_empty},
        {ICON_empty}          },
    {"key_resume",  {ICON_empty},
        {ICON_empty}          },

    /* Initialization */
    {"init_state",  {ICON_chapter, ICON_l, ICON_r, ICON_s1, ICON_s2,
         ICON_s3, ICON_s4, ICON_s5, ICON_s6, ICON_s7},
                    {ICON_empty}          },

    {"clear_msg",   {ICON_empty }, {ICON_colon1, ICON_colon2, ICON_title, ICON_chapter} },

    {"panel4_off",  {ICON_empty },
                    {ICON_ntsc, ICON_pal, ICON_l, ICON_r, ICON_vocal, ICON_pbc, },  },
    {"panel5_off",  {ICON_empty },
                    {ICON_angle, ICON_title, ICON_ac3, ICON_dts },  },

    {"in_vts",      {ICON_dvd, ICON_chapter, ICON_play, ICON_title },
                    {ICON_empty }                          },
    {"pause_on",    {ICON_pause}, {ICON_play}  },
    {"pause_off",   {ICON_play}, {ICON_pause}  },
    {"angle_on",    {ICON_angle}, {ICON_empty } },
    {"angle_off",   {ICON_empty }, {ICON_angle} },

    {"ac3",         {ICON_ac3}, {ICON_dts, ICON_mp3} },
    {"dts",         {ICON_dts}, {ICON_ac3, ICON_mp3} },
    {"mp3",         {ICON_mp3}, {ICON_ac3, ICON_dts} },
    {"pcm",         {ICON_empty}, {ICON_dts, ICON_ac3, ICON_mp3} },
    {"clear_audio", {ICON_empty}, {ICON_dts, ICON_ac3, ICON_mp3}},

    {"chapter_repeat_on", {ICON_repeat, ICON_one },
                    {ICON_all},                              },
    {"title_repeat_on", {ICON_repeat, ICON_all },
                    {ICON_one},                              },
    {"chapter_repeat_off", {ICON_empty },
                    {ICON_repeat, ICON_one},                              },
    {"title_repeat_off", {ICON_empty },
                    {ICON_repeat, ICON_all},                              },
    {"dvdon",      {ICON_dvd},
                    {ICON_empty },       },
    {"dvdoff",       {ICON_empty },
        {ICON_dvd}            },
    {"multi_on",    {ICON_pal, ICON_ntsc},
        {ICON_empty }              },
    {"colonon",      {ICON_colon1,ICON_colon2},
                    {ICON_empty },                     },
    {"colonoff",    {ICON_empty },
        {ICON_colon1,ICON_colon2}      },
    {"mic_on",  {ICON_micphon}, {ICON_empty} },
    {"mic_off",  {ICON_empty}, {ICON_micphon}  },
        {"circle_on",  {ICON_circle}, {ICON_empty} },
    {"circle_off",  {ICON_empty}, {ICON_circle}  },

⌨️ 快捷键说明

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