My parents bought our first computer (an Apple IIGS) back around 1987. One of the manuals that came with the system was titled "A Touch of AppleSoft BASIC" and provided a small tutorial/reference to the BASIC interpreter built into the Apple II ROM. I was fascinated that I was able to command this machine to do what I wanted> At the time I didn't understand what programming was or how to program the computer to do useful tasks, I just enjoyed seeing the machine dutifully execute whatever I typed into it.
In my school's computer lab, there was a collection of Nibble magazines. I began to borrow the issues one at a time and code in the programs at home. After a while I could understand the BASIC programs that were listed, but often there were mysterious listings of numbers and letters, or long lines of PEEKs and POKEs which the BASIC programs depended on. These mysterious codes made the computer do amazing things!! Graphics flew across the screen, the speaker chirped and beeped merrily. Once I was a bit older, I slowly began to learn about assembly language and machine code which I explored using the built in assembler on the Apple II.
For several years, I coded programs in this way. You couldn't make mistakes since there was no way to change a few instructions without recoding in hundreds of bytes of data. I spent a lot of time writing my assembly programs on paper before typing then in, line by line, to computer's memory. Address $6000 was a favorite starting point.
Throughout this time, I was ignorant of the commercial market for Apple software and had no idea that the Apple IIGS was more capable than the many Apple IIe and IIc computers at school. Finally, in 1994, our school go on the Internet through a single computer and a 14.4Kbps modem. Now I was able to see what other had done!! I discovered the ground apple2 archive, convinced my parents to subscribe to the GEnie online service, saved up for months to buy a copy of System 6, and, most importantly, purchased a copy of ORCA/M and ORCA/C from the ByteWorks along with their "Toolbox Programming in C" tutorial.
During my last two years of high school, I tough myself C and was able to develop programs using a real assembler. I got frustrated by how simplistic most of the games for the IIGS were when demo groups like the FTA and Brutal Deluxe were producing such astounding animations. I downloaded a copy of Mr. Sprite, read some Tech. Notes and began to explore the world of fast animation of the Apple II.
Finally, my first year of college, I decided that I would try to program a "real" game for the IIGS and set to work making a custom port of Super Mario Bros.. Well, many, any false starts, rewrites, inspirations and failures followed, but I was able to release a partially completed project that I was pretty proud of and several others seem to have enjoyed. I eventually became tired of working on a single game and turned my effort to building a generic library for writing fast, sophisticated (as much as hardware allows) games of the IIGS. GTE is the result of that effort.