2019-05-07 22:00

An interview with 1001 Crew's Hacktek

1001 Crew

I am working on a history of the 1001 Crew together with Honey (Joost Honig). This is an excerpt of the story we're working on.

We're trying out several writing styles for this book. Below you'll find a draft of an interview-style approach to recount my recollections of the 1001 Crew history.

This interview is with me Hacktek (whose handle on Twitter is Hackteck).

Q: When did you start using a computer?

A: I don’t recall the year, but it must have been sometime in the late 70s when my parents bought a Pong(-like) game console which could be attached to a TV. It was a black and white game but it definitely was my first encounter with computer hardware and embedded software.

Q: OK, let’s say this doesn’t count, what was the first real computer you used?

A: I must have been 13 or 14 when a friend of my parents allowed me to use his Commodore PET once per week. It was a huge and ugly machine (even by the standards of those days), but my goodness it was fun. It came with a book about the BASIC language which I tried to comprehend.

Q: Did you immediately like it?

A: I remember sitting in a quiet room at this friend’s house, trying to understand a technical book in a foreign language (English), typing instructions, seeing them appear on a screen, and enjoying the fact that simple instructions could explode into an almost instantaneous “big” result. I don’t recall exactly what I programmed but stuff like printing the multiplication table of 14, or 777 for that matter, gave me an insight into what a computer could do for me.

Q: What else do you recall from that time you were using this PET computer?

A: I knew I was doing something not many kids were doing, I was a plain, ordinary kid and learning how to program a computer made me feel good. I realized that I wanted to have a computer at home, but that was out of the question, I think due to the high cost of computers back then, compounded by the fact that my dad did not believe you could do anything meaningful on a “home computer” as they were called back then. He worked at a steel mill as an information analyst with a team of programmers who were using multi-million dollar IBM and DEC mainframes and minis.

Q: When did you get your own computer?

A: I have written this down in a photo album: in February 1984 I bought a second-hand Commodore VIC-20 for ƒ300 (guilders) which was the currency used in the Netherlands before the introduction of the Euro in 2002. I did not have enough money to also purchase a cassette recorder, so everything I created was gone every time I had to switch off the VIC. My dad was rather skeptical in the beginning but he quickly started to use the machine as well as soon as he saw how much fun I had. Not much later my parents bought a second-hand TV and a cassette recorder. I recall this old TV had to be replaced quickly because it caused a brown out every time you switched it on, so much electricity the damn thing used. It was replaced by a small, portable color TV.

Q: What did you do on the VIC?

A: Nothing spectacular to be honest. I worked my way through the book that came with it. In those days a computer came with a programming manual ha ha. I had a couple of games which I could load from tape. It was all very limited due to the VIC’s hardware limitations (20 KB ROM, 5 KB RAM, and a 176×184 pixel display).

Q: When did you set your eyes on the Commodore 64?

A: That must have been fairly quick. Mind you, the C-64 was already on sale in the Netherlands when I bought my VIC. I simply could not afford a C-64 which, if my memory doesn’t fail me, cost around ƒ900. During the summer holiday of 1984 I started pestering my parents about buying a C-64. My mom had a basic rule: if there was no major financial calamity during the summer vacation (e.g. an expensive car repair) then there was room in August/September to make an expensive family purchase. I guess we got the C-64 around that time, September 1984.

Q: Do you recall the first things you did on the C-64?

A: In anticipation of the C-64 I had bought a secondhand book about assembly language. It discussed the Motorola 6800 processor instead of the CPUs used by Commodore in their home computers (6502/6510) but it was close enough to learn about assembly language in general. I had no way of testing what I learned from this book until we got the C-64.

Just before the C-64 arrived I received or purchased some tapes from Erik Bouwmeester [note: a 1001 Crew member] because he and I attended the same high school. By the way, Joost also attended this school but we only met at a later stage, probably because he was one or two classes ahead of me. I don’t recall the details but I’m fairly certain the first set of tapes came with an assembly language monitor. From that moment on I was hooked on the weird world of 3-letter mnemonics, on a quest to learn every one of the 8 bits per byte between $0000 and $FFFF.

The great thing about being able to read and write assembly language is that the source code of any program is essentially available to you. And as long as the assembly code was handwritten it was easy to read and comprehend as well. Although I don’t think I knew or realized it back then, but code that was structured in an odd or inefficient way back then probably was the output of a high-level programming language like C. Oddly enough it was only a few years ago that I realized people were doing that, while watching the character “Gordon Clark” in the TV series Halt and Catch Fire. In this series Gordon uses The C Programming Language book by Kernighan and Ritchie to learn how to program the C-64. Honestly, I felt slightly betrayed that people must have been taking this “shortcut” back then. And for what it’s worth, I now know you could only squeeze every bit of performance out of the C-64 by writing in assembly so I don’t regret learning it (later on the Amiga, I did eventually switch to C).

Q: What happened between 1984 and June 1986 when you joined the 1001 Crew?

A: Ha ha, probably I was trying to make my way through high school. I was a terrible student. I excelled at some topics, but failed miserably and constantly at other topics. It was as if I was only able to dedicate a small slice of brain power to school chores and 100% of it to stuff I loved, such as programming. It’s easy to blame the school system for this, but frankly it was my own fault by succumbing to a toxic mix of procrastination, disinterest, laziness, and misplaced hubris that I was smart enough to not need school to make a living. I must say, the school was very good and rigorous in teaching maths, physics, chemistry, biology, history, geography, writing & literature, French, English, and German. I still know most of it.

But I digress. I have no record of what I did on the C-64 during that time but I must have been playing games, getting better at assembly language, and trying to remove the copy protection from games I bought on tape and disk. During that time I also started to get some “customers” who paid me for tapes and disks containing games and demos.

In the summer of ‘85 I got a job at a summer school, teaching kids how to code. Somewhere in my notes I found proof that I bought a 1541 disk drive from the money I made.

Q: You mention “customers”, care to elaborate?

A: Sure. All the 1001 Crew members had “customers”, people all across Western Europe who bought disks containing games and demos for a small fee to cover “handling and postage”. On good weeks I made ƒ75 which was an astronomical amount for a teenager. With some customers I agreed to put transparent tape over the stamps and wipe them clean several times to save on postage, allowing me to reuse the same envelope several times. I recall one of us got into an argument with a particular law-abiding postman who made his objections clear by ramming a pencil through the stamps before putting the envelopes into our mailbox. Some customers lived in the same town as I lived, or in a nearby village. Those customers I visited by bicycle. It was my first introduction to customer support, negotiating, and making sure you always had something new to show. By the way, and this may sound odd to American readers, but no one in the Crew was in possession of a telephone modem. Exorbitant phone costs, the steep price of a modem, and lack of people to connect with made Europe a desert in terms of bulletin boards. Only in the 90s we started to use modems, but that was after the 1001 Crew era.

Q: Do you recall how you got introduced to Joost (Honey) and the 1001 Crew?

A: During the summer of 1986 the “Battle for the Border” started to heat up (more on this elsewhere). The top and bottom borders had already been conquered, it was time to do the same for the side border. Somehow I managed to open a small part of the side border too (visible in the “Amazing” demo which the 1001 Crew released in June 1986). I assume I was introduced to Joost (Honey) by Erik Bouwmeester (Syzygy) to discuss this feat and how to exploit it.

The side border trick was of great interest to Joost because the demo scene was like an arms race: you had to come up with ever more powerful stuff to impress the fans. Joost recalls we had a conversation about my side border code on a railway station (probably Alkmaar, The Netherlands). I recall Joost and I agreed I could join the Crew while visiting a navy base (during an open days festival) in Den Helder.

Q: What was it like to be part of the 1001 Crew?

A: Well, we knew we were “world famous”, but only to a couple of thousand people around the world. In hindsight it’s dangerous to come up with all kinds of ideas and rationalizations, but we knew back then that any demo that we made would be in the hands of hundreds, possibly thousands of people in a matter of weeks. This put pressure on us to deliver high-quality demos of ever-increasing complexity and awesomeness.

I recall we went to so-called “copy parties” where dozens, sometimes hundreds of people would be in an exhibition hall, sitting behind C-64s and 1541 disk drives, frantically copying everything they could lay their hands on. When we visited such events we’d hand out stickers and autographs (yes, like rock stars). We even had fans come up to us, offering to be (and I'm ashamed to say) our “copy slave” for the day, enabling us to walk around and chat while they would copy of stuff we wanted to have or distribute.

Q: How often did you see each other?

A: All the members still attended school meaning there was not much leisure time throughout the working week. We gathered in Luuk’s house usually on Saturday night to swap disks, work on demos, while eating snacks (french fries and other fried stuff, while drinking copious amounts of Cola). I have fond memories of this time probably because it was outside my parent’s view, doing slightly naughty things, while being surrounded by nice, smart friends.

Sometimes we also met on afternoons during the week but that was usually just me and Erik Bouwmeester, or me and Joost. Since we all were attending different classes and years our homework and test schedules were not the same. These one on one meetings usually resulted in “pair programming” sessions which were lots of fun. I learned so much by watching someone writing code, and navigating the assembly monitor tool or file system.

Q: When did the Saturday evening meetups end?

A: I honestly don’t know anymore. It went on for a couple of years, probably all of ‘85 and ‘86, perhaps into ‘87. Things started to change due to members getting involved with other friends, parties, girls, et cetera. The Saturday routine probably faded away during 1987.

Q: Did you stop seeing each other altogether?

A: No, certainly not! Joost, Steve, and I still met quite often but now in Steve’s attic at his parents’ house. I remember I had to scale a flight of stairs quickly to evade a dog who didn’t like me, then climb wobbly stairs to an attic where Steve had his man cave. He had a great stereo including a CD player, a music keyboard, an Atari ST, Amiga, and Commodore 64.

We didn’t lose contact with Erik Bouwmeester, Dick, Luuk, and the other members, however, we stopped meeting with the intent to copy or hack software, or write code. I remember we went to parties, to the cinema, watched rented videos, to the beach, ran and mountain biked together, and to hang out in places to drink beer and discuss girls.

After Joost, Steve, and I founded a company in 1989 we seldom met at each other’s homes anymore because we had an office. The other members visited the office once in a while but it never became a place to hang out.

Q: When did you get an Amiga?

A: I recently received a household notebook from my mom in which she recorded notable family purchases over the years. The page for December 1986 contains entries for a whopping ƒ3620 (Amiga 1000 plus a second disk drive) and ƒ1300 for a printer. This was a huge sum for my parents. I know they suffered from quite a bit of financial stress caused by a downturn in the economy leading to a mortgage interest of 13% which made a big dent in their income.

If I’m not mistaken I was the first member of the crew to have an Amiga (perhaps Steve beat me to it).

Q: What did you do on the Amiga?

A: Well the games were at a whole different level than on the C-64 so naturally I played a lot of games in the beginning. But quickly I started to research ways to program the damn thing. I recall feeling overwhelmed by the Amiga. On the C-64 I knew the purpose of all 65536 memory addresses. The Amiga, being a 32-bit computer, was much more complex compounded by the fact that it came with three co-processors for sound, data transfer (“blitter”), and “copper”. I dabbled a bit with 68000 assembly but never really liked it as much as I loved programming the 6510. Later when I wrote a game for the Amiga I was forced to pick up 68000 assembly for some time-sensitive parts but luckily I got a bit of help from Steve who actually liked working in 680xx assembly.

The jump from a memory-constrained C-64 to the Amiga (which came with 256 MB) gave me the opportunity to write and compile C programs. Of course I had to learn C first, so I decided to do that first. I picked up a copy of The C Programming Language by Brian Kernighan and Dennis Ritchie, and I got a C compiler for the Amiga (Aztec C I think, later I switched to SAS C).

While learning C I wrote a book for kids called “Wij gaan naar C” (“We’re going to [the] C”). I used the book during the summer holidays of ‘88 and ‘89 to teach C programming to children aged 8-16 at a summer school.

I quickly realized that the Amiga had so much raw power that the necessity to program everything in assembly was no longer required, as opposed to the C-64. I could use C to load instructions for the copper and blitter processors, enabling these chips to carry out their work at native speed. After some more dabbling I realized I could write a game using a mix of C and a bit of assembly. This felt good because I had started to like C, and it proved to be a less time-consuming way to tame the Amiga beast.

Over time I purchased all the Amiga development books, a set of books consisting of several thousand pages. It really took a monumental amount of work to fully understand this machine.

In December 1987 Joost and I decided to create a version of Joost’s C-64 game called Rollerboard for the Amiga. We called it Skate of the Art due to licensing and payment issues with Capital Software, Ltd. We finished the game in August 1988.

During ‘87 Steve had developed a fabulous level editor which we could use to develop the horizontally scrolling scenes in Skate of the Art. Steve originally built the editor for his game Larrie And The Robbery Of The Ardies.

The editor workflow was as follows: Joost designed dozens (hundreds?) of tiny, square blocks in Deluxe Paint and imported them in Steve’s level editor. Using the mouse Joost “painted” each level by using different blocks to create streets, walls, the sky, mountains, et cetera. Painstakingly each level was created by hand in this way. Each level was saved to disk (I don’t recall in what format) as a separate file per level. During game play every next level would be read from disk in order to construct the level scene on the fly. My code would then call blitter and copper routines to create a horizontally scrolling skateboard park where the hero of the game had to skate as hard as possible, while avoiding obstacles.

Rendering of the scene had to be done in this way because a single bitmap of several thousand pixels wide and several hundred pixels tall would have exceeded even the Amiga’s capabilities. By blitting small squares onto a bitmap just before it scrolled into view the game was able to render a seemingly endless horizontally scrolling scene.

Documentation about Skate of the Art can be found here.

Q: What else did you create on the Amiga?

Not much else, at least not before Steve, Joost, and I started a company in 1989. I vaguely recall working for a while on a drawing program which could be used to create org charts etc. It must have been inspired by software I saw at my dad’s office. The craze back then was something called “workbench software” if I am not mistaken. Its promise was that enterprises could “paint forms” to create actual, working software. I liked the visual stuff my dad showed me (connecting boxes using lines) but I didn’t think it would be possible to build software using such tools. Neither did he by the way. Anyway, my diagramming software never saw the light of day but it was fun to work on.

Q: Let’s go back to the Skate of the Art, describe the development and release process

A: It went painstakingly slow because both Joost and I attended school. We must have spent quite a few evenings and weekends between Dec ‘87 and the summer of ‘88. My brother Frank created the game music and sound effects, Joost did all the graphics, and I coded the game play.

I recall we created a video tape and sent it to a few distributors in Europe. One of them was Linel Software based in Switzerland run by Markus Grimmer. He responded by phone or letter, expressing his interest to license and distribute the game. My memory fails me how things exactly transpired but Joost and I were invited to come to Switzerland during the summer of ‘88 to finish the game at Markus’ house.

Joost and I took the train, a beautiful train ride through Germany along the Rhine river, into Switzerland. For some reason Markus put us in a hotel the first night, where we woke up early in the morning from the sound of a screaming pig. The poor animal was pulled by her ears into a lorry, probably to be shipped to a slaughterhouse.

Markus picked us up later in the morning and drove us to his house in Appenzell. We stayed there for about two weeks, while working on additional levels and other things to spruce up the game to Markus’ liking. We signed a distribution contract, which included an initial payment of £1000.

A cheque for the payment arrived in October that year. I remember we took it to the post office in our home town where it was initially confiscated (“Young lads with a thousand pound cheque? Must be fraud!”), but after some discussion the cheque’s value was paid in guilders. It was a nice sum of money, but it was all we would ever earn from this game. Linel didn’t do a good job distributing the game. Things started to take too long, illegal copies were spreading across the world making it impossible to generate a decent revenue from shop sales.

Q: What made you, Joost, and Steve decide to form a company?

A: I don’t really know the real reason anymore. All I can come up with is that a friend of my parents (the same person who let me use his Commodore PET) told me his boss would like to have a computer-controlled display in the entrance of the office, displaying announcements, welcoming messages, and ads. This company was Nokia Data based in Woerden, The Netherlands.

Somehow this idea quickly ballooned into a fairly complex piece of software. I took some of the Skate of the Art code and turned it into a slideshow tool to display a sequence of images, each having a certain display duration and “effect” (similar to slide animations in today’s Powerpoint/Keynote apps), and text overlays. The slideshow structure was stored in a file on disk. Steve created a user interface which could be accessed using a VT-100 terminal. This UI was used to define slideshow elements, duration, and text contents. Images could be uploaded, and referenced by name in the slideshow.

We sold a license to Nokia Data, and apparently the three of us thought we could turn this into a company because we founded a business on January 1st, 1989.

Q: What was the name of the company?

A: It was 1001 Software Development! For years people took us aside and asked, in a whispering voice, “is the name in any way related to the 1001 Crew? Yes! Oh man, I was a fan back then”. This even happened with three-piece suits at KLM which we had as a client years later.

Q: Did 1001 Software Development usher in the end of the 1001 Crew?

A: Yes. We took the business rather serious and I don’t recall we spent anymore time on 1001 Crew-related work after founding the company.

Q: Thank you Hacktek!

A: You’re welcome!

§ Permalink

ξ Comments? Kudos? Find me on Twitter