ftp.nice.ch/pub/next/unix/graphics/urt.3.0.s.tar.gz#/urt.3.0.s/get/getmac

Librle.make
 
Makefile
 
README
 
getmac.c
[View getmac.c] 

README

Getmac is an MPW tool to display RLE images under the MPW shell
environment (this version was compiled with V3.1).  You can use it as
a sink for piped commands (e.g., "avg4 kloo.rle | getmac").  Use the
close box or type 'q' to exit it.

There is some chance that getmac could be modified to work under AUX.  I'd
be interested in hearing from anybody who does.

The Librle.Make is an MPW makefile for building the library.  Building the
tools directory is left as an exercise.

Known bugs:

Only monochrome and RGB images are supported (1 & 3 channels).

The makefiles have eight bit characters.  "D" is the dependancy character
(option-f) and "6" is the line continuation character (option-d).

MPW does not gracefully support graphics windows in the shell
environment.  So MPW windows are not updated while getmac is running.
You can move the getmac window once it's updated.  (e.g., to other screens
with more bits).

It is not a good idea to abort getmac, this generally leaves MPW in an
uncertain state and usually leads to crashes.

Getmac is also not graceful about running out of memory; if you
get the message "Not enough memory to save image" you can expect funny
things to happen, or worse.

Running under MultiFinder is not recommend, particularly if your machine
does not have lots of memory.  You should have at least 2mb to display
a 512x512 image.

Some hits for compiling under Think C:

You will need to copy the symbols that would ordinarily get defined in the
makefile (via Configure) into a header file (e.g., rle.h).  This header file
should be included in your standard pre-compiled header, as rle.h is not
included by all the files (in particular, lib/scanargs.c does not include
it).  

All the '#include <rle*.h>' lines need to be changed to '#include "rle*.h"'
because of the way in which THINK C looks for headers.  (Alternatively, you
can move the include directory to the THINK C folder.)  If you do make the
change, your project file will have to live in the "top level" folder of the
raster toolkit hierarchy, so that it will properly find the include files.

To use THINK's command line parsing, you should add the line
	argc = ccommand(&argv);
to the main() routine, before the call to scanargs.  (It is conceivable that
this line could be added to scanargs itself.  I will leave this as an
exercise for someone else.)

The set of symbols that you will need to define includes
#define NO_OPEN_PIPES
#define USE_STDARG
#define USE_STDLIB_H
#define USE_STRING_H
#define CONST_DECL
#define NEED_BSTRING
#define STDIO_NEEDS_BINARY
#define USE_PROTOTYPES

You will need to include bstring.c in your library.

Finally, but we hope not, you may run into some problems with 16-bit
integers overflowing.

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.