A few weeks ago, while walking my dog, I decided to try out the newly released voice interaction feature of ChatGPT. After some slightly awkward pleasantries, I took the opportunity to ask for tips on a project I had shelved for some time: a browser-based Chip-8 emulator, written in TypeScript with the display simulated through JavaScript’s Canvas.
I expected just a few pointers, but to my surprise, I ended up with most of the code ready to be copy-pasted. It only took a little time to organize the project, fix some glaring errors, and in less than half a day, there it was—a blend of dystopia and magic.
You can try it out here: Chip-8 Emulator

The takeaway: while it may not be flawless, it should (hopefully) run any ROM with a .ch8 extension.
The keyboard replicates the original 16 keys using the numbers 1 to 4 and the rows of letters below (qwer, asdf, zxcv). Touch support with an onscreen keyboard is still missing, but tomorrow I have to take the dog out again.
Here’s the repo: Chip-8 Emulator