hg strip 3aed4bc01244 on your local copy
Readme for the RTTB system - this is not a full function listing, for that read help.html This file will get you started and will be updated with late breaking news. 1) Library and tools descriptions 2) How to use makerttb 3) How to use vrttb 4) Brief description of how to use librttb 5) Compiling the sources 6) Dependencies 7) References & contacts 8) Legal bumpf 1) Library and tools descriptions --------------------------------- RTTB stands for RunTime TarBall, a bastardized way of looking at tar files in UNIX, RTTB is my own, very simple file format which allows developers, especially games developers to group many files into one file and read them from this one uncpmressed file at run-time. It aims to be fast. makerttb - Creates a container file from all your resource files. vrttb - Verifies a countainer's integrity. 2) How to use makerttb ---------------------- makerttb Creates a container from as many files as you like. Type makerttb <groupfile> <sources...> @response. On systems such as DOS, the length of a file is limited, therefore response files are supported, they are used like this: dir /b *.pcx > list where 'list' would then become a list, line by line of all the pcx files in the directory. Then to group the pcx files you would use: makerttb pcxgroup @list You may have as many response files on the command line as you want, and mix them in with normal filename. The first parameter, the name of the group, may not be a responsefile. Generally you will use makerttb from within your program's makefile, like this: GROUP=art.rttb ART=sprite0.spr sprite1.spr level1.map level2.map $(GROUP) : $(ART) makerttb $(GROUP) $(ART) Then add to your clean section: erase $(GROUP) or rm -f $(GROUP) 3) How to use vrttb ------------------- vrttb <groupfile> Verifies a container file is valid, lists all the header information, such as number of files container, filenames, checksums, and tests the files' integrities against those checksums. 4) Brief description of how to use librttb ------------------------------------------ Assuming you have already built librttb.a or rttb.lib or have the binary release rather than the sources. you should start using the library by following these instructions. Firstly, if you are using Win32, you will have rttb.lib for Microsoft Visual C++, or rttb.lib for Borland C++, or another library format your compiler has produced. On UNIX you will not have this, your library will be called librttb.a To link: Add the library to the library sections in your makefiles or add onto the link command for your programs. Add the path to rttb.h to the include sections or -I source compilation sections. It should look a little like this, this would be under Borland C++: RTTBPATH=rttb\lib LIBS=blah.lib $(RTTBPATH)\rttb.lib OBJECTS=blah.obj yourprogram.exe : $(OBJECTS) $(LIBS) bcc32 -eyourprogram.exe $(OBJECTS) $(LIBS) blah.obj : blah.c blah.h $(RTTBPATH)\rttb.h bcc32 -I$(RTTBPATH) blah.c blah.c for example, would then #include "rttb.h" See help.html for a complete function listing and getting started examples. 5) Compiling the sources ------------------------ Under UNIX. The distribution comes with a UNIX configure script which you can run and then build the sources. The typical sequence is as follows. ./configure make make check make install Make check is optional but recommended. Make install must be done as root. Under Borland C++ for Win32. You will _need_ Cygwin or Services for UNIX installed so that you can run the configure script. These are part of any serious developer's toolkit anyway. For Cygwin, visit the World Wide Web at: http://www.cygwin.com/ For Services for UNIX, visit the World Wide Web at: http://www.microsoft.com/windowsserversystem/sfu/ Once you have installed and set up either one of these, from the bash shell type: ./configure --enable-win32 in the rttb main source directory. You may now either build the library for the POSIX layer with GCC or you can run ./scripts/borlandify.sh (or scripts\borlandify.bat) (you will need Perl to do this). borlandify is a script specifically for RTTB which will process the output of the configure script to make it compatible with the Borland compiler and make program. If you need Perl, you can get it from any one of these places: http://www.cpan.org/ports/#win32 http://www.activestate.com/Perl.plex?hdr=1 From Borland C++, type: make -f Makefile.bor Makefile.bor is a simple makefile which defines HAVE_CONFIG_H and compiles the sources. It does not do anything fancy, like making shared libraries. If you want more, you will probably have to use Borland's IDE. Don't forget to define HAVE_CONFIG_H globally. 6) Dependencies --------------- If you are using the Makefile.bor files, they rely on scripts from the Daybo Logic scripts package. It will look for these in %CommonProgramFiles%\Daybo Logic\scripts. The Daybo Logic scripts package is available from: http://www.daybologic.co.uk/dev/dlscripts/ 7) References & contacts ------------------------ Daybo Logic web site: http://www.daybologic.co.uk/ RTTB website: http://www.daybologic.co.uk/dev/rttb Initial developer / maintainer: David Duncan Ross Palmer [http://www.daybologic.co.uk/mailddrp/] 8) Legal bumpf -------------- RTTB is (C)Copyright 2000-2006, David Duncan Ross Palmer, Daybo Logic. RTTB is supplied under a BSD-style license. See COPYING for details.