View Single Post
Old 19 June 2016, 17:25   #774
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,559
Smooth Copper (Coold Frige / Upfont)

Smooth Copper looks now correct. Added hack that "fixes" it. Nothing is really emulated but it really is not worth the trouble just for one program but this demo is special enough to do something with it

Technical details:

Demo writes to VHPOSW, changing horizontal counter value exactly by one, this causes copper waits to end 1 cycle earlier (or later) which basically means same behavior as copper using odd cycles to update custom registers. (2 lores pixel resolution, like the demo loader screen says)

Because this also changes bitplanes, it uses BPLCON1 to compensate for bitplane corruption, by scrolling exact same amount to opposite direction of corruption caused by VHPOSW writes.

There is another VHPOSW at the end of each scan line that compensates previous VHPOSW adjustment, syncing Agnus and Denise counters again and preventing hsync problems.

Coding this demo must have taken lots of attempts until timing was exactly right... Even single cycle error would break hsync timing.
Toni Wilen is offline  
 
Page generated in 0.08530 seconds with 9 queries