X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fsound.c;h=fe31b7b41bb510af7f80bc1951b3bef4b557a2e4;hb=3198ed8319f99e19a14447745f4f93e4b4522961;hp=9bdedb932d852287e885bd01cefea4db63f76a09;hpb=a1655b870904de973c366d85ebdc8adde4ef5e1e;p=chise%2Fxemacs-chise.git.1 diff --git a/src/sound.c b/src/sound.c index 9bdedb9..fe31b7b 100644 --- a/src/sound.c +++ b/src/sound.c @@ -37,12 +37,10 @@ Boston, MA 02111-1307, USA. */ #include "redisplay.h" #include "sysdep.h" -#ifdef HAVE_UNISTD_H -#include -#endif +#include "sysfile.h" #ifdef HAVE_NATIVE_SOUND -# include +# include "sysproc.h" # include "nativesound.h" #endif @@ -122,9 +120,7 @@ Windows the sound file must be in WAV format. { char *fileext; - TO_EXTERNAL_FORMAT (LISP_STRING, file, - C_STRING_ALLOCA, fileext, - Qfile_name); + LISP_STRING_TO_EXTERNAL (file, fileext, Qfile_name); /* #### NAS code should allow specification of a device. */ if (nas_play_sound_file (fileext, vol)) return Qnil; @@ -137,9 +133,7 @@ Windows the sound file must be in WAV format. char *fileext; int result; - TO_EXTERNAL_FORMAT (LISP_STRING, file, - C_STRING_ALLOCA, fileext, - Qfile_name); + LISP_STRING_TO_EXTERNAL (file, fileext, Qfile_name); /* #### ESD uses alarm(). But why should we also stop SIGIO? */ stop_interrupts (); @@ -155,9 +149,7 @@ Windows the sound file must be in WAV format. { const char *fileext; - TO_EXTERNAL_FORMAT (LISP_STRING, file, - C_STRING_ALLOCA, fileext, - Qfile_name); + LISP_STRING_TO_EXTERNAL (file, fileext, Qfile_name); /* The sound code doesn't like getting SIGIO interrupts. Unix sucks! */ stop_interrupts (); @@ -279,7 +271,7 @@ See the variable `sound-alist'. /* variable `sound' is anything that can be a cdr in sound-alist */ Lisp_Object new_volume, pitch, duration, data; int loop_count = 0; - int vol, pit, dur, succes; + int vol, pit, dur; struct device *d = decode_device (device); /* NOTE! You'd better not signal an error in here. */ @@ -335,13 +327,14 @@ See the variable `sound-alist'. { Extbyte *soundext; Extcount soundextlen; + int succes; TO_EXTERNAL_FORMAT (LISP_STRING, sound, ALLOCA, (soundext, soundextlen), Qbinary); /* #### ESD uses alarm(). But why should we also stop SIGIO? */ stop_interrupts (); - succes = esd_play_sound_data (soundext, soundextlen, vol); + succes = esd_play_sound_data ((unsigned char *) soundext, soundextlen, vol); start_interrupts (); QUIT; if(succes) @@ -355,6 +348,7 @@ See the variable `sound-alist'. { const Extbyte *soundext; Extcount soundextlen; + int succes; TO_EXTERNAL_FORMAT (LISP_STRING, sound, ALLOCA, (soundext, soundextlen), @@ -652,7 +646,7 @@ of sounds. Otherwise, sounds are always played synchronously. DEFVAR_LISP ("native-sound-only-on-console", &Vnative_sound_only_on_console /* Non-nil value means play sounds only if XEmacs is running on the system console. -Nil means always always play sounds, even if running on a non-console tty +Nil means always play sounds, even if running on a non-console tty or a secondary X display. This variable only applies to native sound support.