English Amiga Board Amiga Lore


Go Back   English Amiga Board > Support > support.WinUAE

 
 
Thread Tools
Old 23 April 2015, 10:29   #1
selco
Registered User
 
Join Date: Aug 2013
Location: Germany
Posts: 41
visual DMA debugger crash and questions

Hello,
I just discovered the visual DMA debugger... ;-)

I run WinUAE 3.1.0 Beta 12 at the moment. A1200 ROM, Cycle exact, no Floppy/Harddisk

In the boot animation I press Shift F12 for the debugger.
I tried v -1, v -2, v -3 and v -4
WinUAE says "DMA debugger enabled, mode=4"
Then I type g <enter>

With -1 nothing seems to happen?
The other modes show a colorfull rectangle on the animation. Nice.

Question:
What do the colors mean? Can I see how much time is spent for DMA for which action and in which line?


Crash:
Often it works, but very often WinUAE crashes immediately after entering g.


regards selco
Attached Thumbnails
Click image for larger version

Name:	WinUAE_DMACrash2.PNG
Views:	133
Size:	99.7 KB
ID:	44047   Click image for larger version

Name:	WinUAE_DMACrash1.PNG
Views:	152
Size:	168.0 KB
ID:	44048  
Attached Files
File Type: dmp winuae_3.1.0_b12_2015.04.23_10.20.56.dmp (66.1 KB, 45 views)
File Type: dmp winuae_3.1.0_b12_2015.04.23_10.05.05.dmp (65.2 KB, 47 views)
selco is offline  
AdSense AdSense  
Old 23 April 2015, 19:43   #2
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,561
Don't change mode after it has been started once. It will crash, it is a "feature"..

-1 = enable (without visual mode)
-2 and -3: visual mode

v <vpos> [<hpos>] = show detailed cycle usage of line <vpos>. hpos is optional. (also don't use invalid vpos or hpos, it probably will crash too..)

Colors are described in some change log entry. Too lazy to find it
Toni Wilen is online now  
Old 27 April 2015, 11:36   #3
selco
Registered User
 
Join Date: Aug 2013
Location: Germany
Posts: 41
Hi Toni,

ok,
I found a changelog at
https://github.com/tonioni/WinUAE/bl...echangelog.txt

There I found

2.8.0 Beta 1
- DMA debugger blitter color changed, now normal blit, fill blit and line blits are different enough.

2.7.0 Beta 4
- Added CPU interrupt level information to visual DMA debugger. Each scanline has extra pixel on left side of DMA usage image that shows scanline's highest CPU interrupt level

2.0.0 Beta 18
- visual DMA debugger (possibly useless but cool!) different colors mark different DMA channels, "v <val>" to enable, no parameter or -1 = normal,-2 = small visual, -3 = wide and -4 = big. CE-only Current colors: yellow = copper, green = blitter (light=normal, dark=line), blue = bitplane, cpu = gray, audio = red, sprite = white, disk = purple

2.0.0 Beta 2
- "DMA cycle debugger", v <vpos> [<hpos>] lists selected scanline's DMA activity, hpos, custom register, data, address. This made compatibility testing much easier. (just compare this data to logic analyzer data) Second row can contain extra characters: N = blitter cycle given for CPU, b = blitter interrupt, B = blitter finished. (not necessarily exactly same thing)


I started WinUAE again with Kick3.1 into the Boot Animation and entered v 97 to see what happens in line 97 ($61). (Correct ?)


Could you please comment the values of the first lines for me?

Code:
v 97
Line: 61  97 HPOS 00   0:
[00   0] [01   1] [02   2] [03   3] [04   4] [05   5] [06   6] [07   7]
                  COP  08C          COP  180          COP  08C        
W                     0180              0414              0182        
                  0002DE74          0002DE76          0002DE78        
D60BB400 D60BB600 D60BB800 D60BBA00 D60BBC00 D60BBE00 D60BC000 D60BC200

[08   8] [09   9] [0A  10] [0B  11] [0C  12] [0D  13] [0E  14] [0F  15]
COP  182          COP  08C          COP  184          COP  08C        
    0EA8              0184              0A76              0186        
0002DE7A          0002DE7C          0002DE7E          0002DE80        
D60BC400 D60BC600 D60BC800 D60BCA00 D60BCC00 D60BCE00 D60BD000 D60BD200

[10  16] [11  17] [12  18] [13  19] [14  20] [15  21] [16  22] [17  23]
COP  186          COP  08C          COP  188          COP  08C        
    0000              0188              0238              018A        
0002DE82          0002DE84          0002DE86          0002DE88        
D60BD400 D60BD600 D60BD800 D60BDA00 D60BDC00 D60BDE00 D60BE000 D60BE200


Copperlist as read from  COP2LCH is
 0002de70: 6101 fffe              ;  Wait for vpos >= 0x61 and hpos >= 0x00
                                  ;  VP 61, VE 7f; HP 00, HE fe; BFD 1
 0002de74: 0180 0414              ;  COLOR00 := 0x0414
 0002de78: 0182 0ea8              ;  COLOR01 := 0x0ea8
 0002de7c: 0184 0a76              ;  COLOR02 := 0x0a76
 0002de80: 0186 0000              ;  COLOR03 := 0x0000
 0002de84: 0188 0238              ;  COLOR04 := 0x0238
 0002de88: 018a 0226              ;  COLOR05 := 0x0226
 0002de8c: 018c 0987              ;  COLOR06 := 0x0987
 ...
Some values look familiar from the copperlist. But what does COP 08C mean? What is 0002DE74 and what are the values in the bottom line (D60BB400)?

best regards

Last edited by selco; 27 April 2015 at 13:32.
selco is offline  
Old 27 April 2015, 12:21   #4
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,561
Quote:
Some values look familiar from the copperlist. But what does COP 08C mean?
Check HRM for register 08C description

First "slot":

COP = access type.
08C = custom register accessed
Number below is value written/read (0180)
Larger number below is address of access (in this case copper list pointer, 0002DE74)
Final number is UAE internal cycle counter (D60BB800)

Copper move cycle: (0180 0414)

Load first word to $08c. (0002DE74: 0180)
Load second word to custom register loaded in first word. (0002DE76: Write $414 to $dff180)

Use "od" command to enable "o" copper list command vertical/horizontal values. It will help to match "v" and "o" commands.
Toni Wilen is online now  
Old 28 April 2015, 09:53   #5
selco
Registered User
 
Join Date: Aug 2013
Location: Germany
Posts: 41
Thumbs up

Great. Thanks!
selco is offline  
AdSense AdSense  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
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
Questions about bitplane DMA Leffmann Coders. General 11 15 July 2008 15:08
Visual FX for imagefx amiga request.Apps 0 30 May 2006 12:08
A500 Crash and serial connection questions... Scatter support.Hardware 2 28 December 2004 11:31

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 16:30.


Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Page generated in 0.12036 seconds with 12 queries