Have you checked the freq of the oscillator? Look at the pulses on the scope and make the signal is NOT ratty. I have repaired hundreds of C 64's back in the 80's and a few times a ratty clock caused the weirdest problems. Be sure the clock is dead on the freq spec Regards, Glenn DSSM Labs
and even if I had one- I wouldn't know how to use it... last time I used one in about 94 I had a paper with notes to load up programs-- without that paper I am screwed
Adrian, it sounds like the interrupt is working, but maybe just misses the window when the diagnostic unit expects the interrupt. I’d blanket change any electrolytic caps in that whole circuit. Sounds like one has changed in value. Believe it or not, some electrolytic caps GAIN value in microfarads as part of their failure mode. I’ve seen this a lot on plain old aluminum types of electrolytic caps, and will totally mess with a 555 timer. Ceramic caps are pretty long-lived, so those should be OK, but if they are in a timer circuit, suspect them also. From the schematic, it looks like the 555 timer (one part of the 556) is used as a single shot with a specific time value and if it’s too long, (or short) it may miss the diagnostic window of being sampled. It is working (probably) but the timing is off regarding when it is expected. Also, that 7406 is a very high sink current open-collector inverter designed to drive MOS type silicon. If the pull-up resistor is open, the drive current is reduced and the inverter may no longer meet its specification high to low transition time and can be out of spec. Suspect the inverter chip and/or the pull-up resistor pack. Desolder the resistor pack and ohm out each resistor. Any resistor more than +/- 10% is out of tolerance. Great video!! Thanks!!
I was going to suggest checking the RP3 resistor pack to ensure all of the separate elements show the same resistance. However this sounds more likely to be correct. I suspect Adrian has already check it anyway as he's a clever fellow 😁🤷♂️
Just to set things straight, usually caps don't gain more actual C value, they just measure high because they are leaky (electrically) so they pass current through them instead of storing them. Regular C testers only measure how much current goes in and how much the voltage rises across the cap. Energy lost through the leak is accounted for as increased C because the tester cannot distinguis between stored current and leaked current. Any part which tests high in C should definitely be replaced.
@@BigDaddy_MRI To my understanding ESR and leakage are still different things. ESR is (low ohms) series resistance "between the capacitor plates and the load" whereas leakage is a high ohms DC current path between the plates. I don't think one is necessarily indicative of the other. A good tester will measure ESR, but I'm not sure if they account for it in the C rating measurement or not. That's something I would like to know actually now that I think about it. Off the top of my head I'd hazard a guess that ESR is usually not a major component in C testing because the current used is so low that not much energy is lost across the resistor. Test frequency is probably a factor here though.
Might be a long shot, but I was getting same issue with a recent fix. My test harness is different brand, but it turned out to be slight corrosion in the joystick ports. I had to use contact cleaner and work the plugs on and off several times. Really seat those plugs hard and get a good connection. Now I don't get that anymore. Worth a try.
@@davefarquhar8230 I hawe very little experience from them so i can't realy tell based on my own statistic, but i know other types of chipset from different manufacturers also had problems in some batches, but other from the same manufacturers seem to last like forever. I guess it has to do with how well the manufacturing process managed to make a stable bound between the base material and the additives without drifting or degeneration ower time, if it for example run into problems with drifting ower time it will sooner or later run into a critical fault even if it worked perfect when it was new, but if the bound are stable it won't happen at all, so the only practical killer will be things like thermal stress i think. (at least that's my personal guess without knowing for sure).
A lot of people say MT isn't a bad brand, but it may be more susceptible to over voltage. Well we know that happens on the stock bricks. So it's possible the only reason those chips are bad is because the original PSUs killed them. /shrug
Adrian I just want you to know I have never owned a C64 but Ive watched all of your videos and you made me also find a love for C64 and its family. Thank you for so many hours of enjoyment. Huge fan here!
It's a realy fun machine to experiment with, because it's pretty simple and it was originaly designed to be easy to learn and make Your own programs with. It's also very easy to connect to Your own electronic experiments if one are interested in incorporating hardware to some project or laboration You hawe in mind (There was even a few 3rd part electronic kits especialy for that as i remember). Even if it's less powerful compared to the later generations it's in my personal opinion a perfect first machine to start with, even if the price realy has ramped up the last years, (at least in Europe) it's still a very affordable machine and there are pretty lot of equipment and spare parts still around.
Did you check the interrupt trace to the cartridge port? Maybe the Dead Test Cart can't sense the interrupt on that one board because to signal doesn't reach the cartridge port.
Michael Stoliker the interrupts are not tested on the cartridge itself. The cartridge only holds the software. There are no special test fixtures on the cartridge. The feedbacks are all in the harness.
I was also going to suggest an investigation into feeds leading to the testing cartridge, if it all checks out, check for timing issues, but then again becuase youre refurbishing, I am guessing you probably already done that....
Adrian, if I may suggest something: Get the Transformers game for C64, the Side B (it should be in a separate D64 file). This intro features some great speech and it stresses the SID chip totally, so it could be a great test for this chip.
isn't speech only done with the volume register? Why do you think it stresses the SID? Do you think rest of the SID registers are used/tested somehow with speech too?
Have you seen that the timers on both CIAs not running ? TOD stays on zero. I think the 60Hz for the timers is missing. If the timer does not counting down for underflow there is no interrupt. Check pin 19 for 60hz.
Hi Adrian, compliments on your repairs and videos. I still do quite some repairs on c64’s amongst others, and I know what the ‘problem’ is with the interupt. Nothing! It is the test, it’s not 100% correct, so it gives a false indication on some of the c64 motherboards. It all depends on the combination of the motherboard and the ic used. You can try several others ic’s and one of them might pass the test. Regardless, even though it indicates bad, it will work fine so don’t spend too much time on it... you have tested the signals and like you said it works fine.
Regarding the faulty interrupt: you may want to test Datasette operations. As I recall it, it's possible to damage the CIA interrupt circuitry when resetting the C64 by user port pin 1 and 3 and accidentally connecting another pin. (Maybe it's just a fried diode.) The machine will work just fine in usual operations, but will show problems with the Datasette. I believe, the error condition ist the C64 not waiting for the play button being pressed, rather behaving as if it were pressed all the time. (Actually, my own one is showing these symptoms.)
This gives me an idea: it also MIGHT be that the pitting on the cassette port is causing the test harness not to have a good connection. I don't know what - if anything - can be done to restore the pins on the cassette port, though.
Great video as usual, Adrian. Thank you very much! If you don't mind some friendly advice, the only thing I would suggest is include more footage of your troubleshooting process (preferably not fast forwarded), particularly with regards to testing continuity between the chips and checking the various signals on your oscilloscope, logic probe, etc. You skipped over that whole process in this video with board #1. I think it would help others learn more of those necessary skills when it comes to troubleshooting their own boards.
ive been a IT admin for 25 years and this stuff is even way over my head lol .. I'm impressed you can figure this type(s) of problems in first place ...I only understood 20% stuff you said or even means , but very well done .
Electronics engineering can seem a bit complicated but if you're in networking or programming large complicated or low level projects EE is not so bad. At least if you stick with the basics. High frequency stuff is almost like magic. Luckily there's nothing approaching high frequency or high complexity on the C64 ;)
Its not over until it is over! I expect a part 3 soon. 1) checked the traces between the CIA, CPU and other chips? 2) checked the voltages to the chip while it is running? That trick with the thermo camera might be useful as a hot chip on the board would take away from the system power. 3) One thing I never seen you do is physically check the cartridge slot. Here in the ghettos of NYC roaches and other insects get into cartridge slots and muck up the place. Sparing you such details, have you De-Ox'd the cartridge slot? If this is a physical and not electrical issue De-Oxing the slot should fix it but you still need to clean out the slot. Good luck.
I like your channel.. 1 thing I noticed on the opening theme that every word say "by"actually looks like 64 ;) my recently bought C64 model 250425 had MT ram chips with error on 0. Removed them all, put in 8 new sockets and installed brand new TMS 4164 - 15 NL. That did the job.
Adrian, I love your videos, a big thumbs up!! It is always fascinating to watch over your shoulder and I can learn such a lot about your techniques, the tools that you use and the hardware itself. Due to your videos I ordered some tools for myself too (except the Jonard chip extractor, for it is way to expensive for me here in Germany, I would not use it that much to justify this price to me) and had a look at the schematics. Thank you so much for your great work and keep it up!! All the best from Germany, Michael...
Awesome fixes! And I am so glad at least one of the SID chips works! ;-) Great vid as always! So glad those boards (and the 1541) are happier. Great start to the weekend! :-)
I've had a failed resistor array (or pack) on an arcade machine board recently, might be worth checking. They can get hairline cracks in them, they are intolerant of boards being flexed.
Brasso is such a handy product. Not only does it polish all sorts of metals but it also polishes plastic brilliantly. Hope you find a solution to the annoying interrupt error. Cheers.
Brasso is pretty good for shining things up, it's downfall is dealing with corrosion spots, for that you need polishing compound, but on something as thin as gold-plated (well, I assume it's gold!!) edge connectors that could be problematic... :)
First of all, this is an excellent and very enjoyable repair series. Second, dang, that interrupt issue is a head-scratcher, but I am reading a lot of excellent theories and suggestions below. I know you can figure it out.😉 Third, I just added Brasso to my Amazon cart -- magic, that stuff!
I have been warned by others that Brasso is very very harsh so only use it carefully and on the most corroded things. Also, make sure to clean it off 100% when you are done (using alcohol.)
A tiny amount of Brasso is probably OK on edge connectors like this which have quite bad surface corrosion. But, I definitely would NOT recommend using Brasso on things like cartridge slot connectors / sockets. It can be tough to completely clean off the Brasso afterwards. (nor on any other types of connector where you can't easily clean off every trace of Brasso / Silvo.) Brasso is a relatively harsh abrasive, so if even a tiny amount gets left on the contacts of a cart connector, it can wear down the edge connectors (fingers) of both the cart and the connector. You did the right thing here by cleaning the edge connectors thoroughly with IPA afterwards. ;)
@@frogz Good point. It's not ideal stuff for contacts unless you have very bad corrosion and it's a last resort. Something like the type of Deoxit that doesn't leave any oils or residue behind would be a lot better. In fact, Brasso does leave a film of polish behind, so it could actually be making the electrical contact *worse* unless it's completely cleaned off... retrowaretv.com/the-dos-and-donts-of-game-cartridge-cleaning/
Funny that there are so many failures of the old Micron chips. I've been running into bad ones on DDR PC2700 RAM modules this past year. I used to think Micron was the best until recently.
Ahhh a new video from my main man AB. It's 1am UK time and I'm happy :) Great work and thanks Adrian. P.s please do more crt videos I love crts incase you didn't clock on already ;)
I think, as part of the interrupt test, the alarm timer on the CIAs are tested. This requires a proper TOD signal around that AND gate U27. I would view the TOD with a scope to check.
I don't think it's going to be that as the you can see in the video the clocks on the bottom line of the diag screen are showing the correct counts as the diag runs. This relies on the TOD input to these 6526 chips.
Fixing this interupt would make a great video on it's own :) I wonder if it's in the cartridge circuits or something. Keep at it I'm sure you'll get it. I wish I had a basement and time :P
Maybe it is a bad NMI connection to the cartridge port. Test continuity of the NMI pin from the cart port. My guess is maybe the cart senses the NMI test via that pin?
As far as I understand it, the questionable IRQ (NMI) is mainly used for the RS232 interface. So you typically would not observe any malfunctions during other operations. You should check the connection to the cartridge port and maybe the pull-up resistor and its respective connections. A more complex check would be to trigger an NMI by U2 on your own and observe whether it reaches the CPU by resetting the NMI vector to your code. There are code samples around in the internet on how to do that. If that should be working as well, you can dismiss the error displayed by the diagnostic cartridge.
What is the voltage on that line? If it's too far above 0V, it may be registering as high on the dev board (but the chips are more tolerant) and you may have a bad pull-up resistor.
7406 chips in the C64 usually fails as it runs hot in general. You can test the NMI by hitting the RESTORE key very quickly (few milliseconds) and you will see your basic screen reset. This is achieved by the NE555 and the 7406.
Hi Adrian, At 1' 49" , The first three memory chips are D4164C-2 and the fourth memory chip is a 4264-15 ...i.e first three 200nS and the fourth a 150nS...not sure if the chips are compatible without checking the type of the fourth one. Have you found that 150nS work OK with the slower 200nS ? It's over 30 years since I worked with memory boards. I enjoy watching you work on the C64 boards as I had 3 of them.
Before apply BRASSO, clean the gold finger with alcohol you can reduce the BRASSO to few drops, also use M-folder hand paper, cotton is way too expensive.
If the Restore key is working correctly than that is probably a good indication that the NMI line is not the problem. Something to try, continuity between U1 and U2, check any pin that connects U1 to U2 according to the schematic, there could be a data pin that is floating causing an issue. I'm not sure how the user port harness is wired but I would assume that U1.CNT connects to U2.SP and U2.CNT connects to U1.SP, are these connected when the harness is installed?
Great series, Thank you Adrian! I have a mix of ten c-64, 64c, Plus4 and 128s that have been in clean, dry storage for years. Any recommendations for powering them up? They all worked back in the early 2000s but have not been powered up since. Should I source a new power supply before trying? I don't want to fry the chips! Thanks for any info and again, thanks for the great channel!
Yeah I'd get a new PSU -- the C128 ones are safe to use but the original C64 ones are bad. I cut the end off my C128 PSU and added the C64 connector to it -- then a femals C64 DIN and then can plug the 128 cut off wire back into it. That way it works for both machines.
Back in the 80's I had trouble generating the NMI using the restore button. Someone told me to change the value of a particular resistor and it worked perfectly from then on. I can't remember the actual part number, but you should be able to find it in schematic.
Hi Adrian. I really like your passion for old hardware and also your attitude. You really seem like someone who's not playing a role, who just wants to learn and share it's experience with the world. I really enjoy watching you. Anyway. Maybe you should get the datasheet for the mos6526 and read the section on interrupt control. I just quickly did, and there's a 60Hz clock signal on pin TODIN that you should really check the accuracy of (relevant to the test performed in paragraph 2 of your dead test cartridge). And if it's there, verify the remainder of what's inside of that chip's datasheet regarding interrupts. Just a taught.
That doesn't surprise me. TOD is the Time Of Day clock built into both 6526 chips. So TODIN carries a 60 Hz signal to keep the TOD clocks accurate. However, that's all TODIN does; under normal conditions, it doesn't affect the functioning of any other part of the 6526 (that is to say, the TOD clock is not used to time Input/Output operations). If the signal wasn't accurate, you might not even notice unless you deliberately configure the TOD clocks to generate an interrupt (which the dead test cartridge does), or if something seems wrong with your random numbers... unless you override it by using a negative number like RND(-1), the RND function uses the seconds and tenths-of-seconds registers as part of its seed value.
@@SpearM3064 , as per the datasheet, TODIN is either a 50Hz or 60Hz clock required for accurate time. And paragraph 2 of the Dead Test Cartridge describes a test for the internal alarm of U1 and U2 by adding 2 seconds to their clocks and waiting for the alarm to go off. That timed alarm is provided by TOD, as stated by the datasheet (explained in first paragraph of the Time of Day Clock (TOD) section, on sheet 6). Now, I'm not saying this is the problem, I'm just pointing out something that's being tested in a failed test and hasn't been measured by Adrian.
@@brainiac9579 Well, yeah, I didn't say that the TOD clocks _couldn't_ be used for an interrupt. I'm saying that in their _default_ state (at bootup), they don't generate an interrupt. You have to set them up yourself to do that. Because of the latching feature, BASIC is fast enough to read and write the value of the clocks, but you need to know assembly language to test the interrupts. But you're right, of course; if that timing signal isn't accurate (or worse, if it's unstable / fluctuates), it can have a knock-on effect on other chip functions, like sending data bits to a device connected to the serial port.
@@SpearM3064 Finally decided to get the datasheet that Adrian is using, and reading, in the video. Also, again from the 6526 datasheet, there's 5 sources of IRQs (if the failing test is really only testing interrupts from that IC): underflow from TIMER A and B, TOD ALARM, Serial Port full/Empty and /FLAG. You can also setup the IC for multi IC communication with interrupt, which is the test that Andrian stated he didn't understoud the description of. So, I guess the circuitry involved into that is worth taking a look at. Also, I'm not sure as to the circumstances when that's used in real use cases, which might be why the computer is behaving normally, except when tested.
Hey Adrian great video! Could you please put a link to the pick tools you use to lift the chips in the desoldering video? Thank you and keep up the great work!
You know, I got that at a store in Portland so not sure how to order them online. (Harbor Freight) I'm thinking of buying another set as that curved pick I use it literally indispensable to me!
By a process of elimination, the 556 or the inverter are the remaining bits of the puzzle. If the 556 is too slow or fast, the interrupt may not happen slow/fast enough. Also check the signals back from the edge connector, assuming the harness has any part in any of this, as there are still some slightly dodgy looking connections there.
brasso ! wow that was a staple metal polish in the uk from way back (silvo was its counter part for silver plated stuff). impressive results must buy some. Its smell is pretty nostalgic :)
One thing to try is to take both the known good 6526 and the known good 6510 and put them in the sockets on that board you’re having the trouble with; you might be getting the NMI/IRQ all right, but it may be that the 6510 on the problem board is a lot more strict about the timing of the signals, whereas the 6510 from your ZIF machine might be a bit “looser” on the timing requirements. At the same time, put both of the ASICs from the problem board in the ZIF machine and run the full test. Finally, examine the NMI/IRQ pulses directly on the pin(s) of the 6510 and see if the pulses have the correct duration, and the correct rise/fall times, without too much ringing on the rising edge. The problem might not even be with either IC, but with a marginal bypass cap; try bypassing them (both) with another of the same capacitance in parallel (you can just tack the leads on with a bit of solder.) HTH.
On the 64 with the IRQ troubles: Have you measured the 60 Hz signal coming out of U27? Is that present on both chips (on the TOD line, pin 19 on the CIAs)?
Do you have any document on recapping C64, c64c and Vic20. Plus do you know which mods have to be done on all those three machines to improve the video output? You also tickled my curiosity with your easy flash iii, how do you get that game menu? I am re-equipping my electronic lab and you are of garât help. Thanks for your great videos. Keep-up the good work.
If you want to save money on those expensive sockets you can just buy a bunch of long SIP socket parts that you can cut to any length or even combine. Then just solder one cut down strip to each side of where the DIPs go.
Just a tip: use weimans metal polish instead of brasso. It's not nearly as toxic, and smells like toothpaste instead of nasty chemicals. Also brasso is supposedly acidic so make sure you get all of it off or it might corrode the board.
Yeah indeed people have mentioned that Brasso is hard on other parts -- so I'm going to go back and make sure to clean the boards again around where I used it to make sure it's all gone.
I keep trying to get the hardware folks where I work to sneak a 555 into the products we design. So far all I get are sighs and lectures on the long-term unreliability of RC timing circuits!
wow I just downloaded that DK Arcade and the SID file. The 1541 U2+ fixes pal/ntsc issues on raw sid files. It really is so much slower. lol Sounds different as a result. I like the faster speed better. lol The actual game sounds just like yours.
i was goingto say something along the lines of resistance or a bad clock signal, clock operation timer or something. if its irq, then its clock, if its non maskable interrupt.. its clock generation as far as i know, it may be resistance. check all the resistors, and and check continuity under the board?
That is only the intention of the test, and at best the theory it uses. However, there may be false positives and logic mistakes in the implementation. I should watch the video again and see if this has been answered, but there may be a problem with the timers, the setup of the timers, triggering of the timers, any interrupt table, the setup of the take, any interrupt mask and the setup of these, the target routine, and so on. It could be that the timers are just a bit too late for the verification, but still good for most applications, and so on.
Well hey, tomorrow’s a new day. Get a good night’s sleep, have breakfast somewhere you like, jam out to some Donkey Kong Country soundtrack and you’ll cheer right up! :-D
Have you checked the freq of the oscillator? Look at the pulses on the scope and make the signal is NOT ratty.
I have repaired hundreds of C 64's back in the 80's and a few times a ratty clock caused the weirdest problems.
Be sure the clock is dead on the freq spec
Regards,
Glenn
DSSM Labs
I love watching your C64 repair videos, despite the fact that i don't have one myself!
I Know Right!
and even if I had one- I wouldn't know how to use it... last time I used one in about 94 I had a paper with notes to load up programs-- without that paper I am screwed
Adrian, it sounds like the interrupt is working, but maybe just misses the window when the diagnostic unit expects the interrupt. I’d blanket change any electrolytic caps in that whole circuit. Sounds like one has changed in value. Believe it or not, some electrolytic caps GAIN value in microfarads as part of their failure mode. I’ve seen this a lot on plain old aluminum types of electrolytic caps, and will totally mess with a 555 timer. Ceramic caps are pretty long-lived, so those should be OK, but if they are in a timer circuit, suspect them also. From the schematic, it looks like the 555 timer (one part of the 556) is used as a single shot with a specific time value and if it’s too long, (or short) it may miss the diagnostic window of being sampled. It is working (probably) but the timing is off regarding when it is expected. Also, that 7406 is a very high sink current open-collector inverter designed to drive MOS type silicon. If the pull-up resistor is open, the drive current is reduced and the inverter may no longer meet its specification high to low transition time and can be out of spec. Suspect the inverter chip and/or the pull-up resistor pack. Desolder the resistor pack and ohm out each resistor. Any resistor more than +/- 10% is out of tolerance. Great video!! Thanks!!
I was going to suggest checking the RP3 resistor pack to ensure all of the separate elements show the same resistance. However this sounds more likely to be correct. I suspect Adrian has already check it anyway as he's a clever fellow 😁🤷♂️
Just to set things straight, usually caps don't gain more actual C value, they just measure high because they are leaky (electrically) so they pass current through them instead of storing them. Regular C testers only measure how much current goes in and how much the voltage rises across the cap. Energy lost through the leak is accounted for as increased C because the tester cannot distinguis between stored current and leaked current. Any part which tests high in C should definitely be replaced.
Pentti Kantanen Quite right!! The ESR changes dramatically, due to leakage. I guess I should have expanded on that. Sorry.
@@BigDaddy_MRI To my understanding ESR and leakage are still different things. ESR is (low ohms) series resistance "between the capacitor plates and the load" whereas leakage is a high ohms DC current path between the plates. I don't think one is necessarily indicative of the other. A good tester will measure ESR, but I'm not sure if they account for it in the C rating measurement or not. That's something I would like to know actually now that I think about it. Off the top of my head I'd hazard a guess that ESR is usually not a major component in C testing because the current used is so low that not much energy is lost across the resistor. Test frequency is probably a factor here though.
If in doubt yank it out.😁
Adrian, check your subscriber count. We need that 65536 subscriber special!
Might be a long shot, but I was getting same issue with a recent fix. My test harness is different brand, but it turned out to be slight corrosion in the joystick ports. I had to use contact cleaner and work the plugs on and off several times. Really seat those plugs hard and get a good connection. Now I don't get that anymore. Worth a try.
At 12:00 ... man those beautifully hand drawn C64 schematics.. wow!
No CAD, no computer generated boards, all hand made... truly remarkable.
I just love seeing these old 64's getting some much deserved TLC. Thanks for adding to the number of living C64's out in the world.
Years ago I had to replace a RAM chip in my childhood C64, the replacement chip I scavenged was an MT Micron chip..... still works 20 years later :)
Perhaps it's just certain batches?
@@sheep1ewe certainly possible. At some point Micron started making really good RAM chips, but I don't know when that was.
@@davefarquhar8230 I hawe very little experience from them so i can't realy tell based on my own statistic, but i know other types of chipset from different manufacturers also had problems in some batches, but other from the same manufacturers seem to last like forever.
I guess it has to do with how well the manufacturing process managed to make a stable bound between the base material and the additives without drifting or degeneration ower time, if it for example run into problems with drifting ower time it will sooner or later run into a critical fault even if it worked perfect when it was new, but if the bound are stable it won't happen at all, so the only practical killer will be things like thermal stress i think. (at least that's my personal guess without knowing for sure).
you're very lucky. I have yet to have an Atari 65XE/130XE with MT RAM that doesn't have at least one faulty IC.
A lot of people say MT isn't a bad brand, but it may be more susceptible to over voltage. Well we know that happens on the stock bricks. So it's possible the only reason those chips are bad is because the original PSUs killed them. /shrug
I watch these electronics repair videos like as if they were about magic and sorcery.
Nah it’s Science.
Adrian I just want you to know I have never owned a C64 but Ive watched all of your videos and you made me also find a love for C64 and its family. Thank you for so many hours of enjoyment. Huge fan here!
It's a realy fun machine to experiment with, because it's pretty simple and it was originaly designed to be easy to learn and make Your own programs with.
It's also very easy to connect to Your own electronic experiments if one are interested in incorporating hardware to some project or laboration You hawe in mind (There was even a few 3rd part electronic kits especialy for that as i remember).
Even if it's less powerful compared to the later generations it's in my personal opinion a perfect first machine to start with, even if the price realy has ramped up the last years, (at least in Europe) it's still a very affordable machine and there are pretty lot of equipment and spare parts still around.
6 minutes in and no deoxit, I'm still sober.
LOL!!! Sorry, I'll do better next time.
You may want to add brasso to the game for enhanced future entertainment. :-)
Did you check the interrupt trace to the cartridge port? Maybe the Dead Test Cart can't sense the interrupt on that one board because to signal doesn't reach the cartridge port.
Michael Stoliker The cartridge is a normal Eprom cartridge like the openC64cart or the versa64cart. It does not do anything with the interrupts.
@@svenpetersen1965 Other than detect that interrupts are working?
Michael Stoliker the interrupts are not tested on the cartridge itself. The cartridge only holds the software. There are no special test fixtures on the cartridge. The feedbacks are all in the harness.
I was also going to suggest an investigation into feeds leading to the testing cartridge, if it all checks out, check for timing issues, but then again becuase youre refurbishing, I am guessing you probably already done that....
Favorite part, seeing the awesome CH Mach III joystick for the apple ii. My favorite 8bit analog stick of all time :)
Adrian, if I may suggest something: Get the Transformers game for C64, the Side B (it should be in a separate D64 file). This intro features some great speech and it stresses the SID chip totally, so it could be a great test for this chip.
isn't speech only done with the volume register? Why do you think it stresses the SID? Do you think rest of the SID registers are used/tested somehow with speech too?
Have you seen that the timers on both CIAs not running ? TOD stays on zero. I think the 60Hz for the timers is missing. If the timer does not counting down for underflow there is no interrupt. Check pin 19 for 60hz.
A really great troubleshooting video on multiple commodore 64's. I would say one you couldn't repair is still above average.
Hi Adrian, compliments on your repairs and videos.
I still do quite some repairs on c64’s amongst others, and I know what the ‘problem’ is with the interupt.
Nothing! It is the test, it’s not 100% correct, so it gives a false indication on some of the c64 motherboards. It all depends on the combination of the motherboard and the ic used. You can try several others ic’s and one of them might pass the test. Regardless, even though it indicates bad, it will work fine so don’t spend too much time on it... you have tested the signals and like you said it works fine.
Also check the voltage on pin 28 on the sid. Possibly a voltage spike on 9v input making that pop.
These repair videos are so interesting! Keep up the good work!
Regarding the faulty interrupt: you may want to test Datasette operations. As I recall it, it's possible to damage the CIA interrupt circuitry when resetting the C64 by user port pin 1 and 3 and accidentally connecting another pin. (Maybe it's just a fried diode.) The machine will work just fine in usual operations, but will show problems with the Datasette. I believe, the error condition ist the C64 not waiting for the play button being pressed, rather behaving as if it were pressed all the time.
(Actually, my own one is showing these symptoms.)
This gives me an idea: it also MIGHT be that the pitting on the cassette port is causing the test harness not to have a good connection. I don't know what - if anything - can be done to restore the pins on the cassette port, though.
Great video as usual, Adrian. Thank you very much!
If you don't mind some friendly advice, the only thing I would suggest is include more footage of your troubleshooting process (preferably not fast forwarded), particularly with regards to testing continuity between the chips and checking the various signals on your oscilloscope, logic probe, etc. You skipped over that whole process in this video with board #1. I think it would help others learn more of those necessary skills when it comes to troubleshooting their own boards.
Your videos are so spectacular. It brings me back to the 80s :-)
Great job, make more videos like this
ive been a IT admin for 25 years and this stuff is even way over my head lol .. I'm impressed you can figure this type(s) of problems in first place ...I only understood 20% stuff you said or even means , but very well done .
Electronics engineering can seem a bit complicated but if you're in networking or programming large complicated or low level projects EE is not so bad. At least if you stick with the basics. High frequency stuff is almost like magic. Luckily there's nothing approaching high frequency or high complexity on the C64 ;)
Its not over until it is over! I expect a part 3 soon.
1) checked the traces between the CIA, CPU and other chips?
2) checked the voltages to the chip while it is running? That trick with the thermo camera might be useful as a hot chip on the board would take away from the system power.
3) One thing I never seen you do is physically check the cartridge slot. Here in the ghettos of NYC roaches and other insects get into cartridge slots and muck up the place. Sparing you such details, have you De-Ox'd the cartridge slot? If this is a physical and not electrical issue De-Oxing the slot should fix it but you still need to clean out the slot. Good luck.
Fine steel wool and WD40 for polishing the contacts? Must be the fine stuff though. I use it on brass and it works a treat.
I can't get enough of watching these c64 uploads. I watched many of your vids now and found you by the 8bit Guy.
I like your channel.. 1 thing I noticed on the opening theme that every word say "by"actually looks like 64 ;)
my recently bought C64 model 250425 had MT ram chips with error on 0. Removed them all, put in 8 new sockets and installed brand new TMS 4164 - 15 NL. That did the job.
Adrian, I love your videos, a big thumbs up!! It is always fascinating to watch over your shoulder and I can learn such a lot about your techniques, the tools that you use and the hardware itself. Due to your videos I ordered some tools for myself too (except the Jonard chip extractor, for it is way to expensive for me here in Germany, I would not use it that much to justify this price to me) and had a look at the schematics. Thank you so much for your great work and keep it up!! All the best from Germany, Michael...
Awesome fixes! And I am so glad at least one of the SID chips works! ;-) Great vid as always! So glad those boards (and the 1541) are happier. Great start to the weekend! :-)
I've had a failed resistor array (or pack) on an arcade machine board recently, might be worth checking. They can get hairline cracks in them, they are intolerant of boards being flexed.
ah yes I've had that too. I do need to check all of the schematics.
Brasso is such a handy product. Not only does it polish all sorts of metals but it also polishes plastic brilliantly. Hope you find a solution to the annoying interrupt error. Cheers.
Jack Tramiel wasn't spending no extra pennies on some fancy chip sockets.
Brasso is pretty good for shining things up, it's downfall is dealing with corrosion spots, for that you need polishing compound, but on something as thin as gold-plated (well, I assume it's gold!!) edge connectors that could be problematic... :)
First of all, this is an excellent and very enjoyable repair series. Second, dang, that interrupt issue is a head-scratcher, but I am reading a lot of excellent theories and suggestions below. I know you can figure it out.😉 Third, I just added Brasso to my Amazon cart -- magic, that stuff!
I have been warned by others that Brasso is very very harsh so only use it carefully and on the most corroded things. Also, make sure to clean it off 100% when you are done (using alcohol.)
@@adriansdigitalbasement Oh, Okay. Good to know. I just received a bottle from Amazon. Thanks for the warning info.
It's always Christmas when I get that ADB notification
Wait, no Deoxit? Is Brasso the new drinking game?
what
YOU MEAN WE ARNT SUPPOSED TO BE DRINKING DEOXIT?! ... ... ...
A tiny amount of Brasso is probably OK on edge connectors like this which have quite bad surface corrosion.
But, I definitely would NOT recommend using Brasso on things like cartridge slot connectors / sockets.
It can be tough to completely clean off the Brasso afterwards.
(nor on any other types of connector where you can't easily clean off every trace of Brasso / Silvo.)
Brasso is a relatively harsh abrasive, so if even a tiny amount gets left on the contacts of a cart connector, it can wear down the edge connectors (fingers) of both the cart and the connector.
You did the right thing here by cleaning the edge connectors thoroughly with IPA afterwards. ;)
its also conductive
@@frogz Good point.
It's not ideal stuff for contacts unless you have very bad corrosion and it's a last resort.
Something like the type of Deoxit that doesn't leave any oils or residue behind would be a lot better.
In fact, Brasso does leave a film of polish behind, so it could actually be making the electrical contact *worse* unless it's completely cleaned off...
retrowaretv.com/the-dos-and-donts-of-game-cartridge-cleaning/
What else works great on oxidized contacts is a simple pencil rubber, lot less messy too :)
Funny that there are so many failures of the old Micron chips. I've been running into bad ones on DDR PC2700 RAM modules this past year. I used to think Micron was the best until recently.
I think Samsung makes the best RAM. Its often used on graphic cards.
Ahhh a new video from my main man AB.
It's 1am UK time and I'm happy :)
Great work and thanks Adrian.
P.s please do more crt videos
I love crts incase you didn't clock on already ;)
I think, as part of the interrupt test, the alarm timer on the CIAs are tested. This requires a proper TOD signal around that AND gate U27. I would view the TOD with a scope to check.
I don't think it's going to be that as the you can see in the video the clocks on the bottom line of the diag screen are showing the correct counts as the diag runs. This relies on the TOD input to these 6526 chips.
Never dull works nicely as well and is a little more convenient than Brasso.
Fixing this interupt would make a great video on it's own :) I wonder if it's in the cartridge circuits or something. Keep at it I'm sure you'll get it. I wish I had a basement and time :P
Maybe it is a bad NMI connection to the cartridge port. Test continuity of the NMI pin from the cart port. My guess is maybe the cart senses the NMI test via that pin?
As far as I understand it, the questionable IRQ (NMI) is mainly used for the RS232 interface. So you typically would not observe any malfunctions during other operations. You should check the connection to the cartridge port and maybe the pull-up resistor and its respective connections. A more complex check would be to trigger an NMI by U2 on your own and observe whether it reaches the CPU by resetting the NMI vector to your code. There are code samples around in the internet on how to do that. If that should be working as well, you can dismiss the error displayed by the diagnostic cartridge.
What is the voltage on that line? If it's too far above 0V, it may be registering as high on the dev board (but the chips are more tolerant) and you may have a bad pull-up resistor.
Came for repairs, stayed for the #8bitdanceparty
Another great video Adrian! Please consider doing a video on C64 pal/ntsc switcher via restore key using an arduino!
Next time, can you use Grand Prrix Circuit by Accolade to test the SID chip?. Love that song...
7406 chips in the C64 usually fails as it runs hot in general. You can test the NMI by hitting the RESTORE key very quickly (few milliseconds) and you will see your basic screen reset. This is achieved by the NE555 and the 7406.
Yeah RUN STOP + Restore works normally on this machine.
Hi Adrian, At 1' 49" , The first three memory chips are D4164C-2 and the fourth memory chip is a 4264-15 ...i.e first three 200nS and the fourth a 150nS...not sure if the chips are compatible without checking the type of the fourth one. Have you found that 150nS work OK with the slower 200nS ? It's over 30 years since I worked with memory boards.
I enjoy watching you work on the C64 boards as I had 3 of them.
I found out i love to watch you making stuff.
Before apply BRASSO, clean the gold finger with alcohol you can reduce the BRASSO to few drops, also use M-folder hand paper, cotton is way too expensive.
If the Restore key is working correctly than that is probably a good indication that the NMI line is not the problem. Something to try, continuity between U1 and U2, check any pin that connects U1 to U2 according to the schematic, there could be a data pin that is floating causing an issue. I'm not sure how the user port harness is wired but I would assume that U1.CNT connects to U2.SP and U2.CNT connects to U1.SP, are these connected when the harness is installed?
Woho, magic of editing - really improves the speed of desoldering 😂
Great series, Thank you Adrian! I have a mix of ten c-64, 64c, Plus4 and 128s that have been in clean, dry storage for years. Any recommendations for powering them up? They all worked back in the early 2000s but have not been powered up since. Should I source a new power supply before trying? I don't want to fry the chips! Thanks for any info and again, thanks for the great channel!
Yeah I'd get a new PSU -- the C128 ones are safe to use but the original C64 ones are bad. I cut the end off my C128 PSU and added the C64 connector to it -- then a femals C64 DIN and then can plug the 128 cut off wire back into it. That way it works for both machines.
Brasso can work well at polishing contacts, but you do have to be careful with it; use it too much and you may risk polishing off the plating.
Indeed .. and also I was reading you need to clean all the residue off very well afterwards with alcohol.
Because your glass has straight sides, I was wondering if you had some North Drinkware there.
Literal lol at the dance party! Love this channel.
Back in the 80's I had trouble generating the NMI using the restore button. Someone told me to change the value of a particular resistor and it worked perfectly from then on. I can't remember the actual part number, but you should be able to find it in schematic.
You had to hit it really hard ;-)
8:35 So... I'm not alone in this world.
8-bit dance party? LET'S DO THIS!!!
In regards to the interrupt fault - you are getting too good at repairing C64s, so the universe had to throw you a curve ball somehow! :)
Haha, seems like it right?
Hi Adrian. I really like your passion for old hardware and also your attitude. You really seem like someone who's not playing a role, who just wants to learn and share it's experience with the world. I really enjoy watching you.
Anyway. Maybe you should get the datasheet for the mos6526 and read the section on interrupt control. I just quickly did, and there's a 60Hz clock signal on pin TODIN that you should really check the accuracy of (relevant to the test performed in paragraph 2 of your dead test cartridge). And if it's there, verify the remainder of what's inside of that chip's datasheet regarding interrupts. Just a taught.
That doesn't surprise me. TOD is the Time Of Day clock built into both 6526 chips. So TODIN carries a 60 Hz signal to keep the TOD clocks accurate. However, that's all TODIN does; under normal conditions, it doesn't affect the functioning of any other part of the 6526 (that is to say, the TOD clock is not used to time Input/Output operations). If the signal wasn't accurate, you might not even notice unless you deliberately configure the TOD clocks to generate an interrupt (which the dead test cartridge does), or if something seems wrong with your random numbers... unless you override it by using a negative number like RND(-1), the RND function uses the seconds and tenths-of-seconds registers as part of its seed value.
@@SpearM3064 , as per the datasheet, TODIN is either a 50Hz or 60Hz clock required for accurate time. And paragraph 2 of the Dead Test Cartridge describes a test for the internal alarm of U1 and U2 by adding 2 seconds to their clocks and waiting for the alarm to go off. That timed alarm is provided by TOD, as stated by the datasheet (explained in first paragraph of the Time of Day Clock (TOD) section, on sheet 6). Now, I'm not saying this is the problem, I'm just pointing out something that's being tested in a failed test and hasn't been measured by Adrian.
@@brainiac9579 Well, yeah, I didn't say that the TOD clocks _couldn't_ be used for an interrupt. I'm saying that in their _default_ state (at bootup), they don't generate an interrupt. You have to set them up yourself to do that. Because of the latching feature, BASIC is fast enough to read and write the value of the clocks, but you need to know assembly language to test the interrupts. But you're right, of course; if that timing signal isn't accurate (or worse, if it's unstable / fluctuates), it can have a knock-on effect on other chip functions, like sending data bits to a device connected to the serial port.
@@SpearM3064 Finally decided to get the datasheet that Adrian is using, and reading, in the video. Also, again from the 6526 datasheet, there's 5 sources of IRQs (if the failing test is really only testing interrupts from that IC): underflow from TIMER A and B, TOD ALARM, Serial Port full/Empty and /FLAG. You can also setup the IC for multi IC communication with interrupt, which is the test that Andrian stated he didn't understoud the description of. So, I guess the circuitry involved into that is worth taking a look at. Also, I'm not sure as to the circumstances when that's used in real use cases, which might be why the computer is behaving normally, except when tested.
Hey Adrian great video! Could you please put a link to the pick tools you use to lift the chips in the desoldering video? Thank you and keep up the great work!
You know, I got that at a store in Portland so not sure how to order them online. (Harbor Freight) I'm thinking of buying another set as that curved pick I use it literally indispensable to me!
By a process of elimination, the 556 or the inverter are the remaining bits of the puzzle. If the 556 is too slow or fast, the interrupt may not happen slow/fast enough. Also check the signals back from the edge connector, assuming the harness has any part in any of this, as there are still some slightly dodgy looking connections there.
Sweet repair Adrian...
Greetings from Virginia.
Have you tried Rockwell 6522 as a replacement for the Mos 6526, I have heard they work but I have not tried myself.
Nice job, Adrian.
Adrian,
What is the dead test / diagnostic cart you use? Where can I purchase one? Thank you!
I wonder how Oxalic acid would do for removing mild corrosion? Barkeeper's friend is a retail source for this.
Barkeeer's Friend should work well for that. I've used it on game cartridges when nothing else would work.
Or use staetler 526 61 mars razor pencil, it's perfect for precise work. But don't apply to much pressure.
I really need to try the eraser method. I keep forgetting to buy one.
Brasso, great for polishing scratches out of perspex covers
That's good to know!
One more thing, can you try the ++ version of the diagnostic cartridge made by jani? I think it has a better test of the cia’s but I’m not sure
brasso ! wow that was a staple metal polish in the uk from way back (silvo was its counter part for silver plated stuff). impressive results must buy some. Its smell is pretty nostalgic :)
Yeah that slight ammonia smell. It works so damn well!
@@adriansdigitalbasement got a C64c on the bench so will give it a go!
One thing to try is to take both the known good 6526 and the known good 6510 and put them in the sockets on that board you’re having the trouble with; you might be getting the NMI/IRQ all right, but it may be that the 6510 on the problem board is a lot more strict about the timing of the signals, whereas the 6510 from your ZIF machine might be a bit “looser” on the timing requirements. At the same time, put both of the ASICs from the problem board in the ZIF machine and run the full test. Finally, examine the NMI/IRQ pulses directly on the pin(s) of the 6510 and see if the pulses have the correct duration, and the correct rise/fall times, without too much ringing on the rising edge. The problem might not even be with either IC, but with a marginal bypass cap; try bypassing them (both) with another of the same capacitance in parallel (you can just tack the leads on with a bit of solder.) HTH.
Oh those chips all work on another board without issue so it's something with the board itself.
On the 64 with the IRQ troubles: Have you measured the 60 Hz signal coming out of U27? Is that present on both chips (on the TOD line, pin 19 on the CIAs)?
(great video, by the way. it's always fun to try and guess what's bad :) )
I would check that as well. I think the CIA can generate an interrupt based on the value of the Time Of Day clock.
Wash the Brasso off very thoroughly. The ammonia can be very corrosive to other metals.
Good tip, thanks. Yeah I can smell the ammonia using it.
Awesome channel
Brasso on a Q-tip is a lot less messy, you only need a small dab.
You're simply great!
Do you have any document on recapping C64, c64c and Vic20. Plus do you know which mods have to be done on all those three machines to improve the video output? You also tickled my curiosity with your easy flash iii, how do you get that game menu?
I am re-equipping my electronic lab and you are of garât help.
Thanks for your great videos. Keep-up the good work.
Watch Jan Beta's channel he re-caps all his machines and has some mods for video out
I enjoy a lot your videos
Where can I get my hands on a dead test cartridge?
Take a look at eBay, there are several people selling them.
The 4066 is the fix for 2 of my C64s so I would have tried that first. -Mark.
check also resistor networks, seems impossible these fails but it happens.
If you want to save money on those expensive sockets you can just buy a bunch of long SIP socket parts that you can cut to any length or even combine. Then just solder one cut down strip to each side of where the DIPs go.
Yeah heh, I do that often when I'm out of a particular sockets :-)
Just a tip: use weimans metal polish instead of brasso. It's not nearly as toxic, and smells like toothpaste instead of nasty chemicals. Also brasso is supposedly acidic so make sure you get all of it off or it might corrode the board.
Yeah indeed people have mentioned that Brasso is hard on other parts -- so I'm going to go back and make sure to clean the boards again around where I used it to make sure it's all gone.
I keep trying to get the hardware folks where I work to sneak a 555 into the products we design. So far all I get are sighs and lectures on the long-term unreliability of RC timing circuits!
How old is that C64 now...? ;-)
Seems like the diagnostic cart should say more than interrupt bad since it goes thru many different modes it could say more words...
wow I just downloaded that DK Arcade and the SID file. The 1541 U2+ fixes pal/ntsc issues on raw sid files. It really is so much slower. lol Sounds different as a result. I like the faster speed better. lol The actual game sounds just like yours.
i was goingto say something along the lines of resistance or a bad clock signal, clock operation timer or something. if its irq, then its clock, if its non maskable interrupt.. its clock generation as far as i know, it may be resistance. check all the resistors, and and check continuity under the board?
Thanks Adrian.
a simple pencil eraser does a great job of removing patina from contacts.
almost, for sure, certain
You should start if possible, by asking the software author, what triggers the fault message. Only then do you understand what has been tested.
Erm, it's in the manual at 13:48
That is only the intention of the test, and at best the theory it uses. However, there may be false positives and logic mistakes in the implementation.
I should watch the video again and see if this has been answered, but there may be a problem with the timers, the setup of the timers, triggering of the timers, any interrupt table, the setup of the take, any interrupt mask and the setup of these, the target routine, and so on. It could be that the timers are just a bit too late for the verification, but still good for most applications, and so on.
Maybe there is a Bad Solder Joint somewhere on that Board that looks fine but is actually cracked.
Great video! Where do you get your basic ROM chip? Is there a third party making those chips?
I luckily had one in my parts bin. It would he possible with an adapter to use a 2732 EPROM
#*BitDanceParty just made my miserable day so much better
Well hey, tomorrow’s a new day. Get a good night’s sleep, have breakfast somewhere you like, jam out to some Donkey Kong Country soundtrack and you’ll cheer right up! :-D
@@nickwallette6201 Thanks, man :)
Coming in after burning myself while soldiering XD
Which war was that?
@@Okurka. Cold war.
@@HoboVibingToMusic Cold soldier joints are no good...
@@Tinker001 They weren't cold, no worries
What do you do with all these commodore 64’s?