New working clones

------------------
unknown Sidam poker (horizontal) [Benjamin ROUX]

- segaybd.cpp: dumped drive board ROM for Power Drift [Snoz]

- nl:280zzzap.cpp, nl_gunfight.cpp: corrected Welburn spelling
This commit is contained in:
Ivan Vangelista 2022-07-12 07:19:33 +02:00
parent 9c4211b156
commit 4aa8ca4c7f
5 changed files with 118 additions and 44 deletions

View File

@ -43127,6 +43127,7 @@ wackygtr // Wacky Gator
@source:midcoin/wallc.cpp
brkblast // bootleg (Fadesa)
sidampkr //
sidampkra //
unkitpkr //
wallc // (c) 1984 Midcoin
wallca // (c) 1984 Midcoin

View File

@ -60,6 +60,8 @@ Thanks to HIGHWAYMAN for providing info on how to get to these epoxies
#include "tilemap.h"
namespace {
class wallc_state : public driver_device
{
public:
@ -71,6 +73,7 @@ public:
{ }
void sidampkr(machine_config &config);
void sidampkra(machine_config &config);
void unkitpkr(machine_config &config);
void wallc(machine_config &config);
void wallca(machine_config &config);
@ -549,23 +552,29 @@ void wallc_state::wallca(machine_config &config)
m_maincpu->set_clock(12_MHz_XTAL / 4);
}
void wallc_state::unkitpkr(machine_config &config)
void wallc_state::sidampkra(machine_config &config)
{
wallc(config);
config.device_remove("adc");
m_maincpu->set_addrmap(AS_PROGRAM, &wallc_state::unkitpkr_map);
MCFG_VIDEO_START_OVERRIDE(wallc_state, unkitpkr)
subdevice<palette_device>("palette")->set_init(FUNC(wallc_state::unkitpkr_palette));
/* sound hardware */
subdevice<ay8912_device>("aysnd")->reset_routes().add_route(ALL_OUTPUTS, "mono", 0.50);
}
void wallc_state::unkitpkr(machine_config &config)
{
sidampkra(config);
MCFG_VIDEO_START_OVERRIDE(wallc_state, unkitpkr)
}
void wallc_state::sidampkr(machine_config &config)
{
unkitpkr(config);
sidampkra(config);
MCFG_VIDEO_START_OVERRIDE(wallc_state, sidampkr)
}
@ -667,18 +676,40 @@ D7 to cpu
*/
ROM_START( sidampkr )
ROM_START( sidampkr ) // 11600 PCB + small riser PCB with Z80 and PAL (epoxy cover removed but etched 11610 on PCB)
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "11600.0", 0x0000, 0x1000, CRC(88cac4d2) SHA1(a369da3dc80671eeff549077cf2ce860d5f4ea35) )
ROM_LOAD( "11600.1", 0x1000, 0x1000, CRC(96cca320) SHA1(85326f7126c8250a22f35f6eed138051a9ab35cb) )
ROM_LOAD( "11600.0.h6", 0x0000, 0x1000, CRC(88cac4d2) SHA1(a369da3dc80671eeff549077cf2ce860d5f4ea35) )
ROM_LOAD( "11600.1.h5", 0x1000, 0x1000, CRC(96cca320) SHA1(85326f7126c8250a22f35f6eed138051a9ab35cb) )
ROM_REGION( 0x3000, "gfx1", 0 )
ROM_LOAD( "11605.b", 0x0800, 0x0800, CRC(a7800f8a) SHA1(3955e0f71ced6fd759f52d12c0b39ab6aab31ca4) )
ROM_LOAD( "11605.g", 0x1800, 0x0800, CRC(b7bebf1e) SHA1(764536989ba4c4c143a61d4453c3bba547bc630a) )
ROM_LOAD( "11605.r", 0x2800, 0x0800, CRC(4d645b8d) SHA1(d4f8d11c4ef796cf66ebf2e6b8a11247d630951a) )
ROM_LOAD( "11605.b.e1", 0x0800, 0x0800, CRC(a7800f8a) SHA1(3955e0f71ced6fd759f52d12c0b39ab6aab31ca4) )
ROM_LOAD( "11605.g.e2", 0x1800, 0x0800, CRC(b7bebf1e) SHA1(764536989ba4c4c143a61d4453c3bba547bc630a) )
ROM_LOAD( "11605.r.e3", 0x2800, 0x0800, CRC(4d645b8d) SHA1(d4f8d11c4ef796cf66ebf2e6b8a11247d630951a) )
ROM_REGION( 0x0020, "proms", 0 )
ROM_LOAD( "11607-74.288", 0x0000, 0x0020, CRC(e14bf545) SHA1(5e8c5a9ea6e4842f27a47c1d7224ed294bbaa40b) )
ROM_LOAD( "11607-74.288.c3", 0x0000, 0x0020, CRC(e14bf545) SHA1(5e8c5a9ea6e4842f27a47c1d7224ed294bbaa40b) )
ROM_REGION( 0x0104, "plds", 0 ) // probably encryption related
ROM_LOAD( "pal16r4anc.sub", 0x0000, 0x0104, NO_DUMP )
ROM_END
ROM_START( sidampkra ) // 11700B PCB + small riser PCB with Z80 and PAL (with 11610 epoxy cover)
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "11704.0.h6", 0x0000, 0x2000, CRC(62a7ff4f) SHA1(66ed12e5ec9da5e97fabf37e971342c0cfbce372) )
ROM_REGION( 0x3000, "gfx1", 0 )
ROM_LOAD( "11705.b.e1", 0x0800, 0x0800, CRC(50a9a468) SHA1(182a753748296df859f938655e9fa27889d5cd3f) )
ROM_LOAD( "11705.g.e2", 0x1800, 0x0800, CRC(d3366b36) SHA1(e1eb148b07a302f2ba66ad196959f019a81145f6) )
ROM_LOAD( "11705.r.e3", 0x2800, 0x0800, CRC(d51df283) SHA1(46bd52e156be99db731e6d56ab8241d1c396ab99) )
ROM_REGION( 0x0040, "proms", ROMREGION_ERASE00 )
ROM_LOAD( "11707.c3", 0x0000, 0x0020, NO_DUMP )
ROM_LOAD( "11708.c2", 0x0020, 0x0020, NO_DUMP )
ROM_LOAD( "74s288.c2", 0x0000, 0x0020, CRC(83e3e293) SHA1(a98c5e63b688de8d175adb6539e0cdc668f313fd) ) // using the one from unkitpkr for now
ROM_REGION( 0x0104, "plds", 0 ) // probably encryption related
ROM_LOAD( "pal16r4anc.sub", 0x0000, 0x0104, NO_DUMP )
ROM_END
void wallc_state::init_sidam()
@ -775,11 +806,14 @@ void wallc_state::init_unkitpkr()
save_item(NAME(m_bookkeeping_mode));
}
} // anonymous namespace
// YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS
GAME( 1984, wallc, 0, wallc, wallc, wallc_state, init_wallc, ROT0, "Midcoin", "Wall Crash (set 1)", MACHINE_SUPPORTS_SAVE )
GAME( 1984, wallca, wallc, wallca, wallc, wallc_state, init_wallca, ROT0, "Midcoin", "Wall Crash (set 2)", MACHINE_SUPPORTS_SAVE )
GAME( 1984, brkblast, wallc, wallc, wallc, wallc_state, init_wallca, ROT0, "bootleg (Fadesa)", "Brick Blast (bootleg of Wall Crash)", MACHINE_SUPPORTS_SAVE ) // Spanish bootleg board, Fadesa stickers / text on various components
GAME( 1984, sidampkr, 0, sidampkr, sidampkr, wallc_state, init_sidam, ROT270, "Sidam", "unknown Sidam poker", MACHINE_IMPERFECT_COLORS | MACHINE_SUPPORTS_SAVE ) // colors should be verified
GAME( 198?, unkitpkr, 0, unkitpkr, unkitpkr, wallc_state, init_unkitpkr, ROT0, "<unknown>", "unknown Italian poker game", MACHINE_SUPPORTS_SAVE )
// YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS
GAME( 1984, wallc, 0, wallc, wallc, wallc_state, init_wallc, ROT0, "Midcoin", "Wall Crash (set 1)", MACHINE_SUPPORTS_SAVE )
GAME( 1984, wallca, wallc, wallca, wallc, wallc_state, init_wallca, ROT0, "Midcoin", "Wall Crash (set 2)", MACHINE_SUPPORTS_SAVE )
GAME( 1984, brkblast, wallc, wallc, wallc, wallc_state, init_wallca, ROT0, "bootleg (Fadesa)", "Brick Blast (bootleg of Wall Crash)", MACHINE_SUPPORTS_SAVE ) // Spanish bootleg board, Fadesa stickers / text on various components
GAME( 1984, sidampkr, 0, sidampkr, sidampkr, wallc_state, init_sidam, ROT270, "Sidam", "unknown Sidam poker (vertical)", MACHINE_IMPERFECT_COLORS | MACHINE_SUPPORTS_SAVE ) // colors should be verified
GAME( 1984, sidampkra, sidampkr, sidampkra, sidampkr, wallc_state, init_sidam, ROT0, "Sidam", "unknown Sidam poker (horizontal)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_COLORS | MACHINE_SUPPORTS_SAVE ) // colors should be verified, cards GFX look wrong
GAME( 198?, unkitpkr, 0, unkitpkr, unkitpkr, wallc_state, init_unkitpkr, ROT0, "<unknown>", "unknown Italian poker game", MACHINE_SUPPORTS_SAVE )

View File

@ -8,7 +8,7 @@
// and Laguna Racer, based on Midway's schematics "280 ZZZAP Game Logic P.C.
// 0610-00907A", "Laguna Racer Game Logic A084-90700-A622", and "Laguna Racer
// Game Logic A084-90700-B622". Midway PCB drawings for Laguna Racer and a
// photo by Andrew Wellburn of a 280-ZZZAP game logic board were also used to
// photo by Andrew Welburn of a 280-ZZZAP game logic board were also used to
// help determine correct values for certain components. The netlist should
// also apply to Taito/Midway's Super Speed Race with only modest changes,
// because that game uses very similar sound circuits to 280-ZZZAP and Laguna
@ -58,7 +58,7 @@
// B622's schematics show sound circuitry differences from 280-ZZZAP and A622,
// and these differences are consistent with Midway's PCB drawings for *both*
// the A622 and B622 games boards. Some of them are also consistent with
// Wellburn's 280-ZZZAP PCB photo. So it seems that actual 280-ZZZAP boards
// Welburn's 280-ZZZAP PCB photo. So it seems that actual 280-ZZZAP boards
// lie somewhere between the 280-ZZZAP schematic and the B622 Laguna Racer
// schematic.
@ -195,7 +195,7 @@ static NETLIST_START(lagunar_schematics)
// For the following resistors R51 and R46-R49, the values given are
// those shown in the Laguna Racer PCB drawings, the Laguna Racer B622
// board schematic, the Super Speed Race schematic, and Andrew
// Wellburn's 280-ZZZAP PCB photo. In the 280-ZZZAP schematic (and the
// Welburn's 280-ZZZAP PCB photo. In the 280-ZZZAP schematic (and the
// Laguna Racer A622 board schematic, a near copy), R51 and R48 are
// 480 Kohms and R46 is 2 Mohms, but these seem to be errors in that
// schematic. 480 Kohm is not even a standard resistor value for any
@ -437,7 +437,7 @@ static NETLIST_START(lagunar_schematics)
// The value of resistor R30 is what changes the engine sound between
// 280-ZZZAP and the later games. The 280-ZZZAP schematic indicates
// that it is 110 Kohm in that game. This resistor is hidden on Andrew
// Wellburn's 280-ZZZAP PCB photo, but the sound resulting from 110
// Welburn's 280-ZZZAP PCB photo, but the sound resulting from 110
// Kohm is more consistent with actual 280-ZZZAP machines than that
// from 100 Kohm.
// The resistor is 100 Kohm in the B622 Laguna Racer and Super Speed
@ -712,7 +712,7 @@ static NETLIST_START(lagunar_schematics)
// For resistor R11, the value given is that shown in the Laguna Racer
// PCB drawings, the Laguna Racer B622 board schematic, the Super
// Speed Race schematic, and Andrew Wellburn's 280-ZZZAP PCB photo. In
// Speed Race schematic, and Andrew Welburn's 280-ZZZAP PCB photo. In
// the 280-ZZZAP schematic and the near-copy Laguna Racer A622 board
// schematic, R11 is 100 Kohms, but this seems to be a schematic
// error. (The original National Semiconductor Application Note 72
@ -804,7 +804,7 @@ static NETLIST_START(lagunar_schematics)
// Resistor R18, part of the BOOM filter, is 2.2 Kohms on the
// 280-ZZZAP schematic as well as in Laguna Racer, but the 280-ZZZAP
// schematic has a note "E" saying that the first 325 machines had a
// 6.8 Kohm resistor here instead. Andrew Wellburn's 280-ZZZAP board
// 6.8 Kohm resistor here instead. Andrew Welburn's 280-ZZZAP board
// photo may show such a resistor. With this larger resistor, the
// filter's values are: center frequency 54 Hz, Q 16.9, gain 73.5; so
// the filter is slightly broader, pitched a bit lower, and has only a
@ -866,7 +866,7 @@ static NETLIST_START(lagunar_schematics)
// on the 280-ZZZAP schematic and in Laguna Racer and Super Speed
// Race, but the 280-ZZZAP schematic has a note "F" saying that the
// first 325 machines had a 4.3 Kohm resistor here instead. Andrew
// Wellburn's 280-ZZZAP board photo shows such a resistor. The lower
// Welburn's 280-ZZZAP board photo shows such a resistor. The lower
// resistor makes the BOOM effect much louder, countering the reduced
// gain on its generating filter described above. In fact, it makes it
// loud enough to be clipped by the post-mixer op-amps; turning down

View File

@ -201,7 +201,7 @@
// lower, perhaps 350-600, with an average around 450-500.
//
// The high gain of Gun Fight's A-138 transistors causes a "ka-pow" effect in
// its shot sounds; I explain how later. (Andy Wellburn, in a Discord chat on
// its shot sounds; I explain how later. (Andy Welburn, in a Discord chat on
// 2020-06-05, confirmed this effect can be heard in some actual machines. He
// measured an h_FE of 238 for one A-138 from a Gun Fight sound board, but he
// warned that for old transistors like this, h_FE measurements can vary a

View File

@ -124,10 +124,50 @@ Notes:
Remaining 315-xxxx chips are SEGA custom chips
Drive Board
-----------
This board is used to control the feedback motors on the deluxe moving cabinet.
837-6565 (printed on PCB)
839-0123 (sticker on top of the above number)
REV A (sticker)
|------------------------------------|
|CN3 CN4 CN1 CN2 |
|PS2501 SW1 ADC0804|
| CN5|
| |
| PAL PAL 8255 |
|CN6 |
|MB3773 4MHz |
|D71054 MB8464 CN7|
|D71054 EPR-11???.IC27 Z80A |
|------------------------------------|
Notes:
D71054 - NEC D71054 Programmable Timer/Counter
MB8464 - Fujitsu MB8464 8kBx8-bit SRAM
EPR-11???.IC27 - 27C256 EPROM (Z80 program)
Z80A - NEC D780C-1 Z80A CPU. Clock input 4.000MHz
8255 - NEC D8255AC-2 Programmable Peripheral Interface (PPI)
ADC0804 - National ADC0804 8-Bit Microprocessor-Compatible Analog-to-Digital Converter
PAL - AMPAL16R4, both marked 315-5331
MB3773 - Fujitsu MB3773 Master Reset and Watchdog IC
SW1 - 4 position DIP Switch, all set OFF
This is used to select the type of drive motor...
Motor 350-5133 - OFF OFF OFF OFF
Motor 350-5134 - ON OFF OFF OFF
CN1 - 26-pin connector for limit switches, sensor, bank and vibration motor switches
CN2 - 34-pin connector for feedback from the 5k bank pot. Only 2 wires are used. Also joins to main board via 839-0211 FILTER BD
CN3 - 10-pin connector joining to the FET driver and FET driver mini boards. These boards power the cabinet motion 110V motors.
CN4 - 4-pin connector (not used)
CN5 - 10-pin connector for power input (5V / GND)
CN6 - 50-pin connector (not used)
CN7 - 26-pin connector joining to connector CNE on the main game board (possibly for main board<>drive board communication?)
Network Board (used for Power Drift: Link Version)
-------------
Board: 834-6740
834-6740
|-------------| |-| |--------|---|-|
| _ 315-5336 RX TX CNC |
||C| |
@ -136,24 +176,23 @@ Board: 834-6740
||_| 315-5337 |
| SW1 LED 16MHz Z80E |
|----------------------------------|
Notes:
PALs : 315-5337, 315-5336, both PAL16L8
Z80 clock : 8.000MHz [16/2]
5563 : Toshiba TC5563APL-12L 8k x 8 SRAM
MB8421 : Fujitsu 2k x 8 Dual-Port SRAM (SDIP52)
MB89372 : Fujitsu Multi-Protocol Controller
EPR-12028 : 27C256 EPROM
CNA : 50 Pin connector to main board
CNC : 10 pin connector
SW1 : Dipswitch block, 8 switches
MB89372 - Uses 3 serial data transfer protocols: ASYNC, COP & BOP. Has a built
in DMA controller and Interrupt controller to handle interrupts
from the serial interface unit (SIU) & DMA controller (DMAC)
PALs - 315-5337, 315-5336, both PAL16L8
Z80 - Clock 8.000MHz [16/2]
5563 - Toshiba TC5563APL-12L 8kBx8-bit SRAM
MB8421 - Fujitsu 2kBx8-bit Dual-Port SRAM (SDIP52)
MB89372 - Fujitsu Multi-Protocol Controller
Uses 3 serial data transfer protocols: ASYNC, COP & BOP. Has a built
in DMA controller and Interrupt controller to handle interrupts
from the serial interface unit (SIU) & DMA controller (DMAC)
EPR-12028 - 27C256 EPROM
CNA - 50 Pin connector joining to main board
CNC - 10 pin connector
SW1 - 8-position DIP switch
***************************************************************************/
#include "emu.h"
#include "segaybd.h"
#include "segaipt.h"
@ -2142,7 +2181,7 @@ ROM_START( pdrift )
ROM_LOAD16_BYTE( "epr-12018a.53", 0x000001, 0x20000, CRC(1c582e1f) SHA1(c32d2f921554bddd7dedcb81e231aa91f50fa27b) )
ROM_REGION( 0x08000, "drive_board", 0 )
ROM_LOAD( "epr-11485.ic37", 0x00000, 0x08000, NO_DUMP )
ROM_LOAD( "epr-11485.ic27", 0x00000, 0x08000, CRC(069b4201) SHA1(7a9a87aef17cb65bc5b03ca9dea4d2d5cdda228a) ) // handwritten label, not confirmed it is actually epr-11485 but the real board works correctly
ROM_REGION16_BE( 0x080000, "bsprites", 0 )
ROM_LOAD16_BYTE( "epr-11789.16", 0x000000, 0x20000, CRC(b86f8d2b) SHA1(a053f2021841fd0ef89fd3f28050a698b36c435e) )
@ -2228,7 +2267,7 @@ ROM_START( pdrifta )
ROM_LOAD16_BYTE( "epr-12018.53", 0x000001, 0x20000, CRC(0a3f7faf) SHA1(fe20a164a7a2c9e9bf0e7aade75b0488bdc93d79) )
ROM_REGION( 0x08000, "drive_board", 0 )
ROM_LOAD( "epr-11485.ic37", 0x00000, 0x08000, NO_DUMP )
ROM_LOAD( "epr-11485.ic27", 0x00000, 0x08000, CRC(069b4201) SHA1(7a9a87aef17cb65bc5b03ca9dea4d2d5cdda228a) ) // handwritten label, not confirmed it is actually epr-11485 but the real board works correctly
ROM_REGION16_BE( 0x080000, "bsprites", 0 )
ROM_LOAD16_BYTE( "epr-11789.16", 0x000000, 0x20000, CRC(b86f8d2b) SHA1(a053f2021841fd0ef89fd3f28050a698b36c435e) )
@ -2315,7 +2354,7 @@ ROM_START( pdrifte )
ROM_LOAD16_BYTE( "epr-11902.53", 0x000001, 0x20000, CRC(e8028e08) SHA1(de4ee5011e9552e624b6223e0e1ef00bc271a811) )
ROM_REGION( 0x08000, "drive_board", 0 )
ROM_LOAD( "epr-11485.ic37", 0x00000, 0x08000, NO_DUMP )
ROM_LOAD( "epr-11485.ic27", 0x00000, 0x08000, CRC(069b4201) SHA1(7a9a87aef17cb65bc5b03ca9dea4d2d5cdda228a) ) // handwritten label, not confirmed it is actually epr-11485 but the real board works correctly
ROM_REGION16_BE( 0x080000, "bsprites", 0 )
ROM_LOAD16_BYTE( "epr-11789.16", 0x000000, 0x20000, CRC(b86f8d2b) SHA1(a053f2021841fd0ef89fd3f28050a698b36c435e) )
@ -2405,7 +2444,7 @@ ROM_START( pdriftj )
ROM_LOAD16_BYTE( "epr-11749b.53", 0x000001, 0x20000, CRC(9e385568) SHA1(74e22eaed645cc80b1eb0c52912186066e58b9d2) )
ROM_REGION( 0x08000, "drive_board", 0 )
ROM_LOAD( "epr-11485.ic37", 0x00000, 0x08000, NO_DUMP )
ROM_LOAD( "epr-11485.ic27", 0x00000, 0x08000, CRC(069b4201) SHA1(7a9a87aef17cb65bc5b03ca9dea4d2d5cdda228a) ) // handwritten label, not confirmed it is actually epr-11485 but the real board works correctly
ROM_REGION16_BE( 0x080000, "bsprites", 0 )
ROM_LOAD16_BYTE( "epr-11789.16", 0x000000, 0x20000, CRC(b86f8d2b) SHA1(a053f2021841fd0ef89fd3f28050a698b36c435e) )
@ -2490,7 +2529,7 @@ ROM_START(pdriftl)
ROM_LOAD16_BYTE("epr-12108.53", 0x000001, 0x20000, CRC(a3a56771) SHA1(f41d466f31a1b833d21a7011314c48d5056409eb) )
ROM_REGION( 0x08000, "drive_board", 0 )
ROM_LOAD( "epr-11485.ic37", 0x00000, 0x08000, NO_DUMP )
ROM_LOAD( "epr-11485.ic27", 0x00000, 0x08000, CRC(069b4201) SHA1(7a9a87aef17cb65bc5b03ca9dea4d2d5cdda228a) ) // handwritten label, not confirmed it is actually epr-11485 but the real board works correctly
ROM_REGION16_BE(0x080000, "bsprites", 0)
ROM_LOAD16_BYTE("epr-12114.16", 0x000000, 0x20000, CRC(8b07e8eb) SHA1(22a4aff968d6de52372b7b2b5322d353f7b835ef) )