added concrete implementations of putc(), getc(), getchar() and gets()
[tangerine.git] / compiler / include / datatypes / soundclass.h
blobb8c5fc36c186aa049720b1d2f6fefb49a90c0bf3
1 #ifndef DATATYPES_SOUNDCLASS_H
2 #define DATATYPES_SOUNDCLASS_H
4 /*
5 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
6 $Id$
8 Desc: Includes for soundclass
9 Lang: English
12 #ifndef UTILITY_TAGITEM_H
13 # include <utility/tagitem.h>
14 #endif
16 #ifndef DATATYPES_DATATYPESCLASS_H
17 # include <datatypes/datatypesclass.h>
18 #endif
20 #ifndef LIBRARIES_IFFPARSE_H
21 # include <libraries/iffparse.h>
22 #endif
24 #ifndef DEVICES_TIMER_H
25 # include <devices/timer.h>
26 #endif
28 #define SOUNDDTCLASS "sound.datatype"
30 /* Tags */
32 #define SDTA_Dummy (DTA_Dummy + 500)
33 #define SDTA_VoiceHeader (SDTA_Dummy + 1)
34 #define SDTA_Sample (SDTA_Dummy + 2)
35 #define SDTA_SampleLength (SDTA_Dummy + 3)
36 #define SDTA_Period (SDTA_Dummy + 4)
37 #define SDTA_Volume (SDTA_Dummy + 5)
38 #define SDTA_Cycles (SDTA_Dummy + 6)
39 #define SDTA_SignalTask (SDTA_Dummy + 7)
40 #define SDTA_SignalBit (SDTA_Dummy + 8)
41 #define SDTA_SignalBitMask SDTA_SignalBit
42 #define SDTA_Continuous (SDTA_Dummy + 9)
44 /* New in V44 */
46 #define SDTA_SignalBitNumber (SDTA_Dummy + 10)
47 #define SDTA_SamplesPerSec (SDTA_Dummy + 11)
48 #define SDTA_ReplayPeriod (SDTA_Dummy + 12)
49 #define SDTA_LeftSample (SDTA_Dummy + 13)
50 #define SDTA_RightSample (SDTA_Dummy + 14)
51 #define SDTA_Pan (SDTA_Dummy + 15)
52 #define SDTA_FreeSampleData (SDTA_Dummy + 16)
53 #define SDTA_SyncSampleChange (SDTA_Dummy + 17)
56 /* Data compression methods */
58 #define CMP_NONE 0
59 #define CMP_FIBDELTA 1
61 /* Unity = Fixed 1.0 = maximum volume */
62 #define Unity 0x10000UL
64 struct VoiceHeader
66 ULONG vh_OneShotHiSamples;
67 ULONG vh_RepeatHiSamples;
68 ULONG vh_SamplesPerHiCycle;
69 UWORD vh_SamplesPerSec;
70 UBYTE vh_Octaves;
71 UBYTE vh_Compression;
72 ULONG vh_Volume;
76 /* Channel allocation */
78 #define SAMPLETYPE_Left 2L
79 #define SAMPLETYPE_Right 4L
80 #define SAMPLETYPE_Stereo 6L
82 typedef LONG SampleType;
84 /* IFF types */
86 #define ID_8SVX MAKE_ID('8','S','V','X')
87 #define ID_VHDR MAKE_ID('V','H','D','R')
88 #define ID_CHAN MAKE_ID('C','H','A','N')
89 #define ID_BODY MAKE_ID('B','O','D','Y')
91 #endif /* DATATYPES_SOUNDCLASS_H */