-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDOOMNET.H
58 lines (40 loc) · 1.74 KB
/
DOOMNET.H
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
// doomnet.h
#define PEL_WRITE_ADR 0x3c8
#define PEL_DATA 0x3c9
#define I_ColorBlack(r,g,b) {outp(PEL_WRITE_ADR,0);outp(PEL_DATA,r);outp(PEL_DATA,g);outp(PEL_DATA,b);};
#define MAXNETNODES 8 // max computers in a game
#define MAXPLAYERS 4 // 4 players max + drones
#define CMD_SEND 1
#define CMD_GET 2
#define DOOMCOM_ID 0x12345678l
typedef struct
{
long id;
short intnum; // DOOM executes an int to send commands
// communication between DOOM and the driver
short command; // CMD_SEND or CMD_GET
short remotenode; // dest for send, set by get (-1 = no packet)
short datalength; // bytes in doomdata to be sent / bytes read
// info common to all nodes
short numnodes; // console is allways node 0
short ticdup; // 1 = no duplication, 2-5 = dup for slow nets
short extratics; // 1 = send a backup tic in every packet
short deathmatch; // 1 = deathmatch
short savegame; // -1 = new game, 0-5 = load savegame
short episode; // 1-3
short map; // 1-9
short skill; // 1-5
// info specific to this node
short consoleplayer; // 0-3 = player number
short numplayers; // 1-4
short angleoffset; // 1 = left, 0 = center, -1 = right
short drone; // 1 = drone
// packet data to be sent
char data[512];
} doomcom_t;
extern doomcom_t doomcom;
extern void interrupt (*olddoomvect) (void);
extern int vectorishooked;
int CheckParm (char *check);
void LaunchDOOM (void);
void interrupt NetISR (void);