Restoring an original Apple I Progress Report - Part 2 (Woz mistake?)

6 replies [Last post]
Offline
Joined: Feb 26 2016
Posts: 25

Update 3-24-2016 - got cassette tape interface working, downloaded a Basic MP4 and it loaded and ran perfectly. See attached photo of the screen and end of the chronology for details. Now I just have to write the story about Steve Jobs coming to my houseboat to see the weather station I build around the Apple 1, how he offered me a job at Apple that I turned down and send the story to Woz to see if he remembers me. Anyone know the best way to get a message to Woz?

-----

Thanks to everyone in this great forum for helping us out, we finally got the board working. It was a real challenge and the key was finding a timing calculation error we think Woz made on the sizes of the resistor and capacitor for the memory access from the CPU. I’m curious if any of your engineering pros saw this issue?

Below is our progress from 3-6 to 3-12. By 3-6 we had a bad pin on MK4096 memory chip fixed. After that it got pretty tricky. If you want to cut to the chase go to the last date.

Our next goal is to find Basic and get it loaded.

——
3-6-2016

Progress report:
Still have a problem with the terminal display showing about 1/8 of the characters incorrectly on power up.   Repeated power cycling causes more, up to 50%. Of the characters to display incorrectly.   The problem is probably related to the speed the power supplies rise and fall causing some data retention not clearing the display MOS memory.   Swapping the MOS shift register memories does not change the problem.   The problem may not affect the operation of the system monitor… TBD.
 
Decided to connect the keyboard and add the missing clear screen switch to the KB interface board.   Powered up and the clear screen switch worked but no monitor cursor.   After some troubleshooting, fount the keyboard reset switch was broken and permanently resetting the board.   Replaced the switch with a temporary switch and powered up but still no cursor.   
 
The micro clock and data lines are showing signals but some of the address lines look suspect.   It is possible the RAM chip was hit with ESD static during handling and the rework or other RAM chips could also be bad… replacement will tell so we are back on hold for now.
 
LB
 
——
3-6-2016

The missing characters are on the lower portion of the screen.   At power on, the MOS video shift registers are all “0” but something is loading some data in some of them, probably a power up sequence issue.     After we get the CPU running we can run a test program to display all the characters to see if there really is a problem.
 
The KB switch was broken internally, causing the switch to remain closed.   I hope an extended reset doesn’t hurt the CPU. 
 
The missing cursor is because the system monitor is not operating.
 
Send the memory chips you have when you can and I will continue testing.

——
3-6-2016
Progress report:
Still have a problem with the terminal display showing about 1/8 of the characters incorrectly on power up.   Repeated power cycling causes more, up to 50%. Of the characters to display incorrectly.   The problem is probably related to the speed the power supplies rise and fall causing some data retention not clearing the display MOS memory.   Swapping the MOS shift register memories does not change the problem.   The problem may not affect the operation of the system monitor… TBD.
 
Decided to connect the keyboard and add the missing clear screen switch to the KB interface board.   Powered up and the clear screen switch worked but no monitor cursor.   After some troubleshooting, fount the keyboard reset switch was broken and permanently resetting the board.   Replaced the switch with a temporary switch and powered up but still no cursor.   
 
The micro clock and data lines are showing signals but some of the address lines look suspect.   It is possible the RAM chip was hit with ESD static during handling and the rework or other RAM chips could also be bad… replacement will tell so we are back on hold for now.
 
LB

——
3-12-2016

Update:
I’ve been working on the board for a few days but have not had much success.   The processor appears to be running and the video display also appear to be working but the data from the character data 6820 PIA to the video display doesn’t seem to work.   Also the keyboard data doesn’t seem to reach the processor but it appears to be polled so there in no interrupt to confirm for sure.   The PIA IC also has several wires running to the IC socket in the breadboard area so static damage is a possibility.
 
At this point, all I can come up with is to replace the 6820 PIA.   Apparently they were long ago out of production, replaced with 6821 and the newer 68C21.   Next thing to do is order a test 6821 IC.    If it fixes the problem, we can search for a vintage part.   Just in case, a spare 6502 would be good to have.    This is turning into quite a project.
 
6821 PIA
http://www.jameco.com/webapp/wcs/stores/servlet/Product_10001_10001_43596_-1
 
http://www.ebay.com/itm/2x-MC6821P-EF6821P-DIP-40-PERIPHERAL-INTERFACE-ADAPTER-PIA-HD6821P-/121376978673?hash=item1c42a1b6f1:g:B5gAAOSw7I5Ts78f
 
Supposedly pin compatible 6502
http://www.mouser.com/ProductDetail/Western-Design-Center-WDC/W65C02S6TPG-14/?qs=sGAEpiMZZMtVFuKNr6IGvpdkwXR9vVB1
 
LB

——
3-19-2016
Status update;
 
Made brackets for the keyboard to keep the PCB off the table.   Repaired the inside of the CTRL key switch and swapped it with the reset switch, since the reset switch is needed much more often.
 
Removed the weather station wiring and cleaned up the board.   Moved the RAM block jumper to “E000” so Basic can be loaded later.
 
Finally found the problem with the logic, a bad 7450, preventing com with the PIA after a reset.   Fortunately, I have one and the keyboard now echoes to the display.    Replaced the original PIA and it worked okay.
 
Loaded a test program but it will not run.   It may be a RAM problem.    Replaced all of the RAM chips and now the monitor will display selected memory address contents but will not load sequential addresses.    It also randomly incorrectly parses the commands, splitting addresses in two.   I am suspecting a ROM problem.     Troubleshooting continues.

——
3-20-2016

I’ve been swapping RAM chips and the problem appears to be several defective chips or timing dissimilarities.    I got the display program to run once but in the process of swapping RAM to weed out the defective parts, I am having trouble finding a good combination again.   I think the answer is more good RAM.    After that, you will need a cassette tape with Basic.    I may still have a cassette player somewhere… I will look.
 

——
3-20-2016

The MK4096-11 is 350 ns access time and the MK4096-16 is 300 ns access time.    I suspect the main issue is the RAM should all be matched.   There may also be poor socket connections on the board complicating the process of determining good RAMs.   One of the NTE RAMS worked but would not allow writing to any of the RAM chips.     The next move is to get matched sets of RAM if you can confirm they work in the A-1 PCB and get some sockets just in case.

——
3-21-2016

I think Woz made an error on the RAM timing.   The A-1 schematic shows a 47pf and a 27K RC timing but that ends up at about 640ns, which is what I measured and there was a RAM reliability problem.   A correct value with the 47pF cap is around 20K, and that is what I have the circuit adjusted to.   Should I change the 27K resistor to a 20K and be done with it?    See the 74123 timing chart below.

——
3-21-2016

Eureka!

I was thinking it was very unlikely all or the RAM chips could be flaky so I dove into the RAM timing. There is a 74123 one shot multi vibrator that is controlling the RAM access and the schematic shows the pulse width at 480ns but I was measuring 620ns.  The EC timing looked okay and I didn’t have another 74123 so I trimmed the timing resistor with a parallel resistor to about 500ns and all of the RAM except for one NTE part work now… SUCCESS.   All of the original Mostek parts are working, including the one with the repaired pins.   One of the original parts has a “weak pin” but it works, so I left it alone.   I loaded the second bank with the 6 NTE RAMs and the 2 vintage parts, so we should be ready for basic.
 
You will need to order a couple of 74123 and a couple of 7450 or 7451 ICs.

----
3-23-2016

Got the cassette board working by simply plugging it in and attaching an iPhone to the input jack. Downloaded the MP4 and it installed without any errors. Now just going to replace a bank of RAM with vintage memory from Unicorn and we are DONE.

AttachmentSize
Basic works.png561.58 KB
Apple_I_board.jpg69.37 KB
Apple_1_showing_keyboard.jpg56.31 KB
74123 Timing Chart.png112.11 KB
__________________

Mitchell

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Offline
Joined: Jun 5 2008
Posts: 380
Re: Restoring an original Apple I Progress Report - Part 2 ...

Hi Mitchell,

Since this Apple 1 worked at one time, I would guess that the timing capacitor connected to the 74123 has changed value over time and is actually the root of your problem. I have seen at least one case of an out of spec capacitor causing DRAM problems with an Apple 1 reproduction the same way that you are describing.

regards
Mike Willegal

Offline
Joined: Oct 9 2011
Posts: 1044
Re: Restoring an original Apple I Progress Report - Part 2 ...

This is also not the first original Apple-1 with a bad 7450. It's one of the first chips I check when I have problems on initial power up. Weird things can happen with this chip. I have seen cases where a bad 7450 causes video ghosting in different parts of the screen.

Cheers,
Corey

Offline
Joined: Feb 26 2016
Posts: 25
Re: Restoring an original Apple I Progress Report - Part 2 ...

Mike WIllegal wrote:

Hi Mitchell,

Since this Apple 1 worked at one time, I would guess that the timing capacitor connected to the 74123 has changed value over time and is actually the root of your problem. I have seen at least one case of an out of spec capacitor causing DRAM problems with an Apple 1 reproduction the same way that you are describing.

regards
Mike Willegal

Mike I'm pretty sure the capacitor and resistor values had not changed. But I'll double check.

__________________

Mitchell

Offline
Joined: Feb 26 2016
Posts: 25
Re: Restoring an original Apple I Progress Report - Part 2 ...

Corey986 wrote:

This is also not the first original Apple-1 with a bad 7450. It's one of the first chips I check when I have problems on initial power up. Weird things can happen with this chip. I have seen cases where a bad 7450 causes video ghosting in different parts of the screen.

Cheers,
Corey

Corey good too know the 7450 is a chip that can easily give up the ghost LOL.
I'm just so happy we got it running after 40 years of being dead.

__________________

Mitchell

evank's picture
Offline
Joined: Jan 30 2005
Posts: 48
Re: Restoring an original Apple I Progress Report - Part 2 ...

goofy167 wrote:

After that, you will need a cassette tape with Basic.    I may still have a cassette player somewhere… I will look.

Pretty much any sound source -- an iPod, your smartphone, or anything with an audio out port -- works fine. We usually use an an old iPod at the Vintage Computer Federation museum (NJ) with our Mimeo.

__________________

@ Director, Vintage Computer Federation, a 501(c)3 non-profit -- www.vcfed.org
@ Author, "Abacus to smartphone: The evolution of mobile and portable computers" -- www.abacustosmartphone.com
@ Homepage: www.Snarc.net

Offline
Joined: Oct 9 2011
Posts: 1044
Re: Restoring an original Apple I Progress Report - Part 2 ...

Actually on an original ACI depending on the condition of the cap, you may not be able to load off of iPod. The headphone jack on a real cassette player has much higher gain on it. You can hang a .1 cap on the .01 cap and verify if you consistently get bad loads that this is the case. I say use a .1 cap because it works better anyway. Another way if that is a problem (the cap trick works), and you can load off an iPod or get more consistent loads on a cassette player is to restore the ceramic cap. For ceramic caps you heat them to the Curie point. For a single ceramic cap, I just heat the solder joints as if I was just soldering the cap in. I might even add a drop of NOS solder to make sure the joint is perfect. For entire boards, you have to know what you are doing. We call that process the baked apple. I won't get into it here and be blamed for someone messing up an original Apple-1 if they do not have access to the correct type of oven and equipment.

Cheers,
Corey