New systems marked not working

------------------------------
Spin Fever [CoolMod, The Dumping Union]

New working clones
------------------
Demon's World / Horror Story (set 6)  [Tonitox]
This commit is contained in:
Ivan Vangelista 2023-09-27 18:35:48 +02:00
parent 1d1ff1b5f8
commit 7b15eb6ef8
4 changed files with 181 additions and 36 deletions

114
src/mame/konami/cougar.cpp Normal file
View File

@ -0,0 +1,114 @@
// license:BSD-3-Clause
// copyright-holders:
/*
Konami Cougar system
Used for coin pushers
Hardware:
GSDRA PWB(A2) 0000327125 Cougar (with 378 117 11119970 sticker)
* 6417751A SH-4 BP240 CPU with 20.000 MHz and 32.768 KHz XTALs nearby
* SiS 315 GFX
* 2x 48LC8M16A2 128Mb SDRAM (near SH-4)
* 8x 48LC8M16A2 128Mb SDRAM (near SiS 315)
* R1LV0416CSB 4M SRAM
* 2x Xilinx Spartan XC2S50E FPGA
* Xilinx XC95144XL CPLD with 66.0000 MHz XTAL nearby
* SMSC LAN91C111-NU Ethernet controller with 25.000 MHz XTAL nearby
* CR2032 3V battery
* 4-dip bank
* S29AL016D70TFI020 16Mb boot sector FLASH (on solder side)
* R4543 B RTC (on solder side)
GSGPB PWB(B) 111436540000 AI AM-1
* YMZ280B-F with 16.9344 MHz XTAL nearby
* Xilinx XC95144XL CPLD with 66.0000 MHz XTAL nearby
* 4x TC58FVM6T5BTG65 64Mb Flash
* 2x 8-dip bank
* 64x Sharp PC817 photocoupler
*/
#include "emu.h"
#include "cpu/sh/sh4.h"
#include "machine/intelfsh.h"
#include "machine/rtc4543.h"
#include "sound/ymz280b.h"
#include "screen.h"
#include "speaker.h"
namespace {
class cougar_state : public driver_device
{
public:
cougar_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu")
{ }
void cougar(machine_config &config);
private:
required_device<cpu_device> m_maincpu;
void program_map(address_map &map);
};
void cougar_state::program_map(address_map &map)
{
map(0x00000000, 0x001fffff).rom();
}
static INPUT_PORTS_START( cougar )
INPUT_PORTS_END
void cougar_state::cougar(machine_config &config)
{
SH4LE(config, m_maincpu, 20_MHz_XTAL);
m_maincpu->set_addrmap(AS_PROGRAM, &cougar_state::program_map);
m_maincpu->set_force_no_drc(true);
RTC4543(config, "rtc", 32.768_kHz_XTAL);
//SCREEN(config, "screen", SCREEN_TYPE_RASTER);
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
ymz280b_device &ymz(YMZ280B(config, "ymz", 16.9344_MHz_XTAL));
ymz.add_route(0, "lspeaker", 1.0);
ymz.add_route(1, "rspeaker", 1.0);
}
/***************************************************************************
Game drivers
***************************************************************************/
ROM_START( spinfev )
ROM_REGION32_LE( 0x200000, "maincpu", 0 )
ROM_LOAD( "11060030.ic17", 0x000000, 0x200000, CRC(f39ef488) SHA1(83d04ee6edae3273511d1d036c93029214a15252) )
ROM_REGION( 0x810000, "sndflash0", 0)
ROM_LOAD( "flash.ic120", 0x000000, 0x810000, CRC(724ab5c0) SHA1(4ff2c4440586f58f7805ff9310dcbbbbc3c35157) )
ROM_REGION( 0x810000, "sndflash1", 0)
ROM_LOAD( "flash.ic118", 0x000000, 0x810000, CRC(31b8d161) SHA1(0baf5ef251abbfdba5c1ab905e6238ba21674130) )
ROM_REGION( 0x810000, "sndflash2", 0)
ROM_LOAD( "flash.ic119", 0x000000, 0x810000, CRC(a7980e6f) SHA1(150f92fcd18f39ba256602941cb45d6647ca1099) )
ROM_REGION( 0x810000, "sndflash3", ROMREGION_ERASE00) // empty on this PCB
DISK_REGION( "ide:0:hdd" )
DISK_IMAGE( "unkcougar", 0, SHA1(a15e8fc9c0cdb97781a9bce223297bc028dc04e7) )
ROM_END
} // anonymous namespace
GAME( 2008, spinfev, 0, cougar, cougar, cougar_state, empty_init, ROT0, "Konami", "Spin Fever", MACHINE_IS_SKELETON ) // 'GPB-JB-F01 2008-04-17' and 'SPIN FEVER (GSGPB) BOOT SCRIPT' strings in HDD

View File

@ -23401,6 +23401,9 @@ contraj1 // GX633 (c) 1987 (Japan)
gryzor // GX633 (c) 1987
gryzor1 // GX633 (c) 1987
@source:konami/cougar.cpp
spinfev
@source:konami/crimfght.cpp
crimfght // GX821 (c) 1989 (World)
crimfghtu // GX821 (c) 1989 (US)
@ -44101,6 +44104,7 @@ demonwld1 // TP-O16 (c) 1989 Toaplan + Taito license
demonwld2 // TP-O16 (c) 1989 Toaplan
demonwld3 // TP-O16 (c) 1989 Toaplan
demonwld4 // TP-O16 (c) 1989 Toaplan
demonwld5 // TP-O16 (c) 1989 Toaplan + APM Electronics license
fireshrk // TP-O17 (c) 1990 Toaplan
fireshrka // TP-O17 (c) 1989 Toaplan
fireshrkd // TP-O17 (c) 1990 Toaplan

View File

@ -558,8 +558,6 @@ void joystand_state::x180ii_map(address_map &map) // TODO: verify everything
// map(0xe00080, 0xe00081) // write (bit 0 = cart? bit 1 = ? bit 3 = ?)
//map(0xe00000, 0xe00001).r(FUNC(joystand_state::e00000_r)); // copy slot
//map(0xe00020, 0xe00021).r(FUNC(joystand_state::e00020_r)); // master slot
//map(0xe80040, 0xe8005f).rw("rtc", FUNC(msm6242_device::read), FUNC(msm6242_device::write)).umask16(0x00ff);
}
@ -718,11 +716,10 @@ void joystand_state::x180ii(machine_config &config)
YM2413(config, "ym2413", XTAL(3'579'545)).add_route(ALL_OUTPUTS, "mono", 0.80);
OKIM6295(config, m_oki, XTAL(16'000'000) / 16, okim6295_device::PIN7_HIGH).add_route(ALL_OUTPUTS, "mono", 0.50); // pin 7 not verified
OKIM6295(config, m_oki, XTAL(16'000'000) / 16, okim6295_device::PIN7_LOW).add_route(ALL_OUTPUTS, "mono", 0.50); // clock supplied by pin 15 of the XCT GAL, to be verified
// devices
EEPROM_93C46_16BIT(config, "eeprom");
// MSM6242(config, "rtc", XTAL(32'768)); // TODO: is this present on this PCB?
}

View File

@ -2673,6 +2673,35 @@ ROM_START( demonwld4 )
ROM_LOAD( "prom13.bpr", 0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) ) /* ??? */
ROM_END
ROM_START( demonwld5 ) // standard TP-O16 PCB
ROM_REGION( 0x040000, "maincpu", 0 ) /* Main 68K code */
ROM_LOAD16_BYTE( "o16-10.bin", 0x000000, 0x20000, CRC(4bcd85f6) SHA1(5349480cc4289ef60dcd523757bd38c19e6f23b0) ) // SLDH
ROM_LOAD16_BYTE( "o16-09.bin", 0x000001, 0x20000, CRC(8e5445ba) SHA1(a071e9e60bda27446fce0ddb50df9b5b1720f568) ) // SLDH
ROM_REGION( 0x8000, "audiocpu", 0 ) /* Sound Z80 code */
ROM_LOAD( "rom11", 0x0000, 0x8000, CRC(397eca1b) SHA1(84073ff6d1bc46ec6162d66ec5de305700938380) )
ROM_REGION( 0x2000, "dsp", 0 ) /* Co-Processor TMS320C10 MCU code */
ROM_LOAD16_BYTE( "dsp_21.bin", 0x0000, 0x0800, BAD_DUMP CRC(2d135376) SHA1(67a2cc774d272ee1cd6e6bc1c5fc33fc6968837e) )
ROM_LOAD16_BYTE( "dsp_22.bin", 0x0001, 0x0800, BAD_DUMP CRC(79389a71) SHA1(14ec4c1c9b06702319e89a7a250d0038393437f4) )
ROM_REGION( 0x80000, "gfx1", 0 )
ROM_LOAD16_BYTE( "rom05", 0x00000, 0x20000, CRC(6506c982) SHA1(6d4c1ef91e5617724789ff196abb7abf23e4a7fb) )
ROM_LOAD16_BYTE( "rom07", 0x00001, 0x20000, CRC(a3a0d993) SHA1(50311b9447eb04271b17b212ca31d083ab5b2414) )
ROM_LOAD16_BYTE( "rom06", 0x40000, 0x20000, CRC(4fc5e5f3) SHA1(725d4b009d575ff8ffbe1c00df352ccf235465d7) )
ROM_LOAD16_BYTE( "rom08", 0x40001, 0x20000, CRC(eb53ab09) SHA1(d98195cc1b65b76335b5b24adb31deae1b313f3a) )
ROM_REGION( 0x80000, "gfx2", 0 )
ROM_LOAD16_BYTE( "rom01", 0x00000, 0x20000, CRC(1b3724e9) SHA1(3dbb0450ab1e40e6df2b7c7356352419cd3f113d) )
ROM_LOAD16_BYTE( "rom02", 0x00001, 0x20000, CRC(7b20a44d) SHA1(4dc1a2fa2058077b112c73492808ee9381060ec7) )
ROM_LOAD16_BYTE( "rom03", 0x40000, 0x20000, CRC(2cacdcd0) SHA1(92216d1c6859e05d39363c30e0beb45bc0ae4e1c) )
ROM_LOAD16_BYTE( "rom04", 0x40001, 0x20000, CRC(76fd3201) SHA1(7a12737bf90bd9760074132edeb22f3fd3e16b4f) )
ROM_REGION( 0x40, "proms", 0 ) /* nibble bproms, lo/hi order to be determined */
ROM_LOAD( "prom12.bpr", 0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) ) /* sprite attribute (flip/position) ?? */
ROM_LOAD( "prom13.bpr", 0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) ) /* ??? */
ROM_END
ROM_START( samesame )
ROM_REGION( 0x080000, "maincpu", 0 ) /* Main 68K code */
ROM_LOAD16_BYTE( "o17_09.8j", 0x000000, 0x08000, CRC(3f69e437) SHA1(f2a40fd42cb5ecb2e514b72e7550aa479a9f9ad6) )
@ -3171,43 +3200,44 @@ ROM_START( vimanaj )
ROM_END
// YEAR NAME PARENT MACHINE INPUT CLASS INIT ROT COMPANY FULLNAME FLAGS
GAME( 1988, rallybik, 0, rallybik, rallybik, toaplan1_rallybik_state, empty_init, ROT270, "Toaplan / Taito Corporation", "Rally Bike / Dash Yarou", 0 )
// YEAR NAME PARENT MACHINE INPUT CLASS INIT ROT COMPANY FULLNAME FLAGS
GAME( 1988, rallybik, 0, rallybik, rallybik, toaplan1_rallybik_state, empty_init, ROT270, "Toaplan / Taito Corporation", "Rally Bike / Dash Yarou", 0 )
GAME( 1988, truxton, 0, truxton, truxton, toaplan1_state, empty_init, ROT270, "Toaplan / Taito Corporation", "Truxton / Tatsujin", 0 )
GAME( 1988, truxton, 0, truxton, truxton, toaplan1_state, empty_init, ROT270, "Toaplan / Taito Corporation", "Truxton / Tatsujin", 0 )
GAME( 1989, hellfire, 0, hellfire, hellfire, toaplan1_state, empty_init, ROT0, "Toaplan (Taito license)", "Hellfire (2P set)", 0 )
GAME( 1989, hellfire1, hellfire, hellfire, hellfire1, toaplan1_state, empty_init, ROT0, "Toaplan (Taito license)", "Hellfire (1P set)", 0 )
GAME( 1989, hellfire2a, hellfire, hellfire, hellfire2a,toaplan1_state, empty_init, ROT0, "Toaplan (Taito license)", "Hellfire (2P set, older)", 0 )
GAME( 1989, hellfire1a, hellfire, hellfire, hellfire1a,toaplan1_state, empty_init, ROT0, "Toaplan (Taito license)", "Hellfire (1P set, older)", 0 )
GAME( 1989, hellfire, 0, hellfire, hellfire, toaplan1_state, empty_init, ROT0, "Toaplan (Taito license)", "Hellfire (2P set)", 0 )
GAME( 1989, hellfire1, hellfire, hellfire, hellfire1, toaplan1_state, empty_init, ROT0, "Toaplan (Taito license)", "Hellfire (1P set)", 0 )
GAME( 1989, hellfire2a, hellfire, hellfire, hellfire2a,toaplan1_state, empty_init, ROT0, "Toaplan (Taito license)", "Hellfire (2P set, older)", 0 )
GAME( 1989, hellfire1a, hellfire, hellfire, hellfire1a,toaplan1_state, empty_init, ROT0, "Toaplan (Taito license)", "Hellfire (1P set, older)", 0 )
GAME( 1989, zerowing, 0, zerowing, zerowing2, toaplan1_state, empty_init, ROT0, "Toaplan", "Zero Wing (2P set)", 0 )
GAME( 1989, zerowing1, zerowing, zerowing, zerowing, toaplan1_state, empty_init, ROT0, "Toaplan", "Zero Wing (1P set)", 0 )
GAME( 1989, zerowingw, zerowing, zerowing, zerowing2, toaplan1_state, empty_init, ROT0, "Toaplan (Williams license)", "Zero Wing (2P set, Williams license)", 0 )
GAME( 1989, zerowing, 0, zerowing, zerowing2, toaplan1_state, empty_init, ROT0, "Toaplan", "Zero Wing (2P set)", 0 )
GAME( 1989, zerowing1, zerowing, zerowing, zerowing, toaplan1_state, empty_init, ROT0, "Toaplan", "Zero Wing (1P set)", 0 )
GAME( 1989, zerowingw, zerowing, zerowing, zerowing2, toaplan1_state, empty_init, ROT0, "Toaplan (Williams license)", "Zero Wing (2P set, Williams license)", 0 )
GAME( 1990, demonwld, 0, demonwld, demonwld, toaplan1_demonwld_state, empty_init, ROT0, "Toaplan", "Demon's World / Horror Story (set 1)", 0 )
GAME( 1989, demonwld1, demonwld, demonwld, demonwld, toaplan1_demonwld_state, empty_init, ROT0, "Toaplan", "Demon's World / Horror Story (set 2)", 0 )
GAME( 1989, demonwld2, demonwld, demonwld, demonwld1, toaplan1_demonwld_state, empty_init, ROT0, "Toaplan", "Demon's World / Horror Story (set 3)", 0 )
GAME( 1989, demonwld3, demonwld, demonwld, demonwld1, toaplan1_demonwld_state, empty_init, ROT0, "Toaplan", "Demon's World / Horror Story (set 4)", 0 )
GAME( 1989, demonwld4, demonwld, demonwld, demonwld1, toaplan1_demonwld_state, empty_init, ROT0, "Toaplan", "Demon's World / Horror Story (set 5)", 0 )
GAME( 1990, demonwld, 0, demonwld, demonwld, toaplan1_demonwld_state, empty_init, ROT0, "Toaplan", "Demon's World / Horror Story (set 1)", 0 )
GAME( 1989, demonwld1, demonwld, demonwld, demonwld, toaplan1_demonwld_state, empty_init, ROT0, "Toaplan", "Demon's World / Horror Story (set 2)", 0 )
GAME( 1989, demonwld2, demonwld, demonwld, demonwld1, toaplan1_demonwld_state, empty_init, ROT0, "Toaplan", "Demon's World / Horror Story (set 3)", 0 )
GAME( 1989, demonwld3, demonwld, demonwld, demonwld1, toaplan1_demonwld_state, empty_init, ROT0, "Toaplan", "Demon's World / Horror Story (set 4)", 0 )
GAME( 1989, demonwld4, demonwld, demonwld, demonwld1, toaplan1_demonwld_state, empty_init, ROT0, "Toaplan", "Demon's World / Horror Story (set 5)", 0 )
GAME( 1989, demonwld5, demonwld, demonwld, demonwld1, toaplan1_demonwld_state, empty_init, ROT0, "Toaplan (APM Electronics license)", "Demon's World / Horror Story (set 6)", 0 )
GAME( 1990, fireshrk, 0, samesame, fireshrk, toaplan1_samesame_state, empty_init, ROT270, "Toaplan", "Fire Shark", 0 )
GAME( 1989, fireshrka, fireshrk, samesame, fireshrka, toaplan1_samesame_state, empty_init, ROT270, "Toaplan", "Fire Shark (earlier)", 0 )
GAME( 1990, fireshrkd, fireshrk, samesame, samesame2, toaplan1_samesame_state, empty_init, ROT270, "Toaplan (Dooyong license)", "Fire Shark (Korea, set 1, easier)", 0 )
GAME( 1990, fireshrkdh, fireshrk, samesame, samesame2, toaplan1_samesame_state, empty_init, ROT270, "Toaplan (Dooyong license)", "Fire Shark (Korea, set 2, harder)", 0 )
GAME( 1989, samesame, fireshrk, samesame, samesame, toaplan1_samesame_state, empty_init, ROT270, "Toaplan", "Same! Same! Same! (1P set)", 0 )
GAME( 1989, samesame2, fireshrk, samesame, samesame2, toaplan1_samesame_state, empty_init, ROT270, "Toaplan", "Same! Same! Same! (2P set)", 0 )
GAME( 1990, samesamecn, fireshrk, samesame, jiaojiao, toaplan1_samesame_state, empty_init, ROT270, "Toaplan (Hong Kong Honest Trading license)", "Jiao! Jiao! Jiao! (China, 2P set)", 0 )
GAME( 2015, samesamenh, fireshrk, samesame, samesame, toaplan1_samesame_state, empty_init, ROT270, "hack (trap15)", "Same! Same! Same! (1P set, NEW VER! hack)", 0 )
GAME( 1990, fireshrk, 0, samesame, fireshrk, toaplan1_samesame_state, empty_init, ROT270, "Toaplan", "Fire Shark", 0 )
GAME( 1989, fireshrka, fireshrk, samesame, fireshrka, toaplan1_samesame_state, empty_init, ROT270, "Toaplan", "Fire Shark (earlier)", 0 )
GAME( 1990, fireshrkd, fireshrk, samesame, samesame2, toaplan1_samesame_state, empty_init, ROT270, "Toaplan (Dooyong license)", "Fire Shark (Korea, set 1, easier)", 0 )
GAME( 1990, fireshrkdh, fireshrk, samesame, samesame2, toaplan1_samesame_state, empty_init, ROT270, "Toaplan (Dooyong license)", "Fire Shark (Korea, set 2, harder)", 0 )
GAME( 1989, samesame, fireshrk, samesame, samesame, toaplan1_samesame_state, empty_init, ROT270, "Toaplan", "Same! Same! Same! (1P set)", 0 )
GAME( 1989, samesame2, fireshrk, samesame, samesame2, toaplan1_samesame_state, empty_init, ROT270, "Toaplan", "Same! Same! Same! (2P set)", 0 )
GAME( 1990, samesamecn, fireshrk, samesame, jiaojiao, toaplan1_samesame_state, empty_init, ROT270, "Toaplan (Hong Kong Honest Trading license)", "Jiao! Jiao! Jiao! (China, 2P set)", 0 )
GAME( 2015, samesamenh, fireshrk, samesame, samesame, toaplan1_samesame_state, empty_init, ROT270, "hack (trap15)", "Same! Same! Same! (1P set, NEW VER! hack)", 0 )
GAME( 1990, outzone, 0, outzone, outzone, toaplan1_state, empty_init, ROT270, "Toaplan", "Out Zone", 0 )
GAME( 1990, outzoneh, outzone, outzone, outzone, toaplan1_state, empty_init, ROT270, "Toaplan", "Out Zone (harder)", 0 )
GAME( 1990, outzonea, outzone, outzone, outzonea, toaplan1_state, empty_init, ROT270, "Toaplan", "Out Zone (old set)", 0 )
GAME( 1990, outzoneb, outzone, outzone, outzonea, toaplan1_state, empty_init, ROT270, "Toaplan", "Out Zone (older set)", 0 )
GAME( 1990, outzonec, outzone, outzone, outzonec, toaplan1_state, empty_init, ROT270, "Toaplan", "Out Zone (oldest set)", MACHINE_IMPERFECT_SOUND ) // prototype?
GAME( 1990, outzonecv, outzone, outzonecv,outzone, toaplan1_state, empty_init, ROT270, "Toaplan", "Out Zone (Zero Wing TP-015 PCB conversion)", 0 )
GAME( 1990, outzone, 0, outzone, outzone, toaplan1_state, empty_init, ROT270, "Toaplan", "Out Zone", 0 )
GAME( 1990, outzoneh, outzone, outzone, outzone, toaplan1_state, empty_init, ROT270, "Toaplan", "Out Zone (harder)", 0 )
GAME( 1990, outzonea, outzone, outzone, outzonea, toaplan1_state, empty_init, ROT270, "Toaplan", "Out Zone (old set)", 0 )
GAME( 1990, outzoneb, outzone, outzone, outzonea, toaplan1_state, empty_init, ROT270, "Toaplan", "Out Zone (older set)", 0 )
GAME( 1990, outzonec, outzone, outzone, outzonec, toaplan1_state, empty_init, ROT270, "Toaplan", "Out Zone (oldest set)", MACHINE_IMPERFECT_SOUND ) // prototype?
GAME( 1990, outzonecv, outzone, outzonecv,outzone, toaplan1_state, empty_init, ROT270, "Toaplan", "Out Zone (Zero Wing TP-015 PCB conversion)", 0 )
// has various licenses / regions depending on jumpers, including Tecmo
GAME( 1991, vimana, 0, vimana, vimana, toaplan1_state, empty_init, ROT270, "Toaplan", "Vimana (World, set 1)", 0 )
GAME( 1991, vimanan, vimana, vimana, vimanan, toaplan1_state, empty_init, ROT270, "Toaplan", "Vimana (World, set 2)", 0 )
GAME( 1991, vimanaj, vimana, vimana, vimanaj, toaplan1_state, empty_init, ROT270, "Toaplan", "Vimana (Japan)", 0 )
GAME( 1991, vimana, 0, vimana, vimana, toaplan1_state, empty_init, ROT270, "Toaplan", "Vimana (World, set 1)", 0 )
GAME( 1991, vimanan, vimana, vimana, vimanan, toaplan1_state, empty_init, ROT270, "Toaplan", "Vimana (World, set 2)", 0 )
GAME( 1991, vimanaj, vimana, vimana, vimanaj, toaplan1_state, empty_init, ROT270, "Toaplan", "Vimana (Japan)", 0 )