diff --git a/src/mame/drivers/cxg_dominator.cpp b/src/mame/drivers/cxg_dominator.cpp index ccd521273f4..a3ff19b21a7 100644 --- a/src/mame/drivers/cxg_dominator.cpp +++ b/src/mame/drivers/cxg_dominator.cpp @@ -11,7 +11,9 @@ Hardware notes: - Sanyo LC7582, 2 LCD panels (each 4-digit) - TTL, piezo, 8*8+8 LEDs, button sensors -Sphinx Galaxy is assumed to be on similar hardware. +Sphinx Commander also uses the Dominator program, and is on similar hardware, +but with a Chess 3008 housing (wooden chessboard, magnet sensors). +Sphinx Galaxy is assumed to be on similar hardware too. The chess engine is by Frans Morsch, older versions (before 2.05) were buggy. Hold Pawn + Knight buttons at boot for test mode, it will tell the version number. @@ -30,6 +32,7 @@ This engine was also used in the newer Mephisto Modena. // internal artwork #include "cxg_dominator.lh" // clickable +#include "cxg_commander.lh" // clickable namespace { @@ -51,6 +54,7 @@ public: // machine configs void dominator(machine_config &config); + void commander(machine_config &config); protected: virtual void machine_start() override; @@ -191,6 +195,14 @@ static INPUT_PORTS_START( dominator ) PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_N) PORT_NAME("New Game") INPUT_PORTS_END +static INPUT_PORTS_START( commander ) + PORT_INCLUDE( dominator ) + + PORT_MODIFY("IN.1") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_I) PORT_NAME("Library") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_S) PORT_CODE(KEYCODE_C) PORT_NAME("Sound/Color") +INPUT_PORTS_END + /****************************************************************************** @@ -224,6 +236,17 @@ void dominator_state::dominator(machine_config &config) DAC_1BIT(config, m_dac).add_route(ALL_OUTPUTS, "speaker", 0.25); } +void dominator_state::commander(machine_config &config) +{ + dominator(config); + + /* basic machine hardware */ + m_board->set_type(sensorboard_device::MAGNETS); + m_board->set_delay(attotime::from_msec(250)); + + config.set_default_layout(layout_cxg_commander); +} + /****************************************************************************** @@ -235,6 +258,11 @@ ROM_START( sdtor ) ROM_LOAD("22p_2.05", 0x8000, 0x8000, CRC(9707119c) SHA1(d7cde835a37bd5d9ff349a871c890ea4cd9b2c26) ) ROM_END +ROM_START( scmder ) + ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_LOAD("scmder.bin", 0x8000, 0x8000, CRC(7a3f27b4) SHA1(6b3bcca707f034124b8b4bd061b500ce1a75faf4) ) // label unknown +ROM_END + } // anonymous namespace @@ -243,5 +271,7 @@ ROM_END Drivers ******************************************************************************/ -/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY, FULLNAME, FLAGS */ -CONS( 1989, sdtor, 0, 0, dominator, dominator, dominator_state, empty_init, "CXG Systems / Newcrest Technology", "Sphinx Dominator (v2.05)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK ) +/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY, FULLNAME, FLAGS */ +CONS( 1989, sdtor, 0, 0, dominator, dominator, dominator_state, empty_init, "CXG Systems / Newcrest Technology", "Sphinx Dominator (v2.05)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK ) + +CONS( 1989, scmder, 0, 0, commander, commander, dominator_state, empty_init, "CXG Systems / Newcrest Technology", "Sphinx Commander (v2.00)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK ) diff --git a/src/mame/drivers/novag_snova.cpp b/src/mame/drivers/novag_snova.cpp index b781b6b0136..ce4ad04f04a 100644 --- a/src/mame/drivers/novag_snova.cpp +++ b/src/mame/drivers/novag_snova.cpp @@ -5,6 +5,9 @@ Novag Super Nova (model 904) +The chess engine is by David Kittinger. Older versions of the program have a bug +in the opening moves, always playing B5 after D4. + Hardware notes: - Hitachi HD63A03YP MCU @ 16MHz (4MHz internal) - 32KB ROM(TC57256AD-12), 8KB RAM(CXK58648P-10L) @@ -279,5 +282,5 @@ ROM_END ******************************************************************************/ // YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY, FULLNAME, FLAGS -CONS( 1990, nsnova, 0, 0, snova, snova, snova_state, empty_init, "Novag", "Super Nova (Novag)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK ) +CONS( 1990, nsnova, 0, 0, snova, snova, snova_state, empty_init, "Novag", "Super Nova (Novag, v1.05)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK ) diff --git a/src/mame/layout/cxg_commander.lay b/src/mame/layout/cxg_commander.lay new file mode 100644 index 00000000000..44dd96d8881 --- /dev/null +++ b/src/mame/layout/cxg_commander.lay @@ -0,0 +1,548 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/mame/layout/cxg_dominator.lay b/src/mame/layout/cxg_dominator.lay index 18d80bafd20..a6f65225961 100644 --- a/src/mame/layout/cxg_dominator.lay +++ b/src/mame/layout/cxg_dominator.lay @@ -540,7 +540,7 @@ license:CC0 - + diff --git a/src/mame/mame.lst b/src/mame/mame.lst index faf616c0358..47aedf21486 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -11518,6 +11518,7 @@ cwheel // (c) 19?? Gamebar ch2001 @source:cxg_dominator.cpp +scmder sdtor @source:cxg_scptchess.cpp