Yesterday I spent some time at Macworld, listening to Andy Herzfeld tell stories of the Old Days at Apple. Any time you get a chance to hear Andy tell stories, pull up a chair.
When they used to demo the Apple at Homebrew Computer Club meetings, the big attraction was Steve Wozniak’s beautiful Integer Basic interpreter, which ran rings around Microsoft Basic. However, Woz had not yet designed the tape-drive interface. There was no mass storage at all.
So that meant that before each meeting, Woz had to plug in the Apple ][ and type the interpreter into it. About 4K of machine code, all in hex of course. Now, he didn’t totally memorize it, though he got better and better. Still, some of it he was actually re-creating as he went along.
Now Woz could type at superhuman speed, especially in hex. But as he worked, the rattlerattlerattle of the keys was interrupted from time to time by a pause of several seconds with Woz staring at the keyboard, motionless. Then rattlerattlerattle some more, then another pause, and so forth. Finally someone asked him what the pauses were.
“Forward branch” said Woz. See, every time there was a forward branch in the code, he had to do the next few (or not so few) instructions in his head before he knew what offset to put in the forward branch instruction, then go ahead and type in the instructions he had just done in his head and continue from there.
I don’t think I could program that way.
Leave a Reply
You must be logged in to post a comment.