mirror of
https://github.com/holub/mame
synced 2025-04-25 01:40:16 +03:00
phoenix.cpp: dumped / redumped the PROM for some of the bootlegs [f205]
Also started documenting the differences.
This commit is contained in:
parent
cfda3b1ffd
commit
99be1d93b8
@ -6,13 +6,31 @@ Phoenix hardware games
|
||||
|
||||
driver by Richard Davies
|
||||
|
||||
There are 2 Phoenix board families:
|
||||
* 2 PCBs with 2 50-pin connectors. The 'Main board' hosts the 8085 CPU,
|
||||
the MN6221 sound chip, 2 PROMs, the volume trimmer, 1 bank of 8 dip switches
|
||||
and 3 amplifiers (1x LM380 + 2x LM324), the 'ROMs board' hosts the ROMs,
|
||||
the RAM and the oscillator. This board type is used by the Amstar original
|
||||
and some of the clones, some of which introduce a small PCB for credits'
|
||||
management (with 1 bank of 4 dip switch), while others substitute the MM8221
|
||||
with a piggyback PCB. These clones were manufactured between 1980 and 1981.
|
||||
* Only 1 PCB, and 1 color PROM instead of 2. In most of these bootlegs the LM380
|
||||
isn't present and only the 2 LM324 remain. There are 2 banks of 4 switches
|
||||
and 1 bank of 8, though not all bootlegs have all the banks fitted, probably
|
||||
as a cost cutting measure. For the same reason, not all have the MN6221. These
|
||||
bootlegs were all built in 1981 and are an evolution of the first family,
|
||||
manufactured more cheaply thanks to some reengineering of the circuits.
|
||||
|
||||
Notes:
|
||||
- Discrete sound emulation is in audio/phoenix.c,
|
||||
pleiads is using another sound driver, audio/pleiads.c
|
||||
- Discrete sound emulation is in audio/phoenix.cpp,
|
||||
pleiads is using another sound driver, audio/pleiads.cpp
|
||||
|
||||
|
||||
To Do:
|
||||
|
||||
Phoenix:
|
||||
- Emulate the different sound system used by phoenixc2.
|
||||
- Better documentation of the bootlegs.
|
||||
|
||||
Survival:
|
||||
|
||||
@ -23,7 +41,7 @@ Survival:
|
||||
Pleiads:
|
||||
|
||||
- Palette banking. Controlled by 3 custom chips marked T-X, T-Y and T-Z.
|
||||
These chips are reponsible for the protection as well.
|
||||
These chips are responsible for the protection as well.
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -754,7 +772,15 @@ ROM_START( phoenixc )
|
||||
ROM_LOAD( "mmi6301.ic41", 0x0100, 0x0100, CRC(e176b768) SHA1(e2184dd495ed579f10b6da0b78379e02d7a6229f) ) /* palette high bits */
|
||||
ROM_END
|
||||
|
||||
ROM_START( phoenixc2 )
|
||||
/*
|
||||
main PCB is marked: "PH2"
|
||||
main PCB is labeled: "03814367" and "280402" and "N 132073"
|
||||
ROMs PCB is marked: "PH1"
|
||||
On top of main PCB there is a small piggyback PCB. it is a replacement for MN6221 Melody-Alarm Generator - sound. There are 3 PROMs (dumped) and a few 74xx logics.
|
||||
This board was in a cocktail table cabinet manufactured by Model Racing and labeled "Thunderbird".
|
||||
*/
|
||||
|
||||
ROM_START( phoenixc2 ) // verified main and ROMs PCBs and 2 PROMs
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "phoenix.45", 0x0000, 0x0800, CRC(5b8c55a8) SHA1(839c1ca9766f730ec3accd48db70f6429a9c3362) ) // 01.ic45
|
||||
ROM_LOAD( "phoenix.46", 0x0800, 0x0800, CRC(dbc942fa) SHA1(9fe224e6ced407289dfa571468259a021d942b7d) ) // 01.ic46
|
||||
@ -783,7 +809,7 @@ ROM_START( phoenixc2 )
|
||||
ROM_LOAD( "tbp24sa10n.185.bin", 0x0200, 0x0100, CRC(0a06bd1b) SHA1(8c5debc5502e88af8019266fedcbe4bad1e2e214) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( phoenixc3 )
|
||||
ROM_START( phoenixc3 ) // verified main and ROMs PCBs and 2 PROMs
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "phoenix.45", 0x0000, 0x0800, CRC(5b8c55a8) SHA1(839c1ca9766f730ec3accd48db70f6429a9c3362) )
|
||||
ROM_LOAD( "phoenix.46", 0x0800, 0x0800, CRC(dbc942fa) SHA1(9fe224e6ced407289dfa571468259a021d942b7d) )
|
||||
@ -807,7 +833,12 @@ ROM_START( phoenixc3 )
|
||||
ROM_LOAD( "mmi6301.ic41", 0x0100, 0x0100, CRC(e176b768) SHA1(e2184dd495ed579f10b6da0b78379e02d7a6229f) ) /* palette high bits */
|
||||
ROM_END
|
||||
|
||||
ROM_START( phoenixc4 )
|
||||
/*
|
||||
main PCB is marked: "PX 031081"
|
||||
There is an additional daughter board to handle coins credits; it's clearly an addition made by an operator.
|
||||
*/
|
||||
|
||||
ROM_START( phoenixc4 ) // verified main and ROMs PCBs and 2 PROMs
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "phoenix.45", 0x0000, 0x0800, CRC(5b8c55a8) SHA1(839c1ca9766f730ec3accd48db70f6429a9c3362) )
|
||||
ROM_LOAD( "phoenix.46", 0x0800, 0x0800, CRC(dbc942fa) SHA1(9fe224e6ced407289dfa571468259a021d942b7d) )
|
||||
@ -831,7 +862,7 @@ ROM_START( phoenixc4 )
|
||||
ROM_RELOAD( 0x0000, 0x0100 ) /* the dump had 2 identical proms with different names */
|
||||
ROM_END
|
||||
|
||||
ROM_START( phoenixi )
|
||||
ROM_START( phoenixi ) // verified single PCB, single PROM
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "0201.bin", 0x0000, 0x0800, CRC(c0f73929) SHA1(3cecf8341a5674165d2cae9b22ea5db26a9597de) )
|
||||
ROM_LOAD( "0202.bin", 0x0800, 0x0800, CRC(440d56e8) SHA1(b3147d5416cec8c00c7df40b878b826434121737) )
|
||||
@ -851,7 +882,7 @@ ROM_START( phoenixi )
|
||||
ROM_LOAD( "0212.bin", 0x0800, 0x0800, CRC(eba42f0f) SHA1(378282cb2c4e10c23179ae3c605ae7bf691150f6) )
|
||||
|
||||
ROM_REGION( 0x0200, "proms", 0 )
|
||||
ROM_LOAD( "sn74s471n.bin", 0x0100, 0x0100, CRC(a7d73fba) SHA1(ed7355c8ea86fb14c91dd0b5c5fb048a3c05cdfc) )
|
||||
ROM_LOAD( "sn74s471n.bin", 0x0100, 0x0100, CRC(c68a49bc) SHA1(1a015b89ac0622e73bcebd76cf5132830fe0bfc1) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( condor )
|
||||
@ -878,7 +909,9 @@ ROM_START( condor )
|
||||
ROM_LOAD( "mmi6301.ic41", 0x0100, 0x0100, CRC(e176b768) SHA1(e2184dd495ed579f10b6da0b78379e02d7a6229f) ) /* palette high bits */
|
||||
ROM_END
|
||||
|
||||
ROM_START( condorn )
|
||||
// PCB is marked: "NOVARMATIC" and "13200"
|
||||
|
||||
ROM_START( condorn ) // verified single PCB, single PROM
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "1.bin", 0x0000, 0x0800, CRC(c0f73929) SHA1(3cecf8341a5674165d2cae9b22ea5db26a9597de) )
|
||||
ROM_LOAD( "2.bin", 0x0800, 0x0800, CRC(440d56e8) SHA1(b3147d5416cec8c00c7df40b878b826434121737) )
|
||||
@ -897,9 +930,8 @@ ROM_START( condorn )
|
||||
ROM_LOAD( "a.bin", 0x0000, 0x0800, CRC(cdd5ef12) SHA1(1eb4ff6a0d56640acf0de2d6e7b7070e5b2c90d4) )
|
||||
ROM_LOAD( "b.bin", 0x0800, 0x0800, CRC(eba42f0f) SHA1(378282cb2c4e10c23179ae3c605ae7bf691150f6) )
|
||||
|
||||
ROM_REGION( 0x0200, "proms", 0 ) // not dumped for this set
|
||||
ROM_LOAD( "mmi6301.ic40", 0x0000, 0x0100, CRC(79350b25) SHA1(57411be4c1d89677f7919ae295446da90612c8a8) ) /* palette low bits */
|
||||
ROM_LOAD( "mmi6301.ic41", 0x0100, 0x0100, CRC(e176b768) SHA1(e2184dd495ed579f10b6da0b78379e02d7a6229f) ) /* palette high bits */
|
||||
ROM_REGION( 0x0200, "proms", 0 )
|
||||
ROM_LOAD( "sn74s471n.bin", 0x0100, 0x0100, CRC(c68a49bc) SHA1(1a015b89ac0622e73bcebd76cf5132830fe0bfc1) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( falcon )
|
||||
@ -1021,7 +1053,12 @@ ROM_START( vautourz )
|
||||
ROM_LOAD( "mmi6301.ic41", 0x0100, 0x0100, CRC(e176b768) SHA1(e2184dd495ed579f10b6da0b78379e02d7a6229f) ) /* palette high bits */
|
||||
ROM_END
|
||||
|
||||
ROM_START( fenix )
|
||||
/*
|
||||
PCB is marked: "ORIO/G"
|
||||
PCB is labeled: "FONECHIS"
|
||||
*/
|
||||
|
||||
ROM_START( fenix ) // verified single PCB, single PROM
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "0.1e", 0x0000, 0x0800, NO_DUMP ) // socket at location '1e' is empty.
|
||||
ROM_LOAD( "1.1f", 0x0800, 0x0800, CRC(3699b11a) SHA1(7122685cbfcd75898eaa68f8c5bf87c11df59a3b) ) // 1.1f
|
||||
@ -1120,7 +1157,11 @@ ROM_START( avefenixl )
|
||||
ROM_LOAD( "mmi6301.ic41", 0x0100, 0x0100, CRC(e176b768) SHA1(e2184dd495ed579f10b6da0b78379e02d7a6229f) ) /* palette high bits */
|
||||
ROM_END
|
||||
|
||||
ROM_START( griffon )
|
||||
/*
|
||||
PCB is marked: "003 LATO A" on component side and "003 LATO B" on solder side. (In Italian "lato" means "side")
|
||||
*/
|
||||
|
||||
ROM_START( griffon ) // verified single PCB, single PROM
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "griffon0.a5", 0x0000, 0x0800, CRC(c0f73929) SHA1(3cecf8341a5674165d2cae9b22ea5db26a9597de) )
|
||||
ROM_LOAD( "griffon1.a6", 0x0800, 0x0800, CRC(3cc33e4a) SHA1(45d16334f245cc185e18f63062e08627e9bd06bb) )
|
||||
@ -1140,8 +1181,7 @@ ROM_START( griffon )
|
||||
ROM_LOAD( "griffon.d8", 0x0800, 0x0800, CRC(eba42f0f) SHA1(378282cb2c4e10c23179ae3c605ae7bf691150f6) )
|
||||
|
||||
ROM_REGION( 0x0200, "proms", 0 )
|
||||
ROM_LOAD( "mmi6301.ic40", 0x0000, 0x0100, CRC(79350b25) SHA1(57411be4c1d89677f7919ae295446da90612c8a8) ) /* palette low bits */
|
||||
ROM_LOAD( "mmi6301.ic41", 0x0100, 0x0100, CRC(e176b768) SHA1(e2184dd495ed579f10b6da0b78379e02d7a6229f) ) /* palette high bits */
|
||||
ROM_LOAD( "sn74s471n.bin", 0x0100, 0x0100, CRC(c68a49bc) SHA1(1a015b89ac0622e73bcebd76cf5132830fe0bfc1) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( nextfase )
|
||||
@ -1438,15 +1478,15 @@ ROM_START( survival )
|
||||
ROM_END
|
||||
|
||||
|
||||
DRIVER_INIT_MEMBER(phoenix_state,condor)
|
||||
DRIVER_INIT_MEMBER(phoenix_state, coindsw)
|
||||
{
|
||||
/* additional inputs for coinage */
|
||||
m_maincpu->space(AS_PROGRAM).install_read_port(0x5000, 0x5000, "DSW1");
|
||||
}
|
||||
|
||||
DRIVER_INIT_MEMBER(phoenix_state,vautourza)
|
||||
DRIVER_INIT_MEMBER(phoenix_state, oneprom)
|
||||
{
|
||||
uint8_t *rgn = memregion("proms")->base();
|
||||
uint8_t *rgn = memregion("proms")->base();
|
||||
|
||||
// expand the 8-bit PROM into the same layout as the 4-bit PROMs used by most versions of the game
|
||||
for (int i = 0; i < 0x100; i++)
|
||||
@ -1456,50 +1496,58 @@ DRIVER_INIT_MEMBER(phoenix_state,vautourza)
|
||||
}
|
||||
}
|
||||
|
||||
/*** Phoenix (& clones) ***/
|
||||
GAME( 1980, phoenix, 0, phoenix, phoenix, driver_device, 0, ROT90, "Amstar", "Phoenix (Amstar, set 1)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenix2, phoenix, phoenix, phoenix, driver_device, 0, ROT90, "Amstar", "Phoenix (Amstar, set 2)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenixa, phoenix, phoenix, phoenixa, driver_device, 0, ROT90, "Amstar (Centuri license)", "Phoenix (Centuri, set 1)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenixb, phoenix, phoenix, phoenixa, driver_device, 0, ROT90, "Amstar (Centuri license)", "Phoenix (Centuri, set 2)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenixt, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "Amstar (Taito license)", "Phoenix (Taito)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenixj, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "Amstar (Taito Japan license)", "Phoenix (Taito Japan)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenix3, phoenix, phoenix, phoenix3, driver_device, 0, ROT90, "bootleg (T.P.N.)", "Phoenix (T.P.N. bootleg)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenixdal,phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg (D&L)", "Phoenix (D&L bootleg)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, phoenixc, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg? (Irecsa / G.G.I Corp)", "Phoenix (Irecsa / G.G.I Corp, set 1)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, phoenixc2,phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg? (Irecsa / G.G.I Corp)", "Phoenix (Irecsa / G.G.I Corp, set 2)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, phoenixc3,phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg? (Irecsa / G.G.I Corp)", "Phoenix (Irecsa / G.G.I Corp, set 3)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, phoenixc4,phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg? (Irecsa / G.G.I Corp)", "Phoenix (Irecsa / G.G.I Corp, set 4)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, phoenixi, phoenix, condor, condor, phoenix_state, condor, ROT90, "bootleg (IDI)", "Phoenix (IDI bootleg)", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) // Needs correct color PROM decode
|
||||
GAME( 1981, condor, phoenix, condor, condor, phoenix_state, condor, ROT90, "bootleg (Sidam)", "Condor (Sidam bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, condorn, phoenix, condor, condor, phoenix_state, condor, ROT90, "bootleg (S C Novar)", "Condor (S C Novar bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE )
|
||||
// the following 2 were common bootlegs in england & france respectively
|
||||
GAME( 1980, falcon, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg (BGV Ltd.)", "Falcon (bootleg of Phoenix) (8085A CPU)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, vautour, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg (Jeutel)", "Vautour (bootleg of Phoenix) (8085A CPU)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, falconz, phoenix, condor, falconz, driver_device, 0, ROT90, "bootleg", "Falcon (bootleg of Phoenix) (Z80 CPU)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, vautourz, phoenix, condor, condor, phoenix_state, condor, ROT90, "bootleg", "Vautour (bootleg of Phoenix) (Z80 CPU)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, vautourza,phoenix, condor , phoenixt,phoenix_state, vautourza,ROT90, "bootleg (Jeutel)", "Vautour (bootleg of Phoenix) (Z80 CPU, single PROM)", MACHINE_SUPPORTS_SAVE )
|
||||
DRIVER_INIT_MEMBER(phoenix_state, oneprom_coindsw)
|
||||
{
|
||||
DRIVER_INIT_CALL(coindsw);
|
||||
|
||||
// fenix is an italian bootleg based on vautourz
|
||||
GAME( 1980, fenix, phoenix, condor, condor, phoenix_state, condor, ROT90, "bootleg", "Fenix (bootleg of Phoenix)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, griffon, phoenix, condor, condor, phoenix_state, condor, ROT90, "bootleg (Videotron)", "Griffon (bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE )
|
||||
// nextfase is a spanish bootleg
|
||||
GAME( 1981, nextfase, phoenix, phoenix, nextfase, driver_device, 0, ROT90, "bootleg (Petaco S.A.)", "Next Fase (bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE )
|
||||
// as is this
|
||||
GAME( 1981, phoenixs, phoenix, phoenix, phoenix, driver_device, 0, ROT90, "bootleg (Sonic)", "Phoenix (Sonic, Spanish bootleg)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, phoenixass,phoenix, phoenix, phoenix, driver_device, 0, ROT90, "bootleg (Assa)", "Phoenix (Assa, Spanish bootleg)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, avefenix, phoenix, phoenix, phoenix, driver_device, 0, ROT90, "bootleg (Video Game)", "Ave Fenix (Electrogame, Spanish bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE ) // Electrogame (Barcelona) made the dedicated cabinet and is likely the real manufacturer, ingame shows 'Video Game'
|
||||
GAME( 1981, avefenixrf,phoenix, phoenix, phoenix, driver_device, 0, ROT90, "bootleg (Recreativos Franco S.A.)", "Ave Fenix (Recreativos Franco, Spanish bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, avefenixl,phoenix, phoenix, phoenix, driver_device, 0, ROT90, "bootleg (Laguna)", "Ave Fenix (Laguna, Spanish bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE )
|
||||
DRIVER_INIT_CALL(oneprom);
|
||||
}
|
||||
|
||||
/*** Pleiads (& clones) ***/
|
||||
GAME( 1981, pleiads, 0, pleiads, pleiads, driver_device, 0, ROT90, "Tehkan", "Pleiads (Tehkan)", MACHINE_IMPERFECT_COLORS )
|
||||
GAME( 1981, pleiadsb2,pleiads, pleiads, pleiads, driver_device, 0, ROT90, "bootleg (ESG)", "Pleiads (bootleg set 2)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, pleiadbl, pleiads, pleiads, pleiadbl, driver_device, 0, ROT90, "bootleg", "Pleiads (bootleg set 1)", MACHINE_IMPERFECT_COLORS )
|
||||
GAME( 1981, pleiadce, pleiads, pleiads, pleiadce, driver_device, 0, ROT90, "Tehkan (Centuri license)", "Pleiads (Centuri)", MACHINE_IMPERFECT_COLORS )
|
||||
GAME( 1981, pleiadsi, pleiads, pleiads, pleiadce, driver_device, 0, ROT90, "bootleg? (Irecsa)", "Pleiads (Irecsa)", MACHINE_IMPERFECT_COLORS ) // possibly licensed, but some of the roms match the bootlegs
|
||||
GAME( 1981, pleiadsn, pleiads, phoenix, pleiadce, driver_device, 0, ROT90, "Niemer S.A.", "Pleiads (Niemer S.A.)", MACHINE_IMPERFECT_COLORS ) // possibly licensed, but some of the roms match the bootlegs
|
||||
GAME( 1981, pleiadss, pleiads, phoenix, pleiadce, driver_device, 0, ROT90, "bootleg", "Pleiads (Spanish bootleg)", MACHINE_SUPPORTS_SAVE ) // colours match PCB (but are ugly)
|
||||
GAME( 1981, capitol, pleiads, phoenix, capitol, driver_device, 0, ROT90, "bootleg? (Universal Video Spiel)", "Capitol", MACHINE_IMPERFECT_COLORS )
|
||||
|
||||
/*** Others ***/
|
||||
GAME( 1982, survival, 0, survival, survival, driver_device, 0, ROT90, "Rock-Ola", "Survival", MACHINE_IMPERFECT_COLORS )
|
||||
/*** Phoenix (& clones) ***/
|
||||
GAME( 1980, phoenix, 0, phoenix, phoenix, driver_device, 0, ROT90, "Amstar", "Phoenix (Amstar, set 1)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenix2, phoenix, phoenix, phoenix, driver_device, 0, ROT90, "Amstar", "Phoenix (Amstar, set 2)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenixa, phoenix, phoenix, phoenixa, driver_device, 0, ROT90, "Amstar (Centuri license)", "Phoenix (Centuri, set 1)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenixb, phoenix, phoenix, phoenixa, driver_device, 0, ROT90, "Amstar (Centuri license)", "Phoenix (Centuri, set 2)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenixt, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "Amstar (Taito license)", "Phoenix (Taito)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenixj, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "Amstar (Taito Japan license)", "Phoenix (Taito Japan)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenix3, phoenix, phoenix, phoenix3, driver_device, 0, ROT90, "bootleg (T.P.N.)", "Phoenix (T.P.N. bootleg)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, phoenixdal, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg (D&L)", "Phoenix (D&L bootleg)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, phoenixc, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg? (Irecsa / G.G.I Corp)", "Phoenix (Irecsa / G.G.I Corp, set 1)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, phoenixc2, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg? (Irecsa / G.G.I Corp)", "Phoenix (Irecsa / G.G.I Corp, set 2)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, phoenixc3, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg? (Irecsa / G.G.I Corp)", "Phoenix (Irecsa / G.G.I Corp, set 3)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, phoenixc4, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg? (Irecsa / G.G.I Corp)", "Phoenix (Irecsa / G.G.I Corp, set 4)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, phoenixi, phoenix, condor, condor, phoenix_state, oneprom_coindsw, ROT90, "bootleg (IDI)", "Phoenix (IDI bootleg)", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) // Needs correct color PROM decode
|
||||
GAME( 1981, condor, phoenix, condor, condor, phoenix_state, coindsw, ROT90, "bootleg (Sidam)", "Condor (Sidam bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, condorn, phoenix, condor, condor, phoenix_state, oneprom_coindsw, ROT90, "bootleg (S C Novar)", "Condor (S C Novar bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE )
|
||||
// the following 2 were common bootlegs in England & France respectively
|
||||
GAME( 1980, falcon, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg", "Falcon (bootleg of Phoenix) (8085A CPU)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, vautour, phoenix, phoenix, phoenixt, driver_device, 0, ROT90, "bootleg (Jeutel)", "Vautour (bootleg of Phoenix) (8085A CPU)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, falconz, phoenix, condor, falconz, driver_device, 0, ROT90, "bootleg (Digimatic)", "Falcon (bootleg of Phoenix) (Z80 CPU)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, vautourz, phoenix, condor, condor, phoenix_state, coindsw, ROT90, "bootleg", "Vautour (bootleg of Phoenix) (Z80 CPU)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, vautourza, phoenix, condor , phoenixt, phoenix_state, oneprom, ROT90, "bootleg (Jeutel)", "Vautour (bootleg of Phoenix) (Z80 CPU, single PROM)", MACHINE_SUPPORTS_SAVE )
|
||||
|
||||
// fenix is an Italian bootleg based on vautourz
|
||||
GAME( 1980, fenix, phoenix, condor, condor, phoenix_state, oneprom_coindsw, ROT90, "bootleg (Orio)", "Fenix (bootleg of Phoenix)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, griffon, phoenix, condor, condor, phoenix_state, oneprom_coindsw, ROT90, "bootleg (Videotron)", "Griffon (bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE )
|
||||
// nextfase is a Spanish bootleg
|
||||
GAME( 1981, nextfase, phoenix, phoenix, nextfase, driver_device, 0, ROT90, "bootleg (Petaco S.A.)", "Next Fase (bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE )
|
||||
// as is this
|
||||
GAME( 1981, phoenixs, phoenix, phoenix, phoenix, driver_device, 0, ROT90, "bootleg (Sonic)", "Phoenix (Sonic, Spanish bootleg)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, phoenixass, phoenix, phoenix, phoenix, driver_device, 0, ROT90, "bootleg (Assa)", "Phoenix (Assa, Spanish bootleg)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, avefenix, phoenix, phoenix, phoenix, driver_device, 0, ROT90, "bootleg (Video Game)", "Ave Fenix (Electrogame, Spanish bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE ) // Electrogame (Barcelona) made the dedicated cabinet and is likely the real manufacturer, ingame shows 'Video Game'
|
||||
GAME( 1980, avefenixrf, phoenix, phoenix, phoenix, driver_device, 0, ROT90, "bootleg (Recreativos Franco S.A.)", "Ave Fenix (Recreativos Franco, Spanish bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1980, avefenixl, phoenix, phoenix, phoenix, driver_device, 0, ROT90, "bootleg (Laguna)", "Ave Fenix (Laguna, Spanish bootleg of Phoenix)", MACHINE_SUPPORTS_SAVE )
|
||||
|
||||
/*** Pleiads (& clones) ***/
|
||||
GAME( 1981, pleiads, 0, pleiads, pleiads, driver_device, 0, ROT90, "Tehkan", "Pleiads (Tehkan)", MACHINE_IMPERFECT_COLORS )
|
||||
GAME( 1981, pleiadsb2, pleiads, pleiads, pleiads, driver_device, 0, ROT90, "bootleg (ESG)", "Pleiads (bootleg set 2)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1981, pleiadbl, pleiads, pleiads, pleiadbl, driver_device, 0, ROT90, "bootleg", "Pleiads (bootleg set 1)", MACHINE_IMPERFECT_COLORS )
|
||||
GAME( 1981, pleiadce, pleiads, pleiads, pleiadce, driver_device, 0, ROT90, "Tehkan (Centuri license)", "Pleiads (Centuri)", MACHINE_IMPERFECT_COLORS )
|
||||
GAME( 1981, pleiadsi, pleiads, pleiads, pleiadce, driver_device, 0, ROT90, "bootleg? (Irecsa)", "Pleiads (Irecsa)", MACHINE_IMPERFECT_COLORS ) // possibly licensed, but some of the roms match the bootlegs
|
||||
GAME( 1981, pleiadsn, pleiads, phoenix, pleiadce, driver_device, 0, ROT90, "Niemer S.A.", "Pleiads (Niemer S.A.)", MACHINE_IMPERFECT_COLORS ) // possibly licensed, but some of the roms match the bootlegs
|
||||
GAME( 1981, pleiadss, pleiads, phoenix, pleiadce, driver_device, 0, ROT90, "bootleg", "Pleiads (Spanish bootleg)", MACHINE_SUPPORTS_SAVE ) // colours match PCB (but are ugly)
|
||||
GAME( 1981, capitol, pleiads, phoenix, capitol, driver_device, 0, ROT90, "bootleg? (Universal Video Spiel)", "Capitol", MACHINE_IMPERFECT_COLORS )
|
||||
|
||||
/*** Others ***/
|
||||
GAME( 1982, survival, 0, survival, survival, driver_device, 0, ROT90, "Rock-Ola", "Survival", MACHINE_IMPERFECT_COLORS )
|
||||
|
@ -34,8 +34,9 @@ public:
|
||||
DECLARE_READ8_MEMBER(survival_input_port_0_r);
|
||||
DECLARE_CUSTOM_INPUT_MEMBER(player_input_r);
|
||||
DECLARE_CUSTOM_INPUT_MEMBER(pleiads_protection_r);
|
||||
DECLARE_DRIVER_INIT(condor);
|
||||
DECLARE_DRIVER_INIT(vautourza);
|
||||
DECLARE_DRIVER_INIT(oneprom);
|
||||
DECLARE_DRIVER_INIT(coindsw);
|
||||
DECLARE_DRIVER_INIT(oneprom_coindsw);
|
||||
TILE_GET_INFO_MEMBER(get_fg_tile_info);
|
||||
TILE_GET_INFO_MEMBER(get_bg_tile_info);
|
||||
DECLARE_MACHINE_RESET(phoenix);
|
||||
|
@ -2,7 +2,7 @@
|
||||
// copyright-holders:Richard Davies
|
||||
/***************************************************************************
|
||||
|
||||
video.c
|
||||
phoenix.cpp
|
||||
|
||||
Functions to emulate the video hardware of the machine.
|
||||
|
||||
@ -273,7 +273,7 @@ WRITE8_MEMBER(phoenix_state::pleiads_videoreg_w)
|
||||
|
||||
/* the palette table is at $0420-$042f and is set by $06bc.
|
||||
Four palette changes by level. The palette selection is
|
||||
wrong, but the same paletter is used for both layers. */
|
||||
wrong, but the same palette is used for both layers. */
|
||||
|
||||
if (m_palette_bank != ((data >> 1) & 3))
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user