summaryrefslogtreecommitdiff
path: root/sys/unix/osx/system.lsp
diff options
context:
space:
mode:
Diffstat (limited to 'sys/unix/osx/system.lsp')
-rw-r--r--sys/unix/osx/system.lsp69
1 files changed, 69 insertions, 0 deletions
diff --git a/sys/unix/osx/system.lsp b/sys/unix/osx/system.lsp
new file mode 100644
index 0000000..2ecd6ed
--- /dev/null
+++ b/sys/unix/osx/system.lsp
@@ -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