top | item 44859761

Show HN: A Sinclair ZX81 retro web assembler+simulator

80 points| andromaton | 6 months ago

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

26 comments

order

SanjayMehta|6 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|6 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|6 months ago

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

YZF|6 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.

empressplay|6 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|6 months ago

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

pjmlp|6 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".

andromaton|6 months ago

thank you. will or have fixed :)

GPerson|6 months ago

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

xnorswap|6 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.

andromaton|6 months ago

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

GPerson|6 months ago

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

andromaton|6 months ago

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

sebastien_b|6 months ago

The ZX81 did not have a copyright on boot.

JdeBP|6 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. (-:

andromaton|6 months ago

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