|
|||||||||||||||||||||||||
Mike Newell also did a lot of work on the graphics for Zenix and Crystal City. If you liked level four of Crystal City, you should thank Mike. Can you tell us a bit about the sound routines that you used in your programs? Since they took a large chunk of CPU time, they had to be as fast as possible. To that end, I placed most of the routine in the direct page and used self-modifying code to get the best performance possible. The routine was called about 3600x per second from the timer interrupt. The music routines in Zenix used a table to generate four-part harmony background music, plus two channels for special effects. I would have done the same for the Crystal City, except there wasn't enough time to complete it before the deadline. The sound routine also doubled as a "raster avoidance system". In the early days, sometimes the icon would disappear because the VDG was drawing just as I was erasing. I used the sound routine to keep track of where the raster was. If the raster was too close to the icon, I queued it up to be drawn later. Can you tell us any interesting "stories" of your past development days? I was writing attack routines for the Zenix bugs. At that point, all they did was group together and wait forever. In one programming swoop, I wrote the code for them to pick a track, and follow it down to kill you. After hours of work, I assembled the whole thing, thinking, "Oh, this'll crash in about a 60th of a second." To my sheer delight, I watched three little bugs group together, and swoop across the screen. Just as I shot at them, to my complete surprise the three of them turned tail and run UP off the screen. I yelled at the cowards to come back and fight like real bugs! I had accidentally reversed the Y offset sign, so they ran the track up instead of down. Half way through the development of Zenix, I found out the assembler I was using wouldn't cut it. So I had to write my own. When it could assemble itself and Zenix (in under a minute), I was satisfied that it worked fairly well. I gave a copy of it to my friend Mike Newell. Whenever anything Mike wrote crashed, he always jokingly blamed it on my assembler. He would say, "It's your fault my program is crashing, so help me find this bug!" I just pointed to the huge amount of code it assembled - by then I was using it for Crystal City as well. He would then accuse me of putting an "M" bit in it. Supposedly when he was using it, the "M" bit would magically get set, and the assembler would purposefully generate bad code. Finally, I would say "Prove it!" Of course, he always eventually managed to track down his bug and fix the program. The whole thing became a running gag. Except for this one-day. He came back and said "HERE IT IS!!! A BUG IN YOUR ASSEMBLER!!!" He was right, some obscure op-code I had never used generated the wrong value. I was already laughing because I knew exactly where the bug was. I opened the op-code data file, and asked him "Do you recognize this data file?" He said, "Yea, I typed it in." I paged down to the bad op-code. He said "UGH! I caused my own bug!" We both laughed, and I said, "So it's your own damn fault!"
CRYSTAL CITY What is your opinion on Software Piracy? When I first started, I was paranoid that people would pirate my hard work. What I didn't realize was that I could have sold more had I gotten the product to market earlier - even without the copy protection. In the end, I removed the copy protection for three reasons: 1) My system was so customized (my own PROMS, my own disk drive, etc, etc.) it would have been too difficult for [whoever owns the rights now] to generate master disks. 2) I didn't care if people copied it because I wouldn't get any more royalties. 3) I hoped people would copy it - at least more people could enjoy my hard work that way. I still have all the original registration forms that were sent back to me. When I read all the good comments, I feel like I accomplished something great! Tell me about GOSUB SOFTWARE.
I was sitting at a restaurant with my family, and we were trying to think
of a company name. My mother (or father, I can't remember) said why don't
you use a computer command. I said, come on, that's ridiculous. To emphasize
my point, I said "Goto Software. See, computer commands sound
terrible." My sister knew absolutely nothing about computers and especially about programming them. So I was amazed (and still am) when she said "How about Go-sub Software?" I liked it almost instantly. It was easy to say, and my mother drew a great logo to go with it. Go-sub could have been the name of a video game, so why not use it? What is Graphics-25? It was a program that enhanced Basic. It added commands to load, save, manipulate and display up to 25 graphics pages. You originally were to distribute your software with Game Point Software but that didn't eventuate. What happened there? Peter Ellison of Game Point Software convinced me that he could sell more than any one else if I signed an exclusive deal with him. I sent him 100 copies of Zenix that I never got paid for. Basically, he caused me to miss all those "after Christmas" sales. To add salt to the wound, Tom DiMarco (Gimmesoft) called me up and asked why he couldn't sell Zenix. When I realized what was happening with GP, I broke our contract and looked for other places to go. After that, I vowed to never sign another exclusive deal. Glen Dahlgren of Sundog called me up later and offered to sell Zenix through a Non-Exclusive deal. He also convinced me to finish Crystal City. I hope I don't sound too bitter about it. I'm not bitter about the CoCo but let's just say, I'm not quite as naive as I was then. Are you still developing for the CoCo and why? No. I stopped when I realized, I couldn't make enough money to live on. In fact, I stopped half way through Crystal City, but Glen (from Sundog Systems) convinced me to finish it. I never would have stopped writing games for the CoCo, if I could have made a living from it. What were your feelings of the CoCo3 when it was released? I was very happy. I bought one first thing and started writing software. I actually started Crystal City before Zenix. But the task was bigger than I was ready for, so I switched. If you were asked by "Mr.Tandy" to create a CoCo4, what would you include? To have had it ready for market within two years after the CoCo 3 was introduced. It's too late now. Have you any "words of wisdom" to pass on to any budding CoCo programmers? Good luck, and have fun.
Interview copyright by Nickolas Marentes - November 19, 1998.
|
|||||||||||||||||||||||||
![]() |