• Please review our updated Terms and Rules here

Another PET 2001 motherboard needs your help...

Hi again,
I haven't had a chance to look at poking and peeking the video RAM as Ruud suggested. I'll need to decipher his email as I'm still confused as to how exactly I should do this.
However tonight I have achieved 2 small milestones. I built a keyboard cable adaptor for the keyboard Anders sent me, and also hooked up my C2N datasette and loaded Android Nim. As usual, images can be seen on my site.

Next I'll pull the RAM/ROM board and try BASIC 4 in the working pet board. If it works then that might confirm Mike's theory.

Another thing I'm curious about is why the BASIC 2 EPROMs I burnt (901465 1, 2, and 3 images on 2532 EPROMs at H1,H2 and H4, and the 901447-24 on a 2716 EPROM at H3.) don't work, but BASIC 2 from the RAM/ROM board does?

Phil
 
Well, BASIC 4 does not work from the RAM/ROM board in my working PET :-(
The Flash ROM was sent to me preprogrammed form Nicolas...maybe he made a mistake and programmed the CRTC version!
 
Last edited:
Ruud's idea is to try to find out whether the characters are in the correct memory location and the video circuitry is putting them in the wrong place on the screen, or whether they were placed in the wrong locations in the first place; try this:
10 PRINT:pRINT:FOR I=0 TO 79:pOKE 32768+I,I:NEXT
20 FOR I=1 TO 10:pRINT PEEK(32768+35+I):NEXT
You should see 36 to 45 if the memory contents are correct, even though that's not what's displayed.

Yes, the question remains why your on-board ROM & RAM doesn't work. But you haven't tested the RAM chips yet, have you?

Re BASIC4: can't you replace the flash RAM with an EPROM with the correct E ROM version?
 
The Flash ROM was sent to me preprogrammed form Nicolas...maybe he made a mistake and programmed the CRTC version!

You can PEEK a location in the E ROM that is different between the versions and find out what version you have.

For the version with BASIC4 no CRTC, normal keyboard 40 column (901447-29):
PRINT PEEK(59364) should produce the number 170

For the version with BASIC4 with CRTC and 60 Hz (901499-01), it should be 187

For the version with BASIC4 with CRTC and 50 Hz (901498-01), it should be 41

I did the hex to decimal conversions with a pencil so I'm hoping $E7E4 = **** correction = 59364
 
Last edited:
Mike,
I can never figure out how to get it into hex mode, and when I do, I can't get it back to decimal! Thanks for checking.
-Dave
In case you're talking about the Windows calculator, it's actually pretty handy: F5,6,7,8 convert among Hex, Decimal, Octal and Binary respectively (and the new version has added unit conversion as well). I've got a TI Programmer and a Casio that does number base and unit conversions as well, but haven't used either in years.

Of course if you're talking Linux or a 'real' calculator on a 'real' desktop I can't help ya.
 
Of course if you're talking Linux or a 'real' calculator on a 'real' desktop I can't help ya.

When you said 'desktop', I assumed my real one and a real calculator. :)

After some screwing around, I managed to get a shortcut to the calculator on my Windows desktop, but it did not display in hex until it was put into scientific mode rather than normal mode. Does this mean that I'll have to stop using my slide rule?
 
Thanks Mike,
You program first displays the character set, followed by 36 to 45.
If I immediately run the program again the results are different. Immediately running the program another time produces yet different results. If I CLR the screen and run again, the results are back to normal. See my page for images.

Yes, I could burn an EPROM, I'll try that today.
 
Last edited:
You can PEEK a location in the E ROM that is different between the versions and find out what version you have.

Maybe I'm just stupid, but I'm not quite following you here. How can I PEEK this address if I can't get BASIC 4 working at all? It's just a screen of scrambled characters.
 
Last edited:
Thanks Mike,
You program first displays the character set, followed by 36 to 45.
If I immediately run the program again the results are different. Immediately running the program another time produces yet different results. If I CLR the screen and run again, the results are back to normal. See my page for images.

Ah yes, I just realized I am dumb. I think the different results are because the character set is scrolled off the screen.
 
Thanks Mike,
You program first displays the character set, followed by 36 to 45.If I immediately run the program again the results are different.
That's because part way through the second run the screen scrolls; yes, clear the screen first.

This may be clearer:

10 PRINT:pRINT:FOR I=1 TO 10:pOKE 32802+I,I:NEXT
20 FOR I=1 TO 10:pRINT PEEK(32802+I):NEXT

You should get 1 to 10 but presumably the sequence of letters is not correct once it starts the new line.

Of course if it pokes into the wrong address it could just as well peek the wrong addresses and look OK...

But I suspect it's poking where it should and the problem's somewhere in that mess of gates, latches and counters that determines when and where to start a new line...

An interesting puzzle, right up Dave's alley ;-)
 
Last edited:
Yes, the question remains why your on-board ROM & RAM doesn't work. But you haven't tested the RAM chips yet, have you?

Well, I just had an idea for testing this. I enabled the RAM/ROM card's RAM, but disabled the ROM. Seems my burnt 2532 and 2716 EPROM's for BASIC 2 work after all. So there must be a problem with the onboard 6550 RAM, or how this RAM is being accessed.
 
Maybe I'm just stupid, but I'm not quite following you here. How can I PEEK this address if I can't get BASIC 4 working at all? It's just a screen of scrambled characters.

Oh, I misunderstood the problem. I thought you just had some extra characters floating around an otherwise good screen.
 
Sorry if my explanation wasn't clear.
Just to confirm. I have two PET motherboard. The 6540/2114 is good, and the 2332/6550 motherboard is the one I am trying to fix. BASIC 4 from the RAM/ROM board does not seem to work in either. I will attempt to burn a new EPROM for the RAM/ROM board sometime today.

Thanks
 
Just to recap to make sure we're up to date; you still have three problems, correct?

1 - There's still a problem with the main RAM or associated circuitry, as the BASIC 2 ROMs on board work with RAM on the adapter but not with the 2K RAM on the main board (and you still haven't tested those RAMs in the video socket, right? ;-) )

2 - There's still a problem with the display, where the first four characters on every line except the first are the same as the last three on the end of the previous line, with the first one duplicated (i.e. line 1 ends 'ABCDE' and line 2 starts 'CCDEFG.')

3 - BASIC 4 on the adapter does not work in either PET.

Is that about right?
 
Mike,
Yep, thats spot on. Thanks for the recap.

Yes, you are right, I still have not tested the original ram in the video sockets. Can you explain the process a little more clearly so that I can get some genuine results.

My programmer can read and write 29c020 flash ROM, so I have pulled it from the RAM/ROM board and dumped it's contents. I have checked the contents against the BASIC ROM images on Nicolas's site. Seems there is something not quite right at the end of the flash ROM dump when compare with the BASIC4R.bin file from Nicolas's page. I have uploaded a screen capture to my page. I fixed the offending section and tried to write it back to the flash ROM, but I get multiple errors when trying. Each time (and I've tried multiple times) the error happens in a different place in the process, so I think maybe this flash ROM is suspect too!!!

Boy, this fix is proving to be a challenge.

Phil
 
Just a quick update:
I just raced into Akihabara (it's only 12 mins away on my motorbike), and grabbed 29C010 (at $17 it was very expensive!!!). This too took a few attempts to program on my programmer (so I think the issue with the first 29C020 may actually be the programmers fault, or maybe my old IBM thinkpad is a little slow. The programming is ultra fast when compared with programming an old EPROM, so maybe something can't keep up).

Anyway, long story short. It works. Booting into BASIC 4 now.

One more problem solved...two more to go?

Phil
 
Back
Top