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 26th Feb 2021, 4:28 pm   #681
Mark1960
Heptode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 638
Default Re: Non-working Commodore PET 3016

At 20ms those solid green areas on the data trace are where the sample rate and horizontal sweep are not fast enough to separate the different logic states of the data line, though it does look better for the chip select but we need to see what the data line is doing when chip select is active.

Could you show the options available for the trigger settings on your scope? On my scope, a different type, the default is to show the trigger point at the centre of the screen. It looks like yours shows trigger point at the extreme left, so when you trigger on rising edge the screen shows only the data line after the chip enable is disabled. Trigger on falling edge might be better, or move the display of the trigger point to the right, depending on your scope options.

There is also my misunderstanding of the chip select behaviour on the PET. I expected a separate chip select pulse for each memory access, but thats not the case. There must be a separate output enable control on the prom that will pulse for each memory access.

In the data on the 20us sweep you can start to see the logic level at different times. It shows clear high and low logic levels, but also quite a few times appears stuck at an intermediate level. This might just be times when the data line is floating, but also possible two separate devices trying to drive the data in different directions, one high and one low, which would be a problem.

If you could check the data lines again after trying to change the trigger settings, we can look to see if those intermediate levels on the data are only when one prom chip select is low, or when any one prom chip select is low.
Mark1960 is offline   Reply With Quote
Old 26th Feb 2021, 5:57 pm   #682
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

The trigger options are as follows:

Sweep: Auto/Normal/Single
Slope: Rise/Fall

Colin.



There is other open-source software (Openhantek) that I could look into if this doesn't give us what we need.
ScottishColin is offline   Reply With Quote
Old 26th Feb 2021, 6:00 pm   #683
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,063
Default Re: Non-working Commodore PET 3016

Quote:
Originally Posted by Mark1960 View Post
There is also my misunderstanding of the chip select behaviour on the PET. I expected a separate chip select pulse for each memory access, but thats not the case.
Actually, I think it is as you understood it to be. Although there are two chip selects on each PROM, the active high CS3 is tied directly to +5V so the only one being used is the active low _CS1 (pin 20).

The relevant diagram section is:-

http://www.zimmers.net/anonftp/pub/c...N/320349-4.gif

Or in case you are having trouble viewing that, here's a screen grab.
Attached Thumbnails
Click image for larger version

Name:	2001N_PROMS_sch.jpg
Views:	24
Size:	72.1 KB
ID:	227726  
SiriusHardware is offline   Reply With Quote
Old 26th Feb 2021, 6:12 pm   #684
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,063
Default Re: Non-working Commodore PET 3016

Quote:
Originally Posted by ScottishColin View Post
There is other open-source software (Openhantek) that I could look into...
You're doing OK with what you have, I see no reason to divert you onto something else when you are just getting to know the current software a bit better. I think Mark just wants to know what the available options are so we don't ask you to choose settings you don't have. What are your available Time/Div settings on the 'Horizontal' control?

The _CS signal (pin 20 on each PROM is an 'active low' signal which means that it is at 5V when it isn't doing whatever it does, and at 0V (low) when it is doing whatever it does, in this case... selecting a chip.

A chip select pulse starts with a falling edge (going from 5V down to 0V), so it might be an idea in this case to set the trigger slope to falling edge, and that way the trace will set off on its journey across the screen at the beginning of a _CE pulse.

You might also be able to manually move the trace left and right using a 'horizontal position' control if there is one. (We can't see all of the controls you can see, only the ones you happen to include in your screen shots).
SiriusHardware is offline   Reply With Quote
Old 26th Feb 2021, 6:40 pm   #685
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

There's c.40 options for Time/Div ranging from 1ns to 5000s - so plenty to choose from.

In terms of horizontal position, when I pause the scope (which I do to take a screen shot), I can scroll the trace left for a limited time period to see some slightly different wave-forms if they exist - is that what you mean?

Colin.
ScottishColin is offline   Reply With Quote
Old 26th Feb 2021, 6:52 pm   #686
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,063
Default Re: Non-working Commodore PET 3016

Yes, the ability to 'pan' left and right can be useful.

I'm going to let Mark go with this for a while so you don't get conflicting instructions sending you in two directions at once.

In the meantime a little exercise for you:

Taking your screen shot in #680,

Can you say, roughly...

How many milliseconds there are between the falling edge of the first _CE pulse and the falling edge of the second _CE pulse?

How long (In milliseconds) is one _CE pulse?

Assuming the low edges of the _CE pulses are at 0V, what voltage is the _CE line at when it is NOT low?

(With the scope settings as they were, each horizontal division is 50mS: Each vertical division is 2V).

Last edited by SiriusHardware; 26th Feb 2021 at 6:57 pm.
SiriusHardware is offline   Reply With Quote
Old 26th Feb 2021, 6:54 pm   #687
Mark1960
Heptode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 638
Default Re: Non-working Commodore PET 3016

Quote:
Originally Posted by ScottishColin View Post
The trigger options are as follows:

Sweep: Auto/Normal/Single
Slope: Rise/Fall

Colin.



There is other open-source software (Openhantek) that I could look into if this doesn't give us what we need.
No need to try and change the software.

Try changing sweep to Normal. The trace should then not display unless it is detecting the trigger.

For slope select Fall.

Try one more time with these settings at 20 us per division.
Mark1960 is offline   Reply With Quote
Old 26th Feb 2021, 7:06 pm   #688
Mark1960
Heptode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 638
Default Re: Non-working Commodore PET 3016

Stay with UD9-20 yellow and UE9-2 green for now.
Mark1960 is offline   Reply With Quote
Old 26th Feb 2021, 7:33 pm   #689
Mark1960
Heptode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 638
Default Re: Non-working Commodore PET 3016

If you still see the halfway signals on UE9-2, try connecting a 4.7 k resistor as pullup to nearby 5v. This will hopefully show if that halfway signal is floating or being driven in opposite directions by two different outputs.
Mark1960 is offline   Reply With Quote
Old 26th Feb 2021, 7:58 pm   #690
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

Here's what I get:

https://drive.google.com/file/d/1Gog...ew?usp=sharing

Colin.



Quote:
Originally Posted by Mark1960 View Post
Quote:
Originally Posted by ScottishColin View Post
The trigger options are as follows:

Sweep: Auto/Normal/Single
Slope: Rise/Fall

Colin.



There is other open-source software (Openhantek) that I could look into if this doesn't give us what we need.
No need to try and change the software.

Try changing sweep to Normal. The trace should then not display unless it is detecting the trigger.

For slope select Fall.

Try one more time with these settings at 20 us per division.
ScottishColin is offline   Reply With Quote
Old 26th Feb 2021, 8:04 pm   #691
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

So I reckon each 'tick' on the horizontal line in the middle of the display is whatever the time/div setting is, so with that set to 50ms, I can see c. 13.5 ticks = 675ms.

I reckon each pulse is 12.5 * 50 = 575ms

If each dotted horizontal line is equal to the vertical voltage setting, then that's 2 x 2.0V = 4V

Have I got that right?

Colin.


Quote:
Originally Posted by SiriusHardware View Post
Yes, the ability to 'pan' left and right can be useful.

I'm going to let Mark go with this for a while so you don't get conflicting instructions sending you in two directions at once.

In the meantime a little exercise for you:

Taking your screen shot in #680,

Can you say, roughly...

How many milliseconds there are between the falling edge of the first _CE pulse and the falling edge of the second _CE pulse?

How long (In milliseconds) is one _CE pulse?

Assuming the low edges of the _CE pulses are at 0V, what voltage is the _CE line at when it is NOT low?

(With the scope settings as they were, each horizontal division is 50mS: Each vertical division is 2V).
ScottishColin is offline   Reply With Quote
Old 26th Feb 2021, 8:06 pm   #692
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

Do you mean connect a 4.7k resistor to pin20 of UD9 to a nearby 5V (eg pin 24 of UD9)?

Colin.


Quote:
Originally Posted by Mark1960 View Post
If you still see the halfway signals on UE9-2, try connecting a 4.7 k resistor as pullup to nearby 5v. This will hopefully show if that halfway signal is floating or being driven in opposite directions by two different outputs.
ScottishColin is offline   Reply With Quote
Old 26th Feb 2021, 9:05 pm   #693
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,063
Default Re: Non-working Commodore PET 3016

Quote:
Originally Posted by ScottishColin View Post

If each dotted horizontal line is equal to the vertical voltage setting, then that's 2 x 2.0V = 4V

Have I got that right?
You got the reasoning about the volts scale and the voltage right but - and I made exactly the same mistake the other day - each 'tick' on the horizontal bright line is one-fifth of a division, not one division. There are a total of ten divisions going horizontally across the screen (not fifty).

The vertical lines of dots mark the horizontal divisions. With that in mind, what is your revised figure for the time between the falling edges of the first and second _CS pulses, and approximately how long is one _CS pulse? Remember that the 'active' part of the _CS pulse is the bit where it is low, not where it is high.

(again with reference to your post #680).
SiriusHardware is offline   Reply With Quote
Old 26th Feb 2021, 9:17 pm   #694
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,063
Default Re: Non-working Commodore PET 3016

Mark, are you thinking that PROM _CS is held low for the entire time that the address is within the address range of the PROM? It does look that way - 4 inputs from BA12 to BA15 to the 74154 4-line-to-16 line decoder UD2. No other signal involved in the generation of the chip select. If so this is somewhat reminiscent of the situation with the MK14, you could intentionally damage something by deliberately writing to the PROM address area.

Last edited by SiriusHardware; 26th Feb 2021 at 9:22 pm.
SiriusHardware is offline   Reply With Quote
Old 26th Feb 2021, 9:26 pm   #695
Mark1960
Heptode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 638
Default Re: Non-working Commodore PET 3016

Quote:
Originally Posted by ScottishColin View Post
Do you mean connect a 4.7k resistor to pin20 of UD9 to a nearby 5V (eg pin 24 of UD9)?

Colin.


Quote:
Originally Posted by Mark1960 View Post
If you still see the halfway signals on UE9-2, try connecting a 4.7 k resistor as pullup to nearby 5v. This will hopefully show if that halfway signal is floating or being driven in opposite directions by two different outputs.
No, I had meant to add the 4.7k from UE9-2 to a nearby 5v.

Looking at the trace in #680, there is no need to try the pull up resistor yet.

It looks like UE9-2 is only just reaching 2v, which might be indicating that the output of UD9 is not as strong as it should be, or that something else is loading that signal more than it should. Instead of UE9-2 use the pin for the same data line on UD9. This is just to make sure the low voltage on UE9-2 is not a poor connection in the socket of UD9.

After you check that, using the same scope settings. Yellow on pin 20 of each of the proms, then green to each of the eight data lines. So what we are looking for is how each data line looks for each of the four proms. Its going to take some time, so if might want to check one prom at a time and let us review while you work on the next one.
Mark1960 is offline   Reply With Quote
Old 26th Feb 2021, 9:34 pm   #696
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

OK - so if each 'large' horizontal line is 50ms, then I reckon about 1.35 x 50ms = 67.5ms between falling edges.

And the active CS pulse is about 0.1 * 50ms = 5ms.

Why is active low? My logic says active is high....

Colin.


Quote:
Originally Posted by SiriusHardware View Post
Quote:
Originally Posted by ScottishColin View Post

If each dotted horizontal line is equal to the vertical voltage setting, then that's 2 x 2.0V = 4V

Have I got that right?
You got the reasoning about the volts scale and the voltage right but - and I made exactly the same mistake the other day - each 'tick' on the horizontal bright line is one-fifth of a division, not one division. There are a total of ten divisions going horizontally across the screen (not fifty).

The vertical lines of dots mark the horizontal divisions. With that in mind, what is your revised figure for the time between the falling edges of the first and second _CS pulses, and approximately how long is one _CS pulse? Remember that the 'active' part of the _CS pulse is the bit where it is low, not where it is high.

(again with reference to your post #680).
ScottishColin is offline   Reply With Quote
Old 26th Feb 2021, 9:37 pm   #697
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 647
Default Re: Non-working Commodore PET 3016

When you say "Instead of UE9-2 use the pin for the same data line on UD9." does that mean pin 9 on UD9?

Colin.

Quote:
Originally Posted by Mark1960 View Post
Quote:
Originally Posted by ScottishColin View Post
Do you mean connect a 4.7k resistor to pin20 of UD9 to a nearby 5V (eg pin 24 of UD9)?

Colin.


Quote:
Originally Posted by Mark1960 View Post
If you still see the halfway signals on UE9-2, try connecting a 4.7 k resistor as pullup to nearby 5v. This will hopefully show if that halfway signal is floating or being driven in opposite directions by two different outputs.
No, I had meant to add the 4.7k from UE9-2 to a nearby 5v.

Looking at the trace in #680, there is no need to try the pull up resistor yet.

It looks like UE9-2 is only just reaching 2v, which might be indicating that the output of UD9 is not as strong as it should be, or that something else is loading that signal more than it should. Instead of UE9-2 use the pin for the same data line on UD9. This is just to make sure the low voltage on UE9-2 is not a poor connection in the socket of UD9.

After you check that, using the same scope settings. Yellow on pin 20 of each of the proms, then green to each of the eight data lines. So what we are looking for is how each data line looks for each of the four proms. Its going to take some time, so if might want to check one prom at a time and let us review while you work on the next one.
ScottishColin is offline   Reply With Quote
Old 26th Feb 2021, 9:54 pm   #698
Mark1960
Heptode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 638
Default Re: Non-working Commodore PET 3016

Quote:
Originally Posted by SiriusHardware View Post
Mark, are you thinking that PROM _CS is held low for the entire time that the address is within the address range of the PROM? It does look that way - 4 inputs from BA12 to BA15 to the 74154 4-line-to-16 line decoder UD2. No other signal involved in the generation of the chip select. If so this is somewhat reminiscent of the situation with the MK14, you could intentionally damage something by deliberately writing to the PROM address area.
That does look like a possible problem, but when the PET is running NOPs it shouldn’t be a risk as there are no write operations.

I have heard it was possible to damage PETs by poking to the wrong memory addresses, maybe the PROM decoding was responsible for that.

It would also mean that PETs could be damaged if the software crashes, seems like a very poor design, especially with all those unused chip select pins on the proms.
Mark1960 is offline   Reply With Quote
Old 26th Feb 2021, 9:57 pm   #699
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 7,063
Default Re: Non-working Commodore PET 3016

Yes, I think if I had one working I would take those active-high CS3 pins of the PROMs to the R/_W signal line so at least they would only be enabled during a read operation.
SiriusHardware is offline   Reply With Quote
Old 26th Feb 2021, 10:08 pm   #700
Mark1960
Heptode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 638
Default Re: Non-working Commodore PET 3016

Quote:
Originally Posted by ScottishColin View Post
When you say "Instead of UE9-2 use the pin for the same data line on UD9." does that mean pin 9
Yes, if UE9-2 is D0, check UD9-9.
Mark1960 is offline   Reply With Quote
Reply

Thread Tools



All times are GMT. The time now is 8:57 am.


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.