Saturday, September 15, 2012

The Fossil Project, Part III: Frotz and Zork

I was hoping to use the Fossil to play some interactive fiction, but I pretty much put it on the back burner until I watched Jason Scott's Get Lamp and remembered, Oh yeah, they used to run these things off floppy disks and tapes back in the day. How hard can this be?

For starters, it's not like I can actually get floppy disks or tapes for this stuff without paying lots of money on eBay, at which point I would likely wait anxiously for its arrival only to discover it doesn't work with FreeBSD.

I figured there must be some way to get floppy disk images for Unix, or some other means of playing it directly. I didn't really have hope I'd get a general interpreter for z-code files, but I also didn't know where I'd find a plain old regular program-version of Zork or anything else. And I really, really wanted to play Zork.

I posted a question on the forums that probably revealed my great ignorance of what I was doing. First I got a hint towards my Internet-connecting problem - it basically gives me hope that one of the other old computers lying around here might have a compatible network card, or that I'll be able to find one somewhere that's compatible - and then the great Zarf, Andrew Plotkin himself, answered (how sad is it that I still haven't played Shade?).

Ah, that reminded me I could just Google "FreeBSD Frotz" and see if anything useful came up - anything precompiled. I managed to find a section on the FreeBSD site full of ports of various applications and this horrifying thing appeared when I clicked on the Frotz one:

Either something was missing or I didn't (don't) understand makefiles, and I didn't really feel like installing the entire ports tree (even though it's rather lightweight and looks quite easy).   It was apparent I had to give Zarf's link a shot after all.

I unpacked the tarball file on my Mac and looked at the install instructions. Unix with an ANSI C compiler? Check. POSIX-compliant version of make? Um. I hope so. SYSV-derived curses library? No idea what that means but it's not completely necessary ("Maybe you'd like to experience what it's like to play Adventure on a teletype" = true) so I just half-hoped FreeBSD had a sufficient curses library and moved on. I looked this up later, by the way, and it's got nothing to do with swearing at the parser.

The install instructions then informed me that precompiled Frotz for FreeBSD is available in the ports tree. I already knew that, obviously, but it made me toy once again with just installing all the ports.

But hey, I figured this tarball thing sounded reasonable enough to work, so I burned the tarball to a CD to transfer it to the Fossil (literally the fastest way I have to transfer data to it…no offense meant to floppies and tapes).

I had to learn about mounting CDs in FreeBSD, and edit my first makefile (in vi!). I was feeling quite out of my depth, but when I held my breath and typed "make" in the proper directory, everything went fine. I then installed it, and again, nothing broke.

Now to deal with Zorkifying my Frotz.

I found a download of all the Infocom games in ZCode format, which I am not linking because the copyright for these games might yet be held by Activision. That aside, I'm definitely looking forward to trying A Mind Forever Voyaging, Hitchhiker's Guide, Planetfall, and all the Zork iterations.

There was some more CD-burning and some very tedious copying of games to the Fossil, but before too long (and after some command-line "hunt the verb," a favorite game of every IF player and Unix-terminal newbie), my dear Fossil was telling me I was standing in an open field outside a white house. I played several turns and saved it and so far everything looks totally functional. And I am all kinds of psyched.

My thanks to Zarf and everyone else who posted in that original thread (RealNC, simvig, UnwashedMass, frotz, and ThomasDickey). The interactive fiction crowd is one of the most helpful (and friendly) online communities I've ever seen.


Joey said...

This shows some serious dedication. Hat's off.

Roody said...

Thanks for sharing this story with us at the forum. I thought it was an interesting read.

I hope you get a lot of use out of "the Fossil." It reminds me of some years ago where my only PC was a 386 that a friend gave to me. Not having the option to do much else was a great way to keep my concentration with the games I played. I even wrote my first Hugo program on that thing. I hope you have just as much fun.

Rae Botsford said...

Thanks, Joey!

Roody, that's pretty awesome. Hopefully I don't kill the Fossil while trying to learn something about hardware XD

Joe Barlow said...

I'm late to the party here, but I just found this link on the Intfiction forums, and read all three parts of your Fossil saga. What a great story! You did a great job, and your dedication at getting this old machine to run Zork was equal to my dedication in getting the Babel Fish in Hitchhiker's Guide. Hopefully your score went up by a bunch of points once you got Zork to load. :)


Joe Barlow said...
This comment has been removed by the author.
Rae Botsford said...

Joe - Thank you sir! I'm glad you enjoyed my saga :)