|
|
1.1 root 1: /*
2: * UAE - The Un*x Amiga Emulator
3: *
4: * DOS Sound Blaster interface.
5: *
6: * (c) 1996 Peter Remmers
7: */
8:
9: /* internally used types */
10: typedef UWORD BOOL;
11:
12: typedef enum
13: {
14: SB_Type_StdSB,
15: SB_Type_SbPro,
16: SB_Type_SB16
17: }
18: tSBType;
19:
20: extern tSBType SB_Type;
21:
22: extern volatile int SB_Playing;
23: extern volatile unsigned long SB_Bytes_Played;
24:
25: extern BOOL SB_Reset(void);
26: extern void SB_WriteDSP (UBYTE value);
27: extern UBYTE SB_ReadDSP (void);
28: extern void SB_WriteMixer (UBYTE reg, UBYTE data);
29: extern UBYTE SB_ReadMixer (UBYTE reg);
30: extern BOOL SB_DetectMixer (void);
31: extern UBYTE fifo_read (void);
32: extern void fifo_write (UBYTE val);
33: extern void fill_buffer (UBYTE buf);
34: extern void SB_Play_8Bit_Std (UWORD bytes);
35: extern void SB_Play_8Bit_SbPro (UWORD bytes);
36: extern void SB_Play_8Bit_SB16 (UWORD bytes);
37: extern void SB_Play_8Bit_SB16_Autoinit (UWORD bytes);
38: extern void SB_Play_16Bit (UWORD bytes);
39: extern void SB_Play_16Bit_Autoinit (UWORD bytes);
40: extern void SB_IntHandler_Single (void);
41: extern void SB_IntHandler_Autoinit (void);
42: extern void SB_IntHandler (void);
43: extern void SB_SetRate_LoSpeed (UWORD rate);
44: extern void SB_SetRate_HiSpeed (UWORD rate);
45: extern void SB_SetRate_SB16 (UWORD rate);
46: extern void calculate_buf_sizes(void);
47: extern int SB_SetRate (unsigned short rate);
48: extern int SB_SetBits (unsigned char bits);
49: extern int SB_SetChannels (unsigned char channels);
50: extern int SB_SetSigned (int sign);
51: extern void SB_SpeakerOff(void);
52: extern void SB_SpeakerOn(void);
53: extern void SB_Play (void);
54: extern void irq2 (void);
55: extern void irq5 (void);
56: extern void irq7 (void);
57: extern void irq10 (void);
58: extern int SB_Detect (unsigned short *base, unsigned short *irq,
59: unsigned short *dmalo, unsigned short *dmahi);
60: extern int SB_Init (unsigned short base, unsigned short irq,
61: unsigned short dmalo, unsigned short dmahi);
62: extern void SB_Done (void);
63: extern void SB_Write (void *buf, unsigned long size);
64: extern void SB_Flush (void);
65: extern void SB_Stop (void);
66: extern void SB_Continue (void);
67: extern void SB_GetVersion (unsigned char *Maj, unsigned char *Min);
68: extern unsigned short SB_GetFragmentSize (void);
69: extern UWORD SB_GetBufferSize (void);
70: extern int SB_DetectInitSound(int *dspbits, int *dsprate, int *sndbufsize);
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.