--- ray/src/px/ra_t16.c 1991/12/19 14:52:20 2.2 +++ ray/src/px/ra_t16.c 2003/02/22 02:07:28 2.6 @@ -1,9 +1,6 @@ -/* Copyright (c) 1991 Regents of the University of California */ - #ifndef lint -static char SCCSid[] = "$SunId$ LBL"; +static const char RCSid[] = "$Id: ra_t16.c,v 2.6 2003/02/22 02:07:28 greg Exp $"; #endif - /* * ra_t16.c - program to convert between RADIANCE and * Targa 16, 24 and 32-bit images. @@ -13,6 +10,14 @@ static char SCCSid[] = "$SunId$ LBL"; #include +#ifdef MSDOS +#include +#endif + +#include + +#include + #include "color.h" #include "resolu.h" @@ -34,10 +39,8 @@ static char SCCSid[] = "$SunId$ LBL"; extern char *ecalloc(), *emalloc(); -extern double pow(); +double gamcor = 2.2; /* gamma correction */ -double gamma = 2.2; /* gamma correction */ - int bradj = 0; /* brightness adjustment */ char *progname; @@ -52,7 +55,12 @@ char *argv[]; struct hdStruct head; int reverse = 0; int i; - +#ifdef MSDOS + extern int _fmode; + _fmode = O_BINARY; + setmode(fileno(stdin), O_BINARY); + setmode(fileno(stdout), O_BINARY); +#endif progname = argv[0]; head.dataBits = 16; @@ -60,7 +68,7 @@ char *argv[]; if (argv[i][0] == '-') switch (argv[i][1]) { case 'g': - gamma = atof(argv[++i]); + gamcor = atof(argv[++i]); break; case 'r': reverse = !reverse; @@ -95,7 +103,7 @@ char *argv[]; quiterr(msg); } /* set gamma */ - setcolrgam(gamma); + setcolrgam(gamcor); /* convert */ if (reverse) { /* get header */ @@ -104,6 +112,7 @@ char *argv[]; if (!goodpic(&head)) quiterr("incompatible format"); /* put header */ + newheader("RADIANCE", stdout); printargs(i, argv, stdout); fputformat(COLRFMT, stdout); putchar('\n'); @@ -164,6 +173,7 @@ char *err; } +void eputs(s) char *s; { @@ -171,6 +181,7 @@ char *s; } +void quit(code) int code; { @@ -281,8 +292,8 @@ struct hdStruct *hp; if (fwritecolrs(scanline, hp->x, stdout) < 0) quiterr("error writing RADIANCE file"); } - free((char *)scanline); - free((char *)tarData); + free((void *)scanline); + free((void *)tarData); } @@ -330,8 +341,8 @@ struct hdStruct *hp; /* write out targa data */ writetarga(hp, tarData, stdout); - free((char *)inl); - free((char *)tarData); + free((void *)inl); + free((void *)tarData); }