16 May 2016, 16:47 | #1 |
Registered User
Join Date: Feb 2011
Location: Italy/Rome
Posts: 2,344
|
Copper Wait Problem
I've got some problem to get position below 200px window. To get that I'll do what HW sugget: wait last line and do another wait. But it seems don't work.
here my code: dc.w $ffdf,$fffe dc.w $1001,$fffe dc.w $0180,$0fff Some bugs on winuae? Maybe after that end copper list must be different? I use the classic dc.w $ffff,$fffe My examples is running on Aga. I did some test on ocs/ecs and seems to works fine. This issue is present when I activate Burst Aga mode to 64bit: dc.w $01fc,%1111 |
16 May 2016, 16:49 | #2 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
100% not enough information! (My crystal ball says bitplane dma steals cycles from copper)
|
18 May 2016, 14:47 | #3 | |
Registered User
Join Date: Feb 2011
Location: Italy/Rome
Posts: 2,344
|
Quote:
Do you want the exe? I can provide code too |
|
18 May 2016, 15:27 | #4 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
Executable (that needs nothing else) is the best way to confirm it.
|
18 May 2016, 20:40 | #5 |
Registered User
Join Date: Feb 2011
Location: Italy/Rome
Posts: 2,344
|
|
18 May 2016, 20:53 | #6 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
Attach file? Upload to the zone? Email? Your choice
|
18 May 2016, 20:55 | #7 |
Registered User
Join Date: Feb 2011
Location: Italy/Rome
Posts: 2,344
|
|
18 May 2016, 21:27 | #8 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
My crystal ball guess was correct. Real A1200 also shows identical image.
DDFSTOP is far too large for AGA higher fetch modes, causing bitplane DMA to steal nearly all cycles at the end of scanline. Vertical position wraps around to 0 before copper has had time to wake up -> copper keeps waiting.. You can use DMA debugger to check it ("v -1" in debugger to enable it). Then v <vpos> <hpos> to see line's activity. |
18 May 2016, 21:29 | #9 | |
Registered User
Join Date: Feb 2011
Location: Italy/Rome
Posts: 2,344
|
Quote:
|
|
18 May 2016, 21:32 | #10 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
No, your screen is too wide, not too tall and wasting DMA cycles. You have extra 64 pixels completely hidden in right border.. Just reduce DDFSTOP, probably something like $c0 or so is correct. (not $d0!)
|
18 May 2016, 21:33 | #11 |
Registered User
Join Date: Feb 2011
Location: Italy/Rome
Posts: 2,344
|
|
18 May 2016, 21:40 | #12 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,575
|
Even easier way: reduce DDFSTOP until screen becomes corrupted, then compensate it with modulo. Done
|
18 May 2016, 21:41 | #13 |
Registered User
Join Date: Feb 2011
Location: Italy/Rome
Posts: 2,344
|
|
18 May 2016, 21:54 | #14 |
Registered User
Join Date: Feb 2011
Location: Italy/Rome
Posts: 2,344
|
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Combining copper scrolling with copper background | phx | Coders. Asm / Hardware | 16 | 13 February 2021 12:41 |
Copper Wait Problem | sandruzzo | Coders. Asm / Hardware | 2 | 17 May 2016 10:30 |
Problem running copper master demo on A1200 | whitebird | support.Demos | 26 | 17 August 2014 17:41 |
Copper effect problem | Steve | support.WinUAE | 3 | 25 June 2011 14:05 |
Problem installing Bloodwych's Copper Workbench | Thalor | project.ClassicWB | 25 | 29 December 2003 18:45 |
|
|