summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--src/mame/mame.lst4
-rw-r--r--src/mame/midway/midwayttl.cpp99
-rw-r--r--src/mame/misc/pse.cpp54
3 files changed, 128 insertions, 29 deletions
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 3e1014087b0..4bebfe1f8dc 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -27581,6 +27581,9 @@ wargods // (c) 1996 Midway (HD 10/09/1996 - Dual Resolut
wargodsa // (c) 1996 Midway (HD 08/15/1996)
wargodsb // (c) 1996 Midway (HD 12/11/1995)
+@source:midway/midwayttl.cpp
+wheelsii //
+
@source:midway/midwunit.cpp
mk3 // (c) 1994 Midway
mk3p40 // (c) 1994 Midway
@@ -31499,6 +31502,7 @@ bazookabr // (c) 1977 Taito do Brasil
dpatrol // (c) 1977 PSE
dpatrola // (c) 1977 PSE / Telegames
gametree // (c) 1978 PSE
+knightar // (c) 1976 PSE
@source:misc/quizo.cpp
quizo // (c) 1985 Seoul Coin Corp.
diff --git a/src/mame/midway/midwayttl.cpp b/src/mame/midway/midwayttl.cpp
new file mode 100644
index 00000000000..00466cd57fb
--- /dev/null
+++ b/src/mame/midway/midwayttl.cpp
@@ -0,0 +1,99 @@
+// license:BSD-3-Clause
+// copyright-holders:
+
+/*
+This driver contains early non-CPU Midway dumps, until they are emulated and moved as needed
+*/
+
+#include "emu.h"
+
+#include "machine/netlist.h"
+#include "netlist/devices/net_lib.h"
+#include "video/fixfreq.h"
+
+
+namespace {
+
+// TODO: just a placeholder, everything needs to be updated
+
+#define MASTER_CLOCK 7159000
+#define V_TOTAL (0x105+1) // 262
+#define H_TOTAL (0x1C6+1) // 454
+
+#define HBSTART (H_TOTAL)
+#define HBEND (80)
+#define VBSTART (V_TOTAL)
+#define VBEND (16)
+
+#define HRES_MULT (1)
+
+
+class midwayttl_state : public driver_device
+{
+public:
+ midwayttl_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag),
+ m_maincpu(*this, "maincpu"),
+ m_video(*this, "fixfreq")
+ {
+ }
+
+ void midwayttl(machine_config &config);
+
+private:
+ required_device<netlist_mame_device> m_maincpu;
+ required_device<fixedfreq_device> m_video;
+
+};
+
+
+static NETLIST_START(midwayttl) // TODO: just a placeholder, everything needs to be updated
+{
+ SOLVER(Solver, 48000)
+// PARAM(Solver.FREQ, 48000)
+ PARAM(Solver.ACCURACY, 1e-4)
+
+ // schematics
+ //...
+}
+
+
+void midwayttl_state::midwayttl(machine_config &config)
+{
+ // basic machine hardware
+ NETLIST_CPU(config, m_maincpu, netlist::config::DEFAULT_CLOCK()).set_source(netlist_midwayttl);
+
+ // video hardware
+ SCREEN(config, "screen", SCREEN_TYPE_RASTER); // TODO: just a placeholder, everything needs to be updated
+ FIXFREQ(config, m_video).set_screen("screen");
+ m_video->set_monitor_clock(MASTER_CLOCK);
+ m_video->set_horz_params(H_TOTAL-67,H_TOTAL-40,H_TOTAL-8,H_TOTAL);
+ m_video->set_vert_params(V_TOTAL-22,V_TOTAL-19,V_TOTAL-12,V_TOTAL);
+ m_video->set_fieldcount(1);
+ m_video->set_threshold(0.30);
+}
+
+
+ROM_START( wheelsii )
+ ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 )
+
+ ROM_REGION( 0x1a0, "roms", 0 ) // All PROMs TI SN74188N. Read as National 74S188
+ ROM_LOAD( "257.1k", 0x000, 0x020, CRC(00b8fef8) SHA1(e3f465b9df78cfbd8f4547b8b4d45281e30a2a89) )
+ ROM_LOAD( "258.5k", 0x020, 0x020, CRC(eab44d13) SHA1(daed044e5759de22055c4dcaeeb57b12d572ca2b) )
+ ROM_LOAD( "259.5l", 0x040, 0x020, CRC(ba31afc0) SHA1(f583dc898e6ecaa1dd6ac78fe9bea6619858d83c) )
+ ROM_LOAD( "260.1p", 0x060, 0x020, CRC(2cf891d6) SHA1(625f904b97ed5b714b9174d70dbc247b2cb8cb22) )
+ ROM_LOAD( "261.1j", 0x080, 0x020, CRC(8aa08f16) SHA1(7fc6a6a3b75640beddffa482012e724f0af332b3) )
+ ROM_LOAD( "262.15j", 0x0a0, 0x020, CRC(814d0588) SHA1(6680b5dcd9af9ac1cef310b462a0f82c63616967) )
+ ROM_LOAD( "263.15p", 0x0c0, 0x020, CRC(ada34863) SHA1(4491b38c5e17242459f38ac7c683371f7fdfe05e) )
+ ROM_LOAD( "264.15r", 0x0e0, 0x020, CRC(a7114570) SHA1(1f91d1cc08cc3c4943bd6a6ac231f43935853cbe) )
+ ROM_LOAD( "265.7p", 0x100, 0x020, CRC(501953ba) SHA1(f1016676c90def8a6aff1c8999c2a6ab2cb10398) )
+ ROM_LOAD( "266.7r", 0x120, 0x020, CRC(a0eeb385) SHA1(7044c1ab239e3ec60a63b841c09cdf2b1d25a39b) )
+ ROM_LOAD( "267.9p", 0x140, 0x020, CRC(a6983222) SHA1(265501cda78d85bdd82b0b6fa4731b519e40a9b7) )
+ ROM_LOAD( "268.9r", 0x160, 0x020, CRC(715cb8da) SHA1(b72c8b549220b36d179b03ab5dfafda20d66fd56) )
+ ROM_LOAD( "269.10k", 0x180, 0x020, CRC(eeb6a479) SHA1(e4f0540c1c5d0a5c9037ce9e9dcc1150eeeea3f9) )
+ROM_END
+
+} // anonymous namespace
+
+
+GAME( 1975, wheelsii, 0, midwayttl, 0, midwayttl_state, empty_init, ROT0, "Midway", "Wheels II", MACHINE_IS_SKELETON )
diff --git a/src/mame/misc/pse.cpp b/src/mame/misc/pse.cpp
index 6de68d34d42..ea1aff8a338 100644
--- a/src/mame/misc/pse.cpp
+++ b/src/mame/misc/pse.cpp
@@ -1,5 +1,6 @@
// license:BSD-3-Clause
-// copyright-holders:Fabio Priuli,Dave Widel, gregf
+// copyright-holders: Fabio Priuli, Dave Widel, gregf
+
/***************************************************************************
Project Support Engineering Games
@@ -58,20 +59,16 @@ public:
{
}
- // devices
- required_device<netlist_mame_device> m_maincpu;
- required_device<fixedfreq_device> m_video;
-
void pse(machine_config &config);
-protected:
- // driver_device overrides
+protected:
virtual void machine_start() override;
virtual void machine_reset() override;
-
virtual void video_start() override;
private:
+ required_device<netlist_mame_device> m_maincpu;
+ required_device<fixedfreq_device> m_video;
};
@@ -106,10 +103,10 @@ void pse_state::video_start()
void pse_state::pse(machine_config &config)
{
- /* basic machine hardware */
+ // basic machine hardware
NETLIST_CPU(config, m_maincpu, netlist::config::DEFAULT_CLOCK()).set_source(netlist_pse);
- /* video hardware */
+ // video hardware
SCREEN(config, "screen", SCREEN_TYPE_RASTER);
FIXFREQ(config, m_video).set_screen("screen");
m_video->set_monitor_clock(MASTER_CLOCK);
@@ -153,16 +150,16 @@ ROM_END
ROM_START( dpatrol )
ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 )
- ROM_REGION( 0x0CA0, "roms", ROMREGION_ERASE00 )
+ ROM_REGION( 0x0ca0, "roms", ROMREGION_ERASE00 )
ROM_LOAD( "bd1.d2", 0x0000, 0x0400, CRC(e4c8e4ab) SHA1(0b989ca9369139f212dcea1d1461998f20057db8)) // Computer program game code. 6341-1 or 82S181 according to Desert Patrol schematics - sldh w/dpatrola
ROM_LOAD( "bd1.e2", 0x0400, 0x0400, CRC(256b3320) SHA1(712573e3d9625a84c54bbe2e3edafb8879a14b2e)) // Computer program game code. 6341-1 or 82S181 according to Desert Patrol schematics - sldh w/dpatrola
ROM_LOAD( "bd2.l4", 0x0800, 0x0200, CRC(bc87c648) SHA1(c4709d155aa50cc87146abd152a11de618cfd64c)) // PROM 1 contains aircraft target images and explosion image. PCB has 82S141; schematics show 6341-1
- ROM_LOAD( "bd2.l1", 0x0A00, 0x0200, CRC(4ddcc237) SHA1(6bfad6a8bf8387e93c0bb1a04b647690b3701d54)) // PROM 2 contains parachute and man, falling man. PCB has 82S141; schematics show 6341-1 (from dpatrola, but expected to match)
+ ROM_LOAD( "bd2.l1", 0x0a00, 0x0200, CRC(4ddcc237) SHA1(6bfad6a8bf8387e93c0bb1a04b647690b3701d54)) // PROM 2 contains parachute and man, falling man. PCB has 82S141; schematics show 6341-1 (from dpatrola, but expected to match)
- ROM_LOAD( "bd2.h7", 0x0C00, 0x0020, NO_DUMP) // Contains PROM address codes and image speeds. Each image has its own speed and address block in the image PROM. Chip is 82S123
+ ROM_LOAD( "bd2.h7", 0x0c00, 0x0020, NO_DUMP) // Contains PROM address codes and image speeds. Each image has its own speed and address block in the image PROM. Chip is 82S123
- ROM_LOAD( "bd3.d1", 0x0C20, 0x0080, NO_DUMP ) // Data in PROM is organized to produce the waveform of a human scream. Chip type is 8574 or MM6301-0J
+ ROM_LOAD( "bd3.d1", 0x0c20, 0x0080, NO_DUMP ) // Data in PROM is organized to produce the waveform of a human scream. Chip type is 8574 or MM6301-0J
ROM_END
ROM_START( dpatrola )
@@ -180,15 +177,14 @@ ROM_START( dpatrola )
ROM_LOAD( "bd3.d1", 0x0820, 0x0080, NO_DUMP ) // Data in PROM is organized to produce the waveform of a human scream. Chip type is 8574 or MM6301-0J. Was not present on dumped PCB.
ROM_END
-/*
ROM_START( knightar )
- ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 )
+ ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 )
- ROM_REGION( 0x0020, "roms", ROMREGION_ERASE00 )
- ROM_LOAD( "1.m1" ) // Man ROM stores image characters of knights. 82S115P or 8205R according to Knights in Armor schematics
- ROM_LOAD( "2.m2" ) // Horse ROM stores image characters of horses. 82S115P or 8205R according to Knights in Armor schematics
+ ROM_REGION( 0x0400, "roms", ROMREGION_ERASE00 )
+ ROM_LOAD( "1.m1", 0x0000, 0x0200, CRC(7aa9c36c) SHA1(e06c4bf3311cd818d57c96d937e315d433dce457) ) // Man ROM stores image characters of knights. 82S115P or 8205R according to Knights in Armor schematics, but MMI 6341 on the dumped PCB
+ ROM_LOAD( "2.m2", 0x0200, 0x0200, CRC(a6705909) SHA1(0cbf033bff33b1b0a45e9190f527b7c00507250d) ) // Horse ROM stores image characters of horses. 82S115P or 8205R according to Knights in Armor schematics, but MMI 6341 on the dumped PCB
ROM_END
-*/
+
ROM_START( gametree )
@@ -199,10 +195,10 @@ ROM_START( gametree )
ROM_LOAD( "bd1gthi.f2", 0x0400, 0x0400, CRC(3c5a04ac) SHA1(427bae562c019257bcd050458d64670874d903fb)) // Computer program game code. PCB has Signetics 82s2708; schematics show 6341-1 or 82S181
ROM_LOAD( "bd2gt1a.f12", 0x0800, 0x0200, CRC(820cec79) SHA1(b7142d75ba1cd4ebb0b69dd1184c6e1ea0611ba9)) // PROM 1 contains squirrel and squirrel point value. PCB has NEC B425; schematics show 82S141 or 6341-1
- ROM_LOAD( "bd2gt1b.f14", 0x0A00, 0x0200, CRC(52abe627) SHA1(960f19bef52fb5cf9fb74ab928a8dcb09922049d)) // PROM 1 contains squirrel and squirrel point value. PCB has NEC B425; schematics show 82S141 or 6341-1
+ ROM_LOAD( "bd2gt1b.f14", 0x0a00, 0x0200, CRC(52abe627) SHA1(960f19bef52fb5cf9fb74ab928a8dcb09922049d)) // PROM 1 contains squirrel and squirrel point value. PCB has NEC B425; schematics show 82S141 or 6341-1
- ROM_LOAD( "bd2gt2a.e12", 0x0C00, 0x0200, CRC(5d8ef022) SHA1(8e6ccfded85b0611670e6a7fb99c0b279f79445e)) // PROM 2 contains other targets (rabbit and turkey) and point values. PCB has NEC B425
- ROM_LOAD( "bd2gt2b.e14", 0x0E00, 0x0200, CRC(9ca95a82) SHA1(c5057cbae18d71e6a04dd4ec87b83a5690a23888)) // PROM 2 - PCB has NEC B425; schematics show 82S141 or 6341-1
+ ROM_LOAD( "bd2gt2a.e12", 0x0c00, 0x0200, CRC(5d8ef022) SHA1(8e6ccfded85b0611670e6a7fb99c0b279f79445e)) // PROM 2 contains other targets (rabbit and turkey) and point values. PCB has NEC B425
+ ROM_LOAD( "bd2gt2b.e14", 0x0e00, 0x0200, CRC(9ca95a82) SHA1(c5057cbae18d71e6a04dd4ec87b83a5690a23888)) // PROM 2 - PCB has NEC B425; schematics show 82S141 or 6341-1
ROM_LOAD( "bd2a2.a2", 0x1000, 0x0020, CRC(1df96293) SHA1(7c8d19e34803efbe648b1db2d8c0c9a637df57d2)) // Contains PROM address codes and image speeds. Each has its own speed and address block in the image PROM. PCB has MMI 6331
@@ -212,9 +208,9 @@ ROM_END
} // anonymous namespace
-GAME( 1976, bazooka, 0, pse, 0, pse_state, empty_init, ROT0, "Project Support Engineering", "Bazooka", MACHINE_IS_SKELETON )
-GAME( 1977, bazookabr, bazooka, pse, 0, pse_state, empty_init, ROT0, "Taito do Brasil", "Bazooka (Brazil)", MACHINE_IS_SKELETON )
-GAME( 1977, dpatrol, 0, pse, 0, pse_state, empty_init, ROT0, "Project Support Engineering", "Desert Patrol", MACHINE_IS_SKELETON )
-GAME( 1977, dpatrola, dpatrol, pse, 0, pse_state, empty_init, ROT0, "Project Support Engineering (Telegames license)", "Desert Patrol (set 2)", MACHINE_IS_SKELETON )
-GAME( 1978, gametree, 0, pse, 0, pse_state, empty_init, ROT0, "Project Support Engineering", "Game Tree", MACHINE_IS_SKELETON )
-//GAME( 1976, knightar, 0, pse, 0, pse_state, empty_init, ROT0, "Project Support Engineering", "Knights in Armor", MACHINE_IS_SKELETON )
+GAME( 1976, bazooka, 0, pse, 0, pse_state, empty_init, ROT0, "Project Support Engineering", "Bazooka", MACHINE_IS_SKELETON )
+GAME( 1976, knightar, 0, pse, 0, pse_state, empty_init, ROT0, "Project Support Engineering", "Knights in Armor", MACHINE_IS_SKELETON )
+GAME( 1977, bazookabr, bazooka, pse, 0, pse_state, empty_init, ROT0, "Taito do Brasil", "Bazooka (Brazil)", MACHINE_IS_SKELETON )
+GAME( 1977, dpatrol, 0, pse, 0, pse_state, empty_init, ROT0, "Project Support Engineering", "Desert Patrol", MACHINE_IS_SKELETON )
+GAME( 1977, dpatrola, dpatrol, pse, 0, pse_state, empty_init, ROT0, "Project Support Engineering (Telegames license)", "Desert Patrol (set 2)", MACHINE_IS_SKELETON )
+GAME( 1978, gametree, 0, pse, 0, pse_state, empty_init, ROT0, "Project Support Engineering", "Game Tree", MACHINE_IS_SKELETON )