summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/terminal.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/terminal.cpp')
-rw-r--r--src/devices/machine/terminal.cpp18
1 files changed, 7 insertions, 11 deletions
diff --git a/src/devices/machine/terminal.cpp b/src/devices/machine/terminal.cpp
index ccb101d8036..b367a12857b 100644
--- a/src/devices/machine/terminal.cpp
+++ b/src/devices/machine/terminal.cpp
@@ -1,7 +1,8 @@
// license:BSD-3-Clause
// copyright-holders:Miodrag Milanovic
#include "emu.h"
-#include "machine/terminal.h"
+#include "terminal.h"
+
#include "screen.h"
#include "speaker.h"
@@ -220,7 +221,7 @@ void generic_terminal_device::term_write(uint8_t data)
case 0x0d: // carriage return
m_x_pos = 0;
if (!(options & 0x080)) break;
-
+ [[fallthrough]];
case 0x0a: // linefeed
m_y_pos++;
if (m_y_pos >= m_height)
@@ -346,8 +347,8 @@ void generic_terminal_device::device_add_mconfig(machine_config &config)
void generic_terminal_device::device_start()
{
m_buffer = std::make_unique<uint8_t []>(m_width * m_height);
- m_bell_timer = timer_alloc(BELL_TIMER_ID);
- m_keyboard_cb.resolve();
+ m_bell_timer = timer_alloc(FUNC(generic_terminal_device::bell_off), this);
+ m_keyboard_cb.resolve_safe();
save_pointer(NAME(m_buffer), m_width * m_height);
save_item(NAME(m_x_pos));
save_item(NAME(m_framecnt));
@@ -361,14 +362,9 @@ void generic_terminal_device::device_reset()
m_framecnt = 0;
}
-void generic_terminal_device::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
+TIMER_CALLBACK_MEMBER(generic_terminal_device::bell_off)
{
- switch (id)
- {
- case BELL_TIMER_ID:
- m_beeper->set_state(0);
- break;
- }
+ m_beeper->set_state(0);
}
/*