mirror of
https://github.com/holub/mame
synced 2025-04-22 08:22:15 +03:00
zrt80: removed anonymous timer
This commit is contained in:
parent
5312d992b4
commit
a0080be98d
@ -22,6 +22,7 @@
|
||||
#include "machine/ins8250.h"
|
||||
#include "machine/keyboard.h"
|
||||
#include "sound/beep.h"
|
||||
#include "machine/timer.h"
|
||||
#include "emupal.h"
|
||||
#include "screen.h"
|
||||
#include "speaker.h"
|
||||
@ -38,17 +39,12 @@ public:
|
||||
, m_beep(*this, "beeper")
|
||||
, m_palette(*this, "palette")
|
||||
, m_p_chargen(*this, "chargen")
|
||||
{
|
||||
}
|
||||
, m_beep_timer(*this, "beep_timer")
|
||||
{ }
|
||||
|
||||
void zrt80(machine_config &config);
|
||||
|
||||
private:
|
||||
enum
|
||||
{
|
||||
TIMER_BEEP_OFF
|
||||
};
|
||||
|
||||
uint8_t zrt80_10_r();
|
||||
void zrt80_30_w(uint8_t data);
|
||||
void zrt80_38_w(uint8_t data);
|
||||
@ -58,7 +54,7 @@ private:
|
||||
void io_map(address_map &map);
|
||||
void mem_map(address_map &map);
|
||||
|
||||
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(beep_timer);
|
||||
uint8_t m_term_data;
|
||||
void machine_reset() override;
|
||||
void machine_start() override;
|
||||
@ -69,6 +65,7 @@ private:
|
||||
required_device<beep_device> m_beep;
|
||||
required_device<palette_device> m_palette;
|
||||
required_region_ptr<u8> m_p_chargen;
|
||||
required_device<timer_device> m_beep_timer;
|
||||
};
|
||||
|
||||
|
||||
@ -79,28 +76,21 @@ uint8_t zrt80_state::zrt80_10_r()
|
||||
return ret;
|
||||
}
|
||||
|
||||
void zrt80_state::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(zrt80_state::beep_timer)
|
||||
{
|
||||
switch (id)
|
||||
{
|
||||
case TIMER_BEEP_OFF:
|
||||
m_beep->set_state(0);
|
||||
break;
|
||||
default:
|
||||
throw emu_fatalerror("Unknown id in zrt80_state::device_timer");
|
||||
}
|
||||
m_beep->set_state(0);
|
||||
}
|
||||
|
||||
|
||||
void zrt80_state::zrt80_30_w(uint8_t data)
|
||||
{
|
||||
timer_set(attotime::from_msec(100), TIMER_BEEP_OFF);
|
||||
m_beep_timer->adjust(attotime::from_msec(100));
|
||||
m_beep->set_state(1);
|
||||
}
|
||||
|
||||
void zrt80_state::zrt80_38_w(uint8_t data)
|
||||
{
|
||||
timer_set(attotime::from_msec(400), TIMER_BEEP_OFF);
|
||||
m_beep_timer->adjust(attotime::from_msec(400));
|
||||
m_beep->set_state(1);
|
||||
}
|
||||
|
||||
@ -302,6 +292,7 @@ void zrt80_state::zrt80(machine_config &config)
|
||||
/* sound hardware */
|
||||
SPEAKER(config, "mono").front_center();
|
||||
BEEP(config, m_beep, 800).add_route(ALL_OUTPUTS, "mono", 0.50);
|
||||
TIMER(config, m_beep_timer).configure_generic(FUNC(zrt80_state::beep_timer));
|
||||
|
||||
/* Devices */
|
||||
MC6845(config, m_crtc, XTAL(20'000'000) / 8);
|
||||
|
Loading…
Reference in New Issue
Block a user