[PCE] cap active display to 242 lines, fixes Puzzle Boy (requests 512)

This commit is contained in:
beirich 2011-07-23 21:52:44 +00:00
parent 91baebf8b2
commit d8b6432d9a
3 changed files with 7 additions and 8 deletions

View File

@ -23,12 +23,9 @@ Tiger Road - On second level, sprites should be getting masked from the t
Bouken Danshaku Don - The Lost Sunheart (J) - Uses LFO in intro sound strongly!
Eagan's Rendered Sprite Demo by Eagan Rackley (PD) - demonstrates sprites that shouldnt be displayed
Games Express CD Card 1993 - dont forget to treat as a turbocd system card
Puzzle Boy(J) - screen vert height is fucked up...needs to be masked or just clipped?
Yo, Bro - game screen black, can hear game playing though
Youkai Douchuuki(J) - part of bg missing? wtf.
Note, check overdump roms From A - Final Lap Twin
===================================
Games that need TV Emulation (to varying degrees)
===================================
@ -69,4 +66,5 @@ Stuff I Fixed That's Not In Other Docs:
4 color modes. It appears to be the only game that requires this, and it's a shitty game. :(
+ The ROM of Paranoia (J) that is commonly labeled as the authoritative dump - I assume its a bad
dump, because it dies during the 3rd stage on ALL EMULATORS. Alternative versions of the rom
work fine.
work fine.
+ Puzzle Boy - requests frame height of 512... cap active display to 242 lines

View File

@ -100,6 +100,9 @@ namespace BizHawk.Emulation.Consoles.TurboGrafx
public void RenderScanLine()
{
if (ActiveLine >= FrameHeight)
return;
RenderBackgroundScanline();
RenderSpritesScanline();
}

View File

@ -147,16 +147,14 @@ namespace BizHawk.Emulation.Consoles.TurboGrafx
case HDR: // Horizontal Display Register - update framebuffer size
FrameWidth = RequestedFrameWidth;
if (FrameBuffer.Length != FrameWidth * FrameHeight)
{
FrameBuffer = new int[FrameWidth*FrameHeight];
}
break;
case VDW: // Vertical Display Word? - update framebuffer size
FrameHeight = RequestedFrameHeight;
if (FrameHeight > 242)
FrameHeight = 242;
if (FrameBuffer.Length != FrameWidth * FrameHeight)
{
FrameBuffer = new int[FrameWidth * FrameHeight];
}
break;
case LENR: // Initiate DMA transfer
DmaRequested = true;