Spectranet in a web browser

Thanks to amazing work by SpeccyTools, you can now use an emulated ZX Spectrum, complete with Spectranet extensions, booting straight into my TNFS site.

The Spectrum 48k keyboard had a rather... unique layout. This means that some symbols can only be used with odd key-press combos. To emulate SYMBOL SHIFT, use the Ctrl key. For example, to get a " character, use Ctrl-P. To get $, you'd use Ctrl-4 and so on.

What is this ?
It's an emulated ZX Spectrum running in a web browser. The "Speccy" was an 8-bit computer from the 80s that started my obsession with computers when I was a child. The Speccy scene continues to thrive and (as with most retro systems) someone has managed to get them connected to the internet.


I discovered this scene as I re-introduced myself to my childhood computer and wrote about in my DevOps for the Sinclair Spectrum series of articles (I'm the weirdo who mashed up Kubernetes and Sinclair BASIC). I built a sort of old-school BBS system you can browse either on the original computer from the 80s, or through an emulator.


Thanks to a recent set of patches to JSSpeccy (a WASM-based Spectrum emulator), it's now possible to emulate a Spectranet card, and browse the world of TNFS sites from a browser! This is my instance of JSSpeccy and backend components configured to boot straight into my TNFS site. All of which means you can now check out my project without having to configure an emulator or get hold of the real hardware.


Can I access other TNFS sites through this ?
Not at the moment. If you'd like to try others you can browse the listing run by Speccytools.org (the creators of this amazing fork of JSSpeccy).


I get socket error messages
Unfortunately, the TNFS extensions in Sinclair BASIC don't seem to cope well with a large amount of packet loss or otherwise "crappy" connections. I've only seen this manifest itself when tethering to a poor 4G connection my laptop, but if you experience this on a perfectly normal network, please do let me know and I'll investigate further.