ZX Spectrum Next

Backed this in Sep 2020. After 3.5 years of of antici…




… pation, I finally have my SpecNext release 2!

I don’t have it set up in its final location in the living room yet, so it’s replaced my side terminal on my desk. Ideally I’d like to have a classic computer hutch desk, medium LCD instead of CRT, and a slightly janky ’80s-style plush office chair to recreate the 1984 experience.

The box has a universal power brick with 4 national connectors that lock in, very nice. It doesn’t have an HDMI cable, and I had some shenanigans with a bad cable in the wrong storage, but finally found a good one.

Played some baSnake and tried the demos, then down to some BASIC, starting with 10 Print Had to find the charset in the manual, and I always forget ZX BASIC doesn’t really need args or parens.

10 PRINT CHR$ (134+INT(RND+0.5)*3);
20 GO TO 10

Playing more stuff from the browser, IT RUNS Z5 FILES NATIVELY!!! Just shove your Infocoms etc. in there and hit Enter. I got a new standard text adventure player!

The keyboard’s fine for me, but some people will immediately hook up a PS2 keyboard. The key travel’s short but very crisp. The layout’s mostly OK, nice big spacebar, but it really should’ve moved the ;",. keys over to the right, so you have something besides ENTER under your pinky on home keys. I’m perpetually typing off by one column because of this.

In BASIC, there’s no shortcut commands like ? or P. for PRINT, which means I’m very very tired of typing PRINT … PRINT … PRINT. But at least it’s not like the classic ZX81 keyboard, with keywords on every key. My left pinky is getting a bit worn out from symbol-B for *, symbol-L for =, etc.

Videogame controls are weird:

  • Consoles: normal Joystick/D-Pad/Analog sticks, ^ O X [] buttons.
  • Most 8-bit computers: normal Arrows or HJKL, sometimes IJKL
  • All recent computers: normal WASD
  • Spectrum: unusable QA or 2W up/down, OP or 90 left/right, M to fire. Needless to say, I did NOT beat NextIPEDE with this control scheme.

So I got a knockoff Genesis (“MegaDrive” to some) controller, which has worked perfectly. See Joystick FAQ

Looking into NextBASIC, the manual is fantastic. 318 pages, spacey cover art, super technical. Hundreds of pages on graphics, sound, using the ZXOS. There’s a section on IN/OUT ports, registers, a hardware diagram if you want to replace the RasPi module or something. I still need to read more Z80 ASM from another book, but everything short of that is in here.

I’ve got the real-time clock and wifi working (note: only AP names without spaces!), but haven’t figured out how to uplaod/download from it yet. Uh, that’s important. I can pop the SD card and get files when I back up, but I’d like to use the wifi.

I have from a couple years ago, quite a bit of a text dungeon game developed on emulator, but I’ll rewrite some of the code now with new features (optional LET command! Better loops, locals, and “static”/private vars!), and the graphics now to use tiles at least, or first-person if I’m feeling ambitious.

Haven’t even looked at the CP/M core, which I think will be very exciting, having a good CP/M machine in the modern age. I see Gary Kildall on Computer Chronicles every so often and I miss what could’ve been.

I’m calling it now: Best computer of 2024 is a 28MHz Z80 with 2MiB RAM.

ZX SpecNext Emulation

Half a year late, due to pandemic, “brexit”, China, and redesign perfectionism (which I appreciate, but it’s delaying), delayed from summer ’20 into sometime next spring(?), I’m still eager to get my ZX SpecNext. So in the meantime I do emulation.

I’d played a fair bit with a ZX Spectrum emulator, but SpecNext emulation was harder. After a lot of frustration with “CSpect”, which is just a pile of C# crash logs, I tried “ZEsarUX” (hereafter “Zesarux”) and with a bit of fiddling, it Just Works at emulating SpecNext.

  • Download from github.com/chernandezba/zesarux, install, run. It’s unsigned, so macOS security theatre: right-click, Open (do not trash!), cancel, right-click, Open, Trust.
  • Zesarux FAQ
  • F5 for emulator menu
  • Settings, ZX Vision, disable First aid help (bullshit dialogs on every interaction! You can see most of it with F1 or just waiting 10s on a menu option)
  • Settings, General, disable Window Footer (ugly & useless)
  • Back up to Storage, MMC, select tbblue.mmc, enable MMC Emulation, Paging.
  • Back up to Machine, VTrucco/FB Labs, ZX Spectrum Next, TBBlue.
  • Autoconfigure? Yes. Where? Download. I picked 512M, and tbblue-512M.mmc. Configure? Yes. I picked 60hz, x2 scaling; YMMV.
  • Just wait a few seconds, and TBBlue should transition to “Welcome to NextZXOS” (seen above)
  • Now you’re at the standard Speccy menu, right-arrow will increase speed to 28MHz, down a couple to NextBASIC
  • Type in a test program, like 10 print"Hello, Mark!" (have to type ^P for “, ^1 for !, it’s a Speccy keyboard, but not the one-key ZX80 keyboard), run
  • save"hello.bas" (again ^P someday that’ll be wired into my fingers) and cat to make sure it’s there.

Sh-1 brings up the Speccy menu.

You’ll need to memorize the keyboard layout in F5, Help, or make a little reference card like I did (for another emulator, on Zesarux Esc is Break, the far right-side keys don’t do anything).

The MMC file (which is a disk image that holds your files) and .zesarux config are in home dir, which I dislike but I’m not arguing with it at this point. If I mount a FAT SD card, it should read/write that and it’d be easier to move files on and off, but I don’t have one I can spare at the moment. Waiting for mail-order or shopping.