1 
2 /*
3  * xa_ipc_cmds.h
4  *
5  * Copyright (C) 1996-1998,1999 by Mark Podlipec.
6  * All rights reserved.
7  *
8  * This software may be freely used, copied and redistributed without
9  * fee for non-commerical purposes provided that this copyright
10  * notice is preserved intact on all copies.
11  *
12  * There is no warranty or other guarantee of fitness of this software.
13  * It is provided solely "as is". The author disclaims all
14  * responsibility and liability with respect to this software's usage
15  * or its effect upon hardware or computer systems.
16  *
17  */
18 /****************
19  * Rev History
20  *
21  * 01Mar96 - created.
22  *
23  ****************/
24 
25 
26 #ifdef XA_AUDIO
27 
28 extern xaULONG XA_Give_Birth();
29 extern xaULONG XA_Video_Receive_Ack();
30 extern xaULONG XA_Video_Send2_Audio();
31 extern void XA_IPC_Close_Pipes();
32 extern void XA_IPC_Set_Debug();
33 
34 #define XA_AUDIO_SETUP		{ if (xa_forkit == xaTRUE) xa_forkit = \
35   XA_Video_Send2_Audio(XA_IPC_AUD_SETUP,NULL,0,0,2000,&xa_vaudio_status); }
36 #define XA_AUDIO_KILL()		{ if (xa_forkit == xaTRUE) xa_forkit = \
37   XA_Video_Send2_Audio(XA_IPC_AUD_KILL,NULL,0,0,2000,&xa_vaudio_status); }
38 #define XA_AUDIO_PREP()		{ if (xa_forkit == xaTRUE) xa_forkit = \
39   XA_Video_Send2_Audio(XA_IPC_AUD_PREP,NULL,0,0,10000,&xa_vaudio_status); }
40 #define XA_AUDIO_ON()		{ if (xa_forkit == xaTRUE) xa_forkit = \
41   XA_Video_Send2_Audio(XA_IPC_AUD_ON,NULL,0,0,2000,&xa_vaudio_status); }
42 #define XA_AUDIO_OFF(x)		{ if (xa_forkit == xaTRUE) xa_forkit = \
43   XA_Video_Send2_Audio(XA_IPC_AUD_OFF,NULL,0,x,2000,&xa_vaudio_status); }
44 #define XA_AUDIO_INIT(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
45   XA_Video_Send2_Audio(XA_IPC_AUD_INIT,NULL,0,0,2000,&x); }
46 #define XA_SET_OUTPUT_PORT(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
47   XA_Video_Send2_Audio(XA_IPC_AUD_PORT,NULL,0,x,2000,0); }
48 #define XA_SPEAKER_TOG(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
49   XA_Video_Send2_Audio(XA_IPC_AUD_STOG,NULL,0,x,2000,0); }
50 #define XA_HEADPHONE_TOG(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
51   XA_Video_Send2_Audio(XA_IPC_AUD_HTOG,NULL,0,x,2000,0); }
52 #define XA_LINEOUT_TOG(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
53   XA_Video_Send2_Audio(XA_IPC_AUD_LTOG,NULL,0,x,2000,0); }
54 #define XA_AUDIO_INIT_SND	{ if (xa_forkit == xaTRUE) xa_forkit = \
55   XA_Video_Send2_Audio(XA_IPC_SND_INIT,NULL,0,0,2000,0); }
56 #define XA_AUDIO_SET_VOLUME(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
57   XA_Video_Send2_Audio(XA_IPC_AUD_VOL,0,0,x,1000,0);  }
58 #define XA_AUDIO_SET_MUTE(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
59   XA_Video_Send2_Audio(XA_IPC_AUD_MUTE,0,0,x,1000,0);  }
60 #define XA_AUDIO_SET_RATE(x);	{ if (xa_forkit == xaTRUE) xa_forkit = \
61   XA_Video_Send2_Audio(XA_IPC_AUD_RATE,0,0,x,1000,0);  }
62 #define XA_AUDIO_SET_ENABLE(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
63   XA_Video_Send2_Audio(XA_IPC_AUD_ENABLE,0,0,x,1000,0); }
64 #define XA_AUDIO_SET_FFLAG(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
65   XA_Video_Send2_Audio(XA_IPC_AUD_FFLAG,0,0,x,1000,0); }
66 #define XA_AUDIO_SET_BFLAG(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
67   XA_Video_Send2_Audio(XA_IPC_AUD_BFLAG,0,0,x,1000,0); }
68 #define XA_AUDIO_GET_STATUS(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
69   XA_Video_Send2_Audio(XA_IPC_GET_STATUS,0,0,0,1000,&x); \
70   else x = XA_AUDIO_NICHTDA; }
71 #define XA_AUDIO_PLAY_FILE(x,y)	{ if (xa_forkit == xaTRUE) xa_forkit = \
72   XA_Video_Send2_Audio(XA_IPC_PLAY_FILE, 0,0,x,1000,&y);  }
73 #define XA_AUDIO_SET_AUD_BUFF(x) { if (xa_forkit == xaTRUE) xa_forkit = \
74   XA_Video_Send2_Audio(XA_IPC_SET_AUDBUFF, 0,0,(x),1000,0);  }
75 #define XA_AUDIO_SET_KLUDGE2(x) { if (xa_forkit == xaTRUE) xa_forkit = \
76   XA_Video_Send2_Audio(XA_IPC_SET_KLUDGE2, 0,0,(x),1000,0);  }
77 #define XA_AUDIO_SET_KLUDGE900(x) { if (xa_forkit == xaTRUE) xa_forkit = \
78   XA_Video_Send2_Audio(XA_IPC_SET_KLUDGE900, 0,0,(x),1000,0);  }
79 #define XA_AUDIO_N_FILE(x,y)	{ if (xa_forkit == xaTRUE) xa_forkit = \
80   XA_Video_Send2_Audio(XA_IPC_N_FILE,0,0,x,1000,&y);  }
81 #define XA_AUDIO_EXIT()		{ if (xa_forkit == xaTRUE) xa_forkit = \
82   XA_Video_Send2_Audio(XA_IPC_EXIT,NULL,0,0,1000,0); \
83   xa_forkit = xaFALSE; }
84 #define XA_AUDIO_VID_TIME(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
85   XA_Video_Send2_Audio(XA_IPC_VID_TIME,NULL,0,x,1000,0); }
86 #define XA_AUDIO_FILE(num)	{ if (xa_forkit == xaTRUE) xa_forkit = \
87   XA_Video_Send2_Audio(XA_IPC_FILE,0,0,num,1000,0); }
88 #define XA_AUDIO_FNAME(fn,len,num)  { if (xa_forkit == xaTRUE) xa_forkit = \
89   XA_Video_Send2_Audio(XA_IPC_FNAME,fn,len,num,1000,0); }
90 #define XA_AUDIO_RST_TIME(x)	{ if (xa_forkit == xaTRUE) xa_forkit = \
91   XA_Video_Send2_Audio(XA_IPC_RST_TIME,0,0,x,2000,0); }
92 #define XA_AUDIO_UNFILE(num)	{ if (xa_forkit == xaTRUE) xa_forkit = \
93   XA_Video_Send2_Audio(XA_IPC_UNFILE,0,0,num,1000,0); }
94 #define XA_AUDIO_MERGEFILE(num)	{ if (xa_forkit == xaTRUE) xa_forkit = \
95   XA_Video_Send2_Audio(XA_IPC_MERGEFILE,0,0,num,1000,0); }
96 
97 #else
98 
99 #define XA_AUDIO_SETUP
100 #define XA_AUDIO_KILL()
101 #define XA_AUDIO_PREP()
102 #define XA_AUDIO_ON()
103 #define XA_AUDIO_OFF(x)
104 #define XA_AUDIO_INIT(x)	{ x = XA_AUDIO_ERR; }
105 #define XA_SET_OUTPUT_PORT(x)
106 #define XA_SPEAKER_TOG(x)
107 #define XA_HEADPHONE_TOG(x)
108 #define XA_LINEOUT_TOG(x)
109 #define XA_AUDIO_INIT_SND
110 #define XA_AUDIO_SET_VOLUME(x)
111 #define XA_AUDIO_SET_MUTE(x)
112 #define XA_AUDIO_SET_RATE(x)
113 #define XA_AUDIO_SET_ENABLE(x);
114 #define XA_AUDIO_SET_FFLAG(x);
115 #define XA_AUDIO_SET_BFLAG(x);
116 #define XA_AUDIO_GET_STATUS(x)	{ x = xaFALSE;; }
117 #define XA_AUDIO_PLAY_FILE(x,y)
118 #define XA_AUDIO_SET_AUD_BUFF(x)
119 #define XA_AUDIO_SET_KLUDGE2(x)
120 #define XA_AUDIO_SET_KLUDGE900(x)
121 #define XA_AUDIO_N_FILE(x,y)
122 #define XA_AUDIO_EXIT()
123 #define XA_AUDIO_VID_TIME(x)
124 #define XA_AUDIO_FILE(num)
125 #define XA_AUDIO_FNAME(fn,len,num)
126 #define XA_AUDIO_RST_TIME(x)
127 #define XA_AUDIO_UNFILE(num)
128 #define XA_AUDIO_MERGEFILE(num)
129 
130 #endif
131 
132