• Please review our updated Terms and Rules here

Diagnosing IEEE 488 interface on a PET

JonB

Veteran Member
Joined
Jan 26, 2014
Messages
1,652
Location
South Herefordshire, UK
Hi

Can anyone give me some advice on how to diagnose problems with the PET's IEEE-488 interface, please?

I have a 4016 and Fat 4032 and neither will work with my PETdisk, although they have done in the past. I am not sure what is wrong with them now, but I have swapped PIAs, VIAs and line transceivers but still nothing. I am seeing "device not recognised" errors.

Could be the PETdisk is borked, but it did successfully load new firmware from the SD card.

I have an 8050 drive and 4022 printer but no Pet to IEEE-488 cable to try them with :(

How best to proceed?

Thanks
JonB
 
Hi

Can anyone give me some advice on how to diagnose problems with the PET's IEEE-488 interface, please?

I have a 4016 and Fat 4032 and neither will work with my PETdisk, although they have done in the past. I am not sure what is wrong with them now, but I have swapped PIAs, VIAs and line transceivers but still nothing. I am seeing "device not recognised" errors.

Could be the PETdisk is borked, but it did successfully load new firmware from the SD card.

I have an 8050 drive and 4022 printer but no Pet to IEEE-488 cable to try them with :(

How best to proceed?

Thanks
JonB

Perhaps one of these might make your life easier?

http://blog.tynemouthsoftware.co.uk/2015/10/pet-ieee-488-diagnostic-tool.html

£32.50 although doesn't look difficult to build one
 
Yay! Snapped up two of those!

Shame about the shipping, but still, a tenner each. A snip!

Yep I bought a couple too. Once he runs out, no doubt they'll revert back to Unobtainium :D
 
OK, back on track...

I have some weirdness. Every time the PETdisk is plugged into the machine, it fails to boot, whether PETdisk is powered or not. If I plug the power adapter into Cassette pot 1, it fails to boot. I can plug it into port 2, though. If I try to plug a datasette into port 1, it likewise will not boot. I know the datasette is OK becasue it works in port 2.

Looks like I am dealing with multiple failures on both PETs.

While I wait for the IEEE cables to arrive, I ought to look at the signals coming from the port. Does anyone have a timing chart or description of the IEEE-488 protocol that is used to access the disk drives? I could use a 'scope to check that they're working properly, if I knew what to expect.
 
OK, some news.

Finally, I have a PET-IEEE cable to test with my 4022 and 8050 FDD unit.

I determined, after replacing the 6520, that my problem was most likely the bus transceivers MC3446. I did some swapping around and got the printer working. Hurrah!

Then I attempted to use the PETdisk and, on issuing LOAD "$",9 got the "searching for $" message followed by "loading". Then the machine locked up.

I tried the same thing on the 8050. First, using HEADER to format a disk (success), then write a quick program and save it with DSAVE (success), then attempt to DLOAD the program. I got the sarching and loading messages, then a lock up.

So, it seems that I am not getting a particular input signal coming back from the interface. The data lines should be OK. Which IEEE signal indicates the end of a read operation to the PET? I see /DAV, /NFRD, /NDAC and /ATN on the schematic and I am guessing it is /NFRD.

Can anyone confirm please?
 
Hi JonB you might have done this already but I'll suggest it anyway as when I have had problems with my pet disk
it has been down to dirty edge connectors even though they didn't look that dirty.

I clean them up with an eraser and some isopropyl alcohol.
 
I've had problems with both drives and my pet disk in the past especially device not recognised errors.
Give it a try it only takes a few moments and could rectify the fault!
I've had keyboards failing due to dirty contact pads that just needed a clean.
 
After posting my last message, I started getting some weird results.

- extraneous characters when typing on the keyboard
- on typing a line of BASIC, it would sometimes make the cursor flash very fast
- on entering the same line (press RETURN), it dropped into the monitor repeatedly

At this point I gave up and went to bed. This morning, it seemed to be working again, but of course not the IEEE port.

I took the board out and discovered I'd already cleaned the contacts on the IEEE port. I gave them a wipe over with meths anyway, re-seated some chips (just to be sure), and reconnected it.

Now I am showing 16k memory instead of 32k - 15444 bytes free. How frustrating...

I also note that with tape#2 connected, I get no chirp on start up. Now I have connected the tape drive to port 1 and I get a chirp, and it is back to 32k RAM! :eh:

I am still seeing these other issues though.
 
Last edited:
Also... from the original restoration thread:

If you can load programs from the cassette, try this BASIC program. It checks the individual IEEE control lines (DAV, NRFD etc.) and verifies that they are seen at the receivers. Have nothing attached to the IEEE connector. If it catches an error, it will STOP and wait for you to either scope the signal or issue a CONTINUE to the next test. I try to find the program to test the data lines.

ieeetest.prg

Sorry Dave, I didn't notice your post. That would be very handy - could you advise how I can get it onto the PET? As you can see the PETdisk isn't an option...
 
Oh my god! More weirdness.

When I poke 69468,12 (to set PETSCII character set), it drops into the monitor. Enter X at the TIM prompt and we are back in BASIC.

Now it is saying any command is a syntax error, and it is doing the "extraneous characters" keyboard characters thing again. Almost certainly heat related.

This thing has more bugs than a flea pit!
 
I don't know how I missed this thread earlier (yes I do, it's vBuillten), but it sounds like you need to start at square one. You may have an address decoding problem, possibly resulting from a chip with two shorted address lines.

If you have an NOP generator, now is the time to use it. If not, pull chips until it starts to act less weird.
 
Well this is odd. I thought it might be heat related so I got some freezer spray and fired it up. Waiting for it to start playing up, but it's not failing now. Errr.

Let's go back to the IEEE stuff.

I do have some IEEE activity. The printer is working. The disk unit (model 8050) seems to work, at least partially:

  • I appear to have successfully formatted a disk.
  • I appear to have saved a program called "test". I used dsave "test" and it accessed the drive and came back to the ready prompt.
  • I cannot get a directory. When I type DIRECTORY it accesses the drive and returns to the BASIC prompt with no listing.
  • When I try to load with the run key it says "searching for 0:*", then "loading" then nothing. Same for dload "test", load "$",8 or load "test",8. I am wondering if a particular signal is not making it back to the PET from the drive ("finished sending" or something like that). If so, I theorise one or more channels on one of the transceivers are down, or some other part of its signal path. I can STOP and return to BASIC using the STOP key, so it has not crashed. I think it's waiting for something.

Any ideas?

Meanwhile, as I was typing this it seems to have got hot enough to start failing again. It is dropping to the monitor on some BASIC instructions.
Entering a program line does it, as in "10 FOR X=1 TO 10". Monitor at RETURN. Also, in immediate mode, "FOR X=1 TO 10:?X;NEXT X" will drop to monitor at RETURN.
On the other hand, simple commands like X=10, then ?X will work.
In the monitor it is always showing the following:

Code:
 pc  irq  sr ac xr yr sp
0069 e455 33 20 0e 02 ee

Is the PC value significant?
 
Another update - this morning I have booted the PET up and ran a tight loop to try and warm things up a little:

Code:
10 for x=1 to 1000000
20 print x;
30 next x

I have had the machine turned on and running this for nearly two hours now, and there is no more dropping into the monitor. I have interrupted it and added a line and it has worked. Not done any reseating or other physical adjustments, though I have tried to flex the main board a little to see if I can reproduce it, and I have sprayed the 40 pin chips with coolant (yesterday). Seems steady now. :dontgeti:
 
Last edited:
Back
Top