What is this?

6502.ts / Stellerator is a highly accurate emulator for the Atari 2600 that runs in your browser.

The fine demo (32 kB in size) that you can watch below running live is Ascend by Cluster and DMA.

Click to start!
6502.ts running the Ascend demo by Cluster & DMA live. Click to pause, <Enter> for fullscreen.

Why?

When I was a child, my first computer was an Atari 2600. I always wanted to try myself at writing an emulator. I was looking for a pet project to explore TypeScript. I was curious about JavaScript performance. Put these together and you end up with 6502.ts 😏

When I started on 6502.ts I was essentially writing a CPU emulator for the 6502, and I was not yet sure about the actual machine I was going to emulate. The first working “hardware” was a simple monitor that ran the ehbasic interpreter, and it was only afterwards that I decided to go for a VCS emulator.

The VCS was a primitive machine, right, so how hard could emulating it be? Plenty of time after that, so I got ambitious and planned to add other 6502 based machines as well after the VCS.

Eight years later I have learned 1. that the VCS is a hellish beast of a machine to get right and 2. about the amazing power of YAGNI. There still is only the VCS (the emulator that I called Stellerator) and a ton of cruft that I wouldn’t have added beforehand if I started today.

Still, Stellerator has turned out pretty nicely. Today it is one of the most accurate VCS emulators out there, and I have since joined the Stella team and ported much of the core to Stella, so I would call the project a success 😛

Bobby is going home
Childhood memories: Bobby is going home. It may be ugly and clunky and play awkward, but it was my first video game.