|
|
1.1 ! root 1: /* ! 2: * UAE - The Un*x Amiga Emulator ! 3: * ! 4: * Support for Linux/USS sound ! 5: * ! 6: * Copyright 1997 Bernd Schmidt ! 7: */ ! 8: ! 9: extern int sound_fd; ! 10: extern uae_u16 sndbuffer[]; ! 11: extern uae_u16 *sndbufpt; ! 12: extern int sndbufsize; ! 13: ! 14: extern unsigned long sndbuf_written; ! 15: ! 16: static __inline__ void check_sound_buffers (void) ! 17: { ! 18: if ((char *)sndbufpt - (char *)sndbuffer >= sndbufsize) { ! 19: write (sound_fd, sndbuffer, sndbufsize); ! 20: sndbufpt = sndbuffer; ! 21: sndbuf_written += sndbufsize; ! 22: } ! 23: } ! 24: ! 25: #define PUT_SOUND_BYTE(b) do { *(uae_u8 *)sndbufpt = b; sndbufpt = (uae_u16 *)(((uae_u8 *)sndbufpt) + 1); } while (0) ! 26: #define PUT_SOUND_WORD(b) do { *(uae_u16 *)sndbufpt = b; sndbufpt = (uae_u16 *)(((uae_u8 *)sndbufpt) + 2); } while (0) ! 27: #define PUT_SOUND_BYTE_LEFT(b) PUT_SOUND_BYTE(b) ! 28: #define PUT_SOUND_WORD_LEFT(b) PUT_SOUND_WORD(b) ! 29: #define PUT_SOUND_BYTE_RIGHT(b) PUT_SOUND_BYTE(b) ! 30: #define PUT_SOUND_WORD_RIGHT(b) PUT_SOUND_WORD(b) ! 31: #define SOUND16_BASE_VAL 0 ! 32: #define SOUND8_BASE_VAL 128 ! 33: ! 34: #define DEFAULT_SOUND_MAXB 8192 ! 35: #define DEFAULT_SOUND_MINB 8192 ! 36: #define DEFAULT_SOUND_BITS 16 ! 37: #define DEFAULT_SOUND_FREQ 44100 ! 38: #define HAVE_STEREO_SUPPORT
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.