home *** CD-ROM | disk | FTP | other *** search
/ Otherware / Otherware_1_SB_Development.iso / amiga / games / zmachine.lha / doc / zmachine.doc < prev    next >
Encoding:
Text File  |  1992-05-18  |  9.2 KB  |  275 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.                          ZMachine   1.0.0
  11.  
  12.             A ZIL Interpreter for the Commodore Amiga
  13.  
  14.                             Kent Dalton
  15.  
  16.            Ported from the original UNIX version written by
  17.                           leo@marco.UUCP  
  18.  
  19.                 Amiga Port Copyright 1992 by Kent Dalton
  20.  
  21.   Read "Copying" section of this manual for redistribution information.
  22.  
  23.  
  24.  
  25.  
  26.  
  27. 1.    Introduction
  28.  
  29. ZMachine is a program which can interpret "Zork Implementation
  30. Language" (ZIL) data files.  ZIL is the language used by the
  31. interactive fiction series of games from Infocom, Inc.  (a subsidiary
  32. of Activision/MediaGenic).  Interactive Fiction and Interactive This
  33. program does not incorporate any code from Infocom software and is not
  34. associated with or a product of Infocom, Inc.  All game names mentioned
  35. in this document are trademarks of Infocom.  
  36.  
  37. ZMachine can interpret normal interactive fiction data files. It is not
  38. compatible with interactive fiction plus (games with graphics, i.e.
  39. Beyond Zork, Zork Zero, etc). This program has a number of excellent 
  40. features not available in the software from Infocom and has some
  41. customizations for the Amiga environment also. (For more information
  42. see the ``Features'' section of this document)
  43.  
  44. This version of ZMachine was ported from a UNIX version. It was ported
  45. using a PD termcap library and GCC 2.1. It also requires GCC's
  46. ixemul.library V39 or greater (V39.26 of which is included in the archive). 
  47. ({\em Many} thanks to Markus Wild
  48. for porting GCC to the Amiga and writing the ixemul.library! Great Job
  49. Markus!). 
  50.  
  51. This program comes with no warranty express or implied.  Use at your
  52. own risk.
  53.  
  54.  
  55. 2.    Copying
  56.  
  57. The Amiga version of this program is Copyright Oc 1992 by Kent Dalton.
  58. Non-commercial redistribution of the program is allowed provided all
  59. files are included in the distribution in unmodified form.  Public
  60. Domain and Freely Distributable libraries may change handling,
  61. shipping, and copying fee charges to distribute the program provided
  62. the above condition is met.  I will consider honoring E-Mail requests
  63. (see "Bug Reports" section for E-Mail address) for source code for this
  64. Amiga version.  I will only distribute source to the the Amiga version
  65. however, since the original UNIX version is available via anonymous FTP.
  66.  
  67.  
  68. 3.    Features
  69.  
  70. This program provides a number of features not available in the Infocom
  71. ZIL interpreter:
  72.  
  73.  
  74.       o  Support for workbench screens larger than the default NTSC
  75.          hires (640x200) via the termcap enviroment variable.
  76.  
  77.       o  Command history via the arrow keys.
  78.  
  79.       o  Emacs-like command line editing.
  80.  
  81.       o  Support of the Amiga clip board for cutting and pasting text.
  82.  
  83.       o  Support for automatic location of game files for hard disk users
  84.  
  85.       o  Ability to use Interactive Fiction files from other computers.
  86.          (i.e. IBM, Atari ST, etc). For example, I transferred the Atari
  87.          ST version of `Leather Goddesses of Phobos' to my machine with
  88.          MSH and use it on the Amiga. This way, you can track down IBM
  89.          or ST (maybe mac too) versions of some of the classics that
  90.          aren't available in the Lost Treasures collection.
  91.  
  92.  
  93. 4.    System  Requirements
  94.  
  95. ZMachine was ported using an Amiga 3000 with 6Mb RAM and AmigaOS 2.04.
  96. I do not know if it works with AmigaOS 1.3.  If it does not, no effort
  97. will be made to port it to 1.3 (see "Copying" section for info on how
  98. to obtain source code.). 
  99.  
  100. All Motorola CPU's are supported.
  101.  
  102. The amount of memory used is detrmined by the game being played.  The
  103. average seems to be on the order of 256K.
  104.  
  105.  
  106. 5.    Installation
  107.  
  108.      1.  Copy termcap file to S: directory.
  109.  
  110.  
  111.      2.  Set TERM environment variable for proper screen type i.e.  
  112.          setenv  TERM  amigalace.
  113.          You'll probably want to add this to your user-startup 
  114.          (or startup-sequence) file.
  115.          Look at the file `termcap' for the names of the different screen
  116.          resolutions supported. ( The co# and li# fields tell the
  117.          number of columns and lines for that terminal type. I edited
  118.          the amigalace entry to do 75 columns instead of 80 so zmachine
  119.          won't word wrap, you may wish to do the same.) Also, If you have
  120.          a UNIX box, you might want to do a `man 5 termcap' to get more
  121.          information on how to set-up your own custom terminal types.
  122.  
  123.      3.  Copy ixemul.library from the libs directory to LIBS:
  124.  
  125.      4.  If  you  are  using  a  68000  or  68010  CPU  you'll  probably
  126.          want  to  copy  zmachine.68k over zmachine since `zmachine' is
  127.          the 68020+ version.
  128.  
  129.      5.  If your termcap entry is smaller than 640x400 (amigalace) you'll
  130.          also want to edit the dimensions of the WINDOW= tool type for the
  131.          zmachine.info file
  132.          (this controls the size of the window popped by zmachine (and the
  133.          `iconified' window size also.))
  134.  
  135.       Hard  Disk  Users  Note:
  136.  
  137. If you are using a hard disk you may want to assign LTOI: to the
  138. directory where your infocom games are located.
  139.  
  140.       ZMachine assumes a directory structure of:
  141.  
  142.                  LTOI:  ->GameName1->Story.Data
  143.                         ->GameName2->Story.Data
  144.                             .
  145.  
  146.                             .
  147.  
  148.                             .
  149.  
  150.                          ->GameNameN->Story.Data
  151.  
  152.       when using this directory structure, ZMachine will be able to
  153. automatically locate the main data file for the game you wish to play
  154. and automatically place and retrieve game save files from the directory
  155. of that specific game as well.
  156.  
  157.       You'll probably want to rename the Zork 1-3 data files to
  158. Story.Data as well. They work properly with ZMachine, Infocom just
  159. named them differently.
  160.  
  161.       I recommend copying zmachine and zmachine.info to LTOI: as well.
  162.  
  163.  
  164. 6.    Running  ZMachine
  165.  
  166.  
  167. 6.1.    From  Workbench
  168.  
  169. An icon will be opened and zmachine will prompt you for a game name.
  170. If you have not assigned LTOI: to adirectory, you must type in the full
  171. name of the file you wish to run.  If you are you using zmachine with
  172. the LTOI: assign and directory structure mentioned in the Hard Disk
  173. Installation notes above, you can just type the name of the games
  174. directory that you wish to play.  For example: if you type `moonmist',
  175. ZMachine will attempt to open: LTOI:moonmist/Story.Data as the game
  176. file.  From then on, the default SAVE/RESTORE path will
  177. be LTOI:moonmist, this way, you don't get a whole bunch of files mixed
  178. up in your LTOI: directory.
  179.  
  180.  
  181.  
  182. 6.2.    From  CLI
  183.  
  184. This startup works just like the UNIX version.  Here is the usage
  185. information from that version straight from the doc file:
  186.  
  187.  
  188. Usage:  zmachine  [-p  protocolfile]  [-w  protocol  linewith]
  189.         [-s  storyfile]  [-r  restorefile]  [<storyfile>.dat]
  190.         [<restorefile>.sav]
  191.  
  192. -p protocolfile     : send output after script command to protocolfile
  193. -w protocol linewith: set protocol linewith to linewith
  194. -s storyfile        : use storyfile (only necessary if storyfile ends
  195.                       not with .dat)
  196. -r restorefile      : restore savefile restorefile before starting game
  197.                       (only necessary if restorefile ends not with .sav)
  198. <storyfile>.dat     : use storyfile.dat
  199. <restorefile>.sav   : restore restorefile.dat
  200.  
  201. If you call zmachine without arguments, it trys to open the file
  202. Story.Data on the current working directory. 
  203.  
  204.       Notice the default file extensions.  Zmachine checks and enforces
  205. these (case-sensitively) when started from CLI.  If lots of people are
  206. bothered by this, I can change it.
  207.  
  208.  
  209. 7.    Command  Editing
  210.  
  211.  
  212. Editing Keys:
  213.  
  214. Cursor left              :      ^B (also Left-Arrow on Amiga)
  215. Cursor right             :      ^F (also Right-Arrow on Amiga)
  216. Up in history            :      ^P (also Up-Arrow on Amiga)
  217. Down in history          :      ^N (also Down-Arrow on Amiga)
  218. Delete left              :      0x7f, 0x08 (also BackSpace and Del on Amiga)
  219. Delete right             :      ^D 
  220. Start of line            :      ^A
  221. End of line              :      ^E
  222. Kill to end of line      :      ^K
  223. Kill to start of line    :      ^X
  224. Program function key     :      ^I (TAB)
  225. Undo                     :      ^Y
  226. Function key 0-9         :      ^X0 -- ^X9
  227.  
  228.       Disclaimer:  I have not tried the function key stuff yet.
  229.  
  230.  
  231.  
  232. Using the Clipboard:
  233.  
  234.      1.  Select text with mouse
  235.  
  236.      2.  Hit Amiga-C to Cut text
  237.  
  238.      3.  Hit Amiga-V to paste text at cursor position
  239.  
  240.  
  241.  
  242.  
  243. 8.    Caveats  and  Known  Bugs
  244.  
  245. Lurking Horror will hang when it tries to do the Amiga sound stuff.  Do
  246. not use this program with the Amiga version of Lurking Horror (you can
  247. use it with versions of Lurking Horror from other computers' versions
  248. which do not do sound, I've used it with the Atari ST version for
  249. example.)
  250.  
  251. ZMachine save game files are incompatible with game save files created
  252. by the Infocom ZIL interpreter and vice versa.
  253.  
  254.  
  255. 9.    Reporting  Bugs,  Comments,  and  Questions
  256.  
  257. I have tested this program with most of the non-plus interactive
  258. fiction games from Lost Treasures and several others from other
  259. computers and they have all worked great so far.  Let me know if you
  260. find any that do not.
  261.  
  262. Feel free to send Bug reports, comments, or questions to me via
  263. E-Mail:
  264.  
  265.  
  266. Kent.Dalton@FtCollinsCO.NCR.com
  267.  
  268.  
  269. I will try to respond as time allows.
  270.  
  271. I hope you enjoy this program!  I use it for all of my interactive
  272. fiction now!
  273.  
  274.  
  275.