very strange C64 fault

classic Classic list List threaded Threaded
16 messages Options
Reply | Threaded
Open this post in threaded view
|

very strange C64 fault

Francesco Messineo
Hi all,
I have found a real tricky fault on my C64C. I'll try to describe the
symptoms, in case anyone is curious enough to help in troubleshooting
it. I am not a newbie in repairing C64s, but this one made me just
wondering without even giving me a clue on where to start probing for
possible faults (if I had a logic analyzer I would know what to do,
but I haven't got one).

Symptoms:
1) Lunatico demo from LFT freezes if started from the "note and vsp
tool" (pressing F8 from the note loads some more bits from disk, then
freezes). No VSP errors ever show while running the VSP tool.
2) Lunatico demo started with a LOAD"*",8:RUN works every time and
never freezes or malfunction.
3) Concert demo (from Performers) freezes after the RUN command
without even trying to load anything else from disk.
4) IC BURN-IN test program freezes always at the same point: when the
rombic sprites go around the screen, it freezes when the first sprite
almost touches the black bar at the end of the lower side of the
screen. Hitting reset button makes the test re-start and it never
shows any error on anything, but it freezes at exactly the same point
every time.
5) No game that I could find on my vintage floppies collection ever
showed any problem, I could play for hours everytime.

It could be RAM or a slightly bad CPU (or what else?), but I hate
desoldering things randomly.
No RAM test that I could write or run ever showed any bad location.
I was tempted to use an emulator with built-in cpu single-step option
to try to pinpoint the freezing conditions, but as a matter of fact,
I've never ran any C64 emulator so far (and time is always less than
half of what I'd need to have).

Anyone can come up with a reasonable hint?
Thanks
Frank IZ8DWF

       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: very strange C64 fault

silverdr-2

> On 2017-04-18, at 13:05, Francesco Messineo <[hidden email]> wrote:
>
> Hi all,
> I have found a real tricky fault on my C64C. I'll try to describe the
> symptoms, in case anyone is curious enough to help in troubleshooting
> it. I am not a newbie in repairing C64s, but this one made me just
> wondering without even giving me a clue on where to start probing for
> possible faults (if I had a logic analyzer I would know what to do,
> but I haven't got one).

Logic analysers may not help in some edge cases like this one.

The nouns you mention (VSP, sprites, ..) seem to be pointing towards the VIC. I'd check its voltages, frequencies and eventually swap it.

--
SD! - http://e4aws.silverdr.com/


       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: very strange C64 fault

Francesco Messineo
On Tue, Apr 18, 2017 at 1:20 PM,  <[hidden email]> wrote:

>
>> On 2017-04-18, at 13:05, Francesco Messineo <[hidden email]> wrote:
>>
>> Hi all,
>> I have found a real tricky fault on my C64C. I'll try to describe the
>> symptoms, in case anyone is curious enough to help in troubleshooting
>> it. I am not a newbie in repairing C64s, but this one made me just
>> wondering without even giving me a clue on where to start probing for
>> possible faults (if I had a logic analyzer I would know what to do,
>> but I haven't got one).
>
> Logic analysers may not help in some edge cases like this one.
>
> The nouns you mention (VSP, sprites, ..) seem to be pointing towards the VIC. I'd check its voltages, frequencies and eventually swap it.

no VSP errors showed from a tool that's supposed to check for their
existence on a C64, so yes, the VSP was mentioned and likely excluded.
The crashes are very repeatable infacts, all happens every time at the
same point of some programs. Most (all I could try) programs show no
random or repeatable errors.
I don't have any other MOS 8565 VIC-II chip to try swapping it. I only
have old 6569s

Thanks
Frank

       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

RE: very strange C64 fault

Baltissen, GJPAA (Ruud)
Hallo Francesco,


> I don't have any other MOS 8565 VIC-II chip to try swapping it. I only have old 6569s

I'm reasonably sure I can provide you with some. Do you need anything else as well?


Met vriendelijke groet / With kind regards, Ruud Baltissen

www.Baltissen.org



De informatie in dit e-mailbericht is vertrouwelijk en uitsluitend bestemd voor de
geadresseerde. Wanneer u dit bericht per abuis ontvangt, verzoeken wij u contact op te
nemen met de afzender per kerende e-mail. Verder verzoeken wij u in dat geval dit
e-mailbericht te vernietigen en de inhoud ervan aan niemand openbaar te maken.
Wij aanvaarden geen aansprakelijkheid voor onjuiste, onvolledige dan wel ontijdige
overbrenging van de inhoud van een verzonden e-mailbericht, noch voor daarbij
overgebrachte virussen.

APG Groep N.V. is gevestigd te Heerlen en is ingeschreven in het
handelsregister van de Kamer van Koophandel Limburg onder nummer 14099617


The information contained in this e-mail is confidential and may be privileged.
It may be read, copied and used only by the intended recipient.
If you have received it in error, please contact the sender immediately by
return e-mail; please delete in this case the e-mail and do not disclose its
contents to any person. We don't accept liability for any errors, omissions,
delays of receipt or viruses in the contents of this message which arise as a
result of e-mail transmission.

APG Groep N.V. is registered in the trade register of the Chamber
of Commerce Limburg, The Netherlands, registration number: 14099617
1�,j�j���a�����^q��i��ɚ�X��X��
Reply | Threaded
Open this post in threaded view
|

Re: very strange C64 fault

Christian Euler
In reply to this post by Francesco Messineo
Hi,

did you try re-seating the socketed chips?

Regards,
Chris

Am 18.04.2017 um 13:05 schrieb Francesco Messineo:
> Hi all,
> I have found a real tricky fault on my C64C. I'll try to describe the
> symptoms, in case anyone is curious enough to help in troubleshooting
> it. I am not a newbie in repairing C64s, but this one made me just
> wondering without even giving me a clue on where to start probing for
> possible faults (if I had a logic analyzer I would know what to do,
> but I haven't got one).

[...]


smime.p7s (5K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: very strange C64 fault

André Fachat
In reply to this post by Francesco Messineo
On Dienstag, 18. April 2017 13:34:58 CEST you wrote:

> >> Hi all,
> >> I have found a real tricky fault on my C64C. I'll try to describe the
> >> symptoms, in case anyone is curious enough to help in troubleshooting
> >> it. I am not a newbie in repairing C64s, but this one made me just
> >> wondering without even giving me a clue on where to start probing for
> >> possible faults (if I had a logic analyzer I would know what to do,
> >> but I haven't got one).
> >
> > Logic analysers may not help in some edge cases like this one.
> >
> > The nouns you mention (VSP, sprites, ..) seem to be pointing towards the
> > VIC. I'd check its voltages, frequencies and eventually swap it.
> no VSP errors showed from a tool that's supposed to check for their
> existence on a C64, so yes, the VSP was mentioned and likely excluded.
> The crashes are very repeatable infacts, all happens every time at the
> same point of some programs. Most (all I could try) programs show no
> random or repeatable errors.
> I don't have any other MOS 8565 VIC-II chip to try swapping it. I only
> have old 6569s

From your description of a sprite "almost?" touching the bottom of the
screen... And the fact that it's always at the same position, so that it's
really repeatable points to a logic error, not a timing error.

Maybe it's a stuck sprite collision bit, that once set is not reset and keeps
the interrupt low?

You could write a simple test program for that.

Regards,
André


       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: very strange C64 fault

silverdr-2
In reply to this post by Francesco Messineo

> On 2017-04-18, at 13:34, Francesco Messineo <[hidden email]> wrote:
>
>> The nouns you mention (VSP, sprites, ..) seem to be pointing towards the VIC. I'd check its voltages, frequencies and eventually swap it.
>
> no VSP errors showed from a tool that's supposed to check for their
> existence on a C64, so yes, the VSP was mentioned and likely excluded.

I understand the demo you mention uses VSP / VIC in a specific way. That's why I say it _might_ be something about the VIC even if it shows no VSP errors.

> The crashes are very repeatable infacts, all happens every time at the
> same point of some programs.

Which is a good thing. It's always better than those esoteric ones that show only once in a cyan moon.

> I don't have any other MOS 8565 VIC-II chip to try swapping it. I only
> have old 6569s

Ruud already offered but 6569 can be made to run in place of 8565. You need to take care of the voltage it needs but for a test it should be feasible.

--
SD! - http://e4aws.silverdr.com/


       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: very strange C64 fault

silverdr-2
In reply to this post by André Fachat

> On 2017-04-18, at 13:56, [hidden email] wrote:
>
> From your description of a sprite "almost?" touching the bottom of the
> screen... And the fact that it's always at the same position, so that it's
> really repeatable points to a logic error, not a timing error.
>
> Maybe it's a stuck sprite collision bit, that once set is not reset and keeps
> the interrupt low?

For one, good example.

> You could write a simple test program for that.

Or check with the scope what happens with e. g. _IRQ line when it freezes. Putting in a freezer car and checking if you get a repeatable freeze state when it happens may also help. Provided you have an AR or similar.

--
SD! - http://e4aws.silverdr.com/


       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: very strange C64 fault

peter
>
>> On 2017-04-18, at 13:56, [hidden email] wrote:
>>
>> From your description of a sprite "almost?" touching the bottom of the
>> screen... And the fact that it's always at the same position, so that
>> it's
>> really repeatable points to a logic error, not a timing error.
>>
>> Maybe it's a stuck sprite collision bit, that once set is not reset and
>> keeps
>> the interrupt low?
>
> For one, good example.
>
>> You could write a simple test program for that.
>
> Or check with the scope what happens with e. g. _IRQ line when it freezes.
> Putting in a freezer car and checking if you get a repeatable freeze state
> when it happens may also help. Provided you have an AR or similar.

VIC-II can exhibit very strange failures. I have a stack of "partially
failed" chips. One I recall works fine with everything, except programs
that have sprites on the bottom border (like Paperboy). Any sprite moved
down there displays as trash.

-Pete


       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

RE: very strange C64 fault

Baltissen, GJPAA (Ruud)
Hallo Pete,


> I have a stack of "partially failed" chips.

Weird. In the 30 years that I have repaired C64 I ran into exactly one faulty, in this case: dead, VIC-II. About six other faulty/dead ones were to blame to lightning, broken power supplies and human errors. Only the 6510 did better: none.


Met vriendelijke groet / With kind regards, Ruud Baltissen

www.Baltissen.org




De informatie in dit e-mailbericht is vertrouwelijk en uitsluitend bestemd voor de
geadresseerde. Wanneer u dit bericht per abuis ontvangt, verzoeken wij u contact op te
nemen met de afzender per kerende e-mail. Verder verzoeken wij u in dat geval dit
e-mailbericht te vernietigen en de inhoud ervan aan niemand openbaar te maken.
Wij aanvaarden geen aansprakelijkheid voor onjuiste, onvolledige dan wel ontijdige
overbrenging van de inhoud van een verzonden e-mailbericht, noch voor daarbij
overgebrachte virussen.

APG Groep N.V. is gevestigd te Heerlen en is ingeschreven in het
handelsregister van de Kamer van Koophandel Limburg onder nummer 14099617


The information contained in this e-mail is confidential and may be privileged.
It may be read, copied and used only by the intended recipient.
If you have received it in error, please contact the sender immediately by
return e-mail; please delete in this case the e-mail and do not disclose its
contents to any person. We don't accept liability for any errors, omissions,
delays of receipt or viruses in the contents of this message which arise as a
result of e-mail transmission.

APG Groep N.V. is registered in the trade register of the Chamber
of Commerce Limburg, The Netherlands, registration number: 14099617


       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: very strange C64 fault

silverdr-2

> On 2017-04-18, at 15:09, Baltissen, GJPAA (Ruud) <[hidden email]> wrote:
>
> Hallo Pete,
>
>
>> I have a stack of "partially failed" chips.
>
> Weird. In the 30 years that I have repaired C64 I ran into exactly one faulty, in this case: dead, VIC-II.

True - VICs (unlike TEDs - grrr) were very rare to fail, although I saw some with various "special effects" over the time.

> About six other faulty/dead ones were to blame to lightning, broken power supplies and human errors. Only the 6510 did better: none.

Means you haven't experimented much with the CASSETTE port of the 64 ;-) I myself fried one 6510 when doing things there. Obviously it counts as human error but it was harder to make such in case of the VIC, which sits well behind reach of a CU.

--
SD! - http://e4aws.silverdr.com/


       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

RE: very strange C64 fault

peter
In reply to this post by Baltissen, GJPAA (Ruud)
> Hallo Pete,
>
>
>> I have a stack of "partially failed" chips.
>
> Weird. In the 30 years that I have repaired C64 I ran into exactly one
> faulty, in this case: dead, VIC-II. About six other faulty/dead ones were
> to blame to lightning, broken power supplies and human errors. Only the
> 6510 did better: none.
>

Unfortunately I do have a stack of probably a dozen from over the years.
Not nearly as many as PLA, but quite a few. It has accelerated recently...
I think age is getting them more than anything. I always wonder if it's
best to cool them or let them run hot. I have done both and it doesn't
seem to change their life either way. Eventually they just don't come up
when powering on one day.

These are NTSC, not PAL, so it could be different life spans on them
between us also due to design differences. :)

They usually just go black/dead, but sometimes will have odd color issues
or other weird effects like this. I would say out of the ones that aren't
just "dead" maybe 2 or 3 will work but with these glitches.

I have only seen one dead 6510 also. It was in a MAX that I got a few
years ago. I was quite relieved as that was an easy fix and didn't require
impossible to find parts!

-Pete

       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: very strange C64 fault

Francesco Messineo
In reply to this post by André Fachat
Just an update but not much progress

On Tue, Apr 18, 2017 at 1:56 PM,  <[hidden email]> wrote:

> On Dienstag, 18. April 2017 13:34:58 CEST you wrote:
>> >> Hi all,
>> >> I have found a real tricky fault on my C64C. I'll try to describe the
>> >> symptoms, in case anyone is curious enough to help in troubleshooting
>> >> it. I am not a newbie in repairing C64s, but this one made me just
>> >> wondering without even giving me a clue on where to start probing for
>> >> possible faults (if I had a logic analyzer I would know what to do,
>> >> but I haven't got one).
>> >
>> > Logic analysers may not help in some edge cases like this one.

I'm sure this is the perfect job for a logic analyzer: the fault
happens every time at the same point on all programs that suffer this
freeze.
I could record a few data+address bus on a working C64 and then on the
faulty one and spot
the difference easily I guess.

>
>
> From your description of a sprite "almost?" touching the bottom of the
> screen... And the fact that it's always at the same position, so that it's
> really repeatable points to a logic error, not a timing error.

no, the sprites all travel along the bottom border and cross a
background/foreground pattern.
It's the program that I always use to test C64s, you can see the
sprites traveling around here for example:

https://www.youtube.com/watch?v=4jndggJJ9QE&t=1192s

On the faulty C64C, once they are traveling on the bottom side, just
before the first sprite touches the last black bar, the machine
freezes.
From the scope traces that I have collected, it seems that the CPU
goes into an illegal instruction or crashes for some other reasons. It
can be restarted with a reset and the program is still there and not
corrupted.
One question I have (I'll check tomorrow maybe on another C64):  is
the DRAM supposed to be refreshed when /RST signal is low on a C64? I
don't see the reset signal going to the VIC-II, so it should keep on
refreshing the DRAMs. However, if I hold the reset button long enough
(a few seconds) the DRAM gets corrupted.

>
> Maybe it's a stuck sprite collision bit, that once set is not reset and keeps
> the interrupt low?
>
> You could write a simple test program for that.

may be. Every game I could try works fine however. Only that test
program and a couple of demos are affected so far.

Best regards
Frank

       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: very strange C64 fault

Francesco Messineo
In reply to this post by silverdr-2
Hi All,
final update: it was the CPU, fortunately it was temperature
sensitive, so when cold it would take a few minutes to show the fault.
So cooling the various chips with compressed air just showed the real
culprit.
It's my first broken 8500 and also the only 8500 spare was used to fix
the C64C :/
However, the Lunatico demo still freezes when pressing F8 from the
Note and VSP tool, but runs fine when started directly.
All other freezing programs now work fine.
Puzzling...

Frank

On Tue, Apr 18, 2017 at 2:13 PM,  <[hidden email]> wrote:

>
>> On 2017-04-18, at 13:56, [hidden email] wrote:
>>
>> From your description of a sprite "almost?" touching the bottom of the
>> screen... And the fact that it's always at the same position, so that it's
>> really repeatable points to a logic error, not a timing error.
>>
>> Maybe it's a stuck sprite collision bit, that once set is not reset and keeps
>> the interrupt low?
>
> For one, good example.
>
>> You could write a simple test program for that.
>
> Or check with the scope what happens with e. g. _IRQ line when it freezes. Putting in a freezer car and checking if you get a repeatable freeze state when it happens may also help. Provided you have an AR or similar.
>
> --
> SD! - http://e4aws.silverdr.com/
>
>
>        Message was sent through the cbm-hackers mailing list

       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: very strange C64 fault

Gerrit Heitsch
On 04/23/2017 06:53 PM, Francesco Messineo wrote:
> Hi All,
> final update: it was the CPU, fortunately it was temperature
> sensitive, so when cold it would take a few minutes to show the fault.
> So cooling the various chips with compressed air just showed the real
> culprit.
> It's my first broken 8500 and also the only 8500 spare was used to fix
> the C64C :/

You can use a 6510 as a replacement.

  Gerrit



       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: very strange C64 fault

Francesco Messineo
On Sun, Apr 23, 2017 at 7:16 PM, Gerrit Heitsch
<[hidden email]> wrote:

> On 04/23/2017 06:53 PM, Francesco Messineo wrote:
>>
>> Hi All,
>> final update: it was the CPU, fortunately it was temperature
>> sensitive, so when cold it would take a few minutes to show the fault.
>> So cooling the various chips with compressed air just showed the real
>> culprit.
>> It's my first broken 8500 and also the only 8500 spare was used to fix
>> the C64C :/
>
>
> You can use a 6510 as a replacement.

sure, if I had one :)

I've never had many spares, almost all of my spare chips are from the
'80s when I kept a small stock (1 for each part, mostly) to test the
broken computers that were brought to be fixed. I would then order the
spare once I identified the problem.
Back on the '80s, Commodore spares were cheap and one week away from
the day of the telephone order.
I had one spare CPU (8500R3 from 1985) that could be used for both
6510 and 8500 boards.
Now the partly working 8500 from 1989 that I changed on my C64C will
be uses as test for really dead CPUs (if any) in future
troubleshootings.
This 8500 is also my only C64 CPU in the broken MOS chip collection so far.
Frank

       Message was sent through the cbm-hackers mailing list