mirror of
https://github.com/david-schmidt/gsport.git
synced 2024-06-28 22:29:38 +00:00
Have Windows work with sound
This commit is contained in:
parent
1ffc645cba
commit
72512f2fc1
18
src/sound.c
18
src/sound.c
|
@ -46,7 +46,7 @@ int g_queued_samps = 0;
|
|||
int g_queued_nonsamps = 0;
|
||||
int g_num_osc_interrupting = 0;
|
||||
|
||||
#if defined(HPUX) || defined(__linux__) || defined(_WIN32) || defined(MAC)
|
||||
#if defined(HPUX) || defined(__linux__) || defined(WIN_SOUND) || defined(MAC) /* Workaround - gcc in cygwin wasn't defining _WIN32, substituted WIN_SOUND instead */
|
||||
int g_audio_enable = -1;
|
||||
#else
|
||||
# if defined(OSS)
|
||||
|
@ -263,7 +263,7 @@ sound_init()
|
|||
void
|
||||
sound_init_general()
|
||||
{
|
||||
#if !defined(_WIN32) && !defined(__CYGWIN__) && !defined(MAC) && !defined(__OS2__)
|
||||
#if !defined(WIN_SOUND) && !defined(__CYGWIN__) && !defined(MAC) && !defined(__OS2__) /* Workaround - gcc in cygwin wasn't defining _WIN32 */
|
||||
int pid;
|
||||
int shmid;
|
||||
int tmp;
|
||||
|
@ -273,7 +273,7 @@ sound_init_general()
|
|||
int size;
|
||||
int ret;
|
||||
|
||||
#if !defined(_WIN32) && !defined(__CYGWIN__) && !defined(MAC) && !defined(__OS2__)
|
||||
#if !defined(WIN_SOUND) && !defined(__CYGWIN__) && !defined(MAC) && !defined(__OS2__) /* Workaround - gcc in cygwin wasn't defining _WIN32 */
|
||||
if(!g_use_shmem) {
|
||||
if(g_audio_enable < 0) {
|
||||
printf("Defaulting audio off for slow X display\n");
|
||||
|
@ -290,7 +290,7 @@ sound_init_general()
|
|||
|
||||
size = SOUND_SHM_SAMP_SIZE * SAMPLE_CHAN_SIZE;
|
||||
|
||||
#if !defined(_WIN32) && !defined(__CYGWIN__) && !defined(MAC) && !defined(__OS2__)
|
||||
#if !defined(WIN_SOUND) && !defined(__CYGWIN__) && !defined(MAC) && !defined(__OS2__) /* Workaround - gcc in cygwin wasn't defining _WIN32 */
|
||||
shmid = shmget(IPC_PRIVATE, size, IPC_CREAT | 0777);
|
||||
if(shmid < 0) {
|
||||
printf("sound_init: shmget ret: %d, errno: %d\n", shmid,
|
||||
|
@ -321,7 +321,7 @@ sound_init_general()
|
|||
|
||||
fflush(stdout);
|
||||
|
||||
#if !defined(MAC) && !defined(_WIN32) && !defined(__CYGWIN__) && !defined(__OS2__)
|
||||
#if !defined(MAC) && !defined(WIN_SOUND) && !defined(__CYGWIN__) && !defined(__OS2__) /* Workaround - gcc in cygwin wasn't defining _WIN32 */
|
||||
/* prepare pipe so parent can signal child each other */
|
||||
/* pipe[0] = read side, pipe[1] = write end */
|
||||
ret = pipe(&g_pipe_fd[0]);
|
||||
|
@ -373,12 +373,12 @@ sound_init_general()
|
|||
#else
|
||||
# ifdef MAC
|
||||
macsnd_init(shmaddr);
|
||||
# elif defined (_WIN32)
|
||||
# elif defined (WIN_SOUND) /* Workaround - gcc in cygwin wasn't defining _WIN32 */
|
||||
/* windows */
|
||||
win32snd_init(shmaddr);
|
||||
# elif defined (__OS2__)
|
||||
# endif
|
||||
#endif /* _WIN32 */
|
||||
#endif /* WIN_SOUND */
|
||||
|
||||
}
|
||||
|
||||
|
@ -446,7 +446,7 @@ sound_shutdown()
|
|||
// OG stop sound and free memory on sound_shutdown
|
||||
sound_reset(g_cur_dcycs);
|
||||
|
||||
#ifdef _WIN32
|
||||
#ifdef WIN_SOUND /* Workaround - gcc in cygwin wasn't defining _WIN32 */
|
||||
win32snd_shutdown();
|
||||
#elif defined(__OS2__)
|
||||
#else
|
||||
|
@ -640,7 +640,7 @@ send_sound(int real_samps, int size)
|
|||
DOC_LOG("send_sound", -1, g_last_sound_play_dsamp,
|
||||
(real_samps << 30) + size);
|
||||
|
||||
#if defined(MAC) || defined(_WIN32)
|
||||
#if defined(MAC) || defined(WIN_SOUND) /* Workaround - gcc in cygwin wasn't defining _WIN32 */
|
||||
ret = 0;
|
||||
child_sound_playit(tmp);
|
||||
#elif defined(__OS2__)
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
# include <sys/soundcard.h>
|
||||
#endif
|
||||
|
||||
#ifndef _WIN32
|
||||
#ifndef WIN_SOUND /* Workaround - gcc in cygwin wasn't defining _WIN32 */
|
||||
# include <sys/socket.h>
|
||||
# include <netinet/in.h>
|
||||
#endif
|
||||
|
@ -63,7 +63,7 @@ word32 *g_childsnd_shm_addr = 0;
|
|||
|
||||
void child_sound_init_linux();
|
||||
void child_sound_init_hpdev();
|
||||
void child_sound_init_win32();
|
||||
void child_sound_initWIN_SOUND();
|
||||
void child_sound_init_mac();
|
||||
|
||||
void
|
||||
|
@ -84,7 +84,7 @@ reliable_buf_write(word32 *shm_addr, int pos, int size)
|
|||
size = size * 4;
|
||||
|
||||
while(size > 0) {
|
||||
#ifdef _WIN32
|
||||
#ifdef WIN_SOUND
|
||||
ret = win32_send_audio(ptr, size);
|
||||
#else
|
||||
# ifdef MAC
|
||||
|
@ -145,7 +145,7 @@ child_sound_loop(int read_fd, int write_fd, word32 *shm_addr)
|
|||
#if defined(__linux__) || defined(OSS)
|
||||
child_sound_init_linux();
|
||||
#endif
|
||||
#ifdef _WIN32
|
||||
#ifdef WIN_SOUND
|
||||
child_sound_init_win32();
|
||||
return;
|
||||
#endif
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
TARGET = gsport.exe
|
||||
TFEOBJ = tfe/tfe.o arch/win32/tfearch.o tfe/tfesupp.o
|
||||
OBJECTS = $(OBJECTS1) $(TFEOBJ) scc_windriver.o win32snd_driver.o win_console.o win_generic.o
|
||||
CCOPTS = -O2 -DGSPORT_LITTLE_ENDIAN -DHAVE_TFE
|
||||
CCOPTS = -O2 -DGSPORT_LITTLE_ENDIAN -DHAVE_TFE -DWIN_SOUND
|
||||
CPPOPTS = -O2 -DGSPORT_LITTLE_ENDIAN -DHAVE_TFE
|
||||
SUFFIX = ".exe"
|
||||
NAME = gsport
|
||||
|
|
Loading…
Reference in New Issue
Block a user