added -udp documentation from d1x
[btb/d2x.git] / main / modem.h
1 /* $Id: modem.h,v 1.2 2003-10-10 09:36:35 btb Exp $ */
2 /*
3 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
4 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
5 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
6 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
7 IN USING, DISPLAYING,  AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
8 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
9 FREE PURPOSES.  IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
10 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES.  THE END-USER UNDERSTANDS
11 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.
12 COPYRIGHT 1993-1999 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
13 */
14
15 /*
16  *
17  * Header file for modem support
18  *
19  * Old Log:
20  * Revision 1.2  1995/09/05  14:06:40  allender
21  * checkpoint again
22  *
23  * Revision 1.1  1995/05/16  15:59:29  allender
24  * Initial revision
25  *
26  * Revision 2.1  1995/03/21  14:40:38  john
27  * Ifdef'd out the NETWORK code.
28  *
29  * Revision 2.0  1995/02/27  11:31:34  john
30  * New version 2.0, which has no anonymous unions, builds with
31  * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
32  *
33  * Revision 1.18  1994/11/22  17:12:05  rob
34  * Starting working on secret level fix for modem games.
35  *
36  * Revision 1.17  1994/11/17  16:43:17  rob
37  * Added prototype for com_level_sync function.
38  *
39  * Revision 1.16  1994/11/15  21:30:32  rob
40  * Added prototype for new menu hook.
41  *
42  * Revision 1.15  1994/10/07  16:15:33  rob
43  * Changed calls to multi_send_position.
44  *
45  * Revision 1.14  1994/10/07  12:52:24  rob
46  * Fixed some problems.
47  *
48  * Revision 1.13  1994/10/07  11:25:47  rob
49  * Tried to fix modem to work with new multi stuff.  Still a bit jacked up, tho.
50  *
51  * Revision 1.12  1994/10/05  19:14:50  rob
52  * Exported macros and arrays to support network object mapping.
53  *
54  * Revision 1.11  1994/10/05  17:48:59  rob
55  * Several changes, most to end_of_level sequencing.
56  *
57  * Revision 1.10  1994/10/05  14:22:54  rob
58  * Added com_end_level.
59  *
60  * Revision 1.9  1994/09/30  18:37:22  rob
61  * Another day's worth of work.  Mostly menus, error checking.  Added
62  * level checksums during sync, carrier detect during all com calls,
63  * generic com_abort() procedure for bailing out, and nm_messagebox
64  * handling of QUIT instead of HUD message (which never gets seen).
65  *
66  * Revision 1.8  1994/09/29  20:55:16  rob
67  * Lots of changes.
68  *
69  * Revision 1.7  1994/09/29  16:09:20  rob
70  * Added explode stuff.
71  *
72  * Revision 1.6  1994/09/28  14:31:08  rob
73  * Added serial setup menu.
74  *
75  * Revision 1.5  1994/09/27  15:02:49  rob
76  * Null modem basic routines working.  Sending DEAD messages and
77  * missiles still need to be done.
78  *
79  * Revision 1.4  1994/09/24  16:52:33  rob
80  * Added stubbed funcs for startup and stop of serial games.
81  *
82  * Revision 1.3  1994/09/24  14:47:31  rob
83  * New function protos.
84  *
85  * Revision 1.2  1994/09/22  17:53:29  rob
86  * First revision, not yet functional.
87  *
88  * Revision 1.1  1994/09/22  12:39:25  rob
89  * Initial revision
90  *
91  *
92  */
93
94
95 #ifndef _MODEM_H
96 #define _MODEM_H
97
98 int com_enable(void);
99 void com_disable(void);
100 void com_do_frame(void);
101 void com_process_input(void);
102 void serial_leave_game(void);
103 void modem_start_game(void);
104 void com_main_menu(void);
105 void com_endlevel(int *secret);
106 void com_abort(void);
107 void com_send_data(char *buf, int len, int repeat);
108 int com_level_sync(void);
109
110
111 extern int com_port_num;
112 extern int serial_active;
113 extern int com_speed;
114 extern int com_baud_rate;
115
116 #endif /* _MODEM_H */