Pilot-Frotz: ============ Written by Paul Margrave 1998-1999. Contact: alien_hunter@hotmail.com WWW: http://www.geocities.com/SiliconValley/Way/2367 Based on the Frotz 2.32 code base by Stefan Jokisch 1995-1997. Pilot-Frotz may be used in any way, for any purpose, at no cost. It may be distributed by any means, provided that the original files as supplied by the author remain intact and that no charge is made other than for reasonable distribution costs. DISCLAIMER OF WARRANTY: ----------------------- THIS SOFTWARE AND DOCUMENTATION ARE PROVIDED "AS IS" AND WITHOUT WARRANTIES AS TO PERFORMANCE OF MERCHANTABILITY OR ANY OTHER WARRANTIES WHETHER EXPRESSED OR IMPLIED. BECAUSE OF THE VARIOUS HARDWARE AND SOFTWARE ENVIRONMENTS INTO WHICH THIS PROGRAM MAY BE PUT, NO WARRANTY OF FITNESS FOR PARTICULAR PURPOSE IS OFFERED. THE USER MUST ASSUME THE ENTIRE RISK OF USING THE PROGRAM. Any product or brand names mentioned in this document are trademarks or registered trademarks of their respective owners. Whats New? ========== V 1.00 R6 * Fixed tapping invisible words under status window. * Scrolling input line now works. * Fixed multiple line input field when using full field editing. * Fixed hyphenated tapping when full field editing. * Fixed dynamic memory size being wrong in the list when greater than 32K. * Fixed game save crashing from trying to save more than 32K files. * Added user defined word list. From within the game drag select some text and then use the User List menu entries to add and remove text from the list. It is saved automatically and can have up to 32 entries or 256 characters which ever comes first. * Added automatic carriage return in the word list, user list and compass rose. It treats a period as a carriage return. Remember you can add a period to text in the user list and it will auto carriage return when selected. * Added 'Are You Sure?' to the force quit menu item. V 1.00 R5 * Added sort options for the game list, sort by Title, Size and Dynamic. * Added sort options for save game list, sort by Game and Newer. * Removed the text output speed options. * Rewritten the Virtual memory system. It runs alot and I mean alot faster. It's now even usable with UNDO. * Shrunk the fixed width font and it's user selectable between 9 pixel and 7 pixel heights, this gives up to 22 lines on screen. * Status windows are now internally 80 columns wide, so they are scrollable. Just tap in the status window to scroll it horizontally. * Reduced the memory overhead per word in the scroll back buffer by a few bytes. Helps with memory problems. * Fixed the scroll back not working with status lines greter than 1 line high. * Hopefully this version is much more stable as regards memory crashes. Error trapping is more robust and alert boxes should indicate what is wrong. The database handling is better at working out exact record sizes required. * Auto save and load has been rewritten to now keep the exact screen layout. * Added a bold font as default for those of you with bad eyesight. * When deleting a game you are given the option to delete all of it's saves. V 1.00 R4 * Added field editing for the interpreters text line input. It now allows you to cursor left/right and tap to set the insertion point. * Added a new option which allows a proper field to be displayed for text line input. This means text editing 'hacks', popup keyboards will work with it. * Added an endian define in the 'Z2PDB' source. If you are recompiling 'Z2PDB' make sure that the endian is correctly defined. V 1.00 R3 * Added menu to the interpreter to force a quit while running a game. * Now allow more graffiti characters to be entered. Has the full range of ascii characters from 32 to 127. * Due to popular request I have added a scroll back buffer. Enable it in the 'Preferences' dialog and then you can use the page up/page down hard buttons on the Pilot to scroll back and obviously words can be tapped during scroll back. * Hit the 32K code limit with optomisations O2 so have now gone for O3 and greater than 32K, may have beter performance? * Adjusted the 'Z2PDB' source for GNU compatability and a Linux version of 'Z2PDB' is included in the archive. * When '' appears, tapping on the screen continues instead of bringing up the popup lists. V 1.00 R2 * After getting some emails about supporting Pilot-Zip format game files I have now added this to Frotz. Because of this change, the type ID has been changed from 'GAME' to 'ZCOD' this is more inline with ZIP format game files which have a type ID of 'Zcod'. This does mean that you will have to reconvert your game files with the new 'Z2PDB' program. Sorry about this little bit of hassle. * Fixed the bug in the compass rose popup that caused 'Climb' and 'Again' to be printed instead of 'Enter' and 'Exit'. * Fixed the 'Terpetude' game file not working. V 1.00 R1 First release. What is it? =========== Pilot-Frotz is a freeware version of Frotz, the most popular Infocom/Inform text adventure interpreter for the Z-Machine. It plays games of version Z1 to Z8, such as the old Infocom adventures 'Hitchhikers', 'Zork' and the new Inform games, but not version Z6, as this version contains graphics. To obtain games to run on Frotz check out 'FTP.GMD.DE:IF-ARCHIVE' or another mirror of the Interactive Fiction Archive. Infocom games are still under copyright and should not be available for download. Don't ask me for them either. You need to own a copy of the original game to legally be allowed to play it on the Pilot. Please, dont email me on getting game files, just do an internet search for 'Interactive Fiction' and lots of info will be spewed forth. Features: ========= * Compatible with the Z-Spec version 1.0. But no graphics/sound. Runs 'Terpetude' accurately for testing. 'Terpetude' is provided in this archive. * Reads game files created for Pilot-ZIP. * Correct font display of normal, bold, reverse, underlined/italic, proportional and a 40 column fixed width micro font of my own design in two heights. * Text input through the interpreters text line input, which works in different fonts, or a proper field that works with 'hacks' and keyboards. * Scroll back buffer to see pages that have scrolled past. * User list for your often used words. * Single key timed input works for games that use it. * Line timed input works for games that use it. * Undo is supported for those games that can use it. * Auto save/load. Compressed game saves with complete game listings. * Virtual memory for small memory Pilots. Requirements: ============= * Palm III or Pilot running OS 2.0 or greater. * Enough memory to load the game PDB and Virtual memory file, if being used. The more free memory you have the better. * A Z-Code game file converted to PDB format using 'Z2PDB'. Which is supplied in this package as a Win95 command line executable and as a source file for those with different operating systems. * Lots of time to play... Installing: =========== The Pilot-Frotz.prc file and any game files converted to PDB format should be loaded onto your device. To convert Z-Code files into PDB's you must use 'Z2PDB' as follows: Z2PDB "TITLE TO CALL IT" You just supply the output PDB filename the input Z-Code filename and the title to call it. The title must be in quotes if it contains spaces. If you have an old Infocom game then it is the '.dat' file you are interested in converting. If you have a different OS from Windows 95/98 then the source is present for 'Z2PDB' to be recompiled. Check the endian format and change the #define for your OS. Running: ======== Once the desired files are on your device run Frotz from your App launcher. The opening screen should list all Z-Code games loaded with their size and version marked with a little icon. To play a game, just tap on one and then tap 'Play'. To delete a game file from your device, tap on one and then tap on 'Delete', answer 'Yes' to the 'Are you sure?' alert box and its gone. The drop down list allows you to sort the game list by Title, File size and Dynamic ram requirements. There are two drop down menus available, 'File' and 'Options'. File -> About Frotz ------------------- This just tells you the current version and gives information on contacting me. Options -> Delete Game Saves ---------------------------- This will bring up a list of all the game saves on your device for all the different games. They are listed with the save name, the game they are for and the size in bytes they take up. They are deleted in the same way games are. You can sort the list by Game or Newer. Options -> Preferences ---------------------- This page allows you to set options on how Frotz runs a game, the options are as follows: * Font size Select between a 9 pixel or a 7 pixel high font, this gives up to 22 lines for inbuilt menu's in some games. * Bold style This puts the default font into bold. * Auto MORE When enabled the '' prompts will not appear. * UNDO When enabled, games that can use the 'UNDO' command will have one undo position available. * Scrollback When enabled this will allow the page up/page down hard buttons on the Pilot to scroll back over text that has gone off the top of the screen. You can do this to find words to tap on to speed up entry. Just set the number of pages you require from 1 to 9, 9 pages being around 100 lines. * Full field editing With this enabled you will get a proper field for entering lines of text. Hackmaster 'hacks' for text editing will work with this field and you can use the popup keyboard as well. * Virtual memory This will run the game file in virtual memory, freeing up main ram for the scroll back buffer. See the Memory section for more details. Interacting with a game: ======================== I am presuming that if you know what Frotz is for then you have a basic understanding of how to interact with the game being played. There are a couple of differences, as the Pilot has no keyboard. * You can write words using Graffiti input as normal. The characters in the range of ascii 32 to 127 can be input. To complete you input use the carriage return graffite stroke. * Enable 'Full field editing' and use the popup keyboard and Hackmaster 'hacks'. * You can tap on a displayed word and it will type itself in. You can scroll back over text and tap on a word also if the scroll back buffer is enabled. * You can tap on an empty part of the screen and a popup will appear containing the most common actions in text adventures. Tap on the left of centre and a compass rose will appear, tap on the right of centre and a word list will appear. * You can scroll the status window by tapping it. To save and load a game in progress use 'SAVE' and 'RESTORE'. To quit the game and return to the game list use 'QUIT'. If you tap the App launcher button or switch to another application your position will be saved in an auto save position, which will automatically load next time Frotz is run. During a game there are two menus available, 'File' and 'User List'. File -> Force Quit ------------------ This will quit the current game and go back to the game list. Just answer 'Yes' to the 'Are you sure?' prompt. User List -> Add ---------------- Drag select some text in the input line, then selecting this will add the desired text to the user list. User List -> Remove ------------------- Selecting this will bring up the user list, just tap on a an entry to removw it from the user list. If you change your mind just tap outside of the list box. Limitations: ============ Because of some emails I have received saying that 'so and so' game does not work I have added this little section to explain why. * Some games with inbuilt menu systems assume that they have more lines on the screen than Pilot-Frotz has and then print menu items off the bottom of the screen. * Most 'abuses of the z-machine' will probably not work. 'Rogue' for example. These games usually expect larger displays and more varied font displays. These problems are not really Frotz's. They lie in the actual game file. If you are writing an Inform program try and make it 'small screen' friendly, even if you just check the dimensions and error out if too small. Other points: * Text input through the interpreter does not usually use a proper field, this enables it to work with different font properties. You can enable a proper field at the expense of a line of display if you wish to use a popup keyboard. Memory problems: ================ The main problem area for new users is free memory and how Pilot-Frotz uses it. The things to be aware of are: * Free application memory: This is where games, save positions and Pilot-Frotz itself are stored. If you are using virtual memory, then the VM file is saved here as well. During an auto save/load the game state is stored along with the current game save in this area. * Free program memory: This is the ram that a program uses while it is running. Pilot-Frotz stores the Z-Machine stack, the status window buffers and the scroll back buffers here. The more pages of scroll back you want the more ram is eaten up, ~1k per page. Pilot- Frotz also leaves around 4k free for hacks, keyboards and alarms to operate in. On the preferences screen there are two entries, 'bytes free' and 'bytes max' this is an indication of how much free program memory is available for Pilot-Frotz to use. When listing the games, change the sort to 'Dynamic' and the list will now show the dynamic ram requirements of each game. If this value is greater than 'max free' then the game must be run in virtual memory. If it is less but you want a lot of scroll back pages then again you should run it in virtual memory leaving program memory free for the scroll back. If you get a 'LOW MEMORY' window popping up during the game then this means that the scroll back has run out of program memory, reduce or disable the scroll back buffer or enable the virtual memory. Tips: ===== * To run Pilot-Frotz in different memory configurations you should start with the following settings: * 'bytes max' is less than 20000 bytes. Scroll back disabled and virtual memory enabled. This mode will require free application memory for the VM file. * 'bytes max' is between 20000 to 40000 bytes. Scroll back enabled with 1 - 4 pages and virtual memory enabled. This mode will require free application memory for the VM file. * 'bytes max' is greater than 40000 bytes. Scroll back enabled with 5 - 9 pages and virtual memory disabled. If you have around 60k 'max free' then you should be able to run a game that requires 30k dynamic ram and have 9 pages of scroll back active. * The above settings are approximate and based on a game that has a 20k dynamic ram requirement. * If you are using PalmOS 2.0 then application memory fragmentation is a problem when your Pilot is full. Try using one of the defrag programs to help with this. * Disable unused 'Hackmaster' and 'Trapweaver' hacks to free up program memory.