16 July 2022, 17:38 | #1 |
Zone Friend
Join Date: May 2006
Location: France
Posts: 1,861
|
WinUAE technical questions.
Hi Toni,
I would like to know at which exact pixel location WinUAE does throw the VBL IRQ and at which exact pixel location does it reload the Copper list? cheers |
16 July 2022, 19:25 | #2 |
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,498
|
This question is not WinUAE related but chipset related
Copper jump to COP1LT when Agnus vertical counter reset to 0 value (so the position [0,0]). VBI trigger at VBSTRT, that's hardwired at line 0 for Fat Agnus and line 1 for A1000 Agnus. So coincidentally both usually start at the same time (the copper is usually faster than the CPU and therefore manages to execute its instructions first). |
16 July 2022, 19:40 | #3 | |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,574
|
Why pixel? Internally it is based on CCKs, not pixels (Only Denise is "pixel based") Check DMA debugger first line (v-1 to enable (-1 = no overlay), exit and enter debugger, v 0)
Copper reload is triggered at cycle 2 (always line 0), copper does first DMA read during cycle 4 (but this read is from previous address), first copper DMA read from start of copper list: cycle 6. Vblank is triggered at cycle 3 (first refresh slot = horizontal strobe which Paula uses to generate vblank interrupt), it also takes 2 more cycles before CPU sees it. (and as ross said, line depends on Agnus version, A1000 is special case) Quote:
Did you forget that we did run tests just today that needed this to be exactly correct |
|
16 July 2022, 20:03 | #4 |
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,498
|
I oversimplified to keep it simple
|
16 July 2022, 20:14 | #5 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,574
|
Yes but OP wanted pixel perfect answer
At least CCK can be converted to exact pixels. EDIT: if you want to see where first copper color write can happen, latest winuae.7z + display panel "ultra extreme debug" overscan mode can show it. (It disables all blanking and shows full raster area) Last edited by Toni Wilen; 16 July 2022 at 22:24. |
16 July 2022, 20:18 | #6 |
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,498
|
|
16 July 2022, 20:31 | #7 | |
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,498
|
Quote:
Usually you don't need to be 'pixel exact' (even if in this case it is not the proper terminology, the pixels are not even usually visible in that area), but to have an idea for when the two events occur (generally: at the beginning of the frame), in order to organize your code. Maybe with some more information you will have answers that best suit your needs. |
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
WinUae 3D questions. | jdog320 | support.WinUAE | 2 | 04 January 2016 12:08 |
Amiga 1000 Phoenix technical questions | FastRobPlus | support.Hardware | 0 | 16 October 2012 17:24 |
WinUAE Questions | Titler | support.WinUAE | 5 | 18 November 2002 00:09 |
WINUAE questions | tito | support.WinUAE | 7 | 14 October 2001 20:25 |
Stupid Technical Questions | Shatterhand | Retrogaming General Discussion | 4 | 05 October 2001 05:33 |
|
|