Sinclair Spectrum+ Tape emulation: Métal Hurlant

So I’ve tried for years now to get a Spectrum +, or a ‘toast rack’ Spectrum 128k, and met no success at all. I have bid unsuccessfully on over 24 systems, with no luck at all. However on a business trip to the UK, I bid on 8 systems, and won 4.

One of many

So now I have too many, which I’ll have to flip a few as I don’t need so many, but for me it’s been super interesting as the whole UK 80’s scene was an isolated parallel software society, that a few software publishers ‘broke out’ once there was common hardware platforms in the 16bit (ST/Amiga), and especially in the Play Station 1 era.

A seeming 100% catastrophic failure of these machines is the keyboard.

dried out contacts

The plastics tend to dry up and disintegrate over the decades, leaving a dead keyboard. However since it’s such a common problem people do make modern replacements.

closeup of the damage

Here is a closeup of the damage, and you can see the clear breakage.

view of the domes

While the keyboard is disassembled it’s a good time to clean the domes, to make sure there is no debris inside, and give it a light wash.

Reassembly

One thing that caught me off guard is that the membrane is really made up of 3 layers, and that they need to be pressed together to make it fully work. So the cable that goes under the collar needs to be tight. Many videos recommend pushing the cable slightly towards the keyboard assembly to give it that extra bit of tension as you screw it down to give it that little extra push to press the layers together.

After all that fun, the keyboard is working and now I can continue onto the next part!

Software

As always one of the big challenges with old machines is getting software loaded. Media deteriorates, becomes scarce, and of course some titles become more expensive than the machines. So what’s a pirate to do?

Luckily a discount ‘toy’ computer from the 80’s also used ‘toy’ storage, in this case the humble audio Philips compact audio cassette. And many of these tapes have been ripped, and converted to a ‘tap’ format, for emulation.

So first you’d think that it’s a simple matter of converting the tap file to a sound file, and playing the resulting file to the computer, and bingo you are up and running! Except it’s not quite that simple.

Digital to analog

This is the easiest part, is the tap conversion, I’m using Igor Maznitsa’s zxtap-to-wav, which is pretty simple to go to a 44100khz

zxtap2wav-windows-386.exe -a -f 44100 -s -i IM2.TAP -o impossibleMissionII.wav

  TAP2WAV converter of .TAP files (a format for ZX-Spectrum emulators) into its .WAV image (PCM, mono).
  Project page : https://github.com/raydac/zxtap-to-wav
        Author : Igor Maznitsa (http://www.igormaznitsa.com)
       Version : 1.0.1

Detected data blocks : .P.D.C.D.D.D.D.D.D
The Result WAV file size is 11043 Kb
3.5mm jack
But we are living in a stereo world, but the ZX Spectrum is a monaural girl

Now you’d think we are good to go, however there is one more problem, and that is the mono plug in the Spectrum. As answered on stackexchange, by mcleod_ideafix, the fundamental problem is that odds are your sound card is stereo, your ‘headphone cable’ is also stereo. So instead of one nice big happy waveform, you’ll actually end up sending 2 waveforms down the stereo plug to the mono jack, that will introduce so much crosstalk that it’d be amazing that anything loads.

Inside the thread is a good explanation of how to fix the waveform to appear over both sides of the pin, but also this nice script to use sox to split for you:

#!/bin/bash
# wav2differential.sh - convert mono game tape audio to 2× stereo
# usage:   wav2differential.sh infile.wav
#          (creates  infile-differential.wav)
# scruss - 2016-06-07
# method by ‘mcleod_ideafix’; many thanks / greetz
#   — https://retrocomputing.stackexchange.com/a/774/439

base="${1%.wav}"
sox -q --norm=-3 "$1" -b 16 "${base}-n.wav"
sox -q  "${base}-n.wav" "${base}-ni.wav" vol -1.0
sox -q  --norm=-0.1 -M -c 1 "${base}-n.wav" -c 1 "${base}-ni.wav" "${base}-differential.wav"
rm -f  "${base}-n.wav" "${base}-ni.wav"

With the wav file in place, the next thing to do is to play it back to the spectrum. On the PC however in the age of multitasking you probably have a LOT of things going beep, and that’ll mess up the entire load process. Bring up the Volume Mixer, and mute everything that isn’t what you are using to play the wav file.

Mute them all!

The first few mistakes I made was thinking that I didn’t want to send too loud of a signal to the Spectrum, as it is voltage, and it probably doesn’t need that much. However the DAC is very hard of hearing, even by 80’s standards so that means you need to crank the volume to 100%

Overboost to 125%

As a matter of fact, go all the way to 125% if you are using VLC. Tapes load slow, expect anywhere for a minute for a 10kb program, and 5+ minutes for a 40kb program. Times vary depending on how the packed the waveform, fast loaders and other fun things.

Spectrum loading from Laptop

And yeah there we go, loading Impossible Mission II, converted from a .tap to wav, then split and combined waveform to load from a stereo plug.

Going overboard!

Now I have 3 ways!

In the last auction I inadvertly won, it included a joystick interface (that hangs OVER the keyboard, WTF?!), and a legit 1980’s Tape deck, the Ingersoll XK696. Shockingly it actually works! It did have it’s fair share of dust bunnies inside which needed promptly cleaning out, I tested with a ‘legit’ tape, a copy of startrike, and yeah, it loaded up fine! I do like how it’s got it’s own ‘monitor’ volume and speaker, along with nice big chunky buttons, and tactile feedback. Got to say I do like it, although yeah loading from tape is slow. But since I never did back in the day, there is something oddly weird about having to pace oneself because of the insanely slow peripherals. I wonder how slot in bps the 1541 was.

I also ordered a retro.care “MaxDuino TZXduino CASduino” loader which can read the tap files directly, and included a stereo to monaural RCA 3.5 cable in the bundle. Pitty it didn’t include a SD card, and I ended up buying some 4GB card for £5. Such is the price of wanting it immediately. It does let you set the baud rate from 1200/2400/3600 and a blistering overdrive of 3668? Short of an eye watering £90+ for a DivIDE/DivMMC board it does seem to be the budget way to go for someone who doesn’t want to waste all that time converting tap images to wav, then inverse wav to load from PC. But then again if you have 5+ minutes to load a program, you have time to convert files.

There does seem to be something oddly zen about loading from tape, and it makes one all the more hesitant to reboot as loading up something else is such a long process, and that is of course assuming that it even loads in the first place.

Also the other odd thing is that some programs/games want you to load tapes as if they are semi-random access needing you to stop and go on demand (maybe rewind too!). Granted other computers (MSX?) did include a control cable allowing rewind giving a more randomish access out of tape. It’s a limitation of the time, sadly and microdrives and floppies arrived too late, and failed to have any significant adoption to matter, sadly.

I don’t know if this will reach any audience, although there is some ‘retro wave’ going on since the unmentionable event of CNY 2019, and shut ins are getting retro. Although for me, it’s very interesting exploring this parallel and yet foreign experience of a retro past I never knew existed. Although I guess thanks to US Gold, many in the UK were well aware of American software from the likes of EA/Activision et al.

I forget where I heard the term “Métal Hurlant” although it does seem appropriate having a younger machine scream the programs of tape drive past to it’s earphone jack. But it’s most likely the French magazine, and my imagination of something cross between Jarre/Ulrich.

9 thoughts on “Sinclair Spectrum+ Tape emulation: Métal Hurlant

  1. I owned a Spectrum back in the day and had some terrible issues getting tapes to load with my first tape deck. Replacing it with another unit seemed to work fine in the majority of cases, but even then there was one particular game which wouldn’t load at all, no matter what volume or tone settings I used. I had to make a tape-to-tape copy, which worked fine.

    • I have only tried to digitise one game so far and the wav doesn’t load under emulation or in iron.. I suspect it’s the mono stereo thing again. They do seem somewhat picky about stuff, although this tape deck I have is 2/2 of tapes loading. I’ll have to try more to find out.

  2. I spent as little time as possible loading tapes into my Commodore 64 before getting a 1541 disk drive. Then the drive broke, and I was too broke to fix it. I’d become addicted to MicroProse’s Silent Service submarine simulator. Of course it wasn’t available on cassette anymore in the U.S., but I found a British dealer who was willing to ship overseas. Even with the shipment time, I still had a few months of loading that game from tape before I could get the disk drive fixed or replaced. I was fortunate that I hadn’t gotten rid of my Commodore Datasette, much easier to load from than a standard cassette player.

    • My dad was a massive fan of that game. He couldn’t type or work out the controls so instead I had to “drive” and he would bark out commands.

      Games would last for hours only ending in running out of torpedos and shells, and the occasional defeat. Every time I play I’m destroyed so quickly.

      It’s a shame that I never recorded them, I’m sure it’s have been interesting to someone

  3. In the 1980s, I very quickly added an Interface 1 and a Microdrive to my Spectrum+, mostly getting rid of the slow casssette interface and its annoyingly sensitive volume adjustment. Loading a program in only one or two attempts was clearly progress. The autorun function (just hitting R and Enter after reset to load a program named “run” from the first Microdrive) was really cool, and so I had a menu on most tape cartridges.

    Recently, I found the vDrive ZX (https://vdrivezx.com/vdrivezx/) that can replace the inner workings of a microdrive with a SD Card interface and emulate up to eight microdrives. I don’t have any experience with it, since I no longer own a Spectrum.

    • I’ve been looking too, and it seems the vDrive still needs the “Interface 1” which of course adds the drive interface, along with a RS232 port, and a ZX network port, much like the QL network port.

      It seems only Sinclair could botch a medium so badly that interchange of data between the ZX and the QL never would work. In this day and age it seems the DivIDE/DivMMC are the only way to go, but at £99 or so, it seems like a really poor choice when compared to the sizif 512 which is about £110, and includes the ability to run all the system types, goes into turbo mode, and has a real z80/YM chip… I’ll probably end up going sizif.

  4. Hello!
    Very unrelated to the Spectrum, but I have an idea for a “virtually fun” activity you can do for free:

    Emulating Xerox D-Machines and a real XNS network!

    Resources you’ll be needing:
    https://github.com/livingcomputermuseum/Darkstar (if you want to run a Xerox Star, the emulator in releases isn’t the most recent one with support for Dodo XNS emulation so you’ll probably need to recompile from Git, I made it work with VS 2022, WiX Toolkit, .NET Targeting Pack 4.5 (not sure upgrading works) and the required libraries on NuGet)
    https://github.com/devhawala/dwarf (if you want to run a Xerox 6085 and/or Xerox GlobalView for Windows)
    https://github.com/devhawala/dodo (if you want to run Xerox Network Services (network printing, mail, filing and departmental management in 1981!))
    https://bitsavers.org/bits/Xerox (all kinds of Xerox software, 8010 folder is a Xerox Star, 6085 is a Xerox Daybreak, XSoft is for GVWIN)
    https://bitsavers.org/pdf/xerox (tons of Xerox documentation)

    Make sure to read the documentation included in Darkstar, Dodo and Dwarf’s GitHub READMEs. If you want some detailed discussions, check out the Issues tab for these emulators. Good luck!

      • Well, not much of it was done by me at all, all these repositories I listed above are other developers, lol!

        But I perhaps am the person who experimented with these emulation & vintage Xerox technologies the most… At least, nowadays.

        If you need any assistance while trying to run it, though, let me know!

Leave a Reply to neozeed Cancel reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.