summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author hap <happppp@users.noreply.github.com>2015-01-19 23:14:42 +0100
committer hap <happppp@users.noreply.github.com>2015-01-19 23:14:42 +0100
commit1774358f2b6558ca114a349e2e8625add5bafd28 (patch)
treedbc49d03fa91dd7c07a46a0cf7a70fd516550664
parent1ba6761a32bfbbe928544f2b85dc4a1887f15bff (diff)
re-added old protection hack for now.
see: http://mametesters.org/view.php?id=5828
-rw-r--r--src/mame/drivers/punchout.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/mame/drivers/punchout.c b/src/mame/drivers/punchout.c
index ac0ec2910e2..83503a6efb0 100644
--- a/src/mame/drivers/punchout.c
+++ b/src/mame/drivers/punchout.c
@@ -10,6 +10,7 @@ the bottom screen.
driver by Nicola Salmoria
TODO:
+- finish spunchout protection, currently using a hacky workaround
- add useless driver config to choose between pink and white color proms
- video raw params - pixel clock is derived from 20.16mhz xtal
- money bag placement might not be 100% correct in Arm Wrestling
@@ -227,6 +228,15 @@ READ8_MEMBER(punchout_state::spunchout_exp_r)
ret |= m_rp5h01->counter_r() ? 0x00 : 0x40;
ret |= m_rp5h01->data_r() ? 0x00 : 0x80;
+ // FIXME - hack d6/d7 state until we figure out why the game resets
+ /* PC = 0x0313 */
+ /* (ret or 0x10) -> (D7DF),(D7A0) - (D7DF),(D7A0) = 0d0h(ret nc) */
+ ret &= 0x3f;
+ if (space.device().safe_pcbase() == 0x0313)
+ {
+ ret |= 0xc0;
+ }
+
return ret;
}