14th Apr 2021, 10:42 pm | #1661 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
Re: Non-working Commodore PET 3016
Right, so now do this bit suggested earlier.
Code:
POKE 59426,0 If you then Code:
POKE 59426,255 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 10:48 pm. |
15th Apr 2021, 3:40 am | #1662 |
Octode
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,443
|
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 |
15th Apr 2021, 5:05 am | #1663 | |
Octode
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,443
|
Re: Non-working Commodore PET 3016
Quote:
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 |
|
15th Apr 2021, 5:26 am | #1664 | |
Octode
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,443
|
Re: Non-working Commodore PET 3016
Quote:
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 5:50 am. |
|
15th Apr 2021, 7:54 am | #1665 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
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. |
15th Apr 2021, 8:00 am | #1666 | |
Octode
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,443
|
Re: Non-working Commodore PET 3016
Quote:
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 8:08 am. |
|
15th Apr 2021, 12:19 pm | #1667 | |
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,821
|
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:
|
|
15th Apr 2021, 12:21 pm | #1668 | ||
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,821
|
Re: Non-working Commodore PET 3016
Thanks for digging all of this out - saved and looking through it all now.
Colin. Quote:
|
||
15th Apr 2021, 12:24 pm | #1669 |
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,821
|
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. |
15th Apr 2021, 12:24 pm | #1670 | |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
Re: Non-working Commodore PET 3016
Quote:
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. |
|
15th Apr 2021, 5:05 pm | #1671 |
Octode
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,443
|
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 5:28 pm. |
15th Apr 2021, 5:26 pm | #1672 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
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. |
15th Apr 2021, 7:04 pm | #1673 | ||
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,821
|
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:
|
||
15th Apr 2021, 7:08 pm | #1674 | |
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,821
|
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:
|
|
15th Apr 2021, 7:19 pm | #1675 | |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
Re: Non-working Commodore PET 3016
Thanks for trying the 6520 swap. It was worth a shot.
Quote:
...After 0 is poked ...After 255 is poked What sort of change do you see on those pins of UC6? |
|
15th Apr 2021, 8:10 pm | #1676 |
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,821
|
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. |
15th Apr 2021, 9:18 pm | #1677 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
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. |
15th Apr 2021, 9:38 pm | #1678 |
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,821
|
Re: Non-working Commodore PET 3016
|
15th Apr 2021, 9:43 pm | #1679 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
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.
|
15th Apr 2021, 9:58 pm | #1680 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,586
|
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). |