#zx81 — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #zx81, aggregated by home.social.
-
Work has begun on FREEZE-ZX issue 04.
We are going right back to the very early years of the #ZXSpectrum and chatting with someone who produced #ZX81 games before moving on to the #Speccy.
It’s going to be another corker of an issue!
More details soon.
https://freeze64.com/freeze-zx/ -
I have "ported" the SDL-based ZX81 emulator sz81 to macOS https://git.sr.ht/~drj/sz81
This is a fork of the Sourceforge version; downloads from which give every impression of being a wretched hive of scum and villainy.
In what i suspect has been an increasing trend over the last 40 years, the ancient code did something, a strcpy onto itself, which was Undefined Behaviour in 1990, actually harmless for most of the time it has been compiled; then, when the boffins at Apple decide to detect and trap the instances of UB that they can in the C runtime, it actually crashes on modern C stacks.
-
-
Tested various micros running this FLOATING POINT program. It derives Pi to 20 decimal places. Interesting stats.
1 N=20: L=INT(10*N/3): DIM A(255): Z$="000000":T$="999999"
2 FOR I=1 TO L: A(I)=2: NEXT I: M=0: P=0: FOR J=1 TO N: Q=0: K=2*L+1
3 FOR I=L TO 1 STEP -1: K=K-2: X=10*A(I)+Q*I: Q=INT(X/K): A(I)=X-Q*K: NEXT I
4 Y =INT(Q/10): A(1)=Q-10*Y: Q=Y: IF Q=9 THEN LET M=M+1: GOTO 7
5 IF Q=10 THEN PRINT STR$(P+1);LEFT$(Z$,M);: P=0: M=0: GOTO 7
6 PRINT STR$(P);LEFT$(T$,M);: P=Q: M=0
7 NEXT J:PRINT STR$(P)#RC2014 : 14 (thank you JonV)
#BBCMicro : 19
#AmstradCPC : 22 (thank you Devlin)
#AmstradPCW : 23 (thank you Pete)
#AcornElectron : 25
#C128 : 27 (fast mode - thank you Jonas H)
#LuxorABC80 : 29 (thank you Erik)
#SharpMZ700 : 32 (thank you Tim Holyoake)
#VIC20 : 36
#AcornAtom : 37
#AppleII : 38 (thank you Jeroen)
#TRS80CoCo : 42 (thank you Chip)
#Atari800 : 42 (thank you Mark Elliott)
#CBMPET : 43
#C64 : 43
#Dragon32 : 44
#SharpMZ80K : 45 (thank you Tim Holyoake)
#C16 : 46
#Altair8800 : 52
#MSX : 53 (thank you Pixel Purrito)
#C128 : 56 (default "mode")
#ZX80 : 57
#ZXSpectrum : 68 (thank you Adam)
#SharpPC1500A : 167 (thank you Karttu)
#ZX81 : 213 (native slow mode)
#SharpPC1245 : 405 (thank you Karttu)Edit: now ordered (seconds)
-
Tested various micros running this FLOATING POINT program. It derives Pi to 20 decimal places. Interesting stats.
1 N=20: L=INT(10*N/3): DIM A(255): Z$="000000":T$="999999"
2 FOR I=1 TO L: A(I)=2: NEXT I: M=0: P=0: FOR J=1 TO N: Q=0: K=2*L+1
3 FOR I=L TO 1 STEP -1: K=K-2: X=10*A(I)+Q*I: Q=INT(X/K): A(I)=X-Q*K: NEXT I
4 Y =INT(Q/10): A(1)=Q-10*Y: Q=Y: IF Q=9 THEN LET M=M+1: GOTO 7
5 IF Q=10 THEN PRINT STR$(P+1);LEFT$(Z$,M);: P=0: M=0: GOTO 7
6 PRINT STR$(P);LEFT$(T$,M);: P=Q: M=0
7 NEXT J:PRINT STR$(P)#RC2014 : 14 (thank you JonV)
#BBCMicro : 19
#AmstradCPC : 22 (thank you Devlin)
#AmstradPCW : 23 (thank you Pete)
#AcornElectron : 25
#C128 : 27 (fast mode - thank you Jonas H)
#LuxorABC80 : 29 (thank you Erik)
#SharpMZ700 : 32 (thank you Tim Holyoake)
#VIC20 : 36
#AcornAtom : 37
#AppleII : 38 (thank you Jeroen)
#TRS80CoCo : 42 (thank you Chip)
#Atari800 : 42 (thank you Mark Elliott)
#CBMPET : 43
#C64 : 43
#Dragon32 : 44
#SharpMZ80K : 45 (thank you Tim Holyoake)
#C16 : 46
#Altair8800 : 52
#MSX : 53 (thank you Pixel Purrito)
#C128 : 56 (default "mode")
#ZX80 : 57
#ZXSpectrum : 68 (thank you Adam)
#SharpPC1500A : 167 (thank you Karttu)
#ZX81 : 213 (native slow mode)
#SharpPC1245 : 405 (thank you Karttu)Edit: now ordered (seconds)
-
Tested various micros running this FLOATING POINT program. It derives Pi to 20 decimal places. Interesting stats.
1 N=20: L=INT(10*N/3): DIM A(255): Z$="000000":T$="999999"
2 FOR I=1 TO L: A(I)=2: NEXT I: M=0: P=0: FOR J=1 TO N: Q=0: K=2*L+1
3 FOR I=L TO 1 STEP -1: K=K-2: X=10*A(I)+Q*I: Q=INT(X/K): A(I)=X-Q*K: NEXT I
4 Y =INT(Q/10): A(1)=Q-10*Y: Q=Y: IF Q=9 THEN LET M=M+1: GOTO 7
5 IF Q=10 THEN PRINT STR$(P+1);LEFT$(Z$,M);: P=0: M=0: GOTO 7
6 PRINT STR$(P);LEFT$(T$,M);: P=Q: M=0
7 NEXT J:PRINT STR$(P)#RC2014 : 14 (thank you JonV)
#BBCMicro : 19
#AmstradCPC : 22 (thank you Devlin)
#AmstradPCW : 23 (thank you Pete)
#AcornElectron : 25
#C128 : 27 (fast mode - thank you Jonas H)
#LuxorABC80 : 29 (thank you Erik)
#SharpMZ700 : 32 (thank you Tim Holyoake)
#VIC20 : 36
#AcornAtom : 37
#AppleII : 38 (thank you Jeroen)
#TRS80CoCo : 42 (thank you Chip)
#Atari800 : 42 (thank you Mark Elliott)
#CBMPET : 43
#C64 : 43
#Dragon32 : 44
#SharpMZ80K : 45 (thank you Tim Holyoake)
#C16 : 46
#Altair8800 : 52
#MSX : 53 (thank you Pixel Purrito)
#C128 : 56 (default "mode")
#ZX80 : 57
#ZXSpectrum : 68 (thank you Adam)
#SharpPC1500A : 167 (thank you Karttu)
#ZX81 : 213 (native slow mode)
#SharpPC1245 : 405 (thank you Karttu)Edit: now ordered (seconds)
-
Tested various micros running this FLOATING POINT program. It derives Pi to 20 decimal places. Interesting stats.
1 N=20: L=INT(10*N/3): DIM A(255): Z$="000000":T$="999999"
2 FOR I=1 TO L: A(I)=2: NEXT I: M=0: P=0: FOR J=1 TO N: Q=0: K=2*L+1
3 FOR I=L TO 1 STEP -1: K=K-2: X=10*A(I)+Q*I: Q=INT(X/K): A(I)=X-Q*K: NEXT I
4 Y =INT(Q/10): A(1)=Q-10*Y: Q=Y: IF Q=9 THEN LET M=M+1: GOTO 7
5 IF Q=10 THEN PRINT STR$(P+1);LEFT$(Z$,M);: P=0: M=0: GOTO 7
6 PRINT STR$(P);LEFT$(T$,M);: P=Q: M=0
7 NEXT J:PRINT STR$(P)#RC2014 : 14 (thank you JonV)
#BBCMicro : 19
#AmstradCPC : 22 (thank you Devlin)
#AmstradPCW : 23 (thank you Pete)
#AcornElectron : 25
#C128 : 27 (fast mode - thank you Jonas H)
#LuxorABC80 : 29 (thank you Erik)
#SharpMZ700 : 32 (thank you Tim Holyoake)
#VIC20 : 36
#AcornAtom : 37
#AppleII : 38 (thank you Jeroen)
#TRS80CoCo : 42 (thank you Chip)
#Atari800 : 42 (thank you Mark Elliott)
#CBMPET : 43
#C64 : 43
#Dragon32 : 44
#SharpMZ80K : 45 (thank you Tim Holyoake)
#C16 : 46
#Altair8800 : 52
#MSX : 53 (thank you Pixel Purrito)
#C128 : 56 (default "mode")
#ZX80 : 57
#ZXSpectrum : 68 (thank you Adam)
#SharpPC1500A : 167 (thank you Karttu)
#ZX81 : 213 (native slow mode)
#SharpPC1245 : 405 (thank you Karttu)Edit: now ordered (seconds)
-
Tested various micros running this FLOATING POINT program. It derives Pi to 20 decimal places. Interesting stats.
1 N=20: L=INT(10*N/3): DIM A(255): Z$="000000":T$="999999"
2 FOR I=1 TO L: A(I)=2: NEXT I: M=0: P=0: FOR J=1 TO N: Q=0: K=2*L+1
3 FOR I=L TO 1 STEP -1: K=K-2: X=10*A(I)+Q*I: Q=INT(X/K): A(I)=X-Q*K: NEXT I
4 Y =INT(Q/10): A(1)=Q-10*Y: Q=Y: IF Q=9 THEN LET M=M+1: GOTO 7
5 IF Q=10 THEN PRINT STR$(P+1);LEFT$(Z$,M);: P=0: M=0: GOTO 7
6 PRINT STR$(P);LEFT$(T$,M);: P=Q: M=0
7 NEXT J:PRINT STR$(P)#RC2014 : 14 (thank you JonV)
#BBCMicro : 19
#AmstradCPC : 22 (thank you Devlin)
#AmstradPCW : 23 (thank you Pete)
#AcornElectron : 25
#C128 : 27 (fast mode - thank you Jonas H)
#LuxorABC80 : 29 (thank you Erik)
#SharpMZ700 : 32 (thank you Tim Holyoake)
#VIC20 : 36
#AcornAtom : 37
#AppleII : 38 (thank you Jeroen)
#TRS80CoCo : 42 (thank you Chip)
#Atari800 : 42 (thank you Mark Elliott)
#CBMPET : 43
#C64 : 43
#Dragon32 : 44
#SharpMZ80K : 45 (thank you Tim Holyoake)
#C16 : 46
#Altair8800 : 52
#MSX : 53 (thank you Pixel Purrito)
#C128 : 56 (default "mode")
#ZX80 : 57
#ZXSpectrum : 68 (thank you Adam)
#SharpPC1500A : 167 (thank you Karttu)
#ZX81 : 213 (native slow mode)
#SharpPC1245 : 405 (thank you Karttu)Edit: now ordered (seconds)
-
#ZX81 And now we can fly 🚀, and crash into stuff. All coming along nicely.
-
If you'd like to own a #zx81 inspired mechanical keyboard, maybe this kickstarter is for you:
-
Time to re-assemble!
-
Also on the ZX Chess front, I did a complete breakdown of the game by creating a Z80 disassembly, understanding it, commenting it, and then creating a rebuildable version. (I also found a way to save 3 bytes!)
I won't spoil all the tricks here, but imagine my smile when I realised why the look-up movement table for the king was being purposefully ordered so it could be re-used for the queen, rooks, bishops, and (er) black pawns!
-
Did you know that the first Dinamic game ever was coded on a 1K #zx81? It was GT Cars.
Video in the original X post:
https://x.com/i/status/2029608589292122118 -
I don't know why I felt it was important for me to implement RLE graphics decoding in BASIC on a ZX81 today, but here it is:
-
An interesting channel featuring #ZX81 #ZXSpectrum #retrodev content #retrocomputing #SpectrumNEXT
ZX Retro Gaming including 8 an... -
Given the ZX81 anniversary, I'll re-up my least popular blog post from last year, Sinclair 4K BASIC for the ZX80: https://troypress.com/sinclair-4k-basic-for-the-zx80/ #ZX81 #ZX80 #retrocomputing #BASIC
-
RE: https://famichiki.jp/@tsturm/116179336065808947
Mijn eerste. En niet lang daarna werd ik op de HCC usergroup bijna gecancelled omdat ik van 1K naar 16K had ge-upgrade. Een doorn in het oog van de puristen...
Zo'n leuke homecomputer, veel plezier mee gehad. Uiteindelijk aan een neefje gegeven omdat ik een Sharp MZ700 ging kopen.
-
Another late #Hackster round-up today, and I'm still waiting for two pieces to go live - but let's see what's already up for now.
First, it's a very special day today: the Sinclair #ZX81's 45th birthday. I've written a little potted history here, digging into the reference books in the office library - and decorated with pics of my very own ZX81, which I hand-soldered from the cheapskate kit edition.
#Technology #News #VintageComputing #RetroComputing #ComputerHistory
-
-
Forty-five years ago today, Clive Sinclair introduced the ZX81. It wasn’t the first computer that I’d used, but it was the first that I could call my own.
I had neither the skill nor the coordination to build the kit, but thankfully my dad had plenty of both. He even modified the RF modulator so that I could use a black-and-white monitor that I’d bought at a swap meet.
Thanks for this computer, Sir Clive. And for the everything else, Dad.
-
#OnThisDay Samuel Colt patented the first production-model revolver, the .34-caliber (1836).
George Westinghouse patented the air #Brake (1868).
The #ZX81, a pioneering British home #Computer, was launched by Sinclair Research (1981).
Birth Anniversary of Gerardus Mercator (1512) - most renowned for creating the 1569 world map based on a new projection.
-
New "glitch" mode on my game-in-progress. It's a ZX81, so it's not really possible to flashing rainbow spam of CGA mode: https://merveilles.town/@voxel/115988543301339277
-
The ZX81 character set is objectively the best because A to Z immediately follow on from 0 to 9. 0 has code 28; A has code 38 (unlike ASCII where there is a gap of 7 codes: 0 has code 0x30, A has code 0x41). This means that to convert from 0 to 15 to a single hex digit, we can do CHR$(28+H), where H is the digit we are converting. If we need the most significant digit of a two-digit hexadecimal number we can do CHR$(28+INT(H/16)). But. Because CHR$ rounds its input, we can remove the INT: CHR$(28+H/16). But. Mysteriously INT is mathematical floor, whereas CHR$ rounds to nearest (and 0.5 goes up). So CHR$(28+H/16) is wrong when the least sig digit is 8 to F. But can be corrected with: CHR$(27.5+H/16). Haha.
(which is the code i used).
#ZX81 #Hexadecimal -
-
An AI did not write this 1,000 word commentary on the ZX81 keyboard scanning routine. I did: https://drj11.github.io/2026-02-10/zx81-keyboard.html
It includes what is now one of my favourite assembler instructions: `SBC A`
-
Quite pleased with how nippy the map scrolling is in my ZX81 game-in-progress. It is the first working and largely non-optimized version. It's good that it's quick and can be made quicker, because i think it will mostly determine how responsive the game feels. By comparison the other routines (that i wrote earlier) to draw the frame and the info display are shamefully slow (and mildly quadratic, haha).
#ZX81 #RetroComputing -
Ha! My ZX81 game-in-progress has a map! I drew it on paper and typed all the tiles in:
-
Skimming Toni Baker's «Mastering Machine Code on your ZX81» and i love the chapter titles, which feature a hand-drawn illustration of the ZX81 circuit board. I believe the PCB tracks on the ZX81 were themselves hand-drawn, which was the fashion at the time. [edit: i see from the title page, that the illustrator is Cathy Lowe, and they like a bit of slightly wobbly Letraset Helvetica]
-
A *much* better version of the Timex/Sinclair 1000 manual, thanks to the epic scanning skills of @c64whiz
-
A *much* better version of the Timex/Sinclair 1000 manual, thanks to the epic scanning skills of @c64whiz
-
A *much* better version of the Timex/Sinclair 1000 manual, thanks to the epic scanning skills of @c64whiz
-
A *much* better version of the Timex/Sinclair 1000 manual, thanks to the epic scanning skills of @c64whiz
-
A *much* better version of the Timex/Sinclair 1000 manual, thanks to the epic scanning skills of @c64whiz
-
Update: got one, thanks to @c64whiz !
Is there a better scan available of the Timex Sinclair 1000 User Manual than this one on the Internet Archive?
https://archive.org/details/timex-sinclair-1000-user-manual/It's a little bit cruddy, and every internet link seems to lead to it
-
Update: got one, thanks to @c64whiz !
Is there a better scan available of the Timex Sinclair 1000 User Manual than this one on the Internet Archive?
https://archive.org/details/timex-sinclair-1000-user-manual/It's a little bit cruddy, and every internet link seems to lead to it
-
Update: got one, thanks to @c64whiz !
Is there a better scan available of the Timex Sinclair 1000 User Manual than this one on the Internet Archive?
https://archive.org/details/timex-sinclair-1000-user-manual/It's a little bit cruddy, and every internet link seems to lead to it
-
Update: got one, thanks to @c64whiz !
Is there a better scan available of the Timex Sinclair 1000 User Manual than this one on the Internet Archive?
https://archive.org/details/timex-sinclair-1000-user-manual/It's a little bit cruddy, and every internet link seems to lead to it
-
Update: got one, thanks to @c64whiz !
Is there a better scan available of the Timex Sinclair 1000 User Manual than this one on the Internet Archive?
https://archive.org/details/timex-sinclair-1000-user-manual/It's a little bit cruddy, and every internet link seems to lead to it
-
I implemented Bresenham's line algorithm for my ZX81 "game" (more of a demo of routines at the moment). I use it to draw the chunky grey line crossing diagonally. It's quite a fun algorithm, and apparently the second time that i have implemented it: there is a version in BASIC in Chapter 18 of the ZX81 BASIC Programming manual that i surely typed in as a child.
#ZX81 #Bresenham -
I added a random number generator (a LFSR using polynomial for n=16 from XAPP052) and a subroutine for PRINT AT to my ZX81 "game".
-
Novos clones para os clássicos da Sinclair.
https://retropolis.com.br/2025/12/12/novos-clones-para-os-classicos-da-sinclair/
#MundoRetro #Clone #Espanha #JupiterAce #MSX #RancanuoTeam #ROM #sinclair #Venda #ZXSpectrum #ZX81
-
So, does anyone have any recommendations for an #Android #app that will record and play back #FLAC or #WAV #audio for use with old, #tape based #microcomputers such as the #ZX81 etc? I don't mean apps that serve a specific system (e.g. Speccy) but am looking for a #digital #replacement for #computer #audio #tapes.
-
So, does anyone have any recommendations for an #Android #app that will record and play back #FLAC or #WAV #audio for use with old, #tape based #microcomputers such as the #ZX81 etc? I don't mean apps that serve a specific system (e.g. Speccy) but am looking for a #digital #replacement for #computer #audio #tapes.
-
So, does anyone have any recommendations for an #Android #app that will record and play back #FLAC or #WAV #audio for use with old, #tape based #microcomputers such as the #ZX81 etc? I don't mean apps that serve a specific system (e.g. Speccy) but am looking for a #digital #replacement for #computer #audio #tapes.
-
So, does anyone have any recommendations for an #Android #app that will record and play back #FLAC or #WAV #audio for use with old, #tape based #microcomputers such as the #ZX81 etc? I don't mean apps that serve a specific system (e.g. Speccy) but am looking for a #digital #replacement for #computer #audio #tapes.
-
So, does anyone have any recommendations for an #Android #app that will record and play back #FLAC or #WAV #audio for use with old, #tape based #microcomputers such as the #ZX81 etc? I don't mean apps that serve a specific system (e.g. Speccy) but am looking for a #digital #replacement for #computer #audio #tapes.
-
One of the cool things about the #Minstrel4th is the fact that its #ROM not only contains the original #JupiterACE ROM and an Enhanced JupiterACE ROM by @nihirash (which enables program load via serial I/O amongst other things) - no: there are also #ZX80 and #ZX81 "compatible" #BASIC ROMs available on the additional banks, all selectable via jumpers.
The ZX81 compatible ROM works well enough to run "Flight Simulation" by Psion Computers.
EDIT: Oh, and it runs the ZX81 version of "Mazogs", of course ...
What will not work is anything that uses non-standard screen and keyboard routines, as the hardware of the Minstrel 4th is slightly different from the original ZX81. Still, it's a nice extra I didn't expect.
-
New release of my speccydev devcontainer today: - Updated Boriel BASIC to newest version - Added the PASTA/80 PASCAL compiler - Add hdfmonkey for manipulating Spectrum Next sd cards github.com/mcphail/spec... #ZXSpectrum #ZX81 #SpectrumNext #RetroComputing #RetroGameDev
GitHub - mcphail/speccydev: De... -
Hey retro computing people, it seems there are now perfumes based on classic 8-bit computers:
https://www.escapistmagazine.com/news-retro-gaming-fragrances-launch-for-christmas
Not a joke apparently, these are real!
#RetroComputing #RetroGaming #ComputingHistory #Commodore64 #ZXSpectrum #ZX81 #ZX80 #Perfume