Spectrum Chiptunes On An STM

Some of us here at Hackaday are suckers for a bit of chiptune music as the backdrop for many excellent times. The authentic way to create chiptunes is of course the original hardware, but in 2019 it’s far more common to do so with an emulator on a modern computer. That computer doesn’t have to sport a high-end processor and desktop operating system though, as [Deater] shows us with his ZX spectrum chiptune player on an STM32L46G Discovery board.

The impetus for the project came he tells us while teaching students to code simple sine wave music players, having code already in the bag for emulating the classic AY-3-8910 sound chip on the Raspberry Pi and the Apple II he decided to port that to the STM32L476 dev board. An earlier version used the internal DAC, but this was refined to send I2S data to an external DAC. The code can be had from GitHub (confusingly buried among code for an LED driver), and we’ve attached a video below of it playing some chiptune goodness.

Of course, Sinclair chiptunes don’t grab all the limelight. There have been plenty of Nintendo and Sega players too. You might also recognize [Deater] from his non-chiptune work, porting Portal to the Apple ][.

Continue reading “Spectrum Chiptunes On An STM”

Stick Your Own Samples In The Cheetah SpecDrum

The Sinclair ZX Spectrum was a popular computer in the 8-bit era, and particularly so in its homeland of the United Kingdom. It was known more for its low cost than its capabilities, but it gained many add-ons over the years. One of those was the Cheetah SpecDrum, which turned the Spectrum into a rudimentary drum machine. [PianoMatt] wasn’t happy with the original drum samples, so he set about loading a custom kit into the SpecDrum.

The SpecDrum software initially came with extra sample tapes, so [PianoMatt] knew it was an achievable task to load in custom samples. Starting by loading the software in an emulator, the RAM was then exported as raw data and loaded up in Audacity. After some experimentation, it was determined the samples were stored in 8-bit format at a sample rate of approximately 20 kHz. With this figured out, it was then possible to load replacement samples directly into RAM through the emulator.

However, this wasn’t enough for [PianoMatt]. Further digging enabled him to reverse engineer the format of the replacement sample tapes. Armed with this knowledge, [PianoMatt] then generated his own tape, complete with proper headers and labels for each drum sound.

It’s a tidy effort to bring a more modern sound to a now positively ancient piece of hardware. We’d love to hear a track with drums courtesy of the SpecDrum, so we’ll keep an ear out on Soundcloud. Mucking around with old sound hardware is a popular pastime in these parts – we’ve even seen people go so far as to build bespoke Sega chiptune players from scratch. 

Creating 8-bit Games With The Multi Platform Arcade Game Designer

Creating a game from scratch can be hard work. There are concepts to be designed, coding to be done, and art to be created to make it all happen. However, it doesn’t always have to be quite so difficult. There are a variety of development tools that allow budding game designers to get started with a point-and-click approach. [Jonathan Cauldwell] has come up with just such a tool that lets you do just that, for a variety of 8-bit platforms.

[Jonathan]’s project is called the Multi Platform Arcade Game Designer, so named for its ability to create games for several 8-bit systems of yesteryear. Currently, the Spectrum, Amstrad CPC, and Acorn Atom are all supported, with plans to add more down the track.

Creating a game is a simple affair, which [Jonathan] explores in a video tutorial series. Sprite and background editors are built into the software. Scripts can be automatically generated to create a wide variety of basic game types, from scrolling shoot-em-ups to classic platformers. There’s also functionality that allows advanced users to add further functionality by supplying some of their own code.

If point-and-click isn’t for you, you can always forge your ZX Spectrum games the classic way, with assembly and BASIC. Video after the break.

Continue reading “Creating 8-bit Games With The Multi Platform Arcade Game Designer”

The Primordial Sinclair ZX Spectrum Emerges From The Cupboard

The Centre for Computing History in Cambridge, UK, receive many donations from which they can enrich their collection and museum displays. Many are interesting but mundane, but the subject of their latest video is far from that. The wire-wrapped prototype board they reveal with a flourish from beneath a folded antistatic mat is no ordinary computer, because it is the prototype Sinclair ZX Spectrum.

It came to the museum from Nine Tiles, a local consultancy firm that had been contracted by Sinclair Research in the early 1980s to produce the BASIC ROM that would run on the replacement for their popular ZX81 home microcomputer. The write-up and the video we’ve placed below the break give some detail on the history of the ROM project, the pressures from Sinclair’s legendary cost-cutting, and the decision to ship with an unfinished ROM version meaning that later peripherals had to carry shadow ROMs with updated routines.

The board itself is a standard wire-wrap protoboard with all the major Spectrum components there in some form.  This is a 16k model, there is no expansion connector, and the layout is back-to-front to that of the final machine. The ULA chip is a pre-production item in a ceramic package, and the keyboard is attached through a D connector. Decent quality key switches make a stark contrast to the rubber keys and membrane that Spectrum owners would later mash to pieces playing Daley Thompson’s Decathlon.

This machine is a remarkable artifact, and we should all be indebted to Nine Tiles for ensuring that it is preserved for those with an interest in computing to study and enjoy. It may not look like much, but that protoboard had a hand in launching a huge number of people’s careers in technology, and we suspect that some of those people will be Hackaday readers. We’ll certainly be dropping in to see it next time we’re in Cambridge.

If you haven’t been to the Centre for Computing History yet, we suggest you take a look at our review from a couple of years ago. And if prototype home computers are your thing, this certainly isn’t the first to grace these pages.

Continue reading “The Primordial Sinclair ZX Spectrum Emerges From The Cupboard”

Netflix Drops ZX Spectrum Homebrew Title Nohzdyve

The dark, dystopian future is ever-present in the Netflix show Black Mirror, but the latest release in the series, Bandersnatch, presents a decidedly different narrative. Bandersnatch is a branching story that follows the fictional events of a garage-programmer named Stephan who develops the titular game, Bandersnatch, for the Tuckersoft company set in 1980s England. The whole thing plays out as a choose-your-own adventure game fit straight off the Sega CD (albeit with actual full motion video) by allowing watchers to pick what happens next in the story. Not one to miss a cross-promotional opportunity, Netflix also released a playable ZX Spectrum homebrew title, Nohzdyve, developed by a friend of Hackaday, [Matt Westcott].

Keen viewers of Bandersnatch were able to ascertain that the screeching sound at the end of the show when loaded into a ZX Spectrum would display a QR code. That in turn led to a real website for the fake Tuckersoft company (thankfully in HTML). The website itself showcases the fictional company’s software library and upcoming releases, but it also took things a step further. The duality of Bandersnatch is carried over to the website as there are branching paths for those that remove ‘www’ from the URL. Doing so reveals Tuckersoft’s website from an alternate timeline where Bandersnatch was never created, however, a downloadable copy of Nohzdyve in a .tap file is there for the taking.

The Nohzdyve game itself is a vertically scrolling action game that uses the ZX Spectrum’s garish color palette to great effect. Racking up a high score in the game can be done via emulator (for example Speccy) or for the most authentic experience, on real hardware. This may be the best reason to fire up a tape drive in a while, but for those seeking the less-analog approach there is always this gameplay footage from Mr. Tom FTW’s channel:

Continue reading “Netflix Drops ZX Spectrum Homebrew Title Nohzdyve”

Bus Raider Allows Classic Micro Emulation On An RC2014

If you were lucky enough to own one of the crop of 1980s 8-bit computers, did you ever pause to consider how its graphics worked? Maybe the really expensive ones had dedicated CRT controller subsystems akin to the graphics cards you’d have found on a PC a few years later, but most of the affordable models would have stopped what they were doing every TV line interval period to allow access to their memory for their graphical output to be created.

The RC2014 retrocomputer dodges all this, by using a serial port as an interface and expecting your serial terminal to handle the screen. But what if it could produce its graphics directly as the machines of old did? [Rob Dobson] set out to achieve this, and not only did he succeed but he also found a way to directly emulate some classic machines along the way.

His RC2014 card which he calls the Bus Raider started as an attempt to use a Raspberry Pi to commandeer the RC2014 memory and read it via its GPIO lines, interpreting the graphics for its own screen. But even with bare metal Pi programming he couldn’t achieve the complex timing required for that, so he took an alternative approach. He ended up with an ESP32 that emulates a custom part of the RC2014 memory map and generates a display from there. Having created a custom memory map and hardware emulator for his RC2014, he then had the revelation that he could emulate any memory map, and thus he could make the retrocomputer perform natively as though it were any of a selection of classic micros. So far as well as a straight serial terminal he has a Sinclair ZX Spectrum and a Radio Shack TRS-80 running, as well as his own custom Z80 environment. And since the ESP32 also has WiFi, he can even connect to it through that medium.

Retrocomputers are something in which you might think that everything possible would already have been done, but projects like this one never cease to amaze us with their ingenuity. If you’d like to read more about the RC2014, we reviewed an earlier model back in 2016.

Electromagnetic Field: Speczilla!

It is a golden rule of the journalist’s art, that we report the news, we don’t make it. But just occasionally we find ourselves in the odd position of being in the right place such that one of our throwaway comments or actions has the unintended consequence of seeding a story. This is one of those moments, so it’s a rare case of use of the first person in a daily piece as your scribe instead of Hackaday’s usual second person.

At the SHA2017 hacker camp in the Netherlands, [Matt “Gasman” Westcott] gave his presentation on composing a chiptune from an audience suggestion. Afterwards my Tweet about never having seen a Sinclair Spectrum as large as the one on the presentation screen grew a life of its own and became the idea for a project, which in turn at Electromagnetic Field 2018 was exhibited as a giant-sized fully working Sinclair ZX Spectrum.

Since much of the work was performed in Oxford Hackspace I saw Matt’s progression, his first experiments with foam rubber keys, then as he refined his two-wire switch mechanism. Early experiments hooking a row of them up to a real Spectrum motherboard weren’t the success he’d hoped for, so he moved to the FUSE emulator on a Raspberry Pi. A huge effort and needlework learning curve plus a lot of help from OxHack’s textile specialists and buying his local furniture store’s entire stock of foam allowed him to perfect a facsimile of the classic Spectrum’s case and blue rubber keys, while its lettering and iconic BASIC keywords were vinyl-cut at rLab in Reading. A Milton Keynes Makerspace member provided transport to the camp where it was united with a huge TV in a gazebo, completing the trio of local spaces.

At the camp, though it suffered a few technical hitches along the way it was rather a success. There were two techniques, kneeling down and pressing keys with the palm of your hand, or dancing on them in socked feet for complex manoeuvres. The trademark single-key-press BASIC keywords took a little while to re-learn though, there was a time when those were instinctive.

We’d normally wrap a piece like this one up with a link or two. To other projects perhaps, or other hacks from the same person. But in this case we have neither another home computer on this scale, nor any hacks from [Matt], as he’s well known in the European arm of our community for something completely different. As [Gasman] he’s a chiptune artist par excellence, as you can see if you watch his set from the 2014 Electromagnetic Field.