Vectrex Wiki
Ville Krumlinde

Ville fb

Born 1971
Profession Freelance programmer
Known for Thrust
Various PC and Atari ST demos

Ville Krumlinde was born in 1971. He was introduced to computers and became interested in programming at a young age. After attending school, his computer interest kept on growing, which he continued his work in the field to the point where he started his own consulting business and currently works freelance doing C#, Delphi and Java programming.

He is known for producing the Vectrex homebrew game of Thrust, considered by many to be a “must have” for the system.

Early years[]

Krumlinde’s first encounter with a computer happened at the age of 10 when he visited a friend who had received a Sinclair ZX-81 as a birthday present. His friend showed him how to write simple programs in BASIC language, instantly hooking him to the point where he went home and wrote out programs using just pencil and paper. He was able to buy his own ZX-81 a few months later.

Around this age, he also encountered the Vectrex for the first time. "Sadly, it was far too expensive for me or anyone of my friends to own," he recalls. "But we played for hours in any store where they let customers try it, and we rented one over a weekend. It was definitely the console I wanted the most."

His interest in computers kept on growing to the point that from early on he wanted to pursue a career in the field. After completing the minimum requirement of schooling, rather than attending a technical school or college afterwards, he was able to get a job at a computer company, which marked the first time he used a PC, as he did not start at the position as a programmer, but instead did “a little bit of everything from making coffee” to getting co-workers’ mail. However, after only a year or two at the company, he had learned enough that he was able to begin working as a programmer. He worked at a few other places until he started his own business and now works freelance as a result.

Gaming/programming[]

Krumlinde got into gaming “very early” in life, as he was just several years old when the scene exploded with arcade games, the Nintendo Game and Watch series and the earliest of programmable consoles of the Atari 2600, which was very successful in his home land of Sweden (along with pretty much everywhere else in the world), although he could not afford one, as well as a Vectrex several years later. However, not only was he able to play the latter often at a game store, but he and friends were able to rent one, playing Mine Storm and Cosmic Chasm “for hours...over a weekend”.

Krumlinde and some friends started swapping computer cassette games using homemade modems, which lead to hobby game programming, as he had learned machine/assembly language at that point. He found that the Z80 processor (that was in both the ZX-81 and Spectrum computers) to be “fun to program”, even with a lack of graphics support chip, which made it difficult to make fast-moving action games, which he was interested in creating. The 16-bit Motorola 68000 chip in the Atari ST, however, was a lot more powerful, as he and friends started making demos for the computer, as he gotten an Atari ST computer later as well.

Also, on the home computer front, Krumlinde used as much memory and CPU time as possible while doing demo work, learning about memory and performance optimization in the process, as well as high-level aspects of software development such as object orientation, database design, and writing design documents that he learned while working. However, as the years went on, Krumlinde noticed how he was working with too much “mundane stuff like debugging database queries”, and nothing with the simpler technology that started his interest in computing/writing code in the first place.

Vectrex involvement, Thrust[]

Thrust

So, the above led to why Krumlinde became interested in making a game for a retro platform, which the Vectrex seemed appealing due to the experience with its hardware not being totally captured in emulators (along with Protector and other excellent homebrews for the machine piquing his interest). Also, while thinking of games Krumlinde found as a kid that would work on a vector display, along with its “great atmosphere”, music and unique gameplay, Thrust became an easy choice of what game to make for the machine, as its Commodore 64 version “made a big impression” on him. According to Krumlinde, having seen the Atari 2600 handle a version of the game, then a Vectrex version must have been possible.

Development for the game took about a total of 18 months/in the vicinity of 1000 hours, with the first near year of it being developed using an emulator before trying the game out on actual hardware. Tools used were the AS09 assembler by Frank Vorstenbosch and the VecRAM cartridge by Richard Hutchinson. There was also a version of the GCE C-compiler which produced 6809 code which was useful when prototyping code like the line-clipping routines, according to Krumlinde.

Krumlinde found it to be inspiring to work on a retro platform, since up to that point he had trouble finishing his hobby gaming projects, as he would start making small games but not finish them because he kept adding features (like Zuluman, one of several of his unfinished games on his web site for the PC[1]). With Thrust, however, it was not only a remake with an already completed game design, but it also had a limit of 32KB cartridge space and 1KB of RAM, which gave a restriction on what features he would be able to add on (note: back then, the biggest game a Vectrex emulator could run at the time was only 32KB in size).

ZSB[]

(Note: this is the hidden bonus game on Thrust.)

At the end of development for Thrust, Krumlinde had about 2KB of ROM space left and started thinking about what kind of Easter egg he wanted to create, so he went back to his first Vectrex test project, which was a small demo of a space ship flying over a mountain background called Zzap. Reusing the code and being inspired by the Atari 2600 game The Empire Strikes Back resulted in ZSB (or "Zzap Strikes Back").

Present life/future projects[]

Unfortunately due to there not being a limit of memory for various other computer hobby game projects, not having an as inspiring game such as Thrust to port, as well as making a game not being “hard work... because I had lots of fun doing it”, Krumlinde presently does not have any present plans in making another Vectrex game at the moment. The last project of his that he released as Free Open Source software a few years back (at the time of this writing, in 2011) was ZGameEditor, a minimal game engine that is found on his web site.[1]

Krumlinde currently lives in Stockholm, Sweden with his girlfriend, working as a freelance programmer and enjoying music, movies and books in his spare time.

Ville Krumlinde catalog[]

Atari ST demos[]

  • Sowatt Demo
  • The Lazer Demo
  • The Reflex Demo
  • The Skinny Puppy Demo
  • Whattaheck Demo
  • ZZDemo3

PC demos (Windows)[]

  • CleanseCube
  • ParticleToy
  • Softsynth
  • Steering
  • Triple-E
  • ZGameEditor
  • ZPong
  • Zuluman

Vectrex[]

Trivia[]

  • Krumlinde never went to school for programming, as all his experience was self-learned/-taught.
  • During the early days of home computers, one of the ways he was able to trade tapes with friends was by having them send games over a telephone line by putting his cassette player speaker right next to the telephone and pressing record. The person at the other end would play the tape, which, if done correctly, the game would be copied after a few minutes (!).
  • The unfinished PC demo of Triple-E (available on Krumlinde’s site) was meant to be an entry in a contest, but Krumlinde fell ill, resulting in him being bedridden for two weeks, thus missing the contest deadline.[1]
  • What Krumlinde considered to be one of Thrust’s “milestones” was when he tried the game on actual hardware and found that it worked, since for almost an entire year he had been developing it using an emulator.
  • Manu Parssinen did the cover for Thrust, being an ode to the Commodore 64 version by Photoshopping a Commodore keyboard under a Vectrex. The cover came about pretty quickly after only a couple of suggestions and Krumlinde ended up being “very pleased with his work”. Parssinen also designed an overlay, although it wasn't manufactured, but it can be downloaded from Krumlinde’s site and either printed (for those who have the means) or used on an emulator.
  • After Thrust was released, Krumlinde made the source code available together with some documentation on his web site, figuring that since he learned Vectrex programming from other people sharing their techniques, he felt he would want to help anyone else that decided to get into Vectrex game development. His only regret about the project, though, was that he didn't take the time to develop a limited version of the cartridge to be sold to collectors, along with passing along any profit of it to a charity. The only release of the game has been the same since day one, which was originally available through the Vectrex carts website until 2007, which was handled later through Classic Game Creations until 2013, and has been distributed through Packrat Video Games, LLC starting in late 2014.

Links[]

  • Ville Krumlinde official site
  • Unlocking ZSB can be seen on the Vectrex easter eggs page

References[]


The majority of the content of this article was the result of several e-mails between the original author and Krumlinde.

This article was featured from January - February, 2012.