Previous 199869 Revisions Next

r44463 Sunday 24th January, 2016 at 02:55:36 UTC by Felipe CorrĂȘa da Silva Sanches
[marywu] multiplex 7seg modules
[src/mame/drivers]marywu.cpp

trunk/src/mame/drivers/marywu.cpp
r252974r252975
3030    { }
3131
3232    DECLARE_WRITE8_MEMBER(display_7seg_data_w);
33    DECLARE_WRITE8_MEMBER(multiplex_7seg_w);
34private:
35    uint8_t m_selected_7seg_module;
3336};
3437
38WRITE8_MEMBER( marywu_state::multiplex_7seg_w )
39{
40        m_selected_7seg_module = data;
41}
42
3543WRITE8_MEMBER( marywu_state::display_7seg_data_w )
3644{
3745    static const UINT8 patterns[16] = { 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7c, 0x07, 0x7f, 0x67, 0, 0, 0, 0, 0, 0 }; // HEF4511BP (7 seg display driver)
3846
39    output_set_digit_value(0, patterns[data & 0x0F]);
40    output_set_digit_value(1, patterns[(data >> 4) & 0x0F]);
47    output_set_digit_value(2 * m_selected_7seg_module + 0, patterns[data & 0x0F]);
48    output_set_digit_value(2 * m_selected_7seg_module + 1, patterns[(data >> 4) & 0x0F]);
4149}
4250
4351static ADDRESS_MAP_START( program_map, AS_PROGRAM, 8, marywu_state )
r252974r252975
6068
6169    /* Keyboard & display interface */
6270    MCFG_DEVICE_ADD("i8279", I8279, XTAL_10_738635MHz) /* should it be perhaps a fraction of the XTAL clock ? */
63//    MCFG_I8279_OUT_SL_CB(WRITE8(marywu_state, marywu_scanlines_w))          // scan SL lines
71    MCFG_I8279_OUT_SL_CB(WRITE8(marywu_state, multiplex_7seg_w))          // select  block of 7seg modules by multiplexing the SL scan lines
6472//    MCFG_I8279_IN_RL_CB(READ8(marywu_state, marywu_kbd_r))                  // kbd RL lines
6573    MCFG_I8279_OUT_DISP_CB(WRITE8(marywu_state, display_7seg_data_w))
6674


Previous 199869 Revisions Next


© 1997-2024 The MAME Team