| |
Zer0-X Account closed
Registered: Aug 2008 Posts: 78 |
VSP crash (not solved yet)
I recently found my C64C to be very prone to crash with certain demos and finally managed to create a reproducible crash while banging the $d011 register so I hooked up my logic analyzer and here are some logs of the event taking place.
http://oms.wmhost.com/misc/VSP_Crash_100MHz.zip
A testprogram was looped at address $0ff0. It could've been placed at pretty much any $xxf0 address and it still would crash within few seconds. Running the code at lower offset on the memorypage quite effectively prevented it from crashing on the machine used for testing. A shorter version with only inc/dec/inc/jmp not crossing the page boundary crashes.
The symptoms were always the same; low address byte of the 2nd inc at $xxf7 and/or the opcode of the jmp at $xxff are suddenly trashed. The byte at $xxf7 ends up being 0x00, 0x01, 0x10 or 0x1d. Byte at $xxff ends up being 0x0c, 0x40, 0x48 or 0x4d.
As a post-work the decoupling caps of the memorychips in the C64C used were replaced and a new thick wire delivering power directly to the memorychips was soldered in place. This had no effect and the machine still crashes with this code, as well as with Booze Design demos Royal Arte and Tsunami for example. Powersupply used is a C128 PSU with C64 powercable soldered next to the C128 powercable.
Logfiles VSP Crash 100MHz 3_31.csv/txt have the actual crash event taking place.
|
|
... 98 posts hidden. Click here to view all posts.... |
| |
Shadow Account closed
Registered: Apr 2002 Posts: 355 |
lft: dentest.prg is shaking along nicely on my crash-prone C64.
Could you perhaps produce a similar program but with the "old" method, just to have as a reference and see if that crashes? |
| |
Mace
Registered: May 2002 Posts: 1799 |
I ran the test program in Vice on all my PCs, none crashed.
(Sorry, couldn't resist ;-) )
Plus Shadow's request to have a program do both methods. |
| |
lft
Registered: Jul 2007 Posts: 369 |
Here's a version using YSCROLL instead of DEN, everything else being identical. This one should crash.
http://www.linusakesson.net/files/dentest3.prg
If the horizontal shaking stops, that's a crash. Or if the border turns red, or if there's garbage on the screen etc. |
| |
6R6
Registered: Feb 2002 Posts: 245 |
And I ran the DEN test program on my C64c that normally crashes instantly with vsp's. Had it running for 10-15 mins - No crash. |
| |
Shadow Account closed
Registered: Apr 2002 Posts: 355 |
No conclusive results from me yet, it seems like my C64 had a "good" day today, because the dentest3.prg didn't crash it either.
Will rerun the tests once the machine has had time to cool down... |
| |
Kabuto Account closed
Registered: Sep 2004 Posts: 58 |
@lft: Your dentest3.prg triggers VSP using both YScroll and DEN at once ($17 -> $18). Intentionally?
Here are 2 further test progs:
http://kabuto.untergrund.net/files/c64stuff/dentest3a.prg - like lft's dentest3.prg, but this sets just YScroll ($1F -> $18)
http://kabuto.untergrund.net/files/c64stuff/dentest3b.prg - like dentest3a.prg, but the other way round ($18 -> $1F) |
| |
lft
Registered: Jul 2007 Posts: 369 |
@Kabuto: That's unintentional, but it's the 25-row bit, not DEN, so it shouldn't affect things.
By the way, we also measured going from zeroes to ones in YSCROLL ($18 -> $19 on line $31 to be precise), and there is a slight change in timing. However, it's in the wrong direction, making the address lines change earlier and still interfere with RAS. |
| |
Shadow Account closed
Registered: Apr 2002 Posts: 355 |
Alright, today my C64 was in a VSP-crash-prone mood. dentest3.prg (and dentest3a.prg for that matter) crashed within seconds, but dentest.prg seemed stable.
Maybe lft is onto something here? Would be very nice if there was an all-model-compatible way to do VSP! |
| |
Poison
Registered: Oct 2004 Posts: 7 |
Tested dentest and dentest3 with a weak psu (from 1990) and no cart without a crash on these machines:
Light color, slim case, 6581 (C64C, ser.no.: DA4082521B, made in W.Germany)
Light color case, dark keys, breadbox form, 6581 (C64, ser.no.: UKB2257171, made in the UK)
Light color, slim case, 8580 (C64E, ser.no.: 665338, made in W.Germany)
...I will go on with testing with a converted AT-PSU (http://c64.rulez.org/capac/CapaC_Weblapja/C64%20hardver%20dac.h..) and other machines... |
| |
Poison
Registered: Oct 2004 Posts: 7 |
Light color, slim case, 8580 (C64E, ser.no.: HB4859600E, made in Hong Kong) no crash... |
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 - Next |