All posts

How a Holiday Experiment Turned Into an 8-Month Obsession

The story of how Vectrex Studio was born — late nights, too many features, and the irrational decision to write a Python compiler for a 1982 console.

storyreleasevectrex

It started in the summer of 2025. My family was on holiday, and I'd just signed up for GitHub Copilot. Every night, once everyone was asleep, I'd open the laptop and start experimenting.

I'm a software developer by trade — C# most of the time, though over the years I've touched more technologies than I care to admit. Gupta SQLWindows included. Yes, really. But underneath all of that, I'm a retrogaming collector. I grew up programming on a ZX Spectrum, and I've always had a soft spot for 8-bit hardware and the constraints that made it interesting.

The itch I could never scratch

I'd tried to build a complete game several times before. It never happened. The friction was always the same: drawing vectors by hand felt tedious, composing music for the AY-3-8910 chip was a rabbit hole of its own, and every new platform I wanted to target meant learning a whole new toolchain just to maybe finish a game I'd probably abandon anyway.

At some point that summer, sitting in the dark while my family slept, I asked myself a stupid question:

What if I could write Vectrex games in Python?

Python is the language I reach for when I want to think clearly. It's readable, fast to write, and it keeps the noise down. The Vectrex runs on a Motorola 6809 processor. These two things have no business being in the same sentence — and that's exactly what made the idea interesting.

A proof of concept that wouldn't stop

What started as a weekend experiment snowballed. I got a basic compiler working. Then I thought: it would be nice to have syntax highlighting. And an emulator to test without hardware. And a debugger — a real one, with breakpoints. And a vector asset editor so you don't have to hand-code coordinates. And a music editor. And SFX. And AI integration so the whole thing could write code for you.

Every feature I finished revealed ten more I wanted to add. I have no idea how to stop.

Eight months later, I had a complete IDE:

  • A Python-like language (VPy) that compiles to MC6809 assembly
  • A 9-phase Rust compiler pipeline
  • A cycle-accurate Vectrex emulator running inside the app
  • Monaco editor with LSP autocomplete and inline diagnostics
  • A real debugger with source-level breakpoints
  • Vector, animation, music and SFX editors
  • An AI assistant (PyPilot) that understands VPy and can write code, create assets, and control the IDE via MCP
  • A VS Code extension for those who prefer it

Why I'm releasing it now

For a while I wasn't sure I should. The project is big, it has bugs, and there are features I haven't finished yet. But I kept coming back to the same thought: the best way to keep improving it is to hear from people who actually use it.

The Vectrex homebrew community is small and passionate. If even a handful of developers find this useful — if someone ships a game they couldn't have shipped otherwise — that's worth more than waiting until it's perfect.

So here it is. Rough edges and all.

If you find a bug, open an issue. If you build something with it, please show me — I'd genuinely love to see what people make. And if you want to contribute, the repo is open.

Thanks for trying it.

Dani