1
0
mirror of https://github.com/solemnwarning/directplay-lite synced 2024-12-30 16:45:37 +01:00

70 Commits

Author SHA1 Message Date
Daniel Collins
f19678217f SendTo() support for DPNID_ALL_PLAYERS_GROUP, DPNSEND_NOLOOPBACK. 2018-09-24 21:43:25 +01:00
Daniel Collins
2635fd04cd Initial SetPeerInfo() and SetPeerInfo() implementations.
Doesn't copy between peers and only allows fetching local player info
at this time.
2018-09-24 21:40:34 +01:00
Daniel Collins
c28f880fee Initial prototype of a hook DLL (ddraw.dll) 2018-09-23 15:43:15 +01:00
Daniel Collins
45b4fd19bd Basic message sending. 2018-09-21 01:03:49 +01:00
Daniel Collins
25341f2488 Milestone: Connect a single peer! 2018-09-20 00:58:41 +01:00
Daniel Collins
da3cd1a55f Use HandleHandlingPool to run DirectPlay8Peer worker threads. 2018-09-15 23:24:54 +01:00
Daniel Collins
f06f219d61 Implement HandleHandlingPool class.
This will run all the main I/O threads in DirectPlay8Peer, only
the host enumeration will be outside of it at this time.
2018-09-15 21:38:01 +01:00
Daniel Collins
26c038a24d Build with Visual Studio toolchain rather than GCC.
I want C++17 features :(
2018-09-13 01:42:31 +01:00
Daniel Collins
d10a456883 Fix use of uninitialised memory, leaks. 2018-09-13 01:20:45 +01:00
Daniel Collins
c63945facd Initial prototype of network I/O and session enumeration.
The threading model used for processing messages here will need
redesigning; we can't allow the application to block the event loop
when processing a message in case it calls something which won't
return until a message is processed.

Final model will probably use a pool of workers which will handle I/O
one-at-a-time, blocking and allowing other threads to deal with the
I/O when in the application message callback.
2018-09-11 22:09:27 +01:00
Daniel Collins
286c86ea46 Implement serialising of GUIDs in packets. 2018-09-11 21:53:27 +01:00
Daniel Collins
971119edae Implement low-level packet (de)serialisation code.
The protocol is going to use TLV messages, containing zero or more
fields represented using the same TLV header. Functions for
(de)serialising DirectPlay message structures will be built on top of
these classes.
2018-09-02 13:02:20 +01:00
Daniel Collins
f829367d1b Create sockets for hosting. 2018-08-30 22:55:00 +01:00
Daniel Collins
9659e2e84b Ensure provider component is always first. 2018-08-29 00:29:08 +01:00
Daniel Collins
5550c78658 More DirectPlay8Address tests, "fix" GetUserData() behaviour 2018-08-28 23:20:29 +01:00
Daniel Collins
45a9f1b268 More DirectPlay8Address tests, fixed ANSI string components. 2018-08-28 22:34:56 +01:00
Daniel Collins
1564ddf309 Initial DirectPlay8Address unit tests and fixes. 2018-08-28 16:09:13 +01:00
Daniel Collins
b8364c5997 Partial DirectPlay8Address implementation. 2018-08-23 00:10:18 +01:00
Daniel Collins
1c41ec3b76 Implemented DirectPlay8Address skeleton 2018-08-21 23:11:41 +01:00
Daniel Collins
b2c025b530 Implemented initial skeleton of dpnet.dll and DirectPlay8Peer. 2018-08-21 22:59:27 +01:00