New systems marked not working

------------------------------
Que Huang Zheng Ba (V100CN) [dyq, little0, Guru]

- capcom/cps2.cpp: standardized title for sgemf and clones [taoenwen]

- igs/igs_m036.cpp: redumped lhtb [dyq, little0, Guru]

- subsino/lastfght.cpp: dumped DS2430A [Guru]

- subsino/subsino.cpp: gave newhunterd its own memory map, makes it boot. Still not working.
This commit is contained in:
Ivan Vangelista 2024-04-15 21:22:00 +02:00
parent d8ecec3e00
commit 733c17d48f
6 changed files with 169 additions and 37 deletions

View File

@ -118,6 +118,7 @@ const double XTAL::known_xtals[] = {
4'433'619, /* 4.433619_MHz_XTAL PAL color subcarrier (technically 4.43361875mhz)*/
4'608'000, /* 4.608_MHz_XTAL Luxor ABC-77 keyboard (Keytronic custom part #48-300-107 is equivalent) */
4'915'200, /* 4.9152_MHz_XTAL - */
4'952'000, /* 4.952_MHz_XTAL IGS M036 based mahjong games, for TT5665 sound chip */
5'000'000, /* 5_MHz_XTAL Mutant Night */
5'068'800, /* 5.0688_MHz_XTAL Usually used as MC2661 or COM8116 baud rate clock */
5'185'000, /* 5.185_MHz_XTAL Intel INTELLEC® 4 */

View File

@ -12727,7 +12727,7 @@ GAME( 1997, cscluba, csclub, cps2, cps2_2p3b, cps2_state, init_cps2,
GAME( 1997, csclubj, csclub, cps2, cps2_2p3b, cps2_state, init_cps2, ROT0, "Capcom", "Capcom Sports Club (Japan 970722)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, csclubjy, csclub, cps2, cps2_2p3b, cps2_state, init_cps2, ROT0, "Capcom", "Capcom Sports Club (Japan 970722, yellow case)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, csclubh, csclub, cps2, cps2_2p3b, cps2_state, init_cps2, ROT0, "Capcom", "Capcom Sports Club (Hispanic 970722)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, sgemf, 0, cps2, cps2_2p3b, cps2_state, init_cps2, ROT0, "Capcom", "Super Gem Fighter Mini Mix (USA 970904)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, sgemf, 0, cps2, cps2_2p3b, cps2_state, init_cps2, ROT0, "Capcom", "Super Gem Fighter: Mini Mix (USA 970904)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, pfghtj, sgemf, cps2, cps2_2p3b, cps2_state, init_cps2, ROT0, "Capcom", "Pocket Fighter (Japan 970904)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, sgemfa, sgemf, cps2, cps2_2p3b, cps2_state, init_cps2, ROT0, "Capcom", "Super Gem Fighter: Mini Mix (Asia 970904)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, sgemfh, sgemf, cps2, cps2_2p3b, cps2_state, init_cps2, ROT0, "Capcom", "Super Gem Fighter: Mini Mix (Hispanic 970904)", MACHINE_SUPPORTS_SAVE )
@ -12833,7 +12833,7 @@ GAME( 1996, xmvsfu1d, xmvsf, dead_cps2, cps2_2p6b, cps2_state, init_cps
GAME( 1997, batcird, batcir, dead_cps2, cps2_4p2b, cps2_state, init_cps2, ROT0, "bootleg", "Battle Circuit (Euro 970319 Phoenix Edition) (bootleg)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, csclub1d, csclub, dead_cps2, cps2_2p3b, cps2_state, init_cps2, ROT0, "bootleg", "Capcom Sports Club (Euro 970722 Phoenix Edition) (bootleg)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, mshvsfu1d, mshvsf, dead_cps2, cps2_2p6b, cps2_state, init_cps2, ROT0, "bootleg", "Marvel Super Heroes Vs. Street Fighter (USA 970625 Phoenix Edition) (bootleg)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, sgemfd, sgemf, dead_cps2, cps2_2p3b, cps2_state, init_cps2, ROT0, "bootleg", "Super Gem Fighter Mini Mix (USA 970904 Phoenix Edition) (bootleg)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, sgemfd, sgemf, dead_cps2, cps2_2p3b, cps2_state, init_cps2, ROT0, "bootleg", "Super Gem Fighter: Mini Mix (USA 970904 Phoenix Edition) (bootleg)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, vsavd, vsav, dead_cps2, cps2_2p6b, cps2_state, init_cps2, ROT0, "bootleg", "Vampire Savior: The Lord of Vampire (Euro 970519 Phoenix Edition) (bootleg)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, vhunt2d, vhunt2, dead_cps2, cps2_2p6b, cps2_state, init_cps2, ROT0, "bootleg", "Vampire Hunter 2: Darkstalkers Revenge (Japan 970913 Phoenix Edition) (bootleg)", MACHINE_SUPPORTS_SAVE )
GAME( 1997, vsav2d, vsav2, dead_cps2, cps2_2p6b, cps2_state, init_cps2, ROT0, "bootleg", "Vampire Savior 2: The Lord of Vampire (Japan 970913 Phoenix Edition) (bootleg)", MACHINE_SUPPORTS_SAVE )

View File

@ -1,5 +1,6 @@
// license:BSD-3-Clause
// copyright-holders:David Haywood
// copyright-holders: David Haywood
/* IGS Gambling games using IGS036 CPU
pgm2.cpp also uses this CPU
@ -58,11 +59,17 @@ check more info and photo from cjdh2.zip!!!
*/
#include "emu.h"
#include "igs036crypt.h"
#include "cpu/arm7/arm7.h"
#include "cpu/arm7/arm7core.h"
#include "igs036crypt.h"
#include "sound/okim6295.h"
#include "sound/tt5665.h"
#include "emupal.h"
#include "screen.h"
#include "speaker.h"
namespace {
@ -193,7 +200,7 @@ ROM_START( cjddzsp )
ROM_REGION32_LE( 0x200000, "user1", 0 ) // external ARM data / prg
ROM_LOAD( "cjddzsp_s122cn.u18", 0x000000, 0x200000, CRC(4a42aad6) SHA1(96805e5bfbd50686177fe50020229ea8787ade17) )
ROM_REGION( 0x800100, "oki", 0 ) // TT5665 samples
ROM_REGION( 0x800100, "tt5665", 0 ) // samples
ROM_LOAD( "cjddzsp_s122cn.u27", 0x000000, 0x800100, CRC(797e5ba3) SHA1(784fae513ac8cfd1143f0d0ce0936f74e2e64e48))
ROM_REGION( 0x800100*2, "gfx", 0 )
@ -202,6 +209,75 @@ ROM_START( cjddzsp )
ROM_END
/*******************************************************************
Long Hu Zheng Ba Te Bie Ban, IGS, 2009
Que Huang Zheng Ba, IGS, 2007
(Year not shown on title screens but date shown on error screen when program ROM removed)
Hardware Info by Guru
---------------------
PCB-0701-01-IU (Que Huang Zheng Ba)
PCB-0799-02-IU-1 (Long Hu Zheng Ba Te Bie Ban)
|----| |-------------------------------| |------|
| |--| JAMMA |--| |
| ULN2004 TDA1519 |
|-| 7407 ULN2004 VOL |
| LV245 LV245 4.952MHz |
|-| LV245 LV245 EPM3032 |------| UPC844|
| 20MHz |TT5665| U43|
|1 |------| |------| QS3257 |
|8 |IGS036| QS3257 |
|W | | |
|A |------| U27 CON3|
|Y 7404 32.768kHz |
| 7404 U28 |
|-| HC132 U18 |
| SW4 16LV1024 U29 |
| LV245 JP8|
|-| BATT U30 |
| 1117-18 SW1 |
|10 TYN408G SW2 U31 |
|WAY 1084-33 SW3 |
| JP7|
|-------------------------------------------------|
Notes:
IGS036 - Custom SOC in BGA package with internal ROM. SOC is possibly ARM-based. Clock input 20.000MHz
TT5665 - Tontek Design Technology TT5665 8-Channel (or 4-Channel L/R Stereo) ADPCM Voice Synthesis LSI
Clock input 4.952MHz, pin 25 (SS) high, S0 and S1 low. Game sound is very low quality.
EPM3032 - Altera EPM3032 CPLD in PLCC44 package
Sticker on Que Huang Zheng Ba: "IU U23"
Sticker on Long Hu Zheng Ba Te Bie Ban: "IU-1 U23"
TDA1519 - NXP TDA1519 6W Stereo Power Amplifier IC
UPC844 - NEC uPC844 Quad Operational Amplifier
QS3257 - IDT QS3257 Mux/Demux (=74LS257)
ULN2004 - Texas Instruments ULN2004 Darlington Array
LV245 - 74LV245A Octal Bus Transceiver
7407 - 7407D Hex Buffer
7404 - 7404D Hex Inverter
HC132 - 74HC132D Quadruple 2-Input Positive-NAND Schmitt Trigger
16LV1024 - Chiplus CS16LV10243GCR70 64kBx16-bit SRAM
U43 - PS/2 Port (not populated on PCB-0799)
CON3 - DB9 Port (not populated on PCB-0799)
JP7 - 4-pin power connector
JP8 - 10-pin connector (not populated, might be for JTAG programming)
BATT - 3V Coin Battery
SW1-3 - 8-position DIP Switch
SW4 - SPDT Switch (clears high scores/NVRAM)
1117-18 - 1.8V 800mA LDO Regulator
1084-33 - 3.3V 5A LDO Regulator
TYN408G - ST TYN408G SCR
U18 - EV29LV160AB 2Mx8-bit/1Mx16-bit DIP42 3.3V Flash ROM. ROM data is 16-bit.
The ROM is not pin compatible with 27C160 and must be dumped using a custom adapter.
This ROM is the game-specific program code. There is common code inside the IGS036 SOC because
if the program ROM is removed and booted the screen shows 'PROGRAM ROM ERROR'
- Que Huang Zheng Ba: V100CN_U18.U18
- Long Hu Zheng Ba Te Bie Ban: S101CN_U18.U18
U27-U31 - EV29LV640MT 8Mx8-bit/4Mx16-bit DIP48 Flash ROM (U29 & U31 not populated). ROM data is 16-bit.
U27 - Audio Samples for TT5665
Other ROMs - Graphics
*******************************************************************/
ROM_START( lhtb ) // PCB-0799-02-IU-1, every ROM label starts with 龍虎特別版
ROM_REGION( 0x04000, "maincpu", 0 )
// Internal ROM of IGS036 ARM based MCU
@ -210,13 +286,31 @@ ROM_START( lhtb ) // PCB-0799-02-IU-1, every ROM label starts with 龍虎特別
ROM_REGION32_LE( 0x200000, "user1", 0 ) // external ARM data / prg
ROM_LOAD( "s-101cn.u18", 0x000000, 0x200000, CRC(1020f4b5) SHA1(953bb776a804738c624a1dca336e42beb10238f7) )
ROM_REGION( 0x800100, "oki", 0 ) // TT5665 samples
ROM_LOAD( "s101cn_u27.u27", 0x000000, 0x800100, CRC(1b114177) SHA1(acd9969806a49fd6696782fd629b24bbc22f43af) ) // 1xxxxxxxxxxxxxxxxxxxxxxx = 0x00
ROM_REGION( 0x800000, "tt5665", 0 ) // samples
ROM_LOAD( "s101cn_u27.u27", 0x000000, 0x800000, CRC(8db377ae) SHA1(769c146104d8577b337d5aa8b388b9c8b726dd21) )
ROM_REGION( 0x800100*2, "gfx", 0 )
ROM_LOAD( "s101cn_u28.u28", 0x000000, 0x800100, CRC(d823ccba) SHA1(b1c69536baab36331dc5ed9ea12dad4f53b7422e) ) // 1xxxxxxxxxxxxxxxxxxxxxxx = 0x00
ROM_REGION( 0x800000*2, "gfx", 0 )
ROM_LOAD( "s101cn_u28.u28", 0x000000, 0x800000, CRC(75029040) SHA1(d1d0fd696a6c2819034b089e5d2e97b6d5ccc5f9) )
// u29 not populated
ROM_LOAD( "s101cn_u30.u30", 0x800100, 0x800100, CRC(3077bca5) SHA1(3850cd108f8704be549de82af20b385ccc7f999e) ) // 1xxxxxxxxxxxxxxxxxxxxxxx = 0x00
ROM_LOAD( "s101cn_u30.u30", 0x800000, 0x800000, CRC(4024bd96) SHA1(c3f1c616c9783560a5ea0f8727e39c20c64d46f2) )
// u31 not populated, etched CG1-L on PCB
ROM_END
ROM_START( qhzb ) // PCB-0701-01-IU
ROM_REGION( 0x04000, "maincpu", 0 )
// Internal ROM of IGS036 ARM based MCU
ROM_LOAD( "qhzb_igs036", 0x00000, 0x4000, NO_DUMP )
ROM_REGION32_LE( 0x200000, "user1", 0 ) // external ARM data / prg
ROM_LOAD( "v100cn_u18.u18", 0x000000, 0x200000, CRC(8c2733b7) SHA1(226768eead8d7754b2468384e5e691812d0ac96d) )
ROM_REGION( 0x800000, "tt5665", 0 ) // samples
ROM_LOAD( "sp_u27.u27", 0x000000, 0x800000, CRC(1b114177) SHA1(acd9969806a49fd6696782fd629b24bbc22f43af) ) // 1xxxxxxxxxxxxxxxxxxxxxx = 0x00
ROM_REGION( 0x800000*2, "gfx", 0 )
ROM_LOAD( "cg_u28.u28", 0x000000, 0x800000, CRC(04105f6f) SHA1(e917825c2304bba3362aecbfab73d2e2b340478e) ) // FIXED BITS (xxxxxxxx0000xxxx)
// u29 not populated
ROM_LOAD( "cg_u30.u30", 0x800000, 0x800000, CRC(37c7d442) SHA1(81682aa1ba6912919c85ee8f68c2e9821f4a3171) )
// u31 not populated, etched CG1-L on PCB
ROM_END
@ -229,13 +323,13 @@ ROM_START( lhzb3in1 )
ROM_REGION32_LE( 0x200000, "user1", 0 ) // external ARM data / prg
ROM_LOAD( "lhzb3in1_v100cn.u17", 0x000000, 0x200000, CRC(03caaba4) SHA1(701b97d791e9329bad2ddc4d365748e65c430758) )
ROM_REGION( 0x1000000, "oki", 0 ) // TT5665 samples
ROM_REGION( 0x1000000, "tt5665", 0 ) // samples
ROM_LOAD( "lhzb3in1_v100cn.u29", 0x000000, 0x800000, CRC(d8c160a9) SHA1(4b567571764db679a265ae075136128db495acdd) )
ROM_LOAD( "lhzb3in1_v100cn.u28", 0x800000, 0x800000, CRC(68624630) SHA1(56e638d59c4533136f69db22f562b39120b516c1) )
ROM_LOAD( "lhzb3in1_v100cn.u28", 0x800000, 0x800000, CRC(68624630) SHA1(56e638d59c4533136f69db22f562b39120b516c1) ) // 11xxxxxxxxxxxxxxxxxxxxx = 0x00
ROM_REGION( 0x2000000, "gfx", 0 )
ROM_LOAD( "lhzb3in1_v100cn.u30", 0x0000000, 0x800000, CRC(fb4124d7) SHA1(324fe2ade17b0ee9833decf2cab9dd4654a04cec) )
ROM_LOAD( "lhzb3in1_v100cn.u31", 0x0800000, 0x800000, CRC(4572ff90) SHA1(5d4a40ddec1505edc8a1e35130abd7f2c97b1094) )
ROM_LOAD( "lhzb3in1_v100cn.u31", 0x0800000, 0x800000, CRC(4572ff90) SHA1(5d4a40ddec1505edc8a1e35130abd7f2c97b1094) ) // FIXED BITS (xxxxxxxx0000xxxx)
ROM_LOAD( "lhzb3in1_v100cn.u32", 0x1000000, 0x800000, CRC(04fe8ca2) SHA1(039009dd535e1388236bd0fd699eeaf593ae5323) )
ROM_LOAD( "lhzb3in1_v100cn.u33", 0x1800000, 0x800000, CRC(9afa55d1) SHA1(0a19e1c54b271b21fb9931e7c81a9e7d9e77295a) )
ROM_END
@ -249,10 +343,11 @@ ROM_START( igsm312 )
ROM_REGION32_LE( 0x200000, "user1", 0 ) // external ARM data / prg
ROM_LOAD( "m312cn.rom", 0x000000, 0x200000, CRC(5069c310) SHA1(d53a2e8acddfbb7afc27c68c0b3167419a3ec3e6) )
ROM_REGION( 0x800100, "oki", ROMREGION_ERASE00 ) // TT5665 samples
/* missing */
ROM_REGION( 0x800100, "tt5665", ROMREGION_ERASE00 ) // samples
// missing
ROM_REGION( 0x800100*2, "gfx", ROMREGION_ERASE00 )
/* missing */
// missing
ROM_END
@ -265,7 +360,7 @@ ROM_START( mghammer )
ROM_REGION32_LE( 0x200000, "user1", 0 ) // external ARM data / prg
ROM_LOAD( "v_100jp.u26", 0x000000, 0x200000, CRC(d78a4dbb) SHA1(149e68c1294b31f4b039d2cd36d36f17873c247e) )
ROM_REGION( 0x1000000, "oki", ROMREGION_ERASE00 ) // TT5665 samples
ROM_REGION( 0x1000000, "tt5665", ROMREGION_ERASE00 ) // samples
ROM_LOAD( "sp_u17.u17", 0x000000, 0x800000, CRC(dd9b43b6) SHA1(5fa3191a2ebb0ea7fb737e44b1f651987c6c1bbb) )
ROM_LOAD( "sp_u18.u18", 0x800000, 0x800000, CRC(0998e0c6) SHA1(bfa2b42248dc52f83682bbdec7bb7aaa53b4ac29) )
@ -321,7 +416,7 @@ void igs_m036_state::pgm_create_dummy_internal_arm_region(void)
void igs_m036_state::igs_m036(machine_config &config)
{
IGS036(config, m_maincpu, 20'000'000);
IGS036(config, m_maincpu, 20_MHz_XTAL);
m_maincpu->set_addrmap(AS_PROGRAM, &igs_m036_state::igs_m036_map);
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
@ -333,13 +428,15 @@ void igs_m036_state::igs_m036(machine_config &config)
screen.set_palette("palette");
PALETTE(config, "palette").set_entries(0x200);
// sound hardware (OKI)
SPEAKER(config, "speaker").front_center();
OKIM6295(config, "oki", 1'000'000, okim6295_device::PIN7_LOW).add_route(ALL_OUTPUTS, "speaker", 1.0); // clock and pin 7 not verified
}
void igs_m036_state::igs_m036_tt(machine_config &config)
{
IGS036(config, m_maincpu, 20'000'000);
IGS036(config, m_maincpu, 20_MHz_XTAL);
m_maincpu->set_addrmap(AS_PROGRAM, &igs_m036_state::igs_m036_map);
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
@ -351,7 +448,9 @@ void igs_m036_state::igs_m036_tt(machine_config &config)
screen.set_palette("palette");
PALETTE(config, "palette").set_entries(0x200);
// sound hardware (TT5665)
SPEAKER(config, "speaker").front_center();
TT5665(config, "tt5665", 4.952_MHz_XTAL, tt5665_device::ss_state::SS_HIGH, 0).add_route(1, "speaker", 1.0);
}
@ -401,7 +500,9 @@ GAME( 200?, cjdh2c, cjdh2, igs_m036, igs_m036, igs_m036_state, init_cjdh2,
GAME( 200?, cjddzsp, 0, igs_m036_tt, igs_m036, igs_m036_state, init_cjddzsp, ROT0, "IGS", "Super Dou Di Zhu Special (V122CN)", MACHINE_IS_SKELETON )
GAME( 200?, lhtb, 0, igs_m036_tt, igs_m036, igs_m036_state, init_cjddzsp, ROT0, "IGS", "Long Hu Tebie Ban (V101CN)", MACHINE_IS_SKELETON ) // 龍虎特別版 - Lónghǔ tèbié bǎn
GAME( 2007, qhzb, 0, igs_m036_tt, igs_m036, igs_m036_state, init_cjddzsp, ROT0, "IGS", "Que Huang Zheng Ba (V100CN)", MACHINE_IS_SKELETON )
GAME( 2009, lhtb, 0, igs_m036_tt, igs_m036, igs_m036_state, init_cjddzsp, ROT0, "IGS", "Long Hu Tebie Ban (V101CN)", MACHINE_IS_SKELETON ) // 龍虎特別版 - Lónghǔ tèbié bǎn
GAME( 200?, lhzb3in1, 0, igs_m036_tt, igs_m036, igs_m036_state, init_cjddzsp, ROT0, "IGS", "Long Hu Zhengba San He Yi (V100CN)", MACHINE_IS_SKELETON ) // 龙虎争霸三合一

View File

@ -20152,9 +20152,10 @@ cjdh2a // (c) 200?
cjdh2b // (c) 200?
cjdh2c // (c) 200?
igsm312 // (c) 200?
lhtb // (c) 200?
lhtb // (c) 2009
lhzb3in1 // (c) 200?
mghammer // (c) 2015
qhzb // (c) 2007
@source:igs/igspoker.cpp
chleague // (c) 199? IGS

View File

@ -594,7 +594,7 @@ ROM_START( lastfght )
ROM_LOAD( "v100.u7", 0x000000, 0x100000, CRC(c134378c) SHA1(999c75f3a7890421cfd904a926ca377ee43a6825) )
ROM_REGION( 0x28, "eeprom", 0 )
ROM_LOAD( "ds2430a.bin", 0x00, 0x28, CRC(622a8862) SHA1(fae60a326e6905aefc36275d505147e1860a71d0) BAD_DUMP ) // handcrafted to pass protection check
ROM_LOAD( "ds2430a.q3", 0x00, 0x28, CRC(af461d83) SHA1(bb8d25e9bb60e00e460e4b7e1855c735becaaa6d) )
ROM_END
void lastfght_state::init_lastfght()
@ -605,7 +605,7 @@ void lastfght_state::init_lastfght()
rom[0x01b86 / 2] = 0x5670;
}
} // Anonymous namespace
} // anonymous namespace
GAME( 2000, lastfght, 0, lastfght, lastfght, lastfght_state, init_lastfght, ROT0, "Subsino", "Last Fighting", MACHINE_NOT_WORKING | MACHINE_NO_SOUND | MACHINE_IMPERFECT_TIMING | MACHINE_SUPPORTS_SAVE )

View File

@ -277,6 +277,7 @@ public:
void sharkpy(machine_config &config);
void victor5(machine_config &config);
void newhunterb(machine_config &config);
void newhunterd(machine_config &config);
void init_stbsub();
void init_stisub();
@ -351,6 +352,7 @@ private:
void dinofmly_map(address_map &map);
void mtrainnv_map(address_map &map);
void newhunterb_map(address_map &map);
void newhunterd_map(address_map &map);
void ramdac_map(address_map &map);
void sharkpy_map(address_map &map);
void srider_map(address_map &map);
@ -1027,6 +1029,30 @@ void subsino_state::newhunterb_map(address_map &map)
map(0x14000, 0x15fff).rom().region("program", 0x4000);
}
void subsino_state::newhunterd_map(address_map &map)
{
map(0x00000, 0x06fff).rom().region("maincpu", 0x0000); // 0x7000 - 0x9fff are 0xff filled
map(0x07000, 0x07fff).ram();
map(0x08000, 0x087ff).ram().w(FUNC(subsino_state::colorram_w)).share("colorram");
map(0x08800, 0x08fff).ram().w(FUNC(subsino_state::videoram_w)).share("videoram");
map(0x09000, 0x09002).r("ppi1", FUNC(i8255_device::read));
map(0x09004, 0x09006).r("ppi2", FUNC(i8255_device::read));
map(0x09008, 0x09008).rw(FUNC(subsino_state::out_c_r), FUNC(subsino_state::out_c_w));
map(0x09009, 0x09009).w(FUNC(subsino_state::out_b_w));
map(0x0900a, 0x0900a).w(FUNC(subsino_state::out_a_w));
map(0x0900c, 0x0900d).w("ymsnd", FUNC(ym3812_device::write));
map(0x0900e, 0x0900e).portr("INC");
map(0x0900f, 0x0900f).w(FUNC(subsino_state::tiles_offset_w));
map(0x09800, 0x09fff).ram();
map(0x0a000, 0x0dfff).rom().region("maincpu", 0xa000);
map(0x0f0c0, 0x0f0ff).ram().share("reel_scroll.2");
map(0x0f140, 0x0f17f).ram().share("reel_scroll.1");
map(0x0f180, 0x0f1bf).ram().share("reel_scroll.0");
map(0x0f800, 0x0f9ff).ram().w(FUNC(subsino_state::reel_ram_w<0>)).share("reel_ram.0");
map(0x0fa00, 0x0fbff).ram().w(FUNC(subsino_state::reel_ram_w<1>)).share("reel_ram.1");
map(0x0fc00, 0x0fdff).ram().w(FUNC(subsino_state::reel_ram_w<2>)).share("reel_ram.2");
}
void subsino_state::ramdac_map(address_map &map)
{
map(0x000, 0x3ff).rw("ramdac", FUNC(ramdac_device::ramdac_pal_r), FUNC(ramdac_device::ramdac_rgb666_w));
@ -2957,6 +2983,13 @@ void subsino_state::newhunterb(machine_config &config)
m_maincpu->set_addrmap(AS_PROGRAM, &subsino_state::newhunterb_map);
}
void subsino_state::newhunterd(machine_config &config)
{
tisub(config);
m_maincpu->set_addrmap(AS_PROGRAM, &subsino_state::newhunterd_map);
}
void subsino_state::stbsub(machine_config &config)
{
// basic machine hardware
@ -3416,14 +3449,10 @@ ROM_END
- Sound: SM64 + SM65.
- 12.000 MHz xtal (only one xtal on the PCB).
- Five positions for banks of eight DIP switches, but four of them unpopulated (only one present on the PCB).
- MCU with its surface scratched out.
- MCU with its surface scratched out. Appears to run in external ROM mode.
Direct recording from PCB for reference: https://youtu.be/0cFNFCqEEQo */
ROM_START( newhunterd )
ROM_REGION( 0x04000, "maincpu", 0 )
ROM_LOAD( "hd647180.bin", 0x00000, 0x04000, NO_DUMP )
HD647180X_FAKE_INTERNAL_ROM
ROM_REGION( 0x10000, "program", 0 )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "1_am27c512.u44", 0x00000, 0x10000, CRC(456bdb88) SHA1(7135584576f7761b4a0b4c66318cd0cb649eeb93) )
ROM_REGION( 0x40000, "tilemap", 0 )
@ -3442,10 +3471,10 @@ ROM_START( newhunterd )
ROM_LOAD( "3_m27512.u43", 0x04000, 0x04000, CRC(44933beb) SHA1(a19ed785cc3b38c2a2a6a08e9d639361ee118343) )
ROM_IGNORE(0xc000)
ROM_REGION( 0x00300, "proms", 0 )
ROM_LOAD( "n82s129an.u67", 0x00000, 0x00100, BAD_DUMP CRC(69af17fc) SHA1(38546f5665cf731195ac384aca182c56884333f0) ) // Not dumped on this set
ROM_LOAD( "n82s129an.u68", 0x00100, 0x00100, BAD_DUMP CRC(4b5f288a) SHA1(b6b9f9067afe93bd13ea17311484e2a2af01a0ed) ) // Not dumped on this set
ROM_LOAD( "n82s129an.u69", 0x00200, 0x00100, BAD_DUMP CRC(a1c0d069) SHA1(794df68451525901ebd5895feb26fcda2c517c3f) ) // Not dumped on this set
ROM_REGION( 0x00300, "proms", 0 ) // Not dumped for this set, the ones from newhunterb seem to fit
ROM_LOAD( "n82s129an.u67", 0x00000, 0x00100, BAD_DUMP CRC(971843e5) SHA1(4cb5fc1085503dae2f2f02eb49cca051ac84b890) )
ROM_LOAD( "n82s129an.u68", 0x00100, 0x00100, BAD_DUMP CRC(b4bd872c) SHA1(c0f9fe68186636d6d6bc6f81415459631cf38edd) )
ROM_LOAD( "n82s129an.u69", 0x00200, 0x00100, BAD_DUMP CRC(db99f6da) SHA1(d281a2fa06f1890ef0b1c4d099e6828827db14fd) )
ROM_REGION( 0x00045c, "plds", 0 )
ROM_LOAD( "palce16v8h.u61", 0x00000, 0x00117, NO_DUMP )
@ -4396,8 +4425,8 @@ GAMEL( 1992, newhunter, tisub, tisub, tisub, subsino_state, init_tis
GAMEL( 1993, newhunterb, tisub, newhunterb, tisub, subsino_state, init_newhunterb, ROT0, "bootleg", "New HUNTer (bootleg, set 1)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_NOT_WORKING, layout_tisubb )
GAMEL( 1993, newhunterc, tisub, newhunterb, tisub, subsino_state, init_newhunterc, ROT0, "bootleg", "New HUNTer (bootleg, set 2)", MACHINE_NOT_WORKING, layout_tisubb ) // 1989 on screen, but "Copyright 1993 SubSino Corp. Taipei, Taiwan." on program ROM
GAMEL( 1993, newhunterd, tisub, newhunterb, tisub, subsino_state, init_newhunterc, ROT0, "bootleg", "New HUNTer (bootleg, set 3)", MACHINE_NOT_WORKING, layout_tisubb )
GAMEL( 1998, ndongmul, 0, newhunterb, tisub, subsino_state, init_newhunterc, ROT0, "Hyoja Game", "New DongmulDongmul", MACHINE_NOT_WORKING, layout_tisubb )
GAMEL( 1993, newhunterd, tisub, newhunterd, tisub, subsino_state, empty_init, ROT0, "bootleg", "New HUNTer (bootleg, set 3)", MACHINE_NOT_WORKING, layout_tisubb ) // reel GFX don't appear, inputs
GAMEL( 1998, ndongmul, 0, newhunterb, tisub, subsino_state, init_newhunterc, ROT0, "Hyoja Game", "New DongmulDongmul", MACHINE_NOT_WORKING, layout_tisubb ) // hangs after a while, bad reels GFX loading / decode
GAMEL( 1991, crsbingo, 0, crsbingo, crsbingo, subsino_state, init_crsbingo, ROT0, "Subsino", "Poker Carnival", 0, layout_crsbingo )