From cccc6c2d78fbdf760b4e264a21d4be8b2a336c31 Mon Sep 17 00:00:00 2001 From: algestam Date: Tue, 2 May 2023 10:15:18 +0200 Subject: New working machine added (#11182) ----------- Tronica: Super Goal Keeper [algestam] --- src/mame/handheld/hh_sm510.cpp | 73 ++++++++++++++++++++++++++++++++++++++++++ src/mame/mame.lst | 1 + 2 files changed, 74 insertions(+) diff --git a/src/mame/handheld/hh_sm510.cpp b/src/mame/handheld/hh_sm510.cpp index 725600c2b13..4c9a5a38aeb 100644 --- a/src/mame/handheld/hh_sm510.cpp +++ b/src/mame/handheld/hh_sm510.cpp @@ -10566,6 +10566,78 @@ ROM_END +/******************************************************************************* + + Tronica: Super Goal Keeper (model SK-10) + * PCB labels: SK-10 280683 32-647-1 + * Sharp SM5A labels (no decap): 0132 238A TRONICA + * lcd screen with custom segments, 1-bit sound + +*******************************************************************************/ + +class trsgkeep_state : public hh_sm510_state +{ +public: + trsgkeep_state(const machine_config &mconfig, device_type type, const char *tag) : + hh_sm510_state(mconfig, type, tag) + { } + + void trsgkeep(machine_config &config); +}; + +// inputs + +static INPUT_PORTS_START( trsgkeep ) + PORT_START("IN.0") // R2 + PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_UNUSED ) + + PORT_START("IN.1") // R3 + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_DOWN ) PORT_CHANGED_CB(input_changed) + PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_UP ) PORT_CHANGED_CB(input_changed) + PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_DOWN ) PORT_CHANGED_CB(input_changed) + PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_UP ) PORT_CHANGED_CB(input_changed) + + PORT_START("IN.2") // R4 + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SELECT ) PORT_CHANGED_CB(input_changed) PORT_NAME("Time") + PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_CHANGED_CB(input_changed) PORT_NAME("Game B") + PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) PORT_CHANGED_CB(input_changed) PORT_NAME("Game A") + PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_SERVICE2 ) PORT_CHANGED_CB(input_changed) PORT_NAME("Alarm") + + PORT_START("BA") + PORT_CONFNAME( 0x01, 0x01, "Infinite Lives (Cheat)") // factory test, unpopulated on PCB + PORT_CONFSETTING( 0x01, DEF_STR( Off ) ) + PORT_CONFSETTING( 0x00, DEF_STR( On ) ) + + PORT_START("B") + PORT_CONFNAME( 0x01, 0x01, "Increase Score (Cheat)") // factory test, unpopulated on PCB -- this one multiplies scoring factor with 10 + PORT_CONFSETTING( 0x01, DEF_STR( Off ) ) + PORT_CONFSETTING( 0x00, DEF_STR( On ) ) + + PORT_START("ACL") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SERVICE1 ) PORT_CHANGED_CB(acl_button) PORT_NAME("ACL") +INPUT_PORTS_END + +// config + +void trsgkeep_state::trsgkeep(machine_config &config) +{ + sm5a_common(config, 1465, 1080); // R mask option confirmed +} + +// roms + +ROM_START( trsgkeep ) + ROM_REGION( 0x800, "maincpu", 0 ) + ROM_LOAD( "0132_238a", 0x0000, 0x0740, CRC(db80f1ed) SHA1(030e18ec05bbc98a474105d8d6f503082ab638cc) ) + + ROM_REGION( 119358, "screen", 0) + ROM_LOAD( "trsgkeep.svg", 0, 119358, CRC(4108349e) SHA1(359fb4eee1cfd85965efd1308f0002ebf38d231a) ) +ROM_END + + + + + /******************************************************************************* Tronica: Space Mission (model SM-11), Spider (model SG-21) @@ -11004,6 +11076,7 @@ SYST( 1983, trshutvoy, 0, 0, trshutvoy, trshutvoy, trshu SYST( 1983, tigarden, trshutvoy, 0, tigarden, trshutvoy, trshutvoy_state, empty_init, "Tronica", "Thief in Garden", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK ) SYST( 1982, trsrescue, 0, 0, trsrescue, trsrescue, trsrescue_state, empty_init, "Tronica", "Space Rescue", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK ) SYST( 1983, trthuball, trsrescue, 0, trthuball, trsrescue, trsrescue_state, empty_init, "Tronica", "Thunder Ball (Tronica)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK ) +SYST( 1983, trsgkeep, 0, 0, trsgkeep, trsgkeep, trsgkeep_state, empty_init, "Tronica", "Super Goal Keeper", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK ) SYST( 1982, trspacmis, 0, 0, trspacmis, trspacmis, trspacmis_state, empty_init, "Tronica", "Space Mission (Tronica)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK ) SYST( 1982, trspider, trspacmis, 0, trspider, trspacmis, trspacmis_state, empty_init, "Tronica", "Spider (Tronica)", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK ) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 59e246df12f..3ed50453b6e 100755 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -18884,6 +18884,7 @@ trobhood // Tiger trobocop2 // Tiger trobocop3 // Tiger trockteer // Tiger +trsgkeep // Tronica trshutvoy // Tronica trspacmis // Tronica trspider // Tronica -- cgit v1.2.3