# HG changeset patch # User Michael Pavone # Date 1489953260 25200 # Node ID aa1a8eb5bb2b43554ec2adb428f6254e5af47745 # Parent 6ad59a62e656b3f9828b1ce0d5b0d57874399b4e Change handling of invalid scroll plane sizes. Fixes title and high score screens in The Incredible Hulk diff -r 6ad59a62e656 -r aa1a8eb5bb2b vdp.c --- a/vdp.c Sun Mar 19 11:17:40 2017 -0700 +++ b/vdp.c Sun Mar 19 12:54:20 2017 -0700 @@ -998,23 +998,8 @@ } context->flags &= ~FLAG_WINDOW; } - uint16_t vscroll; - switch(context->regs[REG_SCROLL] & 0x30) - { - case 0: - vscroll = 0xFF; - break; - case 0x10: - vscroll = 0x1FF; - break; - case 0x20: - //TODO: Verify this behavior - vscroll = 0; - break; - case 0x30: - vscroll = 0x3FF; - break; - } + //TODO: Verify behavior for 0x20 case + uint16_t vscroll = 0xFF | (context->regs[REG_SCROLL] & 0x30) << 4; if (context->double_res) { vscroll <<= 1; vscroll |= 1; @@ -1057,7 +1042,7 @@ break; case 0x2: //TODO: Verify this behavior - hscroll_mask = 0; + hscroll_mask = 0x5F; v_mul = 0; break; case 0x3: