Extracting warc files

well since the catastrauphic outage, I’ve been looking through my backups trying to see how much of my ‘vpsland’ archive I have. And it’s not so hot. The good news is the physical machine that has the last known good copy is fine. It’s just in a place I can’t get to on the other side of the world. And I’m still in exile so shipping it really isn’t an option at the moment.

On the plus side I found a warc archive, some 22GB of the 400GB worth of files. So its a start.

So what are WARC files? why do people gzip them to get maybe 1% compression? How do magnets work anyways?

web archives are single snapshots in time of a site. Sounds like a MHT but something more ‘portable’ and open standard-ish. Which means there is a million tools, none of which seem to do exactly what you want.

All I want to do is extract all my files from the WARC, but that seems to not be what most things are geared to, mostly displaying the WARC like a web page, which means clicking hundreds of thousands of files. –yikes

Thankfully warcat seems to be able to fit the bill

python3 -m warcat extract ../[email protected]015-10-04-fc233ad0-00000.warc.gz

I didn’t see any package on Ubuntu so did the pip install:

pip3 install warcat

And that seems to have done the trick.

Now to figure out how to setup some cheap storage on azure and copy this stuff up or extract over there.

spot pricing

I’m using the new ‘spot‘ pricing model, to try to keep costs down. Obviously it’s not as good as dedicated slices, but it’ll not make me broke either. And I have a lot more messing around with containers to do, trying to string together nonsense.

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.


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!


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:

# 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

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.

Ruffle the Flash feathers!

The End of the World!

So it’s the END OF THE WORLD, and sadly that means that all the old media of the 1st gen ‘rich’ web experence is all gone with the long end of Adobe flash. At one point Flash was not only ubiquitious but all sponsored a C/C++ compiler but that stuff sadly won’t work.

So yeah, sad. However, check out ruffle! Naturally it’s a chromium extension, but everything is chrome now so it’ll work fine. It plays many of the early flash type stuff with little to no issues!

Currently Ruffle only supports games written in ActionScript 1 and 2. This includes all games before 2006 and only some games released later.

Currently Ruffle only supports games written in ActionScript 1 and 2. This includes all games before 2006 and only some games released later.

Unfortunately, your content was using Actionscript 3, which Ruffle does not yet support.

From the FAQ

It’s hard to think it’s been over 20 years since the whole ‘eStudio‘ thing, but it’s cute to keep it going. Although we are at the point where you can run Windows 2000 in javascript so there is that brute force path…

So sure it’s not perfect but what is? Kitty Cat Dance, Dancing Colin, Maiyahi, it’s a MAD WORLD!!

Flash on!

VIDEO Capture USB 2.0 Video Adapter with Audio

Capture and deit High – quality Video and audio!

So I wanted to capture some composite PAL signals, and well yeah I have a fancy capture card but it’s only HDMI of all things. NO VGA, EGA/CGA and sure no composite. So I headed down to Sun CHeong Computer Co. Ltd. 246 Apliu Street Shum Shai Po, and picked up one of these.

The bundled software, honestech VHS to DVD 3.0, is pure garbage. Basically it always sets for NTSC and never works. The program to change the input style does nothing either. terrible. But the honestech TVR 2.5 (37MB download!) however does work.

As a plus it lets you set PAL or NTSC

Although it’s not all that great, I have a webcam, and toggling between the display inputs can trigger a bluescreen.

So yeah it’s not so great.

I can’t really comment on the quality of the capture as it turns out I don’t have any RCA cables, so this is me running a jumper wire to the device directly. This is FAR from ideal but here we go:

So yeah…. It’s probably me, but there you go. at $99 HKD ($13 USD?) it’s not great. Actually its damned near temperamental. But its better than nothing.

Otherwise, MEH.

Ultra rare IBM OS/2 ad featuring OS/2!

I honestly didn’t think anything like this existed

Stay 2'ned. Can't help but think of 2ine.

Infocom: The Documentary

Infocom (1979-1989) is recognized as the all-time leader in Interactive Fiction, releasing top-selling games and products that dominated the sales charts and still extend considerable influence and memory on the gaming industry. At times they were half of the top ten games being sold and were considered a flagship of the game industry. And then they were gone.

As part of the 2010 documentary GET LAMP, director Jason Scott talked to creators, management, fans and academics about the Infocom story, and produced this 45 minute overview of this unique and wonderful company.

Jason Scott on Twitter; http://twitter.com/textfiles

Patreon for Jason Scott's podcast: http://patreon.com/textfiles

To purchase the DVD of this and the other GET LAMP features, visit http://WWW.GETLAMP.COM​.

Presenting MacFlim

This is beyond super cool! Video has always been something of the realm of ‘high end’ machines, back when QuickTime became a thing it was lauded at running in a postage stamp sized window with absolutely incredible artifacting. And that was running with a Quadra (68040) back in the day, the transition from 68000 to PowerPC really helped with video on the desktop with much faster clocks and better caching.

The idea of video on any of the compact black & white Macs, even the ultra high end SE/30 68030 based Mac seemed something out of fantasy. But thanks to modern processors, massive storage and the ability to front process the video, it is now possible to do playback on a B&W mac!

Enter MacFilm 1.0 by Fred!

This is some super cool ‘impossible’ tech for the low end macs!

This is nothing short of incredible!

Of course the ‘downside’ is there is no audio.. And it’s directly blitting to the 512×342 B&W display so if you are not running on a 1 bit original display it’s not going to work or just blast seemingly junk to the screen.

Maybe if big 80’s media wasn’t so slow, or massive SCSI disks didn’t cost as much as a car we could have been enjoying an almost Brazilian future of black and white movies on tiny CRT’s.

Adding a Radeon RX 570

I saw this card while I was out, and I’ve seen mention of some Radeon’s working on the Lemote A1901 board, although it didn’t like my Asus Radeon R9 380 Strix, I’m guessing it’s too old? I can’t find it now, but there was some mention somewhere of someone using a 500 series card (I don’t understand the AMD number schema), so I figured I’d get the 570 as it was just over $100 USD, and it has 8GB of VRAM, so it ought to be somewhat usable if I guessed wrong on the compatibility.

But I did get lucky! The card not only was able to initialize, but UOS came up to the desktop!

glxinfo -B gave the following output:

name of display: :0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: X.Org (0x1002)
Device: Radeon RX 570 Series (POLARIS10, DRM 3.27.0, 4.19.0-loongson-3-desktop, LLVM 7.0.1) (0x67df)
Version: 18.3.6
Accelerated: yes
Video memory: 8192MB
Unified memory: no
Preferred profile: core (0x1)
Max core profile version: 4.5
Max compat profile version: 4.5
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2

So there we go, 8GB of memory, and ‘Accelerated: yes’. It’s also FPS locked to the screen refresh so it’s running a steady 60fps for the display I’m using. I need to build some later games that use GL to really push the machine.

The one big ‘negative’ is that the video card sits over the SATA ports, so I need to get an L connector SATA cable, as now I can’t use my 2TB spinning rust disk with the fancy GPU in place. And it makes my 800 watt PSU all the more justified.

I’m just glad that the portable drivers, well are portable!

Playing Blu-Ray discs with VLC

So while I was out yesterday, I came across some outdoor fire sale on Blu-Ray discs. Normally they are expensive, at an outstanding ¥2,381 which is just crazy. But for some reason they were only ¥1,000 each. Since I have no entertainment out in Japan, I fell into the nostalgia trap, and picked up a bunch of old favorites.

All I needed was a Blu-Ray drive, which I picked up for ¥2,700 and finally needed some software to play it. While VLC does a great job with DVD’s that doesn’t mean anything, does it?

Well starting with version 3, the framework for Blu-Ray playback is in place! But you’ll need some additional files in place, which after a lot of hunting I found on vlc-bluray.whoknowsmy.name. There you can find both the keys database and AACS dynamic library.

The keys database is copied to the C:\ProgramData\aacs\ directory, and the DLL just is placed into the program directory.

And surprisingly it works well! Granted I’m using an i7-4790k, which I picked up as junk for around ¥20,000. Although I was initially excited as it had 16GB of RAM, a m.2 slot (I got a 512GB new drive for ¥5,900), it’s a nice box compared to the old i5 thing. And rocking a GTX 970, it was nearly top of the line for 7 years ago, but we pretty much hit peak computing, so this thing is fine. I thought it was a bargain as it also includes a liquid cooler, but it appears the main circulator is seizing or something as it is kind of noisy.

What was kind of interesting was that there was so many Blade Runner Blu-Ray discs to be had. I picked up a few, and one I’d never seen before the Archival version. Although maybe it’s a Japanese only release? I’m not sure, but to be honest I never really look at physical releases as it’s yet another thing to eventually lose. Despite having lost everything, I still have my iTunes library.