From 637e5741259debd1d8b3e5c8a18e57faab5b3fc0 Mon Sep 17 00:00:00 2001 From: hap Date: Wed, 3 Dec 2014 00:45:37 +0100 Subject: added skeleton drivers for Parker Brothers Code Name: Sector, Kenner Star Wars: Electronic Battle Command Game -- will improve them over the next few days --- src/mess/drivers/cnsector.c | 127 +++++++++++++++++++++++++++++++++++++++++++ src/mess/drivers/starwbc.c | 123 +++++++++++++++++++++++++++++++++++++++++ src/mess/layout/cnsector.lay | 8 +++ src/mess/layout/starwbc.lay | 8 +++ src/mess/layout/stopthie.lay | 14 +---- src/mess/mess.lst | 2 + src/mess/mess.mak | 7 +++ 7 files changed, 277 insertions(+), 12 deletions(-) create mode 100644 src/mess/drivers/cnsector.c create mode 100644 src/mess/drivers/starwbc.c create mode 100644 src/mess/layout/cnsector.lay create mode 100644 src/mess/layout/starwbc.lay diff --git a/src/mess/drivers/cnsector.c b/src/mess/drivers/cnsector.c new file mode 100644 index 00000000000..05ada6e36c0 --- /dev/null +++ b/src/mess/drivers/cnsector.c @@ -0,0 +1,127 @@ +// license:BSD-3-Clause +// copyright-holders:hap +/*************************************************************************** + + Parker Brothers Code Name: Sector + * MP0905BNL ZA0379 (die labeled 0970F-05B) + + +***************************************************************************/ + +#include "emu.h" +#include "cpu/tms0980/tms0980.h" + +#include "cnsector.lh" + + +class cnsector_state : public driver_device +{ +public: + cnsector_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag), + m_maincpu(*this, "maincpu") + { } + + required_device m_maincpu; + + UINT16 m_r; + UINT16 m_o; + + DECLARE_READ8_MEMBER(read_k); + DECLARE_WRITE16_MEMBER(write_o); + DECLARE_WRITE16_MEMBER(write_r); + + virtual void machine_start(); +}; + + + +/*************************************************************************** + + I/O + +***************************************************************************/ + +READ8_MEMBER(cnsector_state::read_k) +{ + return 0; +} + +WRITE16_MEMBER(cnsector_state::write_r) +{ + m_r = data; +} + +WRITE16_MEMBER(cnsector_state::write_o) +{ + m_o = data; +} + + + +/*************************************************************************** + + Inputs + +***************************************************************************/ + +static INPUT_PORTS_START( cnsector ) +INPUT_PORTS_END + + + +/*************************************************************************** + + Machine Config + +***************************************************************************/ + +void cnsector_state::machine_start() +{ + m_r = 0; + m_o = 0; + + save_item(NAME(m_r)); + save_item(NAME(m_o)); +} + + +static MACHINE_CONFIG_START( cnsector, cnsector_state ) + + /* basic machine hardware */ + MCFG_CPU_ADD("maincpu", TMS0970, 250000) + MCFG_TMS1XXX_READ_K_CB(READ8(cnsector_state, read_k)) + MCFG_TMS1XXX_WRITE_O_CB(WRITE16(cnsector_state, write_o)) + MCFG_TMS1XXX_WRITE_R_CB(WRITE16(cnsector_state, write_r)) + + MCFG_DEFAULT_LAYOUT(layout_cnsector) + + /* no video! */ + + /* no sound! */ +MACHINE_CONFIG_END + + + +/*************************************************************************** + + Game driver(s) + +***************************************************************************/ + +ROM_START( cnsector ) + ROM_REGION( 0x0400, "maincpu", 0 ) + ROM_LOAD( "mp0905bnl_za0379", 0x0000, 0x0400, CRC(564fe1a0) SHA1(825840a73175eee12e9712c871799f00e3be2c53) ) + + ROM_REGION( 782, "maincpu:ipla", 0 ) + ROM_LOAD( "tms0970_default_ipla.pla", 0, 782, CRC(e038fc44) SHA1(dfc280f6d0a5828d1bb14fcd59ac29caf2c2d981) ) + ROM_REGION( 860, "maincpu:mpla", 0 ) + ROM_LOAD( "tms0970_cnsector_mpla.pla", 0, 860, CRC(059f5bb4) SHA1(2653766f9fd74d41d44013bb6f54c0973a6080c9) ) + ROM_REGION( 352, "maincpu:opla", 0 ) + ROM_LOAD( "tms0970_cnsector_opla.pla", 0, 352, CRC(7c0bdcd6) SHA1(dade774097e8095dca5deac7b2367d0c701aca51) ) + ROM_REGION( 157, "maincpu:spla", 0 ) + ROM_LOAD( "tms0970_cnsector_spla.pla", 0, 157, CRC(56c37a4f) SHA1(18ecc20d2666e89673739056483aed5a261ae927) ) +ROM_END + + +CONS( 1977, cnsector, 0, 0, cnsector, cnsector, driver_device, 0, "Parker Brothers", "Code Name: Sector", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW ) diff --git a/src/mess/drivers/starwbc.c b/src/mess/drivers/starwbc.c new file mode 100644 index 00000000000..a5f48843dca --- /dev/null +++ b/src/mess/drivers/starwbc.c @@ -0,0 +1,123 @@ +// license:BSD-3-Clause +// copyright-holders:hap +/*************************************************************************** + + Kenner Star Wars: Electronic Battle Command Game + * TMS1100 MCU, marked MP3438A + + +***************************************************************************/ + +#include "emu.h" +#include "cpu/tms0980/tms0980.h" + +#include "starwbc.lh" + + +class starwbc_state : public driver_device +{ +public: + starwbc_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag), + m_maincpu(*this, "maincpu") + { } + + required_device m_maincpu; + + UINT16 m_r; + UINT16 m_o; + + DECLARE_READ8_MEMBER(read_k); + DECLARE_WRITE16_MEMBER(write_o); + DECLARE_WRITE16_MEMBER(write_r); + + virtual void machine_start(); +}; + + + +/*************************************************************************** + + I/O + +***************************************************************************/ + +READ8_MEMBER(starwbc_state::read_k) +{ + return 0; +} + +WRITE16_MEMBER(starwbc_state::write_r) +{ + m_r = data; +} + +WRITE16_MEMBER(starwbc_state::write_o) +{ + m_o = data; +} + + + +/*************************************************************************** + + Inputs + +***************************************************************************/ + +static INPUT_PORTS_START( starwbc ) +INPUT_PORTS_END + + + +/*************************************************************************** + + Machine Config + +***************************************************************************/ + +void starwbc_state::machine_start() +{ + m_r = 0; + m_o = 0; + + save_item(NAME(m_r)); + save_item(NAME(m_o)); +} + + +static MACHINE_CONFIG_START( starwbc, starwbc_state ) + + /* basic machine hardware */ + MCFG_CPU_ADD("maincpu", TMS1100, 400000) + MCFG_TMS1XXX_READ_K_CB(READ8(starwbc_state, read_k)) + MCFG_TMS1XXX_WRITE_O_CB(WRITE16(starwbc_state, write_o)) + MCFG_TMS1XXX_WRITE_R_CB(WRITE16(starwbc_state, write_r)) + + MCFG_DEFAULT_LAYOUT(layout_starwbc) + + /* no video! */ + + /* no sound! */ +MACHINE_CONFIG_END + + + +/*************************************************************************** + + Game driver(s) + +***************************************************************************/ + +ROM_START( starwbc ) + ROM_REGION( 0x0800, "maincpu", 0 ) + ROM_LOAD( "mp3438a", 0x0000, 0x0800, CRC(c12b7069) SHA1(d1f39c69a543c128023ba11cc6228bacdfab04de) ) + + ROM_REGION( 867, "maincpu:mpla", 0 ) + ROM_LOAD( "tms1100_starwbc_mpla.pla", 0, 867, CRC(03574895) SHA1(04407cabfb3adee2ee5e4218612cb06c12c540f4) ) + ROM_REGION( 365, "maincpu:opla", 0 ) + ROM_LOAD( "tms1100_starwbc_opla.pla", 0, 365, CRC(d358a76d) SHA1(06b60b207540e9b726439141acadea9aba718013) ) +ROM_END + + +CONS( 1979, starwbc, 0, 0, starwbc, starwbc, driver_device, 0, "Kenner", "Star Wars: Electronic Battle Command Game", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW ) diff --git a/src/mess/layout/cnsector.lay b/src/mess/layout/cnsector.lay new file mode 100644 index 00000000000..08148b1f45a --- /dev/null +++ b/src/mess/layout/cnsector.lay @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/mess/layout/starwbc.lay b/src/mess/layout/starwbc.lay new file mode 100644 index 00000000000..08148b1f45a --- /dev/null +++ b/src/mess/layout/starwbc.lay @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/mess/layout/stopthie.lay b/src/mess/layout/stopthie.lay index b54c4d84e68..08148b1f45a 100644 --- a/src/mess/layout/stopthie.lay +++ b/src/mess/layout/stopthie.lay @@ -1,18 +1,8 @@ - - - - - - - - - - - - + + diff --git a/src/mess/mess.lst b/src/mess/mess.lst index 34918634421..0e031f703f2 100644 --- a/src/mess/mess.lst +++ b/src/mess/mess.lst @@ -2236,6 +2236,8 @@ swyft mmd1 mmd2 mpf1p +cnsector +starwbc stopthie amico2k jtc diff --git a/src/mess/mess.mak b/src/mess/mess.mak index d42e690be10..1473ebc6d9e 100644 --- a/src/mess/mess.mak +++ b/src/mess/mess.mak @@ -730,6 +730,7 @@ DRVLIBS += \ $(MESSOBJ)/intv.a \ $(MESSOBJ)/isc.a \ $(MESSOBJ)/kaypro.a \ + $(MESSOBJ)/kenner.a \ $(MESSOBJ)/koei.a \ $(MESSOBJ)/kyocera.a \ $(MESSOBJ)/luxor.a \ @@ -1329,6 +1330,9 @@ $(MESSOBJ)/isc.a: \ $(MESSOBJ)/kaypro.a: \ $(MESS_DRIVERS)/kaypro.o $(MESS_MACHINE)/kaypro.o $(MESS_MACHINE)/kay_kbd.o $(MESS_VIDEO)/kaypro.o \ +$(MESSOBJ)/kenner.a: \ + $(MESS_DRIVERS)/starwbc.o \ + $(MESSOBJ)/koei.a: \ $(MESS_DRIVERS)/pasogo.o \ @@ -1472,6 +1476,7 @@ $(MESSOBJ)/palm.a: \ $(MESS_DRIVERS)/palmz22.o \ $(MESSOBJ)/parker.a: \ + $(MESS_DRIVERS)/cnsector.o \ $(MESS_DRIVERS)/merlin.o \ $(MESS_DRIVERS)/stopthie.o \ @@ -2074,6 +2079,7 @@ $(MAME_DRIVERS)/cdi.o: $(MAME_LAYOUT)/cdi.lh $(MESS_DRIVERS)/chessmst.o: $(MESS_LAYOUT)/chessmst.lh $(MESS_DRIVERS)/chesstrv.o: $(MESS_LAYOUT)/chesstrv.lh \ $(MESS_LAYOUT)/borisdpl.lh +$(MESS_DRIVERS)/cnsector.o: $(MESS_LAYOUT)/cnsector.lh $(MESS_DRIVERS)/comp4.o: $(MESS_LAYOUT)/comp4.lh $(MESS_DRIVERS)/cp1.o: $(MESS_LAYOUT)/cp1.lh $(MESS_DRIVERS)/cvicny.o: $(MESS_LAYOUT)/cvicny.lh @@ -2144,6 +2150,7 @@ $(MESS_DRIVERS)/simon.o: $(MESS_LAYOUT)/simon.lh $(MESS_DRIVERS)/sitcom.o: $(MESS_LAYOUT)/sitcom.lh $(MESS_DRIVERS)/slc1.o: $(MESS_LAYOUT)/slc1.lh $(MESS_DRIVERS)/sms.o: $(MESS_LAYOUT)/sms1.lh +$(MESS_DRIVERS)/starwbc.o: $(MESS_LAYOUT)/starwbc.lh $(MESS_DRIVERS)/stopthie.o: $(MESS_LAYOUT)/stopthie.lh $(MESS_DRIVERS)/super80.o: $(MESS_LAYOUT)/super80.lh $(MESS_DRIVERS)/supercon.o: $(MESS_LAYOUT)/supercon.lh -- cgit v1.2.3