Annotation of uae/src/sd-af/sound.h, revision 1.1

1.1     ! root        1:  /* 
        !             2:   * UAE - The Un*x Amiga Emulator
        !             3:   * 
        !             4:   * Support for the AF sound system
        !             5:   * 
        !             6:   * Copyright 1996 Marcus Sundberg
        !             7:   */
        !             8: 
        !             9: #include <AF/AFlib.h>
        !            10: 
        !            11: extern AFAudioConn  *aud;
        !            12: extern AC            ac;
        !            13: extern long          aftime;
        !            14: extern int           rate;
        !            15: extern int sndbufsize;
        !            16: extern uae_u16 sndbuffer[];
        !            17: extern uae_u16 *sndbufpt;
        !            18: 
        !            19: static __inline__ void flush_sound_buffer(void)
        !            20: {
        !            21:     long size = (char *)sndbufpt - (char *)sndbuffer;
        !            22:     if (AFGetTime(ac) > aftime)
        !            23:        aftime = AFGetTime(ac);
        !            24:     AFPlaySamples(ac, aftime, size, (unsigned char*) sndbuffer);
        !            25:     aftime += size / 2;
        !            26:     sndbufpt = sndbuffer;
        !            27: }
        !            28: 
        !            29: static __inline__ void check_sound_buffers (void)
        !            30: {
        !            31:     if ((char *)sndbufpt - (char *)sndbuffer >= sndbufsize) {
        !            32:        flush_sound_buffer();
        !            33:     }
        !            34: }
        !            35: 
        !            36: #define PUT_SOUND_BYTE(b) do { *(uae_u8 *)sndbufpt = b; sndbufpt = (uae_u16 *)(((uae_u8 *)sndbufpt) + 1); } while (0)
        !            37: #define PUT_SOUND_WORD(b) do { *(uae_u16 *)sndbufpt = b; sndbufpt = (uae_u16 *)(((uae_u8 *)sndbufpt) + 2); } while (0)
        !            38: #define SOUND16_BASE_VAL 0
        !            39: #define SOUND8_BASE_VAL 128
        !            40: 
        !            41: #define DEFAULT_SOUND_BSIZ 8192
        !            42: #define DEFAULT_SOUND_BITS 16
        !            43: #define DEFAULT_SOUND_FREQ 44100
        !            44: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.