JavaScript & React: Space Invaders on an 8080 CPU Emulator
In 2022 I was forced into a fairly lengthy non-compete period between two roles. Six months is a long time in Technology and I didn’t want to lose my place at the bleeding-edge, so I decided to write an emulator for a fifty-year-old CPU and see if it would run an arcade game from 1978.
The results can be seen at 8080.cakers.io where you can play the original arcade ROM of Space Invaders in your browser. It’s all client-side Javascript and safe to click, I promise. The source is available in GitHub if you don’t believe me.
The emulator was started in C but migrated to JavaScript shortly after. I realised I wanted people to actually see it and try it out, and asking someone to download a random executable from your random website is a bit cheeky. With JavaScript, however (along with a sliver of React), I could host the whole thing in a web browser and just point people at it.
Along with the source is a README.md that describes how you can use it to configure your own virtual 8080-based machine and see if you can get it to run any other 8080 software. Those long, winter evenings will just fly by.