home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * GLOBALS.C
- *
- * DNET (c)Copyright 1988, Matthew Dillon, All Rights Reserved.
- *
- * -restart/packet protocol
- * -dnet->amiga (DNET.READ)
- * -amiga->dnet (DNET.WRITE)
- */
-
- #include "dnet.h"
-
- int Enable_Abort;
-
- IOT Rto; /* Read-Timeout/reset */
- IOT Wto; /* Write-Timeout/retry */
- IOT Cto; /* 1 second CD check / idle line*/
- PKT Pkts[9]; /* data buffers for packets */
- PKT *Raux = Pkts+8; /* next packet in */
- PKT *RPak[4] = { Pkts+0,Pkts+1,Pkts+2,Pkts+3 };
- PKT *WPak[4] = { Pkts+4,Pkts+5,Pkts+6,Pkts+7 };
- PORT *DNetPort; /* Remote Command/Control in */
- PORT *IOSink; /* Return port for ALL IO */
- PORT *IPCPort; /* IPC software control port */
- CHAN Chan[MAXCHAN]; /* Channels */
- LIST TxList; /* For pending DNCMD_WRITE reqs. */
- LIST SvList; /* List of waiting servers */
- ubyte Rto_act;
- ubyte Wto_act;
- ubyte Cto_act;
- ubyte Cd; /* Carrier Detect Status */
- uword WChan; /* Read and Write channels */
- uword RChan;
- uword RPStart;
- uword WPStart;
- uword WPUsed;
- uword RState;
- short DDebug;
- short PDebug;
- ubyte Restart; /* Network restart mode */
- ubyte OnLine; /* Network online */
- ubyte Quit; /* Quit immediately */
- short AutoAnswer = 0; /* Security Enable */
- short DialOut = 1; /* Security Enable for DialOut */
- short AutoHangup = 1; /* On carrier lost (-a opt) */
- short Master8;
- short NetworkNum;
- ulong NumCon; /* # of connections currently active */
- /* in CHAN_ROPEN/LOPEN/OPEN/CLOSE */
- ulong WTimeoutVal;
- ulong RTimeoutVal;
- long Baud;
- long TOBaud;
- char *HostName = "";
-
- /*
- * Status Info
- */
-
- long BytesOut, PacketsOut, PacketsResent;
- long BytesIn , PacketsIn , PacketsNakd;
- long GarbageIn;
-
- #define ACK(win) (PKCMD_ACK|(win<<5))
- #define NAK(win) (PKCMD_NAK|(win<<5))
- #define CHECK(win) (PKCMD_CHECK|(win<<5))
- #define CHK(com) ((SYNC<<1)^(com))
-
-
- ubyte RestartPkt[3] = { SYNC, PKCMD_RESTART, CHK(PKCMD_RESTART) };
- ubyte AckPkt[8][3] = { SYNC, ACK(0), CHK(ACK(0)),
- SYNC, ACK(1), CHK(ACK(1)),
- SYNC, ACK(2), CHK(ACK(2)),
- SYNC, ACK(3), CHK(ACK(3)),
- SYNC, ACK(4), CHK(ACK(4)),
- SYNC, ACK(5), CHK(ACK(5)),
- SYNC, ACK(6), CHK(ACK(6)),
- SYNC, ACK(7), CHK(ACK(7))
- };
-
- ubyte NakPkt[8][3] = { SYNC, NAK(0), CHK(NAK(0)),
- SYNC, NAK(1), CHK(NAK(1)),
- SYNC, NAK(2), CHK(NAK(2)),
- SYNC, NAK(3), CHK(NAK(3)),
- SYNC, NAK(4), CHK(NAK(4)),
- SYNC, NAK(5), CHK(NAK(5)),
- SYNC, NAK(6), CHK(NAK(6)),
- SYNC, NAK(7), CHK(NAK(7))
- };
-
- ubyte CheckPkt[8][3]= { SYNC, CHECK(0), CHK(CHECK(0)),
- SYNC, CHECK(1), CHK(CHECK(1)),
- SYNC, CHECK(2), CHK(CHECK(2)),
- SYNC, CHECK(3), CHK(CHECK(3)),
- SYNC, CHECK(4), CHK(CHECK(4)),
- SYNC, CHECK(5), CHK(CHECK(5)),
- SYNC, CHECK(6), CHK(CHECK(6)),
- SYNC, CHECK(7), CHK(CHECK(7))
- };
-
-