• Please review our updated Terms and Rules here

8032 wrong characters ?

harry

Experienced Member
Joined
Oct 19, 2007
Messages
310
Location
United Kingdom
I have been spending some time trying to resurect a CBM 8032, the machine, although cosmetically very good, appeared dead. I have checked many things, one thing I found, was no -5v on the dram, after replacing the bridge rectifier, (cr2,) & caps, and diode, the -5v was now good, except there was a short from somewhere on this -5v supply to the ram chips,which being all soldered in,finding this was going to be impossible for me, so I replaced all 16 ram ic's with sockets, and fitted what was good 4116 ram I had,into these sockets, the fault was now gone, but the machine still showed no sign of life.
I have a smilar 8032, still working,thanks to Anders, who supplied me the m/b many moons ago.so I used this to check out the roms one at a time, and found three of them faulty, and of course these would only produce a blank screen. I decided to download the rom images and make a complete set of new roms using 2532 eproms. When fitted there was still no life? so I decided to check out some signals with the logic probe, which showed the 6502 address lines were all high? I replaced the 6502, and now had some life on screen, but mostly double brackets every where. The 2116 video ram was luckily in sockets, and replacing two of these cleared up the screen. and the "commodore " text was sort of there. I had no chirp when switching on either? swapping the 6522 gave me the chirping back, (or bleeping if you like, )when switched on, so things were looking good, ....BUT looking at the message on screen you can see the characters are not correct, I swapped the character rom over from the other machine, but nothing improved, I am strugling to understand the way the characters are enabled, and sent to screen, and would welcome some help to sort this problem, If I use the keyboard,some letters, or no.'s appear as typed, others will produce an incorrect letter first, but strangely, if the same key is typed again the correct letter appears, and changes the previous incorrect letter to the correct one typed? I have tried to explain what is happening, but I could take some more pics if needed. many thanks harry
 

Attachments

  • nsmail-19.jpg
    nsmail-19.jpg
    6.9 KB · Views: 2
Last edited:
Harry,
You have done a great job with this PET. I think there may be a soft error in the LSBs of the even display RAM. Note that only the even locations occasionally screw up. I would change UC4.
-Dave
 
Hi Dave, thanks for quick reply, I have tried changing the 2114 at UC4, and the other ram in UC5,6 & 7, but nothing changes, characters are still incorrect. I
have been looking at the schematics, but have not understood how the characters are fetched, does the contents of the character rom get loaded into the video ram locations on start up? or are the characters fetched indiviually from the character rom as required. thanks Harry
 
Hi Dave, thanks for quick reply, I have tried changing the 2114 at UC4, and the other ram in UC5,6 & 7, but nothing changes, characters are still incorrect.
Right now the errors seem to be only in the even locations. If you swap the 2114 RAMs between UC4 and UC6 and the problem goes to the odd locations then the RAM chip may have a soft failure. Put a new chip in UC6. If the problem stays in the even locations, the RAM is good and the problem may be a bad solder joint in socket at UC4, or a subtle timing issue with one of the chip around the video RAMs.


I have been looking at the schematics, but have not understood how the characters are fetched, does the contents of the character rom get loaded into the video ram locations on start up? or are the characters fetched indiviually from the character rom as required.

Harry,
The video RAM contains only ASCII data. The character generator ROM is used to convert the ASCII data into scan display dot patterns that is loaded into a shift register on the fly as required. The shift register is shifted out at 8 MHz to create the video data (pixels) for the screen.
 
Dave, I swapped the ram around as you described, and then also removed the board to check all joints at UC4 ,5,6,7 etc. nothing bad, and no changes to any of the characters that are affected. Assuming the video ram is ok, am I correct in that the code has to be latched together from each ram to then send to the character rom, what do you think if the latch ub3 and ub8 are not working correctly? I know the character rom is ok, so I suppose I could look at the outputs from the latches, and compare them to the working machine I have, what do you think is best next?
 
what do you think if the latch ub3 and ub8 are not working correctly?

I thought of the UB3 latch also as it holds the even data. I think it may be hard to spot on a scope. Perhaps an easy thing to try would be to write a few lines of BASIC to test the $8000 - 8020 area of RAM (video RAM) to verify the problem is not in the input path to the RAM from the CPU. If that is good then the problem would almost have to be UB3 on the video refresh path. What do you think? Where's MikeS when we need him?
-Dave
 
I thought of the UB3 latch also as it holds the even data. I think it may be hard to spot on a scope. Perhaps an easy thing to try would be to write a few lines of BASIC to test the $8000 - 8020 area of RAM (video RAM) to verify the problem is not in the input path to the RAM from the CPU. If that is good then the problem would almost have to be UB3 on the video refresh path. What do you think? Where's MikeS when we need him?
-Dave
Out of town ;-) Don't know what I can add though; looks like you guys are doing fine. Yes, try to determine whether the problem is in loading the VRAM or displaying it as Dave suggests; if it is one of the MUX chips then probably only either the lower or upper four bits would be affected.

Could indeed be one of the latches I suppose. Interesting that writing to a location sometimes changes what's displayed in an adjacent location; almost sounds like a timing problem where a clock signal is delayed and maybe overlapping the latch enable signals...

Do you see anything interesting or useful if you fill the screen, first with one pair of 2114s removed and then the other; any difference? Can we nail it down to the odd or even section?
 
Last edited:
Could indeed be one of the latches I suppose. Interesting that writing to a location sometimes changes what's displayed in an adjacent location;

Yes, as adjacent locations are in physically different RAM chips. I sure hope we do not have an addressing glitch.


almost sounds like a timing problem where a clock signal is delayed and maybe overlapping the latch enable signals...

Maybe we should hang a 'magic' 100 pF cap on the video latch signal UB3 pin 11 to see if things get better or worse??
 
Mike, and Dave, Thanks for help. This evening I have tried things as Mike suggested below .......

"Do you see anything interesting or useful if you fill the screen, first with one pair of 2114s removed and then the other; any difference? Can we nail it down to the odd or even section?" [/QUOTE]

The results seem to show that with only the two even rams fitted, (uc4, uc5,) the characters on screen are correct but spaced apart,with gaps where the missing characters should be. ie c-m-o-o-e b-s-c 4-0
with only the two odd rams fitted, ( uc6,uc7) characters are correct but these are the missing characters from above ie -o-m-d-r- -a-i- -.-
If I fit one more ram or two to make up three or four in total , the characters are incorrect, no matter which pair is left fitted,
It would show that when evens and odds are fitted together, things are getting messed up, but when fitted as a pair on their own things seem ok,or at least as above,
where to go from here??
.... Harry
 
Last edited:
Darn; I was hoping there'd be a difference so we could pin it down to the even or odd half. Since it probably only affects certain letters you might try it again with more characters than just the boot screen, but it probably won't make any difference.

It looks like bit 2 is staying low in certain addresses, which will only affect these letters: defglmnotuvw.

Try what Dave suggested; assuming it's always the same locations that are wrong, everything else is working, and you can enter BASIC commands down below the sign-on message without changing it (and read the results), try PEEKing the following locations immediately after turning on the computer:

32778
32780
32938
32944

Assuming that your typing has not changed the sign-on letters up above you should get either 15,5,5,5 or 11,1,1,1; which is it?
 
Assuming that your typing has not changed the sign-on letters up above you should get either 15,5,5,5 or 11,1,1,1; which is it?

Mike,
I think I see what you are trying. If the statement ?peek(32778 ) shows a 15 (letter o rather than k) correctly then the problem may be in the screen refresh circuit.

If it is in the screen refresh circuit, it seems to me either the even or odd LS373 octal latch (UB3 or UB8 ) is bad. However, they should not interfere with each other as they are enabled on opposite phases of the 1 MHz clock. The even latch is enabled using CLK1 NOT and the odd latch is enabled using CLK1B. It is possible that one of these clocks is skewed such that there is an overlap which may cause the problem, but wouldn't one see more screwed up characters? So the would seem it must be UB3 or UB8. Since the even addresses are being screwed up by the odd, then perhaps the problem is with the odd latch UB8. What do you guys think?
 
Mike, you are exactly correct with the list of wrong characters, and I have peeked at those address's which give..11,5,5,5 not easy to enter text,or no.s as I have to space things in order to get the right characters or number to appear in order on screen ,
 
Dave, I was going to try what you suggested with a 100pf cap,( and I still can if you think I should) but I think the latches seem to be working, as just two rams either odd, or even, working together seem ok ish!
I did spent some more time checking around and comparing pins and signals with a working machine, and while doing this the screen on the malfunctioning machine went black! I thought I must have shorted something, but anyway, swapping the crtc controller, the screen is working again .Prior to this , one thing I noticed on UC11 was all pins 1to 8 on the naughty machine, show nothing, all flat lines, but my working machine has some sort of activity on pin 7, not much else shows up at present.
At home our internet connection is constantly dropping out! yes we, and many others are waiting for line repair men! I will carry on investigating this evening, any more thoughts .? thanks Harry.
 
Last edited:
Mike, you are exactly correct with the list of wrong characters, and I have peeked at those address's which give..11,5,5,5 not easy to enter text,or no.s as I have to space things in order to get the right characters or number to appear in order on screen ,

We expected either 15,5,5 (letters o,e,e) or 11,1,1 (letters k,a,a). The position on screen is important so do not let the screen scroll. The first set is the correct data indicating that video RAM is correct and the problem is in the screen refresh circuit.
 
but I think the latches seem to be working, as just two rams either odd, or even, working together seem ok ish!

Not necessarily. The outputs of the latches (UB3 & UB8 ) are tri-stated together, so if one is malfunctioning, it can possibly effect the data in the other. They only worked properly when one set of RAMs were missing. This would have the effect of keeping that latch at all ones minimizing any problems.

one thing I noticed on UC11 was all pins 1to 8 on the naughty machine, show nothing, all flat lines, but my working machine has some sort of activity on pin 7, not much else shows up at present.

Harry, I do not have the 8032 schematic memorized. What is UC11 and where is it (what sheet #)?

Your PET is giving us an interesting problem that I have never seen. Hang in there and you will fix it soon.
 
Dave, I am work at present, so the 8032 is at home, I hope I am able to get an internet connection there tonight, so I can double check those Peeks,and let you know the outcome but the screen certainly did not scroll, and although I could type the word print in the cursor start position, I have to double space to be able to type the word peek or else it comes out peak, same with some of the location no.s, by adding another space in the line I can then type the correct numbers. This Is what I was trying to explain about entering any commands.
but nothing changes in the top start up message at all. uc11 is tucked directly behind the keyboard connector, with the blue ub11 above, (8032029-03.gif) I was just looking for any difference in any of the lines, I will try things again later, and let you know thanks Harry
 
and although I could type the word print in the cursor start position, I have to double space to be able to type the word peek or else it comes out peak,

Harry, you have come up with a great test!! If the RAM data is OK and the problem is with only the screen display, you should be able to type PRINT PEEK (32778 ) and execute it correctly even IF the display says PEAK. What a great test. Why didn't Mike come up this this? :D


uc11 is tucked directly behind the keyboard connector, with the blue ub11 above, (8032029-03.gif) I was just looking for any difference in any of the lines,

OK, I found the part (an LS145 BCD decoder). It is used as part of the keyboard scan logic. The signals may be hard to see on the scope without a proper scope trigger as the scan is performed only during the 60 Hz interrupt handler. It is hard to see a skinny pulse (microseconds) every 60 Hz (16.6 milliSeconds). Each of those decoder outputs should pulse in sequence when the keyboard is scanned.
 
Harry, you have come up with a great test!! If the RAM data is OK and the problem is with only the screen display, you should be able to type PRINT PEEK (32778 ) and execute it correctly even IF the display says PEAK. What a great test. Why didn't Mike come up this this? :D
Huh? I'm confused; isn't that exactly what I suggested? I assume that the command will work regardless of what the screen says (peek or peak); am I missing something here?

I don't get the double spacing though; surely P R I N T P E E K ( 3 2 7 7 8 ) isn't going to work?

And as you pointed out something's not quite right: assuming the text is (and remains) exactly the same while peeking those four locations it should be consistently right or wrong; 11,5,5,5 would mean the o is wrong (k) but the e's are correct...

edit: of course, if the 15 happened to be in a bad spot it could well become 11... ;-)
 
Last edited:
Sorry Mike, I have not explained very well, the spacing I used was to move the complete words apart,not between the characters. Well Well,, I just typed.. PRINT PEEK(32778) and got ..PRINP PEAK(32778) on the screen ( that is how the characters have changed) and still got 11 (no syntax error?)
and there I was trying to be gramatically correct. so the peeks do show 11,5,5,5 I am at your mercy now!..... Harry
 
Last edited:
Back
Top