1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-11-27 15:50:10 +01:00

Update Nyquist to v3.09.

This commit is contained in:
Leland Lucius
2015-04-07 22:10:17 -05:00
parent f88b27e6d8
commit 9fb0ce5b82
358 changed files with 26327 additions and 7043 deletions

View File

@@ -0,0 +1,166 @@
README.txt -- Nyquist information for Unix systems
UNIX INSTALLATION
=================
For Unix systems, Nyquist is distributed as a compressed file of
sources named nyqsrc3<nn>.zip, where <nn> is the version number
(e.g. v3.01 was in nyqsrc301.zip). To install Nyquist, copy
nyqsrc3<nn>.zip) to the directory on your machine where you would
like to install Nyquist.
Note 1: you will need the "normal tool chain" consisting of the Gnu
C/C++ compiler, linker, C/C++ runtime libraries, autoconf, libtool,
automake, etc. Most linux installations already have this, but some
more recent trimmed-down installations for netbooks and
consumer-oriented computers do not have compilers installed by
default.
Note 2: There are two main unix versions of Nyquist: alsa and nonalsa.
The alsa version is probably what you want. This version uses ALSA,
the Linux audio system. This has also become standard, but your
machine might not have the ALSA development package (probably named
libasound2-dev), so you might have to install it. If you find you are
missing "asound", you are missing and need to install the ALSA
developmnent package. The nonalsa version is a special version for
Debian linux. The ONLY difference is that it omits -lasound from the
link step, so it does not try to link with ALSA. I assume this works
because the PortAudio library which is included in the Nyquist sources
configures itself differently on Debian and doesn't need ALSA.
After unzipping sources, type:
gunzip nyqsrc3<nn>.zip
cd nyquist
# In the following line, Debian linux users should
# type "nonalsa" in place of "alsa":
ln -s sys/unix/alsa/Makefile Makefile
setenv XLISPPATH `pwd`/runtime:`pwd`/lib
make
(For bash shell users, instead of the setenv command, use this:
export XLISPPATH=`pwd`/runtime:`pwd`/lib
)
The first line creates a nyquist directory and some
subdirectories. The second line (cd) changes directories to the new
nyquist directory. The third line (ln) makes a link from the top-level
directory to the Makefile for your system. In place of "alsa" in
sys/unix/alsa/Makefile, you should substitute your system
type. Current systems are alsa, nonalsa, next, pmax, rs6k, sgi, and
sparc, but since only the alsa and nonalsa versions have been tested
in recent years, do not expect anything else to work. The setenv (or
export) command tells Nyquist where to search for lisp files to be
loaded when a file is not found in the current directory. See
SHELL STARTUP below for information about how to automate this.
64-BIT UBUNTU
=============
if xlisp/extern.c fails to compile because of a missing bits/predefs.h,
try using synaptic to update libc6 and libc6-i386 and libc6-dev-i386, or
try sudo apt-get install libc6-dev-i386
you may need to install nasm
you may need to install build-essential and g++
you may need to install lib32asound2-dev
you may need to install lib32stdc++
you may need to install g++multilib
you may need to install libogg-dev
you may need to install libvorbis-dev
you may need to install Java (perhaps as follows):
download jdk-7u2-linux-x64.tar.gz from
http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u2-download-1377129.html
tar xfvz jdk-7u2-linux-x64.tar.gz
sudo mv ./jdk1.7.0_02 /usr/lib/jvm/jdk1.7.0
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0/bin/javac" 1
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0/bin/javaws" 1
sudo update-alternatives --config java
java -version [check that output is 1.7.0_02"]
sudo update-alternatives --config javac
sudo update-alternatives --config java
RUNNING NYQUIST FROM THE COMMAND LINE
=====================================
Assuming the make completes successfully, you can run Nyquist as follows:
./ny
When you get the prompt, you may begin typing expressions such as
the ones in the following "Examples" section in the Nyquist
manual. (See doc/nyquistman.pdf or doc/home.html).
RUNNING NYQUIST USING NyquistIDE
=====================================
One you establish that Nyquist (ny) is working from the command line,
you should try using NyquistIDE, the Java-based Nyquist development
environment. First, make jny executable (do this only once when you
install Nyquist):
chmod +x jny
Then try running jNyqIDE by typing:
./jny
If the NyquistIDE window does not appear, make sure you have Java
installed (if not, you probably already encountered errors when you
ran the make command.) You can also try recompiling the Java
files. Note that jnyqide/SpecialMacHandler.java will NOT compile
under non-OS X systems. The Makefile renames this file to "hide" it
from the Java compiler, compiles all the remaining java files, and
then restores jnyqide/SpecialMacHandler.java:
make jnyqide/jNyqIDE.jar
NYQUIST SEARCH PATH UNDER NyquistIDE
====================================
Note: With Linux and Mac OS X, jNyqIDE defines the environment passed
to Nyquist. If you set XLISPPATH as shown above, it will be passed
along to Nyquist under jNyqIDE. If not, a default XLISPPATH will have
the lib and runtime directories only. This does not apply to Windows
because even though the environment is there, the Windows version of
Nyquist reads the XLISPPATH from the Registry.
You can also specify the search path by creating the file
nyquist/xlisppath, which should have colon-separated paths on a single
(long) line of text. This file will override the environment variable
XLISPPATH.
MORE DETAILS
============
It is good to have USER in the environment with your user ID. This
string is used to construct some file names. NyquistIDE will look for it
in the environment. You can also specify your user ID using the file
nyquist/user, but if you have a shared installation of Nyquist,
this will not be very useful.
Note: Nyquist looks for the file init.lsp in the current directory.
If you look in the init.lsp in runtime, you will notice two things.
First, init.lsp loads nyquist.lsp from the Nyquist directory, and
second, init.lsp loads system.lsp which in turn defines the macro
play. Normally, Nyquist plays audio through the PortAudio library,
which should work on any system. An alternative is to save audio to a
file and invoke a local non-Nyquist program to play the sound file.
You can modify system.lsp to accomplish this.
SHELL STARTUP
=============
The (runtime
directory should always be on your XLISPPATH when you run Nyquist, so
you may want to set XLISPPATH in your shell startup file, e.g. .cshrc.
Which shell are you using? echo $SHELL will tell you. If you use
/bin/bash, your startup file is probably ~/.profile. (Remember that
"~/" means your home directory, so the file will be something like
/home/rbd/.profile). In this file, you can add a line such as:
export XLISPPATH="/home/rbd/nyquist/runtime:/home/rbd/nyquist/lib"
Do not use the shorthand `pwd`/runtime, because `pwd` returns the
current working directory, which is not going to be your Nyquist
directory when .profile is loaded.
If you use /bin/csh (the C Shell), your startup file is probably
~/.cshrc. (Remember that "~/" means your home directory, so the file
will be something like /home/rbd/.profile). In this file, you can add
a line such as:
setenv XLISPPATH "/home/rbd/nyquist/runtime:/home/rbd/nyquist/lib"

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,101 @@
;; system.lsp -- system-dependent lisp code
; local definition for play
; this one is for Linux:
(if (not (boundp '*default-sf-format*))
(setf *default-sf-format* snd-head-wave))
(if (not (boundp '*default-sound-file*))
(compute-default-sound-file))
(if (not (boundp '*default-sf-dir*))
(setf *default-sf-dir* "./"))
(if (not (boundp '*default-sf-mode*))
(setf *default-sf-mode* snd-mode-pcm))
(if (not (boundp '*default-sf-bits*))
(setf *default-sf-bits* 16))
(if (not (boundp '*default-plot-file*))
(setf *default-plot-file* (strcat (get-user) "-points.dat")))
; FULL-NAME-P -- test if file name is a full path or relative path
;
; (otherwise the *default-sf-dir* will be prepended
;
(defun full-name-p (filename)
(or (eq (char filename 0) #\/)
(eq (char filename 0) #\.)))
; RELATIVE-PATH-P -- test if filename or path is a relative path
;
(defun relative-path-p (filename)
(not (eq (char filename 0) #\/)))
(setf *file-separator* #\/)
;; PLAY-FILE - play a sound file
;;
(defun play-file (name)
;;
;; WARNING: if you invoke an external program to play files,
;; but Nyquist uses internal (portaudio) interface to
;; play synthesized sound, Nyquist may fail to open the
;; sound device while it is playing a sound file and then
;; refuse to play anything. -RBD dec05
;; (system (strcat "sndplay " (soundfilename name))))
;; (system (strcat "play " (soundfilename name) )))
;;
(play (s-read (soundfilename name))))
;; R - replay last file written with PLAY
(defun r () (play-file *default-sound-file*))
;;;; use this old version if you want to use sndplay to play
;;;; the result file rather than play the samples as they
;;;; are computed. This version does not autonormalize.
;; PLAY - write value of an expression to file and play it
;;
;(defmacro play (expr)
; `(prog (specs)
; (setf specs (s-save (force-srate *sound-srate* ,expr)
; 1000000000 *default-sound-file*))
; (r)))
;;;;
; local definition for play
(defmacro play (expr)
`(s-save-autonorm ,expr NY:ALL *default-sound-file* :play *soundenable*))
;; for Linux, modify s-plot (defined in nyquist.lsp) by saving s-plot
;; in standard-s-plot, then call gnuplot to display the points.
;;
;; we also need to save the location of this file so we can find
;; nyquist-plot.txt, the command file for gnuplot
;;
;; This code is broken in the following ways:
;; it tries to run gnuplot even when plotting can be done by NyquistIDE
;; it plots "points.dat", but "points.dat" may not be correct
;; (see *default-plot-file*)
;; it assumes the plot file is in the current directory, but it
;; by default goes to the sound file directory
;;
;; Fix this code or complain if you want to plot with gnuplot while
;; running ny (or even NyquistIDE (jny) if you want). Otherwise, use
;; NyquistIDE to get s-plot to work.
;;
;(setf *runtime-path* (current-path))
;(display "system.lsp" *runtime-path*)
;
;(setfn standard-s-plot s-plot)
;
;(defun s-plot (s &optional (dur 2.0) (n 1000))
; (let (plot-file)
; (standard-s-plot s dur n) ;; this calculates the data points
; (setf plot-file (strcat *runtime-path* "nyquist-plot.txt"))
; (system (strcat "gnuplot -persist " plot-file))))

View File

@@ -0,0 +1 @@
cp -Rp ../current/* /afs/cs/project/music/proj/nyquist/current

View File

@@ -0,0 +1,14 @@
mkdir ../TMP
mv ny ../TMP
mv runtime/system.lsp ../TMP
mv Makefile ../TMP
mv test ../TMP
set NYQDIR=`pwd`
cd ..
ln -fs $NYQDIR nyquist
tar -cvhf - nyquist | compress > nyquist.tar.Z
cd $NYQDIR
mv ../TMP/test .
mv ../TMP/Makefile .
mv ../TMP/system.lsp runtime
mv ../TMP/ny .

View File

@@ -0,0 +1,79 @@
;; update.lsp -- script to push changes into source directories
(load "makefile.lsp") ; just to make sure we got the latest bindings
;; UPDATE-SOURCES -- makes a script to push changes into source directories
;;
(defun update-sources ()
(let (outf)
(load "transfiles.lsp") ; just to make sure we're current
(setf outf (open "script" :direction :output))
(format outf "#
# source this script file
# Source Paths: nyqsrc, cmtsrc, xlsrc, trnsrc
")
(format outf "
#
# XLISP SOURCES
#
")
(file-update outf xlfiles ".c" "xlsrc")
(file-update outf xlfiles-h ".h" "xlsrc")
(file-update outf xlfiles-lsp ".lsp" "xlsrc")
(format outf "
#
# NYQUIST SOURCES
#
")
(file-update outf nyqfiles ".c" "nyqsrc")
(file-update outf (exceptions-filter nyqfiles) ".h" "nyqsrc")
(file-update outf nyqfiles-h ".h" "nyqsrc")
(file-update outf nyqfiles-lsp ".lsp" "nyqsrc")
(file-update outf makefiles "" "nyqsrc")
(format outf "
#
# CMT SOURCES
#
")
(file-update outf cmtfiles ".c" "cmtsrc")
(file-update outf (exceptions-filter cmtfiles) ".h" "cmtsrc")
(file-update outf cmtfiles-h ".h" "cmtsrc")
; don't write back machine generated trnsrc files
; (file-update outf transfiles ".c" "trnsrc")
; (file-update outf transfiles ".h" "trnsrc")
(close outf)
(format t "DONE writing script, 'source script' to copy files from~%")
(format t "this directory to the source directories~%")
))
;; EXCEPTIONS-FILTER - remove .h files from list
; the depends-exceptions tells whether a .h file exists for a .c file
;;
(defun exceptions-filter (files)
(let (result)
(dolist (f files)
(let ((ex (assoc f depends-exceptions :test #'equal)))
(cond (ex
(if (and (cdr ex)
(string-search (strcat f ".h") (cadr ex)))
(push f result)))
(t (push f result)))))
result))
;; FILE-UPDATE -- write dependency for source files
;;
(defun file-update (outf files ext dir)
(dolist (f files)
(let ((fname (strcat f ext)))
(format outf "cp -p ~A ~A/~A~%" fname dir fname))))

View File

@@ -0,0 +1,162 @@
/*
**********************************************************************
* File io.c
**********************************************************************
*
* Non blocking input routine
* Works by puttng the terminal in CBREAK mode and using the FIONREAD
* ioctl call to determine the number of characters in the input queue
*/
#include "stdio.h"
#include "io.h"
#include <sys/types.h>
#include <sys/time.h>
#include <signal.h>
#include <sgtty.h>
#include "cext.h"
int IOinputfd; /* input file descriptor (usually 0) */
int IOnochar; /* Value to be returned by IOgetchar()
where there is no input to be had */
static struct sgttyb IOoldmodes, IOcurrentmodes;
/* Initial and current tty modes */
/*
* IOsetup(inputfd)
* Args:
* inputfd - input file descriptor (should be zero for standard input)
* Returns:
* 0 - if all goes well
* -1 - if an ioctl fails (also calls perror)
* Side Effects:
* Puts the terminal in CBREAK mode - before process termination
* IOcleanup() should be called to restore old terminal modes
* Catch's interrupts (if they are not already being caught) and
* calls IOcleanup before exiting
*
*/
#define ERROR(s) return (perror(s), -1)
IOsetup(inputfd)
{
static IOdiegracefully();
int (*interrupt_handler)();
IOinputfd = inputfd;
IOnochar = NOCHAR;
if(ioctl(IOinputfd, TIOCGETP, &IOoldmodes) < 0)
ERROR("IOsetup");
IOcurrentmodes = IOoldmodes;
IOcurrentmodes.sg_flags |= CBREAK;
IOcurrentmodes.sg_flags &= ~ECHO;
if(ioctl(IOinputfd, TIOCSETP, &IOcurrentmodes))
ERROR("IOsetup-2");
if( (interrupt_handler = signal(SIGINT, IOdiegracefully)) != 0)
signal(SIGINT, interrupt_handler);
return 0;
}
static
IOdiegracefully()
{
write(2, "\nBye\n", 5);
IOcleanup();
EXIT(2);
}
/*
* IOcleanup()
* Returns:
* 0 - if all goes well
* -1 - if an ioctl fails (also calls perror)
* Side Effects:
* Restores initial terminal modes
*/
IOcleanup()
{
if(ioctl(IOinputfd, TIOCSETP, &IOoldmodes) < 0)
ERROR("IOclean");
return 0;
}
/*
* IOgetchar()
* Returns:
* A character off the input queue if there is one,
* IOnochar if there is no character waiting to be read,
* -1 if an ioctl fails (shouldn't happen if IOsetup went OK)
*/
#ifndef UNIX_MACH
IOgetchar()
{
int n;
char c;
if(ioctl(IOinputfd, FIONREAD, &n) < 0)
ERROR("IOgetchar");
if(n <= 0)
return IOnochar;
switch(read(IOinputfd, &c, 1)) {
case 1:
return c;
case 0:
return EOF;
default:
ERROR("IOgetchar-read");
}
}
IOgetchar2()
{
int nfds, readfds = 1 << IOinputfd;
char c;
static struct timeval zero;
if(IOinputfd < 0 || IOinputfd >= 32) {
printf("IOgetchar2: bad IOinputfd (%d)%s\n", IOinputfd,
IOinputfd == -1 ? "Did you call IOsetup(fd)?" : "");
}
nfds = select(32, &readfds, 0, 0, &zero);
if(nfds > 0) {
switch(read(IOinputfd, &c, 1)) {
case 0:
return EOF;
case 1:
return c;
default:
printf("IOgetchar2: read failed!\n");
return NOCHAR;
}
}
else if(nfds < 0)
printf("IOgetchar2: select failed!\n");
return NOCHAR;
}
/*
* IOwaitchar()
* Returns:
* A character off the input queue. Waits if necessary.
*/
int IOwaitchar()
{
char c;
if (read(IOinputfd, &c, 1) == 1) return c;
else return EOF;
}
#endif /* UNIX_MACH */

View File

@@ -0,0 +1,9 @@
#define NOCHAR -2
int IOinputfd;
int IOnochar;
int IOsetup(int inputfd);
int IOcleanup(void);
int IOgetchar(void);
int IOwaitchar(void);

View File

@@ -0,0 +1,521 @@
#
# Makefile for Nyquist, SYSTEM-TYPE is NEXT
# run make in the top-level Nyquist directory to compile Nyquist
#
# NOTE: this file is machine-generated. DO NOT EDIT!
# Instead, modify makefile.lsp and regenerate the makefile.
# Ports and bug fixes are welcome - please mail them to
# dannenberg@cs.cmu.edu. Thanks.
#
# This is the resulting executable (normally "ny"):
NY = ny
# Standard list of includes (common to all unix versions)
INCL = -Inyqsrc -Itran -Ixlisp -Isys/unix -Icmt -Isnd -Ifft
# system dependent stuff for next:
CC = cc
CFLAGS = -DCMTSTUFF -O $(INCL)
LN = cc
LFLAGS = -lm
INTGEN = misc/intgen
# Object files for Nyquist:
OBJECTS = xlisp/extern.o xlisp/xldmem.o xlisp/xlbfun.o xlisp/xlcont.o \
xlisp/xldbug.o xlisp/xleval.o xlisp/xlfio.o xlisp/xlftab.o \
xlisp/xlglob.o xlisp/xlimage.o xlisp/xlinit.o xlisp/xlio.o \
xlisp/xlisp.o xlisp/xljump.o xlisp/xllist.o xlisp/xlmath.o \
xlisp/xlobj.o xlisp/xlpp.o xlisp/xlprin.o xlisp/xlread.o \
xlisp/xlstr.o xlisp/xlsubr.o xlisp/xlsym.o xlisp/xlsys.o \
tran/amosc.o tran/clip.o tran/const.o tran/fmosc.o \
tran/integrate.o tran/log.o tran/maxv.o tran/osc.o \
tran/prod.o tran/buzz.o tran/pwl.o tran/recip.o \
tran/upsample.o tran/scale.o tran/sine.o tran/partial.o \
tran/white.o tran/tone.o tran/tonev.o tran/atonev.o \
tran/atone.o tran/reson.o tran/areson.o tran/resonvc.o \
tran/resoncv.o tran/aresonvc.o tran/aresoncv.o tran/resonvv.o \
tran/aresonvv.o tran/offset.o tran/slope.o tran/delay.o \
tran/delaycv.o tran/shape.o tran/sampler.o tran/exp.o \
tran/siosc.o tran/follow.o tran/gate.o tran/quantize.o \
tran/ifft.o tran/congen.o tran/fromobject.o tran/fromarraystream.o \
tran/coterm.o tran/convolve.o tran/alpass.o tran/oneshot.o \
tran/chase.o tran/tapv.o tran/biquad.o tran/pluck.o \
cmt/cext.o cmt/cleanup.o cmt/cmdline.o cmt/cmtcmd.o \
cmt/moxc.o cmt/mem.o cmt/midifile.o cmt/midifns.o \
cmt/record.o cmt/seq.o cmt/seqmread.o cmt/seqmwrite.o \
cmt/seqread.o cmt/seqwrite.o cmt/tempomap.o cmt/timebase.o \
cmt/userio.o nyqsrc/debug.o nyqsrc/falloc.o nyqsrc/add.o \
nyqsrc/local.o nyqsrc/downsample.o nyqsrc/handlers.o nyqsrc/multiread.o \
nyqsrc/multiseq.o nyqsrc/samples.o nyqsrc/seqext.o nyqsrc/seqinterf.o \
nyqsrc/sndread.o nyqsrc/sndseq.o nyqsrc/sndwrite.o nyqsrc/sndmax.o \
nyqsrc/sound.o nyqsrc/stats.o nyqsrc/compose.o nyqsrc/inverse.o \
nyqsrc/resamp.o nyqsrc/resampv.o nyqsrc/ffilterkit.o nyqsrc/avg.o \
nyqsrc/fft.o nyqsrc/sndfail.o fft/fftn.o nyqsrc/sndfnint.o \
nyqsrc/seqfnint.o snd/audionext.o snd/sndnext.o snd/ieeecvt.o \
snd/snd.o snd/sndcvt.o snd/sndio.o snd/sndheader.o \
sys/unix/osstuff.o sys/unix/term.o
# Sound functions to add to xlisp
NYQHDRS = snd/snd.h nyqsrc/sound.h nyqsrc/downsample.h nyqsrc/sndread.h \
nyqsrc/sndseq.h nyqsrc/add.h nyqsrc/multiseq.h nyqsrc/samples.h \
nyqsrc/sndwrite.h nyqsrc/sndmax.h nyqsrc/compose.h nyqsrc/inverse.h \
nyqsrc/resamp.h nyqsrc/resampv.h nyqsrc/fft.h nyqsrc/avg.h \
tran/amosc.h tran/clip.h tran/const.h tran/fmosc.h \
tran/integrate.h tran/log.h tran/maxv.h tran/osc.h \
tran/prod.h tran/buzz.h tran/pwl.h tran/recip.h \
tran/upsample.h tran/scale.h tran/sine.h tran/partial.h \
tran/white.h tran/tone.h tran/tonev.h tran/atonev.h \
tran/atone.h tran/reson.h tran/areson.h tran/resonvc.h \
tran/resoncv.h tran/aresonvc.h tran/aresoncv.h tran/resonvv.h \
tran/aresonvv.h tran/offset.h tran/slope.h tran/delaycc.h \
tran/delaycv.h tran/shape.h tran/sampler.h tran/exp.h \
tran/siosc.h tran/follow.h tran/gate.h tran/quantize.h \
tran/ifft.h tran/congen.h tran/fromobject.h tran/fromarraystream.h \
tran/coterm.h tran/convolve.h tran/alpass.h tran/oneshot.h \
tran/chase.h tran/tapv.h tran/biquad.h tran/pluck.h
CMTHDRS = cmt/seqdecls.h nyqsrc/seqext.h cmt/seq.h nyqsrc/seqinterf.h \
cmt/seqread.h cmt/seqmread.h cmt/seqwrite.h cmt/seqmwrite.h
EVERYTHING = $(NY) runtime/system.lsp
CURRENT = $(EVERYTHING)
current: $(CURRENT)
$(NY): $(OBJECTS)
$(LN) $(OBJECTS) $(LFLAGS) -o $(NY)
# copy appropriate system.lsp and make it read-only;
# changes should be made to sys/unix/<system>/system.lsp
runtime/system.lsp: sys/unix/next/system.lsp
chmod +w runtime/system.lsp
cp -p sys/unix/next/system.lsp runtime/system.lsp
chmod -w runtime/system.lsp
nyqsrc/debug.o: nyqsrc/debug.c nyqsrc/debug.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/debug.c -o nyqsrc/debug.o $(CFLAGS)
nyqsrc/falloc.o: nyqsrc/falloc.c nyqsrc/falloc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/falloc.c -o nyqsrc/falloc.o $(CFLAGS)
nyqsrc/add.o: nyqsrc/add.c nyqsrc/add.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/add.c -o nyqsrc/add.o $(CFLAGS)
nyqsrc/local.o: nyqsrc/local.c xlisp/xlisp.h nyqsrc/sound.h
cc -c nyqsrc/local.c -o nyqsrc/local.o $(CFLAGS)
nyqsrc/downsample.o: nyqsrc/downsample.c nyqsrc/downsample.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/downsample.c -o nyqsrc/downsample.o $(CFLAGS)
nyqsrc/handlers.o: nyqsrc/handlers.c
cc -c nyqsrc/handlers.c -o nyqsrc/handlers.o $(CFLAGS)
nyqsrc/multiread.o: nyqsrc/multiread.c nyqsrc/multiread.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/multiread.c -o nyqsrc/multiread.o $(CFLAGS)
nyqsrc/multiseq.o: nyqsrc/multiseq.c nyqsrc/multiseq.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/multiseq.c -o nyqsrc/multiseq.o $(CFLAGS)
nyqsrc/samples.o: nyqsrc/samples.c nyqsrc/samples.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/samples.c -o nyqsrc/samples.o $(CFLAGS)
nyqsrc/seqext.o: nyqsrc/seqext.c nyqsrc/seqext.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/seqext.c -o nyqsrc/seqext.o $(CFLAGS)
nyqsrc/seqinterf.o: nyqsrc/seqinterf.c nyqsrc/seqinterf.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/seqinterf.c -o nyqsrc/seqinterf.o $(CFLAGS)
nyqsrc/sndread.o: nyqsrc/sndread.c nyqsrc/sndread.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndread.c -o nyqsrc/sndread.o $(CFLAGS)
nyqsrc/sndseq.o: nyqsrc/sndseq.c nyqsrc/sndseq.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndseq.c -o nyqsrc/sndseq.o $(CFLAGS)
nyqsrc/sndwrite.o: nyqsrc/sndwrite.c nyqsrc/sndwrite.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndwrite.c -o nyqsrc/sndwrite.o $(CFLAGS)
nyqsrc/sndmax.o: nyqsrc/sndmax.c nyqsrc/sndmax.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndmax.c -o nyqsrc/sndmax.o $(CFLAGS)
nyqsrc/sound.o: nyqsrc/sound.c nyqsrc/sound.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sound.c -o nyqsrc/sound.o $(CFLAGS)
nyqsrc/stats.o: nyqsrc/stats.c nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/stats.c -o nyqsrc/stats.o $(CFLAGS)
nyqsrc/compose.o: nyqsrc/compose.c nyqsrc/compose.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/compose.c -o nyqsrc/compose.o $(CFLAGS)
nyqsrc/inverse.o: nyqsrc/inverse.c nyqsrc/inverse.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/inverse.c -o nyqsrc/inverse.o $(CFLAGS)
nyqsrc/resamp.o: nyqsrc/resamp.c nyqsrc/resamp.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/resamp.c -o nyqsrc/resamp.o $(CFLAGS)
nyqsrc/resampv.o: nyqsrc/resampv.c nyqsrc/resampv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/resampv.c -o nyqsrc/resampv.o $(CFLAGS)
nyqsrc/ffilterkit.o: nyqsrc/ffilterkit.c nyqsrc/ffilterkit.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/ffilterkit.c -o nyqsrc/ffilterkit.o $(CFLAGS)
nyqsrc/avg.o: nyqsrc/avg.c nyqsrc/avg.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/avg.c -o nyqsrc/avg.o $(CFLAGS)
nyqsrc/fft.o: nyqsrc/fft.c nyqsrc/fft.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/fft.c -o nyqsrc/fft.o $(CFLAGS)
nyqsrc/sndfail.o: nyqsrc/sndfail.c
cc -c nyqsrc/sndfail.c -o nyqsrc/sndfail.o $(CFLAGS)
snd/audionext.o: snd/audionext.c snd/snd.h
cc -c snd/audionext.c -o snd/audionext.o $(CFLAGS)
snd/sndnext.o: snd/sndnext.c snd/sndnext.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/sndnext.c -o snd/sndnext.o $(CFLAGS)
snd/ieeecvt.o: snd/ieeecvt.c snd/ieeecvt.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/ieeecvt.c -o snd/ieeecvt.o $(CFLAGS)
snd/snd.o: snd/snd.c snd/snd.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/snd.c -o snd/snd.o $(CFLAGS)
snd/sndcvt.o: snd/sndcvt.c snd/snd.h
cc -c snd/sndcvt.c -o snd/sndcvt.o $(CFLAGS)
snd/sndio.o: snd/sndio.c snd/snd.h
cc -c snd/sndio.c -o snd/sndio.o $(CFLAGS)
snd/sndheader.o: snd/sndheader.c snd/sndheader.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/sndheader.c -o snd/sndheader.o $(CFLAGS)
fft/fftn.o: fft/fftn.c fft/fftn.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c fft/fftn.c -o fft/fftn.o $(CFLAGS)
tran/amosc.o: tran/amosc.c tran/amosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/amosc.c -o tran/amosc.o $(CFLAGS)
tran/clip.o: tran/clip.c tran/clip.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/clip.c -o tran/clip.o $(CFLAGS)
tran/const.o: tran/const.c tran/const.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/const.c -o tran/const.o $(CFLAGS)
tran/fmosc.o: tran/fmosc.c tran/fmosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fmosc.c -o tran/fmosc.o $(CFLAGS)
tran/integrate.o: tran/integrate.c tran/integrate.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/integrate.c -o tran/integrate.o $(CFLAGS)
tran/log.o: tran/log.c tran/log.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/log.c -o tran/log.o $(CFLAGS)
tran/maxv.o: tran/maxv.c tran/maxv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/maxv.c -o tran/maxv.o $(CFLAGS)
tran/osc.o: tran/osc.c tran/osc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/osc.c -o tran/osc.o $(CFLAGS)
tran/prod.o: tran/prod.c tran/prod.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/prod.c -o tran/prod.o $(CFLAGS)
tran/buzz.o: tran/buzz.c tran/buzz.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/buzz.c -o tran/buzz.o $(CFLAGS)
tran/pwl.o: tran/pwl.c tran/pwl.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/pwl.c -o tran/pwl.o $(CFLAGS)
tran/recip.o: tran/recip.c tran/recip.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/recip.c -o tran/recip.o $(CFLAGS)
tran/upsample.o: tran/upsample.c tran/upsample.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/upsample.c -o tran/upsample.o $(CFLAGS)
tran/scale.o: tran/scale.c tran/scale.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/scale.c -o tran/scale.o $(CFLAGS)
tran/sine.o: tran/sine.c tran/sine.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/sine.c -o tran/sine.o $(CFLAGS)
tran/partial.o: tran/partial.c tran/partial.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/partial.c -o tran/partial.o $(CFLAGS)
tran/white.o: tran/white.c tran/white.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/white.c -o tran/white.o $(CFLAGS)
tran/tone.o: tran/tone.c tran/tone.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tone.c -o tran/tone.o $(CFLAGS)
tran/tonev.o: tran/tonev.c tran/tonev.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tonev.c -o tran/tonev.o $(CFLAGS)
tran/atonev.o: tran/atonev.c tran/atonev.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/atonev.c -o tran/atonev.o $(CFLAGS)
tran/atone.o: tran/atone.c tran/atone.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/atone.c -o tran/atone.o $(CFLAGS)
tran/reson.o: tran/reson.c tran/reson.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/reson.c -o tran/reson.o $(CFLAGS)
tran/areson.o: tran/areson.c tran/areson.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/areson.c -o tran/areson.o $(CFLAGS)
tran/resonvc.o: tran/resonvc.c tran/resonvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resonvc.c -o tran/resonvc.o $(CFLAGS)
tran/resoncv.o: tran/resoncv.c tran/resoncv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resoncv.c -o tran/resoncv.o $(CFLAGS)
tran/aresonvc.o: tran/aresonvc.c tran/aresonvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresonvc.c -o tran/aresonvc.o $(CFLAGS)
tran/aresoncv.o: tran/aresoncv.c tran/aresoncv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresoncv.c -o tran/aresoncv.o $(CFLAGS)
tran/resonvv.o: tran/resonvv.c tran/resonvv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resonvv.c -o tran/resonvv.o $(CFLAGS)
tran/aresonvv.o: tran/aresonvv.c tran/aresonvv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresonvv.c -o tran/aresonvv.o $(CFLAGS)
tran/offset.o: tran/offset.c tran/offset.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/offset.c -o tran/offset.o $(CFLAGS)
tran/slope.o: tran/slope.c tran/slope.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/slope.c -o tran/slope.o $(CFLAGS)
tran/delaycc.o: tran/delaycc.c tran/delaycc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/delaycc.c -o tran/delaycc.o $(CFLAGS)
tran/delaycv.o: tran/delaycv.c tran/delaycv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/delaycv.c -o tran/delaycv.o $(CFLAGS)
tran/shape.o: tran/shape.c tran/shape.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/shape.c -o tran/shape.o $(CFLAGS)
tran/sampler.o: tran/sampler.c tran/sampler.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/sampler.c -o tran/sampler.o $(CFLAGS)
tran/exp.o: tran/exp.c tran/exp.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/exp.c -o tran/exp.o $(CFLAGS)
tran/siosc.o: tran/siosc.c tran/siosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/siosc.c -o tran/siosc.o $(CFLAGS)
tran/follow.o: tran/follow.c tran/follow.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/follow.c -o tran/follow.o $(CFLAGS)
tran/gate.o: tran/gate.c tran/gate.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/gate.c -o tran/gate.o $(CFLAGS)
tran/quantize.o: tran/quantize.c tran/quantize.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/quantize.c -o tran/quantize.o $(CFLAGS)
tran/ifft.o: tran/ifft.c tran/ifft.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/ifft.c -o tran/ifft.o $(CFLAGS)
tran/congen.o: tran/congen.c tran/congen.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/congen.c -o tran/congen.o $(CFLAGS)
tran/fromobject.o: tran/fromobject.c tran/fromobject.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fromobject.c -o tran/fromobject.o $(CFLAGS)
tran/fromarraystream.o: tran/fromarraystream.c tran/fromarraystream.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fromarraystream.c -o tran/fromarraystream.o $(CFLAGS)
tran/coterm.o: tran/coterm.c tran/coterm.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/coterm.c -o tran/coterm.o $(CFLAGS)
tran/convolve.o: tran/convolve.c tran/convolve.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/convolve.c -o tran/convolve.o $(CFLAGS)
tran/alpass.o: tran/alpass.c tran/alpass.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/alpass.c -o tran/alpass.o $(CFLAGS)
tran/oneshot.o: tran/oneshot.c tran/oneshot.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/oneshot.c -o tran/oneshot.o $(CFLAGS)
tran/chase.o: tran/chase.c tran/chase.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/chase.c -o tran/chase.o $(CFLAGS)
tran/tapv.o: tran/tapv.c tran/tapv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tapv.c -o tran/tapv.o $(CFLAGS)
tran/biquad.o: tran/biquad.c tran/biquad.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/biquad.c -o tran/biquad.o $(CFLAGS)
tran/pluck.o: tran/pluck.c tran/pluck.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/pluck.c -o tran/pluck.o $(CFLAGS)
nyqsrc/sndfnint.o: nyqsrc/sndfnint.c
cc -c nyqsrc/sndfnint.c -o nyqsrc/sndfnint.o $(CFLAGS)
nyqsrc/seqfnint.o: nyqsrc/seqfnint.c
cc -c nyqsrc/seqfnint.c -o nyqsrc/seqfnint.o $(CFLAGS)
xlisp/xlftab.o: nyqsrc/sndfnintptrs.h nyqsrc/sndfnintdefs.h nyqsrc/seqfnintptrs.h nyqsrc/seqfnintdefs.h
cc -c xlisp/xlftab.c -o xlisp/xlftab.o $(CFLAGS)
xlisp/extern.o: xlisp/extern.c
cc -c xlisp/extern.c -o xlisp/extern.o $(CFLAGS)
xlisp/xldmem.o: xlisp/xldmem.c
cc -c xlisp/xldmem.c -o xlisp/xldmem.o $(CFLAGS)
xlisp/xlbfun.o: xlisp/xlbfun.c
cc -c xlisp/xlbfun.c -o xlisp/xlbfun.o $(CFLAGS)
xlisp/xlcont.o: xlisp/xlcont.c
cc -c xlisp/xlcont.c -o xlisp/xlcont.o $(CFLAGS)
xlisp/xldbug.o: xlisp/xldbug.c
cc -c xlisp/xldbug.c -o xlisp/xldbug.o $(CFLAGS)
xlisp/xleval.o: xlisp/xleval.c
cc -c xlisp/xleval.c -o xlisp/xleval.o $(CFLAGS)
xlisp/xlfio.o: xlisp/xlfio.c
cc -c xlisp/xlfio.c -o xlisp/xlfio.o $(CFLAGS)
xlisp/xlglob.o: xlisp/xlglob.c
cc -c xlisp/xlglob.c -o xlisp/xlglob.o $(CFLAGS)
xlisp/xlimage.o: xlisp/xlimage.c
cc -c xlisp/xlimage.c -o xlisp/xlimage.o $(CFLAGS)
xlisp/xlinit.o: xlisp/xlinit.c
cc -c xlisp/xlinit.c -o xlisp/xlinit.o $(CFLAGS)
xlisp/xlio.o: xlisp/xlio.c
cc -c xlisp/xlio.c -o xlisp/xlio.o $(CFLAGS)
xlisp/xlisp.o: xlisp/xlisp.c
cc -c xlisp/xlisp.c -o xlisp/xlisp.o $(CFLAGS)
xlisp/xllist.o: xlisp/xllist.c
cc -c xlisp/xllist.c -o xlisp/xllist.o $(CFLAGS)
xlisp/xlmath.o: xlisp/xlmath.c
cc -c xlisp/xlmath.c -o xlisp/xlmath.o $(CFLAGS)
xlisp/xlobj.o: xlisp/xlobj.c
cc -c xlisp/xlobj.c -o xlisp/xlobj.o $(CFLAGS)
xlisp/xlpp.o: xlisp/xlpp.c
cc -c xlisp/xlpp.c -o xlisp/xlpp.o $(CFLAGS)
xlisp/xlprin.o: xlisp/xlprin.c
cc -c xlisp/xlprin.c -o xlisp/xlprin.o $(CFLAGS)
xlisp/xlread.o: xlisp/xlread.c
cc -c xlisp/xlread.c -o xlisp/xlread.o $(CFLAGS)
xlisp/xlstr.o: xlisp/xlstr.c
cc -c xlisp/xlstr.c -o xlisp/xlstr.o $(CFLAGS)
xlisp/xlsubr.o: xlisp/xlsubr.c
cc -c xlisp/xlsubr.c -o xlisp/xlsubr.o $(CFLAGS)
xlisp/xlsym.o: xlisp/xlsym.c
cc -c xlisp/xlsym.c -o xlisp/xlsym.o $(CFLAGS)
xlisp/xlsys.o: xlisp/xlsys.c
cc -c xlisp/xlsys.c -o xlisp/xlsys.o $(CFLAGS)
cmt/cext.o: cmt/cext.c
cc -c cmt/cext.c -o cmt/cext.o $(CFLAGS)
cmt/cleanup.o: cmt/cleanup.c
cc -c cmt/cleanup.c -o cmt/cleanup.o $(CFLAGS)
cmt/cmdline.o: cmt/cmdline.c
cc -c cmt/cmdline.c -o cmt/cmdline.o $(CFLAGS)
cmt/cmtcmd.o: cmt/cmtcmd.c
cc -c cmt/cmtcmd.c -o cmt/cmtcmd.o $(CFLAGS)
cmt/moxc.o: cmt/moxc.c
cc -c cmt/moxc.c -o cmt/moxc.o $(CFLAGS)
cmt/mem.o: cmt/mem.c
cc -c cmt/mem.c -o cmt/mem.o $(CFLAGS)
cmt/midifile.o: cmt/midifile.c
cc -c cmt/midifile.c -o cmt/midifile.o $(CFLAGS)
cmt/midifns.o: cmt/midifns.c
cc -c cmt/midifns.c -o cmt/midifns.o $(CFLAGS)
cmt/record.o: cmt/record.c
cc -c cmt/record.c -o cmt/record.o $(CFLAGS)
cmt/seq.o: cmt/seq.c
cc -c cmt/seq.c -o cmt/seq.o $(CFLAGS)
cmt/seqmread.o: cmt/seqmread.c
cc -c cmt/seqmread.c -o cmt/seqmread.o $(CFLAGS)
cmt/seqmwrite.o: cmt/seqmwrite.c
cc -c cmt/seqmwrite.c -o cmt/seqmwrite.o $(CFLAGS)
cmt/seqread.o: cmt/seqread.c
cc -c cmt/seqread.c -o cmt/seqread.o $(CFLAGS)
cmt/seqwrite.o: cmt/seqwrite.c
cc -c cmt/seqwrite.c -o cmt/seqwrite.o $(CFLAGS)
cmt/tempomap.o: cmt/tempomap.c
cc -c cmt/tempomap.c -o cmt/tempomap.o $(CFLAGS)
cmt/timebase.o: cmt/timebase.c
cc -c cmt/timebase.c -o cmt/timebase.o $(CFLAGS)
cmt/userio.o: cmt/userio.c
cc -c cmt/userio.c -o cmt/userio.o $(CFLAGS)
sys/unix/osstuff.o: sys/unix/osstuff.c
cc -c sys/unix/osstuff.c -o sys/unix/osstuff.o $(CFLAGS)
# this doesn't compile with the -O switch (a NeXT compiler bug?)
xlisp/xljump.o : xlisp/xljump.c xlisp/xlisp.h
$(CC) -DCMTSTUFF -c xlisp/xljump.c -o xlisp/xljump.o
misc/intgen: misc/intgen.c
cd misc; make intgen
misc/unpacker: misc/unpacker.c misc/convert.c
cd misc; make unpacker
misc/packer: misc/packer.c misc/convert.c
cd misc; make packer
nyqsrc/sndfnintptrs.h: $(NYQHDRS) snd/snd.h misc/intgen
$(INTGEN) nyqsrc/sndfnint $(NYQHDRS)
nyqsrc/seqfnintptrs.h: $(CMTHDRS) misc/intgen
$(INTGEN) nyqsrc/seqfnint $(CMTHDRS)
clean:
cd misc; make clean
rm -f $(OBJECTS)
# Note that these files are machine-generated:
rm -f nyqsrc/sndfnintptrs.h nyqsrc/sndfnint.c nyqsrc/sndfnintdefs.h
rm -f nyqsrc/seqfnintptrs.h nyqsrc/seqfnint.c nyqsrc/seqfnintdefs.h
cleaner: clean
cd misc; make cleaner
rm -f *.backup */*.backup
rm -f *~ */*.*~
rm -f *.save */*.save
rm -f *.CKP */*.CKP
rm -f *.BAK */*.BAK
rm -f *.old */*.old
rm -f *.gold */*.gold
rm -f playparms
rm -f points.dat

View File

@@ -0,0 +1,37 @@
; local definition for play
; this one is for NeXT:
(if (not (boundp '*default-sf-format*))
(setf *default-sf-format* snd-head-NeXT))
(if (not (boundp '*default-sound-file*))
(compute-default-sound-file))
(if (not (boundp '*default-sf-dir*))
(setf *default-sf-dir* "./"))
(if (not (boundp '*default-sf-mode*))
(setf *default-sf-mode* snd-head-mode-pcm))
(if (not (boundp '*default-sf-bits*))
(setf *default-sf-bits* 16))
(if (not (boundp '*default-plot-file*))
(setf *default-plot-file* "points.dat"))
;; PLAY-FILE - play a sound file
;;
(defun play-file (name)
(system (strcat "sndplay " (soundfilename name))))
;; R - replay last file written with PLAY
(defun r () (play-file *default-sound-file*))
;; PLAY - write value of an expression to file and play it
;;
(defmacro play (expr)
`(prog (specs)
(setf specs (s-save (force-srate *sound-srate* ,expr)
1000000000 *default-sound-file*))
(r)))

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,101 @@
;; system.lsp -- system-dependent lisp code
; local definition for play
; this one is for Linux:
(if (not (boundp '*default-sf-format*))
(setf *default-sf-format* snd-head-wave))
(if (not (boundp '*default-sound-file*))
(compute-default-sound-file))
(if (not (boundp '*default-sf-dir*))
(setf *default-sf-dir* "./"))
(if (not (boundp '*default-sf-mode*))
(setf *default-sf-mode* snd-mode-pcm))
(if (not (boundp '*default-sf-bits*))
(setf *default-sf-bits* 16))
(if (not (boundp '*default-plot-file*))
(setf *default-plot-file* (strcat (get-user) "-points.dat")))
; FULL-NAME-P -- test if file name is a full path or relative path
;
; (otherwise the *default-sf-dir* will be prepended
;
(defun full-name-p (filename)
(or (eq (char filename 0) #\/)
(eq (char filename 0) #\.)))
; RELATIVE-PATH-P -- test if filename or path is a relative path
;
(defun relative-path-p (filename)
(not (eq (char filename 0) #\/)))
(setf *file-separator* #\/)
;; PLAY-FILE - play a sound file
;;
(defun play-file (name)
;;
;; WARNING: if you invoke an external program to play files,
;; but Nyquist uses internal (portaudio) interface to
;; play synthesized sound, Nyquist may fail to open the
;; sound device while it is playing a sound file and then
;; refuse to play anything. -RBD dec05
;; (system (strcat "sndplay " (soundfilename name))))
;; (system (strcat "play " (soundfilename name) )))
;;
(play (s-read (soundfilename name))))
;; R - replay last file written with PLAY
(defun r () (play-file *default-sound-file*))
;;;; use this old version if you want to use sndplay to play
;;;; the result file rather than play the samples as they
;;;; are computed. This version does not autonormalize.
;; PLAY - write value of an expression to file and play it
;;
;(defmacro play (expr)
; `(prog (specs)
; (setf specs (s-save (force-srate *sound-srate* ,expr)
; 1000000000 *default-sound-file*))
; (r)))
;;;;
; local definition for play
(defmacro play (expr)
`(s-save-autonorm ,expr NY:ALL *default-sound-file* :play *soundenable*))
;; for Linux, modify s-plot (defined in nyquist.lsp) by saving s-plot
;; in standard-s-plot, then call gnuplot to display the points.
;;
;; we also need to save the location of this file so we can find
;; nyquist-plot.txt, the command file for gnuplot
;;
;; This code is broken in the following ways:
;; it tries to run gnuplot even when plotting can be done by NyquistIDE
;; it plots "points.dat", but "points.dat" may not be correct
;; (see *default-plot-file*)
;; it assumes the plot file is in the current directory, but it
;; by default goes to the sound file directory
;;
;; Fix this code or complain if you want to plot with gnuplot while
;; running ny (or even NyquistIDE (jny) if you want). Otherwise, use
;; NyquistIDE to get s-plot to work.
;;
;(setf *runtime-path* (current-path))
;(display "system.lsp" *runtime-path*)
;
;(setfn standard-s-plot s-plot)
;
;(defun s-plot (s &optional (dur 2.0) (n 1000))
; (let (plot-file)
; (standard-s-plot s dur n) ;; this calculates the data points
; (setf plot-file (strcat *runtime-path* "nyquist-plot.txt"))
; (system (strcat "gnuplot -persist " plot-file))))

View File

@@ -0,0 +1,817 @@
/* unixtuff.c - unix interface routines for xlisp
* HISTORY
* 5-Mar-07 Dannenberg
* worked on hidden_msg() and hidden message handling
*
* 23-Dec-05 Dannenberg
* still more hacks: Mac and Linux don't disable character echo like
* windows does using a pipe to an IDE. To make UNIX versions match
* the Windows behavior (which is preferable), added
* echo_enabled flag and a function to set/clear it from XLisp.
* This will give unix-specific behavior to compensate for the
* unix-specific character echo. This worked, but printed
* (echoenabled nil) on the console, which was pretty ugly, so I
* added ctrl-e and ctrl-f handlers to turn echo on and off. Now
* Java can just send ctrl-f before anything else. Windows must
* ignore ctrl-f.
*
* 28-Apr-03 Mazzoni
* many changes for new conditional compilation organization
*
* 28-Jun-95 Dannenberg
* removed buffering (which could overflow) from ostgetc.
*
* 2-Aprl-88 Dale Amon at CMU-CSD
* Upgraded to xlisp 2.0. Used msstuff.c as a template.
*
* 20-Apr-87 Dale Amon at CMU-CSD
* Added control-c interrupt handler. Puts user in breakloop and allows
* continue. Prints line at which the interrupt occured. Interrupt
* occurs at first eval after ^C has been typed.
*
* 19-APR-87 Dale Amon at CMU-CSD
* switched from rand to random package. Corrected bug in osrand(). It
* did not use the argument n to calculate a rand in range 0 to n-1 as
* advertised.
* 28-OCT-05 Roger Dannenberg at CMU-SCS
* added directory listing functions
*/
#include "switches.h"
#include <errno.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <sys/types.h>
#include <dirent.h>
#include "xlisp.h"
#include "term.h"
#include "cext.h"
#include "userio.h"
#include "exitpa.h"
#include "nyq-osc-server.h"
#include "sliderdata.h" /* define sliders -- not just for OSC */
#include "sound.h" /* define nosc_enabled and mark_sound_time */
#include "falloc.h" /* define table_memory */
#define LBSIZE 200
/* external variables */
extern LVAL s_unbound,s_true;
extern FILE *tfp;
/* local variables */
static int lindex;
static int lcount = 0;
static int lposition;
static int line_edit = TRUE;
#ifndef READ_LINE
#define typeahead_max 128
static char typeahead[typeahead_max];
static int typeahead_tail = 0;
static int typeahead_head = 0;
static char lbuf[LBSIZE];
static int lpos[LBSIZE];
#endif
static int echo_enabled = 1;
/* forward declarations */
FORWARD LOCAL void xflush();
FORWARD LOCAL int xcheck();
FORWARD LOCAL void hidden_msg();
/*==========================================================================*/
/* control-c interrupt handling routines and variables. Uses B4.2 signal
handling. Previous SIGINT handler is saved just in case someday we want
to play with turning control c on and off.
*/
#include <signal.h>
static int ctc = FALSE;
static void control_c(int x) {ctc = TRUE;}
void ctcinit() {signal ( SIGINT, control_c );}
static void ctcreset() {signal ( SIGINT, control_c );}
/*==========================================================================*/
const char os_pathchar = '/';
const char os_sepchar = ':';
/* osinit - initialize */
void osinit(const char *banner)
{
printf("%s\n",banner);
/* start the random number generator. Older version was srand(1)
seed of 1 makes the sequence repeatable. Random gives better
pseudo randomness than does rand().
*/
#if USE_RAND
srand(1);
#endif
#if USE_RANDOM
srandom(1);
#endif
#ifndef UNIX
/* set control c trap to local routine */
ctcinit();
#else
/* sets terminal for raw input and calls ctcinit too */
term_init();
term_character();
#endif
lposition = 0;
lindex = 0;
lcount = 0;
}
/* osfinish - clean up before returning to the operating system */
void osfinish(void)
{
term_exit();
portaudio_exit();
}
/* oserror - print an error message */
void oserror(const char *msg) {printf("error: %s\n",msg);}
/* osaopen - open an ascii file */
FILE *osaopen(name,mode) const char *name,*mode; {
FILE *fp = NULL;
if (ok_to_open(name, mode))
fp = fopen(name,mode);
#ifdef DEBUG_INPUT
printf("osaopen on %s yields %x\n", name, fp);
if (strcmp(name, "/home/rbd/nyquist/lib/xm-test.lsp") == 0) {
// when DEBUG_INPUT is set, this generates a compiler error
// on linux -RBD
debug_input_fp = fp;
printf("osaopen: debug_input_fp gets %x\n", debug_input_fp);
}
#endif
return fp;
}
/* osbopen - open a binary file */
FILE *osbopen(name,mode) const char *name,*mode;
{ char bmode[10];
FILE *fp = NULL;
strcpy(bmode,mode); strcat(bmode,"b");
if (ok_to_open(name, bmode))
fp = fopen(name,bmode);
return fp;
}
/* osclose - close a file */
int osclose(fp) FILE *fp;
{
#ifdef DEBUG_INPUT
if (debug_input_fp == fp) {
debug_input_fp = NULL;
printf("osclose: debug_input_fp gets %x\n", debug_input_fp);
}
#endif
/* when XLISP is loading files and an error is encountered, the files
* are automatically closed so that the OS will not lock them, confusing
* the user. So we could get here and the file could already be closed
*/
return (fp ? fclose(fp) : 0);
}
/* osagetc - get a character from an ascii file */
int osagetc(fp) FILE *fp; {
#ifdef DEBUG_INPUT
int c = getc(fp);
ungetc(c, fp);
#endif
return (getc(fp));
}
/* osaputc - put a character to an ascii file */
int osaputc(int ch, FILE *fp) { return (putc(ch,fp)); }
/* osoutflush - flush output to a file */
void osoutflush(FILE *fp) { fflush(fp); }
extern int dbgflg;
/* osbgetc - get a character from a binary file */
/* int osbgetc(fp) FILE *fp; {return (getc(fp));} */
int osbgetc(FILE *fp) {
int c = (getc(fp));
/* if (dbgflg) printf("osbgetc: got %d from FILE %x\n", c, fp);
*/
return c;
}
/* osbputc - put a character to a binary file */
int osbputc(ch,fp) int ch; FILE *fp; {return (putc(ch,fp));}
#ifdef OLDEST_OSTGETC
/* ostgetc - get a character from the terminal */
int ostgetc()
{
int ch;
switch (ch = term_getchar()) {
case '\n':
lbuf[lcount++] = '\n';
lposition = 0;
if (tfp)
for (lindex = 0; lindex < lcount; ++lindex)
osaputc(lbuf[lindex],tfp);
lindex = 0; lcount = 0;
return (ch);
case '\010':
case '\177':
if (lcount) {
lcount--;
while (lposition > lpos[lcount]) {
lposition--;
}
}
break;
case '\032':
xflush();
return (EOF);
default:
if (ch == '\t' || (ch >= 0x20 && ch < 0x7F)) {
lbuf[lcount] = ch;
lpos[lcount] = lposition;
if (ch == '\t')
do {} while (++lposition & 7);
else {lposition++;}
lcount++;
return (ch);
}
else {
xflush();
switch (ch) {
case '\003': xltoplevel(); /* control-c */
case '\007': xlcleanup(); /* control-g */
case '\020': xlcontinue(); /* control-p */
case '\032': return (EOF); /* control-z */
/* moved from oscheck until I figure out how to
set up interrupt to handle these two */
case '\002': xflush(); xlbreak("BREAK",s_unbound);
break; /* control-b */
case '\024': xinfo(); break; /* control-t */
default: return (ch);
}
}
}
}
#else
#if OLD_OSTGETC
/* ostgetc - get a character from the terminal */
int ostgetc()
{ int ch;
for (;;) {
ch = term_getchar();
oscheck();
switch (ch) {
case '\003': xltoplevel(); /* control-c */
case '\007': xlcleanup(); /* control-g */
case '\020': xlcontinue(); /* control-p */
case '\032': return EOF; /* control-z */
case '\002': xflush(); xlbreak("BREAK",s_unbound);
break; /* control-b */
case '\024': xinfo(); break; /* control-t */
case '\t':
case '\n':
default:
if (tfp) osaputc(ch, tfp);
return ch;
}
}
}
#else
#ifdef READLINE
#include <readline/readline.h>
#include <readline/history.h>
char *readline_line = NULL;
int readline_pos = 0;
int readline_len = 0;
int readline_first = 1;
extern int xldebug;
int ostgetc()
{
int rval;
if (readline_first)
using_history();
if (!readline_line) {
char prompt[10];
if (xldebug==0)
sprintf(prompt, "> ");
else
sprintf(prompt, "%d> ", xldebug);
readline_line = readline(prompt);
if (readline_line == NULL)
return EOF;
add_history(readline_line);
readline_len = strlen(readline_line);
readline_pos = 0;
}
rval = readline_line[readline_pos];
if (readline_pos == readline_len) {
free(readline_line);
readline_line = NULL;
return '\n';
}
readline_pos++;
return rval;
}
#else /* no readline */
void end_of_line_edit()
{
line_edit = FALSE;
if (tfp) {
for (lindex = 0; lindex < lcount; ++lindex)
osaputc(lbuf[lindex], tfp);
}
lindex = 0;
}
/* THIS IS THE "REAL" ostgetc(): */
LOCAL int rawtchar()
{
int ch;
if (typeahead_tail != typeahead_head) {
ch = typeahead[typeahead_head++];
typeahead_head &= (typeahead_max - 1);
/* printf("[%c]", ch); */
if (ch == 0xFF) ch = -1; /* char to int conversion of EOF */
} else {
fflush(stdout); /* necessary on OS X with Java IDE - I don't know why. */
/* don't use getchar() or buffering will cause out-of-order input */
ch = term_getchar();
/* printf("{%c}", ch); */
}
return ch;
}
int ostgetc()
{
/*
* NOTE: lbuf[] accumulates characters as they are typed
* lpos[] is the column position of the characters
* lcount is the number of characters in lbuf
* lposition is current position
* lindex is index of next char to output
* line_edit is true iff we're inputing characters
*
*/
int ch;
while (line_edit) {
ch = rawtchar();
if (ch == EOF) xlisp_wrapup();
oscheck(); /* in case user typed ^C */
/* assume for now we should add the character */
lbuf[lcount] = ch;
lpos[lcount] = lposition;
lcount++;
lposition++;
/* now do all the special character processing */
switch (ch) {
case '\001': /* take out non-printing character */
lcount--;
lposition--;
mark_audio_time();
break;
case '\n':
lposition = 0;
end_of_line_edit();
if (echo_enabled) {
osaputc('\r', stdout);
osaputc(ch, stdout);
}
break;
/* delete key generates: 1b, 5b, 33, 7E
which is: ESC, [, 3, ~ */
case '\010': /* backspace */
case '\177': /* delete */
lcount--; /* take out backspace or delete char */
lposition--;
if (lcount) {
lcount--;
while (lposition > lpos[lcount]) {
if (echo_enabled) {
putchar('\010');
putchar(' ');
putchar('\010');
}
lposition--;
}
}
break;
case '\025': /* control-u */
lcount--;
lposition--;
if (lcount) {
while (lposition > lpos[0]) {
if (echo_enabled) {
putchar('\010');
putchar(' ');
putchar('\010');
}
lposition--;
}
lcount = 0;
}
break;
/* note that control-z never reaches here */
case '\003': /* control-c */
xltoplevel();
lcount = 0;
break;
case '\007': /* control-g */
lcount--; /* take out non-printing char */
lposition--;
xlcleanup();
lcount = 0;
break;
case '\016':
lcount--; /* take out non-printing char */
lposition--;
hidden_msg(); /* process hidden msg chars */
break;
case '\020': /* control-p */
lcount--; /* take out non-printing char */
lposition--;
xlcontinue();
lcount = 0;
break;
case '\002':
lcount--; /* take out non-printing char */
lposition--;
xflush(); /* control-b */
xlbreak("BREAK",s_unbound);
break;
case '\005': /* control-e */
lcount--; /* take out non-printing char */
lposition--;
echo_enabled = TRUE;
break;
case '\006': /* control-f */
lcount--; /* take out non-printing char */
lposition--;
echo_enabled = FALSE;
break;
case '\024': /* control-t */
lcount--; /* take out non-printing char */
lposition--;
xinfo();
lcount = 0;
break;
case '\t': /* TAB */
lposition--; /* undo the increment above */
do {
lposition++;
if (echo_enabled) osaputc(' ', stdout);
} while (lposition & 7);
break;
default:
if (echo_enabled) osaputc(ch, stdout);
break;
}
// avoid line buffer overflow here:
if (lposition > LBSIZE - 10) {
// buffer is about to overflow, so write newline and
// feed chars to XLISP
if (echo_enabled) {
osaputc('\r', stdout);
osaputc('\n', stdout);
}
lposition = 0;
end_of_line_edit();
}
}
if (lindex + 1 >= lcount) {
lcount = 0;
line_edit = TRUE;
}
ch = lbuf[lindex++];
/* printf("-%c-", ch); */
if (echo_enabled) fflush(stdout);
return ch;
}
#endif
#endif
#endif
/* ostputc - put a character to the terminal */
void ostputc(int ch)
{
oscheck(); /* check for control characters */
/* output the character */
if (ch == '\n') {lposition = 0;}
else {lposition++;}
/* output the character to the transcript file */
if (tfp) osaputc(ch,tfp);
putchar(((char) ch));
}
/* ostoutflush - flush output buffer */
void ostoutflush()
{
if (tfp) fflush(tfp);
fflush(stdout);
}
/* osflush - flush the terminal input buffer */
void osflush(void)
{
lindex = lcount = lposition = 0;
line_edit = TRUE;
}
/* hidden_msg - process a "hidden message"
*
* NOTE: a "hidden message" is a sequence of characters starting
* with '\016' and ending with '\021'. These are designed to allow
* a graphical interface, namely jNyqIDE, to control sliders in
* real-time (during synthesis). The character sequences are hidden
* meaning they are not echoed and they are not interpreted as LISP.
*
* This function assumes that '\016' has been received already.
*/
LOCAL void hidden_msg()
{
#define MSGBUF_MAX 64
char msgbuf[MSGBUF_MAX];
int msgbufx = 0;
char type_char = rawtchar();
char ch;
// message is terminated by '\021'
while ((ch = term_getchar()) != '\021' && ch != EOF &&
msgbufx < MSGBUF_MAX - 1) {
msgbuf[msgbufx++] = ch;
}
msgbuf[msgbufx++] = 0;
// printf("hidden message: %s, len %ld\n", msgbuf, (long) strlen(msgbuf));
if (msgbufx < MSGBUF_MAX) {
if (type_char == 'S') { // slider change message
int index;
float value;
if (sscanf(msgbuf, "%d %g", &index, &value) == 2) {
set_slider(index, value);
}
}
} /* other hidden messages could be parsed here */
}
/* oscheck - check for control characters during execution */
/*
* NOTE: to support type-ahead, unused characters are put
* into a queue to be removed by ostgetc
*/
void oscheck(void)
{
int ch;
#if OSC
if (nosc_enabled) nosc_poll();
#endif
if (ctc) { /* control-c */
/* printf("[oscheck: control-c detected]"); */
ctc=FALSE; ctcreset();
xflush(); xltoplevel(); return;
}
if ((ch = xcheck())) {
switch (ch) {
case BREAK_CHAR: /* control-b */
/* printf("BREAK_CHAR\n"); */
xflush(); xlbreak("BREAK",s_unbound); break;
case '\024': /* control-t */
/* printf("control-t\n"); */
xinfo(); break;
case '\025': /* control-u */
/* printf("control-u\n"); */
xcleanup();
case '\016': { /* begin hidden message */
/* printf("hidden msg\n"); */
hidden_msg();
break;
}
case '\001': /* control-a -- mark audio time */
mark_audio_time(); break;
case -1: /* EOF - lost connection, so die */
xlisp_wrapup();
break;
case -2: /* no character was ready */
break;
default:
/* printf("Got %d\n", ch); */
#ifndef READ_LINE
/* printf("+%c+", ch); */
typeahead[typeahead_tail++] = ch;
typeahead_tail &= (typeahead_max - 1);
if (typeahead_tail == typeahead_head) {
oserror("Input buffer overflow\n");
}
#endif
break;
}
}
run_time++;
// when compute-bound, run_time is incremented by 10000 in about 15s, so
// that's about 700 Hz. We want to flush any output at about 2Hz, so
// we'll pick 400 as a round number.
// It's 2014, and now I'm seeing 3000 Hz. That's very high, so I
// changed SAMPLE to get this down to about 66Hz. Using % 30 to get
// 2Hz flush rate.
if (run_time % 30 == 0) {
fflush(stdout);
if (run_time_limit > 0 && run_time > run_time_limit) {
xlfatal("Run time limit exceeded");
}
if (memory_limit > 0 &&
npools * MAXPOOLSIZE + table_memory + total >
memory_limit * 1000000) {
xlfatal("Memory limit exceeded");
}
}
}
/* xflush - flush the input line buffer and start a new line */
LOCAL void xflush()
{
osflush();
ostputc('\n');
}
/* xsystem - execute a system command */
LVAL xsystem()
{ /*LVAL strval;*/
unsigned char *cmd = NULL;
if (SAFE_NYQUIST) return NULL;
if (moreargs())
cmd = (unsigned char *)getstring(xlgastring());
xllastarg();
return (system((char *) cmd) == -1 ? cvfixnum((FIXTYPE)errno) : s_true);
}
/* xsetdir -- set current directory of the process */
LVAL xsetdir()
{
char *dir = (char *)getstring(xlgastring());
int result = -1;
LVAL cwd = NULL;
int verbose = TRUE;
if (moreargs()) {
verbose = (xlgetarg() != NIL);
}
xllastarg();
if (ok_to_open(dir, "r"))
result = chdir(dir);
if (result) {
/* perror("SETDIR"); -- Nyquist uses SETDIR to search for directories
* at startup, so failures are normal, and seeing error messages
* could be confusing, so don't print them. The NULL return indicates
* an error, but doesn't tell which one it is.
* But now, SETDIR has a second verbose parameter that is nil when
* searching for directories. -RBD
*/
if (verbose) perror("Directory Setting Error");
return NULL;
}
dir = getcwd(NULL, 1000);
if (dir) {
cwd = cvstring(dir);
free(dir);
}
return cwd;
}
/* xget_temp_path -- get a path to create temp files */
LVAL xget_temp_path()
{
return cvstring("/tmp/");
}
/* xget_user -- get a string identifying the user, for use in file names */
LVAL xget_user()
{
const char *user = getenv("USER");
if (!user || !*user) {
errputstr("Warning: could not get user ID, using 'nyquist'\n");
user = "nyquist";
}
return cvstring(user);
}
/* xechoenabled -- set/clear echo_enabled flag (unix only) */
LVAL xechoenabled()
{
int flag = (xlgetarg() != NULL);
xllastarg();
echo_enabled = flag;
return NULL;
}
#define OSDIR_LIST_READY 0
#define OSDIR_LIST_STARTED 1
#define OSDIR_LIST_DONE 2
static int osdir_list_status = OSDIR_LIST_READY;
static DIR *osdir_dir;
/* osdir_list_start -- open a directory listing */
int osdir_list_start(const char *path)
{
if (osdir_list_status != OSDIR_LIST_READY) {
osdir_list_finish(); /* close current listing */
}
osdir_dir = NULL;
if (ok_to_open(path, "r"))
osdir_dir = opendir(path);
if (!osdir_dir) {
return FALSE;
}
osdir_list_status = OSDIR_LIST_STARTED;
return TRUE;
}
/* osdir_list_next -- read the next entry from a directory */
const char *osdir_list_next()
{
if (osdir_list_status != OSDIR_LIST_STARTED) {
return NULL;
}
struct dirent *entry = readdir(osdir_dir);
if (!entry) {
osdir_list_status = OSDIR_LIST_DONE;
return NULL;
} else {
return entry->d_name;
}
}
/* osdir_list_finish -- close an open directory */
void osdir_list_finish()
{
if (osdir_list_status != OSDIR_LIST_READY) {
closedir(osdir_dir);
}
osdir_list_status = OSDIR_LIST_READY;
}
/* xcheck -- return a character if one is present */
LOCAL int xcheck()
{
int ch = term_testchar();
return ch;
}
/* xgetkey - get a key from the keyboard */
LVAL xgetkey() {xllastarg(); return (cvfixnum((FIXTYPE)term_getchar()));}
/* ossymbols - enter os specific symbols */
void ossymbols(void) {}
/* xsetupconsole -- used to configure window in Win32 version */
LVAL xsetupconsole() { return NIL; }

View File

@@ -0,0 +1,60 @@
sys/unix/osx/README.txt -- notes on OS X (Apple) version of Nyquist
Roger B. Dannenberg
23 April 2011
HOW TO REBUILD STUBS TO CALL NYQUIST PRIMITIVES FROM XLISP
The file nyqsrc/sndfnint.c implements XLISP functions that correspond
to Nyquist primitives such as SND-OSC. This file and a number of
associated files (such as sndfnintdefs.h) are built automatically by
the intgen program. This process is automated in the Linux Makefile,
but here's how to do it under OS X.
0. COMPILE NYQUIST WITH XCODE
Before changing the sources, make sure you can compile your existing
installation of Nyquist using XCODE.
1. COMPILE INTGEN WITH XCODE
From XCODE, choose Active Configuration: Deployment, Active Target:
intgen, Active Executable: intgen.
Build (Command-B).
Result is in nyquist/macosxproject/build/Deployment/intgen. You might
want to make an alias to this or move it to your ~/bin directory or
change your PATH so you can execute this from the command line without
typing the full path. In the following, I assume simply typing
"intgen" will run the application.
After setting up intgen to run, the command "which intgen" should
indicate the path to intgen that the shell will use.
2. WORK IN A TERMINAL WINDOW AND CD TO THE MAIN NYQUIST DIRECTORY
Open a Terminal application.
cd nyquist [or navigate using cd to wherever your nyquist sources are]
3. GENERATE THE INTERFACE CODE
Note: if you are adding a new primitive, you will want to modify
sys/unix/osx/sndfnint.cmdline by inserting the name of the header (.h)
file for the new primitive. (For a nyquist release, the name should
also go into a list in nyquist/misc/transfiles.lsp and the Makefiles
should be rebuilt, but we'll stick to the Apple-specific tasks here.)
intgen @sys/unix/osx/sndfnint.cmdline
The files sndfnint.c, sndfnint.lsp, sndfnintdefs.h, and sndfnintptrs.h
will be generated and placed in the current (nyquist) directory.
4. INSTALL THE FILES
You might want to make a safe backup copy of the original
nyqsrc/sndfnint.c, nyqsrc/sndfnint.lsp, nyqsrc/sndfnintdefs.h, and
nyqsrc/sndfnintptrs.h for reference.
Move the new files to nyqsrc:
mv sndfnint.c sndfnint.lsp sndfnintdefs.h sndfnintptrs.h nyqsrc
5. RECOMPILE NYQUIST WITH XCODE

View File

@@ -0,0 +1,5 @@
#csh
# INSTRUCTIONS: for developers, in the top nyquist directory:
# ln -l sys/unix/osx/run
# ln -s macosxproject/build/ny
java -cp jnyqide/NyquistIDE.jar jnyqide.Main

View File

@@ -0,0 +1,105 @@
sndfnint
nyqsrc/sndfmt.h
nylsf/sndfile.h
nyqsrc/sound.h
nyqsrc/add.h
nyqsrc/avg.h
nyqsrc/compose.h
nyqsrc/convolve.h
nyqsrc/downsample.h
nyqsrc/fft.h
nyqsrc/inverse.h
nyqsrc/multiseq.h
nyqsrc/resamp.h
nyqsrc/resampv.h
nyqsrc/samples.h
nyqsrc/sndmax.h
nyqsrc/sndread.h
nyqsrc/sndseq.h
nyqsrc/sndsliders.h
nyqsrc/sndwrite.h
nyqsrc/yin.h
nyqsrc/nyq-osc-server.h
nyqsrc/trigger.h
nyqsrc/lpanal.h
nyqsrc/phasevocoder.h
nyqsrc/pvshell.h
tran/abs.h
tran/allpoles.h
tran/alpass.h
tran/alpasscv.h
tran/alpassvv.h
tran/amosc.h
tran/areson.h
tran/aresonvc.h
tran/aresoncv.h
tran/aresonvv.h
tran/atone.h
tran/atonev.h
tran/biquadfilt.h
tran/buzz.h
tran/chase.h
tran/clip.h
tran/congen.h
tran/const.h
tran/coterm.h
tran/delaycc.h
tran/delaycv.h
tran/eqbandvvv.h
tran/exp.h
tran/follow.h
tran/fmosc.h
tran/fromobject.h
tran/fromarraystream.h
tran/gate.h
tran/ifft.h
tran/instrclar.h
tran/instrclarall.h
tran/instrclarfreq.h
tran/instrsax.h
tran/instrsaxall.h
tran/instrsaxfreq.h
tran/integrate.h
tran/log.h
tran/lpreson.h
tran/maxv.h
tran/offset.h
tran/oneshot.h
tran/osc.h
tran/partial.h
tran/pluck.h
tran/prod.h
tran/pwl.h
tran/quantize.h
tran/recip.h
tran/reson.h
tran/resonvc.h
tran/resoncv.h
tran/resonvv.h
tran/sampler.h
tran/scale.h
tran/shape.h
tran/sine.h
tran/siosc.h
tran/slope.h
tran/sqrt.h
tran/tapf.h
tran/tapv.h
tran/tone.h
tran/tonev.h
tran/upsample.h
tran/white.h
tran/stkrev.h
tran/stkpitshift.h
tran/stkchorus.h
tran/instrbow.h
tran/instrbowedfreq.h
tran/instrbanded.h
tran/instrmandolin.h
tran/instrsitar.h
tran/instrmodalbar.h
tran/instrflute.h
tran/instrflutefreq.h
tran/instrfluteall.h
tran/fmfb.h
tran/fmfbv.h

View File

@@ -0,0 +1,69 @@
;; system.lsp -- system-dependent lisp code
; local definition for play
; this one is for Mac OS-X:
(if (not (boundp '*default-sf-format*))
(setf *default-sf-format* snd-head-wave))
(if (not (boundp '*default-sound-file*))
(compute-default-sound-file))
(if (not (boundp '*default-sf-dir*))
(setf *default-sf-dir* "/tmp"))
(format t "*default-sf-dir* (default sound file directory) is ~A~%"
*default-sf-dir*)
(if (not (boundp '*default-sf-mode*))
(setf *default-sf-mode* snd-mode-pcm))
(if (not (boundp '*default-sf-bits*))
(setf *default-sf-bits* 16))
(if (not (boundp '*default-plot-file*))
(setf *default-plot-file* (strcat (get-user) "-points.dat")))
; FULL-NAME-P -- test if file name is a full path or relative path
;
; (otherwise the *default-sf-dir* will be prepended
;
(defun full-name-p (filename)
(or (eq (char filename 0) #\/)
(eq (char filename 0) #\.)))
; RELATIVE-PATH-P -- test if filename or path is a relative path
;
(defun relative-path-p (filename)
(not (eq (char filename 0) #\/)))
(setf *file-separator* #\/)
;; PLAY-FILE - play a sound file
;;
(defun play-file (name)
(s-save (s-read name) NY:ALL "" :play t))
;; R - replay last file written with PLAY
(defun r () (play-file *default-sound-file*))
;;;; use this old version if you want to use sndplay to play
;;;; the result file rather than play the samples as they
;;;; are computed. This version does not autonormalize.
;; PLAY - write value of an expression to file and play it
;;
;(defmacro play (expr)
; `(prog (specs)
; (setf specs (s-save (force-srate *sound-srate* ,expr)
; 1000000000 *default-sound-file*))
; (r)))
;;;;
; local definition for play
(defmacro play (expr)
`(s-save-autonorm ,expr NY:ALL *default-sound-file* :play *soundenable*))
;; use standard s-plot

View File

@@ -0,0 +1,2 @@
graph < points.dat | plot -Ttek

View File

@@ -0,0 +1,520 @@
#
# Makefile for Nyquist, SYSTEM-TYPE is PMAX
# run make in the top-level Nyquist directory to compile Nyquist
#
# NOTE: this file is machine-generated. DO NOT EDIT!
# Instead, modify makefile.lsp and regenerate the makefile.
# Ports and bug fixes are welcome - please mail them to
# dannenberg@cs.cmu.edu. Thanks.
#
# This is the resulting executable (normally "ny"):
NY = ny
# Standard list of includes (common to all unix versions)
INCL = -Inyqsrc -Itran -Ixlisp -Isys/unix -Icmt -Isnd -Ifft
# system dependent stuff for pmax:
CC = cc
CFLAGS = -DCMTSTUFF -g $(INCL)
LN = cc
LFLAGS = -lm
INTGEN = misc/intgen
# Object files for Nyquist:
OBJECTS = xlisp/extern.o xlisp/xldmem.o xlisp/xlbfun.o xlisp/xlcont.o \
xlisp/xldbug.o xlisp/xleval.o xlisp/xlfio.o xlisp/xlftab.o \
xlisp/xlglob.o xlisp/xlimage.o xlisp/xlinit.o xlisp/xlio.o \
xlisp/xlisp.o xlisp/xljump.o xlisp/xllist.o xlisp/xlmath.o \
xlisp/xlobj.o xlisp/xlpp.o xlisp/xlprin.o xlisp/xlread.o \
xlisp/xlstr.o xlisp/xlsubr.o xlisp/xlsym.o xlisp/xlsys.o \
tran/amosc.o tran/clip.o tran/const.o tran/fmosc.o \
tran/integrate.o tran/log.o tran/maxv.o tran/osc.o \
tran/prod.o tran/buzz.o tran/pwl.o tran/recip.o \
tran/upsample.o tran/scale.o tran/sine.o tran/partial.o \
tran/white.o tran/tone.o tran/tonev.o tran/atonev.o \
tran/atone.o tran/reson.o tran/areson.o tran/resonvc.o \
tran/resoncv.o tran/aresonvc.o tran/aresoncv.o tran/resonvv.o \
tran/aresonvv.o tran/offset.o tran/slope.o tran/delay.o \
tran/delaycv.o tran/shape.o tran/sampler.o tran/exp.o \
tran/siosc.o tran/follow.o tran/gate.o tran/quantize.o \
tran/ifft.o tran/congen.o tran/fromobject.o tran/fromarraystream.o \
tran/coterm.o tran/convolve.o tran/alpass.o tran/oneshot.o \
tran/chase.o tran/tapv.o tran/biquad.o tran/pluck.o \
cmt/cext.o cmt/cleanup.o cmt/cmdline.o cmt/cmtcmd.o \
cmt/moxc.o cmt/mem.o cmt/midifile.o cmt/midifns.o \
cmt/record.o cmt/seq.o cmt/seqmread.o cmt/seqmwrite.o \
cmt/seqread.o cmt/seqwrite.o cmt/tempomap.o cmt/timebase.o \
cmt/userio.o nyqsrc/debug.o nyqsrc/falloc.o nyqsrc/add.o \
nyqsrc/local.o nyqsrc/downsample.o nyqsrc/handlers.o nyqsrc/multiread.o \
nyqsrc/multiseq.o nyqsrc/samples.o nyqsrc/seqext.o nyqsrc/seqinterf.o \
nyqsrc/sndread.o nyqsrc/sndseq.o nyqsrc/sndwrite.o nyqsrc/sndmax.o \
nyqsrc/sound.o nyqsrc/stats.o nyqsrc/compose.o nyqsrc/inverse.o \
nyqsrc/resamp.o nyqsrc/resampv.o nyqsrc/ffilterkit.o nyqsrc/avg.o \
nyqsrc/fft.o nyqsrc/sndfail.o fft/fftn.o nyqsrc/sndfnint.o \
nyqsrc/seqfnint.o snd/audiopmax.o snd/sndpmax.o snd/ieeecvt.o \
snd/snd.o snd/sndcvt.o snd/sndio.o snd/sndheader.o \
sys/unix/osstuff.o sys/unix/term.o
# Sound functions to add to xlisp
NYQHDRS = snd/snd.h nyqsrc/sound.h nyqsrc/downsample.h nyqsrc/sndread.h \
nyqsrc/sndseq.h nyqsrc/add.h nyqsrc/multiseq.h nyqsrc/samples.h \
nyqsrc/sndwrite.h nyqsrc/sndmax.h nyqsrc/compose.h nyqsrc/inverse.h \
nyqsrc/resamp.h nyqsrc/resampv.h nyqsrc/fft.h nyqsrc/avg.h \
tran/amosc.h tran/clip.h tran/const.h tran/fmosc.h \
tran/integrate.h tran/log.h tran/maxv.h tran/osc.h \
tran/prod.h tran/buzz.h tran/pwl.h tran/recip.h \
tran/upsample.h tran/scale.h tran/sine.h tran/partial.h \
tran/white.h tran/tone.h tran/tonev.h tran/atonev.h \
tran/atone.h tran/reson.h tran/areson.h tran/resonvc.h \
tran/resoncv.h tran/aresonvc.h tran/aresoncv.h tran/resonvv.h \
tran/aresonvv.h tran/offset.h tran/slope.h tran/delaycc.h \
tran/delaycv.h tran/shape.h tran/sampler.h tran/exp.h \
tran/siosc.h tran/follow.h tran/gate.h tran/quantize.h \
tran/ifft.h tran/congen.h tran/fromobject.h tran/fromarraystream.h \
tran/coterm.h tran/convolve.h tran/alpass.h tran/oneshot.h \
tran/chase.h tran/tapv.h tran/biquad.h tran/pluck.h
CMTHDRS = cmt/seqdecls.h nyqsrc/seqext.h cmt/seq.h nyqsrc/seqinterf.h \
cmt/seqread.h cmt/seqmread.h cmt/seqwrite.h cmt/seqmwrite.h
EVERYTHING = $(NY) runtime/system.lsp
CURRENT = $(EVERYTHING)
current: $(CURRENT)
$(NY): $(OBJECTS)
$(LN) $(OBJECTS) $(LFLAGS) -o $(NY)
# copy appropriate system.lsp and make it read-only;
# changes should be made to sys/unix/<system>/system.lsp
runtime/system.lsp: sys/unix/pmax/system.lsp
chmod +w runtime/system.lsp
cp -p sys/unix/pmax/system.lsp runtime/system.lsp
chmod -w runtime/system.lsp
nyqsrc/debug.o: nyqsrc/debug.c nyqsrc/debug.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/debug.c -o nyqsrc/debug.o $(CFLAGS)
nyqsrc/falloc.o: nyqsrc/falloc.c nyqsrc/falloc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/falloc.c -o nyqsrc/falloc.o $(CFLAGS)
nyqsrc/add.o: nyqsrc/add.c nyqsrc/add.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/add.c -o nyqsrc/add.o $(CFLAGS)
nyqsrc/local.o: nyqsrc/local.c xlisp/xlisp.h nyqsrc/sound.h
cc -c nyqsrc/local.c -o nyqsrc/local.o $(CFLAGS)
nyqsrc/downsample.o: nyqsrc/downsample.c nyqsrc/downsample.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/downsample.c -o nyqsrc/downsample.o $(CFLAGS)
nyqsrc/handlers.o: nyqsrc/handlers.c
cc -c nyqsrc/handlers.c -o nyqsrc/handlers.o $(CFLAGS)
nyqsrc/multiread.o: nyqsrc/multiread.c nyqsrc/multiread.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/multiread.c -o nyqsrc/multiread.o $(CFLAGS)
nyqsrc/multiseq.o: nyqsrc/multiseq.c nyqsrc/multiseq.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/multiseq.c -o nyqsrc/multiseq.o $(CFLAGS)
nyqsrc/samples.o: nyqsrc/samples.c nyqsrc/samples.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/samples.c -o nyqsrc/samples.o $(CFLAGS)
nyqsrc/seqext.o: nyqsrc/seqext.c nyqsrc/seqext.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/seqext.c -o nyqsrc/seqext.o $(CFLAGS)
nyqsrc/seqinterf.o: nyqsrc/seqinterf.c nyqsrc/seqinterf.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/seqinterf.c -o nyqsrc/seqinterf.o $(CFLAGS)
nyqsrc/sndread.o: nyqsrc/sndread.c nyqsrc/sndread.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndread.c -o nyqsrc/sndread.o $(CFLAGS)
nyqsrc/sndseq.o: nyqsrc/sndseq.c nyqsrc/sndseq.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndseq.c -o nyqsrc/sndseq.o $(CFLAGS)
nyqsrc/sndwrite.o: nyqsrc/sndwrite.c nyqsrc/sndwrite.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndwrite.c -o nyqsrc/sndwrite.o $(CFLAGS)
nyqsrc/sndmax.o: nyqsrc/sndmax.c nyqsrc/sndmax.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndmax.c -o nyqsrc/sndmax.o $(CFLAGS)
nyqsrc/sound.o: nyqsrc/sound.c nyqsrc/sound.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sound.c -o nyqsrc/sound.o $(CFLAGS)
nyqsrc/stats.o: nyqsrc/stats.c nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/stats.c -o nyqsrc/stats.o $(CFLAGS)
nyqsrc/compose.o: nyqsrc/compose.c nyqsrc/compose.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/compose.c -o nyqsrc/compose.o $(CFLAGS)
nyqsrc/inverse.o: nyqsrc/inverse.c nyqsrc/inverse.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/inverse.c -o nyqsrc/inverse.o $(CFLAGS)
nyqsrc/resamp.o: nyqsrc/resamp.c nyqsrc/resamp.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/resamp.c -o nyqsrc/resamp.o $(CFLAGS)
nyqsrc/resampv.o: nyqsrc/resampv.c nyqsrc/resampv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/resampv.c -o nyqsrc/resampv.o $(CFLAGS)
nyqsrc/ffilterkit.o: nyqsrc/ffilterkit.c nyqsrc/ffilterkit.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/ffilterkit.c -o nyqsrc/ffilterkit.o $(CFLAGS)
nyqsrc/avg.o: nyqsrc/avg.c nyqsrc/avg.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/avg.c -o nyqsrc/avg.o $(CFLAGS)
nyqsrc/fft.o: nyqsrc/fft.c nyqsrc/fft.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/fft.c -o nyqsrc/fft.o $(CFLAGS)
nyqsrc/sndfail.o: nyqsrc/sndfail.c
cc -c nyqsrc/sndfail.c -o nyqsrc/sndfail.o $(CFLAGS)
snd/audiopmax.o: snd/audiopmax.c snd/snd.h
cc -c snd/audiopmax.c -o snd/audiopmax.o $(CFLAGS)
snd/sndpmax.o: snd/sndpmax.c snd/sndpmax.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/sndpmax.c -o snd/sndpmax.o $(CFLAGS)
snd/ieeecvt.o: snd/ieeecvt.c snd/ieeecvt.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/ieeecvt.c -o snd/ieeecvt.o $(CFLAGS)
snd/snd.o: snd/snd.c snd/snd.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/snd.c -o snd/snd.o $(CFLAGS)
snd/sndcvt.o: snd/sndcvt.c snd/snd.h
cc -c snd/sndcvt.c -o snd/sndcvt.o $(CFLAGS)
snd/sndio.o: snd/sndio.c snd/snd.h
cc -c snd/sndio.c -o snd/sndio.o $(CFLAGS)
snd/sndheader.o: snd/sndheader.c snd/sndheader.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/sndheader.c -o snd/sndheader.o $(CFLAGS)
fft/fftn.o: fft/fftn.c fft/fftn.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c fft/fftn.c -o fft/fftn.o $(CFLAGS)
tran/amosc.o: tran/amosc.c tran/amosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/amosc.c -o tran/amosc.o $(CFLAGS)
tran/clip.o: tran/clip.c tran/clip.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/clip.c -o tran/clip.o $(CFLAGS)
tran/const.o: tran/const.c tran/const.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/const.c -o tran/const.o $(CFLAGS)
tran/fmosc.o: tran/fmosc.c tran/fmosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fmosc.c -o tran/fmosc.o $(CFLAGS)
tran/integrate.o: tran/integrate.c tran/integrate.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/integrate.c -o tran/integrate.o $(CFLAGS)
tran/log.o: tran/log.c tran/log.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/log.c -o tran/log.o $(CFLAGS)
tran/maxv.o: tran/maxv.c tran/maxv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/maxv.c -o tran/maxv.o $(CFLAGS)
tran/osc.o: tran/osc.c tran/osc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/osc.c -o tran/osc.o $(CFLAGS)
tran/prod.o: tran/prod.c tran/prod.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/prod.c -o tran/prod.o $(CFLAGS)
tran/buzz.o: tran/buzz.c tran/buzz.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/buzz.c -o tran/buzz.o $(CFLAGS)
tran/pwl.o: tran/pwl.c tran/pwl.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/pwl.c -o tran/pwl.o $(CFLAGS)
tran/recip.o: tran/recip.c tran/recip.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/recip.c -o tran/recip.o $(CFLAGS)
tran/upsample.o: tran/upsample.c tran/upsample.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/upsample.c -o tran/upsample.o $(CFLAGS)
tran/scale.o: tran/scale.c tran/scale.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/scale.c -o tran/scale.o $(CFLAGS)
tran/sine.o: tran/sine.c tran/sine.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/sine.c -o tran/sine.o $(CFLAGS)
tran/partial.o: tran/partial.c tran/partial.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/partial.c -o tran/partial.o $(CFLAGS)
tran/white.o: tran/white.c tran/white.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/white.c -o tran/white.o $(CFLAGS)
tran/tone.o: tran/tone.c tran/tone.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tone.c -o tran/tone.o $(CFLAGS)
tran/tonev.o: tran/tonev.c tran/tonev.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tonev.c -o tran/tonev.o $(CFLAGS)
tran/atonev.o: tran/atonev.c tran/atonev.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/atonev.c -o tran/atonev.o $(CFLAGS)
tran/atone.o: tran/atone.c tran/atone.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/atone.c -o tran/atone.o $(CFLAGS)
tran/reson.o: tran/reson.c tran/reson.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/reson.c -o tran/reson.o $(CFLAGS)
tran/areson.o: tran/areson.c tran/areson.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/areson.c -o tran/areson.o $(CFLAGS)
tran/resonvc.o: tran/resonvc.c tran/resonvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resonvc.c -o tran/resonvc.o $(CFLAGS)
tran/resoncv.o: tran/resoncv.c tran/resoncv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resoncv.c -o tran/resoncv.o $(CFLAGS)
tran/aresonvc.o: tran/aresonvc.c tran/aresonvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresonvc.c -o tran/aresonvc.o $(CFLAGS)
tran/aresoncv.o: tran/aresoncv.c tran/aresoncv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresoncv.c -o tran/aresoncv.o $(CFLAGS)
tran/resonvv.o: tran/resonvv.c tran/resonvv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resonvv.c -o tran/resonvv.o $(CFLAGS)
tran/aresonvv.o: tran/aresonvv.c tran/aresonvv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresonvv.c -o tran/aresonvv.o $(CFLAGS)
tran/offset.o: tran/offset.c tran/offset.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/offset.c -o tran/offset.o $(CFLAGS)
tran/slope.o: tran/slope.c tran/slope.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/slope.c -o tran/slope.o $(CFLAGS)
tran/delaycc.o: tran/delaycc.c tran/delaycc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/delaycc.c -o tran/delaycc.o $(CFLAGS)
tran/delaycv.o: tran/delaycv.c tran/delaycv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/delaycv.c -o tran/delaycv.o $(CFLAGS)
tran/shape.o: tran/shape.c tran/shape.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/shape.c -o tran/shape.o $(CFLAGS)
tran/sampler.o: tran/sampler.c tran/sampler.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/sampler.c -o tran/sampler.o $(CFLAGS)
tran/exp.o: tran/exp.c tran/exp.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/exp.c -o tran/exp.o $(CFLAGS)
tran/siosc.o: tran/siosc.c tran/siosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/siosc.c -o tran/siosc.o $(CFLAGS)
tran/follow.o: tran/follow.c tran/follow.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/follow.c -o tran/follow.o $(CFLAGS)
tran/gate.o: tran/gate.c tran/gate.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/gate.c -o tran/gate.o $(CFLAGS)
tran/quantize.o: tran/quantize.c tran/quantize.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/quantize.c -o tran/quantize.o $(CFLAGS)
tran/ifft.o: tran/ifft.c tran/ifft.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/ifft.c -o tran/ifft.o $(CFLAGS)
tran/congen.o: tran/congen.c tran/congen.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/congen.c -o tran/congen.o $(CFLAGS)
tran/fromobject.o: tran/fromobject.c tran/fromobject.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fromobject.c -o tran/fromobject.o $(CFLAGS)
tran/fromarraystream.o: tran/fromarraystream.c tran/fromarraystream.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fromarraystream.c -o tran/fromarraystream.o $(CFLAGS)
tran/coterm.o: tran/coterm.c tran/coterm.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/coterm.c -o tran/coterm.o $(CFLAGS)
tran/convolve.o: tran/convolve.c tran/convolve.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/convolve.c -o tran/convolve.o $(CFLAGS)
tran/alpass.o: tran/alpass.c tran/alpass.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/alpass.c -o tran/alpass.o $(CFLAGS)
tran/oneshot.o: tran/oneshot.c tran/oneshot.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/oneshot.c -o tran/oneshot.o $(CFLAGS)
tran/chase.o: tran/chase.c tran/chase.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/chase.c -o tran/chase.o $(CFLAGS)
tran/tapv.o: tran/tapv.c tran/tapv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tapv.c -o tran/tapv.o $(CFLAGS)
tran/biquad.o: tran/biquad.c tran/biquad.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/biquad.c -o tran/biquad.o $(CFLAGS)
tran/pluck.o: tran/pluck.c tran/pluck.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/pluck.c -o tran/pluck.o $(CFLAGS)
nyqsrc/sndfnint.o: nyqsrc/sndfnint.c
cc -c nyqsrc/sndfnint.c -o nyqsrc/sndfnint.o $(CFLAGS)
nyqsrc/seqfnint.o: nyqsrc/seqfnint.c
cc -c nyqsrc/seqfnint.c -o nyqsrc/seqfnint.o $(CFLAGS)
xlisp/xlftab.o: nyqsrc/sndfnintptrs.h nyqsrc/sndfnintdefs.h nyqsrc/seqfnintptrs.h nyqsrc/seqfnintdefs.h
cc -c xlisp/xlftab.c -o xlisp/xlftab.o $(CFLAGS)
xlisp/extern.o: xlisp/extern.c
cc -c xlisp/extern.c -o xlisp/extern.o $(CFLAGS)
xlisp/xldmem.o: xlisp/xldmem.c
cc -c xlisp/xldmem.c -o xlisp/xldmem.o $(CFLAGS)
xlisp/xlbfun.o: xlisp/xlbfun.c
cc -c xlisp/xlbfun.c -o xlisp/xlbfun.o $(CFLAGS)
xlisp/xlcont.o: xlisp/xlcont.c
cc -c xlisp/xlcont.c -o xlisp/xlcont.o $(CFLAGS)
xlisp/xldbug.o: xlisp/xldbug.c
cc -c xlisp/xldbug.c -o xlisp/xldbug.o $(CFLAGS)
xlisp/xleval.o: xlisp/xleval.c
cc -c xlisp/xleval.c -o xlisp/xleval.o $(CFLAGS)
xlisp/xlfio.o: xlisp/xlfio.c
cc -c xlisp/xlfio.c -o xlisp/xlfio.o $(CFLAGS)
xlisp/xlglob.o: xlisp/xlglob.c
cc -c xlisp/xlglob.c -o xlisp/xlglob.o $(CFLAGS)
xlisp/xlimage.o: xlisp/xlimage.c
cc -c xlisp/xlimage.c -o xlisp/xlimage.o $(CFLAGS)
xlisp/xlinit.o: xlisp/xlinit.c
cc -c xlisp/xlinit.c -o xlisp/xlinit.o $(CFLAGS)
xlisp/xlio.o: xlisp/xlio.c
cc -c xlisp/xlio.c -o xlisp/xlio.o $(CFLAGS)
xlisp/xlisp.o: xlisp/xlisp.c
cc -c xlisp/xlisp.c -o xlisp/xlisp.o $(CFLAGS)
xlisp/xljump.o: xlisp/xljump.c
cc -c xlisp/xljump.c -o xlisp/xljump.o $(CFLAGS)
xlisp/xllist.o: xlisp/xllist.c
cc -c xlisp/xllist.c -o xlisp/xllist.o $(CFLAGS)
xlisp/xlmath.o: xlisp/xlmath.c
cc -c xlisp/xlmath.c -o xlisp/xlmath.o $(CFLAGS)
xlisp/xlobj.o: xlisp/xlobj.c
cc -c xlisp/xlobj.c -o xlisp/xlobj.o $(CFLAGS)
xlisp/xlpp.o: xlisp/xlpp.c
cc -c xlisp/xlpp.c -o xlisp/xlpp.o $(CFLAGS)
xlisp/xlprin.o: xlisp/xlprin.c
cc -c xlisp/xlprin.c -o xlisp/xlprin.o $(CFLAGS)
xlisp/xlread.o: xlisp/xlread.c
cc -c xlisp/xlread.c -o xlisp/xlread.o $(CFLAGS)
xlisp/xlstr.o: xlisp/xlstr.c
cc -c xlisp/xlstr.c -o xlisp/xlstr.o $(CFLAGS)
xlisp/xlsubr.o: xlisp/xlsubr.c
cc -c xlisp/xlsubr.c -o xlisp/xlsubr.o $(CFLAGS)
xlisp/xlsym.o: xlisp/xlsym.c
cc -c xlisp/xlsym.c -o xlisp/xlsym.o $(CFLAGS)
xlisp/xlsys.o: xlisp/xlsys.c
cc -c xlisp/xlsys.c -o xlisp/xlsys.o $(CFLAGS)
cmt/cext.o: cmt/cext.c
cc -c cmt/cext.c -o cmt/cext.o $(CFLAGS)
cmt/cleanup.o: cmt/cleanup.c
cc -c cmt/cleanup.c -o cmt/cleanup.o $(CFLAGS)
cmt/cmdline.o: cmt/cmdline.c
cc -c cmt/cmdline.c -o cmt/cmdline.o $(CFLAGS)
cmt/cmtcmd.o: cmt/cmtcmd.c
cc -c cmt/cmtcmd.c -o cmt/cmtcmd.o $(CFLAGS)
cmt/moxc.o: cmt/moxc.c
cc -c cmt/moxc.c -o cmt/moxc.o $(CFLAGS)
cmt/mem.o: cmt/mem.c
cc -c cmt/mem.c -o cmt/mem.o $(CFLAGS)
cmt/midifile.o: cmt/midifile.c
cc -c cmt/midifile.c -o cmt/midifile.o $(CFLAGS)
cmt/midifns.o: cmt/midifns.c
cc -c cmt/midifns.c -o cmt/midifns.o $(CFLAGS)
cmt/record.o: cmt/record.c
cc -c cmt/record.c -o cmt/record.o $(CFLAGS)
cmt/seq.o: cmt/seq.c
cc -c cmt/seq.c -o cmt/seq.o $(CFLAGS)
cmt/seqmread.o: cmt/seqmread.c
cc -c cmt/seqmread.c -o cmt/seqmread.o $(CFLAGS)
cmt/seqmwrite.o: cmt/seqmwrite.c
cc -c cmt/seqmwrite.c -o cmt/seqmwrite.o $(CFLAGS)
cmt/seqread.o: cmt/seqread.c
cc -c cmt/seqread.c -o cmt/seqread.o $(CFLAGS)
cmt/seqwrite.o: cmt/seqwrite.c
cc -c cmt/seqwrite.c -o cmt/seqwrite.o $(CFLAGS)
cmt/tempomap.o: cmt/tempomap.c
cc -c cmt/tempomap.c -o cmt/tempomap.o $(CFLAGS)
cmt/timebase.o: cmt/timebase.c
cc -c cmt/timebase.c -o cmt/timebase.o $(CFLAGS)
cmt/userio.o: cmt/userio.c
cc -c cmt/userio.c -o cmt/userio.o $(CFLAGS)
sys/unix/osstuff.o: sys/unix/osstuff.c
cc -c sys/unix/osstuff.c -o sys/unix/osstuff.o $(CFLAGS)
misc/intgen: misc/intgen.c
cd misc; make intgen
misc/unpacker: misc/unpacker.c misc/convert.c
cd misc; make unpacker
misc/packer: misc/packer.c misc/convert.c
cd misc; make packer
nyqsrc/sndfnintptrs.h: $(NYQHDRS) snd/snd.h misc/intgen
$(INTGEN) nyqsrc/sndfnint $(NYQHDRS)
nyqsrc/seqfnintptrs.h: $(CMTHDRS) misc/intgen
$(INTGEN) nyqsrc/seqfnint $(CMTHDRS)
clean:
cd misc; make clean
rm -f $(OBJECTS)
# Note that these files are machine-generated:
rm -f nyqsrc/sndfnintptrs.h nyqsrc/sndfnint.c nyqsrc/sndfnintdefs.h
rm -f nyqsrc/seqfnintptrs.h nyqsrc/seqfnint.c nyqsrc/seqfnintdefs.h
cleaner: clean
cd misc; make cleaner
rm -f *.backup */*.backup
rm -f *~ */*.*~
rm -f *.save */*.save
rm -f *.CKP */*.CKP
rm -f *.BAK */*.BAK
rm -f *.old */*.old
rm -f *.gold */*.gold
rm -f playparms
rm -f points.dat

View File

@@ -0,0 +1,37 @@
; machine.lsp -- machine/system-dependent definitions
; rs6000
(if (not (boundp '*default-sf-format*))
(setf *default-sf-format* snd-head-none))
(if (not (boundp '*default-sound-file*))
(compute-default-sound-file))
(if (not (boundp '*default-sf-dir*))
(setf *default-sf-dir* "/tmp/"))
(if (not (boundp '*default-sf-mode*))
(setf *default-sf-mode* snd-mode-pcm))
(if (not (boundp '*default-sf-bits*))
(setf *default-sf-bits* 16))
; local definition for play
(defun p6k ()
(system (format nil
"/usr/itc/projects/depot/tactus/bin/acpaplay ~A/~A < playparms"
*default-sf-dir*
*default-sound-file*)))
(defmacro play (expr)
`(prog (specs playparms)
(setf specs (s-save ',expr 1000000000 *default-sound-file*))
(setf playparms (open "playparms" :direction :output))
(format playparms "~A~%16~%2~%~A~%" (car specs) (cadr specs))
(close playparms)
(p6k)))

View File

@@ -0,0 +1,529 @@
#
# Makefile for Nyquist, SYSTEM-TYPE is RS6K
# run make in the top-level Nyquist directory to compile Nyquist
#
# NOTE: this file is machine-generated. DO NOT EDIT!
# Instead, modify makefile.lsp and regenerate the makefile.
# Ports and bug fixes are welcome - please mail them to
# dannenberg@cs.cmu.edu. Thanks.
#
# This is the resulting executable (normally "ny"):
NY = ny
# Standard list of includes (common to all unix versions)
INCL = -Inyqsrc -Itran -Ixlisp -Isys/unix -Icmt -Isnd -Ifft
# system dependent stuff for rs6k:
MIDI = /afs/cs/project/music/rs6k/midilib
CC = cc
# change -g to -O for optimization
CFLAGS = -DCMTSTUFF -g $(INCL) -I$(MIDI)
XFLAGS = $(CFLAGS) -qlanglvl=extended
LN = xlc -qattr -qlist
LFLAGS = -lm -L$(MIDI) -lmidi -lbsd -lg
INTGEN = misc/intgen
# Object files for Nyquist:
OBJECTS = xlisp/extern.o xlisp/xldmem.o xlisp/xlbfun.o xlisp/xlcont.o \
xlisp/xldbug.o xlisp/xleval.o xlisp/xlfio.o xlisp/xlftab.o \
xlisp/xlglob.o xlisp/xlimage.o xlisp/xlinit.o xlisp/xlio.o \
xlisp/xlisp.o xlisp/xljump.o xlisp/xllist.o xlisp/xlmath.o \
xlisp/xlobj.o xlisp/xlpp.o xlisp/xlprin.o xlisp/xlread.o \
xlisp/xlstr.o xlisp/xlsubr.o xlisp/xlsym.o xlisp/xlsys.o \
tran/amosc.o tran/clip.o tran/const.o tran/fmosc.o \
tran/integrate.o tran/log.o tran/maxv.o tran/osc.o \
tran/prod.o tran/buzz.o tran/pwl.o tran/recip.o \
tran/upsample.o tran/scale.o tran/sine.o tran/partial.o \
tran/white.o tran/tone.o tran/tonev.o tran/atonev.o \
tran/atone.o tran/reson.o tran/areson.o tran/resonvc.o \
tran/resoncv.o tran/aresonvc.o tran/aresoncv.o tran/resonvv.o \
tran/aresonvv.o tran/offset.o tran/slope.o tran/delay.o \
tran/delaycv.o tran/shape.o tran/sampler.o tran/exp.o \
tran/siosc.o tran/follow.o tran/gate.o tran/quantize.o \
tran/ifft.o tran/congen.o tran/fromobject.o tran/fromarraystream.o \
tran/coterm.o tran/convolve.o tran/alpass.o tran/oneshot.o \
tran/chase.o tran/tapv.o tran/biquad.o tran/pluck.o \
cmt/cext.o cmt/cleanup.o cmt/cmdline.o cmt/cmtcmd.o \
cmt/moxc.o cmt/mem.o cmt/midifile.o cmt/midifns.o \
cmt/record.o cmt/seq.o cmt/seqmread.o cmt/seqmwrite.o \
cmt/seqread.o cmt/seqwrite.o cmt/tempomap.o cmt/timebase.o \
cmt/userio.o nyqsrc/debug.o nyqsrc/falloc.o nyqsrc/add.o \
nyqsrc/local.o nyqsrc/downsample.o nyqsrc/handlers.o nyqsrc/multiread.o \
nyqsrc/multiseq.o nyqsrc/samples.o nyqsrc/seqext.o nyqsrc/seqinterf.o \
nyqsrc/sndread.o nyqsrc/sndseq.o nyqsrc/sndwrite.o nyqsrc/sndmax.o \
nyqsrc/sound.o nyqsrc/stats.o nyqsrc/compose.o nyqsrc/inverse.o \
nyqsrc/resamp.o nyqsrc/resampv.o nyqsrc/ffilterkit.o nyqsrc/avg.o \
nyqsrc/fft.o nyqsrc/sndfail.o fft/fftn.o nyqsrc/sndfnint.o \
nyqsrc/seqfnint.o snd/audiors6k.o snd/sndrs6k.o snd/ieeecvt.o \
snd/snd.o snd/sndcvt.o snd/sndio.o snd/sndheader.o \
sys/unix/osstuff.o sys/unix/term.o
# Sound functions to add to xlisp
NYQHDRS = snd/snd.h nyqsrc/sound.h nyqsrc/downsample.h nyqsrc/sndread.h \
nyqsrc/sndseq.h nyqsrc/add.h nyqsrc/multiseq.h nyqsrc/samples.h \
nyqsrc/sndwrite.h nyqsrc/sndmax.h nyqsrc/compose.h nyqsrc/inverse.h \
nyqsrc/resamp.h nyqsrc/resampv.h nyqsrc/fft.h nyqsrc/avg.h \
tran/amosc.h tran/clip.h tran/const.h tran/fmosc.h \
tran/integrate.h tran/log.h tran/maxv.h tran/osc.h \
tran/prod.h tran/buzz.h tran/pwl.h tran/recip.h \
tran/upsample.h tran/scale.h tran/sine.h tran/partial.h \
tran/white.h tran/tone.h tran/tonev.h tran/atonev.h \
tran/atone.h tran/reson.h tran/areson.h tran/resonvc.h \
tran/resoncv.h tran/aresonvc.h tran/aresoncv.h tran/resonvv.h \
tran/aresonvv.h tran/offset.h tran/slope.h tran/delaycc.h \
tran/delaycv.h tran/shape.h tran/sampler.h tran/exp.h \
tran/siosc.h tran/follow.h tran/gate.h tran/quantize.h \
tran/ifft.h tran/congen.h tran/fromobject.h tran/fromarraystream.h \
tran/coterm.h tran/convolve.h tran/alpass.h tran/oneshot.h \
tran/chase.h tran/tapv.h tran/biquad.h tran/pluck.h
CMTHDRS = cmt/seqdecls.h nyqsrc/seqext.h cmt/seq.h nyqsrc/seqinterf.h \
cmt/seqread.h cmt/seqmread.h cmt/seqwrite.h cmt/seqmwrite.h
EVERYTHING = $(NY) runtime/system.lsp
CURRENT = $(EVERYTHING)
current: $(CURRENT)
$(NY): $(OBJECTS)
$(LN) $(OBJECTS) $(LFLAGS) -o $(NY)
# copy appropriate system.lsp and make it read-only;
# changes should be made to sys/unix/<system>/system.lsp
runtime/system.lsp: sys/unix/rs6k/system.lsp
chmod +w runtime/system.lsp
cp -p sys/unix/rs6k/system.lsp runtime/system.lsp
chmod -w runtime/system.lsp
nyqsrc/debug.o: nyqsrc/debug.c nyqsrc/debug.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/debug.c -o nyqsrc/debug.o $(CFLAGS)
nyqsrc/falloc.o: nyqsrc/falloc.c nyqsrc/falloc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/falloc.c -o nyqsrc/falloc.o $(CFLAGS)
nyqsrc/add.o: nyqsrc/add.c nyqsrc/add.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/add.c -o nyqsrc/add.o $(CFLAGS)
nyqsrc/local.o: nyqsrc/local.c xlisp/xlisp.h nyqsrc/sound.h
cc -c nyqsrc/local.c -o nyqsrc/local.o $(CFLAGS)
nyqsrc/downsample.o: nyqsrc/downsample.c nyqsrc/downsample.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/downsample.c -o nyqsrc/downsample.o $(CFLAGS)
nyqsrc/handlers.o: nyqsrc/handlers.c
cc -c nyqsrc/handlers.c -o nyqsrc/handlers.o $(CFLAGS)
nyqsrc/multiread.o: nyqsrc/multiread.c nyqsrc/multiread.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/multiread.c -o nyqsrc/multiread.o $(CFLAGS)
nyqsrc/multiseq.o: nyqsrc/multiseq.c nyqsrc/multiseq.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/multiseq.c -o nyqsrc/multiseq.o $(CFLAGS)
nyqsrc/samples.o: nyqsrc/samples.c nyqsrc/samples.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/samples.c -o nyqsrc/samples.o $(CFLAGS)
nyqsrc/seqext.o: nyqsrc/seqext.c nyqsrc/seqext.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/seqext.c -o nyqsrc/seqext.o $(CFLAGS)
nyqsrc/seqinterf.o: nyqsrc/seqinterf.c nyqsrc/seqinterf.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/seqinterf.c -o nyqsrc/seqinterf.o $(CFLAGS)
nyqsrc/sndread.o: nyqsrc/sndread.c nyqsrc/sndread.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndread.c -o nyqsrc/sndread.o $(CFLAGS)
nyqsrc/sndseq.o: nyqsrc/sndseq.c nyqsrc/sndseq.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndseq.c -o nyqsrc/sndseq.o $(CFLAGS)
nyqsrc/sndwrite.o: nyqsrc/sndwrite.c nyqsrc/sndwrite.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndwrite.c -o nyqsrc/sndwrite.o $(CFLAGS)
nyqsrc/sndmax.o: nyqsrc/sndmax.c nyqsrc/sndmax.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndmax.c -o nyqsrc/sndmax.o $(CFLAGS)
nyqsrc/sound.o: nyqsrc/sound.c nyqsrc/sound.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sound.c -o nyqsrc/sound.o $(CFLAGS)
nyqsrc/stats.o: nyqsrc/stats.c nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/stats.c -o nyqsrc/stats.o $(CFLAGS)
nyqsrc/compose.o: nyqsrc/compose.c nyqsrc/compose.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/compose.c -o nyqsrc/compose.o $(CFLAGS)
nyqsrc/inverse.o: nyqsrc/inverse.c nyqsrc/inverse.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/inverse.c -o nyqsrc/inverse.o $(CFLAGS)
nyqsrc/resamp.o: nyqsrc/resamp.c nyqsrc/resamp.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/resamp.c -o nyqsrc/resamp.o $(CFLAGS)
nyqsrc/resampv.o: nyqsrc/resampv.c nyqsrc/resampv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/resampv.c -o nyqsrc/resampv.o $(CFLAGS)
nyqsrc/ffilterkit.o: nyqsrc/ffilterkit.c nyqsrc/ffilterkit.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/ffilterkit.c -o nyqsrc/ffilterkit.o $(CFLAGS)
nyqsrc/avg.o: nyqsrc/avg.c nyqsrc/avg.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/avg.c -o nyqsrc/avg.o $(CFLAGS)
nyqsrc/fft.o: nyqsrc/fft.c nyqsrc/fft.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/fft.c -o nyqsrc/fft.o $(CFLAGS)
nyqsrc/sndfail.o: nyqsrc/sndfail.c
cc -c nyqsrc/sndfail.c -o nyqsrc/sndfail.o $(CFLAGS)
snd/audiors6k.o: snd/audiors6k.c snd/snd.h
cc -c snd/audiors6k.c -o snd/audiors6k.o $(CFLAGS)
snd/sndrs6k.o: snd/sndrs6k.c snd/sndrs6k.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/sndrs6k.c -o snd/sndrs6k.o $(CFLAGS)
snd/ieeecvt.o: snd/ieeecvt.c snd/ieeecvt.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/ieeecvt.c -o snd/ieeecvt.o $(CFLAGS)
snd/snd.o: snd/snd.c snd/snd.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/snd.c -o snd/snd.o $(CFLAGS)
snd/sndcvt.o: snd/sndcvt.c snd/snd.h
cc -c snd/sndcvt.c -o snd/sndcvt.o $(CFLAGS)
snd/sndio.o: snd/sndio.c snd/snd.h
cc -c snd/sndio.c -o snd/sndio.o $(CFLAGS)
snd/sndheader.o: snd/sndheader.c snd/sndheader.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/sndheader.c -o snd/sndheader.o $(CFLAGS)
fft/fftn.o: fft/fftn.c fft/fftn.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c fft/fftn.c -o fft/fftn.o $(CFLAGS)
tran/amosc.o: tran/amosc.c tran/amosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/amosc.c -o tran/amosc.o $(CFLAGS)
tran/clip.o: tran/clip.c tran/clip.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/clip.c -o tran/clip.o $(CFLAGS)
tran/const.o: tran/const.c tran/const.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/const.c -o tran/const.o $(CFLAGS)
tran/fmosc.o: tran/fmosc.c tran/fmosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fmosc.c -o tran/fmosc.o $(CFLAGS)
tran/integrate.o: tran/integrate.c tran/integrate.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/integrate.c -o tran/integrate.o $(CFLAGS)
tran/log.o: tran/log.c tran/log.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/log.c -o tran/log.o $(CFLAGS)
tran/maxv.o: tran/maxv.c tran/maxv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/maxv.c -o tran/maxv.o $(CFLAGS)
tran/osc.o: tran/osc.c tran/osc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/osc.c -o tran/osc.o $(CFLAGS)
tran/prod.o: tran/prod.c tran/prod.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/prod.c -o tran/prod.o $(CFLAGS)
tran/buzz.o: tran/buzz.c tran/buzz.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/buzz.c -o tran/buzz.o $(CFLAGS)
tran/pwl.o: tran/pwl.c tran/pwl.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/pwl.c -o tran/pwl.o $(CFLAGS)
tran/recip.o: tran/recip.c tran/recip.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/recip.c -o tran/recip.o $(CFLAGS)
tran/upsample.o: tran/upsample.c tran/upsample.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/upsample.c -o tran/upsample.o $(CFLAGS)
tran/scale.o: tran/scale.c tran/scale.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/scale.c -o tran/scale.o $(CFLAGS)
tran/sine.o: tran/sine.c tran/sine.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/sine.c -o tran/sine.o $(CFLAGS)
tran/partial.o: tran/partial.c tran/partial.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/partial.c -o tran/partial.o $(CFLAGS)
tran/white.o: tran/white.c tran/white.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/white.c -o tran/white.o $(CFLAGS)
tran/tone.o: tran/tone.c tran/tone.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tone.c -o tran/tone.o $(CFLAGS)
tran/tonev.o: tran/tonev.c tran/tonev.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tonev.c -o tran/tonev.o $(CFLAGS)
tran/atonev.o: tran/atonev.c tran/atonev.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/atonev.c -o tran/atonev.o $(CFLAGS)
tran/atone.o: tran/atone.c tran/atone.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/atone.c -o tran/atone.o $(CFLAGS)
tran/reson.o: tran/reson.c tran/reson.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/reson.c -o tran/reson.o $(CFLAGS)
tran/areson.o: tran/areson.c tran/areson.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/areson.c -o tran/areson.o $(CFLAGS)
tran/resonvc.o: tran/resonvc.c tran/resonvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resonvc.c -o tran/resonvc.o $(CFLAGS)
tran/resoncv.o: tran/resoncv.c tran/resoncv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resoncv.c -o tran/resoncv.o $(CFLAGS)
tran/aresonvc.o: tran/aresonvc.c tran/aresonvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresonvc.c -o tran/aresonvc.o $(CFLAGS)
tran/aresoncv.o: tran/aresoncv.c tran/aresoncv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresoncv.c -o tran/aresoncv.o $(CFLAGS)
tran/resonvv.o: tran/resonvv.c tran/resonvv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resonvv.c -o tran/resonvv.o $(CFLAGS)
tran/aresonvv.o: tran/aresonvv.c tran/aresonvv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresonvv.c -o tran/aresonvv.o $(CFLAGS)
tran/offset.o: tran/offset.c tran/offset.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/offset.c -o tran/offset.o $(CFLAGS)
tran/slope.o: tran/slope.c tran/slope.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/slope.c -o tran/slope.o $(CFLAGS)
tran/delaycc.o: tran/delaycc.c tran/delaycc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/delaycc.c -o tran/delaycc.o $(CFLAGS)
tran/delaycv.o: tran/delaycv.c tran/delaycv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/delaycv.c -o tran/delaycv.o $(CFLAGS)
tran/shape.o: tran/shape.c tran/shape.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/shape.c -o tran/shape.o $(CFLAGS)
tran/sampler.o: tran/sampler.c tran/sampler.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/sampler.c -o tran/sampler.o $(CFLAGS)
tran/exp.o: tran/exp.c tran/exp.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/exp.c -o tran/exp.o $(CFLAGS)
tran/siosc.o: tran/siosc.c tran/siosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/siosc.c -o tran/siosc.o $(CFLAGS)
tran/follow.o: tran/follow.c tran/follow.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/follow.c -o tran/follow.o $(CFLAGS)
tran/gate.o: tran/gate.c tran/gate.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/gate.c -o tran/gate.o $(CFLAGS)
tran/quantize.o: tran/quantize.c tran/quantize.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/quantize.c -o tran/quantize.o $(CFLAGS)
tran/ifft.o: tran/ifft.c tran/ifft.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/ifft.c -o tran/ifft.o $(CFLAGS)
tran/congen.o: tran/congen.c tran/congen.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/congen.c -o tran/congen.o $(CFLAGS)
tran/fromobject.o: tran/fromobject.c tran/fromobject.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fromobject.c -o tran/fromobject.o $(CFLAGS)
tran/fromarraystream.o: tran/fromarraystream.c tran/fromarraystream.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fromarraystream.c -o tran/fromarraystream.o $(CFLAGS)
tran/coterm.o: tran/coterm.c tran/coterm.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/coterm.c -o tran/coterm.o $(CFLAGS)
tran/convolve.o: tran/convolve.c tran/convolve.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/convolve.c -o tran/convolve.o $(CFLAGS)
tran/alpass.o: tran/alpass.c tran/alpass.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/alpass.c -o tran/alpass.o $(CFLAGS)
tran/oneshot.o: tran/oneshot.c tran/oneshot.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/oneshot.c -o tran/oneshot.o $(CFLAGS)
tran/chase.o: tran/chase.c tran/chase.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/chase.c -o tran/chase.o $(CFLAGS)
tran/tapv.o: tran/tapv.c tran/tapv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tapv.c -o tran/tapv.o $(CFLAGS)
tran/biquad.o: tran/biquad.c tran/biquad.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/biquad.c -o tran/biquad.o $(CFLAGS)
tran/pluck.o: tran/pluck.c tran/pluck.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/pluck.c -o tran/pluck.o $(CFLAGS)
nyqsrc/sndfnint.o: nyqsrc/sndfnint.c
cc -c nyqsrc/sndfnint.c -o nyqsrc/sndfnint.o $(CFLAGS)
nyqsrc/seqfnint.o: nyqsrc/seqfnint.c
cc -c nyqsrc/seqfnint.c -o nyqsrc/seqfnint.o $(CFLAGS)
xlisp/xlftab.o: nyqsrc/sndfnintptrs.h nyqsrc/sndfnintdefs.h nyqsrc/seqfnintptrs.h nyqsrc/seqfnintdefs.h
cc -c xlisp/xlftab.c -o xlisp/xlftab.o $(CFLAGS)
xlisp/extern.o: xlisp/extern.c
cc -c xlisp/extern.c -o xlisp/extern.o $(CFLAGS)
xlisp/xldmem.o: xlisp/xldmem.c
cc -c xlisp/xldmem.c -o xlisp/xldmem.o $(CFLAGS)
xlisp/xlbfun.o: xlisp/xlbfun.c
cc -c xlisp/xlbfun.c -o xlisp/xlbfun.o $(CFLAGS)
xlisp/xlcont.o: xlisp/xlcont.c
cc -c xlisp/xlcont.c -o xlisp/xlcont.o $(CFLAGS)
xlisp/xldbug.o: xlisp/xldbug.c
cc -c xlisp/xldbug.c -o xlisp/xldbug.o $(CFLAGS)
xlisp/xleval.o: xlisp/xleval.c
cc -c xlisp/xleval.c -o xlisp/xleval.o $(CFLAGS)
xlisp/xlfio.o: xlisp/xlfio.c
cc -c xlisp/xlfio.c -o xlisp/xlfio.o $(CFLAGS)
xlisp/xlglob.o: xlisp/xlglob.c
cc -c xlisp/xlglob.c -o xlisp/xlglob.o $(CFLAGS)
xlisp/xlimage.o: xlisp/xlimage.c
cc -c xlisp/xlimage.c -o xlisp/xlimage.o $(CFLAGS)
xlisp/xlinit.o: xlisp/xlinit.c
cc -c xlisp/xlinit.c -o xlisp/xlinit.o $(CFLAGS)
xlisp/xlio.o: xlisp/xlio.c
cc -c xlisp/xlio.c -o xlisp/xlio.o $(CFLAGS)
xlisp/xlisp.o: xlisp/xlisp.c
cc -c xlisp/xlisp.c -o xlisp/xlisp.o $(CFLAGS)
xlisp/xljump.o: xlisp/xljump.c
cc -c xlisp/xljump.c -o xlisp/xljump.o $(CFLAGS)
xlisp/xllist.o: xlisp/xllist.c
cc -c xlisp/xllist.c -o xlisp/xllist.o $(CFLAGS)
xlisp/xlmath.o: xlisp/xlmath.c
cc -c xlisp/xlmath.c -o xlisp/xlmath.o $(CFLAGS)
xlisp/xlobj.o: xlisp/xlobj.c
cc -c xlisp/xlobj.c -o xlisp/xlobj.o $(CFLAGS)
xlisp/xlpp.o: xlisp/xlpp.c
cc -c xlisp/xlpp.c -o xlisp/xlpp.o $(CFLAGS)
xlisp/xlprin.o: xlisp/xlprin.c
cc -c xlisp/xlprin.c -o xlisp/xlprin.o $(CFLAGS)
xlisp/xlread.o: xlisp/xlread.c
cc -c xlisp/xlread.c -o xlisp/xlread.o $(CFLAGS)
xlisp/xlstr.o: xlisp/xlstr.c
cc -c xlisp/xlstr.c -o xlisp/xlstr.o $(CFLAGS)
xlisp/xlsubr.o: xlisp/xlsubr.c
cc -c xlisp/xlsubr.c -o xlisp/xlsubr.o $(CFLAGS)
xlisp/xlsym.o: xlisp/xlsym.c
cc -c xlisp/xlsym.c -o xlisp/xlsym.o $(CFLAGS)
xlisp/xlsys.o: xlisp/xlsys.c
cc -c xlisp/xlsys.c -o xlisp/xlsys.o $(CFLAGS)
cmt/cext.o: cmt/cext.c
cc -c cmt/cext.c -o cmt/cext.o $(CFLAGS)
cmt/cleanup.o: cmt/cleanup.c
cc -c cmt/cleanup.c -o cmt/cleanup.o $(CFLAGS)
cmt/cmdline.o: cmt/cmdline.c
cc -c cmt/cmdline.c -o cmt/cmdline.o $(CFLAGS)
cmt/cmtcmd.o: cmt/cmtcmd.c
cc -c cmt/cmtcmd.c -o cmt/cmtcmd.o $(CFLAGS)
cmt/moxc.o: cmt/moxc.c
cc -c cmt/moxc.c -o cmt/moxc.o $(CFLAGS)
cmt/mem.o: cmt/mem.c
cc -c cmt/mem.c -o cmt/mem.o $(CFLAGS)
cmt/midifile.o: cmt/midifile.c
cc -c cmt/midifile.c -o cmt/midifile.o $(CFLAGS)
cmt/midifns.o: cmt/midifns.c
cc -c cmt/midifns.c -o cmt/midifns.o $(CFLAGS)
cmt/record.o: cmt/record.c
cc -c cmt/record.c -o cmt/record.o $(CFLAGS)
cmt/seq.o: cmt/seq.c
cc -c cmt/seq.c -o cmt/seq.o $(CFLAGS)
cmt/seqmread.o: cmt/seqmread.c
cc -c cmt/seqmread.c -o cmt/seqmread.o $(CFLAGS)
cmt/seqmwrite.o: cmt/seqmwrite.c
cc -c cmt/seqmwrite.c -o cmt/seqmwrite.o $(CFLAGS)
cmt/seqread.o: cmt/seqread.c
cc -c cmt/seqread.c -o cmt/seqread.o $(CFLAGS)
cmt/seqwrite.o: cmt/seqwrite.c
cc -c cmt/seqwrite.c -o cmt/seqwrite.o $(CFLAGS)
cmt/tempomap.o: cmt/tempomap.c
cc -c cmt/tempomap.c -o cmt/tempomap.o $(CFLAGS)
cmt/timebase.o: cmt/timebase.c
cc -c cmt/timebase.c -o cmt/timebase.o $(CFLAGS)
cmt/userio.o: cmt/userio.c
cc -c cmt/userio.c -o cmt/userio.o $(CFLAGS)
sys/unix/osstuff.o: sys/unix/osstuff.c
cc -c sys/unix/osstuff.c -o sys/unix/osstuff.o $(CFLAGS)
misc/intgen: misc/intgen.c
cd misc; make intgen
misc/unpacker: misc/unpacker.c misc/convert.c
cd misc; make unpacker
misc/packer: misc/packer.c misc/convert.c
cd misc; make packer
nyqsrc/sndfnintptrs.h: $(NYQHDRS) snd/snd.h misc/intgen
$(INTGEN) nyqsrc/sndfnint $(NYQHDRS)
nyqsrc/seqfnintptrs.h: $(CMTHDRS) misc/intgen
$(INTGEN) nyqsrc/seqfnint $(CMTHDRS)
clean:
cd misc; make clean
rm -f $(OBJECTS)
# Note that these files are machine-generated:
rm -f nyqsrc/sndfnintptrs.h nyqsrc/sndfnint.c nyqsrc/sndfnintdefs.h
rm -f nyqsrc/seqfnintptrs.h nyqsrc/seqfnint.c nyqsrc/seqfnintdefs.h
cleaner: clean
cd misc; make cleaner
rm -f *.backup */*.backup
rm -f *~ */*.*~
rm -f *.save */*.save
rm -f *.CKP */*.CKP
rm -f *.BAK */*.BAK
rm -f *.old */*.old
rm -f *.gold */*.gold
rm -f playparms
rm -f points.dat
tar: cleaner
sh -v sys/unix/cmu/tar.script
backup: cleaner
sh -v sys/unix/cmu/backup.script

View File

@@ -0,0 +1,3 @@
cat $1 | graph | tplot -Ttek
echo "Type ^D to exit"
cat

View File

@@ -0,0 +1,80 @@
; machine.lsp -- machine/system-dependent definitions
; rs6000
(if (not (boundp '*default-sf-format*))
(setf *default-sf-format* snd-head-NeXT))
(if (not (boundp '*default-sound-file*))
(compute-default-sound-file))
(if (not (boundp '*default-sf-dir*))
(setf *default-sf-dir* "/tmp/"))
(if (not (boundp '*default-sf-mode*))
(setf *default-sf-mode* snd-mode-pcm))
(if (not (boundp '*default-sf-bits*))
(setf *default-sf-bits* 16))
(if (not (boundp '*default-plot-file*))
(setf *default-plot-file* "points.dat"))
; turn off switch to play sound as it is computed
(setf *soundenable* nil)
; local definition for play
(defmacro play (expr)
`(let ()
(s-save-autonorm ,expr NY:ALL *default-sound-file* :play *soundenable*)
(r)))
(defun r ()
(play-file *default-sound-file*))
; PLAY-FILE -- play a file
(defun play-file (name)
(system (format nil "acpaplay ~A" (soundfilename name))))
; FULL-NAME-P -- test if file name is a full path or relative path
;
; (otherwise the *default-sf-dir* will be prepended
;
(defun full-name-p (filename)
(or (eq (char filename 0) #\/)
(eq (char filename 0) #\.)))
(setf *file-separator* #\/)
; save the standard function to write points to a file
;
(setfn s-plot-points s-plot)
; S-PLOT - plot a small number of points
;
(defun s-plot (&rest args)
(let ((n (soundfilename *default-plot-file*)))
(apply #'s-plot-points args)
(cond ((boundp '*plotscript-file*))
(t
(format t "*plotscript-file* is unbound, setting it to: \n")
(format t " sys/unix/rs6k/plotscript\n")
(format t "You may need to set it to a full path\n")
(setf *plotscript-file* "sys/unix/rs6k/plotscript")))
(system (format nil "xterm -t -e ~A ~A" *plotscript-file* n))))
; S-EDIT - run the audio editor on a sound
;
(defmacro s-edit (&optional expr)
`(prog ()
(if ,expr (s-save ,expr 1000000000 *default-sound-file*))
(system (format nil "audio_editor ~A &"
(soundfilename *default-sound-file*)))))

View File

@@ -0,0 +1,10 @@
mkdir cmt demos lib misc nyqsrc runtime sys test tran xlisp
cd sys
mkdir unix mac win
cd unix
mkdir cmu next pmax rs6k sgi sparc
cd ..
cd win
mkdir msvc
cd ..
cd ..

View File

@@ -0,0 +1,521 @@
#
# Makefile for Nyquist, SYSTEM-TYPE is SGI
# run make in the top-level Nyquist directory to compile Nyquist
#
# NOTE: this file is machine-generated. DO NOT EDIT!
# Instead, modify makefile.lsp and regenerate the makefile.
# Ports and bug fixes are welcome - please mail them to
# dannenberg@cs.cmu.edu. Thanks.
#
# This is the resulting executable (normally "ny"):
NY = ny
# Standard list of includes (common to all unix versions)
INCL = -Inyqsrc -Itran -Ixlisp -Isys/unix -Icmt -Isnd -Ifft
# system dependent stuff for sgi:
CC = cc
CFLAGS = -DCMTSTUFF -g $(INCL)
LN = cc
LFLAGS = -lm
# you would need -lmd if UNIX_IRIX_MIDIFNS were defined in midifns.c
INTGEN = misc/intgen
# Object files for Nyquist:
OBJECTS = xlisp/extern.o xlisp/xldmem.o xlisp/xlbfun.o xlisp/xlcont.o \
xlisp/xldbug.o xlisp/xleval.o xlisp/xlfio.o xlisp/xlftab.o \
xlisp/xlglob.o xlisp/xlimage.o xlisp/xlinit.o xlisp/xlio.o \
xlisp/xlisp.o xlisp/xljump.o xlisp/xllist.o xlisp/xlmath.o \
xlisp/xlobj.o xlisp/xlpp.o xlisp/xlprin.o xlisp/xlread.o \
xlisp/xlstr.o xlisp/xlsubr.o xlisp/xlsym.o xlisp/xlsys.o \
tran/amosc.o tran/clip.o tran/const.o tran/fmosc.o \
tran/integrate.o tran/log.o tran/maxv.o tran/osc.o \
tran/prod.o tran/buzz.o tran/pwl.o tran/recip.o \
tran/upsample.o tran/scale.o tran/sine.o tran/partial.o \
tran/white.o tran/tone.o tran/tonev.o tran/atonev.o \
tran/atone.o tran/reson.o tran/areson.o tran/resonvc.o \
tran/resoncv.o tran/aresonvc.o tran/aresoncv.o tran/resonvv.o \
tran/aresonvv.o tran/offset.o tran/slope.o tran/delay.o \
tran/delaycv.o tran/shape.o tran/sampler.o tran/exp.o \
tran/siosc.o tran/follow.o tran/gate.o tran/quantize.o \
tran/ifft.o tran/congen.o tran/fromobject.o tran/fromarraystream.o \
tran/coterm.o tran/convolve.o tran/alpass.o tran/oneshot.o \
tran/chase.o tran/tapv.o tran/biquad.o tran/pluck.o \
cmt/cext.o cmt/cleanup.o cmt/cmdline.o cmt/cmtcmd.o \
cmt/moxc.o cmt/mem.o cmt/midifile.o cmt/midifns.o \
cmt/record.o cmt/seq.o cmt/seqmread.o cmt/seqmwrite.o \
cmt/seqread.o cmt/seqwrite.o cmt/tempomap.o cmt/timebase.o \
cmt/userio.o nyqsrc/debug.o nyqsrc/falloc.o nyqsrc/add.o \
nyqsrc/local.o nyqsrc/downsample.o nyqsrc/handlers.o nyqsrc/multiread.o \
nyqsrc/multiseq.o nyqsrc/samples.o nyqsrc/seqext.o nyqsrc/seqinterf.o \
nyqsrc/sndread.o nyqsrc/sndseq.o nyqsrc/sndwrite.o nyqsrc/sndmax.o \
nyqsrc/sound.o nyqsrc/stats.o nyqsrc/compose.o nyqsrc/inverse.o \
nyqsrc/resamp.o nyqsrc/resampv.o nyqsrc/ffilterkit.o nyqsrc/avg.o \
nyqsrc/fft.o nyqsrc/sndfail.o fft/fftn.o nyqsrc/sndfnint.o \
nyqsrc/seqfnint.o snd/audiosgi.o snd/sndsgi.o snd/ieeecvt.o \
snd/snd.o snd/sndcvt.o snd/sndio.o snd/sndheader.o \
sys/unix/osstuff.o sys/unix/term.o
# Sound functions to add to xlisp
NYQHDRS = snd/snd.h nyqsrc/sound.h nyqsrc/downsample.h nyqsrc/sndread.h \
nyqsrc/sndseq.h nyqsrc/add.h nyqsrc/multiseq.h nyqsrc/samples.h \
nyqsrc/sndwrite.h nyqsrc/sndmax.h nyqsrc/compose.h nyqsrc/inverse.h \
nyqsrc/resamp.h nyqsrc/resampv.h nyqsrc/fft.h nyqsrc/avg.h \
tran/amosc.h tran/clip.h tran/const.h tran/fmosc.h \
tran/integrate.h tran/log.h tran/maxv.h tran/osc.h \
tran/prod.h tran/buzz.h tran/pwl.h tran/recip.h \
tran/upsample.h tran/scale.h tran/sine.h tran/partial.h \
tran/white.h tran/tone.h tran/tonev.h tran/atonev.h \
tran/atone.h tran/reson.h tran/areson.h tran/resonvc.h \
tran/resoncv.h tran/aresonvc.h tran/aresoncv.h tran/resonvv.h \
tran/aresonvv.h tran/offset.h tran/slope.h tran/delaycc.h \
tran/delaycv.h tran/shape.h tran/sampler.h tran/exp.h \
tran/siosc.h tran/follow.h tran/gate.h tran/quantize.h \
tran/ifft.h tran/congen.h tran/fromobject.h tran/fromarraystream.h \
tran/coterm.h tran/convolve.h tran/alpass.h tran/oneshot.h \
tran/chase.h tran/tapv.h tran/biquad.h tran/pluck.h
CMTHDRS = cmt/seqdecls.h nyqsrc/seqext.h cmt/seq.h nyqsrc/seqinterf.h \
cmt/seqread.h cmt/seqmread.h cmt/seqwrite.h cmt/seqmwrite.h
EVERYTHING = $(NY) runtime/system.lsp
CURRENT = $(EVERYTHING)
current: $(CURRENT)
$(NY): $(OBJECTS)
$(LN) $(OBJECTS) $(LFLAGS) -o $(NY)
# copy appropriate system.lsp and make it read-only;
# changes should be made to sys/unix/<system>/system.lsp
runtime/system.lsp: sys/unix/sgi/system.lsp
chmod +w runtime/system.lsp
cp -p sys/unix/sgi/system.lsp runtime/system.lsp
chmod -w runtime/system.lsp
nyqsrc/debug.o: nyqsrc/debug.c nyqsrc/debug.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/debug.c -o nyqsrc/debug.o $(CFLAGS)
nyqsrc/falloc.o: nyqsrc/falloc.c nyqsrc/falloc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/falloc.c -o nyqsrc/falloc.o $(CFLAGS)
nyqsrc/add.o: nyqsrc/add.c nyqsrc/add.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/add.c -o nyqsrc/add.o $(CFLAGS)
nyqsrc/local.o: nyqsrc/local.c xlisp/xlisp.h nyqsrc/sound.h
cc -c nyqsrc/local.c -o nyqsrc/local.o $(CFLAGS)
nyqsrc/downsample.o: nyqsrc/downsample.c nyqsrc/downsample.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/downsample.c -o nyqsrc/downsample.o $(CFLAGS)
nyqsrc/handlers.o: nyqsrc/handlers.c
cc -c nyqsrc/handlers.c -o nyqsrc/handlers.o $(CFLAGS)
nyqsrc/multiread.o: nyqsrc/multiread.c nyqsrc/multiread.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/multiread.c -o nyqsrc/multiread.o $(CFLAGS)
nyqsrc/multiseq.o: nyqsrc/multiseq.c nyqsrc/multiseq.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/multiseq.c -o nyqsrc/multiseq.o $(CFLAGS)
nyqsrc/samples.o: nyqsrc/samples.c nyqsrc/samples.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/samples.c -o nyqsrc/samples.o $(CFLAGS)
nyqsrc/seqext.o: nyqsrc/seqext.c nyqsrc/seqext.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/seqext.c -o nyqsrc/seqext.o $(CFLAGS)
nyqsrc/seqinterf.o: nyqsrc/seqinterf.c nyqsrc/seqinterf.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/seqinterf.c -o nyqsrc/seqinterf.o $(CFLAGS)
nyqsrc/sndread.o: nyqsrc/sndread.c nyqsrc/sndread.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndread.c -o nyqsrc/sndread.o $(CFLAGS)
nyqsrc/sndseq.o: nyqsrc/sndseq.c nyqsrc/sndseq.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndseq.c -o nyqsrc/sndseq.o $(CFLAGS)
nyqsrc/sndwrite.o: nyqsrc/sndwrite.c nyqsrc/sndwrite.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndwrite.c -o nyqsrc/sndwrite.o $(CFLAGS)
nyqsrc/sndmax.o: nyqsrc/sndmax.c nyqsrc/sndmax.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndmax.c -o nyqsrc/sndmax.o $(CFLAGS)
nyqsrc/sound.o: nyqsrc/sound.c nyqsrc/sound.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sound.c -o nyqsrc/sound.o $(CFLAGS)
nyqsrc/stats.o: nyqsrc/stats.c nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/stats.c -o nyqsrc/stats.o $(CFLAGS)
nyqsrc/compose.o: nyqsrc/compose.c nyqsrc/compose.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/compose.c -o nyqsrc/compose.o $(CFLAGS)
nyqsrc/inverse.o: nyqsrc/inverse.c nyqsrc/inverse.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/inverse.c -o nyqsrc/inverse.o $(CFLAGS)
nyqsrc/resamp.o: nyqsrc/resamp.c nyqsrc/resamp.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/resamp.c -o nyqsrc/resamp.o $(CFLAGS)
nyqsrc/resampv.o: nyqsrc/resampv.c nyqsrc/resampv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/resampv.c -o nyqsrc/resampv.o $(CFLAGS)
nyqsrc/ffilterkit.o: nyqsrc/ffilterkit.c nyqsrc/ffilterkit.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/ffilterkit.c -o nyqsrc/ffilterkit.o $(CFLAGS)
nyqsrc/avg.o: nyqsrc/avg.c nyqsrc/avg.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/avg.c -o nyqsrc/avg.o $(CFLAGS)
nyqsrc/fft.o: nyqsrc/fft.c nyqsrc/fft.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/fft.c -o nyqsrc/fft.o $(CFLAGS)
nyqsrc/sndfail.o: nyqsrc/sndfail.c
cc -c nyqsrc/sndfail.c -o nyqsrc/sndfail.o $(CFLAGS)
snd/audiosgi.o: snd/audiosgi.c snd/snd.h
cc -c snd/audiosgi.c -o snd/audiosgi.o $(CFLAGS)
snd/sndsgi.o: snd/sndsgi.c snd/sndsgi.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/sndsgi.c -o snd/sndsgi.o $(CFLAGS)
snd/ieeecvt.o: snd/ieeecvt.c snd/ieeecvt.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/ieeecvt.c -o snd/ieeecvt.o $(CFLAGS)
snd/snd.o: snd/snd.c snd/snd.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/snd.c -o snd/snd.o $(CFLAGS)
snd/sndcvt.o: snd/sndcvt.c snd/snd.h
cc -c snd/sndcvt.c -o snd/sndcvt.o $(CFLAGS)
snd/sndio.o: snd/sndio.c snd/snd.h
cc -c snd/sndio.c -o snd/sndio.o $(CFLAGS)
snd/sndheader.o: snd/sndheader.c snd/sndheader.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/sndheader.c -o snd/sndheader.o $(CFLAGS)
fft/fftn.o: fft/fftn.c fft/fftn.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c fft/fftn.c -o fft/fftn.o $(CFLAGS)
tran/amosc.o: tran/amosc.c tran/amosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/amosc.c -o tran/amosc.o $(CFLAGS)
tran/clip.o: tran/clip.c tran/clip.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/clip.c -o tran/clip.o $(CFLAGS)
tran/const.o: tran/const.c tran/const.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/const.c -o tran/const.o $(CFLAGS)
tran/fmosc.o: tran/fmosc.c tran/fmosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fmosc.c -o tran/fmosc.o $(CFLAGS)
tran/integrate.o: tran/integrate.c tran/integrate.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/integrate.c -o tran/integrate.o $(CFLAGS)
tran/log.o: tran/log.c tran/log.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/log.c -o tran/log.o $(CFLAGS)
tran/maxv.o: tran/maxv.c tran/maxv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/maxv.c -o tran/maxv.o $(CFLAGS)
tran/osc.o: tran/osc.c tran/osc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/osc.c -o tran/osc.o $(CFLAGS)
tran/prod.o: tran/prod.c tran/prod.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/prod.c -o tran/prod.o $(CFLAGS)
tran/buzz.o: tran/buzz.c tran/buzz.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/buzz.c -o tran/buzz.o $(CFLAGS)
tran/pwl.o: tran/pwl.c tran/pwl.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/pwl.c -o tran/pwl.o $(CFLAGS)
tran/recip.o: tran/recip.c tran/recip.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/recip.c -o tran/recip.o $(CFLAGS)
tran/upsample.o: tran/upsample.c tran/upsample.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/upsample.c -o tran/upsample.o $(CFLAGS)
tran/scale.o: tran/scale.c tran/scale.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/scale.c -o tran/scale.o $(CFLAGS)
tran/sine.o: tran/sine.c tran/sine.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/sine.c -o tran/sine.o $(CFLAGS)
tran/partial.o: tran/partial.c tran/partial.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/partial.c -o tran/partial.o $(CFLAGS)
tran/white.o: tran/white.c tran/white.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/white.c -o tran/white.o $(CFLAGS)
tran/tone.o: tran/tone.c tran/tone.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tone.c -o tran/tone.o $(CFLAGS)
tran/tonev.o: tran/tonev.c tran/tonev.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tonev.c -o tran/tonev.o $(CFLAGS)
tran/atonev.o: tran/atonev.c tran/atonev.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/atonev.c -o tran/atonev.o $(CFLAGS)
tran/atone.o: tran/atone.c tran/atone.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/atone.c -o tran/atone.o $(CFLAGS)
tran/reson.o: tran/reson.c tran/reson.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/reson.c -o tran/reson.o $(CFLAGS)
tran/areson.o: tran/areson.c tran/areson.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/areson.c -o tran/areson.o $(CFLAGS)
tran/resonvc.o: tran/resonvc.c tran/resonvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resonvc.c -o tran/resonvc.o $(CFLAGS)
tran/resoncv.o: tran/resoncv.c tran/resoncv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resoncv.c -o tran/resoncv.o $(CFLAGS)
tran/aresonvc.o: tran/aresonvc.c tran/aresonvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresonvc.c -o tran/aresonvc.o $(CFLAGS)
tran/aresoncv.o: tran/aresoncv.c tran/aresoncv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresoncv.c -o tran/aresoncv.o $(CFLAGS)
tran/resonvv.o: tran/resonvv.c tran/resonvv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resonvv.c -o tran/resonvv.o $(CFLAGS)
tran/aresonvv.o: tran/aresonvv.c tran/aresonvv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresonvv.c -o tran/aresonvv.o $(CFLAGS)
tran/offset.o: tran/offset.c tran/offset.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/offset.c -o tran/offset.o $(CFLAGS)
tran/slope.o: tran/slope.c tran/slope.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/slope.c -o tran/slope.o $(CFLAGS)
tran/delaycc.o: tran/delaycc.c tran/delaycc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/delaycc.c -o tran/delaycc.o $(CFLAGS)
tran/delaycv.o: tran/delaycv.c tran/delaycv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/delaycv.c -o tran/delaycv.o $(CFLAGS)
tran/shape.o: tran/shape.c tran/shape.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/shape.c -o tran/shape.o $(CFLAGS)
tran/sampler.o: tran/sampler.c tran/sampler.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/sampler.c -o tran/sampler.o $(CFLAGS)
tran/exp.o: tran/exp.c tran/exp.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/exp.c -o tran/exp.o $(CFLAGS)
tran/siosc.o: tran/siosc.c tran/siosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/siosc.c -o tran/siosc.o $(CFLAGS)
tran/follow.o: tran/follow.c tran/follow.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/follow.c -o tran/follow.o $(CFLAGS)
tran/gate.o: tran/gate.c tran/gate.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/gate.c -o tran/gate.o $(CFLAGS)
tran/quantize.o: tran/quantize.c tran/quantize.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/quantize.c -o tran/quantize.o $(CFLAGS)
tran/ifft.o: tran/ifft.c tran/ifft.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/ifft.c -o tran/ifft.o $(CFLAGS)
tran/congen.o: tran/congen.c tran/congen.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/congen.c -o tran/congen.o $(CFLAGS)
tran/fromobject.o: tran/fromobject.c tran/fromobject.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fromobject.c -o tran/fromobject.o $(CFLAGS)
tran/fromarraystream.o: tran/fromarraystream.c tran/fromarraystream.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fromarraystream.c -o tran/fromarraystream.o $(CFLAGS)
tran/coterm.o: tran/coterm.c tran/coterm.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/coterm.c -o tran/coterm.o $(CFLAGS)
tran/convolve.o: tran/convolve.c tran/convolve.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/convolve.c -o tran/convolve.o $(CFLAGS)
tran/alpass.o: tran/alpass.c tran/alpass.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/alpass.c -o tran/alpass.o $(CFLAGS)
tran/oneshot.o: tran/oneshot.c tran/oneshot.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/oneshot.c -o tran/oneshot.o $(CFLAGS)
tran/chase.o: tran/chase.c tran/chase.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/chase.c -o tran/chase.o $(CFLAGS)
tran/tapv.o: tran/tapv.c tran/tapv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tapv.c -o tran/tapv.o $(CFLAGS)
tran/biquad.o: tran/biquad.c tran/biquad.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/biquad.c -o tran/biquad.o $(CFLAGS)
tran/pluck.o: tran/pluck.c tran/pluck.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/pluck.c -o tran/pluck.o $(CFLAGS)
nyqsrc/sndfnint.o: nyqsrc/sndfnint.c
cc -c nyqsrc/sndfnint.c -o nyqsrc/sndfnint.o $(CFLAGS)
nyqsrc/seqfnint.o: nyqsrc/seqfnint.c
cc -c nyqsrc/seqfnint.c -o nyqsrc/seqfnint.o $(CFLAGS)
xlisp/xlftab.o: nyqsrc/sndfnintptrs.h nyqsrc/sndfnintdefs.h nyqsrc/seqfnintptrs.h nyqsrc/seqfnintdefs.h
cc -c xlisp/xlftab.c -o xlisp/xlftab.o $(CFLAGS)
xlisp/extern.o: xlisp/extern.c
cc -c xlisp/extern.c -o xlisp/extern.o $(CFLAGS)
xlisp/xldmem.o: xlisp/xldmem.c
cc -c xlisp/xldmem.c -o xlisp/xldmem.o $(CFLAGS)
xlisp/xlbfun.o: xlisp/xlbfun.c
cc -c xlisp/xlbfun.c -o xlisp/xlbfun.o $(CFLAGS)
xlisp/xlcont.o: xlisp/xlcont.c
cc -c xlisp/xlcont.c -o xlisp/xlcont.o $(CFLAGS)
xlisp/xldbug.o: xlisp/xldbug.c
cc -c xlisp/xldbug.c -o xlisp/xldbug.o $(CFLAGS)
xlisp/xleval.o: xlisp/xleval.c
cc -c xlisp/xleval.c -o xlisp/xleval.o $(CFLAGS)
xlisp/xlfio.o: xlisp/xlfio.c
cc -c xlisp/xlfio.c -o xlisp/xlfio.o $(CFLAGS)
xlisp/xlglob.o: xlisp/xlglob.c
cc -c xlisp/xlglob.c -o xlisp/xlglob.o $(CFLAGS)
xlisp/xlimage.o: xlisp/xlimage.c
cc -c xlisp/xlimage.c -o xlisp/xlimage.o $(CFLAGS)
xlisp/xlinit.o: xlisp/xlinit.c
cc -c xlisp/xlinit.c -o xlisp/xlinit.o $(CFLAGS)
xlisp/xlio.o: xlisp/xlio.c
cc -c xlisp/xlio.c -o xlisp/xlio.o $(CFLAGS)
xlisp/xlisp.o: xlisp/xlisp.c
cc -c xlisp/xlisp.c -o xlisp/xlisp.o $(CFLAGS)
xlisp/xljump.o: xlisp/xljump.c
cc -c xlisp/xljump.c -o xlisp/xljump.o $(CFLAGS)
xlisp/xllist.o: xlisp/xllist.c
cc -c xlisp/xllist.c -o xlisp/xllist.o $(CFLAGS)
xlisp/xlmath.o: xlisp/xlmath.c
cc -c xlisp/xlmath.c -o xlisp/xlmath.o $(CFLAGS)
xlisp/xlobj.o: xlisp/xlobj.c
cc -c xlisp/xlobj.c -o xlisp/xlobj.o $(CFLAGS)
xlisp/xlpp.o: xlisp/xlpp.c
cc -c xlisp/xlpp.c -o xlisp/xlpp.o $(CFLAGS)
xlisp/xlprin.o: xlisp/xlprin.c
cc -c xlisp/xlprin.c -o xlisp/xlprin.o $(CFLAGS)
xlisp/xlread.o: xlisp/xlread.c
cc -c xlisp/xlread.c -o xlisp/xlread.o $(CFLAGS)
xlisp/xlstr.o: xlisp/xlstr.c
cc -c xlisp/xlstr.c -o xlisp/xlstr.o $(CFLAGS)
xlisp/xlsubr.o: xlisp/xlsubr.c
cc -c xlisp/xlsubr.c -o xlisp/xlsubr.o $(CFLAGS)
xlisp/xlsym.o: xlisp/xlsym.c
cc -c xlisp/xlsym.c -o xlisp/xlsym.o $(CFLAGS)
xlisp/xlsys.o: xlisp/xlsys.c
cc -c xlisp/xlsys.c -o xlisp/xlsys.o $(CFLAGS)
cmt/cext.o: cmt/cext.c
cc -c cmt/cext.c -o cmt/cext.o $(CFLAGS)
cmt/cleanup.o: cmt/cleanup.c
cc -c cmt/cleanup.c -o cmt/cleanup.o $(CFLAGS)
cmt/cmdline.o: cmt/cmdline.c
cc -c cmt/cmdline.c -o cmt/cmdline.o $(CFLAGS)
cmt/cmtcmd.o: cmt/cmtcmd.c
cc -c cmt/cmtcmd.c -o cmt/cmtcmd.o $(CFLAGS)
cmt/moxc.o: cmt/moxc.c
cc -c cmt/moxc.c -o cmt/moxc.o $(CFLAGS)
cmt/mem.o: cmt/mem.c
cc -c cmt/mem.c -o cmt/mem.o $(CFLAGS)
cmt/midifile.o: cmt/midifile.c
cc -c cmt/midifile.c -o cmt/midifile.o $(CFLAGS)
cmt/midifns.o: cmt/midifns.c
cc -c cmt/midifns.c -o cmt/midifns.o $(CFLAGS)
cmt/record.o: cmt/record.c
cc -c cmt/record.c -o cmt/record.o $(CFLAGS)
cmt/seq.o: cmt/seq.c
cc -c cmt/seq.c -o cmt/seq.o $(CFLAGS)
cmt/seqmread.o: cmt/seqmread.c
cc -c cmt/seqmread.c -o cmt/seqmread.o $(CFLAGS)
cmt/seqmwrite.o: cmt/seqmwrite.c
cc -c cmt/seqmwrite.c -o cmt/seqmwrite.o $(CFLAGS)
cmt/seqread.o: cmt/seqread.c
cc -c cmt/seqread.c -o cmt/seqread.o $(CFLAGS)
cmt/seqwrite.o: cmt/seqwrite.c
cc -c cmt/seqwrite.c -o cmt/seqwrite.o $(CFLAGS)
cmt/tempomap.o: cmt/tempomap.c
cc -c cmt/tempomap.c -o cmt/tempomap.o $(CFLAGS)
cmt/timebase.o: cmt/timebase.c
cc -c cmt/timebase.c -o cmt/timebase.o $(CFLAGS)
cmt/userio.o: cmt/userio.c
cc -c cmt/userio.c -o cmt/userio.o $(CFLAGS)
sys/unix/osstuff.o: sys/unix/osstuff.c
cc -c sys/unix/osstuff.c -o sys/unix/osstuff.o $(CFLAGS)
misc/intgen: misc/intgen.c
cd misc; make intgen
misc/unpacker: misc/unpacker.c misc/convert.c
cd misc; make unpacker
misc/packer: misc/packer.c misc/convert.c
cd misc; make packer
nyqsrc/sndfnintptrs.h: $(NYQHDRS) snd/snd.h misc/intgen
$(INTGEN) nyqsrc/sndfnint $(NYQHDRS)
nyqsrc/seqfnintptrs.h: $(CMTHDRS) misc/intgen
$(INTGEN) nyqsrc/seqfnint $(CMTHDRS)
clean:
cd misc; make clean
rm -f $(OBJECTS)
# Note that these files are machine-generated:
rm -f nyqsrc/sndfnintptrs.h nyqsrc/sndfnint.c nyqsrc/sndfnintdefs.h
rm -f nyqsrc/seqfnintptrs.h nyqsrc/seqfnint.c nyqsrc/seqfnintdefs.h
cleaner: clean
cd misc; make cleaner
rm -f *.backup */*.backup
rm -f *~ */*.*~
rm -f *.save */*.save
rm -f *.CKP */*.CKP
rm -f *.BAK */*.BAK
rm -f *.old */*.old
rm -f *.gold */*.gold
rm -f playparms
rm -f points.dat

View File

@@ -0,0 +1,46 @@
; machine.lsp -- machine/system-dependent definitions
; SGI/IRIX
(if (not (boundp '*default-sf-format*))
(setf *default-sf-format* snd-head-AIFF))
(if (not (boundp '*default-sound-file*))
(compute-default-sound-file))
(if (not (boundp '*default-sf-dir*))
(setf *default-sf-dir* "/tmp/"))
(if (not (boundp '*default-sf-mode*))
(setf *default-sf-mode* snd-mode-pcm))
(if (not (boundp '*default-sf-bits*))
(setf *default-sf-bits* 16))
(if (not (boundp '*default-plot-file*))
(setf *default-plot-file* "points.dat"))
(defmacro play (expr)
`(let ()
(s-save-autonorm ,expr NY:ALL *default-sound-file* :play *soundenable*)
(r)))
(defun r ()
(play-file *default-sound-file*))
; PLAY-FILE -- play a file
(defun play-file (name)
(system (strcat "sfplay " (soundfilename name))))
; FULL-NAME-P -- test if file name is a full path or relative path
;
; (otherwise the *default-sf-dir* will be prepended
;
(defun full-name-p (filename)
(or (eq (char filename 0) #\/)
(eq (char filename 0) #\.)))
(setf *file-separator* #\/)
(sound-off) ; sgi implementation does not support real-time audio output yet

View File

@@ -0,0 +1,41 @@
/* sndsystem.h -- system-specific definitions */
/*
NOTES: you need a different sndswitches.h for each implementation, so
this is a separate file. Things you need to define here:
1) Either UNIX, WIN32, or MACINTOSH should be defined.
2) Either the following function declaration:
void snd_fail(char *msg);
or
#define snd_fail(msg) ...
3) typedef FASTFLOAT to be either a double or a float, whichever
computes faster (PowerPCs are faster at double math than float math)
4) typedef MEMFLOAT to be how you would store a sample in memory
(this should normally be float)
5) min() must be defined (either a macro or a function)
6) max() must be defined (either a macro or a function)
*/
#define UNIX
#define snd_fail(msg) xlfail(msg)
#define snd_warn(msg) errputstr(msg)
typedef double FASTFLOAT;
typedef float MEMFLOAT;
/* avoid conflict with Windows */
#ifndef max
/* min(n, sizeof(long)) doesn't work on RS6K without this:
* (I never tracked down what min() was called and what was wrong.)
*/
#define min(a, b) ((a) < (b) ? (a) : (b))
#define max(a, b) ((a) > (b) ? (a) : (b))
#endif

View File

@@ -0,0 +1,520 @@
#
# Makefile for Nyquist, SYSTEM-TYPE is SPARC
# run make in the top-level Nyquist directory to compile Nyquist
#
# NOTE: this file is machine-generated. DO NOT EDIT!
# Instead, modify makefile.lsp and regenerate the makefile.
# Ports and bug fixes are welcome - please mail them to
# dannenberg@cs.cmu.edu. Thanks.
#
# This is the resulting executable (normally "ny"):
NY = ny
# Standard list of includes (common to all unix versions)
INCL = -Inyqsrc -Itran -Ixlisp -Isys/unix -Icmt -Isnd -Ifft
# system dependent stuff for sparc:
CC = gcc
CFLAGS = -DCMTSTUFF -g $(INCL)
LN = $(CC)
LFLAGS = -lm
INTGEN = misc/intgen
# Object files for Nyquist:
OBJECTS = xlisp/extern.o xlisp/xldmem.o xlisp/xlbfun.o xlisp/xlcont.o \
xlisp/xldbug.o xlisp/xleval.o xlisp/xlfio.o xlisp/xlftab.o \
xlisp/xlglob.o xlisp/xlimage.o xlisp/xlinit.o xlisp/xlio.o \
xlisp/xlisp.o xlisp/xljump.o xlisp/xllist.o xlisp/xlmath.o \
xlisp/xlobj.o xlisp/xlpp.o xlisp/xlprin.o xlisp/xlread.o \
xlisp/xlstr.o xlisp/xlsubr.o xlisp/xlsym.o xlisp/xlsys.o \
tran/amosc.o tran/clip.o tran/const.o tran/fmosc.o \
tran/integrate.o tran/log.o tran/maxv.o tran/osc.o \
tran/prod.o tran/buzz.o tran/pwl.o tran/recip.o \
tran/upsample.o tran/scale.o tran/sine.o tran/partial.o \
tran/white.o tran/tone.o tran/tonev.o tran/atonev.o \
tran/atone.o tran/reson.o tran/areson.o tran/resonvc.o \
tran/resoncv.o tran/aresonvc.o tran/aresoncv.o tran/resonvv.o \
tran/aresonvv.o tran/offset.o tran/slope.o tran/delay.o \
tran/delaycv.o tran/shape.o tran/sampler.o tran/exp.o \
tran/siosc.o tran/follow.o tran/gate.o tran/quantize.o \
tran/ifft.o tran/congen.o tran/fromobject.o tran/fromarraystream.o \
tran/coterm.o tran/convolve.o tran/alpass.o tran/oneshot.o \
tran/chase.o tran/tapv.o tran/biquad.o tran/pluck.o \
cmt/cext.o cmt/cleanup.o cmt/cmdline.o cmt/cmtcmd.o \
cmt/moxc.o cmt/mem.o cmt/midifile.o cmt/midifns.o \
cmt/record.o cmt/seq.o cmt/seqmread.o cmt/seqmwrite.o \
cmt/seqread.o cmt/seqwrite.o cmt/tempomap.o cmt/timebase.o \
cmt/userio.o nyqsrc/debug.o nyqsrc/falloc.o nyqsrc/add.o \
nyqsrc/local.o nyqsrc/downsample.o nyqsrc/handlers.o nyqsrc/multiread.o \
nyqsrc/multiseq.o nyqsrc/samples.o nyqsrc/seqext.o nyqsrc/seqinterf.o \
nyqsrc/sndread.o nyqsrc/sndseq.o nyqsrc/sndwrite.o nyqsrc/sndmax.o \
nyqsrc/sound.o nyqsrc/stats.o nyqsrc/compose.o nyqsrc/inverse.o \
nyqsrc/resamp.o nyqsrc/resampv.o nyqsrc/ffilterkit.o nyqsrc/avg.o \
nyqsrc/fft.o nyqsrc/sndfail.o fft/fftn.o nyqsrc/sndfnint.o \
nyqsrc/seqfnint.o snd/audiosparc.o snd/sndsparc.o snd/ieeecvt.o \
snd/snd.o snd/sndcvt.o snd/sndio.o snd/sndheader.o \
sys/unix/osstuff.o sys/unix/term.o
# Sound functions to add to xlisp
NYQHDRS = snd/snd.h nyqsrc/sound.h nyqsrc/downsample.h nyqsrc/sndread.h \
nyqsrc/sndseq.h nyqsrc/add.h nyqsrc/multiseq.h nyqsrc/samples.h \
nyqsrc/sndwrite.h nyqsrc/sndmax.h nyqsrc/compose.h nyqsrc/inverse.h \
nyqsrc/resamp.h nyqsrc/resampv.h nyqsrc/fft.h nyqsrc/avg.h \
tran/amosc.h tran/clip.h tran/const.h tran/fmosc.h \
tran/integrate.h tran/log.h tran/maxv.h tran/osc.h \
tran/prod.h tran/buzz.h tran/pwl.h tran/recip.h \
tran/upsample.h tran/scale.h tran/sine.h tran/partial.h \
tran/white.h tran/tone.h tran/tonev.h tran/atonev.h \
tran/atone.h tran/reson.h tran/areson.h tran/resonvc.h \
tran/resoncv.h tran/aresonvc.h tran/aresoncv.h tran/resonvv.h \
tran/aresonvv.h tran/offset.h tran/slope.h tran/delaycc.h \
tran/delaycv.h tran/shape.h tran/sampler.h tran/exp.h \
tran/siosc.h tran/follow.h tran/gate.h tran/quantize.h \
tran/ifft.h tran/congen.h tran/fromobject.h tran/fromarraystream.h \
tran/coterm.h tran/convolve.h tran/alpass.h tran/oneshot.h \
tran/chase.h tran/tapv.h tran/biquad.h tran/pluck.h
CMTHDRS = cmt/seqdecls.h nyqsrc/seqext.h cmt/seq.h nyqsrc/seqinterf.h \
cmt/seqread.h cmt/seqmread.h cmt/seqwrite.h cmt/seqmwrite.h
EVERYTHING = $(NY) runtime/system.lsp
CURRENT = $(EVERYTHING)
current: $(CURRENT)
$(NY): $(OBJECTS)
$(LN) $(OBJECTS) $(LFLAGS) -o $(NY)
# copy appropriate system.lsp and make it read-only;
# changes should be made to sys/unix/<system>/system.lsp
runtime/system.lsp: sys/unix/sparc/system.lsp
chmod +w runtime/system.lsp
cp -p sys/unix/sparc/system.lsp runtime/system.lsp
chmod -w runtime/system.lsp
nyqsrc/debug.o: nyqsrc/debug.c nyqsrc/debug.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/debug.c -o nyqsrc/debug.o $(CFLAGS)
nyqsrc/falloc.o: nyqsrc/falloc.c nyqsrc/falloc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/falloc.c -o nyqsrc/falloc.o $(CFLAGS)
nyqsrc/add.o: nyqsrc/add.c nyqsrc/add.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/add.c -o nyqsrc/add.o $(CFLAGS)
nyqsrc/local.o: nyqsrc/local.c xlisp/xlisp.h nyqsrc/sound.h
cc -c nyqsrc/local.c -o nyqsrc/local.o $(CFLAGS)
nyqsrc/downsample.o: nyqsrc/downsample.c nyqsrc/downsample.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/downsample.c -o nyqsrc/downsample.o $(CFLAGS)
nyqsrc/handlers.o: nyqsrc/handlers.c
cc -c nyqsrc/handlers.c -o nyqsrc/handlers.o $(CFLAGS)
nyqsrc/multiread.o: nyqsrc/multiread.c nyqsrc/multiread.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/multiread.c -o nyqsrc/multiread.o $(CFLAGS)
nyqsrc/multiseq.o: nyqsrc/multiseq.c nyqsrc/multiseq.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/multiseq.c -o nyqsrc/multiseq.o $(CFLAGS)
nyqsrc/samples.o: nyqsrc/samples.c nyqsrc/samples.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/samples.c -o nyqsrc/samples.o $(CFLAGS)
nyqsrc/seqext.o: nyqsrc/seqext.c nyqsrc/seqext.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/seqext.c -o nyqsrc/seqext.o $(CFLAGS)
nyqsrc/seqinterf.o: nyqsrc/seqinterf.c nyqsrc/seqinterf.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/seqinterf.c -o nyqsrc/seqinterf.o $(CFLAGS)
nyqsrc/sndread.o: nyqsrc/sndread.c nyqsrc/sndread.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndread.c -o nyqsrc/sndread.o $(CFLAGS)
nyqsrc/sndseq.o: nyqsrc/sndseq.c nyqsrc/sndseq.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndseq.c -o nyqsrc/sndseq.o $(CFLAGS)
nyqsrc/sndwrite.o: nyqsrc/sndwrite.c nyqsrc/sndwrite.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndwrite.c -o nyqsrc/sndwrite.o $(CFLAGS)
nyqsrc/sndmax.o: nyqsrc/sndmax.c nyqsrc/sndmax.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sndmax.c -o nyqsrc/sndmax.o $(CFLAGS)
nyqsrc/sound.o: nyqsrc/sound.c nyqsrc/sound.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/sound.c -o nyqsrc/sound.o $(CFLAGS)
nyqsrc/stats.o: nyqsrc/stats.c nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/stats.c -o nyqsrc/stats.o $(CFLAGS)
nyqsrc/compose.o: nyqsrc/compose.c nyqsrc/compose.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/compose.c -o nyqsrc/compose.o $(CFLAGS)
nyqsrc/inverse.o: nyqsrc/inverse.c nyqsrc/inverse.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/inverse.c -o nyqsrc/inverse.o $(CFLAGS)
nyqsrc/resamp.o: nyqsrc/resamp.c nyqsrc/resamp.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/resamp.c -o nyqsrc/resamp.o $(CFLAGS)
nyqsrc/resampv.o: nyqsrc/resampv.c nyqsrc/resampv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/resampv.c -o nyqsrc/resampv.o $(CFLAGS)
nyqsrc/ffilterkit.o: nyqsrc/ffilterkit.c nyqsrc/ffilterkit.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/ffilterkit.c -o nyqsrc/ffilterkit.o $(CFLAGS)
nyqsrc/avg.o: nyqsrc/avg.c nyqsrc/avg.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/avg.c -o nyqsrc/avg.o $(CFLAGS)
nyqsrc/fft.o: nyqsrc/fft.c nyqsrc/fft.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c nyqsrc/fft.c -o nyqsrc/fft.o $(CFLAGS)
nyqsrc/sndfail.o: nyqsrc/sndfail.c
cc -c nyqsrc/sndfail.c -o nyqsrc/sndfail.o $(CFLAGS)
snd/audiosparc.o: snd/audiosparc.c snd/snd.h
cc -c snd/audiosparc.c -o snd/audiosparc.o $(CFLAGS)
snd/sndsparc.o: snd/sndsparc.c snd/sndsparc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/sndsparc.c -o snd/sndsparc.o $(CFLAGS)
snd/ieeecvt.o: snd/ieeecvt.c snd/ieeecvt.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/ieeecvt.c -o snd/ieeecvt.o $(CFLAGS)
snd/snd.o: snd/snd.c snd/snd.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/snd.c -o snd/snd.o $(CFLAGS)
snd/sndcvt.o: snd/sndcvt.c snd/snd.h
cc -c snd/sndcvt.c -o snd/sndcvt.o $(CFLAGS)
snd/sndio.o: snd/sndio.c snd/snd.h
cc -c snd/sndio.c -o snd/sndio.o $(CFLAGS)
snd/sndheader.o: snd/sndheader.c snd/sndheader.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c snd/sndheader.c -o snd/sndheader.o $(CFLAGS)
fft/fftn.o: fft/fftn.c fft/fftn.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c fft/fftn.c -o fft/fftn.o $(CFLAGS)
tran/amosc.o: tran/amosc.c tran/amosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/amosc.c -o tran/amosc.o $(CFLAGS)
tran/clip.o: tran/clip.c tran/clip.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/clip.c -o tran/clip.o $(CFLAGS)
tran/const.o: tran/const.c tran/const.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/const.c -o tran/const.o $(CFLAGS)
tran/fmosc.o: tran/fmosc.c tran/fmosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fmosc.c -o tran/fmosc.o $(CFLAGS)
tran/integrate.o: tran/integrate.c tran/integrate.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/integrate.c -o tran/integrate.o $(CFLAGS)
tran/log.o: tran/log.c tran/log.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/log.c -o tran/log.o $(CFLAGS)
tran/maxv.o: tran/maxv.c tran/maxv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/maxv.c -o tran/maxv.o $(CFLAGS)
tran/osc.o: tran/osc.c tran/osc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/osc.c -o tran/osc.o $(CFLAGS)
tran/prod.o: tran/prod.c tran/prod.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/prod.c -o tran/prod.o $(CFLAGS)
tran/buzz.o: tran/buzz.c tran/buzz.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/buzz.c -o tran/buzz.o $(CFLAGS)
tran/pwl.o: tran/pwl.c tran/pwl.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/pwl.c -o tran/pwl.o $(CFLAGS)
tran/recip.o: tran/recip.c tran/recip.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/recip.c -o tran/recip.o $(CFLAGS)
tran/upsample.o: tran/upsample.c tran/upsample.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/upsample.c -o tran/upsample.o $(CFLAGS)
tran/scale.o: tran/scale.c tran/scale.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/scale.c -o tran/scale.o $(CFLAGS)
tran/sine.o: tran/sine.c tran/sine.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/sine.c -o tran/sine.o $(CFLAGS)
tran/partial.o: tran/partial.c tran/partial.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/partial.c -o tran/partial.o $(CFLAGS)
tran/white.o: tran/white.c tran/white.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/white.c -o tran/white.o $(CFLAGS)
tran/tone.o: tran/tone.c tran/tone.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tone.c -o tran/tone.o $(CFLAGS)
tran/tonev.o: tran/tonev.c tran/tonev.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tonev.c -o tran/tonev.o $(CFLAGS)
tran/atonev.o: tran/atonev.c tran/atonev.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/atonev.c -o tran/atonev.o $(CFLAGS)
tran/atone.o: tran/atone.c tran/atone.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/atone.c -o tran/atone.o $(CFLAGS)
tran/reson.o: tran/reson.c tran/reson.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/reson.c -o tran/reson.o $(CFLAGS)
tran/areson.o: tran/areson.c tran/areson.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/areson.c -o tran/areson.o $(CFLAGS)
tran/resonvc.o: tran/resonvc.c tran/resonvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resonvc.c -o tran/resonvc.o $(CFLAGS)
tran/resoncv.o: tran/resoncv.c tran/resoncv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resoncv.c -o tran/resoncv.o $(CFLAGS)
tran/aresonvc.o: tran/aresonvc.c tran/aresonvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresonvc.c -o tran/aresonvc.o $(CFLAGS)
tran/aresoncv.o: tran/aresoncv.c tran/aresoncv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresoncv.c -o tran/aresoncv.o $(CFLAGS)
tran/resonvv.o: tran/resonvv.c tran/resonvv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/resonvv.c -o tran/resonvv.o $(CFLAGS)
tran/aresonvv.o: tran/aresonvv.c tran/aresonvv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/aresonvv.c -o tran/aresonvv.o $(CFLAGS)
tran/offset.o: tran/offset.c tran/offset.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/offset.c -o tran/offset.o $(CFLAGS)
tran/slope.o: tran/slope.c tran/slope.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/slope.c -o tran/slope.o $(CFLAGS)
tran/delaycc.o: tran/delaycc.c tran/delaycc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/delaycc.c -o tran/delaycc.o $(CFLAGS)
tran/delaycv.o: tran/delaycv.c tran/delaycv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/delaycv.c -o tran/delaycv.o $(CFLAGS)
tran/shape.o: tran/shape.c tran/shape.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/shape.c -o tran/shape.o $(CFLAGS)
tran/sampler.o: tran/sampler.c tran/sampler.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/sampler.c -o tran/sampler.o $(CFLAGS)
tran/exp.o: tran/exp.c tran/exp.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/exp.c -o tran/exp.o $(CFLAGS)
tran/siosc.o: tran/siosc.c tran/siosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/siosc.c -o tran/siosc.o $(CFLAGS)
tran/follow.o: tran/follow.c tran/follow.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/follow.c -o tran/follow.o $(CFLAGS)
tran/gate.o: tran/gate.c tran/gate.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/gate.c -o tran/gate.o $(CFLAGS)
tran/quantize.o: tran/quantize.c tran/quantize.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/quantize.c -o tran/quantize.o $(CFLAGS)
tran/ifft.o: tran/ifft.c tran/ifft.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/ifft.c -o tran/ifft.o $(CFLAGS)
tran/congen.o: tran/congen.c tran/congen.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/congen.c -o tran/congen.o $(CFLAGS)
tran/fromobject.o: tran/fromobject.c tran/fromobject.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fromobject.c -o tran/fromobject.o $(CFLAGS)
tran/fromarraystream.o: tran/fromarraystream.c tran/fromarraystream.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/fromarraystream.c -o tran/fromarraystream.o $(CFLAGS)
tran/coterm.o: tran/coterm.c tran/coterm.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/coterm.c -o tran/coterm.o $(CFLAGS)
tran/convolve.o: tran/convolve.c tran/convolve.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/convolve.c -o tran/convolve.o $(CFLAGS)
tran/alpass.o: tran/alpass.c tran/alpass.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/alpass.c -o tran/alpass.o $(CFLAGS)
tran/oneshot.o: tran/oneshot.c tran/oneshot.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/oneshot.c -o tran/oneshot.o $(CFLAGS)
tran/chase.o: tran/chase.c tran/chase.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/chase.c -o tran/chase.o $(CFLAGS)
tran/tapv.o: tran/tapv.c tran/tapv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/tapv.c -o tran/tapv.o $(CFLAGS)
tran/biquad.o: tran/biquad.c tran/biquad.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/biquad.c -o tran/biquad.o $(CFLAGS)
tran/pluck.o: tran/pluck.c tran/pluck.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
cc -c tran/pluck.c -o tran/pluck.o $(CFLAGS)
nyqsrc/sndfnint.o: nyqsrc/sndfnint.c
cc -c nyqsrc/sndfnint.c -o nyqsrc/sndfnint.o $(CFLAGS)
nyqsrc/seqfnint.o: nyqsrc/seqfnint.c
cc -c nyqsrc/seqfnint.c -o nyqsrc/seqfnint.o $(CFLAGS)
xlisp/xlftab.o: nyqsrc/sndfnintptrs.h nyqsrc/sndfnintdefs.h nyqsrc/seqfnintptrs.h nyqsrc/seqfnintdefs.h
cc -c xlisp/xlftab.c -o xlisp/xlftab.o $(CFLAGS)
xlisp/extern.o: xlisp/extern.c
cc -c xlisp/extern.c -o xlisp/extern.o $(CFLAGS)
xlisp/xldmem.o: xlisp/xldmem.c
cc -c xlisp/xldmem.c -o xlisp/xldmem.o $(CFLAGS)
xlisp/xlbfun.o: xlisp/xlbfun.c
cc -c xlisp/xlbfun.c -o xlisp/xlbfun.o $(CFLAGS)
xlisp/xlcont.o: xlisp/xlcont.c
cc -c xlisp/xlcont.c -o xlisp/xlcont.o $(CFLAGS)
xlisp/xldbug.o: xlisp/xldbug.c
cc -c xlisp/xldbug.c -o xlisp/xldbug.o $(CFLAGS)
xlisp/xleval.o: xlisp/xleval.c
cc -c xlisp/xleval.c -o xlisp/xleval.o $(CFLAGS)
xlisp/xlfio.o: xlisp/xlfio.c
cc -c xlisp/xlfio.c -o xlisp/xlfio.o $(CFLAGS)
xlisp/xlglob.o: xlisp/xlglob.c
cc -c xlisp/xlglob.c -o xlisp/xlglob.o $(CFLAGS)
xlisp/xlimage.o: xlisp/xlimage.c
cc -c xlisp/xlimage.c -o xlisp/xlimage.o $(CFLAGS)
xlisp/xlinit.o: xlisp/xlinit.c
cc -c xlisp/xlinit.c -o xlisp/xlinit.o $(CFLAGS)
xlisp/xlio.o: xlisp/xlio.c
cc -c xlisp/xlio.c -o xlisp/xlio.o $(CFLAGS)
xlisp/xlisp.o: xlisp/xlisp.c
cc -c xlisp/xlisp.c -o xlisp/xlisp.o $(CFLAGS)
xlisp/xljump.o: xlisp/xljump.c
cc -c xlisp/xljump.c -o xlisp/xljump.o $(CFLAGS)
xlisp/xllist.o: xlisp/xllist.c
cc -c xlisp/xllist.c -o xlisp/xllist.o $(CFLAGS)
xlisp/xlmath.o: xlisp/xlmath.c
cc -c xlisp/xlmath.c -o xlisp/xlmath.o $(CFLAGS)
xlisp/xlobj.o: xlisp/xlobj.c
cc -c xlisp/xlobj.c -o xlisp/xlobj.o $(CFLAGS)
xlisp/xlpp.o: xlisp/xlpp.c
cc -c xlisp/xlpp.c -o xlisp/xlpp.o $(CFLAGS)
xlisp/xlprin.o: xlisp/xlprin.c
cc -c xlisp/xlprin.c -o xlisp/xlprin.o $(CFLAGS)
xlisp/xlread.o: xlisp/xlread.c
cc -c xlisp/xlread.c -o xlisp/xlread.o $(CFLAGS)
xlisp/xlstr.o: xlisp/xlstr.c
cc -c xlisp/xlstr.c -o xlisp/xlstr.o $(CFLAGS)
xlisp/xlsubr.o: xlisp/xlsubr.c
cc -c xlisp/xlsubr.c -o xlisp/xlsubr.o $(CFLAGS)
xlisp/xlsym.o: xlisp/xlsym.c
cc -c xlisp/xlsym.c -o xlisp/xlsym.o $(CFLAGS)
xlisp/xlsys.o: xlisp/xlsys.c
cc -c xlisp/xlsys.c -o xlisp/xlsys.o $(CFLAGS)
cmt/cext.o: cmt/cext.c
cc -c cmt/cext.c -o cmt/cext.o $(CFLAGS)
cmt/cleanup.o: cmt/cleanup.c
cc -c cmt/cleanup.c -o cmt/cleanup.o $(CFLAGS)
cmt/cmdline.o: cmt/cmdline.c
cc -c cmt/cmdline.c -o cmt/cmdline.o $(CFLAGS)
cmt/cmtcmd.o: cmt/cmtcmd.c
cc -c cmt/cmtcmd.c -o cmt/cmtcmd.o $(CFLAGS)
cmt/moxc.o: cmt/moxc.c
cc -c cmt/moxc.c -o cmt/moxc.o $(CFLAGS)
cmt/mem.o: cmt/mem.c
cc -c cmt/mem.c -o cmt/mem.o $(CFLAGS)
cmt/midifile.o: cmt/midifile.c
cc -c cmt/midifile.c -o cmt/midifile.o $(CFLAGS)
cmt/midifns.o: cmt/midifns.c
cc -c cmt/midifns.c -o cmt/midifns.o $(CFLAGS)
cmt/record.o: cmt/record.c
cc -c cmt/record.c -o cmt/record.o $(CFLAGS)
cmt/seq.o: cmt/seq.c
cc -c cmt/seq.c -o cmt/seq.o $(CFLAGS)
cmt/seqmread.o: cmt/seqmread.c
cc -c cmt/seqmread.c -o cmt/seqmread.o $(CFLAGS)
cmt/seqmwrite.o: cmt/seqmwrite.c
cc -c cmt/seqmwrite.c -o cmt/seqmwrite.o $(CFLAGS)
cmt/seqread.o: cmt/seqread.c
cc -c cmt/seqread.c -o cmt/seqread.o $(CFLAGS)
cmt/seqwrite.o: cmt/seqwrite.c
cc -c cmt/seqwrite.c -o cmt/seqwrite.o $(CFLAGS)
cmt/tempomap.o: cmt/tempomap.c
cc -c cmt/tempomap.c -o cmt/tempomap.o $(CFLAGS)
cmt/timebase.o: cmt/timebase.c
cc -c cmt/timebase.c -o cmt/timebase.o $(CFLAGS)
cmt/userio.o: cmt/userio.c
cc -c cmt/userio.c -o cmt/userio.o $(CFLAGS)
sys/unix/osstuff.o: sys/unix/osstuff.c
cc -c sys/unix/osstuff.c -o sys/unix/osstuff.o $(CFLAGS)
misc/intgen: misc/intgen.c
cd misc; make intgen
misc/unpacker: misc/unpacker.c misc/convert.c
cd misc; make unpacker
misc/packer: misc/packer.c misc/convert.c
cd misc; make packer
nyqsrc/sndfnintptrs.h: $(NYQHDRS) snd/snd.h misc/intgen
$(INTGEN) nyqsrc/sndfnint $(NYQHDRS)
nyqsrc/seqfnintptrs.h: $(CMTHDRS) misc/intgen
$(INTGEN) nyqsrc/seqfnint $(CMTHDRS)
clean:
cd misc; make clean
rm -f $(OBJECTS)
# Note that these files are machine-generated:
rm -f nyqsrc/sndfnintptrs.h nyqsrc/sndfnint.c nyqsrc/sndfnintdefs.h
rm -f nyqsrc/seqfnintptrs.h nyqsrc/seqfnint.c nyqsrc/seqfnintdefs.h
cleaner: clean
cd misc; make cleaner
rm -f *.backup */*.backup
rm -f *~ */*.*~
rm -f *.save */*.save
rm -f *.CKP */*.CKP
rm -f *.BAK */*.BAK
rm -f *.old */*.old
rm -f *.gold */*.gold
rm -f playparms
rm -f points.dat

View File

@@ -0,0 +1,33 @@
; machine.lsp -- machine/system-dependent definitions
; sparc
(setf *default-sound-srate* 8192)
(if (not (boundp '*default-sf-format*))
(setf *default-sf-format* snd-head-NeXT))
(if (not (boundp '*default-sound-file*))
(compute-default-sound-file))
(if (not (boundp '*default-sf-dir*))
(setf *default-sf-dir* "/tmp"))
(if (not (boundp '*default-sf-mode*))
(setf *default-sf-mode* snd-mode-pcm))
(if (not (boundp '*default-sf-bits*))
(setf *default-sf-bits* 16))
; local definition for play
(defun r ()
(system (format nil
"play ~A"
*default-sound-file*)))
(defmacro play (expr)
`(prog (specs)
(setf specs (s-save ,expr NY:ALL *default-sound-file*))
(r)))

View File

@@ -193,5 +193,20 @@
*/
#define NYQUIST 1
/* If SAFE_NYQUIST is defined, Nyquist will prevent:
* - writes anywhere except in the directory tree
* named after the -w flag (if any) on the command
* line
* - play sounds or open the audio input or output
* - any networking functions.
*/
/* If SECURE_NYQUIST is defined, Nyquist will
* not read anywhere except in the directory forest
* given by the initial search path (XLISPPATH) and
* by a path list following -r on the command line
* (if any).
*/
#include "swlogic.h"

View File

@@ -0,0 +1,133 @@
/* term.c -- Routines for managing terminal I/O settings by Alan Cox.
* From LJ 17 */
/* Thanks to Dave Cook for rescuing it */
/* CHANGE LOG
* --------------------------------------------------------------------
* 28Apr03 dm include ioctl.h and declare void ctcinit();
*/
#include <termios.h>
#ifndef __APPLE__
#include <asm/ioctls.h>
#endif
#include <sys/ioctl.h>
#include <signal.h>
#include <stdlib.h>
#include <unistd.h>
#include <stdio.h>
void ctcinit();
/* This will be used for new terminal settings. */
static struct termios current;
/* This will hold the initial state so that we can restor it later. */
static struct termios initial;
/* Restor the termianl settings to those saved when term_init was called. */
void term_restore(void)
{
tcsetattr(0, TCSANOW, &initial);
}
/* Clean up termianl; called on exit. */
void term_exit()
{
term_restore();
}
/* Will be called when contrl-Z is pressed;
* this correctly handles the terminal. */
void term_ctrlz()
{
signal(SIGTSTP, term_ctrlz);
term_restore();
kill(getpid(), SIGSTOP);
}
/* Will be called when the application is continued
* after having been stopped. */
void term_cont()
{
signal(SIGCONT, term_cont);
tcsetattr(0, TCSANOW, &current);
}
/* Needs to be called to initialize the terminal. */
void term_init(void)
{
/* If stdin isn't a terminal this fails.
But then so does tcsetattr(), so it doesn't matter. */
tcgetattr(0, &initial);
/* Save a copy to work with later. */
current = initial;
/* We _must_ clean up when we exit. */
/* signal(SIGINT, term_exit); */
ctcinit(); /* XLisp wants to catch ctrl C */
signal(SIGQUIT, term_exit);
/* Control-Z must also be handled. */
signal(SIGTSTP, term_ctrlz);
signal(SIGCONT, term_cont);
atexit(term_exit);
}
/* Set character-by-character input mode. */
void term_character(void)
{
/* One or more characters are sufficient to cause a read return. */
current.c_cc[VMIN] = 1;
/* No timeout; read waits forever until ready. */
current.c_cc[VTIME] = 0;
/* Line-by-line mode off */
current.c_lflag &= ~ICANON;
#ifndef READ_LINE
current.c_lflag &= ~ECHO;
#endif
tcsetattr(0, TCSANOW, &current);
}
/* Return to line-by-line input mode. */
void term_line(void)
{
current.c_lflag |= ICANON;
tcsetattr(0, TCSANOW, &current);
}
#define ERROR(s) return (perror(s), -1)
/* term_testchar -- tell whether character is ready or not,
*
* if ready, return it, otherwise return -2
*/
int term_testchar()
{
int n;
char c;
if (ioctl(0, FIONREAD, &n) < 0)
ERROR("IOgetchar");
if (n == 0) return -2;
switch(read(0, &c, 1)) {
case 1:
return c;
case 0:
return EOF;
default:
ERROR("IOgetchar-read");
}
}
/* term_getchar -- get a character (block if necessary) */
/**/
int term_getchar()
{
char c;
int rslt = read(0, &c, 1);
return (rslt == 1 ? c : EOF);
}

View File

@@ -0,0 +1,6 @@
void term_init();
void term_exit();
void ctcinit(); /* not implemented in term.h */
int term_testchar();
int term_getchar();
void term_character();

View File

@@ -0,0 +1,28 @@
/* this was written to test the term.c code, which was
found on the web for use in XLisp to enable ^C and other
character-by-character handling
*/
#include "term.h"
#include <signal.h>
void ctcinit()
{
signal(SIGINT, term_exit);
}
main()
{
int c;
int count = 0;
term_init();
term_character();
while ((c = term_testchar()) == -2) count++;
printf("got %c after %d\n", c, count);
while ((c = getchar()) != 'x') {
printf("got '%c' = %x\n", c, c);
}
term_exit();
}