26 June 2019, 14:29 | #1 |
Registered User
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,702
|
Memory watch point on blitter writing to memory?
Does anyone know if it is possible to set a memory watch point in WinUAE that is triggered when the blitter does a write to the memory?
It seems I can only get this to work with the CPU but the issue I have is that I have a rogue blitter operations somewhere causing memory corruption and I can't find it. Any help appreciated, Geezer |
26 June 2019, 15:00 | #2 |
Registered User
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,411
|
I haven't tested this, but perhaps you can use the 'write to address' breakpoint feature of the debugger and set it to trigger when the blitsize register is written?
That might work. |
26 June 2019, 15:03 | #3 |
Registered User
Join Date: Dec 2014
Location: germany
Posts: 439
|
also not tested myself, but winuae should support memwatches for all dma channels, see this thread:
http://eab.abime.net/showthread.php?t=77340 |
26 June 2019, 15:37 | #4 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,517
|
BLTD (in place of "CPU") works in this case. (Didn't you already ask this few month ago? Someone surely did)
|
26 June 2019, 16:03 | #5 |
Registered User
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,702
|
|
26 June 2019, 16:04 | #6 |
Registered User
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,702
|
But that would cause every blitter operationto breakpoint... I just want to break when the blitter changes a memory location that I'm not expecting it to.
|
26 June 2019, 17:14 | #7 |
OCS forever!
Join Date: Mar 2019
Location: Birmingham, UK
Posts: 418
|
Could you create a new CPU routine that runs periodically and it does a kind of check on the memory area (don't know if the corruption is a pattern you can check for)? If the routine finds something it doesn't like it could set a flag somewhere - then you could set a breakpoint on that flag.
|
26 June 2019, 19:02 | #8 | |
Registered User
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,702
|
Quote:
Marking the start of every function and putting canaries all over the place. The problem is so intermittent it is frustrating (it might do it 1/20 times).....it doesn't actually crash the game so I don't get a clean state when it happens. |
|
26 June 2019, 20:18 | #9 |
ex. demoscener "Bigmama"
Join Date: Jun 2012
Location: Fyn / Denmark
Posts: 1,624
|
@Geezer: Are you using COPJMPs by any chance?
|
26 June 2019, 20:40 | #10 |
Registered User
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,702
|
|
26 June 2019, 21:09 | #11 |
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 53
Posts: 4,475
|
You have to be very carefully!
http://eab.abime.net/showpost.php?p=...&postcount=122 There is a situation, with the Copper waiting and the Blitter running, where a write with CPU to COPJMP update a blitter channel pointer instead of the copper address. Why do you write to COPJMP? There is usually no reason. |
26 June 2019, 22:00 | #12 |
ex. demoscener "Bigmama"
Join Date: Jun 2012
Location: Fyn / Denmark
Posts: 1,624
|
|
26 June 2019, 22:12 | #13 | |
Registered User
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,702
|
Quote:
OK, I think I understand but the conditions for writing the COPJMP are not happening when the game corrupts. In answer to the question, when Rygar enters the sanctuary scene and the bonus text is displayed I jump to another copper list to display different text colours. I'm pretty sure this is just a case of I'm not managing game objects properly and I have a memory leak somewhere, I'll find it soon enough I'm sure. |
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
When is the 68k processor faster then the blitter at copying memory | redblade | Coders. Asm / Hardware | 20 | 08 May 2019 22:57 |
WinUAE 3.2.1. memory dump for fake fast memory areas broken | StingRay | support.WinUAE | 1 | 14 December 2015 20:39 |
Blizzard Turbo Memory - SMD memory chips doesn't work | sanjyuubi | Hardware mods | 5 | 26 May 2010 15:40 |
[68000 ASM] Move memory to memory | AmigaBoy | Coders. General | 7 | 08 December 2009 08:16 |
Chip memory, VGA output, IPF writing | Hideki | support.Hardware | 10 | 09 January 2007 15:18 |
|
|