diff options
Diffstat (limited to 'src/mame/drivers/hh_sm510.cpp')
-rw-r--r-- | src/mame/drivers/hh_sm510.cpp | 65 |
1 files changed, 64 insertions, 1 deletions
diff --git a/src/mame/drivers/hh_sm510.cpp b/src/mame/drivers/hh_sm510.cpp index 87ea3872395..185a39cb8ef 100644 --- a/src/mame/drivers/hh_sm510.cpp +++ b/src/mame/drivers/hh_sm510.cpp @@ -17,7 +17,7 @@ Use -autosave to at least make them remember the highscores. TODO: - improve display decay simulation? but SVG doesn't support setting brightness per segment, adding pwm_display_device right now has no added value -- improve/redo SVG of: exospace +- improve/redo SVG of: exospace, auslalom - confirm gnw_bfight rom (assumed to be the same as gnw_bfightn) - confirm gnw_climber rom (assumed to be the same as gnw_climbern) - confirm gnw_smb rom (assumed to be the same as gnw_smbn) @@ -9239,6 +9239,68 @@ ROM_END /*************************************************************************** + Elektronika Автослалом (Autoslalom) (model IM-23) + * KB1013VK1-2 MCU + * lcd screen with custom segments, 1-bit sound + + This is not an unlicensed clone, but doing a hex compare with MC-25 + still shows around 30% similarity so clearly they used that as a base. + +***************************************************************************/ + +class auslalom_state : public hh_sm510_state +{ +public: + auslalom_state(const machine_config &mconfig, device_type type, const char *tag) : + hh_sm510_state(mconfig, type, tag) + { } + + void auslalom(machine_config &config); +}; + +// config + +static INPUT_PORTS_START( auslalom ) + 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_16WAY + PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICKRIGHT_UP ) PORT_CHANGED_CB(input_changed) PORT_16WAY + PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_DOWN ) PORT_CHANGED_CB(input_changed) PORT_16WAY + PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICKLEFT_UP ) PORT_CHANGED_CB(input_changed) PORT_16WAY + + 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("ACL") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SERVICE1 ) PORT_CHANGED_CB(acl_button) PORT_NAME("ACL") +INPUT_PORTS_END + +void auslalom_state::auslalom(machine_config &config) +{ + kb1013vk12_common(config, 1780, 1080); // R mask option ? +} + +// roms + +ROM_START( auslalom ) + ROM_REGION( 0x1000, "maincpu", 0 ) + ROM_LOAD( "im-23.bin", 0x0000, 0x0740, CRC(3b6e726f) SHA1(eabd04722811d1cc6519db9386b14a535f5aa865) ) + + ROM_REGION( 79971, "screen", 0) + ROM_LOAD( "auslalom.svg", 0, 79971, BAD_DUMP CRC(092c1358) SHA1(8a26b600b4b776aa06e5027cfa7a0b306ddae667) ) +ROM_END + + + + + +/*************************************************************************** + VTech Electronic Number Muncher * Sharp SM511 under epoxy (die label 772) * lcd screen with custom segments(no background), 1-bit sound @@ -9487,4 +9549,5 @@ CONS( 1983, tigarden, trshutvoy, 0, tigarden, trshutvoy, trshutvoy_ CONS( 1982, trsrescue, 0, 0, trsrescue, trsrescue, trsrescue_state, empty_init, "Tronica", "Space Rescue", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK ) // misc +CONS( 1990, auslalom, 0, 0, auslalom, auslalom, auslalom_state, empty_init, "Elektronika", "Autoslalom", MACHINE_SUPPORTS_SAVE | MACHINE_REQUIRES_ARTWORK | MACHINE_NOT_WORKING ) CONS( 1989, nummunch, 0, 0, nummunch, nummunch, nummunch_state, empty_init, "VTech", "Electronic Number Muncher", MACHINE_SUPPORTS_SAVE ) |