diff options
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 |
commit | 1774358f2b6558ca114a349e2e8625add5bafd28 (patch) | |
tree | dbc49d03fa91dd7c07a46a0cf7a70fd516550664 | |
parent | 1ba6761a32bfbbe928544f2b85dc4a1887f15bff (diff) |
re-added old protection hack for now.
see: http://mametesters.org/view.php?id=5828
-rw-r--r-- | src/mame/drivers/punchout.c | 10 |
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; } |