I've had an interest in the Vectrex for a while now and though writing a game for it would make a good hackathon project.

What it does

It is a simple shootem up written for the Vectrex in purely ASM.

How I built it

I wrote it using vim, Makefiles and asm6809. I read though various documents for the 6809 microarchitecture to figure out what instructions ( was handy) to use and some docs written how to use various BIOS functions in the Vectrex ( was incredibly helpful).

I made the overlay with GIMP and put it in my ParaJVE configuration file to load it.

Challenges I ran into

Rendering multiple lists of vectors was quite a pain due to after using the Moveto_d function causes them to be drawn in the wrong part of the screen (due to the pen being moved). Ended up having to use the Reset0Int function in the Vectrex's BIOS to reset the pen for every object, then using Moveto_d to put it where I actually want, instead of approaches that would probably be better but more time consuming to implement.

Using Wait_Recall would have made the game unplayable, so it was luck that I found out about the Reset0* functions.

Accomplishments that I'm proud of

Doing a hackathon with nothing but an assembler in hand and some manuals written before I was even born.

What I learned

Far too much about how the 6809 works. Embedded development. Approaches for homebrew development.

What's next for Goose V Velociraptors

More homebrew I guess.

Built With

  • 6809-assembly
  • vectrex
  • vim
Share this project: