mirror of
https://github.com/holub/mame
synced 2025-05-11 08:38:47 +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.
|
- 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
|
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 !
|
is set to "Upright". Its features (see below) only affect player 1 !
|
||||||
Features :
|
Features :
|
||||||
* invulnerability and infinite time :
|
* invulnerability and infinite time :
|
||||||
. insert a coin
|
. 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) :
|
* level select (there are 32 levels) :
|
||||||
. insert a coin
|
. insert a coin
|
||||||
. press FAKE button 3 ("00" will be displayed - this is an hex. display)
|
. press player 2 button 1 and 2 ("00" will be displayed - this is an hex. display)
|
||||||
. press FAKE button 3 and player 1 button 1 to increase level
|
. press player 2 button 1 and 2 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 and player 1 button 2 to decrease level
|
||||||
. press START1 to start a game with the selected 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 */
|
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)
|
WRITE16_MEMBER(terracre_state::amazon_sound_w)
|
||||||
{
|
{
|
||||||
soundlatch_byte_w(space,0,((data & 0x7f) << 1) | 1);
|
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_DIPNAME( 0x2000, 0x2000, DEF_STR( Flip_Screen ) )
|
||||||
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
|
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
|
||||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
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( 0xc000, DEF_STR( Off ) )
|
||||||
PORT_DIPSETTING( 0x8000, DEF_STR( On ) ) // "Cabinet" Dip Switch must be set to "Upright" too !
|
PORT_DIPSETTING( 0x8000, DEF_STR( On ) ) // "Cabinet" Dip Switch must be set to "Upright" too !
|
||||||
// PORT_DIPSETTING( 0x4000, DEF_STR( Off ) ) // duplicated setting
|
// 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( 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( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
|
||||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) 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_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
|
|
||||||
PORT_START("IN3")
|
PORT_START("IN3")
|
||||||
@ -622,12 +607,6 @@ static MACHINE_CONFIG_START( ym2203, terracre_state )
|
|||||||
MCFG_SOUND_ROUTE(2, "mono", 0.20)
|
MCFG_SOUND_ROUTE(2, "mono", 0.20)
|
||||||
MCFG_SOUND_ROUTE(3, "mono", 0.40)
|
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_DAC_ADD("dac1")
|
||||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||||
|
|
||||||
@ -1014,7 +993,6 @@ DRIVER_INIT_MEMBER(terracre_state,amatelas)
|
|||||||
DRIVER_INIT_MEMBER(terracre_state,horekid)
|
DRIVER_INIT_MEMBER(terracre_state,horekid)
|
||||||
{
|
{
|
||||||
m_mpProtData = mHoreKidProtData;
|
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 */
|
/* YEAR, NAME, PARENT, MACHINE, INPUT, INIT, MONITOR, COMPANY, FULLNAME, FLAGS */
|
||||||
|
@ -19,7 +19,6 @@ public:
|
|||||||
UINT16 m_yscroll;
|
UINT16 m_yscroll;
|
||||||
tilemap_t *m_background;
|
tilemap_t *m_background;
|
||||||
tilemap_t *m_foreground;
|
tilemap_t *m_foreground;
|
||||||
DECLARE_READ16_MEMBER(horekid_IN2_r);
|
|
||||||
DECLARE_WRITE16_MEMBER(amazon_sound_w);
|
DECLARE_WRITE16_MEMBER(amazon_sound_w);
|
||||||
DECLARE_READ8_MEMBER(soundlatch_clear_r);
|
DECLARE_READ8_MEMBER(soundlatch_clear_r);
|
||||||
DECLARE_READ16_MEMBER(amazon_protection_r);
|
DECLARE_READ16_MEMBER(amazon_protection_r);
|
||||||
|
Loading…
Reference in New Issue
Block a user