123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- /*
- Copyright (C) 1994-1995 Apogee Software, Ltd.
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License
- as published by the Free Software Foundation; either version 2
- of the License, or (at your option) any later version.
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- See the GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
- // rottnet.h
- #ifndef rottnet_public
- #define rottnet_public
- #if __WATCOMC__
- #include "develop.h"
- #else
- #define SHAREWARE 0
- #include "global.h"
- #endif
- #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 14 // max computers in a game
- #if ( SHAREWARE == 1 )
- #define MAXPLAYERS 5 // 5 players max + drones
- #else
- #define MAXPLAYERS 11 // 11 players max + drones
- #endif
- #define CMD_SEND 1
- #define CMD_GET 2
- #define CMD_OUTQUEBUFFERSIZE 3
- #define CMD_INQUEBUFFERSIZE 4
- #define ROTTCOM_ID 0x12345678l
- #define MAXPACKETSIZE 2048
- #define MAXCOMBUFFERSIZE 2048
- #if __WATCOMC__
- #pragma pack (1)
- #endif
- typedef struct
- {
- short intnum; // ROTT executes an int to send commands
- // communication between ROTT 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 rottdata to be sent / bytes read
- // info specific to this node
- short consoleplayer; // 0-3 = player number
- short numplayers; // 1-4
- short client; // 0 = server 1 = client
- short gametype; // 0 = modem 1 = network
- short ticstep; // 1 for every tic 2 for every other tic ...
- short remoteridicule; // 0 = remote ridicule is off 1= rr is on
- // packet data to be sent
- char data[MAXPACKETSIZE];
- } rottcom_t;
- #if __WATCOMC__
- #pragma pack (4)
- #endif
- #define MODEM_GAME 0
- #define NETWORK_GAME 1
- #define ROTTLAUNCHER ("ROTT.EXE")
- #if (__WATCOMC__ == 0)
- extern rottcom_t rottcom;
- extern boolean pause;
- void ShutdownROTTCOM ( void );
- int CheckParm (char *check);
- void LaunchROTT (void);
- void NetISR (void);
- long GetVector (void);
- #else
- extern rottcom_t * rottcom;
- #endif
- #endif
|