UK Vintage Radio Repair and Restoration Powered By Google Custom Search Vintage Radio and TV Service Data

Go Back   UK Vintage Radio Repair and Restoration Discussion Forum > Specific Vintage Equipment > Vintage Computers

Notices

Vintage Computers Any vintage computer systems, calculators, video games etc., but with an emphasis on 1980s and earlier equipment.

Reply
 
Thread Tools
Old 14th Apr 2021, 9:42 pm   #1661
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,058
Default Re: Non-working Commodore PET 3016

Right, so now do this bit suggested earlier.

Code:
POKE 59426,0
and then measure the voltages on the IEEE port 1,2,3,4,A,B,C,D connections - all those lines should be 0V / logic 0.

If you then

Code:
POKE 59426,255
and measure the voltages on pins 1,2,3,4,A,B,C,D again, all those lines should now be at logic 1 (~3V or greater).

If you get the voltages suggested, that will tell you that the port is working in output mode but not in input mode.

Generally speaking this is likely to be a problem with the MC3446 buffers, but we will also do checks to make sure it is not caused by UC6, depending on what the above checks find.

Last edited by SiriusHardware; 14th Apr 2021 at 9:48 pm.
SiriusHardware is offline   Reply With Quote
Old 15th Apr 2021, 2:40 am   #1662
ortek_service
Heptode
 
ortek_service's Avatar
 
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 629
Default Re: Non-working Commodore PET 3016

If it does turn out to be the MC3446 buffers, then unfortunate as only Quad 4-bit types with the 2 particular faulty bits being in different IC's.
Plus these are not as cheap as TTL Chips - 14.39 each at littlediode / $5 on an Italian 'bay' page. However a direct search on Cricklewood finds they do have MC3446AP ones at a not too bad for these 4 each.
- It's not clear if the MC3446A is different to the MC3446 (No A-suffix?)? originally fitted, as I can only find a full datasheet for (later?) Motorola MC3446A
and Texas Instruments copy of original Motorola MC3446.
However, I suspect the A suffix one was an improved replacement for original.

But could be unlucky in that 3 of these might actually be required, if the 3rd one (on some of the control lines) turns out to faulty when similarly tested (if not done already).

These IC's are a bit unconventional drivers, as they are open-collector but have internal potential divider termination that biases the line at 2/3 of 5V.

The middle of this webpage has a Faulty PET IEEE-488 Interface section: http://www.primrosebank.net/computer...sd_trouble.htm
- with images of extracts of the IEEE circuitry, that can be viewed fuller:
http://www.primrosebank.net/computer...s/ieee-488.gif
http://www.primrosebank.net/computer...E-488-data.png
http://www.primrosebank.net/computer...88-control.png

And this page also links to a book entirely on IEEE on the PET: http://www.primrosebank.net/computer...8_Bus_text.pdf
ortek_service is offline   Reply With Quote
Old 15th Apr 2021, 4:05 am   #1663
ortek_service
Heptode
 
ortek_service's Avatar
 
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 629
Default Re: Non-working Commodore PET 3016

Quote:
Originally Posted by Slothie View Post
The original "Basic 1" commodore PET (With the "*** Commodore Basic ***" banner rather than the "### Commodore Basic ###") had built in diagnostics that would activate by holding down a pin on the user port. Later versions apparently removed this feature rendering the LED on the main board redundant (possibly not fitted?). Commodore also made a cable loom that connected to the keyboard, cassette ports, user port & IEEE port and tested the ports - I believe the software came on cassette. I looked for a link to information on this, but ten or so minutes of searching yielded nothing but I did find the attached manual which might be interesting or give some clues/useful info. Looking through the archive sites on zimmer.net or 6502.org might prove fruitful.
>>
>>

I hadn't seen before that Commodore had removed the Diagnostics (Only on PET 2001?, but it seems the 30xx replaced that) after BASIC-1 - Maybe they were short of space across the ROM's.
But I have now discovered in this book that I recently-found (which also covers 6502 assembly-language instructions & programming on the PET), it says that on the later firmware, pulling Diagnostic_Sense low firmware goes into a Monitor program instead - Where most of the diagnostics are still there? (See page 262 etc): http://www.primrosebank.net/computer...Raeto_text.pdf


The loopback connections were listed in this text file: http://www.zimmers.net/anonftp/pub/c...iagnostics.txt which was from the index of PET info, here: http://www.zimmers.net/anonftp/pub/c...pet/index.html
There's also lots of various test utilities etc, here: http://www.zimmers.net/anonftp/pub/cbm/pet/utilities/


I also discovered these seemed to have been used with a much more advanced original Commodore 6502-replacement Diagnostic-tester - which could have been rather useful to have - with details inc. reverse-engineering of it here: http://www.6502.org/users/andre/peti...iag/index.html

Which I found from Commodore PET repair info page (which also has links to keyboard repair info): http://www.6502.org/users/andre/petindex/repairs.html


There's some useful summaries of diagnostics in this: https://www.classic-computing.org/wp...Bit_Repair.pdf
- Although website seems to be down, but can view a cache of it: https://webcache.googleusercontent.c...&ct=clnk&gl=uk
ortek_service is offline   Reply With Quote
Old 15th Apr 2021, 4:26 am   #1664
ortek_service
Heptode
 
ortek_service's Avatar
 
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 629
Default Re: Non-working Commodore PET 3016

Quote:
Originally Posted by ScottishColin View Post
OK - so here's a thing that may be useful to others.

While I'm waiting for the conductive paint to turn up, I tried something I've seen recommended elsewhere. I took a normal A4 blank sheet of paper and folded it up. Carefully, I rubbed it on each of the conductive pads on the bottom of the keys. It actually got quite dirty. I plugged/screwed the keyboard back together and all the keys bar 4 worked just fine.

I gave those 4 a working over with the paper and I now have a fully working keyboard. So I guess I've gone too early on the conductive paint, but if my paper-rubbing fix turns out to be temporary, it'll be useful.

Anyway - the keyboard is screwed back in and fully working.

What remains now is to test the ports - I can test the second cassette port easily enough.

Can anyone help with code to test the remaining ports?

Colin.
That's useful to know, and surprising that the originally-used IPA cleaning fluid hadn't completely cleaned the surface whereas try paper had! (Not sure if "Rubbing Alcohol" mentioned elsewhere is much different.
Although I have sometimes gently-scraped the surface of the conductive rubber with a flat-blade screwdriver / finger nail and noticed the surface change colour slightly from shiny black to more grey.
So maybe there is some stubborn muck that didn't shift too easily.
But I have sometimes worried that too much scrubbing with IPA etc. may remove conductive coating if that is mainly just on the surface and not embedded into the whole of the black-rubber part.

I presume the Diagnostic test firmware etc, mentioned in other places would test the other ports. There is a diagnostic loopback connector wiring for the User Port, but not about the parallel port.
Although it may be easier to just find what the PIA/VIA memory-mapped register locations are, set the control registers for the correct directions and write all 1's / 0's to all the datalines / control lines.
Then run a loop to read the registers for all the input lines (after resetting direction register for all inputs), and pull each input high & low in turn.
And I do recall some test routine listings in some of the PET books I found, with many of these at the bottom of: http://www.primrosebank.net/computers/pet/pet_docs.htm

Last edited by ortek_service; 15th Apr 2021 at 4:50 am.
ortek_service is offline   Reply With Quote
Old 15th Apr 2021, 6:54 am   #1665
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,058
Default Re: Non-working Commodore PET 3016

I am hoping that only two of three of the MC3446s s are dud as that BASIC test program employs the interface's ability to read its own output lines and does a fairly comprehensive test on the interface.

Of course it could be the 6520 but the simple way to find out is to temporarily swap the two 6520s to see if that alters the nature of the fault. If not, then we are back to the MC3446s. Cricklewood's price - if they really have them - is not too bad.
SiriusHardware is offline   Reply With Quote
Old 15th Apr 2021, 7:00 am   #1666
ortek_service
Heptode
 
ortek_service's Avatar
 
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 629
Default Re: Non-working Commodore PET 3016

Quote:
Originally Posted by ortek_service View Post

>>
>>
There's also lots of various test utilities etc, here: http://www.zimmers.net/anonftp/pub/cbm/pet/utilities/
>>
>>
http://www.zimmers.net/anonftp/pub/c...diagslevak.txt describes what's in http://www.zimmers.net/anonftp/pub/c...gslevak.d64.gz
Including this one that may have been useful if it runs from ROM image...

Address checker is a short routine to find faulty address or data drivers. It write numbers to memory and reads them back. If it finds an error, it writes the address and memory difference to the screen. If the memory was high when it should be low, the number is positive, the memory was high when it should have been low. If the number is negative, the memory was low when it should be high. analysis of the bits of the address and memory data can indicate potentially defective drivers.

Although obviously if 6502 can't write to screen RAM due to it / write path buffers (Or read path from screen RAM through to Char.Gen ROM) having faults, then it may not work too well.


There many other compilations there, so may well be some port-checkers (Not sure what performance tester ones are, and if they include this)

Last edited by ortek_service; 15th Apr 2021 at 7:08 am.
ortek_service is offline   Reply With Quote
Old 15th Apr 2021, 11:19 am   #1667
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

After the first POKE, all connections are 0.05V

After the second POKE, all connections are c. 3.25V with the exception of D which is c. 4.3V

Colin.


Quote:
Originally Posted by SiriusHardware View Post
Right, so now do this bit suggested earlier.

Code:
POKE 59426,0
and then measure the voltages on the IEEE port 1,2,3,4,A,B,C,D connections - all those lines should be 0V / logic 0.

If you then

Code:
POKE 59426,255
and measure the voltages on pins 1,2,3,4,A,B,C,D again, all those lines should now be at logic 1 (~3V or greater).

If you get the voltages suggested, that will tell you that the port is working in output mode but not in input mode.

Generally speaking this is likely to be a problem with the MC3446 buffers, but we will also do checks to make sure it is not caused by UC6, depending on what the above checks find.
ScottishColin is offline   Reply With Quote
Old 15th Apr 2021, 11:21 am   #1668
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

Thanks for digging all of this out - saved and looking through it all now.

Colin.


Quote:
Originally Posted by ortek_service View Post
Quote:
Originally Posted by Slothie View Post
The original "Basic 1" commodore PET (With the "*** Commodore Basic ***" banner rather than the "### Commodore Basic ###") had built in diagnostics that would activate by holding down a pin on the user port. Later versions apparently removed this feature rendering the LED on the main board redundant (possibly not fitted?). Commodore also made a cable loom that connected to the keyboard, cassette ports, user port & IEEE port and tested the ports - I believe the software came on cassette. I looked for a link to information on this, but ten or so minutes of searching yielded nothing but I did find the attached manual which might be interesting or give some clues/useful info. Looking through the archive sites on zimmer.net or 6502.org might prove fruitful.
>>
>>

I hadn't seen before that Commodore had removed the Diagnostics (Only on PET 2001?, but it seems the 30xx replaced that) after BASIC-1 - Maybe they were short of space across the ROM's.
But I have now discovered in this book that I recently-found (which also covers 6502 assembly-language instructions & programming on the PET), it says that on the later firmware, pulling Diagnostic_Sense low firmware goes into a Monitor program instead - Where most of the diagnostics are still there? (See page 262 etc): http://www.primrosebank.net/computer...Raeto_text.pdf


The loopback connections were listed in this text file: http://www.zimmers.net/anonftp/pub/c...iagnostics.txt which was from the index of PET info, here: http://www.zimmers.net/anonftp/pub/c...pet/index.html
There's also lots of various test utilities etc, here: http://www.zimmers.net/anonftp/pub/cbm/pet/utilities/


I also discovered these seemed to have been used with a much more advanced original Commodore 6502-replacement Diagnostic-tester - which could have been rather useful to have - with details inc. reverse-engineering of it here: http://www.6502.org/users/andre/peti...iag/index.html

Which I found from Commodore PET repair info page (which also has links to keyboard repair info): http://www.6502.org/users/andre/petindex/repairs.html


There's some useful summaries of diagnostics in this: https://www.classic-computing.org/wp...Bit_Repair.pdf
- Although website seems to be down, but can view a cache of it: https://webcache.googleusercontent.c...&ct=clnk&gl=uk
ScottishColin is offline   Reply With Quote
Old 15th Apr 2021, 11:24 am   #1669
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

More engraving on the back further confirming the Kendal College theory.

https://drive.google.com/file/d/12xn...ew?usp=sharing

Colin.
ScottishColin is offline   Reply With Quote
Old 15th Apr 2021, 11:24 am   #1670
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,058
Default Re: Non-working Commodore PET 3016

Quote:
After the first POKE, all connections are 0.05V. After the second POKE, all connections are c. 3.25V with the exception of D which is c. 4.3V
Looks like the outputs are driving OK but that different voltage on the 'D' line (= bit 7) is indicative that something is not right there - most likely a fault on the buffer input which is connected to that input / output line.

Try swapping the 6520s over temporarily and re-run your port test program. If the fault report does not change when you do that, that rules out the 6520.
SiriusHardware is offline   Reply With Quote
Old 15th Apr 2021, 4:05 pm   #1671
ortek_service
Heptode
 
ortek_service's Avatar
 
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 629
Default Re: Non-working Commodore PET 3016

If the MC3446 outputs are open-collector, biased internally at 2/3 * 5V (=3.3V), then it would seem that they are all being driven to ground OK. But when set high (open) then 'D' (DIO-8) going to 4.3V must be due to an internal fault in UA7 (although may still work at that / could be bodge-able with an external resistor if this was only fault with UA7).
And this shows that the UC6(6520)'s PA0..7 (outputs) are working OK at least.

However, DI-1 & DI-8 not being read back when high, is another issue with either the UA7 & UA8 buffer's bit-4 input stages or the UC6(6520)'s Port B PB0 & PB7 inputs - But could measure voltage on UC6(6520) pins 10 & 17, with Data Outputs all set high (via POKE 59426,255) to check what the Input-Buffers are sending to the UC6(6520) PIA (as well as / alternative to swapping 6520's)

I don't presume any of the UA7, 8 or 9 MC3446's are socketed?
- That might make testing of the original UA9 one a bit easier, as UA9 looks a bit more difficult to set outputs / read inputs from the UC6(6520) PIA (& I think the 6522 may also be involved, from looking at the various IEEE Block etc. diagrams I previously linked-to)

Last edited by ortek_service; 15th Apr 2021 at 4:28 pm.
ortek_service is offline   Reply With Quote
Old 15th Apr 2021, 4:26 pm   #1672
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,058
Default Re: Non-working Commodore PET 3016

I'm afraid all three of those buffers are soldered in place. If UA7 / 8 were socketed then, assuming the buffers are at fault, swapping them would move the fault to bits 3 and 4.

In an earlier PET thread we also eventually ran into problems with these buffers and the OP in that case ordered a set of replacements from somewhere in Europe - but although described as MC3446s the small print said they were actually something else which was an equivalent. Unfortunately I didn't remember to note down what that was but I have asked the OP (who has been back here recently) if he would kindly read the numbers off the chips he received, as they did fix his IEEE port problem.
SiriusHardware is offline   Reply With Quote
Old 15th Apr 2021, 6:04 pm   #1673
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

I have swapped the 6520s over and I get the same result - bits 7 and 0 fail.

Colin.


Quote:
Originally Posted by SiriusHardware View Post
Quote:
After the first POKE, all connections are 0.05V. After the second POKE, all connections are c. 3.25V with the exception of D which is c. 4.3V
Looks like the outputs are driving OK but that different voltage on the 'D' line (= bit 7) is indicative that something is not right there - most likely a fault on the buffer input which is connected to that input / output line.

Try swapping the 6520s over temporarily and re-run your port test program. If the fault report does not change when you do that, that rules out the 6520.
ScottishColin is offline   Reply With Quote
Old 15th Apr 2021, 6:08 pm   #1674
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

Re voltages on pins UC6/10 and UC6/17

They are both 3.86V before I type the POKE and then go to c. 3.75V after the POKE.

Colin.


Quote:
Originally Posted by ortek_service View Post
If the MC3446 outputs are open-collector, biased internally at 2/3 * 5V (=3.3V), then it would seem that they are all being driven to ground OK. But when set high (open) then 'D' (DIO-8) going to 4.3V must be due to an internal fault in UA7 (although may still work at that / could be bodge-able with an external resistor if this was only fault with UA7).
And this shows that the UC6(6520)'s PA0..7 (outputs) are working OK at least.

However, DI-1 & DI-8 not being read back when high, is another issue with either the UA7 & UA8 buffer's bit-4 input stages or the UC6(6520)'s Port B PB0 & PB7 inputs - But could measure voltage on UC6(6520) pins 10 & 17, with Data Outputs all set high (via POKE 59426,255) to check what the Input-Buffers are sending to the UC6(6520) PIA (as well as / alternative to swapping 6520's)

I don't presume any of the UA7, 8 or 9 MC3446's are socketed?
- That might make testing of the original UA9 one a bit easier, as UA9 looks a bit more difficult to set outputs / read inputs from the UC6(6520) PIA (& I think the 6522 may also be involved, from looking at the various IEEE Block etc. diagrams I previously linked-to)
ScottishColin is offline   Reply With Quote
Old 15th Apr 2021, 6:19 pm   #1675
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,058
Default Re: Non-working Commodore PET 3016

Thanks for trying the 6520 swap. It was worth a shot.

Quote:
Re voltages on pins UC6/10 and UC6/17...
If you try the same thing with UC6 pin 11 / UC6 pin 16...

...After 0 is poked
...After 255 is poked

What sort of change do you see on those pins of UC6?
SiriusHardware is offline   Reply With Quote
Old 15th Apr 2021, 7:10 pm   #1676
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

UC6/11 and UC6/16 before any POKE - 3.85V

UC6/11 and UC6/16 after POKE 59426,0 - 0.4V

UC6/11 and UC6/16 after POKE 59426,255 - 3.87V

Colin.
ScottishColin is offline   Reply With Quote
Old 15th Apr 2021, 8:18 pm   #1677
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,058
Default Re: Non-working Commodore PET 3016

That much larger difference is what I was looking for. I'm afraid it seems you need at least two replacement MC3446 ICs. You may eventually need a third, although if you could get UA9 out in one piece you would be able to swap it with the replacement UA7 / UA8, as per Owen's suggestion, in order to check it using your test program.

Just got a response from John over in his thread, which you may have seen - the parts he used to repair his IEEE interface were sold as MC3446 equivalents and were marked (Motorola logo) 1820-1689.

I found this useful list of Hewlett-Packard part numbers of ICs which for reasons best known to them, they rebranded with their own part numbers.

http://matthieu.benoit.free.fr/cross...nt/hp-part.htm

If you do a CTRL-F on that page and search 1820-1689 you will find that was HP's part number for their rebranded version of the Motorola MC3446.

The first thing to say is that you don't actually have to fix this fault unless you plan on using the IEEE port with an SD2PET or an original Commodore disc drive if you can find one.

If you want the machine to be completely working (I know I would) then I would try hitting up Cricklewood to see if they really do have them at the advertised price, as that would be a good price if they do.
SiriusHardware is offline   Reply With Quote
Old 15th Apr 2021, 8:38 pm   #1678
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

Are these the ones from Cricklewood?

https://www.cricklewoodelectronics.com/MC3446AP.html

Colin.
ScottishColin is offline   Reply With Quote
Old 15th Apr 2021, 8:43 pm   #1679
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,058
Default Re: Non-working Commodore PET 3016

I'm going to say yes, but a second / third opinion would be appreciated. I'm not quite sure what the 'A' signifies but traditionally it tends to mean an enhanced or faster version.
SiriusHardware is offline   Reply With Quote
Old 15th Apr 2021, 8:58 pm   #1680
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,058
Default Re: Non-working Commodore PET 3016

If you trust far east sources, there are a few on UTsource at the moment. I have never used this site but I believe Tim(bucus) and Mark1960 are regular users.

https://www.utsource.net/sch/MC3446.html

(Change the currency button at upper right to get the prices in GPB, which probably do not include shipping).
SiriusHardware is offline   Reply With Quote
Reply

Thread Tools



All times are GMT. The time now is 8:05 pm.


All information and advice on this forum is subject to the WARNING AND DISCLAIMER located at https://www.vintage-radio.net/rules.html.
Failure to heed this warning may result in death or serious injury to yourself and/or others.


Powered by vBulletin®
Copyright ©2000 - 2021, vBulletin Solutions, Inc.
Copyright ©2002 - 2021, Paul Stenning.