Cygwin support, using SDL.
[btb/d2x.git] / unused / win95 / xtapi.h
1 /*
2 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
3 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
4 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
5 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
6 IN USING, DISPLAYING,  AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
7 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
8 FREE PURPOSES.  IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
9 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES.  THE END-USER UNDERSTANDS
10 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.  
11 COPYRIGHT 1993-1999 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
12 */
13
14
15
16 #ifndef _XTAPI_H
17 #define _XTAPI_H
18
19 #include "comm.h"
20
21 // Error Codes ----------------------------------------------------------------
22
23 #define XTAPI_SUCCESS                                   0
24 #define XTAPI_GENERAL_ERR                               -1
25 #define XTAPI_BUSY                                              -2
26 #define XTAPI_NODEVICES                                 -3
27 #define XTAPI_INCOMPATIBLE_VERSION      -4
28 #define XTAPI_OUT_OF_MEMORY                     -5
29 #define XTAPI_OUT_OF_RESOURCES          -6
30 #define XTAPI_NOT_SUPPORTED                     -7
31 #define XTAPI_APPCONFLICT                               -8
32 #define XTAPI_NOTLOCKED                                 -9
33 #define XTAPI_NOTOPEN                                   -10
34 #define XTAPI_FAIL                                              -127
35
36
37 //      Device Types ---------------------------------------------------------------
38
39 #define XTAPI_MODEM_DEVICE                              1
40
41
42 //      XTAPI messages -------------------------------------------------------------
43
44 #define XTAPI_LINE_IDLE                                 1
45 #define XTAPI_LINE_DIALTONE                     2
46 #define XTAPI_LINE_DIALING                              3
47 #define XTAPI_LINE_RINGBACK                     4
48 #define XTAPI_LINE_BUSY                                 5
49 #define XTAPI_LINE_FEEDBACK                     6       // failed to connect.  phone company stuff
50 #define XTAPI_LINE_CONNECTED                    7
51 #define XTAPI_LINE_DISCONNECTED         8
52 #define XTAPI_LINE_PROCEEDING                   9
53 #define XTAPI_LINE_RINGING                              10
54 #define XTAPI_LINE_UNDEFINED                    127
55
56
57 // Data structures ------------------------------------------------------------
58
59 typedef struct tagTapiDevice {
60         uint id;
61         uint type;
62         uint apiver;
63         uint min_baud;
64         uint max_baud;
65 } TapiDevice;
66
67
68 //      Functions ------------------------------------------------------------------
69
70 int xtapi_init(char *appname, int *numdevs);
71 int xtapi_shutdown();
72 int xtapi_enumdevices(TapiDevice *dev, int num);
73 int xtapi_lock(TapiDevice *dev);
74 int xtapi_unlock(TapiDevice *dev);
75
76 int xtapi_device_dialout(char *phonenum);
77 int xtapi_device_dialin();
78 int xtapi_device_answer();
79 int xtapi_device_poll_callstate(uint *state);
80 int xtapi_device_create_comm_object(COMM_OBJ *commobj);
81 int xtapi_device_hangup();
82
83 #endif