mirror of
https://github.com/holub/mame
synced 2025-04-23 08:49:55 +03:00
New working clone
-------------------------- Troopy (bootleg of Mr. Kougar) [MikeMcBike]
This commit is contained in:
parent
7e68f2440a
commit
852af52806
@ -962,7 +962,7 @@ static INPUT_PORTS_START( cavelon )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* protection check? */
|
||||
INPUT_PORTS_END
|
||||
|
||||
/* Same as 'mimonkey' (scobra.c driver) */
|
||||
/* Same as 'mimonkey' (scobra.cpp driver) */
|
||||
static INPUT_PORTS_START( mimonscr )
|
||||
PORT_START("IN0")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
|
||||
@ -1394,24 +1394,6 @@ static MACHINE_CONFIG_DERIVED( newsin7, scramble )
|
||||
MCFG_VIDEO_START_OVERRIDE(scramble_state,newsin7)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( mrkougar, scramble )
|
||||
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_PROGRAM_MAP(mrkougar_map)
|
||||
|
||||
MCFG_DEVICE_REMOVE("ppi8255_1")
|
||||
MCFG_DEVICE_ADD("ppi8255_1", I8255A, 0)
|
||||
MCFG_I8255_OUT_PORTA_CB(DEVWRITE8("soundlatch", generic_latch_8_device, write))
|
||||
MCFG_I8255_OUT_PORTB_CB(WRITE8(scramble_state, mrkougar_sh_irqtrigger_w))
|
||||
|
||||
/* video hardware */
|
||||
MCFG_GFXDECODE_MODIFY("gfxdecode", mrkougar)
|
||||
MCFG_PALETTE_MODIFY("palette")
|
||||
MCFG_PALETTE_ENTRIES(32+64+2+0) /* 32 for characters, 64 for stars, 2 for bullets, 0/1 for background */
|
||||
MCFG_PALETTE_INIT_OWNER(scramble_state,galaxold)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( mrkougb, scramble )
|
||||
|
||||
/* basic machine hardware */
|
||||
@ -1429,6 +1411,12 @@ static MACHINE_CONFIG_DERIVED( mrkougb, scramble )
|
||||
MCFG_PALETTE_INIT_OWNER(scramble_state,galaxold)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( mrkougar, mrkougb )
|
||||
|
||||
/* video hardware */
|
||||
MCFG_GFXDECODE_MODIFY("gfxdecode", mrkougar)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( ckongs, scramble )
|
||||
|
||||
/* basic machine hardware */
|
||||
@ -1969,6 +1957,25 @@ ROM_START( mrkougb2 )
|
||||
ROM_LOAD( "atw-prom.bin", 0x0000, 0x0020, CRC(c65db188) SHA1(90f0a5f22bb761693ab5895da08b20821e79ba65) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( troopy )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "ic2cb.bin", 0x0000, 0x1000, CRC(a1798961) SHA1(45a1f6183016229fced3b459c95c99d83408151a) )
|
||||
ROM_LOAD( "ic2eb.bin", 0x1000, 0x1000, CRC(7f3572f9) SHA1(2f89f743a32378ed4ac4184627ed9be007c3334a) )
|
||||
ROM_LOAD( "ic2fb.bin", 0x2000, 0x1000, CRC(42e666fd) SHA1(caa6a2b07098ef1d6203309ddd3a591194b4ac70) )
|
||||
|
||||
ROM_REGION( 0x10000, "audiocpu", 0 )
|
||||
ROM_LOAD( "ic5c.bin", 0x0000, 0x1000, CRC(af42a371) SHA1(edacbb29df34fdf400a5c726d851af1479a34c70) )
|
||||
ROM_LOAD( "ic5d.bin", 0x1000, 0x1000, CRC(862b8902) SHA1(91dcbc634f7c7ed78dfbd0be5cf1e0631429cfbf) )
|
||||
ROM_LOAD( "ic5e.bin", 0x2000, 0x1000, CRC(a0396cc8) SHA1(c8266b58b144a4bc564f3a2503d5b953c0ba6ca7) )
|
||||
|
||||
ROM_REGION( 0x1000, "gfx1", 0 )
|
||||
ROM_LOAD( "ic5h_neu.bin", 0x0000, 0x0800, CRC(0f4a2394) SHA1(a6c309ca6afa59fbe6549d6fd282902f018a1a48) )
|
||||
ROM_LOAD( "ic5f_neu.bin", 0x0800, 0x0800, CRC(cbbfefc2) SHA1(2378949275b8d3fc69551b00d9b2c654b91fd780) )
|
||||
|
||||
ROM_REGION( 0x0020, "proms", 0 )
|
||||
ROM_LOAD( "82s123", 0x0000, 0x0020, CRC(4e3caeab) SHA1(a25083c3e36d28afdefe4af6e6d4f3155e303625) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( hotshock )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "0d.l10", 0x0000, 0x1000, CRC(3e8aeaeb) SHA1(0572623928d36d106c9d8028d92fbd02375291a5) )
|
||||
@ -2204,7 +2211,7 @@ ROM_START( ad2083 )
|
||||
ROM_END
|
||||
|
||||
|
||||
ROM_START( harem ) /* Main PCB version simular to Scorpion (also developed by I.G.R), sound PCB is identical to Scorpion */
|
||||
ROM_START( harem ) /* Main PCB version similar to Scorpion (also developed by I.G.R), sound PCB is identical to Scorpion */
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "harem_prom0.ic85", 0x0000, 0x2000, CRC(4521b753) SHA1(9033f9c3be8fec1e5ff251e9f60faaf3848a1a1e) )
|
||||
ROM_LOAD( "harem_prom1.ic87", 0x8000, 0x2000, CRC(3cc5d1e8) SHA1(827e2d20de2a00ec016ead249ed3afdccd0c856c) ) // encrypted
|
||||
@ -2213,7 +2220,7 @@ ROM_START( harem ) /* Main PCB version simular to Scorpion (also developed by I.
|
||||
ROM_LOAD( "harem_sound1.ic12", 0x0000, 0x2000, CRC(b54799dd) SHA1(b6aeb010257cba48a52afd33b4f8031c7d99550c) )
|
||||
ROM_LOAD( "harem_sound2.ic13", 0x2000, 0x1000, CRC(2d5573a4) SHA1(1fdcd99d89e078509634742b2116a35bb199fe4b) )
|
||||
|
||||
ROM_REGION( 0x2000, "digitalker", 0 ) // DigiTalker ROM (same exact sound PCB as Scorpion (galaxian.c))
|
||||
ROM_REGION( 0x2000, "digitalker", 0 ) // DigiTalker ROM (same exact sound PCB as Scorpion (galaxian.cpp))
|
||||
ROM_LOAD( "harem_h1+h2.ic25", 0x0000, 0x2000, CRC(279f923a) SHA1(166b1b625997766f0de7cc18af52c42268022fcb) )
|
||||
|
||||
ROM_REGION( 0x4000, "gfx1", 0 )
|
||||
@ -2245,8 +2252,9 @@ GAME( 1982, newsin7a, newsin7, newsin7, newsin7, scramble_state, newsin7a,
|
||||
|
||||
GAME( 1984, mrkougar, 0, mrkougar, mrkougar, scramble_state, mrkougar, ROT90, "ATW", "Mr. Kougar", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1983, mrkougar2,mrkougar, mrkougar, mrkougar, scramble_state, mrkougar, ROT90, "ATW", "Mr. Kougar (earlier)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1983, mrkougb, mrkougar, mrkougb, mrkougar, scramble_state, mrkougb, ROT90, "bootleg", "Mr. Kougar (bootleg set 1)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1983, mrkougb2, mrkougar, mrkougb, mrkougar, scramble_state, mrkougb, ROT90, "bootleg", "Mr. Kougar (bootleg set 2)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1984, mrkougb, mrkougar, mrkougb, mrkougar, scramble_state, 0, ROT90, "bootleg (Gross)", "Mr. Kougar (German bootleg)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1983, mrkougb2, mrkougar, mrkougb, mrkougar, scramble_state, 0, ROT90, "bootleg", "Mr. Kougar (bootleg)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1984, troopy, mrkougar, mrkougb, mrkougar, scramble_state, mrkougar, ROT90, "bootleg", "Troopy (bootleg of Mr. Kougar)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) // wrong loading / decoding or bad GFX ROMs?
|
||||
|
||||
GAME( 1982, hotshock, 0, hotshock, hotshock, scramble_state, hotshock, ROT90, "E.G. Felaco (Domino license)", "Hot Shocker", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1982, hotshockb,hotshock, hotshock, hotshock, scramble_state, hotshock, ROT90, "E.G. Felaco", "Hot Shocker (early revision?)", MACHINE_SUPPORTS_SAVE ) // has "Dudley presents" (protagonist of the game), instead of Domino
|
||||
|
@ -30,16 +30,6 @@ public:
|
||||
optional_device<digitalker_device> m_digitalker;
|
||||
required_device<generic_latch_8_device> m_soundlatch;
|
||||
|
||||
uint8_t m_cavelon_bank;
|
||||
|
||||
// harem
|
||||
uint8_t m_harem_decrypt_mode;
|
||||
uint8_t m_harem_decrypt_bit;
|
||||
uint8_t m_harem_decrypt_clk;
|
||||
uint8_t m_harem_decrypt_count;
|
||||
std::unique_ptr<uint8_t[]> m_harem_decrypted_data;
|
||||
std::unique_ptr<uint8_t[]> m_harem_decrypted_opcodes;
|
||||
|
||||
DECLARE_CUSTOM_INPUT_MEMBER(darkplnt_custom_r);
|
||||
DECLARE_CUSTOM_INPUT_MEMBER(ckongs_coinage_r);
|
||||
DECLARE_READ8_MEMBER(hncholms_prot_r);
|
||||
@ -66,7 +56,6 @@ public:
|
||||
|
||||
DECLARE_DRIVER_INIT(cavelon);
|
||||
DECLARE_DRIVER_INIT(mariner);
|
||||
DECLARE_DRIVER_INIT(mrkougb);
|
||||
DECLARE_DRIVER_INIT(scramble_ppi);
|
||||
DECLARE_DRIVER_INIT(mars);
|
||||
DECLARE_DRIVER_INIT(ckongs);
|
||||
@ -92,8 +81,6 @@ public:
|
||||
DECLARE_MACHINE_RESET(scramble);
|
||||
DECLARE_MACHINE_RESET(explorer);
|
||||
DECLARE_WRITE_LINE_MEMBER(scramble_sh_7474_q_callback);
|
||||
void cavelon_banksw();
|
||||
inline int bit(int i,int n);
|
||||
DECLARE_READ8_MEMBER( mariner_protection_1_r );
|
||||
DECLARE_READ8_MEMBER( mariner_protection_2_r );
|
||||
DECLARE_READ8_MEMBER( triplep_pip_r );
|
||||
@ -102,12 +89,26 @@ public:
|
||||
DECLARE_WRITE8_MEMBER( cavelon_banksw_w );
|
||||
DECLARE_READ8_MEMBER( hunchbks_mirror_r );
|
||||
DECLARE_WRITE8_MEMBER( hunchbks_mirror_w );
|
||||
void sh_init();
|
||||
DECLARE_WRITE8_MEMBER( scramble_sh_irqtrigger_w );
|
||||
DECLARE_WRITE8_MEMBER( mrkougar_sh_irqtrigger_w );
|
||||
IRQ_CALLBACK_MEMBER( scramble_sh_irq_callback );
|
||||
|
||||
private:
|
||||
void cavelon_banksw();
|
||||
inline int bit(int i,int n);
|
||||
void sh_init();
|
||||
|
||||
uint8_t m_cavelon_bank;
|
||||
|
||||
// harem
|
||||
uint8_t m_harem_decrypt_mode;
|
||||
uint8_t m_harem_decrypt_bit;
|
||||
uint8_t m_harem_decrypt_clk;
|
||||
uint8_t m_harem_decrypt_count;
|
||||
std::unique_ptr<uint8_t[]> m_harem_decrypted_data;
|
||||
std::unique_ptr<uint8_t[]> m_harem_decrypted_opcodes;
|
||||
};
|
||||
|
||||
/*----------- defined in audio/scramble.c -----------*/
|
||||
/*----------- defined in audio/scramble.cpp -----------*/
|
||||
|
||||
MACHINE_CONFIG_EXTERN( ad2083_audio );
|
||||
|
@ -2,7 +2,7 @@
|
||||
// copyright-holders:Nicola Salmoria
|
||||
/***************************************************************************
|
||||
|
||||
machine.c
|
||||
machine/scramble.cpp
|
||||
|
||||
Functions to emulate general aspects of the machine (RAM, ROM, interrupts,
|
||||
I/O ports)
|
||||
@ -571,10 +571,6 @@ DRIVER_INIT_MEMBER(scramble_state,mrkougar)
|
||||
DRIVER_INIT_CALL(devilfsh);
|
||||
}
|
||||
|
||||
DRIVER_INIT_MEMBER(scramble_state,mrkougb)
|
||||
{
|
||||
}
|
||||
|
||||
DRIVER_INIT_MEMBER(scramble_state,ad2083)
|
||||
{
|
||||
uint8_t c;
|
||||
|
@ -33176,6 +33176,7 @@ newsin7 // (c) 1983 ATW USA, Inc.
|
||||
newsin7a // (c) 1982 ATW USA, Inc.
|
||||
triplep // (c) 1982 KKI / made by Sanritsu?
|
||||
triplepa // (c) 1982 KKI / made by Sanritsu?
|
||||
troopy // bootleg
|
||||
|
||||
@source:scregg.cpp
|
||||
dommy // TA-00?? (c) 1983 (Arcade TV Game List - P.90, Left, 13 from top)
|
||||
|
Loading…
Reference in New Issue
Block a user