This is my second serious production edition of the Scott Adams game player. It needs curses (or an equivalent - eg pccurses. A non-curses port should be easy too), and an ANSI C compiler. This code has been tested on a SUN3(SunOS 4.1.1) and on a Pyramid 9820 in the att universe. Installation ------------ Type 'make'. You will need a system with curses and an ANSI C compiler (eg gcc). Operation --------- ScottFree reads and executes TRS80 format Scott Adams datafiles. It is possible to run other formats either by writing a loader for that format or a convertor to TRS80 format. Remember the Scott Adams games are still copyright - you need to buy or obtain the games legally for use with this interpreter. Some Scott Adams material is available fairly freely . Dec 1980 Byte contains a game driver and also a program to write a version of Pirate Adventure. A PC-SIG disk contains Adventureland in BASIC with a database in DATA statements. The file 'Definition' in this archive explains the TRS80 format as I believe it exists. Much of this definition comes from P.D.Doherty who provided a lot of information. ScottFree should run all the Scott Adams, Brian Howarth and some other Adventure International games. (Gremlins and Supergran have a compressed action table, Robin Of Sherwood and Seas Of Blood have both a compressed action table and compressed text. Seas Of Blood won't run straight off due to the bizarre Fighting Fantasy (tm) combat system built into it.) Command Options --------------- ScottFree [flags] [save-file] Specifying save-file causes a restore of the save to take place. The flags are -d Debugging info on load -i Generate 'I am' type messages (default) -y Generate 'You are', 'You are carrying' type messages for games that use these instead (eg Robin Of Sherwood) -s Generate authentic Scott Adams driver light messages rather than other driver style ones (Light goes out in %d turns..) -t Generate TRS80 style display (terminal width is 64 characters; a line <-----------------> is displayed after the top stuff; objects have periods after them instead of hyphens Statement Of Copyright/License ------------------------------ This software is supplied subject to the GNU software copyleft (version 2) available from GNU or for FTP from prep.ai.mit.edu. All material in this program was developed by Swansea University Computer Society without disassembly of any other game drivers, only of game databases as permitted by EEC law (for purposes of compatibility). It is your responsibility not to transfer this software to any country where such reverse engineering is not permitted. This software license does not include any rights with regards to the Scott Adams games themselves. These games are copyright and you should obtain them from a legal source. The following information sources were used to produce the game driver: PC-SIG disk of Adventureland: This gives the Adventureland database as well as about 80% of the full interpreter system. The core of the gamedriver was written using this as a reference to the game code. Byte Dec 1980: This contains a good article about Scott and his games, as well as a TRS80 driver and datafile writer for the 'Pirate Adventure' game. This filled in some more answers as well as bits of the TRS80 data format P.D.Doherty: Many thanks go to him for figuring out a load more actions, testing, hunting for games which used unknown actions and for writing a Scott Adams database to readable text convertor. This helped resolve several other actions. Changes 1.14 ------------ o Bit flag 16 support o Lamp behaviour flag '-p' for prehistoric databases which don't use bit 16 o Light out messages don't appear when the lamp is elsewhere. o Automatic get/drop has synonym support. Changes 1.13 ------------ o Darkness is now done like the actual Scott driver seems to do it, using bit flag 15. Fixes problems in The Count o Display problem with 4.4BSD curses fixed (added a wmove() call) o Can't TAKE ALL in a dark room. Changes 1.12a ------------- o Merged in some fixes by Steve Rice (Variables for terminal size, wrong wraparound due to bug in Look(), TRS80 style option) o Updated PC version. Changes 1.12 ------------ o Merged in some fixes by Antoine Sabot-Durand (Redraw in dark rooms, darkness flag testing, Action 74 bug). 'Pirate Adventure' should now work. o Added some comments o Added a makefile o Fixed several missing redraws. Changes 1.11 ------------ o Major bug in file reading routines fixed. This should now read _ALL_ the Scott Adams files without you having to add spaces. o Knows about the use of // in item texts and correctly handles it. o Uses unsigned char for the location of an item so that it correctly behaves like the spectrum editions on wrapping. This makes a lot more of the Brian Howarth material work. o Rewrote the awful OutBuf() function to be a bit neater. o Messed up the neat OutBuf() function by supporting old BSD curses too. Linux people and 386BSD people should now be in luck, as should any old BSD4.x users. o TAKE ALL/DROP ALL. Emulates Brian Howarth driver including the number of moves bug. NOTE:: TAKE ALL/DROP ALL count as one move. In some games that give limited moves for things this makes it easier or enables you to do things you should not be able to. The Brian Howarth games all have this feature and should be fine. o Started work on an Xview version - don't expect it just yet. o Fixed a major cockup in the execution rules for lines. Robin Of Sherwood lets you out of the cell without killing you at last. o Place item -> location failed with some compilers (most), now made portable. o WAIT action refreshes display first o Redraws any pending display changes before the status table o Option flags tidied up. Changes 1.10 ------------ o Action 75 added (dunno how it was missed) o Corrected second Byte year reference Changes 1.9 ----------- o Inventory short cut o Swap room flag/location now fixed. This should make Claymorgue work correctly (ha!). o Corrected Byte reference from 1990 to 1980. Changes 1.8 ----------- o Move location action sets the redraw flag o Driver ignored last line of table (now fixed) o Save/Load implemented. o N,E,S,W,U,D shortcuts added. I will add the item ones once I've loaded a few more fake saves into the genuine Brian Howarth driver to figure out how it works. To Do ----- o Tidy up TAKE ALL/DROP ALL. They match the Spectrum version - which appears to be buggy. Also note that using GET ALL / DROP ALL with older games _MAY_BREAK_THINGS_. Maybe this should be a flagged option.