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.