mirror of
https://github.com/holub/mame
synced 2025-05-09 15:51:48 +03:00
terracre.c: Remove nonexistent second ym2203 from terracren. Remove silly input port hack from horekid [Alex Jackson]
This commit is contained in:
parent
caa9018aed
commit
875f96a858
@ -33,21 +33,19 @@ Stephh's notes (based on the games M68000 code and some tests) :
|
||||
|
||||
- Each high-score name is made up of 3 chars.
|
||||
|
||||
- There is a "debug mode" ! To activate it, you need to have cheats ON.
|
||||
- There is a "debug mode" !
|
||||
Set "Debug Mode" Dip Switch to ON and be sure that "Cabinet" Dip Switch
|
||||
is set to "Upright". Its features (see below) only affect player 1 !
|
||||
Features :
|
||||
* invulnerability and infinite time :
|
||||
. insert a coin
|
||||
. press FAKE button 3 and START1 (player 1 buttons 1 and 2 must NOT be pressed !)
|
||||
. press player 2 button 1 and 2 and START1 (player 1 buttons 1 and 2 must NOT be pressed !)
|
||||
* level select (there are 32 levels) :
|
||||
. insert a coin
|
||||
. press FAKE button 3 ("00" will be displayed - this is an hex. display)
|
||||
. press FAKE button 3 and player 1 button 1 to increase level
|
||||
. press FAKE button 3 and player 1 button 2 to decrease level
|
||||
. press player 2 button 1 and 2 ("00" will be displayed - this is an hex. display)
|
||||
. press player 2 button 1 and 2 and player 1 button 1 to increase level
|
||||
. press player 2 button 1 and 2 and player 1 button 2 to decrease level
|
||||
. press START1 to start a game with the selected level
|
||||
FAKE button 3 is in fact the same as pressing simultaneously player 2 buttons 1 and 2.
|
||||
(I've code this that way because my keyboard doesn't accept too many keys pressed)
|
||||
|
||||
|
||||
|
||||
@ -131,19 +129,6 @@ static const UINT16 mHoreKidProtData[] =
|
||||
0x1800 /* checksum */
|
||||
};
|
||||
|
||||
READ16_MEMBER(terracre_state::horekid_IN2_r)
|
||||
{
|
||||
int data = ioport("IN2")->read();
|
||||
|
||||
if (!(data & 0x40)) // FAKE button 3 for "Debug Mode"
|
||||
{
|
||||
data &= 0x40;
|
||||
data |= ~0x30;
|
||||
}
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(terracre_state::amazon_sound_w)
|
||||
{
|
||||
soundlatch_byte_w(space,0,((data & 0x7f) << 1) | 1);
|
||||
@ -435,7 +420,7 @@ static INPUT_PORTS_START( horekid )
|
||||
PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Flip_Screen ) )
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0xc000, 0xc000, "Debug Mode (Cheat)")
|
||||
PORT_DIPNAME( 0xc000, 0xc000, "Debug Mode" )
|
||||
PORT_DIPSETTING( 0xc000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x8000, DEF_STR( On ) ) // "Cabinet" Dip Switch must be set to "Upright" too !
|
||||
// PORT_DIPSETTING( 0x4000, DEF_STR( Off ) ) // duplicated setting
|
||||
@ -458,7 +443,7 @@ static INPUT_PORTS_START( horekid )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME ("P2 Buttons 1+2 (Debug Cheat)") // fake button for "Debug Mode" (see read handler)
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
|
||||
PORT_START("IN3")
|
||||
@ -622,12 +607,6 @@ static MACHINE_CONFIG_START( ym2203, terracre_state )
|
||||
MCFG_SOUND_ROUTE(2, "mono", 0.20)
|
||||
MCFG_SOUND_ROUTE(3, "mono", 0.40)
|
||||
|
||||
MCFG_SOUND_ADD("ym2", YM2203, XTAL_16MHz/4)
|
||||
MCFG_SOUND_ROUTE(0, "mono", 0.20)
|
||||
MCFG_SOUND_ROUTE(1, "mono", 0.20)
|
||||
MCFG_SOUND_ROUTE(2, "mono", 0.20)
|
||||
MCFG_SOUND_ROUTE(3, "mono", 0.40)
|
||||
|
||||
MCFG_DAC_ADD("dac1")
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
|
||||
@ -1014,7 +993,6 @@ DRIVER_INIT_MEMBER(terracre_state,amatelas)
|
||||
DRIVER_INIT_MEMBER(terracre_state,horekid)
|
||||
{
|
||||
m_mpProtData = mHoreKidProtData;
|
||||
m_maincpu->space(AS_PROGRAM).install_read_handler(0x44004, 0x44005, read16_delegate(FUNC(terracre_state::horekid_IN2_r),this));
|
||||
}
|
||||
|
||||
/* YEAR, NAME, PARENT, MACHINE, INPUT, INIT, MONITOR, COMPANY, FULLNAME, FLAGS */
|
||||
|
@ -19,7 +19,6 @@ public:
|
||||
UINT16 m_yscroll;
|
||||
tilemap_t *m_background;
|
||||
tilemap_t *m_foreground;
|
||||
DECLARE_READ16_MEMBER(horekid_IN2_r);
|
||||
DECLARE_WRITE16_MEMBER(amazon_sound_w);
|
||||
DECLARE_READ8_MEMBER(soundlatch_clear_r);
|
||||
DECLARE_READ16_MEMBER(amazon_protection_r);
|
||||
|
Loading…
Reference in New Issue
Block a user