From 231c47ef17de474149002d20e263272a7f14250f Mon Sep 17 00:00:00 2001 From: hap Date: Sat, 11 Nov 2023 14:11:21 +0100 Subject: stratos,simultano,risc2500: remove wrongly emulated ACL button --- src/mame/saitek/leonardo.cpp | 2 +- src/mame/saitek/renaissance.cpp | 2 +- src/mame/saitek/risc2500.cpp | 2 -- src/mame/saitek/simultano.cpp | 2 -- src/mame/saitek/stratos.cpp | 35 ++++++++++++++++++----------------- src/mame/saitek/stratos.h | 1 - 6 files changed, 20 insertions(+), 24 deletions(-) diff --git a/src/mame/saitek/leonardo.cpp b/src/mame/saitek/leonardo.cpp index 4dc1f9fc419..0a42d0c6fa7 100644 --- a/src/mame/saitek/leonardo.cpp +++ b/src/mame/saitek/leonardo.cpp @@ -166,8 +166,8 @@ INPUT_CHANGED_MEMBER(leo_state::go_button) { if (newval && m_maincpu->standby()) { - machine_reset(); m_maincpu->pulse_input_line(INPUT_LINE_RESET, attotime::zero); + machine_reset(); } } diff --git a/src/mame/saitek/renaissance.cpp b/src/mame/saitek/renaissance.cpp index 6bee95cd044..e356fd25b41 100644 --- a/src/mame/saitek/renaissance.cpp +++ b/src/mame/saitek/renaissance.cpp @@ -163,8 +163,8 @@ INPUT_CHANGED_MEMBER(ren_state::go_button) { if (newval && m_maincpu->standby()) { - machine_reset(); m_maincpu->pulse_input_line(INPUT_LINE_RESET, attotime::zero); + machine_reset(); } } diff --git a/src/mame/saitek/risc2500.cpp b/src/mame/saitek/risc2500.cpp index 17ccd6d632d..05abb17c194 100644 --- a/src/mame/saitek/risc2500.cpp +++ b/src/mame/saitek/risc2500.cpp @@ -81,7 +81,6 @@ public: , m_leds(*this, "led%u", 0U) { } - DECLARE_INPUT_CHANGED_MEMBER(acl_button) { if (newval) power_off(); } DECLARE_INPUT_CHANGED_MEMBER(on_button); void risc2500(machine_config &config); @@ -398,7 +397,6 @@ static INPUT_PORTS_START( risc2500 ) PORT_START("RESET") PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("ON") PORT_CODE(KEYCODE_I) PORT_CHANGED_MEMBER(DEVICE_SELF, risc2500_state, on_button, 0) - PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("ACL") PORT_CODE(KEYCODE_F1) PORT_CHANGED_MEMBER(DEVICE_SELF, risc2500_state, acl_button, 0) INPUT_PORTS_END static INPUT_PORTS_START( montreux ) // on/off buttons have different labels diff --git a/src/mame/saitek/simultano.cpp b/src/mame/saitek/simultano.cpp index c31fce37a93..5b38a0ca4cd 100644 --- a/src/mame/saitek/simultano.cpp +++ b/src/mame/saitek/simultano.cpp @@ -65,7 +65,6 @@ public: m_out_lcd(*this, "s%u.%u", 0U, 0U) { } - DECLARE_INPUT_CHANGED_MEMBER(acl_button) { if (newval) power_off(); } DECLARE_INPUT_CHANGED_MEMBER(go_button); void simultano(machine_config &config); @@ -300,7 +299,6 @@ static INPUT_PORTS_START( simultano ) PORT_START("RESET") PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_1) PORT_CHANGED_MEMBER(DEVICE_SELF, simultano_state, go_button, 0) PORT_NAME("Go") - PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_F1) PORT_CHANGED_MEMBER(DEVICE_SELF, simultano_state, acl_button, 0) PORT_NAME("ACL") INPUT_PORTS_END static INPUT_PORTS_START( cc2150 ) diff --git a/src/mame/saitek/stratos.cpp b/src/mame/saitek/stratos.cpp index 3c4a758692a..7b3d745e744 100644 --- a/src/mame/saitek/stratos.cpp +++ b/src/mame/saitek/stratos.cpp @@ -11,19 +11,19 @@ SciSys/Saitek Stratos chesscomputer family (1987-1990) - Corona --> corona.cpp IMPORTANT: The user is expected to press the STOP button to turn off the computer. -When not using -autosave, press that button before exiting MAME, or NVRAM can get corrupt. -If that happens, the chesscomputer will become unresponsive on next boot. To force a -cold boot, press ACL, then hold the PLAY button and press GO. +When not using -autosave, press that button before exiting MAME, or NVRAM can get +corrupt. If that happens, the chesscomputer will become unresponsive on next boot. +To force a cold boot, hold the PLAY button and power on/reset (F3). TODO: - emulate LCD at lower level, probably an MCU with embedded LCDC -- LCD status bit handling is guessed. stratos expects it to be high after lcd command 0xf, - but tking2 won't work if it's done that way, and corona is different too -- irq timing is derived from the main XTAL, but result should be similar with 5MHz and 5.67MHz, - there are a couple of "FREQ. SEL" nodes on the PCB, maybe related (not the ones in input ports). - irq source should be from HELIOS pin 2 -- tking(old revisions) and stratos slow responsive buttons, related to irq timing, but if that's changed, - the led blinking and in-game clock is too fast +- LCD status bit handling is guessed. stratos expects it to be high after lcd + command 0xf, but tking2 won't work if it's done that way, and corona differs too +- irq timing is derived from the main XTAL, but result should be similar with 5MHz + and 5.67MHz, there are a couple of "FREQ. SEL" nodes on the PCB, maybe related + (not the ones in input ports). irq source should be from HELIOS pin 2 +- tking(old revisions) and stratos slow responsive buttons, related to irq timing, + but if that's changed, the led blinking and in-game clock is too fast - does nvram.u7 work? it's cleared during boot, but not used after ================================================================================ @@ -39,13 +39,15 @@ Hardware notes: Stratos/Turbo King are identical. Corona has magnet sensors and two HELIOS chips. -There is no official Saitek program versioning for these. The D/D+ versions are known since -they're the same chess engine as later Saitek modules, such as the Analyst module. -Likewise, officially there isn't a "Turbo King II" or "Corona II", these 'sequels' are titled -as such by the chesscomputer community. Saitek simply advertised them as an improved program. +There is no official Saitek program versioning for these. The D/D+ versions are +known since they're the same chess engine as later Saitek modules, such as the +Analyst module. Likewise, officially there isn't a "Turbo King II" or "Corona II", +these 'sequels' are titled as such by the chesscomputer community. Saitek simply +advertised them as an improved program. -The initial Stratos/Turbo King (PRG ROM labels known: M,K,L,P) are probably engine version B, -very few bytes difference between revisions. The first Corona is engine version C. +The initial Stratos/Turbo King (PRG ROM labels known: M,K,L,P) are probably +engine version B, very few bytes difference between revisions. The first Corona +is engine version C. *******************************************************************************/ @@ -417,7 +419,6 @@ INPUT_PORTS_START( saitek_stratos ) PORT_START("RESET") PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_A) PORT_CHANGED_MEMBER(DEVICE_SELF, saitek_stratos_state, go_button, 0) PORT_NAME("Go") - PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_F1) PORT_CHANGED_MEMBER(DEVICE_SELF, saitek_stratos_state, acl_button, 0) PORT_NAME("ACL") PORT_START("FAKE") PORT_CONFNAME( 0x03, 0x00, "CPU Frequency" ) PORT_CHANGED_MEMBER(DEVICE_SELF, saitek_stratos_state, switch_cpu_freq, 0) // factory set diff --git a/src/mame/saitek/stratos.h b/src/mame/saitek/stratos.h index 1db399e0598..131098c2595 100644 --- a/src/mame/saitek/stratos.h +++ b/src/mame/saitek/stratos.h @@ -29,7 +29,6 @@ public: { } DECLARE_INPUT_CHANGED_MEMBER(switch_cpu_freq) { set_cpu_freq(); } - DECLARE_INPUT_CHANGED_MEMBER(acl_button) { if (newval) power_off(); } DECLARE_INPUT_CHANGED_MEMBER(go_button); protected: -- cgit v1.2.3