command. Makes the named file, anintarray or anint16array the write stream, used for print, etc. The file must already be open with openWrite, openAppend, or openUpdate. If the input is the empty list, then the write stream becomes the terminal, as usual. Changing the write stream does not close the file that was previously the write stream, so it is possible to alternate between files. On writing to anintarray or anint16array it need not to be opened before this command.
openWrite "temp.txt setWriter "temp.txt pr [This is a temp file] setWriter  close "temp.txt to makewav3 rate=44100 size=rate wavHeaderType=(list [ChunkID Word RIFF] [wavfilesize Int] [RIFFtype Word 4] ;the last item is the string length [formatChunkID Word fmt\ ] [formatChunkSize Int 16] [compressionCode Int16 1] [NumberOfChannels Int16 1] (list "SampleRate "Int rate) (list "BytesPerSecond "Int rate*2) [BlockAlign Int16 2] [BitsPerSample Int16 16] [DataChunkID word data] (list "DataChunkSize "Int size*2) ) wavHeader=struct wavHeaderType wavsize=(SizeOf wavHeader)+size*2 wavHeader'RIFFtype=[WAVE] ;example for setting a string wavHeader'wavfilesize=wavsize pr wavHeader wav=Int16Array int wavsize/2 setWriter wav typeBin wavHeader repeat size [ phi=360*repcount/rate typebin Int16 16383*( (sin 40*phi) - (sin 41*phi) ) ] setWriter  setReader wav wh=readStructBin wavHeaderType pr wh setReader  playWave wav 1+8 ignore readChar playWave  0 end