mirror of
https://github.com/holub/mame
synced 2025-05-28 08:33:05 +03:00
New games added
--------------- Skater (cassette) Super Doubles Tennis (cassette) [Chack'n & Team Japump!!!, Charles MacDonald, Dr. Spankenstein, Kevin Eshbach, T. Huff, SteveS, E. Page-Hanify, Hikari, ArcadeDude, F. Bukor, N. Francfort, jmurjr, arcade-history.com, ThumB, Hurray Banana, Paratech, Xiaou2, Cornishdavey, A. Costin, M. Ponweiser, Tormod & Rambo] also renamed cgsumo to coozumou as it's a Japanese version
This commit is contained in:
parent
104879cea0
commit
de4cb7d134
File diff suppressed because it is too large
Load Diff
@ -40,6 +40,7 @@ enum {
|
||||
TYPE3_SWAP_25,
|
||||
TYPE3_SWAP_34_0,
|
||||
TYPE3_SWAP_34_7,
|
||||
TYPE3_SWAP_45,
|
||||
TYPE3_SWAP_23_56,
|
||||
TYPE3_SWAP_56,
|
||||
TYPE3_SWAP_67
|
||||
@ -260,13 +261,12 @@ static void decocass_fno( running_machine &machine, offs_t offset, UINT8 data )
|
||||
/***************************************************************************
|
||||
*
|
||||
* TYPE1 DONGLE (DE-0061)
|
||||
* - Lock 'n Chase
|
||||
* - Treasure Island
|
||||
* - Super Astro Fighter
|
||||
* - Lucky Poker
|
||||
* - Terranian
|
||||
* - Explorer
|
||||
* - Super Astro Fighter
|
||||
* - Lock 'n Chase
|
||||
* - Pro Golf
|
||||
* - Lucky Poker
|
||||
* - Treasure Island
|
||||
*
|
||||
* Latch bits 2 and 6, pass bit 3, invert bit 2.
|
||||
* Lookup PROM DE-0061 using bits 0, 1, 4, 5, and 7 as the
|
||||
@ -671,10 +671,10 @@ static READ8_HANDLER( decocass_type1_latch_16_pass_3_inv_1_r )
|
||||
/***************************************************************************
|
||||
*
|
||||
* TYPE2 DONGLE (CS82-007)
|
||||
* - Mission X
|
||||
* - Disco No 1
|
||||
* - Pro Tennis
|
||||
* - Tornado
|
||||
* - Mission X
|
||||
* - Pro Tennis
|
||||
*
|
||||
***************************************************************************/
|
||||
static READ8_HANDLER( decocass_type2_r )
|
||||
@ -746,17 +746,19 @@ static WRITE8_HANDLER( decocass_type2_w )
|
||||
/***************************************************************************
|
||||
*
|
||||
* TYPE3 DONGLE
|
||||
* - Burger Time
|
||||
* - Bump 'n Jump
|
||||
* - Burnin' Rubber
|
||||
* - Burger Time
|
||||
* - Graplop
|
||||
* - Cluster Buster
|
||||
* - LaPaPa
|
||||
* - Fighting Ice Hockey
|
||||
* - Skater
|
||||
* - Pro Bowling
|
||||
* - Night Star
|
||||
* - Pro Soccer
|
||||
* - Super Doubles Tennis
|
||||
* - Peter Pepper's Ice Cream Factory
|
||||
* - Fighting Ice Hockey
|
||||
*
|
||||
***************************************************************************/
|
||||
static READ8_HANDLER( decocass_type3_r )
|
||||
@ -879,6 +881,17 @@ static READ8_HANDLER( decocass_type3_r )
|
||||
(BIT(save, 6) << 6) |
|
||||
(state->m_type3_d0_latch << 7);
|
||||
break;
|
||||
case TYPE3_SWAP_45:
|
||||
data =
|
||||
state->m_type3_d0_latch |
|
||||
(BIT(save, 1) << 1) |
|
||||
(BIT(save, 2) << 2) |
|
||||
(BIT(save, 3) << 3) |
|
||||
(BIT(save, 5) << 4) |
|
||||
(BIT(save, 4) << 5) |
|
||||
(BIT(save, 6) << 6) |
|
||||
(BIT(save, 7) << 7);
|
||||
break;
|
||||
case TYPE3_SWAP_23_56:
|
||||
data =
|
||||
(state->m_type3_d0_latch << 0) |
|
||||
@ -979,6 +992,7 @@ static WRITE8_HANDLER( decocass_type3_w )
|
||||
*
|
||||
* TYPE4 DONGLE
|
||||
* - Scrum Try
|
||||
* - Oozumou/The Grand Sumo
|
||||
* Contains a 32K (EP)ROM that can be read from any byte
|
||||
* boundary sequentially. The EPROM is enable after writing
|
||||
* 1100xxxx to E5x1 once. Then an address is written LSB
|
||||
@ -1065,7 +1079,7 @@ static WRITE8_HANDLER( decocass_type4_w )
|
||||
|
||||
/***************************************************************************
|
||||
*
|
||||
* TYPE5 DONGLE
|
||||
* TYPE4 DONGLE
|
||||
* - Boulder Dash
|
||||
* Actually a NOP dongle returning 0x55 after triggering a latch
|
||||
* by writing 1100xxxx to E5x1
|
||||
@ -1418,24 +1432,22 @@ MACHINE_RESET( chwy )
|
||||
state->m_dongle_r = decocass_type1_latch_27_pass_3_inv_2_r;
|
||||
}
|
||||
|
||||
MACHINE_RESET( clocknch )
|
||||
MACHINE_RESET( cterrani )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #1 (DE-0061 flip 2-3)\n"));
|
||||
LOG(0,("dongle type #1 (DE-0061 straight)\n"));
|
||||
state->m_dongle_r = decocass_type1_latch_26_pass_3_inv_2_r;
|
||||
state->m_type1_inmap = MAKE_MAP(0,1,3,2,4,5,6,7);
|
||||
state->m_type1_outmap = MAKE_MAP(0,1,3,2,4,5,6,7);
|
||||
state->m_type1_inmap = MAKE_MAP(0,1,2,3,4,5,6,7);
|
||||
state->m_type1_outmap = MAKE_MAP(0,1,2,3,4,5,6,7);
|
||||
}
|
||||
|
||||
MACHINE_RESET( ctisland )
|
||||
MACHINE_RESET( castfant )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #1 (DE-0061 flip 0-2)\n"));
|
||||
state->m_dongle_r = decocass_type1_latch_26_pass_3_inv_2_r;
|
||||
state->m_type1_inmap = MAKE_MAP(2,1,0,3,4,5,6,7);
|
||||
state->m_type1_outmap = MAKE_MAP(2,1,0,3,4,5,6,7);
|
||||
LOG(0,("dongle type #1 (DE-0061)\n"));
|
||||
state->m_dongle_r = decocass_type1_latch_16_pass_3_inv_1_r;
|
||||
}
|
||||
|
||||
MACHINE_RESET( csuperas )
|
||||
@ -1448,40 +1460,14 @@ MACHINE_RESET( csuperas )
|
||||
state->m_type1_outmap = MAKE_MAP(0,1,2,3,5,4,6,7);
|
||||
}
|
||||
|
||||
MACHINE_RESET( castfant )
|
||||
MACHINE_RESET( clocknch )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #1 (DE-0061)\n"));
|
||||
state->m_dongle_r = decocass_type1_latch_16_pass_3_inv_1_r;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cluckypo )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #1 (DE-0061 flip 1-3)\n"));
|
||||
LOG(0,("dongle type #1 (DE-0061 flip 2-3)\n"));
|
||||
state->m_dongle_r = decocass_type1_latch_26_pass_3_inv_2_r;
|
||||
state->m_type1_inmap = MAKE_MAP(0,3,2,1,4,5,6,7);
|
||||
state->m_type1_outmap = MAKE_MAP(0,3,2,1,4,5,6,7);
|
||||
}
|
||||
|
||||
MACHINE_RESET( cterrani )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #1 (DE-0061 straight)\n"));
|
||||
state->m_dongle_r = decocass_type1_latch_26_pass_3_inv_2_r;
|
||||
state->m_type1_inmap = MAKE_MAP(0,1,2,3,4,5,6,7);
|
||||
state->m_type1_outmap = MAKE_MAP(0,1,2,3,4,5,6,7);
|
||||
}
|
||||
|
||||
MACHINE_RESET( cexplore )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #1 (DE-0061 own PROM)\n"));
|
||||
state->m_dongle_r = decocass_type1_latch_26_pass_5_inv_2_r;
|
||||
state->m_type1_inmap = MAKE_MAP(0,1,3,2,4,5,6,7);
|
||||
state->m_type1_outmap = MAKE_MAP(0,1,3,2,4,5,6,7);
|
||||
}
|
||||
|
||||
MACHINE_RESET( cprogolf )
|
||||
@ -1494,13 +1480,32 @@ MACHINE_RESET( cprogolf )
|
||||
state->m_type1_outmap = MAKE_MAP(1,0,2,3,4,5,6,7);
|
||||
}
|
||||
|
||||
MACHINE_RESET( cmissnx )
|
||||
MACHINE_RESET( cluckypo )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #2 (CS82-007)\n"));
|
||||
state->m_dongle_r = decocass_type2_r;
|
||||
state->m_dongle_w = decocass_type2_w;
|
||||
LOG(0,("dongle type #1 (DE-0061 flip 1-3)\n"));
|
||||
state->m_dongle_r = decocass_type1_latch_26_pass_3_inv_2_r;
|
||||
state->m_type1_inmap = MAKE_MAP(0,3,2,1,4,5,6,7);
|
||||
state->m_type1_outmap = MAKE_MAP(0,3,2,1,4,5,6,7);
|
||||
}
|
||||
|
||||
MACHINE_RESET( ctisland )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #1 (DE-0061 flip 0-2)\n"));
|
||||
state->m_dongle_r = decocass_type1_latch_26_pass_3_inv_2_r;
|
||||
state->m_type1_inmap = MAKE_MAP(2,1,0,3,4,5,6,7);
|
||||
state->m_type1_outmap = MAKE_MAP(2,1,0,3,4,5,6,7);
|
||||
}
|
||||
|
||||
MACHINE_RESET( cexplore )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #1 (DE-0061 own PROM)\n"));
|
||||
state->m_dongle_r = decocass_type1_latch_26_pass_5_inv_2_r;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cdiscon1 )
|
||||
@ -1512,15 +1517,6 @@ MACHINE_RESET( cdiscon1 )
|
||||
state->m_dongle_w = decocass_type2_w;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cptennis )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #2 (CS82-007)\n"));
|
||||
state->m_dongle_r = decocass_type2_r;
|
||||
state->m_dongle_w = decocass_type2_w;
|
||||
}
|
||||
|
||||
MACHINE_RESET( ctornado )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
@ -1530,24 +1526,22 @@ MACHINE_RESET( ctornado )
|
||||
state->m_dongle_w = decocass_type2_w;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cbnj )
|
||||
MACHINE_RESET( cmissnx )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #3 (PAL)\n"));
|
||||
state->m_dongle_r = decocass_type3_r;
|
||||
state->m_dongle_w = decocass_type3_w;
|
||||
state->m_type3_swap = TYPE3_SWAP_67;
|
||||
LOG(0,("dongle type #2 (CS82-007)\n"));
|
||||
state->m_dongle_r = decocass_type2_r;
|
||||
state->m_dongle_w = decocass_type2_w;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cburnrub )
|
||||
MACHINE_RESET( cptennis )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #3 (PAL)\n"));
|
||||
state->m_dongle_r = decocass_type3_r;
|
||||
state->m_dongle_w = decocass_type3_w;
|
||||
state->m_type3_swap = TYPE3_SWAP_67;
|
||||
LOG(0,("dongle type #2 (CS82-007)\n"));
|
||||
state->m_dongle_r = decocass_type2_r;
|
||||
state->m_dongle_w = decocass_type2_w;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cbtime )
|
||||
@ -1560,6 +1554,16 @@ MACHINE_RESET( cbtime )
|
||||
state->m_type3_swap = TYPE3_SWAP_12;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cburnrub )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #3 (PAL)\n"));
|
||||
state->m_dongle_r = decocass_type3_r;
|
||||
state->m_dongle_w = decocass_type3_w;
|
||||
state->m_type3_swap = TYPE3_SWAP_67;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cgraplop )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
@ -1590,14 +1594,14 @@ MACHINE_RESET( clapapa )
|
||||
state->m_type3_swap = TYPE3_SWAP_34_7;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cfghtice )
|
||||
MACHINE_RESET( cskater )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #3 (PAL)\n"));
|
||||
state->m_dongle_r = decocass_type3_r;
|
||||
state->m_dongle_w = decocass_type3_w;
|
||||
state->m_type3_swap = TYPE3_SWAP_25;
|
||||
state->m_type3_swap = TYPE3_SWAP_45;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cprobowl )
|
||||
@ -1630,40 +1634,14 @@ MACHINE_RESET( cpsoccer )
|
||||
state->m_type3_swap = TYPE3_SWAP_24;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cppicf )
|
||||
MACHINE_RESET( csdtenis )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #3 (PAL)\n"));
|
||||
state->m_dongle_r = decocass_type3_r;
|
||||
state->m_dongle_w = decocass_type3_w;
|
||||
state->m_type3_swap = TYPE3_SWAP_01;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cscrtry )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #4 (32K ROM)\n"));
|
||||
state->m_dongle_r = decocass_type4_r;
|
||||
state->m_dongle_w = decocass_type4_w;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cbdash )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #5 (NOP)\n"));
|
||||
state->m_dongle_r = decocass_type5_r;
|
||||
state->m_dongle_w = decocass_type5_w;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cflyball )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("no dongle\n"));
|
||||
state->m_dongle_r = decocass_nodong_r;
|
||||
state->m_type3_swap = TYPE3_SWAP_23_56;
|
||||
}
|
||||
|
||||
MACHINE_RESET( czeroize )
|
||||
@ -1690,6 +1668,52 @@ MACHINE_RESET( czeroize )
|
||||
mem[0x08a1] = 0xf7;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cppicf )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #3 (PAL)\n"));
|
||||
state->m_dongle_r = decocass_type3_r;
|
||||
state->m_dongle_w = decocass_type3_w;
|
||||
state->m_type3_swap = TYPE3_SWAP_01;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cfghtice )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #3 (PAL)\n"));
|
||||
state->m_dongle_r = decocass_type3_r;
|
||||
state->m_dongle_w = decocass_type3_w;
|
||||
state->m_type3_swap = TYPE3_SWAP_25;
|
||||
}
|
||||
|
||||
MACHINE_RESET( type4 )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #4 (32K ROM)\n"));
|
||||
state->m_dongle_r = decocass_type4_r;
|
||||
state->m_dongle_w = decocass_type4_w;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cbdash )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("dongle type #5 (NOP)\n"));
|
||||
state->m_dongle_r = decocass_type5_r;
|
||||
state->m_dongle_w = decocass_type5_w;
|
||||
}
|
||||
|
||||
MACHINE_RESET( cflyball )
|
||||
{
|
||||
decocass_state *state = machine.driver_data<decocass_state>();
|
||||
decocass_reset_common(machine);
|
||||
LOG(0,("no dongle\n"));
|
||||
state->m_dongle_r = decocass_nodong_r;
|
||||
}
|
||||
|
||||
/***************************************************************************
|
||||
*
|
||||
* 8041 port handlers
|
||||
|
@ -141,33 +141,34 @@ MACHINE_START( decocass );
|
||||
MACHINE_RESET( decocass );
|
||||
MACHINE_RESET( ctsttape );
|
||||
MACHINE_RESET( chwy );
|
||||
MACHINE_RESET( clocknch );
|
||||
MACHINE_RESET( ctisland );
|
||||
MACHINE_RESET( csuperas );
|
||||
MACHINE_RESET( castfant );
|
||||
MACHINE_RESET( cluckypo );
|
||||
MACHINE_RESET( cterrani );
|
||||
MACHINE_RESET( cexplore );
|
||||
MACHINE_RESET( castfant );
|
||||
MACHINE_RESET( csuperas );
|
||||
MACHINE_RESET( clocknch );
|
||||
MACHINE_RESET( cprogolf );
|
||||
MACHINE_RESET( cmissnx );
|
||||
MACHINE_RESET( cluckypo );
|
||||
MACHINE_RESET( ctisland );
|
||||
MACHINE_RESET( cexplore );
|
||||
MACHINE_RESET( cdiscon1 );
|
||||
MACHINE_RESET( cptennis );
|
||||
MACHINE_RESET( ctornado );
|
||||
MACHINE_RESET( cbnj );
|
||||
MACHINE_RESET( cburnrub );
|
||||
MACHINE_RESET( cmissnx );
|
||||
MACHINE_RESET( cptennis );
|
||||
MACHINE_RESET( cbtime );
|
||||
MACHINE_RESET( cburnrub );
|
||||
MACHINE_RESET( cgraplop );
|
||||
MACHINE_RESET( cgraplop2 );
|
||||
MACHINE_RESET( cskater );
|
||||
MACHINE_RESET( clapapa );
|
||||
MACHINE_RESET( cfghtice );
|
||||
MACHINE_RESET( cprobowl );
|
||||
MACHINE_RESET( cnightst );
|
||||
MACHINE_RESET( cpsoccer );
|
||||
MACHINE_RESET( csdtenis );
|
||||
MACHINE_RESET( czeroize );
|
||||
MACHINE_RESET( cppicf );
|
||||
MACHINE_RESET( cscrtry );
|
||||
MACHINE_RESET( cfghtice );
|
||||
MACHINE_RESET( type4 );
|
||||
MACHINE_RESET( cflyball );
|
||||
MACHINE_RESET( cbdash );
|
||||
MACHINE_RESET( czeroize );
|
||||
|
||||
WRITE8_HANDLER( i8041_p1_w );
|
||||
READ8_HANDLER( i8041_p1_r );
|
||||
|
@ -5220,13 +5220,13 @@ cgraplop // 28 1982.11 Cluster Buster / Graplop
|
||||
cgraplop2 // 28
|
||||
clapapa // 29 1982.11 La-Pa-Pa
|
||||
clapapa2 // 29 Rootin' Tootin' // this one doesn't display lapapa anywhere
|
||||
// 30 1983.03 Skater
|
||||
cskater // 30 1983.03 Skater
|
||||
cprobowl // 31 1983.03 Pro Bowling
|
||||
cnightst // 32 1983.04 Night Star
|
||||
cnightst2 // 32
|
||||
cpsoccer // 33 1982.08 Pro Soccer
|
||||
cpsoccerj // 33 1982.08 Pro Soccer (Japan)
|
||||
// 34 1983.09 Super Doubles Tennis
|
||||
csdtenis // 34 1983.09 Super Doubles Tennis
|
||||
cflyball // 35 1983.?? Flying Ball/Bampoline
|
||||
// 36 1984.04 Genesis/Boomer Rang'r
|
||||
czeroize // 37 1983.10 Zeroize
|
||||
@ -5235,7 +5235,7 @@ cscrtry2 // 38
|
||||
cppicf // 39 1984.02 Peter Pepper's Ice Cream Factory
|
||||
cppicf2 // 39
|
||||
cfghtice // 40 1984.04 Fighting Ice Hockey
|
||||
cgsumo // 41 1984.05 Oozumou/The Grand Sumo
|
||||
coozumou // 41 1984.05 Oozumou/The Grand Sumo
|
||||
// 42 1984.08 Hellow Gateball // not a typo, this is official spelling
|
||||
// 43 1984.08 Yellow Cab
|
||||
cbdash // 44 1985.08 Boulder Dash
|
||||
|
Loading…
Reference in New Issue
Block a user