added concrete implementations of putc(), getc(), getchar() and gets()
[tangerine.git] / compiler / include / devices / audio.h
blob7659278604ee97ddf7cad5e54c3f8d80b4a20c23
1 #ifndef DEVICES_AUDIO_H
2 #define DEVICES_AUDIO_H
4 /*
5 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
6 $Id$
8 Desc: audio device commands and structures
9 Lang: english
12 #ifndef EXEC_IO_H
13 # include <exec/io.h>
14 #endif
16 #define AUDIONAME "audio.device"
18 #define ADHARD_CHANNELS 4
20 #define ADALLOC_MINPREC -128
21 #define ADALLOC_MAXPREC 127
23 #define ADCMD_FREE (CMD_NONSTD + 0)
24 #define ADCMD_SETPREC (CMD_NONSTD + 1)
25 #define ADCMD_FINISH (CMD_NONSTD + 2)
26 #define ADCMD_PERVOL (CMD_NONSTD + 3)
27 #define ADCMD_LOCK (CMD_NONSTD + 4)
28 #define ADCMD_WAITCYCLE (CMD_NONSTD + 5)
29 #define ADCMD_ALLOCATE 32
31 #define ADIOB_PERVOL 4
32 #define ADIOB_SYNCCYCLE 5
33 #define ADIOB_NOWAIT 6
34 #define ADIOB_WRITEMESSAGE 7
36 #define ADIOF_PERVOL (1 << 4)
37 #define ADIOF_SYNCCYCLE (1 << 5)
38 #define ADIOF_NOWAIT (1 << 6)
39 #define ADIOF_WRITEMESSAGE (1 << 7)
41 #define ADIOERR_NOALLOCATION -10
42 #define ADIOERR_ALLOCFAILED -11
43 #define ADIOERR_CHANNELSTOLEN -12
45 struct IOAudio
47 struct IORequest ioa_Request;
48 WORD ioa_AllocKey;
49 UBYTE *ioa_Data;
50 ULONG ioa_Length;
51 UWORD ioa_Period;
52 UWORD ioa_Volume;
53 UWORD ioa_Cycles;
54 struct Message ioa_WriteMsg;
57 #endif /* DEVICES_AUDIO_H */