• Please review our updated Terms and Rules here

Commodore PET 3032 fast vertical sync.

Arn_K

Member
Joined
Jan 4, 2023
Messages
24
Hello everyone,

I am currently trying to repairing my Commodore Pet 3032. I have a working motherboard and a defective motherboard.
the working motherboard gives an ok vertical sync signal (50hz in my case), but the signal on the defective board is much too fast. (to fast to measure with my old scope)
The defective board therefore only produces a horizontal line on the screen.

I have tried to measure and compare some signals but I am unable to find the error. Does anyone know what could possibly cause this?

Thanks in advance!

ps. the monitor does work with the working board so the monitor isn´t the problem.
 
As this is your first post, welcome to VCFED.

We could be opening Pandora's box here!

Can you tell me what you see with the oscilloscope on G8 pin 9 (this should be a SN7474 device).

I assume you have found the schematics online for your machine?

Dave
 
Yes i have downloaded the schematics from zimmers.

G8 Pin 9 should be the "next" signal. On both boards this signal is held low.
I´m not sure what this signal does but I think it is working fine because both board give the same signals.
 
The NEXT signal should be toggling on both boards...

It is the NEXT signal that provides the clock to a dual J/K flip-flop state machine (H8) that generates the VDRIVE signal. No NEXT no VDRIVE...

Dave
 
I've seen this before. In my case the vSync was at 1MHz due to a floating output from a 74LS08 AND gate at C6 (on my 2001-8)
On the 2001N/30xx it might be the LS74 at G8. A floating output from the LS08 AND gate pin 3, would cause that flip-flop to toggle at the clock rate.
Could also be the LS107 at H8
 
I´m going to work back from H8, all the signals seem OK, but I am unable to measure the next signal on both boards. But because the rest of the signals are OK I´m assuming something is wrong with the next signal.

This signal is generated on page 7 in G8, this IC is in a socket and it tests OK, the signals going in to G8 are also OK, except for pin 12. This pin is connected to a few logic gates (H5, G1, G2), a latch (G3), two 4-bit counters (F2 & F4) and two 74ls15 mux IC´s (F3 & F5).

G3 working, it´s in a socket and I checked it with another PET.

Could the counters at F2 and F4 or the two mux´es at F3 and F5 cause issues? Or am i going to far into one direction and not seeing something else...
 
Last edited:
Invariably the answer to your last question is yes! And include G3 in that list as well. The MUX F3 and F5 are a red herring though.

You need to work your way back from /200 LINES and /20 LINES.

In order for NEXT to be generated, G1/3 has to become HIGH and then clocked into G8 by pin 11 (VIDEO LATCH).

Note that NEXT will be quite a short pulse, as G8/9 (and the inverse output G8/8) will be cleared by B02H on G8/13.

If I remember correctly, there is a beautiful write up of how this circuit works. It is a state machine, so you can end up like a puppy chasing its tail if you are not careful!

It may have been @Hugo Holden that may have done the write up.

What oscilloscope are you using?

Dave
 
Last edited:
I think we have found the issue, the signals from G1, G2 and H5 are all fed by the two 4-bit counters (F2 & F4) and the latch at G3.
One of the counters gave a strange output and was getting warmer than the other one, so i replaced it and that seems to fix the vertical sync signal. :D


But now I have a different problem, there is some text on the screen, but it seems duplicated, the cursor is visible, and it is flashing, so I'm assuming that most parts of the computer are now functional.

I have plugged my PET ram/ROM adapter in to replace the ram and ROMs so those should be working.

Is this a common issue? Video ram maybe? I haven't seen this before and I'm not sure where to start...
 

Attachments

  • Pet repair 1.jpg
    1.4 MB · Views: 14
Good work with the diagnosis of your VDRIVE issues.

Unlikely to be video RAM itself, but could be related to the high video address line to the video RAM.

I will have a look in a minute for a few places for you to look at.

Probably SA9 stuck LOW.

Look at F3 pins 9, 10 and 11.

If F3 pin 11 is stuck LOW, this is pointing back to the same state machine again (F2 pin 12)... Have you got an inadvertent short circuit somewhere as a result of a solder blob or similar?

Dave
 
Last edited:
Is this a common issue? Video ram maybe? I haven't seen this before and I'm not sure where to start...
I haven't seen that one before, but it looks like an upper bit in the video address counter is failed and it's wrapping around to the start of video ram.
Hard to count the spaces from the photo. Video RAM is 1024 bytes on a 40 column PET which is 10 bits 1111111111
If the high bit was stuck low, it would display the first 511 characters (or 12.7 rows) then wrap around back to zero.

Address signal SA9 would point to the MUX at F3 (on page 7), or the 4 bit counter at F2
 
SA9 doesn't seem to be held low, there is a constant square wave on that pin, but it does look different from the other SA signals, there is less activity than the rest of the SA bus.
The mux at F3, counter at F2 and F4 and the latch at G3 are all in sockets and all those chips are working fine. (I tested them in a working PET)

So I think the state machine is working correctly, but there may be a problem with BA9, it is connected to C3 (74ls244 page 1) and E3 (mux 74ls153 page 5)
It is also connected to the ROMs with are not populated, so they shouldn't cause any issues.

Could any of these chips cause SA9 to be a constant squareware without any activity, or could it still be the VRAM?
 
It is unlikely to be BA9 to be honest. If it was, you could still only write one character into one location on the screen. It might be the wrong location of course.

It is more likely to be reading from the video RAM (and displaying the result) rather than the CPU side.

Let me think a bit more about the issue...

EDIT: I don't think it can be a video RAM issue. This would require one of the video RAM devices to pull SA9 low (or high). But this is not what you are seeing. In this case the fault would have to be inside one of the video RAMs and not extend to the outside. However, in this case, one of the video RAMs should be working properly and the other one not - so you would have a different display on the screen (I think). I may be wrong of course...

Don't forget that F3 pin 1 is constantly switching F3 pin 9 between pins 10 and 11. Is it possible that what you are seeing on F3 pin 1 is a constant HIGH output when pin 1 is causing the SA9 signal to be sourced from the state machine?

Dave
 
Last edited:
F3 pin 1 seems to be working fine, there is a nice constant square wave there on both the working and defective board.

The signal on F3 pin 1 and SA9 seem to be (almost) the same, not sure what could cause this, the mux isn't shorted internally, it works fine in a different board
 

Attachments

  • F3 pin 1 same on both boards.jpg
    889.8 KB · Views: 5
  • SA9 defective board.jpg
    820.7 KB · Views: 6
  • SA9 working board.jpg
    973.4 KB · Views: 6
EDIT: I don't think it can be a video RAM issue. This would require one of the video RAM devices to pull SA9 low (or high). But this is not what you are seeing. In this case the fault would have to be inside one of the video RAMs and not extend to the outside. However, in this case, one of the video RAMs should be working properly and the other one not - so you would have a different display on the screen (I think). I may be wrong of course...

Don't forget that F3 pin 1 is constantly switching F3 pin 9 between pins 10 and 11. Is it possible that what you are seeing on F3 pin 1 is a constant HIGH output when pin 1 is causing the SA9 signal to be sourced from the state machine?
In theory, the MUX should only switch to the CPU address lines when the CPU is actually addressing video RAM. There's some logic with BA11 and SEL8.
Unless a program is constantly writing to vRAM, it should only be selected around 60 time a second during the interrupt cycle.

But the video section draws the screen at 60Hz also, so SA9 should toggle at ~60Hz anyway with a ~50% duty cycle since it's half of the screen.

Arn_K, what does that signal look like? 50% high/low or a short duration pulse?
I think 3B (pin10) should be a periodic short pulse but 3A(pin11) should be roughly 50% and y3 should be roughly the same most of the time.

It's possible one of the vRAM chips is pulling down the address line, They are both 1K chips with 4 bits each. The MUX would prevent that from feeding back onto BA9.
If you pull one, or the other vRAM chips, you'll get garbage on the screen, but should be able to see if the pattern repeats in the middle or not.
 
Last edited:
The SA MUX switches on CLK1 (a 1 MHz clock) so is independent of what the CPU is actually doing.

Don't forget that the CPU can access the video RAM on half the clock cycle with the video circuitry on the opposite half of the clock cycle.

The CPU only reads data from (or writes data to) the video RAM when actually addressed.

Dave
 
I have attached some picture of the scope screen, all signals seem to be different from the working board.

When I remove one of the VRAM chips, there is some garbage on the screen, but there still is something where the text used to be.
 

Attachments

  • One ram chip removed.jpg
    972.1 KB · Views: 6
  • pin 9.jpg
    808.8 KB · Views: 5
  • pin 10.jpg
    942.4 KB · Views: 4
  • pin 11.jpg
    744.1 KB · Views: 5
The SA MUX switches on CLK1 (a 1 MHz clock) so is independent of what the CPU is actually doing.

Don't forget that the CPU can access the video RAM on half the clock cycle with the video circuitry on the opposite half of the clock cycle.
Ahh, yes. I see, that logic is only there for the read/write signal.
 
Correct.

I would use a 2 channel oscilloscope to trigger on CLK1 and then monitor the SAx signals on either the high or low side of CLK1 to see whether the MUX devices are doing their job correctly.

Dave
 
Yes that would work but unfortunate my scope doesn't support that, It doesn´t have triggers and I can only look at one channel at a time...
It is a scope from the late 70's, and it was very basic for its time, so it doesn´t have that many features.

Is there another way to find the issue?

I could put some chips in sockets and swap them with my working PET. But which ones should I swap out.
 
Back
Top