
These are slightly modified versions of the IPX network routines that I
used in Cylindrix.  If you see any variables lying around that seem to
have no use, chances are they are specific to Cylindrix.  I apologize for
not cleaning up the code, but I have been very busy and haven't had time
to do this.  I wanted to release this code so everyone could do IPX stuff
in DJGPP. (it's fun!)

The files that should be here are :

cwsdpmi.exe  | DPMI provider
cwsdpmi.doc  |

dosbuff.c    | Dos buffer routines for calling DOS interrupts that need
dosbuff.h    | pointers to buffers

jonipx.c     | IPX stuff
jonipx.h     |

test.c       | Simple example program

compile.bat  | Compiles everything into test.exe (my make is messed up..)



-------------------Function summary--------------------------


void Allocate_Dos_Buffers( void );

    Call this before anything else, it allocates memory for
    buffers that the IPX routines send to dos interrupts

**************************************

int Init_Jonipx( void );

    Call this before calling any other IPX related functions.
    This opens a socket and attaches a callback function for
    when packets are recieved.  If it is unable to initialize
    the ipx it will return false.

**************************************

int Packet_Ready( void );

    When packets are recieved they are put in an internal buffer.
    If there are any packets waiting in this buffer this function
    will return true.

**************************************

int Pop_Packet( game_packet_type *packet );

    If there is a packet waiting in the buffer it will put the packet
    in the packet structure sent to it.  If no packets are waiting it
    will return false.

**************************************

int Jon_Send_Packet( string_type string, int length, node_address_type dest_node );

    Fill up a string with your packet, pass the length of the packet,
    give the destination node you want this packet to go to.  To send
    this packet to everyone fill dest node with 
    { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }

**************************************

void Close_Jonipx( void );

    Close the socket.  Currently I do not free dos memory allocated by
    Allocate_Dos_Buffers().


-------------------------------------------------------------


Have fun!


John R. McCawley III
Cap'n Hardgeus
Hotwarez LLC

