Opened 7 years ago

Last modified 6 years ago

#13 new accuracy

CRAM artifacts are a little off in Outrunners and Overdrive 2

Reported by: mikepavone Owned by: mikepavone
Priority: minor Milestone: future
Component: Genesis/Megadrive Version: 0.5.0
Keywords: Cc:

Description

First some background about how the scene in the screenshots works. Outrunners uses a horizontal interrupt handler to copy a single color each line to VRAM

It seems like there are two different problems. The more serious one is that there appears to be a timing issue that causes this write to miss an earlier external access slot much more frequently than it does on the real hardware. This results in far more artifacts in BlastEm than on the original hardware.

Second it seems my estimation of slot/hcounter value to screen position is off by a bit. The "late" slot artifacts appear in the border area a pixel or two before the active display area on hardware, but a few pixels into the active display area in BlastEm. An alternative explanation is that my hcounter number/slot mapping is off by a few slots, but given I recently spent a fair bit of effort correcting that it seems less likely.

Attachments (2)

Screenshot from 2017-03-05 11:22:14.png (801.5 KB) - added by mikepavone 7 years ago.
Outrunners running on hardware
Screenshot from 2017-03-05 11-20-30.png (227.6 KB) - added by mikepavone 7 years ago.
Outrunners running on BlastEm

Download all attachments as: .zip

Change History (5)

Changed 7 years ago by mikepavone

Outrunners running on hardware

Changed 7 years ago by mikepavone

Outrunners running on BlastEm

comment:1 Changed 6 years ago by mikepavone

  • Milestone changed from 0.5.0 nice to have to future

I've done some work on interrupt latency and this game is now much closer to how it runs on hardware, but still not perfect. At this point I think it's good enough to not hold back release so I'm going to pull this ticket out of the "0.5.0 nice to have" milestone.

comment:2 Changed 6 years ago by mikepavone

  • Summary changed from CRAM artifacts are a little off in Outrunners to CRAM artifacts are a little off in Outrunners and Overdrive 2

comment:3 Changed 6 years ago by mikepavone

  • Priority changed from major to minor
  • Version changed from 0.5.0-pre to 0.5.0
Note: See TracTickets for help on using tickets.