10 April 2017, 12:56 | #1 |
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,483
|
Visual DMA debugger requests
Some requests for the visual DMA debugger:
- plot the 'hidden' Copper cycles ('awakening' of WAIT instruction and 3rd cycle of SKIP instruction); - plot the lost $E0 cycle (when lost); - ability to disable visual DMA debugger when enabled (maybe already possible but I've not find the command..). Thanks, bye, ross Last edited by ross; 10 April 2017 at 18:17. |
12 April 2017, 18:29 | #2 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,545
|
Can be done but I am not sure if there are enough different shades..
Perhaps some kind of bitmask is good idea to enable switching off specific visual DMA channels? |
12 April 2017, 20:15 | #3 | |
Registered User
Join Date: Feb 2017
Location: Denmark
Posts: 1,172
|
Quote:
I also second the request for turning off the visual debugger It's great for getting an overview of what's going on, but it's a bit annoying to have to restart WinUAE afterwards. Is this the sort of thing the WinUAE project (=you?) would accept via a pull request on github? I can totally understand if they/you prefer not to have to deal with all the hassle of random internet idiots code, but if there's already an established process I might just code it myself. *) Most of the time the "tool" is a simply an image editor where I use the color picker on a zoomed image or run a cropped screenshot through a simple color counter. Here being able to tell two colors apart by eye helps, but isn't paramount. |
|
12 April 2017, 20:29 | #4 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,545
|
Why even use visual debugger if you need to use image editor? It isn't meant for detailed view. Any detailed info should be checked using console DMA debugger.
Off option will be added. |
12 April 2017, 21:16 | #5 | |
Registered User
Join Date: Feb 2017
Location: Denmark
Posts: 1,172
|
Quote:
So far I've used the visual debugger in the following ways: 1) Get a quick overview of where time is spent: Does it match my expectations? Any weird frame-to-frame variations (this is where it's extremely helpful compared to checking the console DMA debugger)? 2) Inspecting specific issues: End of line problems / interference between various DMA consumers. This is where I grab a screenshot and zoom in on various points of interest. It's nice to be able to quickly compare how different scanlines are handled without having to think about how ddfstrt etc. relates to actual DMA slots (yet). 3) When I already have a saved screenshot from one of the above steps, I sometimes process it to get a DMA dma slot allocation stats for that frame. There's probably a way to get that from the debugger I just haven't learned yet. The visual aspect is also useful for quickly ensuring that I'm really looking at the right data and being able to press print screen, save an image containing most relevant data for later study is also nice. Awesome Anyway thanks from a happy user of the feature. |
|
12 April 2017, 22:25 | #6 | ||
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,483
|
Quote:
Quote:
For a first look is outstanding and only later the detailed info of the console debugger come in hand (a necessity if you copy/paste somewhere or for an 'offline' study). But often I realized, as paraj (hi!), that I copy the screen and zoom into with an image editor Thanks Toni, another happy user. |
||
12 April 2017, 23:41 | #7 |
Registered User
Join Date: Jun 2014
Location: milan / italy
Posts: 174
|
Feature creep here
It would be interesting to have the DMA debugger exactly superimposed to the pixels where it happens. Also useful to have another layer with the vblank, hblank. |
13 April 2017, 10:37 | #8 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,545
|
Nice idea (at least in theory) and it probably would look cool Unfortunately hblank and vblank regions are never visible on screen (Blank area is blank, there is nothing there, not even background color). Overlaying it on top of visible part should be possible.
|
13 April 2017, 13:25 | #9 |
Registered User
Join Date: Jun 2014
Location: milan / italy
Posts: 174
|
It is always possible to show more virtual pixels. E.g. 1024 x 1024 and accommodate the screen, hblank, vblank, color burst and so on in these time units.
|
13 April 2017, 13:46 | #10 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,545
|
Yes but i meant that from custom chipset emulation point of view it does not exist and "overlay" needs to be done in that context, before filtering etc.. makes it impossible to map pixels back to original positions.
|
13 April 2017, 18:38 | #11 | |
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,483
|
Quote:
With 908x625 You can map and overlay all DMA slots, but a bigger window would not be bad (some fun in programmable beam mode ). An initial 'DMA 0 point' could be an option (x and y start in virtual window) or calculated for standard resolution. (I hope I made it clear what I meant ) [EDIT: and yes, pixels in blank does not exist but You can define a 'virtual color' (selectable in options) and 'overlay' in this virtual pixels] Bye, ross Last edited by ross; 13 April 2017 at 18:48. Reason: H&V blank |
|
14 April 2017, 12:57 | #12 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,545
|
I don't think you understood. Only the fully visible part of scanline exists in memory. Extending/supporting it would lower the performance of emulation, even when not in use. Not going to happen.
|
14 April 2017, 15:28 | #13 |
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,483
|
I figured that only the visible part was in memory and I was aware that the change would slow emulation.
But absolutely understandable that the change could be ignored. A rough calculation leads to a drop in speed >25%.. Too much It was just an idea Thanks Toni, ross |
15 April 2017, 11:20 | #14 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,545
|
Following updates added:
Code:
- Visual DMA debugger can be switched off, "vo". - Added visual DMA debugger -5 and -6 modes (-5 = larger overlay with "transparency" and -6 = no "transparency) - Added separate colors for visual DMA debugger copper wait and special cases (strobe extra cycle, 0xe0 cycle) - Added visual DMA debugger configuration: DMA channels can be disabled and colors can be changed. "vm" = show status "vm <channel> <sub index>" = enable/disable toggle. (sub index is not used but must be included) "vm <channel> <sub index> <hex rgb>" = change color of channel. If sub index is zero: all sub index colors are changed. |
15 April 2017, 12:34 | #15 |
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,483
|
Perfect, thank you very much!
|
16 April 2017, 21:31 | #16 |
Registered User
Join Date: Feb 2017
Location: Denmark
Posts: 1,172
|
Looking forward to giving it a spin
|
17 April 2017, 10:53 | #17 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,545
|
You can already do it if you do some looking around
|
17 April 2017, 14:19 | #18 |
Registered User
Join Date: Feb 2017
Location: Denmark
Posts: 1,172
|
I must be dense, because the latest build I could find was was public beta 5?
Anyway, managed to build latest winuae from github (despite your warnings in this thread http://eab.abime.net/showthread.php?p=1152902) so please feel free to ignore the below comments (I'll recheck in next public beta). Overall it works pretty well, so these are just tiny issues (and it's very likely that the PEBKAC). * When switching off the visual debugger / changing modes the area outside the display window is not cleared (actually it looks like it's not cleared until something "actively" draws there, i.e. enabling then disabling the visual debugger under amigados i have to use the mouse to remove the old debugger output) * It looks like it's not possible to mask idle cycles? * This isn't a new issue for me, but has now become extra noticeable with the great -5/-6 modes: When in "big mode" (-4/-5/-6) I can't seem to find a display configuration that let's me see DMA for the final scanlines. This is very likely just my own incompetence. * Very very low on the list: the debugger help text hasn't been updated But great work as usual. |
17 April 2017, 14:34 | #19 | |
Banned
Join Date: Aug 2005
Location: London / Sydney
Age: 47
Posts: 20,420
|
Quote:
This is where Toni always uploads test builds to... |
|
17 April 2017, 14:53 | #20 | ||||
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,483
|
Quote:
Quote:
Quote:
Quote:
Great work Toni! |
||||
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Visual FX for imagefx | amiga | request.Apps | 3 | 14 October 2020 21:02 |
visual DMA debugger crash and questions | selco | support.WinUAE | 4 | 28 April 2015 09:53 |
DMA debugger and 14Mhz 68K | ovale | support.WinUAE | 3 | 10 June 2014 15:10 |
Visual 6502 in JavaScript | Charlie | Retrogaming General Discussion | 1 | 03 October 2010 13:35 |
amiga visual editor | thinlega | request.Apps | 1 | 22 January 2003 15:48 |
|
|