This is wheader.c in view mode; [Download] [Up]
#include "../H/NeXTsfheader.h"
#include "../H/ugens.h"
#include <stdio.h>
#include <sys/file.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <signal.h>
#include <errno.h>
Nwheader(sf,header)
SFHEADER *header;
int sf;
{
(header)->sfinfo.NeXTheader.magic = SND_MAGIC;
(header)->sfinfo.NeXTheader.offset = SIZEOF_HEADER;
if((header)->sfinfo.sf_packmode == SF_FLOAT)
(header)->sfinfo.NeXTheader.format = SND_FORMAT_UNSPECIFIED;
else (header)->sfinfo.NeXTheader.format = SND_FORMAT_LINEAR_16;
(header)->sfinfo.NeXTheader.rate = (header)->sfinfo.sf_srate;
(header)->sfinfo.NeXTheader.channels = (header)->sfinfo.sf_chans;
if(write(sf,header,SIZEOF_HEADER) != SIZEOF_HEADER) return(1);
else return(0);
}
putlength(sfname,sf,header)
SFHEADER *header;
char *sfname;
{
struct stat st;
if(stat(sfname,&st)) {
printf("Couldn't stat file\n");
return(-1);
}
lseek(sf,0,0);
(header)->sfinfo.NeXTheader.size = (int)st.st_size - SIZEOF_HEADER;
if(write(sf,header,SIZEOF_HEADER) != SIZEOF_HEADER) {
printf("Bad header write on file\n");
}
}
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.