mirror of
https://github.com/holub/mame
synced 2025-04-25 09:50:04 +03:00
dectalk.cpp: nuked anonymous timers, added savestate support [Lord Nightmare]
This commit is contained in:
parent
2908556376
commit
92e38a0e10
@ -335,6 +335,7 @@ public:
|
||||
virtual void machine_reset() override;
|
||||
virtual void machine_start() override;
|
||||
TIMER_CALLBACK_MEMBER(outfifo_read_cb);
|
||||
emu_timer *m_outfifo_read_timer;
|
||||
void dectalk_outfifo_check();
|
||||
void dectalk_clear_all_fifos();
|
||||
void dectalk_semaphore_w(uint16_t data);
|
||||
@ -472,9 +473,29 @@ WRITE_LINE_MEMBER(dectalk_state::dectalk_reset)
|
||||
|
||||
void dectalk_state::machine_start()
|
||||
{
|
||||
m_outfifo_read_timer = timer_alloc(TIMER_OUTFIFO_READ);
|
||||
m_outfifo_read_timer->adjust(attotime::from_hz(10000));
|
||||
save_item(NAME(m_infifo));
|
||||
save_item(NAME(m_infifo_count));
|
||||
save_item(NAME(m_infifo_tail_ptr));
|
||||
save_item(NAME(m_infifo_head_ptr));
|
||||
save_item(NAME(m_outfifo));
|
||||
save_item(NAME(m_outfifo_count));
|
||||
save_item(NAME(m_outfifo_tail_ptr));
|
||||
save_item(NAME(m_outfifo_head_ptr));
|
||||
save_item(NAME(m_infifo_semaphore));
|
||||
save_item(NAME(m_spc_error_latch));
|
||||
save_item(NAME(m_m68k_spcflags_latch));
|
||||
save_item(NAME(m_m68k_tlcflags_latch));
|
||||
save_item(NAME(m_simulate_outfifo_error));
|
||||
save_item(NAME(m_tlc_tonedetect));
|
||||
save_item(NAME(m_tlc_ringdetect));
|
||||
save_item(NAME(m_tlc_dtmf));
|
||||
save_item(NAME(m_duart_inport));
|
||||
save_item(NAME(m_duart_outport));
|
||||
save_item(NAME(m_hack_self_test));
|
||||
dectalk_clear_all_fifos();
|
||||
m_simulate_outfifo_error = 0;
|
||||
timer_set(attotime::from_hz(10000), TIMER_OUTFIFO_READ);
|
||||
}
|
||||
|
||||
void dectalk_state::machine_reset()
|
||||
@ -852,7 +873,7 @@ TIMER_CALLBACK_MEMBER(dectalk_state::outfifo_read_cb)
|
||||
#ifdef VERBOSE
|
||||
if (data!= 0x8000) logerror("sample output: %04X\n", data);
|
||||
#endif
|
||||
timer_set(attotime::from_hz(10000), TIMER_OUTFIFO_READ);
|
||||
m_outfifo_read_timer->adjust(attotime::from_hz(10000));
|
||||
m_dac->write(data >> 4);
|
||||
// hack for break key, requires hacked up duart core so disabled for now
|
||||
// also it doesn't work well, the setup menu is badly corrupt
|
||||
@ -1010,4 +1031,4 @@ ROM_END
|
||||
******************************************************************************/
|
||||
|
||||
/* YEAR NAME PARENT COMPAT MACHINE INPUT STATE INIT COMPANY FULLNAME FLAGS */
|
||||
COMP( 1984, dectalk, 0, 0, dectalk, dectalk, dectalk_state, 0, "Digital Equipment Corporation", "DECtalk DTC-01", MACHINE_NOT_WORKING )
|
||||
COMP( 1984, dectalk, 0, 0, dectalk, dectalk, dectalk_state, 0, "Digital Equipment Corporation", "DECtalk DTC-01", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE )
|
||||
|
Loading…
Reference in New Issue
Block a user