Retro ZX Spectrum Lives a Spartan Existence

FPGAs (like Xilinx’s Spartan series) are great building blocks. They often remind us of the 100-in-1 electronic kits we used to get as kids. Lots of components you can mix and match to make nearly anything. However, like a bare microcontroller, they usually don’t have much in the way of peripheral devices. So the secret sauce is what components you can surround the chip with.

If you are interested in retro computing, you ought to have a look at the ZX-Uno board. It hosts a Spartan 6 FPGA. They are for sale, but the design is open source and all the info is available if you prefer to roll your own or make modifications. You can see a video of the board in action, below (as explained in the video, the color issues are due to the capture card trying to deal with the non-standard sync rate).

Here are the key specifications:

  • FPGA Xilinx Spartan XC6SLX9-2TQG144C
  • Static Memory 512Kb, AS7C34096A-10TIN
  • 50MHz Oscillator
  • Video output (composite)
  • PS/2 keyboard
  • Stereo audio jack
  • EAR jack connector (for reading cassette tapes)
  • Connectors for JTAG and RGB
  • Slot for SD Cards
  • Expansion port with 3 male pin strips
  • Micro-USB power connector
  • PCB Size: 86×56 mm. (Compatible with Raspberry Pi cases)

Continue reading “Retro ZX Spectrum Lives a Spartan Existence”

Computer Emulation In The Manner Of A Turducken

If you come from somewhere with a tradition of eating a meal of roast turkey or goose to celebrate Christmas, Thanksgiving, or other holidays, then maybe you’ve encountered the three-bird roast, or Turducken. A deboned duck is stuffed with a deboned chicken, and in turn the combination is stuffed into a turkey All the gaps are filled with sausage meat stuffing, and the resulting combination is roasted for a serious meat-fest. Vegetarians, please look away.

It’s something of an excess of poultry, but the three-bird roast is a delicacy that definitely works. We’re not so sure about the link that prompted this journey into celebration poultry dishes by reminding us of a turducken, but  we’ll leave the verdict to you the reader. Someone has created an unholy turducken-style chain of emulators that delivers a Sinclair ZX Spectrum on a Linux machine via Windows, DOS, and the Commodore 64. If it had its own word like the poultry dish it might be a Linwindoscomtrum, but let’s not go there.

The linwincomtrum in all its glory.
The linwindoscomtrum in all its glory.

So how have they done it? First, they took Lubuntu, and installed WINE. (OK, Wine Is Not an Emulator, we know that, but go with the story for a moment) Then they installed DOSBox under WINE for a DOS command prompt, and ran no$C64, a Commodore 64 emulator. On that they ran the c642spec Sinclair ZX Spectrum emulator, and finally arrived in a ZX BASIC prompt.

The author does make the point at the start of the write-up that it’s a waste of ten minutes, but even though the result is an overly complex way to slowly emulate an archaic home computer on a modern one we’ll still give them ten out of ten for the effort.

Incidentally, the author does not identify themself and there is little clue in the form of the rest of the site to identify them, so unusually for a Hackaday piece we can not give credit where it is due. We do however salute the anonymous emulator pilot for their glorious folly.

If the ZX piques your interest, we’ve featured a coding tutorial for the rubber-keyed British micro in the past, as well as a later one having a tape-drive-ectomy, and of course the hellzxschreiber amateur radio Hellschreiber receiver.

Via Hacker News. ZX Spectrum image: Bill Bertram [CC BY-SA 2.5], via Wikimedia Commons.

Hackaday Links: May 10, 2015

Here’s a cool crowdfunding campaign that somehow escaped the Hackaday Tip Line. It’s a remote control SpaceShipOne and White Knight. SpaceShipOne is a ducted fan that has the high-drag feathering mechanism, while White Knight is a glider. Very cool, and something we haven’t really seen in the scratchbuilding world.

[Sink] has a Makerbot Digitizer – the Makerbot 3D scanner – and a lot of time on his hands. He printed something, scanned it, printed that scan… you get the picture. It’s a project called Transcription Error.

Keurig has admitted they were wrong to force DRM on consumers for their pod coffee cups.

The Apple ][, The Commodore 64, and the Spectrum. The three kings. Apple will never license their name for retro computer hardware, and there will never be another computer sold under the Commodore label. The Spectrum, though… The Sinclair ZX Spectrum Vega is a direct-to-TV console in the vein of [Jeri Ellisworth]’s C64 joystick doohickey.

Infinity mirrors are simple enough to make; they’re just one mirror, some LEDs, and another piece of glass. How about a 3D infinity mirror? They look really, really cool.

Here’s the six-day notice for some cool events: Hamvention in Dayton, OH. [Greg Charvat] will be there, and [Robert] is offering cold drinks to anyone who mentions Hackaday. If anyone feels like scavenging for me, here’s a thread I created on the Vintage Computer Forum.  Bay Area Maker Faire is next weekend. Most of the rest of the Hackaday crew will be there because we have a meetup on Saturday night

Central European Computer Collecting

During Hackaday’s short trip to Czech, we were lucky enough to run into someone who had recently had one of his projects featured on Hackaday. It’s [Martin]’s multi-target IDE for 8-bit CPUs, written entirely in JavaScript, and a full development suite for anything with a 6502, 6800, 6809, Z80, 8080, and 8085. [Martin] was kind enough to sit down and give us the scoop on why he’s interested in old computers, and why he developed his 8-bit IDE project, ASM80.

[Martin] grew up in the days of computer magazines, and originally wanted to build his own computer. That plan didn’t work out, but his parents did get him a Speccy in 1986, but the love of old hardware is still there. Over the years, this evolved into computer collecting, with the old ZX Spectrum, an Commodore 64, ORICs, and Acorns rounding out his collection. As we learned at the Computeum, there the middle of Europe had computers that just aren’t seen on the English-speaking Internet, and [Martin]’s collection is no exception.

In addition to doing some very cool stuff for some very old computers, [Martin] also donated something to the Hackaday Hackaspace. It’s a PMI-80, a single board computer made for university computer science students, and basically a KIM-1, but based on a Czechoslovak clone of the Intel 8080 made by Tesla. There is 1k of RAM and 1k of ROM on this board, a calculator keypad, and a few seven segment displays. For the time, it was a great ‘student’ computer, and not really rare in Europe, but this is the first one I’ve seen on my side of the Atlantic.

You can see some pics of the PMI-80 below with [Martin]’s interview. [Martin] also promised to write-up a short history of classic central european computers, a subject there isn’t much written about in the anglosphere. We’ll post a link to that when he finishes that up.

Continue reading “Central European Computer Collecting”

ZX Spectrum Turned Into A USB Keyboard


They’re a little hard to find in the US, but the ZX Spectrum is right up there with the Commodore 64 and the Atari 8-bit computers in England. [Alistair] wanted to recreate the feeling of sitting right in front of the TV with his Speccy, leading him to create the ZX Keyboard, a Spectrum repurposed into a USB keyboard.

While most projects that take an old key matrix and turn it into a USB keyboard use the TMK firmware, [Alistair] wanted to flex his programming muscles and wrote the firmware from scratch. It runs on an Arduino Pro Mini, scanning the matrix of five columns and eight half rows to turn combinations of keypresses into an astonishing number of commands, given the limited number of keys on the ZX.

The firmware is available on [Alistair]’s repo, available to anyone who doesn’t want to pay the £50 a new ZX Spectrum keyboard will cost. As far as the usability of a Spectrum keyboard goes, at least [Alistair] didn’t have an Atari 400 sitting in the attic.

Sinclair ZX Spectrum +2A Slims Down


[Carl] got his hands on a dead Sinclair ZX Spectrum +2A. He decided he wasn’t just going to fix it, he was going to improve it! The ZX Spectrum Compact is literally a “sawn-off” Spectrum +2A. [Carl’s] inspiration came from a similar mod at the Old Machinery blog.

Amstrad seems to have had a habit of bolting on additions to their products. In the case of the Spectrum +2A, it was a tape drive. Tapes weren’t a great storage method in the 80’s, and today they’re downright annoying. [Carl] didn’t need the tape interface, as he’s using a DiVide ATA interface.

The modification is rather straight forward. [Carl] broke out the hacksaw and cut the right end cap away from the tape drive. He then cut the entire tape drive away. The motherboard wasn’t safe from the saw treatment either, as the printer interface was cut off. Thankfully there were no components on the printer interface. Apparently [Carl] didn’t short any traces as he went to town with his saw.

With the motherboard modified to fit the abbreviated case, [Carl] was ready to begin reconstruction. He glued the cap onto the sawn-off case with Grip Fill glue, which also served to fill any gaps. Some sanding, priming, and painting later, The ZX Spectrum Compact was finished. This isn’t a perfect mod, as the gap is still slightly visible under the paint – but it’s good enough for [Carl]. Hey, it’s good enough for us, too – we can’t all be [Ben Heck]!


Try out your assembly and BASIC skills with a ZX Spectrum project

It can be really hard to warm up to coding in Assembly. But this tutorial looks to make it understandable and (almost) easy. It focuses on programming a game for the ZX Spectrum. But you won’t need the hardware on hand as you can just use the ZX Spin emulator as you work your way through the code.

Ostensibly this is a 30-minute tutorial but that’s a gross underestimate. We finished a cursory read of the tutorial and the building blocks are certainly clear and easy to understand. But we like to make sure we understand every line of code and plan to spread that out over the coming weekend.

The first chapter eases us into machine code by combining it with a bit of BASIC. You’ll see how to manipulate the ZX Spectrum memory and then pluck that value back out into the BASIC program. But once chapter 2 hits it’s pretty much all assembly from there on out. The nice thing is that as you go along you learn how the hardware works and there are quite a few references to pages in the manual so you can do some extra learning along the way.

[Thanks Mathilda]