Adventures in Retro Computing #
One of the big assignments in my 7th English class was to write an autobiographical composition entitled "Me, Myself & I". This being 1994, "multimedia" was a buzzword, so students were also given the option of doing the assignment as an "interactive" experience instead*. I had been playing around with HyperCard, so I chose that option (it also meant extra computer time while the rest of the class was writing things out long-hand). I recall the resulting HyperCard stack being fun to work on, and it featured such cutting-edge things as startup 3D animation rendered with Infini-D (albeit, with the trial version that was limited to 30 frames only).
I'm a bit of a digital packrat, so I still have the HyperCard stack that I made 16 years ago. I recently remembered this and wanted to have a look, but lacked a direct way to view it. Thankfully, there are many options for emulating mid-90s 68K Macs. Between Basilisk II, a Quadra 650 ROM, Apple distributing System 7.5.3 for free, and a copy of HyperCard 2.4, I was all set. I was expecting to have more trouble getting things running, but this appears to be a pretty well-trodden path.
I was pleasantly surprised that the full stack worked, including bits that relied on XCMDs to play back movies and show custom dialogs. The contents are a bit too embarrassing personal to share, but it contains surprisingly prescient phrases like "I will move to California and work for a computer company".
This stack also represents one of my earliest coding artifacts (outside of Logo programs that unfortunately got lost at some point), so I was also curious to look at the code. Unfortunately whenever that stack was loaded, all of the development-related menu commands disappeared. I remembered that stacks have user levels, and that lower ones are effectively read-only. I tried changing the user level in the Home stack, but to no effect: as soon as my stack was brought to the foreground, it was reset back to the lowest level. Hoping to disable script execution, I engaged in a bit of button mashing. Instead I rediscovered that holding down command and option shows all field outlines, including invisible fields. 13-year-old me was clever enough to include a backdoor – a hidden button in the lower right of all cards that when pressed reset the user level back to the development one.
Code-wise, 13-year-old me did not impress too much. There was a custom slider that moved between different events in my life, showing and hiding text in a main viewing area that was awfully repetitive:
on mouseDown repeat while the mouse is down set location of me to 118, mouseV() if mouseV() < 91 then set location of me to 118, 91 walkfield exit mouseDown end if if mouseV() > 238 then set location of me to 118, 238 stmarysfield exit mouseDown end if end repeat if mouseV() >= 91 and mouseV() <= 103 then set location of me to 118, 91 walkfield end if if mouseV() > 103 and mouseV() <= 127 then set location of me to 118, 115 talkfield end if ...and so on end mouseDown on walkfield play "Click" show card field walk hide card field talk hide card field beach hide card field garden hide card field school hide card field japan hide card field stmarys end walkfield on talkfield play "Click" hide card field walk show card field talk hide card field beach hide card field garden hide card field school hide card field japan hide card field stmarys end walkfield
With Rosetta being removed from Lion, PowerPC-only Mac OS X software is next on the list of personally-relevant software to become obsolete (Iconographer in this case). Thankfully, it looks like PearPC is around in case I get nostalgic about 18-year-old me's output.
* I was initially going to have a snarky comment about the teacher** not realizing that the web was the way of the future, but after thinking about it more, having this level of flexibility was great, regardless of the specific technologies involved.
** Hi Mr. Warfield! Good luck with whatever is next!
Post a Comment