View Single Post
Old 24 May 2015, 14:14   #248
Toni Wilen
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 43
Posts: 20,631
Originally Posted by amilo3438 View Post
More undocumented features remaining when copper writes to BPLxPT and next cycle is DMA. Apparently bitplanes 5+ work differently or something. (This is not exactly same problem as previously, similar result but different reason..)

I probably try to fix this after 3.1 because full fix needs lots of real hardware testing. Any attempt to guess will break other programs. (As you must have noticed!)

EDIT: Fixed because solution appears to be very simple.

White screen with music on plasma part in OCS! (if change to ECS seems better)
You found really rare bug edge condition. Fixed.

Scroller is actually broken on ECS too and works only accidentally.. It sets DDFSTRT/DDFSTOP value pair so that it causes DMA conflict but because DDFSTOP is >maxhpos, ddfstop condition does not match. Here comes the OCS/ECS difference: At the start of next line OCS Agnus will always clear "horizontal window open" flag but ECS leaves it alone (only ddfstop match will clear it) -> after first line (that caused the conflict), next line will start horizontally from smallest possible position (0x18) which does not cause conflicts anymore! (Technically same as DDFSTRT=0x2c becoming DDFSTRT=0x18)

Last edited by Toni Wilen; 24 May 2015 at 18:54.
Toni Wilen is online now  
Page generated in 0.05872 seconds with 9 queries