- SINCLAIR ZX SPECTRUM KEYBOARD FULL
- SINCLAIR ZX SPECTRUM KEYBOARD PORTABLE
- SINCLAIR ZX SPECTRUM KEYBOARD PRO
A Power LED will also be useful and a good way to provide this with the Pi is to connect a LED to the Pi's UART TX pin as that will constantly be sending data while the device is on. To show which mode it's in, there are a couple of 3mm LEDs in the middle of the joystick panel. The default mode will be cursor mode, a combination of Caps Shift + the Fire button will switch to joystick mode and the Symbol Shift + Fire button combination will switch to mouse mode. Finally, the rows and columns are connected to the Arduino pins with wires from old IDE cables.Īs mentioned above, the joystick controller is also going to function as a cursor controller and a mouse so we'll need to be able to switch between modes. This can be a bit tricky because you need to get the row wires high enough to avoid contacting the columns but low enough to leave room for all the wiring we need to stuff in during the final assembly. First, each column is linked with a length of single-core wire and then the rows are connected using single-core wire which is carefully shaped to cross over the columns without shorting. I've included a schematic to show how the keyboard, including the matrix, is wired-up. The Spectrum keyboard doesn't need to handle multiple key-presses except for the Caps Shift and Symbol Shift keys so we're going to put those on dedicated pins, then we won't need to worry about using diodes to prevent phantom key-presses.
SINCLAIR ZX SPECTRUM KEYBOARD PRO
This matrix will enable us to connect all 40 keys plus the 7 joystick buttons to the Pro Micro's 18 I/O pins. Once the switches were soldered in place, the matrix which connects the rows and columns of switches to the microcontroller needs to be built. This is a small board which can be programmed as a USB human interface device (HID) such as a keyboard, mouse or joystick.
The microcontroller for the keyboard is an Arduino Pro Micro. The joystick will double-up as a controller for the emulator's menu system and a mouse for interacting with the underlying Linux system, so I also added a small secondary button. I decided to use a 5-way tactile navigation switch on the left and a large fire button on the right. The joystick controls then went into the remaining space immediately above the keyboard. The switches are surface mount versions which have a softer feel and are less noisy than their more common through-hole counterparts, but either should work as their body sizes are almost identical. The protoboards we're using are a standard 7x9cm (26x31 holes) available online from many retailers. Starting with some protoboards and a big pile of tactile switches, I experimented with a few ideas and settled on the staggered layout shown in the photos. We may be building a handheld emulated device which shares nothing in common with the original Spectrum internals but, with careful design, it should be possible to create something which feels reminiscent of the 80s computing experience. Getting the keyboard right is the key to capturing the look and feel of the original ZX Spectrum. With all this in mind, I drafted a block diagram to help me understand the various components. Instant: I hated tape loading in the 80s and I can't imagine I've grown any fonder of it in the intervening years.Adventure games, sure, but I don't just want to play adventure games so it's going to need a joystick. Joystick: I was never into playing platform games with a keyboard.
SINCLAIR ZX SPECTRUM KEYBOARD FULL
To get the full experience, it needs to have those wonderful keyword keys.
SINCLAIR ZX SPECTRUM KEYBOARD PORTABLE
So, what do I want from my portable ZX Spectrum? The choice at this stage was to either follow the path of the awesome Ben Heck and shrink original ZX hardware into something portable or to cheat and use emulation on a small single-board computer. This was fun for a while but I really wanted a dedicated device - preferably something small, portable and self-contained to fit in with my lifestyle. Having recently discovered some communities focused on older computers on the web, I decided I wanted to relive some of that nostalgia for myself and installed the Fuse emulator on my MacBook. My first computer - one which holds a special place in my heart - was a Sinclair ZX Spectrum 48K. I'm a child of the 80s and have fond memories of the 8-bit computers of that era.