SYSTEM REQUIREMENTS You will need 8MB of RAM. INSTALLATION If you have a binary distribution, no installation is required. See README-mac for information about how to play. If you want to build from sources, keep reading. Note that you will need a development environment such as MPW or CodeWarrior. UNPACKING THE SOURCES If you have just unpacked the general source distribution and transferred it to your Mac, you will need to do some setup in order to be able to compile Mac Xconq. In addition to the general source distribution, you will need the "mac-only" collection of binary files, which is a separate archive. Also, you will most likely want the "lib-mac" and "doc-mac" directories from the binary distribution, in order to use Xconq once you've built it. You can run Xconq without the files in those directories, but you will be missing sounds and some game graphics. * If you're using CodeWarrior, Drag (move) or Option-Drag (copy) these files from the mac directory to the main directory: XconqProj IMFAppProj [MPW no longer supported] * If you're using MPW, you need not move any files around. However, you will need a standard set of "build tools" that the "mpw-configure" script uses, and your {Commands} must include the directory that those tools are found in. The tools include sed, tr-7to8, and other small scripts; they may be found at ftp.cygnus.com, pub/mac/buildtools.sea.hqx. BUILDING For CodeWarrior, select "Make" from the menu. [MPW no longer supported] For MPW, run the script "mpw-configure", then build "Xconq". INSTALLING No installation process is necessary. If you want to move the executable elsewhere, you must also bring along "lib" and "lib-mac", and put them in the same folder as the application. To make documentation in HTML format, use the Perl script texi2html in the "doc" directory. ROAD MAP Other Programs: IMFApp is a utility for examining and converting the image families used by Xconq. Skelconq is a game testing and compilation application that uses console I/O only. Cconq is the curses version of Xconq. Believe it or not, you can build and run the curses version using the "libcurses" library, and it works just fine. (Hey, it's convenient for testing. If you promise not to gag, I might tell you about how I check out X11 code on my Mac...) Files and Folders: Generic sources are in "kernel", Mac-specific code in "mac". Mac Xconq uses all files in "mac" and "kernel" except for "skelconq.c", "cmdline.c", "imf2imf.c", and OS-specific files. Generic test cases and (Unix-based) test machinery are in "test". Documentation in TeX (texinfo) is in "doc". It should be possible to format the documents using OzTeX, but I haven't tried it myself. Game translation tools and suchlike are in "misc". The Perl scripts will run under MacPerl. Sources to the other Xconq interfaces, if present, are in folders like "curses", "x11", and so forth. Unix configuration info is in "config*" files and the "config" directory. Note that "kernel", "lib", "test", "doc", and "misc" are identical on all systems, so don't put anything in them (such as binary files) that can't be included everywhere. Since "mac" is a source directory, it should not have binary or resource files either, not even in binhexed form (they mess up diffs and patches). Use "lib-mac", "doc-mac", or "mac-only" for Mac-only files. CODEWARRIOR PROJECT To rebuild the CodeWarrior project from scratch, it is no longer necessary to worry about segment divisions when adding files. Create a new project, then add every C file in the "kernel" folder except for "cmdline.c", "imf2imf.c", and "skelconq.c", and every C file in the "mac" folder except for "mactextldef.c". The settings may generally be left at the factory values, but the application creator should be 'XCNQ' and it should get a minimum of 4000K, with a preference for 10000K (or more). Checking of function prototypes may or may not work for you, depending on the version and quality of your Mac headers. You should have a prefix file with a "#define MAC". Anything else will depend on your specific version of CW and Mac headers; I have to define OLDROUTINENAMES and NEW_HEADERS, and include , for instance.