8th Apr 2021, 6:40 pm | #1441 | |
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,762
|
Re: Non-working Commodore PET 3016
Attached.
Colin. Quote:
|
|
8th Apr 2021, 6:45 pm | #1442 |
Octode
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,394
|
Re: Non-working Commodore PET 3016
It hadn't originally really mattered (to me at least) that the 2 channels being chosen each time weren't from either side of the buffers, as I'd thought these were only active when RAM was being accessed.
However, I now see that even when not read-enabled, they will be for writing - Hence the need for further cascaded Buffers on Main & Video-RAM. And this does makes these much easier to check, at least. I had gone through all the originally-captured signals, and found that the first ones shouldn't have been possible, with no activity on some CPU Databus lines. But the 2nd set had made much more sense, and I'd summarised them all in a table, also observing the odd approx 0.5V level on lines D4 & D5 - Although ONLY on the CPU-side, on the ones I looked at. I tried to paste the text file below, but it looks like you can't get tabs / spaces to work right here, so have attached this. And I now suggest re-capturing: U10-2(or3) alongside U10-19 on other channel U10-4(or5) alongside U10-19 on other channel - That way it can be seen if the odd level is a conflict during a read or a write. 2nd Boot: Memory-Bus Side CPU-Bus Side --------------- --------------- Line UE Pin Levels / duty (L:H) Line UE Pin Levels / duty (L:H) BD0 9 18/17 p17: 0V&4V Var.-burst D0 9 2/3 p3: 0V&4V Var.-burst BD1 9 16/15 p15: 0V&4V Var.-burst D1 9 4/5 p5: 0V&4V Var.-burst BD2 9 14/13 p13: 0V&4V Var.-burst D2 9 6/7 p7: 0V&4V Var.-burst BD3 9 12/11 p11: 0V&4V Var.-burst D3 9 8/9 p9: 0V&4V Var.-burst BD4 10 18/17 p17: 0V&4V Var.-burst D4 10 2/3 p3: 0V&0.5V&4V Var.-burst ** BD5 10 16/15 p15: 0V&4V Var.-burst D5 10 4/5 p5: 0V&0.5V&4V Var.-burst ** BD6 10 14/13 p13: 0V&4V Var.-burst D6 10 6/7 p7: 0V&4V Var.-burst BD7 10 12/11 p11: 0V&4V Var.-burst D7 10 8/9 p9: 0V&4V Var.-burst 1st Boot: Memory-Bus Side CPU-Bus Side --------------- --------------- Line UE Pin Levels / duty (L:H) Line UE Pin Levels / duty (L:H) BD0 9 18/17 p17: 0V&4V 60:40 D0 9 2/3 p3: 0V&4V 60:40 BD1 9 16/15 p15: 0V ***** D1 9 4/5 p5: 0V ***** BD2 9 14/13 p13: 0V&4V 25:75 D2 9 6/7 p7: 0V&4V 70:30 BD3 9 12/11 p11: 0V&4V 30:70 D3 9 8/9 p9: 0V&4V 30:70 BD4 10 18/17 p17 0V&4V 60:40 D4 10 2/3 p3: 0V&4V 60:40 BD5 10 16/15 p15: 0V&4V 60:40 D5 10 4/5 p5: 4V ***** BD6 10 14/13 p13: 3.5V&4.5V 60:40 ** D6 10 6/7 p7: 3.5V&4.5V 70:30 ** BD7 10 12/11 p11: 0V&4V 60:40 D7 10 8/9 p9: 0V&4V 60:40 |
8th Apr 2021, 7:10 pm | #1443 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,484
|
Re: Non-working Commodore PET 3016
I'm here, journey home delayed by car trouble and when I got in I found you all going at it with great interest so just decided to watch and learn.
Colin's single capture in #1441 appears to show half-levels on either UE10-3 or UE10-5 (was not stated) whenever UE10 is enabled in the right-to-left direction (reading from buffered data bus to CPU). Are we still on track to replace those buffers? (could just do UE10, but UE9 is the same device, same age, same place, doing the same job). |
8th Apr 2021, 7:21 pm | #1444 | |
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,762
|
Re: Non-working Commodore PET 3016
I have the sockets on order (ordered yesterday). Hopefully they will be with me tomorrow, but probably Saturday.
So we are still looking at replacing both UE10 and UE9. I'll do UE10 first and try that just to see, but I take your point about UE9 being as old. Colin. Quote:
|
|
8th Apr 2021, 7:37 pm | #1445 |
Octode
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,394
|
Re: Non-working Commodore PET 3016
It does look like UE9 is currently working OK
So I'd just change UE10 for now and re-test, to not have too many variables and save your 74LS244's / DIL20 sockets for now - In case they're needed elsewhere (which may not be that long away, giving how vulnerable these 74LS244's seem to be!) (It is possible to make your own DIL20 etc. sockets, by cutting down others / using two SIL strips, especially when not wanting to wait, but it's probably better to just do it properly first time and not have to potentially change again.) I'll have to check your list to see how many others of these are left that haven't been changed already! - Could be unlucky to have dodgy ones on Video-SRAM or Main-DRAM, but I believe some of these have already been changed. But might be lucky and actually get a significant change in it functioning, once UE10 has been changed. Last edited by ortek_service; 8th Apr 2021 at 7:43 pm. |
8th Apr 2021, 7:56 pm | #1446 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,484
|
Re: Non-working Commodore PET 3016
The address line buffers (UC3 / UB3) were changed quite early on.
The video RAM buffers (UE7 / UE8) were replaced as part of the process of fixing the video section. The buffers local to the DRAM (UI10 / UI11) have not yet been changed. The buffers separating the CPU data bus from the buffered data bus (UE9 / UE10), currently under examination, have not yet been changed. |
8th Apr 2021, 9:00 pm | #1447 |
Octode
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 1,265
|
Re: Non-working Commodore PET 3016
From #1441 then UE10 is almost certainly faulty.
#1439 seems to show UE9 is OK, but as you say could possibly still be not long for this world and Colin is getting quite expert at replacing chips now, after all he has had plenty of practice, more than me in the last few years It would be interesting to know the result with only UE10 replaced, just to confirm the debug process if nothing else. |
8th Apr 2021, 9:06 pm | #1448 | |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,484
|
Re: Non-working Commodore PET 3016
Quote:
By the time we get to the end it might very well seem that we could have done it in a tenth of the time just by re-chipping the whole PCB but any suggestion that we should do that at the start would have seemed appallingly destructive and a waste of potentially good ICs. I also think we've all learned a lot of useful stuff just by methodically working through all of these obstacles one by one. |
|
8th Apr 2021, 9:14 pm | #1449 |
Octode
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 1,265
|
Re: Non-working Commodore PET 3016
Debug at component level has been much more interesting.
As we have only had Colin replace one or two chips at a time, and verified each replacement, it has probably also been much more likely to succeed. If Colin had replaced every chip in one go, and then found it didn’t work, it would have been much more difficult to find out why. |
8th Apr 2021, 9:35 pm | #1450 | ||
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,762
|
Re: Non-working Commodore PET 3016
Rechipping the whole thing is the polar opposite of what I wanted to do I've learnt so much by doing this thanks to you.
Luckily I have the time to do this kind of thing now, and as you say, we've only replaced things when we're sure they're broken. I do sometimes wonder what happened to it - there's no obvious signs of any electrical catastrophes for example. Plenty of damp though. Colin. Quote:
|
||
8th Apr 2021, 9:36 pm | #1451 |
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,762
|
Re: Non-working Commodore PET 3016
|
8th Apr 2021, 9:55 pm | #1452 | ||
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,762
|
Re: Non-working Commodore PET 3016
Thanks for this. I've started to look at 6502 assembler now. Let's see if I have the patience. I have written some simple S/390 (mainframe) assembler a long time ago but am well out of practice.
Colin. Quote:
|
||
8th Apr 2021, 10:11 pm | #1453 |
Octode
Join Date: Apr 2018
Location: Newbury, Berkshire, UK.
Posts: 1,287
|
Re: Non-working Commodore PET 3016
Just don't use any of my code as any kind of style guide!
|
8th Apr 2021, 10:12 pm | #1454 |
Dekatron
Join Date: May 2008
Location: Derby, UK.
Posts: 7,735
|
Re: Non-working Commodore PET 3016
Just found this on YouTube: How to build an Arduino EEPROM programmer. Colin might find it useful, as he says he has an Arduino. It's Ben Eater again, explaining how to program a 28C16 using an Arduino Nano and a couple of 74HC595s.
__________________
If I have seen further than others, it is because I was standing on a pile of failed experiments. |
8th Apr 2021, 10:26 pm | #1455 | |
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,762
|
Re: Non-working Commodore PET 3016
How did you learn? Any useful web sites?
Colin. Quote:
|
|
8th Apr 2021, 10:27 pm | #1456 | |
Octode
Join Date: May 2012
Location: Perth, Scotland
Posts: 1,762
|
Re: Non-working Commodore PET 3016
Looks interesting.
Thanks. Colin. Quote:
|
|
8th Apr 2021, 10:31 pm | #1457 | |
Octode
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 1,265
|
Re: Non-working Commodore PET 3016
Quote:
|
|
8th Apr 2021, 10:37 pm | #1458 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,484
|
Re: Non-working Commodore PET 3016
Colin may not know that the 28C16 is a more modern equivalent of the 2716 EPROMs he is currently running test code in. Programming a conventional EPROM requires a special mix of unusual voltages and programming algorithms, and to erase them so you can use them again you need to shine a particular wavelength of u-v light on them for about 20 minutes. In other words you need a specific programmer unit and an EPROM eraser unit.
The 28C16 can be programmed -and- erased using no more than 5V and something which can generate the right programming / erasing signals, such as an Arduino. Once you have that setup you can write bits of code yourself, and programme them into a 28C16 and drop it into the UD9 position (with the same adaptor you use for 2716s). |
8th Apr 2021, 11:17 pm | #1459 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,484
|
Re: Non-working Commodore PET 3016
There is also a well known general Commodore emulator program called 'VICE' which emulates the C64, VIC-20 and the PETs, among others. It would be a useful way to learn, write and test PET 6502 code while you don't have a fully working PET.
|
8th Apr 2021, 11:28 pm | #1460 |
Octode
Join Date: Apr 2018
Location: Newbury, Berkshire, UK.
Posts: 1,287
|
Re: Non-working Commodore PET 3016
Well I had a PET 2001 when I was 16 (Well, it was my dads but it soon moved to my bedroom!) and learnt from reading the PET manuals and Rodney Zax's book "Programming the 6502" ( https://archive.org/details/Programming_the_6502_OCR ). I was doing computer studies at school too.
I also read Nick Hampshires "The PET Revealed" and "PET and the IEEE-488 Bus" (more a hardware book but useful insights into the OS) both of which are at http://primrosebank.net/computers/pet/pet_docs.htm And of course the user manual https://www.commodore.ca/manuals/pdf...ser_Manual.pdf and the monitor listing in the http://www.zimmers.net/anonftp/pub/c...l_(2001-8).pdf |