Settings

Theme

Show HN: A Sinclair ZX81 retro web assembler+simulator

80 points by andromaton 4 months ago · 26 comments · 1 min read

Reader

Lots of fun to do. I would have not taken the time without the speedup provided by Claude.

https://andyrosa.github.io/Sinclaude/simulator.html

SanjayMehta 4 months ago

I still have my zx-81, it powers up but the keyboard membrane is long gone. Learnt z80 assembly on it. Good times.

  • stephbu 4 months ago

    Yeah me too in 1982, using the Melbourne House Z80 reference, aged a young 10 years old. Working with POKE and no macro-assembler, I wrote mnemonics then translated them to machine-code by hand. A baptism of fire that to this day that I've not forgotten.

    This book was the ignition that changed my life... https://archive.org/details/z-80-reference-guide-alan-tullya...

  • boomlinde 4 months ago

    ZX Renew sells replacement membranes for £12 if you want to get it in working order.

  • YZF 4 months ago

    I have my ZX-81 (with the 16KB expansion pack) and my ZX-Spectrum (with a microdrive). I think they're in working condition though they haven't been powered up like in 30+ years.

    • rwmj 4 months ago

      Don't just plug it in! The power supply and/or VRM can fail in ways that deliver bad voltages to components. You might want to watch some of Lee's[1] videos first on how to bring up a ZX81 safely, or ask in his discord community for more help.

      [1] https://www.youtube.com/@MoreFunMakingIt/videos

      • YZF 4 months ago

        Thanks for the tip! If/when I do I'll try to use a bench power supply so I can put a current limit on it.

      • pjmlp 4 months ago

        That is why my Timex 2068 has never left the box since around 1990.

        Better admire for what it was and use an emulator instead.

    • JdeBP 4 months ago

      Watching the retrocomputing enthusiasts, apart from obvious things like water damage, it seems that the first thing that one always has to check before attempting to power up is capacitors. A generalism true for all old electronics, rather than Sinclair-specific.

      • actionfromafar 4 months ago

        And always assume the C64 power supply will fry the computer. It fails over time by raising the output voltage.

jlundberg 4 months ago

For people interested in the ZX community, be sure to check out the ZX Spectrum Next (ks3 ending within a week):

https://www.kickstarter.com/projects/spectrumnext/zx-spectru...

empressplay 4 months ago

Cool stuff! My first computer was the Timex Sinclair 1000 (when I was 6). Good times!

We did something similar for the Apple II, to compile Merlin assembly into a running emulator instance:

https://paleotronic.com/merlinplus/

techempire 4 months ago

Good stuff. I still have my ZX-Spectrum and working fine. Impressive the value that those machines provided for the time

pjmlp 4 months ago

Looks nice, however on laptop screens not all buttons are visible, it took a while to discover I could scroll to find "Assemble and Run".

GPerson 4 months ago

Can you say what parts Claude was used for to speed this up?

  • xnorswap 4 months ago

    My guess is most of it? This commit message for example sounds very much like a Claude result:

        Add Space Invaders game implementation in assembly language
        - Implemented the core game logic including player movement, missile firing, and invader behavior.
        - Added collision detection for missiles and bombs.
        - Included game state management for win/lose conditions and restarting the game.
        - Created functions for drawing game elements on the screen and handling keyboard input.
        - Defined constants and variables for game configuration and state tracking.
    
    
    That last one in particular is exactly the kind of update you get from claude, it doesn't sound very human. "Constants and variables" eh? Not just constants or variables, but constants and variables.

    Helpful, but not. Detailed, but not.

    • andromatonOP 4 months ago

      rule #1 of ai programming: read and approve everything before accept. rule #2 do not let it write commit messages - i did not know notice that until many commits later. they are horrible. change 10 things - writes about the last one, too peppy too.

  • andromatonOP 4 months ago

    95% of it. It's a power tool.

GPerson 4 months ago

Fast / slow mode breaks “Space Invader” by the way.

  • andromatonOP 4 months ago

    if by break you mean you can't see the action, that's by design :) otherwise, pls let me know.

sebastien_b 4 months ago

The ZX81 did not have a copyright on boot.

  • JdeBP 4 months ago

    An interesting observation. It prompts the thought of how far away this simulator is from an actual ZX81, and how much it has been pulled away from a ZX81 by dint of training data where simulated retrocomputers of other types all boot into copyright messages. I wonder how often the spicy autocomplete engine tried to make it put up a "READY" or "OK" prompt.

    One ZX81 clone actually did have a "READY" prompt, I read. Actual intelligence was doing the same in the 1980s. (-:

    • andromatonOP 4 months ago

      Almost none of the domain knowledge came from Claude. This is something I did by hand 40+ years ago (an assembler and a disassemble/debugger, which is in parts similar to the emulator)

      This time it was almost as fun : 1/8 of the mental effort per line, x 8 the speed.

  • andromatonOP 4 months ago

    true - it's an homage to the zx81, ts1000, spectrum and ts2068

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection