📄 fut267.vfd
字号:
/* Copyright 1998, ESS Technology, Inc. *//* SCCSID @(#)fut267.vfd 4.1 11/05/02 *//* Based on fut267.vfd 1.15 03/24/00 *//* * Futaba 6-BT-267GK * Application: VCD * * VFD controllers: NEC 16311, NEC 16312, Panasonic 12510, Rohm 2872 */#ifdef VFD_FUT267/* Tell me about your icon's locations! */#define ICON_CAL01 ANODE_G1P1#define ICON_CAL02 ANODE_G1P2#define ICON_CAL03 ANODE_G1P3#define ICON_CAL04 ANODE_G1P4#define ICON_CAL05 ANODE_G1P5#define ICON_CAL06 ANODE_G1P6#define ICON_CAL07 ANODE_G1P7#define ICON_CAL08 ANODE_G1P8#define ICON_CAL09 ANODE_G1P9#define ICON_CAL10 ANODE_G1P10#define ICON_CAL11 ANODE_G1P11#define ICON_CAL12 ANODE_G1P12#define ICON_CAL13 ANODE_G1P13#define ICON_CAL14 ANODE_G1P14#define ICON_CAL15 ANODE_G1P15#define ICON_CAL16 ANODE_G1P16#define ICON_off ANODE_G2P1#define ICON_r ANODE_G2P2#define ICON_vocal ANODE_G2P3#define ICON_disc1 ANODE_G2P4#define ICON_disc2 ANODE_G2P5#define ICON_disc3 ANODE_G2P6#define ICON_keydn ANODE_G2P7#define ICON_keyup ANODE_G2P8#define ICON_nokey ANODE_G2P9#define ICON_random ANODE_G2P10#define ICON_program ANODE_G2P11#define ICON_ntsc ANODE_G2P12#define ICON_pal ANODE_G2P13#define ICON_intro ANODE_G2P14#define ICON_16plus ANODE_G2P15#define ICON_empty ANODE_G2P16#define ICON_stereo ANODE_G3P1#define ICON__i ANODE_G3P2#define ICON_cd ANODE_G3P3#define ICON_mono ANODE_G3P4#define ICON_video ANODE_G3P5#define ICON_all ANODE_G3P6#define ICON_one ANODE_G3P7#define ICON_seta ANODE_G3P8#define ICON_seta_ ANODE_G3P9#define ICON_setb ANODE_G3P10#define ICON_ff ANODE_G3P11#define ICON_bar ANODE_G3P12#define ICON_fb ANODE_G3P13#define ICON_play ANODE_G3P14#define ICON_pause ANODE_G3P15#define ICON_repeat ANODE_G3P16#define ICON_track ANODE_G4P8#define ICON_disc_view ANODE_G4P16#define ICON_l ANODE_G5P8#define ICON_pbc ANODE_G5P16#define ICON_colon ANODE_G6P8#define ICON_dvdon ANODE_G2P9#define ICON_dvdoff ANODE_G2P9#define ICON_s1 ANODE_G2P9#define ICON_s2 ANODE_G2P9#define ICON_s3 ANODE_G2P9/* * Controller mode setting. This is determined by number of G/P and * the particular VFD controller that you are using. */unsigned int VFD_mode[] = {#ifdef BU2872 0x3a, /* 6G, 16P */#endif#ifdef D16311 0x0b, /* 12G, 16P */#endif#ifdef D16312 0x02, /* 6G, 16P */#endif};unsigned int VFD_char_segment_size[] = { 8 };/* Internal GP to external GP mapping. */unsigned char VFD_refresh_address[] = {#ifdef D16311 ANODE_G1L, ANODE_G1H, ANODE_G2H, ANODE_G3L, ANODE_G4L, ANODE_G4H, ANODE_G5H, ANODE_G6L, ANODE_G7L, ANODE_G7H, ANODE_G8H, ANODE_G9L,#endif#if (BU2872 || D16312 || MN12510) ANODE_G1L, ANODE_G1H, ANODE_G2L, ANODE_G2H, ANODE_G3L, ANODE_G3H, ANODE_G4L, ANODE_G4H, ANODE_G5L, ANODE_G5H, ANODE_G6L, ANODE_G6H#endif};/* 7-segment definition (really 8 segments) for track/minute/second. */VFD_CHAR_SEGMENTS VFD_char_segments[] = { {ANODE_G4P9, ANODE_G4P10, ANODE_G4P13, ANODE_G4P15, ANODE_G4P14, ANODE_G4P11, ANODE_G4P12, ICON_empty}, /* Track high */ {ANODE_G4P1, ANODE_G4P2, ANODE_G4P5, ANODE_G4P7, ANODE_G4P6, ANODE_G4P3, ANODE_G4P4, ICON_empty}, /* Track low */ {ANODE_G6P9, ANODE_G6P10, ANODE_G6P13, ANODE_G6P15, ANODE_G6P14, ANODE_G6P11, ANODE_G6P12, ICON_empty}, /* Minute high*/ {ANODE_G6P1, ANODE_G6P2, ANODE_G6P5, ANODE_G6P7, ANODE_G6P6, ANODE_G6P3, ANODE_G6P4, ICON_empty}, /* Minute low */ {ANODE_G5P9, ANODE_G5P10, ANODE_G5P13, ANODE_G5P15, ANODE_G5P14, ANODE_G5P11, ANODE_G5P12, ICON_empty}, /* Second high*/ {ANODE_G5P1, ANODE_G5P2, ANODE_G5P5, ANODE_G5P7, ANODE_G5P6, ANODE_G5P3, ANODE_G5P4, ICON_empty}, /* Second low */};/* Icons that belong to calendar */unsigned short VFD_calendar_table[] = { ICON_empty, ICON_CAL01, ICON_CAL02, ICON_CAL03, ICON_CAL04, ICON_CAL05, ICON_CAL06, ICON_CAL07, ICON_CAL08, ICON_CAL09, ICON_CAL10, ICON_CAL11, ICON_CAL12, ICON_CAL13, ICON_CAL14, ICON_CAL15, ICON_CAL16};VFD_ICON VFD_iconmsg[] = { /* Repeat AB related */ {"clear_ab", {ICON_empty}, {ICON_seta, ICON_seta_, ICON_setb} }, {"seta", {ICON_seta, ICON_seta_}, {ICON_setb} }, {"setb", {ICON_seta, ICON_seta_, ICON_setb}, {ICON_empty} }, /* Disc selection */ {"disc1", {ICON_disc1}, {ICON_disc2, ICON_disc3} }, {"disc2", {ICON_disc2}, {ICON_disc1, ICON_disc3} }, {"disc3", {ICON_disc3}, {ICON_disc2, ICON_disc3} }, /* Disc selection, no need to turn off any disks */ {"disc1_on", {ICON_disc1}, {ICON_empty} }, {"disc2_on", {ICON_disc2}, {ICON_empty} }, {"disc3_on", {ICON_disc3}, {ICON_empty} }, {"disc_1_off", {ICON_empty}, {ICON_disc1} }, {"disc_2_off", {ICON_empty}, {ICON_disc2} }, {"disc_3_off", {ICON_empty}, {ICON_disc3} }, /* Audio selection */ {"mono_l", {ICON_mono, ICON_l}, {ICON_stereo, ICON_r, ICON_vocal} }, {"mono_r", {ICON_mono, ICON_r}, {ICON_stereo, ICON_l, ICON_vocal} }, {"stereo", {ICON_stereo, ICON_l, ICON_r}, {ICON_mono, ICON_vocal} }, {"vocal_l", {ICON_vocal, ICON_l, ICON_stereo}, {ICON_mono, ICON_r} }, {"vocal_r", {ICON_vocal, ICON_r, ICON_stereo}, {ICON_mono, ICON_l} }, {"vocal_off", {ICON_stereo}, {ICON_vocal} }, /* Play selection */ {"fb", {ICON_fb, ICON_bar}, {ICON_ff, ICON_play, ICON_pause} }, {"ff", {ICON_ff, ICON_bar}, {ICON_fb, ICON_play, ICON_pause} }, {"pause", {ICON_pause}, {ICON_ff, ICON_bar, ICON_fb, ICON_play} }, {"play", {ICON_play}, {ICON_ff, ICON_bar, ICON_fb, ICON_pause} }, {"stop", {ICON_colon, ICON_track}, {ICON_play, ICON_pause, ICON_intro, ICON_ff, ICON_fb}}, /* PBC selection */ {"pbc_on", {ICON_pbc}, {ICON_off, ICON_random, ICON_repeat, ICON_one, ICON_all} }, {"pbc_off", {ICON_pbc, ICON_off}, {ICON_program, ICON_random} }, /* Intro/digest */ {"intro_on", {ICON_intro}, {ICON_empty} }, {"intro_off", {ICON_empty}, {ICON_intro} }, /* Number of tracks */ {"more_on", {ICON_16plus}, {ICON_empty} }, {"more_off", {ICON_empty}, {ICON_16plus} }, /* Mic. colon, track, hyphen etc */ {"colon_on", {ICON_colon}, {ICON_empty} }, {"colon_off", {ICON_empty}, {ICON_colon} }, {"track", {ICON_track}, {ICON_empty} }, {"hyphen_on", {ICON_empty}, {ICON_empty} }, {"hyphen_off", {ICON_empty}, {ICON_empty} }, /* Play sequence */ {"program", {ICON_program}, {ICON_random, ICON_pbc, ICON_off} }, {"shuffle", {ICON_random}, {ICON_program, ICON_pbc, ICON_off} }, {"sequence", {ICON_empty}, {ICON_program, ICON_random} }, /* Repeat related */ {"repeat_off", {ICON_empty}, {ICON_repeat, ICON_one, ICON_all} }, {"repeat_one", {ICON_repeat, ICON_one}, {ICON_all} }, {"repeat_all", {ICON_repeat, ICON_all}, {ICON_one} }, /* CD type */ {"cdda", {ICON_cd}, {ICON__i, ICON_video} }, {"vcd", {ICON_video, ICON_cd}, {ICON__i} }, /* TV type */ {"ntsc", {ICON_ntsc}, {ICON_pal} }, {"pal", {ICON_pal}, {ICON_ntsc} }, /* Key shift */ {"key_up", {ICON_keyup}, {ICON_keydn, ICON_nokey} }, {"key_down", {ICON_keydn}, {ICON_keyup, ICON_nokey} }, {"key_resume", {ICON_nokey}, {ICON_keyup, ICON_keydn} }, /* Initialization */ {"init_state", {ICON_track, ICON_stereo, ICON_l, ICON_r, ICON_nokey}, {ICON_empty} },};/* * C-program will refer to a message by VFDMSG_xxx where xxx is the * name you assigned in column 1. */VFD_MSG VFD_msg[] = { {"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_O, CHAR_P, CHAR_E, CHAR_n, CHAR_end}}, {"close", {CHAR_, CHAR_C, CHAR_L, CHAR_O, CHAR_S, CHAR_E, CHAR_end}}, {"vcd30", {CHAR_, CHAR_U, CHAR_C, CHAR_d, CHAR_3, CHAR_0, CHAR_end}}, {"clearall",{CHAR_, CHAR_, CHAR_, CHAR_, CHAR_, CHAR_, CHAR_end}}, {"stop", {CHAR_, CHAR_S ,CHAR_t , CHAR_O ,CHAR_P ,CHAR_ , CHAR_end}}, {"root", {CHAR_, CHAR_R ,CHAR_O , CHAR_O ,CHAR_t ,CHAR_ , CHAR_end}}, {"title", {CHAR_, CHAR_t ,CHAR_I , CHAR_t ,CHAR_L ,CHAR_E, CHAR_end}},};unsigned short VFD_wheel[] = {};unsigned short VFD_ring[] = {};/* * Display position of characters in VFD_msg. */unsigned char VFD_msg_position[] = { VFD_TRACK, VFD_TRACK+1, VFD_MINUTE, VFD_MINUTE+1, VFD_SECOND, VFD_SECOND+1};#ifdef MN12510/* 12510 programming sequence *//* Commands */unsigned char VFD_12510_cmd[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 0xc, 0xd, 0xe}; /* Corresponding data */unsigned char VFD_12510_dat[] = { 0x01, /* FLPCNT: */ 0x5e, /* DGTCNT: Specify digit: 6G, 15/16 */ 0x0f, /* SEGCNT: Specify segment: 16P */ 0x0f, /* P01CNT: [G12,G11,G10,G9,P12,P11,P10,P9] */ 0x0f, /* P2DIR: P2x [o/i,o/i,o/i,o/i] */ 0xff, /* P2CNT: [G16/P13,G15/P14,G14/P15,G13/P16,d,d,d,d] */ 0x10, /* P3DIR: P3x [o/i,o/i,o/i,o/i,o/i] */ 0x10, /* P3CNT: [K4/P34,K3/P33,K2/P32,K1/P31,K0/P30] */ 0x15, /* KEYCNT: Key specification (6 keys) */ 0x17, /* P01DATA: P0x P1x [3H/3L,2H/2L,1H/1L,0H/0L, ... */ 0x00, /* P2DATA: P2x [3H/3L,2H/2L,1H/1L,0H/0L] */ 0x0f /* P3DATA: P3x [3H/3L,2H/2L,1H/1L,0H/0L] */};#endif /* MN12510 */#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -