/* @(#)README 1.9 05/05/05 * * Screen design and original implementation * Copyright (C) 1981, 1982, 1983 - Brad A. Myers * * Current implementation * Copyright (C) 1985-2005 Rich Burridge, Sun Microsystems Inc. * All rights reserved. * * Permission is given to distribute these sources, as long as the * copyright messages are not removed, and no monies are exchanged. * * No responsibility is taken for any errors on inaccuracies inherent * either to the comments or the code of this program, but if reported * to me, then an attempt will be made to fix them. */ Sidtool - README - May - 2005. -------------------------------------------------------------------------- CONTENTS: 1. What is Sidtool? 2. Getting started. 3. Creating a different maze. 4. Sidtool history. 5. Acknowledgements. -------------------------------------------------------------------------- 1. What is Sidtool? ------------------- This is version 4.0.0 of sidtool (a pacman like game). It's the fourth major release of the software. The first two versions were written in SunWindows (1985) and SunView (1987) respectively for Sun workstations. With the third release in 1993, sidtool was converted to use XView and Motif. This fourth release delivers a Gtk+ version. Although the software has only been tested on Suns, I hope it should "just work" on the various flavours of Linux. See the manual pages or the online help for more details of how to play the game. 2. Getting started. ------------------- See the file 'INSTALL' If you need to make changes in order to get sidtool to compile and run on your system, please let me know the details (see email address below), and I will try to include them into a future version. See the TODO file for the list of known problems and ideas for future enhancements. Help to fix and/or implement these changes would be very welcome. Note: This software was developed and tested on a SunBlade 2000 running Solaris 10, and the speed feels correct for this machine. Running sidtool or other machine might require some tuning of the pause routines. Please let me know if you need to change anything. 3. Creating a different maze. ----------------------------- Sidtool has been designed to allow you to specify alternate mazes. You can use this new maze layout with sidtool, with the -maze command line option. The maze layout should be contained in an ASCII file, and conform to the following requirements: * The maze size is fixed at 26 by 28. * The maze is not allowed to have any dead ends. * All boxes in the maze are defined by paths. * The upper left corner of each box is signified by a small s. * Use the letters r,d,l,u to signify the direction to travel around boxes. * Corners must be signified by changing the letter. * The tunnel start must be signified by a capital S. * The exit box must have the opening at the top. * The ghost number 0 must be started directly above this exit. * The exit should be signified by capital R's. * All ghosts except for one must start in the box. * The amount of time spent in the box is specified by the number which shows where the ghost goes. * Small dots in the maze are signified by periods '.'; * Large dots in the maze are signified by asterisks '*'; * Tunnels may be on left and right. * All tunnels must have exits at both sides. * There must be a row around the entire maze defining the border. * All non-tunnel parts of the border must be 'x's * The area in the tunnel in which the ghosts go slowly is defined as the area between the exit and the first non-space character. Thus a '.' causes the ghosts to speed up. The default maze (which is hard-wired in) looks like this: rrrrrrrrrrrrrdxrrrrrrrrrrrrd u............d u....0......d u.sd.srrrrrd.d u.srRRrd.sd.d u*ud.udlllll.rru.u 8d.ud*d u.ul.ud..........u98 d.ud.d u....ud.sd.sd.sd.ulllll.ul.d ulll.ud.ul.ud.ud...........d x u.ud....ud.ud.srrrrrd.dll Srru.ul.rrrud.ud.u dllll.rrx ....ullll.ul.ull.... Srrrrrd..............sd.rrrx dllllll.srrrrrrrd.rd.ud.ulll d.......udlllllll*ud.ud....u d.sd.sd.ud........ud.ud.sd.u d.ud.ul.ud.srrrrd.ud.ul.ud.u d.ud....ud.ulllll.ud....ul.u d.urrrd.ud ud.sd....u d.ullld.urrrrrrrrrud.ud.sd.u d....ud.ulllllllllll.ud.ud.u d.sd.ud..............ud.ud*u d*ud.urd.srrrrrrrrrd.ud.ud.u d.ul.uld.ullllllllll.ul.ul.u d.....ud..... ............u rrrrd.urrrd.srrrrd....srd.ru xllll.ullld.ulll d....ull.uT ......ud....uld.sd..... Srd.srrd.ud.rd..ud.ul.srd.rx x d.ulll.ul.urd.ul....ull.ux x d.........u d....rd.....ux xxrrrrrrrrrruxrrrrrurrrrrrux 4. Sidtool history. ------------------- Sidtool is based on the Perq Interactive debugger program, written by Brad A. Myers when he was at ThreeRivers Inc., back in the early 1980's. At that time it was written in Pascal for the POS operating system. About 1985 I converted it to run under Unix and C on Sun's using SunWindows. This first version of sidtool was actually two programs "talking" to each other via a pipe. One program updated the screen, the other program read input from the mouse and the keyboard. This was required because at that time, SunWindows could not do explicit dispatching of events. The second version of sidtool, was a "port" to SunView in 1987, and the program was modified to use a timer routine and a state machine, which listed all the possible states the program could be in. The graphics were simple, and in fact only used drawing to a graphics canvas. The third version was another "port" to the latest flavour-de-jour in window systems, with the graphics interface being rewritten using Suns' devGuide. It made use of a control panel with buttons, sliders, popup windows, scrolling list, a property sheet and the works. That release contained support for XView and Motif versions. The latest release is a port to the GNOME Gtk+ graphical toolkit. 5. Acknowledgements. -------------------- See the AUTHORS file. ---------------------------------------------------------------------------- Suggestions for further improvement would be most welcome, plus bug reports and comments. Rich Burridge, rich.burridge@Sun.COM