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 24th Feb 2021, 10:11 pm   #661
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 6,743
Default Re: Non-working Commodore PET 3016

That shows that all address lines are good at least as far as the output side of the address buffers. If you can now do the chip-select checks that Mark suggested?

For example, put scope probe (1) on pin 20 (CS1) of UD9 and scope probe (2) on DA0, ideally of the CPU socket. If you scope the data lines there you will be looking at them after they have passed through the databus buffers. I can appreciate that you might not be able to get to the 6502 socket data pins because of the NOP gizmo sitting on top, in which case you will have to scope the data lines on the left side of UE9 / UE10.

Whatever happens on the D0 data line while the PROM pin 20 is high is not really important, but during the period when pin 20 is low you should see line DA0 go to a distinct good logic 0 or logic 1 level - if you spread the sweep time out so you can see quite a few chip select pulses on scope channel 1 you should see that during some of the chip select pulses the D0 line is driven high and during other chip select pulses the D0 line is driven low. This is because on each successive chip select, a different address in the PROM is being read from. In some of the addresses bit 0 will be a logic '0', in other addresses bit 0 will be a logic '1'.

Repeat this for PROM CS1 vs. DA1 to DA7 of the databus, again looking to see good logic levels arriving at the CPU socket during chip select=low.

Then do this for the other three PROMs UD6-UD8.
SiriusHardware is offline   Reply With Quote
Old 24th Feb 2021, 10:21 pm   #662
julie_m
Dekatron
 
Join Date: May 2008
Location: Derby, UK.
Posts: 7,732
Default Re: Non-working Commodore PET 3016

Those frequencies are spot on!

The hard-wired data bus lines effectively mean the 6502 is seeing EA hex, which is a NOP instruction, in every memory location it tries to read. So the reset vector at address FFFC appears to contain EAEA, and execution after the seven-cycle reset sequence begins at that address. A NOP instruction takes 2 clock cycles; and on (or, in practice, just slightly after) the second "tock", the address lines will change to read the next instruction. So A0 will be high for two clock cycles, then low for two clock cycles, going high again after a total of four clock cycles. Another way of putting it is, one change on A0 takes two system clock cycles; and a full cycle on A0 requires two changes, or four system clock cycles. And with a 1MHz system clock, that will give a frequency of 250kHz on A0.

The ROM occupies addresses E000 to FFFF, so you should see definite activity on any of the data lines while all A13, A14 and A15 are high. Take channel one of your 'scope to one of the PROM chip select lines and channel two to each of the data lines in turn, select CH1 as the trigger source and whichever direction, rising or falling, shows anything interesting. It probably will be easier for you to do than it is for me to explain.
__________________
If I have seen further than others, it is because I was standing on a pile of failed experiments.
julie_m is offline   Reply With Quote
Old 25th Feb 2021, 12:15 pm   #663
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 631
Default Re: Non-working Commodore PET 3016

OK - to make sure I'm on the right lines, I attach Pin 20 of UD6 (yellow) and Pin 33 of the 6502 socket (green).

Do they look right before I go down the road of testing everything? I can't seem to get them in a better picture by altering any of the scope options - happy to be told I'm doing it wrong.

Scope probes are both set to 10x.

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

Colin.
ScottishColin is offline   Reply With Quote
Old 25th Feb 2021, 1:23 pm   #664
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 6,743
Default Re: Non-working Commodore PET 3016

You have one channel set to 1V / Div and the other set to 5V / Div - best to set both to 1V / Div so both signals are the same 'height'.

That first capture appears to show no activity (or constant logic 0 output) during UD6 chip select at DA0 on the CPU - which is surprising.
SiriusHardware is offline   Reply With Quote
Old 25th Feb 2021, 2:16 pm   #665
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 6,743
Default Re: Non-working Commodore PET 3016

Can I just check - when we say look at DA0 (etc) at the CPU socket we mean on the pins of the socket which is soldered into the PCB - not the one the CPU is plugged into on top.

If you were looking at DA0 on the CPU itself then it would be understandable to see a constant low bit '0', as that bit is low in the NOP opcode (EA = 1110 1010).
SiriusHardware is offline   Reply With Quote
Old 25th Feb 2021, 3:41 pm   #666
Mark1960
Heptode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 513
Default Re: Non-working Commodore PET 3016

Change the sweep time of the scope to something closer to the data timing on the bus. I think maybe 20us would be better.
Mark1960 is offline   Reply With Quote
Old 25th Feb 2021, 4:10 pm   #667
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 631
Default Re: Non-working Commodore PET 3016

No - I went lower and tried to hit the pin of the socket soldered to the motherboard.

Colin.

Quote:
Originally Posted by SiriusHardware View Post
Can I just check - when we say look at DA0 (etc) at the CPU socket we mean on the pins of the socket which is soldered into the PCB - not the one the CPU is plugged into on top.

If you were looking at DA0 on the CPU itself then it would be understandable to see a constant low bit '0', as that bit is low in the NOP opcode (EA = 1110 1010).
ScottishColin is offline   Reply With Quote
Old 25th Feb 2021, 4:22 pm   #668
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 6,743
Default Re: Non-working Commodore PET 3016

OK, could you capture UD6 pin 20 (scope channel 1) against each of the other data lines DA1-DA7 (Scope channel 2) at the CPU mainboard socket.

Also check the voltage on pin 21 (CS3) of UD6 (should be high ~5V).

Mark, you were the one who originally suggested that scope - do you know if it has any kind of logic analyser capability? It came with an awful lot of test clips, which suggests that it might.
SiriusHardware is offline   Reply With Quote
Old 25th Feb 2021, 4:38 pm   #669
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 631
Default Re: Non-working Commodore PET 3016

OK - one step forwards and one step backwards. I'm just trying to show Pin 20 right now with the settings as suggested above and cannot get a sensible wave form with 20us - see attached.

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

Is this a problem?

Colin.
ScottishColin is offline   Reply With Quote
Old 25th Feb 2021, 6:14 pm   #670
Mark1960
Heptode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 513
Default Re: Non-working Commodore PET 3016

I think you have the trigger level too high, close to 5v so the scope is triggering off noise. Try reducing the trigger level to about 1.4v, then it should only trigger on the rising edge at the end of each chip select.

Im a bit suspicious of the chip select on the 100ms sweep. Id expect a single bursts of 0v pulses but you seem to have pairs of bursts. This might just be related to sample rate, but see how it looks at 50ms and 20ms. Just to try and make sure the chip select is not enabled for two different memory ranges.
Mark1960 is offline   Reply With Quote
Old 25th Feb 2021, 6:20 pm   #671
Mark1960
Heptode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 513
Default Re: Non-working Commodore PET 3016

Quote:
Originally Posted by SiriusHardware View Post
Mark, you were the one who originally suggested that scope - do you know if it has any kind of logic analyser capability? It came with an awful lot of test clips, which suggests that it might.
I think it does, but for now I think the scope is the best option as we might be looking for bad logic levels caused by two outputs trying to drive the data bus at the same time and logic analysers can hide that kind of problem. Its also quite tricky to get all the probes connected.
Mark1960 is offline   Reply With Quote
Old 25th Feb 2021, 6:20 pm   #672
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 6,743
Default Re: Non-working Commodore PET 3016

Well, first I need to modify the request for the Volts / Div figure - I thought your screen was 10 divisions high, not 8, so the best Volts / Div setting for both channels will be 2V / Div rather than 1V / Div as I said earlier.

Just to go briefly through some oscilloscope basics - sorry if you already know this.

The faint squares made from dotted lines on the screen are the 'divisions' referred to on the settings for the 'horizontal' and 'vertical' knobs.

If you have the Vertical Volts / Division control set to '1V / Div', that means that each faint square going up or down the screen represents one Volt. Looking at your signal in the previous post, with the 'Vertical' setting at 1V / Div, your signal is a little over four divisions high, so your signal is a little over four Volts high.

The divisions going across the screen represent time, and the Horizontal 'Time/Div' setting determines how much time each division represents, typically in milliseconds or microseconds. In your previous post you have this set to 100mS / Division, not 20uS. Try changing it to 20uS (if that is one of the choices available) and see what that looks like.
SiriusHardware is offline   Reply With Quote
Old 25th Feb 2021, 6:22 pm   #673
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 6,743
Default Re: Non-working Commodore PET 3016

Quote:
Originally Posted by Mark1960 View Post
Im a bit suspicious of the chip select on the 100ms sweep. Id expect...
I am wondering if the address decoding is incomplete (by design) so the PROM gets selected more than once per sweep through the whole address range. 100mS / Div is rather slow, isn't that a five second sweep time? (screen is 50 divisions across). I would be expecting to see 'block' bursts of chip selects at such a slow speed. Let's just try it up at a higher sweep speed as you originally suggested.
SiriusHardware is offline   Reply With Quote
Old 25th Feb 2021, 6:50 pm   #674
Mark1960
Heptode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 513
Default Re: Non-working Commodore PET 3016

I was misreading the 100ms as the full sweep time rather than the time per division. I think still worth trying at 50ms and 20ms just to see if the chip select still shows double burst.

Looking at the 20us per division sweep, sample rate is only 4 MHz, so its probably better to try 5 or 10 us per division to get a better sample rate.

Still need to change the trigger level to approx 1.4v though.
Mark1960 is offline   Reply With Quote
Old 25th Feb 2021, 6:56 pm   #675
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 6,743
Default Re: Non-working Commodore PET 3016

Just too late to edit #673, I was looking at the 'divisions of the divisions'. Screen is 10 divisions across (not 50!), so at 100mS a one second sweep time - still rather slow?
SiriusHardware is offline   Reply With Quote
Old 25th Feb 2021, 7:00 pm   #676
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 631
Default Re: Non-working Commodore PET 3016

OK - I will read and digest the above and try again.

Only thing to initially note is that I haven't set any trigger numbers. All I am doing is putting the probes in place and then taking a screenshot of what I see. Should I be using triggers?

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

'Triggering' on a scope is where the scope holds the 'scanning dot' at the left hand edge of the screen until a specific point on the waveform being measured before letting it sweep across the screen. The idea is to get a rock steady picture by always starting the display sweep at the exact same point on the waveform.

You are using triggering already. On your most recent capture look at the top right hand corner of the oscilloscope screen. You see 'CH1' highlighted in yellow, to the left of that a picture of a 'rising edge', and to the right a voltage.

These indicate
-The scope is triggering when the signal voltage is rising, (rather than when it is falling)
-The scope is triggering on the signal on input channel 1
-The scope is triggering when the input signal rises past 3.76V.

Do you see the yellow arrow with a black 'T' at the right hand side of the screen? That is showing you the voltage level which the scope waits for the input signal to rise to before it starts the next sweep across the screen.

You should be able to click and drag that up and down to place the trigger level point at anywhere between the lowest voltage in the signal and the highest voltage in the signal. If you place it above the highest edge of the signal or below the lowest edge of the signal, the trace will lose lock and the signal will just look random.

To alter the vertical position of the channel 1 and channel 2 traces, look at your last capture again and this time look at the left hand edge where there is another yellow arrow marked '1'. That is indicating where the 0V base line is for channel 1. You can click and drag that to move it up and down the screen.

When looking at two DC signals such as the ones in the PET, one above the other, it would be usual to place the channel 1 0V base line on the thick middle line of the screen (the half way line) and the channel 2 0V base line on the bottom edge of the screen so that each signal has an equal amount of vertical space (four divisions) to be displayed in.

If you had the Volts/Div set to 1V/Div each trace would occupy up to five vertical divisions - 10 altogether - but you only have 8 vertical divisions on the screen, so to enable both signals to be shown on the screen at the same time without overlapping, you have to drop to 2V/Div so that each signal will be no more than 2.5 divisions high.
SiriusHardware is offline   Reply With Quote
Old 26th Feb 2021, 12:18 pm   #678
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 631
Default Re: Non-working Commodore PET 3016

Every day a school day - I was triggering and didn't know it. Thanks for the information. I have set the trigger to 1.38V on CH0 (nearest I can get to 1.4V). Scope probes are set at 10x.

I have done another reading of Pin 20 UD9 and Pin 2 UD9 (I can't sensibly get to the 6502 pins) and attch.

There's two pages.

For the second reading, I set the scope to 20us but that doesn't give me any reading at all on pin 20 of UD9. It does give me an intermittent reading of Pin2 of UE9 as attached - this comes and goes, but it's there.

Is there any good reason I can't get anything at 20us off the PROMs?

https://drive.google.com/file/d/1o-E...ew?usp=sharing

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

What you have at 20mS is more readable (in fact, very nicely set up) than what you have at 20uS for sure. I'm not sure why Mark wanted it at 20uS so we'll let him explain when he wakes up over there in Canada.

Maybe try another one with it spun out to 50mS so we can see more than one CE pulse?
SiriusHardware is offline   Reply With Quote
Old 26th Feb 2021, 2:17 pm   #680
ScottishColin
Heptode
 
Join Date: May 2012
Location: Perth, Scotland
Posts: 631
Default Re: Non-working Commodore PET 3016

Here you go.

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

Colin.


Quote:
Originally Posted by SiriusHardware View Post
What you have at 20mS is more readable (in fact, very nicely set up) than what you have at 20uS for sure. I'm not sure why Mark wanted it at 20uS so we'll let him explain when he wakes up over there in Canada.

Maybe try another one with it spun out to 50mS so we can see more than one CE pulse?
ScottishColin is offline   Reply With Quote
Reply

Thread Tools



All times are GMT. The time now is 4:54 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.