summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author angelosa <salese_corp_ltd@email.it>2016-09-27 21:46:35 +0200
committer angelosa <salese_corp_ltd@email.it>2016-09-27 21:46:35 +0200
commit87c993dc7407c167aa9536683b6d9e5531fe7d57 (patch)
tree8aa2f02e2a3c42950cb797701f7dc09f71ac8d36
parentc9081eaa94f9c0ce858487ffb6f6318b003d5f9c (diff)
Birdie Try: fixed "allow continue" and realized that 0x3c7 protection write is actually related with speed of the ball. Demoted to MACHINE_NOT_WORKING. (nw)
-rw-r--r--src/mame/drivers/dec0.cpp6
-rw-r--r--src/mame/machine/dec0.cpp6
2 files changed, 6 insertions, 6 deletions
diff --git a/src/mame/drivers/dec0.cpp b/src/mame/drivers/dec0.cpp
index 826e4ef6cbf..465fc7557a1 100644
--- a/src/mame/drivers/dec0.cpp
+++ b/src/mame/drivers/dec0.cpp
@@ -785,8 +785,8 @@ static INPUT_PORTS_START( birdtry )
PORT_DIPSETTING( 0x0400, DEF_STR( Hard ) )
PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) )
PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW2:5")
- PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
+ PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x1000, DEF_STR( On ) )
PORT_DIPNAME( 0x2000, 0x2000, "Timer" ) PORT_DIPLOCATION("SW2:6")
PORT_DIPSETTING( 0x2000, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x0000, "Fast" )
@@ -3294,7 +3294,7 @@ GAME( 1987, hbarrel, 0, hbarrel, hbarrel, dec0_state, hbarrel, ROT2
GAME( 1987, hbarrelw, hbarrel, hbarrel, hbarrel, dec0_state, hbarrel, ROT270, "Data East Corporation", "Heavy Barrel (World)", MACHINE_SUPPORTS_SAVE )
GAME( 1988, baddudes, 0, baddudes, baddudes, dec0_state, baddudes, ROT0, "Data East USA", "Bad Dudes vs. Dragonninja (US)", MACHINE_SUPPORTS_SAVE )
GAME( 1988, drgninja, baddudes, baddudes, drgninja, dec0_state, baddudes, ROT0, "Data East Corporation", "Dragonninja (Japan)", MACHINE_SUPPORTS_SAVE )
-GAME( 1988, birdtry, 0, birdtry, birdtry, dec0_state, birdtry, ROT270, "Data East Corporation", "Birdie Try (Japan)", MACHINE_UNEMULATED_PROTECTION | MACHINE_SUPPORTS_SAVE )
+GAME( 1988, birdtry, 0, birdtry, birdtry, dec0_state, birdtry, ROT270, "Data East Corporation", "Birdie Try (Japan)", MACHINE_UNEMULATED_PROTECTION | MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // protection controls game related data, impossible to emulate without a working PCB
GAME( 1988, robocop, 0, robocop, robocop, dec0_state, robocop, ROT0, "Data East Corporation", "Robocop (World revision 4)", MACHINE_SUPPORTS_SAVE )
GAME( 1988, robocopw, robocop, robocop, robocop, dec0_state, robocop, ROT0, "Data East Corporation", "Robocop (World revision 3)", MACHINE_SUPPORTS_SAVE )
GAME( 1988, robocopj, robocop, robocop, robocop, dec0_state, robocop, ROT0, "Data East Corporation", "Robocop (Japan)", MACHINE_SUPPORTS_SAVE )
diff --git a/src/mame/machine/dec0.cpp b/src/mame/machine/dec0.cpp
index 57d78159e1f..cd8d501efda 100644
--- a/src/mame/machine/dec0.cpp
+++ b/src/mame/machine/dec0.cpp
@@ -238,8 +238,8 @@ void dec0_state::birdtry_i8751_write(int data)
/*"Sprite control"*/
case 0x22a: m_i8751_return = 0x200; break;
- /* Gives an O.B. otherwise (it must be > 0xb0 )*/
- case 0x3c7: m_i8751_return = 0x7ff; break;
+ /* velocity of the ball, controlled by power and height formula? */
+ case 0x3c7: m_i8751_return = 0x2fff; break;
/*Enables shot checks*/
case 0x33c: m_i8751_return = 0x200; break;
@@ -264,7 +264,7 @@ void dec0_state::birdtry_i8751_write(int data)
case 0x10b: pwr = 0x5c; break; /*PW*/
case 0x10c: pwr = 0x60; break; /*SW*/
case 0x10d: pwr = 0x80; break; /*PT*/
- case 0x481: m_i8751_return = pwr; break; /*Power meter*/
+ case 0x481: m_i8751_return = pwr*9; break; /*Power meter*/
/* 0x200-0x20f values are for shot height(STRONG=0x200<<-->>WEAK=0x20f). *
* Returned value to i8751 doesn't matter,but send the result to 0x534. *