Hacker News new | past | comments | ask | show | jobs | submit login
ZX81 Mechanical Keyboard (github.com/swetland)
207 points by zoenolan on June 13, 2023 | hide | past | favorite | 49 comments



That is a sweet keyboard.

It is rather better than my homemade one from 1982

https://twitter.com/njcw/status/1368566103933337603

My dad gave me a old keyboard from something and I traced the zx81 PCB to discover how it was wired, then rewired the new keyboard the same.

I connected it by burning a hole in the case with my soldering iron to poke the wires through!

It was a dream compared to the membrane keyboard.


Were you able to diagnose what's wrong with your ZX81? Usually it's a simple problem, it just takes a while to diagnose.

BTW, if you do want to get rid of it at some point, it would be nice if you could sell it on ebay or locally. The number of ZX81s left will just keep going down and they are quite decent for learning about electronics/digital systems.


It was not unseen to replace the original "keyboard" with mechanical one back then. The membrane keys were awful.


Why didn't you chop the excess from the sides of your mechanical marvel especially considering you had removed all the key caps?

It's super cool. I did a lot of zx81 hacking back when I was very young too.


I loved hacking Sinclair machines. I still have my first ever ZX Spectrum, complete with holes in the case and reset button mod.

The ZX printer brings back memories too. I remember naively printing the source code for a game I created only to come back later and find it completely faded and unreadable.


Unrelated, but I thought I recognized that username, thanks for making rclone!


What's the keyboard from?


I don't remember I'm afraid. My dad ran a business making keyboards at the time and he was always bringing home keyboards he'd bought to examine.

When he was through examining them I got to play!


Definitely looks to be from a DEC terminal of some kind, based from the switches and layout :D


Looks fantastic!

Just FYI there was a full travel keyboard for the ZX81 back in the day (and I own one):

http://www.zx81stuff.org.uk/zx81/hardware/dkTronicsKeyboard https://t-lcarchive.org/dktronics-keyboard/

I should get it out and take some good photos ...


Nice. In the US, I definitely remember seeing kits (perhaps loosely defined) of surplus keyboards and instructions for adapting them to the ZX81. A friend's dad who had built his ZX81 from a kit added a keyboard that way. Just little later on I think surplus TI/99 keyboards became the go to mod for anyone who was still running a ZX81/TS1000.


I recall seeing an Eastern Block manufactured ZX81 clone with a mechanical keyboard back in the day, and a couple of different Soviet era ZX81s with not-mechanical-but-vastly-improved keyboards. Seems like they really liked to clone the ZX81 behind the Iron Curtain.

That said, really isn't new. Lots of people took ZX's and modded them with new keyboards, bigger cases (better thermals & PS), better mechanical connection for expansion ports, etc.


I had this one piece "keyboard upgrade":

https://www.computinghistory.org.uk/det/36030/Sinclair-ZX81-...

It's debatable if it improved things or not. Must have been really cheap to manufacture though.


Does it enclose the ZX81 or is it connected to the expansion bus, the one we used for the extra RAM card?


It entirely encloses the ZX81 and the RAM pack. Which is an issue because when myself and my father originally fitted it (back in probably 1982) we threw away the original "doorstop" shell of the ZX81 designed by Rick Dickenson (https://en.wikipedia.org/wiki/Rick_Dickinson).


Brian's entire ZX81 reproduction project is wonderful: https://chaos.social/@swetland/tagged/zx81


I've had a lot of fun with this project, but want to be clear that the actual "replicate the ZX81 using discrete 74xx logic (like the ZX80) instead of the ULA chip" PCB design is the work of Mahjongg2 who has shared their work here:

https://github.com/mahjongg2/ZX81plus38

https://forums.raspberrypi.com/viewtopic.php?t=254492

https://revspace.nl/ZX81plus38_simple_to_build_ZX-81_clone


This is definitely tidier than the mechanical keyboard I had for my ZX81—build by a friend in the early '80s and purchased by me circa 1994!—which had keycaps which were more or less photocopies of the picture of the keyboard in the manual that had been photocopied and glued onto the keys of some ancient surplus terminal keyboard, with a healthy dose varnish to protect the paper on top and a lot of kludging of the PCB underneath to configure it to scan the same as the ZX81 membrane keyboard.


Somewhat amusingly, the keycaps were the most expensive component ($60 plus shipping), second most expensive being the keyswitches. I really wanted something that captured all the information presented by the original keyboard and also fit on keycaps and am pretty happy with the result.


A bit nicer than the one I did for a ZX80 many years ago.

I simply stripped the membrane key layer off the PCB, and soldered a set of mechanical key caps in place. It worked, and was a lot nicer to use.

The key caps were clear (and removable), so I placed pieces of paper with the various symbols under them.


I have one of Davids, it’s a nice keyboard. I also have one of the Memotech keyboards from back in the day - but in 1981 I was “enjoying” the membrane keyboard.

David’s whole website is a ZX81 adventure! https://www.zx81keyboardadventure.com/p/zx-key-support.html https://www.zx81keyboardadventure.com/

Memotech Keyboard: https://www.computinghistory.org.uk/det/36275/Memotech-ZX81-...


My original, self-assembled a lifetime ago, ZX-81 sits on a shelf next to me as I update insane fleets of processing power on AWS. If I can get past the sentimentality of preserving it, the joy of dropping this keyboard on it might just get me to bring it back to life.


It's hard for me to capture the level of nostalgia I have for those 4px graphical elements that you could use for graphics. They allowed you to control graphics with the conditional logic of Basic. I had so much fun making animations with different scenes.


I always wondered, what do the black and white square icons mean?


The ZX80 and ZX81, like a number of 80s personal computers featured a set of graphical characters in addition to standard alphanumeric and punctuation and provided a way to enter then directly from the keyboard. On the Sinclair machines you'd use SHIFT + GRAPH to enter "graphics mode."

https://upload.wikimedia.org/wikipedia/commons/e/e9/Commodor...

https://upload.wikimedia.org/wikipedia/commons/9/9a/Atari-13...


In addition to other answers, ZX81 BASIC had a PLOT command to draw a "dot" on the screen. However since the display was character based (32x24 grid, but the bottom two lines are reserved) what this command actually did was place one of 16 2x2 black and white blocks at the particular character location (giving 64x44 resolution). If there was already a non-block character at the location it was replaced. (Also UNPLOT which was the same except drawing a white quarter-pixel). There were no line or circle drawing commands, so you had to implement that yourself.

Here's the manual reference:

https://worldofspectrum.net/ZX81BasicProgramming/chap18.html

Recently Unicode added these characters:

https://en.wikipedia.org/wiki/Symbols_for_Legacy_Computing


As others have said, they're character graphics. Much used in ZX81 games because the ZX81 didn't have direct support for full resolution (256 x 192) bit mapping.

There were a couple of hi-res hacks - pseudo (partial_ hi-res, which was a hack of the character system, and full bit-mapped hi-res which only worked with internal RAM or special modified external RAM.

Both were a bit of a project (for the time.) Some games used them.

My fav ZX81 program was the 1K chess. Very basic character graphics, but it somehow managed to fit a minimal but workable chess engine into 1K of Z80 machine code.


They're box drawing characters. The markings on the keyboard are what they looked like on screen.


My neighbor had a custom made keyboard for his ZX spectrum, based on reed switches:

https://en.m.wikipedia.org/wiki/Reed_switch

Mine was manufactured at a tractor plant, and one had to press really hard on switch a to get a response.


Similarly, replacement keyboards for the Atari 400 comprise, I estimate, one third of hardware advertised in Atari magazines of the era.


Why was this never a thing back in the day? I can see the wisdom of getting a cheap one out of the door, but certainly by the time you've got the spectrum, it seems a no brainer to release one with a nice keyboard.

I know Sinclair later released computers with nicer keyboards, but it wasn't just a straight speccy.


Because the computer was built to a price and there's no way they could have included a proper keyboard for that price. The ZX81 kit was £49.95 (£204 today) or £69.95 assembled (£285 today). Note that 15% of the price was tax, and if sold through retail probably half went to the shop.

(I'd love to see a full 1981 BOM for the ZX81, but finding old prices of components is tricky)


No I get that. But once you get to a certain point an ecosystem develops where you have small game Devs who would probably want a nicer computer, you have the small business owner / parent who learnt to use the computer, has a bit more to spend, has a legitimate use and is willing to spend a bit more.

Even if the price quadrupled if someones relying on that hardware, and the keyboard makes their job easier, it seems it would sell.

Plus, compared to the 90s £285 is cheap. I wish my computer's were that cheap back then. My first computer was over £500 (so what £1000 today?) and it wasn't top of the line, and I had to put it together myself.


it was, my father made a cherry mx kbd for ours, based on a magazine article


Is there a convenient way to print high quality keycaps, like they have in the example image?


TIL just how reasonably (relatively speaking) priced it is to get completely custom keycaps.


The place where it breaks down is if you want to build a keyboard that doesn't use a typical collection of contours and widths of keys or a subset thereof. I haven't found a shop that'll do a "nonstandard" collection of keys as a package and the prices for one-off custom keycaps are not economical for a set of 50 or 70 or whathaveyou.


I'm surprised the legends have 4 colours for that price, too.

This makes it much more tempting to get a set which describes something like Miryoku.


I know it feels a bit reductionist, but what % keyboard would you call this? Feels like its somewhere 40% to 45%.


I think this is smaller than 40%. A classic 40% Planck is 4x12 keys


What is this abomination with no space bar but instead a space button in the bottom right.


Typing on a ZX family machine was different. The keys look busy because you didn’t type out the keywords like you did on most other machines. Instead, a variety of keyboard modes inserted them - along with the required spaces - for you. To load a program from tape on a ZX Spectrum you simply pressed J, which would insert the keyword LOAD along with a trailing space, and then hold Symbol Shift and press P twice to get “”.

The space button was only needed when writing regular text, which was much less common on these machines.


Right -- and there is a hugely important consequence of this design for people learning to program:

It was almost impossible to enter a syntactically incorrect program. Because the keyboard routines were doing the work of what would now be a lexer and parser.

The keyboard would only let you enter syntactically valid code.

One other nostalgia side-effect; where many games for eight bit computers used Q-A-O-P-<Space> for directional controls plus action, Sinclair games typically defaulted to Q-A-O-P-M, as a result.


Yes, there were occasional instances of "C Nonsense in BASIC" errors, but that was for very specific cases. Mostly, the cursor would change to a flashing question mark if you tried to enter something syntactically incorrect.


It's replicating the ZX81 keyboard, including all the quirks except for the horrific membrane keys.

https://upload.wikimedia.org/wikipedia/commons/8/8a/Sinclair...


keys which Microsoft decided to bring back in their original Surface line.


Not the same! :-) The ZX81 keyboard really was objectively difficult, even for the time.

In terms of their feel, the MS keys (and e.g. the iPad Keyboard Cover keys) are rather more like the (still IMO wonderful, and pioneering) keys of the Cambridge Computers Z88 (also a Clive Sinclair product). Raised keycaps with a larger volume of air to move the membrane. Quiet and mostly usable at a reasonable pace.

The ZX80/81 membrane keyboard was entirely flat except for the tiniest hint of membrane bubble, with a uniform textured matt finish. Not even textured outlines around the keys. Surprisingly robust; maybe more so than the membrane keyboard of the Atari 400 (which is also a classic of visual design), or, say, that of the BigTrak.


Seems like it's nostalgia based on what the ZX81.

Sure, having the space button be on the bottom right seems silly, because you'd have to use your pinky finger instead of your thumb; and the thumb is much stronger than the pinky finger.

Typical keyboards these days have spacebars that are 5-7x the size of usual keys. This faces a similar problem: Instead of your thumbs being able to press useful keys, the thumb can only really press spacebar (without moving from home row); and the pinky fingers get used for all the other stuff.


a friend in high school replaced my b0rken membrane keyboard with pads from a standard issue touch-tone phone.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: