My first computer was an Apple ][ Plus. I still have that machine. Its arrival in my house was almost a religious experience. We never had gadgets, and it was clear that this was something new, amazing. I stayed up all night the day it arrived, learning about it, spellbound. I was in junior high school.
The impetus for its purchase did not come from me or my brother or sister, and I do not think anyone else I knew had a personal computer yet. My parents, both teachers, had gambled that it would be good for their kids. A life changing decision. My siblings used it a little, but I was the one who took it over.
That computer sported 48k of RAM, a 5 ½ inch floppy disk drive, the Applesoft BASIC interpreter, 6502 assembler, DOS 3.3. It only handled uppercase characters. It came with a game called Little Brick Out, written in BASIC, with source code you could examine and change. It had HIRES and LORES graphics. And two game “paddles” with dials and a button.
I remember the chugging sound of the disk drive and the painful grinding noise that its retries would make when it had trouble reading a disk. I remember the beep of ctrl-G, the ] prompt for the BASIC interpreter, the CATALOG command that would list the files on a disk.
I was lucky that Brick Out was the only game around for a while, and that the computer came with a spiral-bound Applesoft BASIC programming reference manual for Applesoft. Because I started to learn how to program, taking a self-guided voyage of discovery, by tweaking the variables in that program – changing color schemes, lengthening the paddle control, trying to read its mysterious code.
I went through the Applesoft manual and attempted the commands over the course of days and weeks and months. The interpreted language made it easy to try things, alter a program, and try again. I learned about variables; IF, THEN statements; FOR…NEXT loops. I experimented with GOSUB for calling subroutines, and RETURN for ending them; with arithmetic functions like ABS() or RND(). I learned about debugging. I remember being intimidated by a chapter titled “STRINGS,” and avoiding it, until I found out what strings were, and about the character operators that worked on them. I amused myself endlessly, in a way that only others who have been through a similar process can understand. With a command like MID$(“ORANGUTANG”, 5,3) you could take the gut from orangutang.
I also learned how take INPUT from a user, and to control screen output – in regular text mode with PRINT, and the positioning commands HTAB and VTAB. I learned about that computer’s graphics modes. In high resolution mode (HGR), I could HPLOT 0,0 to 50,10 and actually see a diagonal line appear on the screen It was miraculous. I could generate random numbers and watch dots appear on the screen in magical patterns, or plot random lines, or use functions to plot parabolas or ellipses.
In fits and starts, I began to learn more about the machine – about its memory map and the PEEK and POKE commands that allowed to address that memory directly. I learned that some memory corresponded to locations on the screen in text mode, or in a graphics mode, while other parts corresponded to the actual Applesoft language itself. I learned how to get to the 6502 assembler prompt (CALL 65385, I think), and about hexidecimal (base 16). I learned some assembler, a far more cryptic language with commands like LDA (load accumulator with memory). After a time I could write subroutines in 6502 for things that BASIC did too slowly.
It’s hard to explain, but you could really get close to that computer. I developed a real affection for it. Vast stretches of time could pass as I concentrated on some problem. I remember discovering the subroutine that the computer used to print “Apple ][“ on the screen. You could “CALL” it yourself if you knew the location, but it was just cool to know about. It was a world unto itself.
It is so impossibly long ago now that I played with that computer. Thinking about it for an hour this morning -- trying to remember the details, trying to recall my excitement and express it in words -- has been quite nostalgic. Now back to work.