This is the first home computer built by Acorn, the company that would eventually create the Acorn RISC Machine or ARM that is used in every smart phone and Apple computer released today. It is also the precursor to the BBC Micro and you can see the primitive similarities that eventually evolved.
You must have a Pico 2 or equivalent to run this emulator.
This is probably the closest I’ve come to “vibe coding.” The AI coding assistants are becoming very good. This emulator was built using Opus 5.5 on medium effort. Of course, professional software engineering approaches were used in conjunction with AI.
Why? I wanted to play with the Atom and I wasn’t really looking at investing in building an emulator for the PicoCalc from scratch. Or I was impatient. Or both.
I am actually glad to see some AI coding going on. Honestly, there are a lot of people out there who have good ideas, but not the programing skill to make those ideas happen. I’d rather see the project come into being coded by an AI, then never see it at all.
Wow. I’m currently working on a RCA 1802 COSMAC ELF emulator (completely different architecture to what you’re doing), so I took a look at your projects’ pico-atom/docs/emulator-lessons.md at main · BlairLeduc/pico-atom · GitHub file. That is an amazing writeup with lessons for anyone doing emulation. When I started, I thought it would be a quick five-minute read, but it took me a good half hour to read through it. Amazing docs.
Alt+I no longer eats the next Enter. Insert is Shift+Enter or Alt+I; an Alt+I with Alt let go first used to swallow the following Enter. The key is now decided when it arrives, with Alt as it was then.
A tapped Shift or Ctrl reaches the Atom. A modifier pressed and released quickly was applied and undone before the guest saw it; its release now waits as a key’s does.
Rewinding a tape stops the deck. Rewinding a playing tape used to start it again from the beginning; it now leaves the tape stopped at its start, as a real deck does.
New document, docs/emulator-lessons.md: what this project taught about writing an emulator on the PicoCalc.
I don’t know if I will ever use or understand all of it, but I know I’ll be revisiting some of my projects to see if I can learn a few improvements to apply to my code.