Why the Apple II Didn't Support Lowercase Letters (2020)

63 colinbartlett 46 5/10/2025, 9:15:04 PM vintagecomputing.com ↗

Comments (46)

WalterBright · 4h ago
Back in 1978, I made my own keyboard for a single board 6800 computer I designed, also because I could not afford a keyboard.

I went to a surplus store and bought an EBCDIC keyboard for a couple bucks. I unsoldered all the keys from the circuit board. I took a plastic board, and using the old circuit board, drilled holes in it. Inserted the keys in the holes, and then wired it up in an 8x8 grid pattern. The two 8 bits gave 64 possible keys, which was enough, connecting those to an I/O port enabled recognizing which key was down.

It worked fine as long as you were careful not to press more than one key at a time.

I don't recall what I did with that computer. It's all gone, including the design notebook for it.

Dylan16807 · 3h ago
Could the code subtract out the previous key for two overlapping key presses, or was it a very strict one at a time?
throwanem · 3h ago
If I had to guess, the sixty or so diodes required for an NKRO matrix might have blown the money budget for the project, about like trying to do that kind of work in an interrupt handler would blow the cycle budget for any interesting program even had it been possible. Typing more slowly is free.

Hard to say. I would need to look up component prices for a few years prior to my birth, and it would take me a few minutes to find that archive of 70s Radio Shack catalogs again - though I believe it was actually posted here, so. Of course anyone serious enough to be building an entire computer in those days, brilliant keyboard hack and all, probably wouldn't be sourcing a jellybean part like 1N400x signal diodes one by each...

WalterBright · 2h ago
The keys I used weren't jellybean. They were excellent keys. They were in the surplus bin because EBCDIC keyboards were already obsolete by then.

I had very little money at the time, and scrounged for parts.

throwanem · 2h ago
By "jellybean" I meant the sort of small signal diodes one might use to prevent aliasing in a keyboard matrix. I know where I'd have gone to get those in my twenties, but not really how I'd have afforded that many for one project, even at the (very) small discount they might have given me on an order of that size.

Unfortunately, now that I've finally reached a point of being able to really effectively use such a resource as that store, in its place now stands a Sonic drive-in. So it goes.

WalterBright · 2h ago
Many keyboards at the time could not do N-key rollover, including mine :-)

Subtracting wouldn't work, as more than one combination of keys would produce the same 16 bits of signal.

Dylan16807 · 2h ago
No, no, I didn't say N, I said two.

If you're holding one key, you have 1 bit set on each bank. If you press a second key, you now have an additional row bit and/or an additional column bit. You can tell what the new key is unambiguously. If it's still one bit on an axis then that bit is correct. If it's two bits then the new bit is correct.

You only get problems when you have three keys held at the same time, or if multiple keys change state simultaneously.

WalterBright · 2h ago
Consider a grid:

    -+-+-- A
     | |
    -+-+-- B
     | |
     C D
The keys AC and BD pressed simultaneously are indistinguishable from BC and AD.
Dylan16807 · 2h ago
Yes, I mentioned the timing.

But allowing for one key and then a second key before you release the first one is a pretty big improvement for natural typing.

WalterBright · 1h ago
Since it was polling the keyboard, among other tasks, the timing of when it looked was not entirely predictable. I was pushing the 6802 at its limit.

At least the keys did not need debouncing, they were nice keys.

The code listing has disappeared, too.

Syzygies · 35m ago
As a grad student I took out a student loan for the equivalent of a year's stipend, to buy an Apple II in 1980. Within a week I voided the warranty (?) by carrying out a "shift key modification" that involved cutting a trace on the motherboard.

It worked, so I'm a bit baffled by Woz's explanation.

The Apple II didn't really advance my math research (that would be the later 128K Macintosh, to which we ported the Macaulay computer algebra system), but various friends learned computers at my apartment, shaping their later careers. The Apple II remains my only computer whose memory layout one could understand byte for byte.

aantix · 1h ago
My first home computer was an Apple 2+. That was 1992 - so it was old and dated then, but my parents got it for $150, which was the right price range at the time for the family.

Luckily the guy selling included all sorts of manuals with it, which helped me to learn programming.

I remember a terminal program I used to connect to local BBSes - I would press the forward key and that would inverse the capital character display on the screen (white bg, black letter), denoting that a capital character was sent, not lower case.

90s_dev · 45m ago
I actually did a deep dive on this topic for my upcoming project, and found this post very enlightening from a bigger picture perspective:

https://retrocomputing.stackexchange.com/a/28146

kazinator · 36m ago
I had a Apple ][+ clone which had no problem with lower case, both display and keyboard. It also featured a numeric keypad.

It was made in Hong-Kong. The ROM announced itself as a "V.S.C. 1203".

kragen · 3h ago
> So my TV Terminal, for accessing the ARPAnet, was uppercase only.

I never realized that the most influential personal computer was specifically designed to access what would later become the internet. That's astounding.

(The first internetworking experiments that I can find records of were done as part of the ARPANet project, and some of the protocols and even many of the port numbers we use today in TCP/IP are from ARPANet.)

I also had no idea that Woz had built his own CPU out of discrete logic in 01970. I still haven't done that myself 55 years later!

adastra22 · 2h ago
I believe the internet is a direct continuation of ARPANet. It just got renamed at some point.
kragen · 2h ago
The ARPAnet (the electronic system) was never an internet (or catenet). It predated internetworking, and it was one of the networks comprising the internet we are using now (specifically, it was 10.0.0.0/8) until its demise in 01990. As a social institution, though, you are correct: the internet we are using now started out as an experiment inside the ARPAnet project.
pbjtime · 43m ago
...what year are you from?
dang · 6h ago
Discussed at the time (of the article):

Why the Apple II Didn’t Support Lowercase Letters - https://news.ycombinator.com/item?id=24433135 - Sept 2020 (139 comments)

zabzonk · 4h ago
I had a Dragon32 in the early 1980s. This had a (for the time) good keyboard, a terrible display, and was only uppercase. I bought it because I was interested in the 6809 processor (addressing modes gone mad!). But I think some effort between Tandy and maybe Dragon (the Dragon was based on the Tandy Color computer) things could have worked out better for both.
sixothree · 3h ago
Really if it wasn’t for the ugly colors that computer might have had a chance.
Mountain_Skies · 3h ago
Late production runs of the Color Computer 2 had the capability of doing true lowercase. Not sure if Dragon was still making computers by then, but it would have been a simple part swap as both VDCs were from Motorola.
bsder · 3h ago
> (addressing modes gone mad!)

With good reason. The 6809 was the 6800 with all the idiocies cleaned up. And I'm pretty sure that it is still the only 8-bit micro with genuinely relocatable/position independent code (aka doesn't need a linker pass!)

ourmandave · 5h ago
Because you we're lucky to even get 40 columns (80 with an expansion card)?
SoftTalker · 4h ago
80 columns would have been borderline unreadable on the NTSC televisions they were using as displays.
TMWNN · 4h ago
Context for others: Standalone computer monitors per se did not exist at retail in 1977. The only choices were either televisions, or displays for security-camera systems such as the Sanyo VM-4209 <https://collections.vam.ac.uk/item/O1461694/sanyo-vm-4209/>. The latter, because of its high quality and perfect size for stacking on top of the Apple next to disk drives <https://www.reddit.com/r/VintageApple/comments/3snpqd/i_foun...>, became the iconic Apple II monitor of the early years until purpose-built computer monitors from Amdek and others, as well as Apple's own Monitor III <https://en.wikipedia.org/wiki/Apple_Monitor_III>, became widely available.
kristianp · 4h ago
What's a good book to read about the early days of Apple? I enjoy these stories but this is necessarily skipping a lot of the story of the apple I and II. A search brings up "The Little Kingdom" by Moritz, but it was published in 1984 so it may include the Mac also released in '84 [1].

[1] https://en.wikipedia.org/wiki/Macintosh_128K

codazoda · 2h ago
I bet Woz’s latest book, which I think is iWoz, probably has some stories (though it probably covers a later time).
kristianp · 3h ago
There's a folklore.org article about the book: https://www.folklore.org/The_Little_Kingdom.html

Edit Looking at the Little Kingdom book, it is about the development of the Mac, not the Apple I and II days.

cancerhacker · 2h ago
Woz gets some coverage in Steven Levy’s “Hackers: heroes of the computer revolution’from 1984, and he updated it in 2014. I try to reread it every year or so.
WoodenChair · 1h ago
Yes, "The Little Kingdom" is a great book (the very slightly updated edition is called "Return to the Little Kingdom" but really just adds a short epilogue), and in my opinion (having read most of them), the best book on early Apple. It gives you more insight into some of the other characters at the early company (Mike Markkula and Mike Scott for example) than some of the other books. Interestingly, the author, Mike Moritz (a lot of Mikes), went on to be a highly successful venture capitalist. So he must've had some keen insights about the tech industry.

I was a guest on a podcast called "CFO Bookshelf" to discuss that book if you want to hear a discussion of it before making the commitment to dive in:

https://cfobookshelf.com/return-to-the-little-kingdom/

TMWNN · 4h ago
Quoting myself from the prior discussion (with a correction):

-----------------

Woz explains why the original Apple II (1977) doesn't support lowercase letters. That's not surprising, in retrospect; of its major contemporaries, the TRS-80 Model I does not either, despite being developed by a major corporation with substantial resources. (The Commodore PET 2001 does support lowercase, but the keyboard is so terrible that it might as well not.)

He doesn't explain why the Apple II+ (1979)—after the II's market success was proven—doesn't support lowercase letters. Even if software uses graphics mode to display lowercase letters, the II and II+'s keyboard does not have physical/electrical support for detecting shifted letters. Since graphics mode is cumbersome and slow, word processors for the II and II+ typically use reverse video to indicate capital letters, and use another key like Escape as a shift toggle. A popular alternative is the shift-key mod that fattire mentioned, which requires soldering of a wire to one of the paddle ports.

The lack of support is because the company was working on the Apple III (1980), which it expected would quickly obsolete the II series. The III has built-in 80-column text and full lowercase support, at both the character-font and physical-keyboard levels. Apple had incentive to not make the II too attractive.

Neither Woz nor anyone else at Apple expected that a) the III would quickly fail, and b) the II series would remain Apple's bread and butter. Without the III's distraction the II+ would surely have had built-in lowercase software and hardware support, or there would have been another II around 1981 with such. As it were, the III took up so much of Apple's resources that the Apple IIe did not appear until 1983, by which time the IBM PC had surpassed the II series.

WalterBright · 4h ago
Sometimes you only had upper case because the character generator was a 5*7 grid which wasn't really good enough to display lc.
nine_k · 4h ago
5x7 is fine to display both lowercase and uppercase. You could even afford some stylistic variations!

Lack of ROM space for lowercase could be a more plausible explanation for an early computer.

WalterBright · 2h ago
You're probably right. There was a limitation to upper case only, I may misremember the cause.
frshOffTheBoat · 4h ago
Thanks for sharing!
sillystu04 · 4h ago
I wish modern computers considered casing to be purely a matter of style, such that “S” == “s” evaluates to true.

Casing is rarely semantically important, so case sensitivity is widely ignored. But in many circumstances this gets implemented in a haphazard way. For example some sites consider foo@gmail.com and foo@GMAIL.COM to be different email addresses.

Also case sensitivity makes internationalisation awkward, particularly with German.

Sadly it’s too late to change this because doing so would be such a breaking change.

alpaca128 · 4h ago
But modern computers do that for the most part. Standard search features default to case insensitivity and Windows & Mac OS have a case insensitive file system. But in other contexts it doesn't make sense considering it's part of the grammar.

> Also case sensitivity makes internationalisation awkward, particularly with German

How would it make anything more awkward?

zelphirkalt · 55m ago
Standard search features, for example the start menu of Windows have so severe bugs and shortcomings, that I am not sure they get anything right and would not trust them with lower und upper case either. For example type too early in the start menu, and you might just find nothing, after which it might search online. If you delete the text and type again, suddenly it finds stuff... critical race right there. Or how it finds something, when one types the first 3 letters that match, but when typing the fourth letter, the search result disappears...

People make searches so broken, it makes me think they have no idea what they are doing. The bigger the company, the worse the search usually is. I think it is maybe a result of non-tech companies hiring silly contractors, who do half-assed work, hoping that people will be so happy, that they get another contract later. Their customers are not the users, but the company that hired them. In case of MS it is probably ... hm, idk, sheer incompetence, I guess.

volemo · 3h ago
I wish [1] our (western) culture was not built on a bicameral [2] alphabet, but c'est la vie: uppercase and lowercase are distinct through out our lives, and thus computers must not break the norm. “MW” != “mW” and “Taylor” != “taylor”.

[1]: Capitalisation could have been made purely stylistic, the same way italics are — it’s a helpful hint for the reader, but isn’t expected to convey meaning on its own, therefore, generally can be stripped without loss of information.

[2]: https://wikipedia.org/wiki/Unicase

kstrauser · 3h ago
> For example some sites consider foo@gmail.com and foo@GMAIL.COM to be different email addresses.

I like it when such sites have a bug bounty program, or free offers for new users. Free money is nice.

amelius · 4h ago
I like that I can write:

    Window* window = new Window(...)
tedunangst · 2h ago
You don't need case sensitivity for that.
amelius · 2h ago
Perhaps if you redesigned the language. But case sensitivity makes things a lot clearer.
sillystu04 · 4h ago
You probably don’t like this:

  String string = “String.com”;
amelius · 4h ago
I don't see the problem to be honest.