[comp.sys.tandy] Transferring InfoCom Games To TRS-80's!!!

7gmadiso@pomona.bitnet.UUCP (04/06/87)

HOW TO CONVERT INFOCOM ADVENTURES TO TRS-80
By John Fowler (GEnie address = J.FOWLER)
January 1, 1987

INTRO

      In 1986 Infocom announced that it would drop support of
the TRS-80 Models III and 4.  While this came as somewhat less
than a shock (I guess TRS-80 users must be getting used to
it), it was a major inconvenience to Infocom players.  Now, to
play Infocom adventures, one would either have to visit a
friend of buy a computer that is supported.

      I don't accept either of these solutions.  After some
research and a couple of lucky coincidences, I found a way to
transfer Leather Goddesses of Phobos from an IBM PCjr to my
TRS-80 Model III.  The technique I used should work on all
normal Infocom adventures (but are there REALLY any NORMAL
Infocom adventures?) at least until Infocom decides to change
its data file format (which hopefully won't be for a while).
While this file is written to explain how to transfer to a
TRS-80, it may also work with other orphaned computers for
which Infocom had previously manufactured.  It all depends on
whether you have a visible driver program.  At any rate, read
on, and if you wish to modify this file for your own computer,
feel free to do so.

STRUCTURE

      Before I get on to the method of transferrance, let me
talk a little about the structure of Infocom adventures.  In
other words, how does Infocom make its games so quickly for so
many different computers at once?

      Infocom authors always begin by writing their adventures
for a "virtual machine," that is, a machine that does not
exist in reality.  I will refer to the code generated for the
virtual machine as the data file.  This data file is then
transfered to the disk formats of the computers being
supported.

      Of course, the computers can't understand a word of the
data file in itself.  So the authors make for each machine a
"driver program," designed to interpret the data file and
translate it to the machine on which the adventure is to be
used.  The authors only have to make this driver file once, as
long as they don't want to change virtual machines.  So, to
make a new adventure, all they have to do is transfer the data
file to a disk format and the driver program to the same disk.

      The method presented here is based on the fact that the
data file, with a few exceptions, is always the same file, no
matter which computer format it is on.  Only the driver
programs vary from computer to computer.  So, if one has the
driver program for a now-abandoned computer, and one finds a
way to copy the data file over, one then has a version for his
or her computer!

TRANSFERRING TO MODEL III/4

      Model I users please be patient.  I'll get to you soon
enough.  Read this section, however, because some of it
applies to you.

      The first thing one needs to run an adventure off the
Model III or 4 (III mode only) is the driver program.  Because
the driver for these computers is the same on all TRS-80
Infocom adventures, any of them will do.  The driver program
is recognized by a /CMD extension on the name.  For example,
the driver for Hitchhiker's Guide to the Galaxy is
HITCHHIK/CMD (and the data file is HITCHHIK/DAT, but we'll
worry about that later).  Transfer this driver to a blank,
newly-formatted diskette, which may have a bare DOS on it as
well.

      This driver program knows which data file it is looking
for by checking its own name, then sticking /DAT on it.  So
you will need to rename the driver to whichever game you are
planning to transfer.  For example, on Leather Goddesses of
Phobos, you should rename your /CMD file to LEATHER/CMD.

      Now comes the hard part.  You need to find a disk format
where the data file is easy to get at and transfer.
Fortunately, Infocom is starting to take the copy protection
off its games, so that the data files are visible from the
directory and accessible by normal methods.  The IBM version
of LGOP is an example of a non-copy-protected disk with a
visible, accessible data file (named LEATHER.DAT).

      After you buy (yes: BUY; see A NOTE ON PIRATING) this
version, you will need to transfer it from the foreign disk
format to your own.  Hypercross or SuperCross/XT may do the
trick, or even TRSCROSS if you happen to have an IBM handy.
However, if you don't like buying software-translation
programs and don't know how to do it yourself, you can use an
RS-232 link between a friend's computer and your TRS-80.  Name
the file the same as your driver program except a /DAT
extension.  At 1200 baud, it usually takes 20-30 minutes to
transfer the data file, meaning 80-120 minutes at 300 baud or
10-15 minutes at 2400.  If you have a null modem and the
computers right next to each other, you should use 9600, which
means the file will be transfered in less than five minutes.
19,200 baud rarely works out.

      Once you have the /CMD and /DAT files, you're almost
set.  But wait, there's one more thing.  As a form of
primitive copy protection, the /DAT file must have a password
on it or the program will bomb out.  This password is "SMC."
An example command under TRSDOS 1.3 to assign this password to
LGOP would be:

ATTRIB LEATHER/DAT (ACC=SMC,UPD=SMC,PROT=EXEC)

Do NOT put the password on the driver program.

      Now type the filename of the driver program to execute.
Tah dah!  A program in TRS-80 Model III/4 format!

      One note: to the best of my knowledge this will not work
on Infocom's "Interactive Fiction Plus" stories, even if you
have 128K!  Infocom's decision to drop the TRS-80 series came
before A Mind Forever Voyaging, so a TRS-80 Plus driver was
never made.  You can write a nasty letter to Infocom if you
like, but I doubt it will do any good.  Or, if you want a
challenge (and I am talking CHALLENGE), you can try to make a
Plus driver yourself.  Don't get your hopes up on getting any
help from Infocom, though.

TRANSFERRING TO MODEL I

      To play the Infocom games not specifically for the
Model I, you MUST have either a double-density modification or
a hard drive.  The reason for this is that Infocom data files
are greater in length than 125K, while SSSD 35-track disk
drives hold less than 90K (and no, you can't split the data
file into two portions and stick them on different drives,
unless you also want a CHALLENGE).

      Because Model I Infocom data files are different from
other kinds of data files, you will need a new driver.  You
should copy one from a Model III version, and then apply a few
patches.  Not having a Model I, I cannot test these patches
myself.  They are only certified to work under Newdos/80
version 2.0, however, and I make no guarantees or offers of
further support.

      First, get the driver program from a Model III version.
If you don't have a double-density adapter, you will need
access to a Model III or 4.  Again, you can either use an
RS-232 link or Super Utility Plus to get the file to one of
your own floppies (this one is less than 90K, so it's okay).
Now apply the following patches, taken by combining Northern
Bytes Volume 6 Number 8 and Volume 7 Number 3.  Using a zap
program (like Super Utility Plus or SUPERZAP), change all
occurences of (hex) '21 25 42' to '21 18 43'.  Also, in the
first sector, find '11 44' and change to '49 40'.

      Now you need to get the data file and put the SMC
password on it as described before.  If you don't have
double-density or 80-track drives, you'll need to put this
data file on a hard disk, which I know has been done, but I
can't offer any specifics.  If you can, make the hard drive
the master drive and transfer the driver program there as
well.  I'm afraid that without any experience on Model I's or
hard drives myself, I cannot offer any more help than this.

A NOTE ON PIRATING

      Infocom has a copyright on its data file as well as its
driver program.  This means that it is illegal to copy it even
to another disk format on another computer, unless you own the
supported copy to begin with.  You might think Infocom
deserves to have its copies pirated for dropping the TRS-80 in
the first place, but before you pirate, remember this: Infocom
has the right to change its data file format at any time.
If you buy the supported copy, that makes Infocom happy
because they make moeny without the expenses of supporting
your computer system, so they are likely to keep the data file
format around.  However, if they suspect that anybody is
taking advantage of their data file format by simply grabbing
a friend's data file, they could easily change the format
permanently, meaning that the TRS-80 would be almost
hopelessly abandoned once again.  If you like Infocom games,
then Infocom should deserve your financial support.  You might
even want to write a thank-you note on your registration card
for keeping the standard data file format.  Go ahead, buy the
thing!

CREDITS

Leather Goddesses of Phobos and Interactive Fiction Plus are
trademarks of Infocom, Inc.  The Hitchhiker's Guide to the
Galaxy is a trademark of Douglas Adams.  TRS-80 and TRSDOS are
registered trademarks of Tandy Corporation.  GEnie is a
trademark of General Electric Information Services Company.
Northern Bytes is available from The Alternate Source (back
issues $2.00 Volume 5 Number 1 through Volume 7 Number 2,
$4.00 Volume 7 Number 3 and up).  Newdos/80 is a trademark of
Apparat, Inc.  How many of these people do you think would
have actually sued me if I hadn't credited them?  Probably
none, but I like to stay on the safe side anyway.  By the way,
feel free to distribute this file to anyone in any way.  This
file is in the public domain.  Getting tired of this yet?
Okay, I'll stop.