diff options
| author | 2024-09-09 17:18:28 +0200 | |
|---|---|---|
| committer | 2024-09-09 17:18:28 +0200 | |
| commit | b0240641c0dc941ebdfc991bebf94fef34f60b50 (patch) | |
| tree | cbb19e4346324ae9ad7af4cbf581d2a525d4d7a2 /src/devices/machine/ticket.cpp | |
| parent | 9cbe922efe7a605106f749b29f8258d160df5425 (diff) | |
ticket: remove motor/status_active setters
Diffstat (limited to 'src/devices/machine/ticket.cpp')
| -rw-r--r-- | src/devices/machine/ticket.cpp | 38 |
1 files changed, 12 insertions, 26 deletions
diff --git a/src/devices/machine/ticket.cpp b/src/devices/machine/ticket.cpp index a8d9b119f07..97d837eb7a7 100644 --- a/src/devices/machine/ticket.cpp +++ b/src/devices/machine/ticket.cpp @@ -11,18 +11,10 @@ #include "emu.h" #include "ticket.h" - -//************************************************************************** -// DEBUGGING -//************************************************************************** - -#define DEBUG_TICKET 0 - -#define VERBOSE (DEBUG_TICKET) +#define VERBOSE (0) #include "logmacro.h" - //************************************************************************** // GLOBAL VARIABLES //************************************************************************** @@ -43,15 +35,10 @@ DEFINE_DEVICE_TYPE(HOPPER, hopper_device, "coin_hopper", "Coin Hopper") ticket_dispenser_device::ticket_dispenser_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : device_t(mconfig, type, tag, owner, clock) - , m_motor_sense(MOTOR_ACTIVE_LOW) - , m_status_sense(STATUS_ACTIVE_LOW) , m_period(attotime::from_msec(100)) , m_hopper_type(false) - , m_motoron(0) - , m_ticketdispensed(0) - , m_ticketnotdispensed(0) - , m_status(0) - , m_power(0) + , m_status(false) + , m_power(false) , m_timer(nullptr) , m_output(*this, tag) // TODO: change to "tag:status" , m_dispense_handler(*this) @@ -61,11 +48,13 @@ ticket_dispenser_device::ticket_dispenser_device(const machine_config &mconfig, ticket_dispenser_device::ticket_dispenser_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : ticket_dispenser_device(mconfig, TICKET_DISPENSER, tag, owner, clock) { + m_hopper_type = false; } hopper_device::hopper_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : ticket_dispenser_device(mconfig, HOPPER, tag, owner, clock) { + m_hopper_type = true; } //------------------------------------------------- @@ -98,21 +87,21 @@ int ticket_dispenser_device::line_r() void ticket_dispenser_device::motor_w(int state) { // On an activate signal, start dispensing! - if (bool(state) == m_motoron) + if (state) { if (!m_power) { LOG("%s: Ticket Power On\n", machine().describe_context()); m_timer->adjust(m_period); m_power = true; - m_status = m_ticketnotdispensed; + m_status = false; } } else { if (m_power) { - if (m_hopper_type == false || m_status == m_ticketnotdispensed) + if (!m_hopper_type || !m_status) { LOG("%s: Ticket Power Off\n", machine().describe_context()); m_timer->adjust(attotime::never); @@ -134,10 +123,6 @@ void ticket_dispenser_device::motor_w(int state) void ticket_dispenser_device::device_start() { - m_motoron = (m_motor_sense == MOTOR_ACTIVE_HIGH); - m_ticketdispensed = (m_status_sense == STATUS_ACTIVE_HIGH); - m_ticketnotdispensed = !m_ticketdispensed; - m_timer = timer_alloc(FUNC(ticket_dispenser_device::update_output_state), this); m_output.resolve(); @@ -153,7 +138,7 @@ void ticket_dispenser_device::device_start() void ticket_dispenser_device::device_reset() { - m_status = m_ticketnotdispensed; + m_status = false; m_power = false; } @@ -180,14 +165,15 @@ TIMER_CALLBACK_MEMBER(ticket_dispenser_device::update_output_state) } // update output status - m_output = m_status == m_ticketdispensed; + m_output = m_status; if (m_hopper_type) { m_dispense_handler(m_status); } + // if we just dispensed, increment global count - if (m_status == m_ticketdispensed) + if (m_status) { machine().bookkeeping().increment_dispensed_tickets(1); LOG("Ticket Dispensed\n"); |
