diff options
Diffstat (limited to 'src/devices/cpu/tms9900/tms9995.h')
-rw-r--r-- | src/devices/cpu/tms9900/tms9995.h | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/src/devices/cpu/tms9900/tms9995.h b/src/devices/cpu/tms9900/tms9995.h index 9fc58630675..c175906eeaf 100644 --- a/src/devices/cpu/tms9900/tms9995.h +++ b/src/devices/cpu/tms9900/tms9995.h @@ -3,16 +3,15 @@ /* tms9995.h - See tms9995.c for documentation + See tms9995.cpp for documentation Also see tms9900.h for types of TMS99xx processors. */ -#ifndef MAME_CPU_TMS9995_TMS9995_H -#define MAME_CPU_TMS9995_TMS9995_H +#ifndef MAME_CPU_TMS9900_TMS9995_H +#define MAME_CPU_TMS9900_TMS9995_H #pragma once -#include "debugger.h" #include "tms99com.h" // device type definition @@ -37,16 +36,16 @@ public: // READY input line. When asserted (high), the memory is ready for data exchange. // We chose to use a direct method instead of a delegate to keep performance // footprint low; this method may be called very frequently. - DECLARE_WRITE_LINE_MEMBER( ready_line ); + void ready_line(int state); // HOLD input line. When asserted (low), the CPU is requested to release the // data and address bus and enter the HOLD state. The entrance of this state // is acknowledged by the HOLDA output line. - DECLARE_WRITE_LINE_MEMBER( hold_line ); + void hold_line(int state); // RESET input line. Unlike the standard set_input_line, this input method // is synchronous and will immediately lead to a reset of the CPU. - DECLARE_WRITE_LINE_MEMBER( reset_line ); + void reset_line(int state); // Callbacks auto extop_cb() { return m_external_operation.bind(); } @@ -54,7 +53,8 @@ public: auto holda_cb() { return m_holda_line.bind(); } // For debugger access - uint8_t debug_read_onchip_memory(offs_t addr) { return m_onchip_memory[addr & 0xff]; }; + uint8_t debug_read_onchip_memory(offs_t addr) { return m_onchip_memory[addr & 0xff]; } + void debug_write_onchip_memory(offs_t addr, uint8_t data) { m_onchip_memory[addr & 0xff] = data; } bool is_onchip(offs_t addrb) { return (((addrb & 0xff00)==0xf000 && (addrb < 0xf0fc)) || ((addrb & 0xfffc)==0xfffc)) && !m_mp9537; } void set_overflow_interrupt( int enable ) { m_check_overflow = (enable!=0); } @@ -66,9 +66,8 @@ protected: virtual void device_start() override; // device_execute_interface overrides - virtual uint32_t execute_min_cycles() const override; - virtual uint32_t execute_max_cycles() const override; - virtual uint32_t execute_input_lines() const override; + virtual uint32_t execute_min_cycles() const noexcept override; + virtual uint32_t execute_max_cycles() const noexcept override; virtual void execute_set_input(int irqline, int state) override; virtual void execute_run() override; @@ -77,8 +76,8 @@ protected: virtual space_config_vector memory_space_config() const override; - uint64_t execute_clocks_to_cycles(uint64_t clocks) const override { return clocks / 4.0; } - uint64_t execute_cycles_to_clocks(uint64_t cycles) const override { return cycles * 4.0; } + uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return clocks / 4.0; } + uint64_t execute_cycles_to_clocks(uint64_t cycles) const noexcept override { return cycles * 4.0; } // Variant of the TMS9995 without internal RAM and decrementer bool m_mp9537; @@ -417,4 +416,4 @@ public: } }; -#endif // MAME_CPU_TMS9995_TMS9995_H +#endif // MAME_CPU_TMS9900_TMS9995_H |