Apple 1 start-screen

7 posts / 0 new
Last post
Offline
Last seen: 2 years 10 months ago
Joined: Jan 2 2022 - 17:33
Posts: 2
Apple 1 start-screen

Hello Guys!

I'm new here in this forum and until now I got a lot of information out of this forum to get my Apple 1 up and running. But I still have one litte problem that hassels me:

When turn on my Apple 1, only 10 rows of _@_ are shown on the screen, the rest is blank. When I do a clear-screen and a reset, eveything looks fine. I have swapped arrount the 74161 and also the 2504, but it makes no difference. Does anybody know what could be the problem? What part of the video-section is reponsible to fill the start-screen with _@_ ? 

 

Regards Alex

Offline
Last seen: 2 hours 14 min ago
Joined: Feb 27 2021 - 18:59
Posts: 601
Amateur explanation follows

My understanding is that there is no "fill" process when the power is turned on. What you see is the result of a chain of flip flops (the shift registers) brought up in an indeterminate state without being cleared. Flip flops will pull to whichever state (0 or 1) is closest when in an indeterminate state, so the effect is to produce "random" values. In fact these are not really random, but a result of individidual differences in the strength of high- and low-side transistors in each flip flop. This can actually change with use and is the reason for the phenomenon called "SRAM Remanence" which can be a secure data leak.

You should not expect to see anything definite until the screen is cleared; it always contains junk before then.

Offline
Last seen: 2 years 10 months ago
Joined: Jan 2 2022 - 17:33
Posts: 2
Ok, makes sense,  because

Ok, makes sense,  because everything else works fine. I only wondered, because in every YouTube video about the Apple 1, the screen is completely filled with _@_ and flashing after powering up.  When I do a short power toggle I also see random garbage all over the screen (not only the upper 10 rows), but by the way - I still don't understand that initial character pattern after a longer power-down.  

when I check the ascii table the for '@' and '_' it's 000000 and 011111

 

Macintosh_nik's picture
Online
Last seen: 45 min 2 sec ago
Joined: Jan 8 2021 - 05:18
Posts: 464
Hi robespierre!

I've never had this problem, no problem with the video part at all, so unfortunately I can't help AlexWener in any way. But he is using the 2513, DS0025 and 7x1404 he received from me, which worked fine in my build and the original splash screen was correct, 40x24 characters each time I turned it on. So I feel like I need to learn more about this problem. Is there any way to fix this or is this a feature of the AlexWener build? Thanks in advance!

 

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
Reason for the _@_ pattern in the Apple-1 screen on powerup:

In post #1, AlexWener asked:

 

"What part of the video-section is reponsible to fill the start-screen with _@_ ?" 

 

Uncle Bernie answers:

 

it's an intrinsic feature of the 2504/1404 PMOS shift registers. They are "double pumped" which means that on each PHI3 or PHI4 clock pulse one bit is moved in, and one bit is moved out. This deviates from what you would expect from two phase PMOS logic (if you are old enough to know what PMOS is and how the circuit design techniques for it work). Let me explain: a normal PMOS dynamic shift registers of N bits consists of 2N shift register cells, each consisting of a pass transistor connected to an inverter. The bit is stored in form of a charge on the input gate of the inverter. The pass transistor can connect this gate to the output of the previous inverter, or disconnect it. The gate of the pass transistor is driven directly by one of the nonoverlapping clock signals. Traditionally, the first cell is hooked up to PHI1 (1404 datasheet, Apple-1 signal PHI3) as are all odd numbered cells (1, 3, 5, ...). The second cell  is hooked up to PHI2 (1404 datasheet, Apple-1 signal PHI4) as are all even numbered cells (2,4,6, ...). So when PHI1 is active (-12V) all the odd cells take over the bit from the even cells. After PHI1 is inactive again (+5V) the input operation is completed: the first cell has taken the bit from the shift register input. Same thing as the "master" as in a master-slave flipflop. The output of the shift register still shows the same state as before. Then, when PHI2 is active (-12V) all the even cells take over the bit from the odd cells. After PHI2 is inactive again (+5V) the output operation is completed: the last cell has taken the bit from the previous (odd) cell so the output data is completed. Same thing as the "slave" as in a master-slave flipflop. The output of the shift register now shows the current output bit of the shift register.

 

Here is the transistor level circuit from the 1972 Signetics databook:

 

 

So for each clock cycle consisting of two clock phases (PHI1 and PHI2) the shift register takes one bit and outputs one bit. Which for the PMOS process technology of the time was too slow for many applications. This is where "double pumping" comes in. A trick circuit. They split the 1024 shift register stages (one stage: 2 cells as explained above) into two 512 bit shift registers and the PHI1, PHI2 clocks were crossed over: the first 512 bit shift register got PHI1 and PHI2 as described above, and the 2nd 512 bit shift register got PHI2 and PHI1.

 

This arrangement takes one input bit per clock phase (or two bits per clock cycle): the first shift register takes the input when PHI1 is active, and the second shift register takes the input when PHI2 is active. On the output, there is a multiplexer which selects the correct output bit for that clock phase (either from the first or the second shift register).

 

Now, if you wait long enough for all charges on the PMOS gates to disappear by leakage, you can see that the first bit which would come out of the combined shift registers at PHI1 comes immediately from the last shift register cell of the lower shift register, so the "power up state" is inverted once, while at the same time the upper shift register last cell takes over the "power up state" of the previous cell (one inversion) and when it moves to the output of the upper shift register during the following PHI2 it passes though the last cell (another inversion). So one shift register sees the "power up state" inverted once, and the other shift register sees the "power up state" inverted twice. This explains why the power up state of the combined "double pumped" IC is alternating "1" and "0". For six of them it's 111111 and 000000 (as AlexWener has correctly stated in his post #3). Which are the underscore and blank characters. Since the seventh 1404 which contains the cursor position has 512 fake 'cursors' in it due to the same effect, the blanks which coincide with the fake cursors do blink to '@', which is the usual way the Apple-1 makes the cursor. Don't dare to start the 6502 before you have cleaned up this mess with the CLR SCREEN key: due to the many fake cursors, the cursor logic gets insane and weird things can happen, and then many inexperienced Apple-1 builders suspect bad ICs. Not so ! This behaviour is perfectly normal if the golden rule of CLR SCREEN is not observed.

 

Confused ? Oh, I can confuse you even further. Note that PMOS transistors turn on when their gate is charged negatively (hence, the -12V being the active clock level) and the "charge" which stores a bit are actual, real, genuine, electrons. Which want to leak away. And now it's your turn to figure out why all the upper transistors of the inverters are connected to the same clock phase as the following pass transistor. (Hint: this is NOT a precharge of a dynamic node, but what is it then, what's the purpose ?). Alas, all these cute tricks will be lost in time - in a 1-3 decades nobody will be alive anymore to know how these PMOS circuits really worked. These were the trailblazers, folks. Humbly serving in slow ICs such as in the early four function calculators. Just fast enough for that, but almost useless for anything else. NMOS depletion load, silicon gate technology, was the game changer which came after that and made the 6502 possible. My master's thesis was a full custom IC in that technology, so I can also understand how the 6502 works on a transistor level. Nowadays, useless knowledge except for a few vintage computer aficionados, of course. But still, fond and lovely memories when men were men, women were women, and transistors were real transistors (and not some skullduggery like in today's 5 nm CMOS and below which suffers from more ill effects than it has useful effects, such as gain, which also diminished over all these decades - intrinsic gain wise - per transistor - gainwise we are now back to the vacuum tubes of the 1920s. Some dare call that "progress". Well, at least we can make billions of these bad transistors for the same money as for one of those vacuum tubes ;-)

 

- Uncle Bernie

 

Comments invited !

 

Macintosh_nik's picture
Online
Last seen: 45 min 2 sec ago
Joined: Jan 8 2021 - 05:18
Posts: 464
Hi Uncle Bernie!

Thank you, I can't say that I understand everything completely, I have to try to get into it. But you said it very well: when men were men, women were women and transistors were transistors. It's easy to make a mistake now, not just with transistors.

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
About the missing lines on Apple-1 power up:

In post #1, AlexWener wrote:

 

"When turn on my Apple 1, only 10 rows of _@_ are shown on the screen, the rest is blank."

 

Oh, "Uncle Bernie" did miss this fine point why Alex got worried and started to swap ICs.

 

Here is the answer / explanation: 

 

The Apple-1 terminal section has a built-in protection circuit to kill fake cursors which are in the in the wrong places - but this does not work properly on power up. Depending on how the power supplies come up, the cursor state machine may think it's in write mode and then the killing of the fake cursors starts. This is a very rare event if you use a transformer based power supply. But if you use the "direct feed" method with switchmode power supplies, it happens almost all the time.

 

What you can see if it happens is that the screen scrolls up very quickly during power up. With switchmode power supplies the +5V ramps up slower than with transformers (intentional soft start to protect components from undue stress, allowing cheapening them) and in most cases I saw the whole screen scrolls blank. But not always. Sometimes a few lines with the _@_ pattern are left over. In very rare cases, and with some particular constellations of TTL ICs, this also happens with a transformer power supply.

 

So don't worry, Alex. Your ICs are probably good  (as you didn't buy one of my kits of 100% tested and burned in ICs - a privilege only a few people get, as my production capabilities are limited - I can't vouch for your ICs).  If you had bought one of my kits, the "diagnostics page" in my A1, A2 PROMs would have allowed you to exercise and test all functions of the terminal section, and the fear of bad ICs could have been avoided.

 

You are not alone. There are many maverick builders out there who procure their own ICs from various sources and then wonder and scratch their heads, and struggle, and are not sure if their Apple-1 builds are healthy or not. About 1/3 of all these "independent" builds do fail - I know because I get this failure rate when I compose my kits. The difference is that I know the Apple-1 circuit inside out and can quickly identify the culprit(s) and replace them with good ICs. But even for me it's not always easy - some ICs die (or start limping) during burn-in. And these are much harder to identify even for me, especially if they limp. But all IC kits I send into the world have 100% known good ICs, so the builder succeeds, always. But I have heard word that some independent sellers of Apple-1 parts also started to test the ICs they sell.

 

Seems they finally have found out that "secret" the electronics industry knew for more than half a century: at each stage of the production and sales process, the costs to rectify a defect in the product increases by 10 x. The worst case, of course, is when the defect occurs at the customer and the product is already installed. For complex products, the costs to fix that under warranty can eat all the profit away which has been made with that particular product, and then some more. This is the reason why so many early microcomputer companies of the 1970s went out of business quickly. They were run by amateurs who did not understand product quality.

 

Comments invited !

Log in or register to post comments