Sam Coupé MIDI and Serial Networking

Tonight I’m mostly using @shieladixon’s wonderful MIDI interface for RC2014 to take a closer look at how serial Networking is implemented on the SAM Coupé. (TL;DR it’s MIDI).

SAM Coupé with MIDI cables connected

SAM uses DIN-7 connectors but the sockets are compatible with DIN-5 (MIDI).

RC2014 with MIDI cables connected with a laptop showing a serial terminal window

The RC2014 MIDI Interface Z80 Framework gives straightforward access to the raw bytes. I’ve noticed that my USB-MIDI adapter (also pictured but not in use here) automatically translates the bytes into “standard” two- or three-byte MIDI messages (usually by injecting extra control bytes in an attempt to try to make musical sense out of non-musical data).

Screen Shot of serial terminal showing raw data bytes

The data structure is similar to how ZX Spectrum BASIC programs are stored. Header bytes give file type and file name etc, the BASIC keywords are tokenised and variable names and values are tacked on at the end.

Screen Shot: hex view of a saved BASIC progam

This week I’ve been getting to grips with SAM’s VMPR (Video Memory Page Register) and using it for double-buffering the screen. Into that framework I dropped the sprite drawing routines I used on Spectrum, and graphics I made a while ago for a web-based game. #GameDev #SAMCoupé

Those low-colour pixel-art PNGs converted quite nicely to SAM’s 16-colour 4bpp screen mode. I haven’t got round to making a unified/optimised palette yet (the squirrel character isn’t supposed to be blue!)

photograph of a television displaying the same screen as the other attached screenshotSAM Coupé screenshot. town scene with blue squirrel character. the area behind the character is mirrored in a small square top left to help with debugging

I truly love paper magazines but is using OCR for code listings…cheating? (Asking for a friend). #z80

screenshot of a computer display showing an in-progress scan on the left, and a partial view of a code editor on the right with coloured syntax highlighting. the code is Z80 assembly language.

Now playing: SAM Coupé Shanghai by Fuxoft/Franxoft for Pete Prodge’s Covertape wars (YS vs SU - Dec 1992)

The colourful tiles are easier to read than the typically monochrome tiles in Spectrum mahjong games, but overall it’s not as featureful. A nice straightforward solitaire game though.

SAM Coupe and cassette player with tape. tv in the background displays the title screen of Shanghaiscreen shot reads: SHANGHAI ©️ FRANXOFT 90YOUR SINCLAIR magazine cover. December 1992. features illustration of Dizzy who is an anthropomorphic egg wearing boxing gloves and a fancy hat. the headline reads: "DIZZY SEES THE LIGHT"

…and in with the…Old! I replaced the 1984 Z80 with one produced in 2018 but it caused some weird screen corruption. I swapped it for another from 1984 (produced the same week!) and it works perfectly. Meanwhile the 2018 Z80 is perfectly happy in my Harlequin; CMOS/NMOS issue??

ZX Spectrum circuit board with a very shiny heat-sink and a Z80A CPU with the date code of 8425same as the other image but two more Z80 chips are in shot. the second chip also has date code 8425 and the third reads (partly obscured) 1839

Out with the old! My desoldering gun is still not Quite Right so this was mostly done the old fashioned way: a manual pump, braided solder wick some flux and lots of patience. (If the chip is know to be totally gubbed it’s easier to just snip the legs but I wanted to save it).

ZX Spectrum motherboard with the Z80 CPU removedunderside of the Spectrum board showing the empty through-holes where the Z80 used to be

Well it looks like we have a busted M1 signal. It’s not used internally so the Spectrum itself will function without it, but it’s needed for peripherals like the Interface 1 and modern devices like the DivMMC.

ZX Spectrum motherboard. The Z80 processor is being examined with a logic probe, but the probe is showing no activity.

This evening I’ve been fixing a ZX Spectrum+ for a friend. Two bad RAM ICs and a 3rd (previously repaired way back) had gone a bit crusty. Wrong polarity power was maybe used, but the DC circuit measures okay. Needs a new membrane but I’ve given the keys a bath in the meantime.

a ZX Spectrum motherboard with two microchips removedcloseup of a microchip showing discolouration to the legsscreenshot of Jumping Jack loading on an old television loose, wet ZX Spectrum+ plastic keys in a kitchen sieve suspended over a plastic bowl

I ordered some circuit boards from PCBWay using MerlinKV’s PlusD Clone design (CC BY NC SA). Now I’ll need to find all the parts (and work out how to blow a GAL).

slim cardboard postage box with PCBWay brandingseveral band new unpopulated circuit boards

“Oh”, they said, “so that’s what you wanted a serial protocol mouse for!”

#SAMCoupé #Lemmings

a home-made bootleg copy of Lemmings on a blue 3.5 inch disk on top of a SAM Coupé computer

MGT SamBus repair

Update! Thanks to Colin from Quazar for clearing up my disinformation and abject nonsense.

I removed the old crusty battery and replaced it with an equivalent.

I also removed the corroded power socket. Apparently it was never, from a strictly electrical point of view, “entirely safe”, and so the official power supply never materialised. The 3.5mm audio jack would toggle between internal and external power when the jack was inserted or removed. Safe enough so long as all the power is off!

A wire link in place of the socket ensures the power supplied by SAM can still propagate to the connected devices on the four expansion ports.

A good scrub to get rid of the grime and battery juice, and it’s all working properly again.

What about those flat-head screws though, eh? Those MGT boys sure were goofballs! The cases were sent to customers separately after the bare boards were issued. So the original owner (or someone else) may have used any old screws.

Phew! Sorry for all the mistakes!

green circuit board with a new 3.6v NiMH battery and a wire link where a socket used to be.a SAM Coupé computer with SamBus attached at the rear, and a Trinity interface plugged into the top of the SamBusthe underside of SamBus showing flat-head screws and black rubber feet

Yum! This is the special sugar-frosted MGT SamBus. (a.k.a. The SAM Card Cage). It adds extra expansion ports, a real time clock, and special secret coating that will keep you full until lunchtime. #SAMCoupé

printer circuit board with euroconnectors and various components, most notably a leaking battery and corroded 3.5mm jack socketMGT SamBus on a wooden desk not connected to anything. an mostly flat oblong off-white computer accessory with three expansion ports on top and a connector on front

Good news, everyone. It’s mousin’ time!

retail packaging for a Trust "Ami" serial computer mouse still in its original cellophane seala black Labrador dog sniffs the box with suspicion

Oh no! I’ve been working on a fun little ZX Spectrum project using Microdrives and serial networking. That’s the end for this cartridge though. 😬

Come out to the coast… we’ll get together, have a few laughs.

boxes of Christmas decorations. a still from the movie Die Hard can be seen in one of the boxes

I was playing the SAM version of Prince of Persia for about 20 minutes before realising I was actually playing the demo! After looping around the same 6 screens a dozen times I managed to glitch through a gate and it turned into Frogger (well sort of)

https://youtu.be/Ee_oX5J6_80

Low voltage 🔋🧲

disassembled electric motor
disassembled electric motor
motor end cap and brushes
motor end cap and brushes

High voltage ⚠️

Cisco power supply refitted with a ZX Spectrum DIN-style power leadtesting the power connector using shrink tubing to temporarily isolate each pinthe Cisco PSU with both types of leadthe insides of the Spectrum +2A power supply

I noticed my SAM was prone to tape-loading errors, and particularly when the cable gets jostled. Well that was because the socket was cracked, so I replaced it with one harvested from a broken cassette recorder.

The user manual is a bit vague about this, but SAM actually uses a stereo socket although only the ring (normally the right channel in stereo audio) is used for both input and output. The tip is not connected to anything. The idea is you would leave the SAM end alone and only swap the cable between the cassette recorder’s MIC or EAR socket depending on whether you were SAVEing or LOADing.

The replacement socket is an old-school mono design but it makes a rock solid connection so loading is now much more reliable.

Most SAM software is on disk of course, but quite a few demos were put out on Spectrum magazine cover tapes (and originally the machine came with a demo tape from MGT). I don’t have any official SAM tapes, but it works well with the TZXDuino digital tape player that I use for Spectrum software. I do have a few of those magazine cover tapes though and they also load really reliably now.

And, of course, SAM can emulate a 48K Spectrum so it’s possible to load those via tape (or TZX file) as well.

SAM Coupé computercracked stereo audio socket removed from SAMexposed circuit board of a cassette recorder with the EAR socket removedanother view of the mono sockets showing the simple lever design that connects with the audio jack

I’d been hesitant to take a soldering iron to my SAM Coupé, despite its display output suffering badly from reflection (i.e. ghosting) artefacts. But the recommended fix (by Quazar, see SAM Revival #1) is so simple I couldn’t put it off any longer! A huge improvement. 🧑‍🔧👻

close up detail of SAM Coupé computer mainboardtelevision screen showing clear and sharp dark text on a light background

“Cobbled together” from some “spare¹ parts”—here’s my new ZX Spectrum +3 with a custom² Perspex™ sandwich³ style case, and external(ised) keyboard and floppy⁴ drive. 😁

  1. eBay boneyard
  2. “designed” and hand-drilled by me
  3. static electricity death trap
  4. Gotek floppy emulator

ZX Spectrum in a sandwich style clear case with open sidesZX Spectrum set up with screen and keyboardclose up of ZX Spectrum showing attached Gotek

It’s not Retr0brite, it’s SAMbathing.

SAM Coupé computer on a garden table in bright direct sunshine

Meanwhile, in the laboratory: floppy head alignment issues, some Olympic-level desoldering, a disk controller transplant, and a hasty Shugart-to-Citizen bodge-it, but eventually… Pang! ✌️🎈

💾 #SAMCoupé

disassembled computer components on a soldering matSAM Coupé computer with distended floppy disk driveCitizen ultra-slim floppy disk drivescreenshot of Pang level complete message

📚 Computer Projects for Railway Modellers by Roger Amos and Martin Cock, with program listings for Sinclair ZX Spectrum and BBC Microcomputer (Model B)!

Paperback book. Cover illustration shows a model railway close up, with a BBC Micro superimposed

Beta BASIC 4.0 (128K only)

spectrumcomputing.co.uk/entry/795…

#zxspectrum

ZX Spectrum with PlusDLite floppy disk interface and several 3.5" diskettesBlack 3.5" floppy disk labelled Beta Basic 4.0 by Beta Soft