mirror of
https://github.com/holub/mame
synced 2025-04-20 15:32:45 +03:00
New systems marked not working
------------------------------ Bio Rhythm [Siftware] Janken Man Ganso 2 [buffi] Jipin Dou Di Zhu (set 1) [little0] San Da Yi [little0] New clones marked not working ----------------------------- Feng Kuang Dou Di Zhu II [little0] Jipin Dou Di Zhu (set 2) [little0] - bmc/koftball.cpp: identified a couple of inputs for jxzh [little0] - igs/igspoker.cpp: added NVRAM support, split driver in subclasses, small cleanups - kaneko/airbustr.cpp: added PLD dumps for the original sets [PLD Archive, f205v]
This commit is contained in:
parent
e4d09c2b64
commit
d8613f0d95
@ -12,7 +12,7 @@ TODO:
|
||||
accesses are similar;
|
||||
- probably jxzh also supports the mahjong keyboard. Check if one of the dips enable it and where it
|
||||
is read;
|
||||
- better understanding of the koftball protection;
|
||||
- better understanding of the koftball protection.
|
||||
|
||||
--
|
||||
|
||||
@ -432,7 +432,7 @@ INPUT_PORTS_END
|
||||
static INPUT_PORTS_START( jxzh )
|
||||
PORT_START("INPUTS")
|
||||
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("unknown1") PORT_CODE(KEYCODE_A) // TODO: read in test mode, check the meaning shown there
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_GAMBLE_PAYOUT )
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_REACH )
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_PON )
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_KAN )
|
||||
@ -441,7 +441,7 @@ static INPUT_PORTS_START( jxzh )
|
||||
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_MAHJONG_RON )
|
||||
|
||||
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_MAHJONG_BET )
|
||||
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("unknown2") PORT_CODE(KEYCODE_S) // TODO: read in test mode, check the meaning shown there
|
||||
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("hopper switch") PORT_CODE(KEYCODE_H)
|
||||
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK )
|
||||
PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT )
|
||||
PORT_SERVICE_NO_TOGGLE( 0x1000, IP_ACTIVE_LOW )
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -825,6 +825,11 @@ ROM_START( airbustr )
|
||||
|
||||
ROM_REGION( 0x40000, "oki", 0 )
|
||||
ROM_LOAD( "pr-200.bin", 0x00000, 0x40000, CRC(a4dd3390) SHA1(2d72b46b4979857f6b66489bebda9f48799f59cf) )
|
||||
|
||||
ROM_REGION( 0x400, "plds", ROMREGION_ERASE00 )
|
||||
ROM_LOAD( "pal16l8-pr-500.16f", 0x000, 0x104, CRC(e0f901e1) SHA1(f436f5357408ad7056c950018c0e94681b34fd11) )
|
||||
ROM_LOAD( "gal16v8a-pr-501.13j", 0x200, 0x117, CRC(d8bf8cb5) SHA1(2ccd4b35f97a4fdaf13f3eccb741a0ff54fc7115) )
|
||||
|
||||
ROM_END
|
||||
|
||||
ROM_START( airbustrj )
|
||||
@ -846,6 +851,10 @@ ROM_START( airbustrj )
|
||||
|
||||
ROM_REGION( 0x40000, "oki", 0 )
|
||||
ROM_LOAD( "pr-200.bin", 0x00000, 0x40000, CRC(a4dd3390) SHA1(2d72b46b4979857f6b66489bebda9f48799f59cf) )
|
||||
|
||||
ROM_REGION( 0x400, "plds", ROMREGION_ERASE00 )
|
||||
ROM_LOAD( "pal16l8-pr-500.16f", 0x000, 0x104, CRC(e0f901e1) SHA1(f436f5357408ad7056c950018c0e94681b34fd11) )
|
||||
ROM_LOAD( "gal16v8a-pr-501.13j", 0x200, 0x117, CRC(d8bf8cb5) SHA1(2ccd4b35f97a4fdaf13f3eccb741a0ff54fc7115) )
|
||||
ROM_END
|
||||
|
||||
/*
|
||||
|
@ -20656,9 +20656,9 @@ xyddz
|
||||
|
||||
@source:igs/igspoker.cpp
|
||||
chleague
|
||||
chleagul
|
||||
chleagxa
|
||||
chleagxb
|
||||
chleaguel
|
||||
chleaguexa
|
||||
chleaguexb
|
||||
citalcup
|
||||
cpoker
|
||||
cpokerpk
|
||||
@ -20676,7 +20676,7 @@ igs_ncs2
|
||||
igstet341
|
||||
igstet342
|
||||
number10
|
||||
numbr10l
|
||||
number10l
|
||||
pktet346
|
||||
stellecu
|
||||
|
||||
@ -31395,9 +31395,13 @@ megaphx
|
||||
yoyospel
|
||||
|
||||
@source:misc/menghong.cpp
|
||||
crzyddz2
|
||||
fkddz2
|
||||
jpddz
|
||||
jpddza
|
||||
jzst
|
||||
menghong
|
||||
menghonga
|
||||
sandayi
|
||||
|
||||
@source:misc/meyc8080.cpp
|
||||
casbjack
|
||||
@ -42556,6 +42560,9 @@ basf7120
|
||||
@source:skeleton/bert.cpp
|
||||
bert
|
||||
|
||||
@source:skeleton/biorhythm.cpp
|
||||
biorhthm
|
||||
|
||||
@source:skeleton/bitgraph.cpp
|
||||
bitgrpha
|
||||
bitgrphb
|
||||
@ -44052,6 +44059,9 @@ anoworld
|
||||
@source:sunwise/jankenmn.cpp
|
||||
jankenmn
|
||||
|
||||
@source:sunwise/jankmg2.cpp
|
||||
jankmg2
|
||||
|
||||
@source:svi/svi318.cpp
|
||||
svi318
|
||||
svi318n
|
||||
|
@ -1821,7 +1821,7 @@ static INPUT_PORTS_START( cjdlz ) // TODO
|
||||
PORT_DIPSETTING( 0x0000, "1 Note/10 Credits" )
|
||||
PORT_DIPSETTING( 0x0008, "1 Note/20 Credits" )
|
||||
PORT_DIPSETTING( 0x0010, "1 Note/50 Credits" )
|
||||
PORT_DIPNAME( 0x0020, 0x0000, "Show Tiles after Reach" ) PORT_DIPLOCATION("DSW2:6")
|
||||
PORT_DIPNAME( 0x0020, 0x0000, "Show Credits" ) PORT_DIPLOCATION("DSW2:6")
|
||||
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0040, 0x0000, "Pay Out Type" ) PORT_DIPLOCATION("DSW2:7")
|
||||
|
@ -18,7 +18,7 @@
|
||||
=============================================================================
|
||||
|
||||
Meng Hong Lou (Dream of the Red Chamber), Sealy, 2008
|
||||
Crazy Dou Di Zhu II, Sealy, 2006
|
||||
Jue Zhan Shanghai Tan, Sealy, 2006
|
||||
Hardware Info By Guru
|
||||
---------------------
|
||||
|
||||
@ -45,7 +45,8 @@ Notes:
|
||||
CPU Clock Input Pins 6 & 7 - 14.31818MHz
|
||||
Video Clock Input Pin 103 - 28.63636MHz
|
||||
Another identical PCB has this chip marked "ADC Amazon-LF EISC" so these are 100% compatible.
|
||||
0260F8A - unknown TQFP44 (Microcontroller?). Clock Input 8.000MHz
|
||||
0260F8A - Renesas M30260F8AGP (TQFP44) (M16C/26A based microcontroller with internal 64K + 4K Flash ROM).
|
||||
Clock Input 8.000MHz.
|
||||
HY04 - rebadged DIP8 PIC - type unknown (*). PCB marked "SAM1"
|
||||
Some chips are marked "SL01". Chip data is unique to each game but different
|
||||
versions of the same game work ok with swapped HY04 or swapped main program EPROM.
|
||||
@ -534,7 +535,7 @@ ROM_START( menghonga )
|
||||
ROM_LOAD("hy04_fake_data.bin", 0, 0x100, BAD_DUMP CRC(73cc964b) SHA1(39d223c550e38c97135322e43ccabb70f04964b9) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( crzyddz2 )
|
||||
ROM_START( jzst )
|
||||
ROM_REGION32_LE( 0x1000000, "flash", 0 ) // Flash
|
||||
ROM_LOAD( "rom.u48", 0x000000, 0x1000000, CRC(0f3a1987) SHA1(6cad943846c79db31226676c7391f32216cfff79) )
|
||||
|
||||
@ -547,9 +548,76 @@ ROM_START( crzyddz2 )
|
||||
ROM_REGION( 0x0100, "pic_data", ROMREGION_ERASEFF )
|
||||
ROM_END
|
||||
|
||||
// PCB is very similar to the one documented at the top, but with HY03 instead of HY04 and standard ROMs instead of flash
|
||||
ROM_START( fkddz2 )
|
||||
ROM_REGION32_LE( 0x1000000, "flash", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "exrom.u9", 0x000000, 0x400000, CRC(798d992d) SHA1(67e23ba8ee5867ef6cf6678c3942fe71077648b1) )
|
||||
ROM_LOAD( "rom2.u8", 0x400000, 0x400000, CRC(da43ba27) SHA1(495cb36393c358498171e0e3fd3c5bbcdf2edefc) )
|
||||
ROM_LOAD( "rom3.u7", 0x800000, 0x400000, CRC(48c2b302) SHA1(8b995cdf1d1763ec610732b8f8ebe24ceab3745a) )
|
||||
|
||||
ROM_REGION( 0x0400000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "rom.u13", 0x000000, 0x0200000, CRC(ed5faeea) SHA1(f5055a74c153dda5cdc035853f773bdf0bf89924) ) // 1xxxxxxxxxxxxxxxxxxxx = 0xFF
|
||||
|
||||
ROM_REGION( 0x4280, "pic", 0 ) // hy03
|
||||
ROM_LOAD("hy-03", 0x000000, 0x4280, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x0100, "pic_data", ROMREGION_ERASEFF )
|
||||
ROM_END
|
||||
|
||||
// Sealy 2005.7 PCB
|
||||
// PCB is very similar to the one documented at the top, but with KEY02 instead of HY04 and standard ROMs instead of flash
|
||||
ROM_START( jpddz )
|
||||
ROM_REGION32_LE( 0x1000000, "flash", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "exrom.u19", 0x000000, 0x400000, CRC(755dd9f9) SHA1(2361ee329777ea42fee5bbdf9c7e962a96863e28) )
|
||||
ROM_LOAD( "rom.u18", 0x400000, 0x400000, CRC(39a0def4) SHA1(b84681e603a7c5eb49e81c3c622f3ce498a5f40c) )
|
||||
ROM_LOAD( "rom.u17", 0x800000, 0x400000, CRC(1bd2f550) SHA1(f8283a5d4750f1c435c0bba993381bb6849ed490) )
|
||||
|
||||
ROM_REGION( 0x0400000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "rom.u13", 0x000000, 0x0200000, CRC(2cf079f1) SHA1(b924ab4e5359ec56b9c5203d3a277f487c2553fe) ) // 1xxxxxxxxxxxxxxxxxxxx = 0xFF
|
||||
|
||||
ROM_REGION( 0x4280, "pic", 0 ) // key02
|
||||
ROM_LOAD("hy-02", 0x000000, 0x4280, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x0100, "pic_data", ROMREGION_ERASEFF )
|
||||
ROM_END
|
||||
|
||||
ROM_START( jpddza )
|
||||
ROM_REGION32_LE( 0x1000000, "flash", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "exrom.u19", 0x000000, 0x400000, CRC(755dd9f9) SHA1(2361ee329777ea42fee5bbdf9c7e962a96863e28) )
|
||||
ROM_LOAD( "rom.u18", 0x400000, 0x400000, CRC(39a0def4) SHA1(b84681e603a7c5eb49e81c3c622f3ce498a5f40c) )
|
||||
ROM_LOAD( "rom.u17", 0x800000, 0x400000, CRC(1bd2f550) SHA1(f8283a5d4750f1c435c0bba993381bb6849ed490) )
|
||||
|
||||
ROM_REGION( 0x0400000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "rom.u13", 0x000000, 0x0200000, CRC(3af68f42) SHA1(e51be0578891ba3b6e4a1a999c08ec8b64cf3924) ) // 1xxxxxxxxxxxxxxxxxxxx = 0xFF
|
||||
|
||||
ROM_REGION( 0x4280, "pic", 0 ) // key02
|
||||
ROM_LOAD("hy-02", 0x000000, 0x4280, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x0100, "pic_data", ROMREGION_ERASEFF )
|
||||
ROM_END
|
||||
|
||||
ROM_START( sandayi )
|
||||
ROM_REGION32_LE( 0x1000000, "flash", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "exr01.u19", 0x000000, 0x400000, CRC(c9808384) SHA1(6e1d893e125c9aa187881a866ba78d0173a46409) )
|
||||
ROM_LOAD( "rom.u18", 0x400000, 0x400000, CRC(8c8dbdb4) SHA1(9fc8b7da52b5bda3d209db735e6d6534b9b2082d) )
|
||||
ROM_LOAD( "rom.u17", 0x800000, 0x400000, CRC(7c7f57d8) SHA1(5f7a0dbfead4b3f90b0b5502130cbf92e2811036) ) // 1111xxxxxxxxxxxxxxxxxx = 0xFF
|
||||
|
||||
ROM_REGION( 0x0400000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "r0.u13", 0x000000, 0x0200000, CRC(176ec98e) SHA1(b699a84aa365881ac43d3ad72ba78699afbf5f3d) ) // 11xxxxxxxxxxxxxxxxxxx = 0xFF
|
||||
|
||||
ROM_REGION( 0x4280, "pic", 0 ) // HY-02
|
||||
ROM_LOAD("hy-02", 0x000000, 0x4280, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x0100, "pic_data", ROMREGION_ERASEFF )
|
||||
ROM_END
|
||||
|
||||
} // anonymous namespace
|
||||
|
||||
|
||||
GAME( 2004?, menghong, 0, menghong, crzyddz2, menghong_state, empty_init, ROT0, "Sealy", "Meng Hong Lou", MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION )
|
||||
GAME( 2004?, menghonga, menghong, menghong, crzyddz2, menghong_state, empty_init, ROT0, "Sealy", "Meng Hong Lou (earlier)", MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION )
|
||||
GAME( 2006, crzyddz2, 0, crzyddz2, crzyddz2, menghong_state, empty_init, ROT0, "Sealy", "Crazy Dou Di Zhu II", MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION )
|
||||
GAME( 2004?, menghong, 0, menghong, crzyddz2, menghong_state, empty_init, ROT0, "Sealy", "Meng Hong Lou", MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION )
|
||||
GAME( 2004?, menghonga, menghong, menghong, crzyddz2, menghong_state, empty_init, ROT0, "Sealy", "Meng Hong Lou (earlier)", MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION )
|
||||
GAME( 2006, jzst, fkddz2, crzyddz2, crzyddz2, menghong_state, empty_init, ROT0, "Sealy", "Jue Zhan Shanghai Tan", MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION )
|
||||
GAME( 2006, fkddz2, 0, crzyddz2, crzyddz2, menghong_state, empty_init, ROT0, "Sealy", "Feng Kuang Dou Di Zhu II", MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION )
|
||||
GAME( 2005, jpddz, 0, crzyddz2, crzyddz2, menghong_state, empty_init, ROT0, "Sealy", "Jipin Dou Di Zhu (set 1)", MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION ) // this one boots
|
||||
GAME( 2005, jpddza, jpddz, crzyddz2, crzyddz2, menghong_state, empty_init, ROT0, "Sealy", "Jipin Dou Di Zhu (set 2)", MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION ) // this one doesn't
|
||||
GAME( 2005, sandayi, 0, crzyddz2, crzyddz2, menghong_state, empty_init, ROT0, "Sealy", "San Da Yi", MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION )
|
||||
|
104
src/mame/skeleton/biorhythm.cpp
Normal file
104
src/mame/skeleton/biorhythm.cpp
Normal file
@ -0,0 +1,104 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:
|
||||
|
||||
/*
|
||||
Biorhythm machine
|
||||
|
||||
Etched in copper on top of board
|
||||
(c) THE BIO RHYTHM CO INC 1979
|
||||
BIORHYTHM CONTROL CARD
|
||||
SR. NO. F
|
||||
|
||||
Main components:
|
||||
HD46802P
|
||||
4.000 MHz XTAL
|
||||
3x EF6821P
|
||||
MC14028
|
||||
NE555N
|
||||
*/
|
||||
|
||||
#include "emu.h"
|
||||
|
||||
#include "cpu/m6800/m6800.h"
|
||||
#include "machine/6821pia.h"
|
||||
|
||||
#include "speaker.h"
|
||||
|
||||
|
||||
namespace {
|
||||
|
||||
class biorhythm_state : public driver_device
|
||||
{
|
||||
public:
|
||||
biorhythm_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu")
|
||||
{
|
||||
}
|
||||
|
||||
void biorhythm(machine_config &config) ATTR_COLD;
|
||||
|
||||
protected:
|
||||
virtual void machine_start() override ATTR_COLD;
|
||||
|
||||
private:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
|
||||
void program_map(address_map &map);
|
||||
};
|
||||
|
||||
|
||||
void biorhythm_state::machine_start()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void biorhythm_state::program_map(address_map &map)
|
||||
{
|
||||
map.global_mask(0x1fff);
|
||||
|
||||
map(0x0800, 0x0803).rw("pia0", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
|
||||
map(0x0804, 0x0807).rw("pia1", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
|
||||
map(0x0808, 0x080b).rw("pia2", FUNC(pia6821_device::read), FUNC(pia6821_device::write));
|
||||
map(0x1000, 0x1fff).rom().region("maincpu", 0);
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START(biorhythm)
|
||||
PORT_START("IN0")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
void biorhythm_state::biorhythm(machine_config &config)
|
||||
{
|
||||
M6802(config, m_maincpu, 4_MHz_XTAL); // Actually a HD46802P
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &biorhythm_state::program_map);
|
||||
|
||||
PIA6821(config, "pia0");
|
||||
|
||||
PIA6821(config, "pia1");
|
||||
|
||||
PIA6821(config, "pia2");
|
||||
|
||||
SPEAKER(config, "speaker").front_center();
|
||||
}
|
||||
|
||||
|
||||
ROM_START( biorhthm )
|
||||
ROM_REGION( 0x1000, "maincpu", 0 ) // hand-written labels
|
||||
ROM_LOAD( "1000_v2.0.u5", 0x000, 0x800, CRC(ba96c674) SHA1(12fd665e69177975438a9a2dc63b97897159bfae) )
|
||||
ROM_LOAD( "1800_2.0.u11", 0x800, 0x800, CRC(e499ccfa) SHA1(426c4462399a89253a17a99a3c814f65a95aa739) )
|
||||
ROM_END
|
||||
|
||||
} // anonymous namespace
|
||||
|
||||
|
||||
GAME( 1979?, biorhthm, 0, biorhythm, biorhythm, biorhythm_state, empty_init, ROT0, "Bio Rhythm", "Biorhythm", MACHINE_NO_SOUND | MACHINE_NOT_WORKING ) // title may be wrong / incomplete
|
167
src/mame/sunwise/jankmg2.cpp
Normal file
167
src/mame/sunwise/jankmg2.cpp
Normal file
@ -0,0 +1,167 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:
|
||||
|
||||
/*
|
||||
Janken Man 2
|
||||
'S9405021 CPU-DM-NEW' PCB
|
||||
|
||||
Z0840004PSC
|
||||
4.000 MHz XTAL
|
||||
LH0082A Z80A-CTC-D
|
||||
CXK5816PS-15L SRAM
|
||||
2 banks of 8 DIP switches
|
||||
*/
|
||||
|
||||
#include "emu.h"
|
||||
|
||||
#include "cpu/z80/z80.h"
|
||||
#include "machine/z80ctc.h"
|
||||
#include "machine/z80daisy.h"
|
||||
#include "sound/dac.h"
|
||||
|
||||
#include "speaker.h"
|
||||
|
||||
|
||||
namespace {
|
||||
|
||||
class jankmg2_state : public driver_device
|
||||
{
|
||||
public:
|
||||
jankmg2_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag)
|
||||
, m_maincpu(*this, "maincpu")
|
||||
{ }
|
||||
|
||||
void jankmg2(machine_config &config);
|
||||
|
||||
protected:
|
||||
virtual void machine_start() override ATTR_COLD;
|
||||
|
||||
private:
|
||||
required_device<z80_device> m_maincpu;
|
||||
|
||||
void program_map(address_map &map) ATTR_COLD;
|
||||
void io_map(address_map &map) ATTR_COLD;
|
||||
};
|
||||
|
||||
|
||||
void jankmg2_state::machine_start()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void jankmg2_state::program_map(address_map &map)
|
||||
{
|
||||
map(0x0000, 0x3fff).rom();
|
||||
map(0x4000, 0x47ff).ram();
|
||||
}
|
||||
|
||||
void jankmg2_state::io_map(address_map &map)
|
||||
{
|
||||
map.global_mask(0xff);
|
||||
//map(0x??, 0x??).rw("ctc", FUNC(z80ctc_device::read), FUNC(z80ctc_device::write));
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( jankmg2 )
|
||||
PORT_START("IN0")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
|
||||
PORT_START("DSW1")
|
||||
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:1")
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:2")
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:3")
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4")
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:5")
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:6")
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:7")
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:8")
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
|
||||
PORT_START("DSW2")
|
||||
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:1")
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:2")
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:3")
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:4")
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:5")
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:6")
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:7")
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:8")
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
static const z80_daisy_config daisy_chain[] =
|
||||
{
|
||||
{ "ctc" },
|
||||
{ nullptr }
|
||||
};
|
||||
|
||||
|
||||
void jankmg2_state::jankmg2(machine_config &config)
|
||||
{
|
||||
Z80(config, m_maincpu, 4_MHz_XTAL);
|
||||
m_maincpu->set_daisy_config(daisy_chain);
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &jankmg2_state::program_map);
|
||||
m_maincpu->set_addrmap(AS_IO, &jankmg2_state::io_map);
|
||||
|
||||
z80ctc_device& ctc(Z80CTC(config, "ctc", 4_MHz_XTAL));
|
||||
ctc.intr_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
|
||||
|
||||
// sound hardware
|
||||
SPEAKER(config, "speaker").front_center();
|
||||
|
||||
DAC_8BIT_R2R(config, "dac", 0).add_route(ALL_OUTPUTS, "speaker", 0.5); // TODO: wrong type, verify
|
||||
}
|
||||
|
||||
|
||||
ROM_START( jankmg2 )
|
||||
ROM_REGION( 0x4000, "maincpu", 0 )
|
||||
ROM_LOAD( "gjv1.1.p.u17", 0x0000, 0x4000, CRC(1aa201e7) SHA1(943dff75a46775dd12aed07659dff3d961a58211) )
|
||||
|
||||
ROM_REGION( 0x40000, "dac_data", 0 )
|
||||
ROM_LOAD( "pcg2.1.u13", 0x00000, 0x40000, CRC(48a8f769) SHA1(656346ca0a83fd8ff5c8683152e4c5e1a1c797fa) ) // same as sunwise/jankenm.cpp
|
||||
// 3 more unpopulated ROM spaces at u14, u15 and u16
|
||||
ROM_END
|
||||
|
||||
} // anonymous namespace
|
||||
|
||||
// title machine translated from auction, not verified
|
||||
GAME( 199?, jankmg2, 0, jankmg2, jankmg2, jankmg2_state, empty_init, ROT0, "Sunwise", "Janken Man Ganso 2", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
Loading…
Reference in New Issue
Block a user