This file contains information on the implementation of the direct play
and direct play lobby features. There's lots to do and I'm not exactly
implementing it overnight! Please lend a hand.

Most methods and APIs are but stubs at this point. Examine the code
to see what has been implemented. Use -debugmsg +dplay to get a 
reasonably thourough description of what's going on.

Associated DirectX user header files are include/dplay.h, include/dplobby.h.

Implementation of the DPLAY and DPLAYX dlls are both in the dlls/dplayx
directory. Here's a brief description of the function of each of the files in that
directory:

dplay.c: Implementation of all the direct play object interfaces.

dplobby.c: Implementation of all the direct play lobby interfaces.

dpclassfactory.c: Implementation of the COM class factory which can create either
                  direct play lobby or direct play lobby interfaces.

dpinit.h: Header file so that dpclassfactory.c can access dplay and dplobby query 
          functions. Shouldn't be included by anything else.

dplayx_global.h,
dplayx_global.c: Implementation of all things which are associated with dplay on
                 the computer - ie shared resources and such. Methods in this
                 compilation unit should not call anything out side this unit
                 excepting base windows services and an interface to start the
                 messaging thread.

name_server.h,
name_server.c: Implementation of all things which are associated with the name
               server functionality

dplayx_main.c: LibMain executed for loading and unloading the dll. This will make
               the call to dplayx_global.c to request initialization and destruction
               of any global data.

dplayx_queue.h: Linked list implementation for dplay/dplobby. Based off of the BSD
                version found in <sys/queue.h>

dplayx_messages.h,
dplayx_messages.c: Messaging interface required for both DirectPlay and 
                   DirectPlayLobby.

dplaysp.c,
dplaysp.h: COM interface between DPLAYX and the service provider dlls. dplaysp.h is
           something that should be included into any service provider. Basically 
           the COM interface is partially documented but is generally lacking in the
           finer points.

Presently the architectural relationship between this files is a little shakey, but
isn't so sufficiently bad that it needs fixing yet.

I think I can safely say that any application which requires direct play
or direct play lobby will not work at this point. Priority will be to get
examples from the sdk running. Once they're at least partially working, I can
get down to trying to get some of the games working.

However, now that address separation is a reality, all binary samples provided 
in the sdk can be used. I have had success spawning processes and one
directx7 example will allow creation of an app and allow another to join it.
Unfortunately, there isn't much for it to be able to do give the state of
inter directlobby or directplay messaging.

Messages which work:

For session enumeration: DPMSGCMD_ENUMSESSIONSREPLY & DPMSGCMD_ENUMSESSIONSREQUEST
                         have most fields understood, but not all. Everything _seems_
                         to work.

For playerid requesting: DPMSGCMD_REQUESTNEWPLAYERID & DPMSGCMD_NEWPLAYERIDREPLY
                         barely work. This needs to be completed for sessions to be
                         able to actually start.

A small issue will be the fact that DirectX 6.1(ie. DirectPlay4) introduces a layer of functionality
inside the DP objects which provide guaranteed protocol delivery. This is
even if the native protocol, IPX or modem for instance, doesn't guarantee it. I'm going to leave
this kind of implementation to as close to the end as possible. However, I
will implement an abstraction layer, where possible, for this functionality. 
It will do nothing to start, but will require only the implementation of the 
guaranteness to give final implementation.


TODO:
  - (done) Header files for DP4 and DPL3 
  - (done) Add stub functions for all DP4 and DPL3 interfaces
  - (done) Correct naming of the parameters for DP3 and DPL2
  - (done) Seperate out DP and DPL into multiple .c files
  - (done) Allow CoCreateInstance to create the new interfaces
  - (started)Implement mutual exclusion on object data for existing functions
  - (done) Create and move to correct dll directories (dplay and dplayx)
  - (done) Implement dplay in terms of dplayx
  - (done) Need a better internal implementation for the objects which scales and 
    preferably doesn't involve casting structures. Solution is a crude ctor/dtor
    which can actually trap some runtime errors.
  - (done) More generic initialization and destruction helper methods based off
    the chosen internal implementation. Solution is a crude ctor/dtor.
  - Use only windows routines where an equivalent is available
  - (done) Fix wine dplay.h and dplobby.h header files to allow apps to create the ansi versions
  - (started) Port some WineLib test programs using sdk programs (both C and C++ progs)  
  - (done) Implement a lib main for the dplayx dll (required for RunApplication, etc.)
  - (done)Figure out how to share the global memory correctly
  - Ensure that all dll stubs are present and the ordinals are correct
  - (started) Implementation of functionality
  - Addition of DirectX 7.0 functionality for direct play (try to catch that moving train)
  - bug fixes ;)
  - Implement some WineLib test programs using sdk programs as a skeleton
  - (done) Change all RegEnumKey calls to RegEnumKeyEx.
  - Change RegEnumKeyEx enumeration pattern to allow error handling and to
    share registry implementation (or at least simplify).
  - Add in appropriate RegCloseKey calls for all the opening we're doing...
  - Fix all the buffer sizes for registry calls. They're off by one - but in a safe direction.
  - (done) Find out how to call the service provider dlls - they don't have a published interface!
  - Fix race condition on interface destruction
  - Handles need to be correctly reference counted
  - Need to check if we need to deallocate any list objects when destroying 
    dplay interface
  - RunApplication process spawning needs to have correct syncronization.
  - Need to get inter lobby messages working.
  - Decypher dplay messages between applications and implement...
  - Need to implement lobby session spawning.

ENHANCEMENTS:
  - Improve footprint and realtime blocking by setting up a seperate data share
    between lobby application and client since there can be multiple apps per 
    client. Also get rid of offset dependency by making data offset independent 
    somehow.
  - Handle everything in UNICODE (as server does) and do conversions for ANSI 
    interfaces. Should cut down on dplayx code base and maintanability (marginally)
    and could be used to improve efficiency of dialog with the server (it wouldn't
    have to do ANSI<->UNICODE transformations).



Programs to make work:
  - lserver.exe (from sdk)
  - override.exe (from sdk)
  - dpchat.exe (from sdk)
  - duel.exe (from sdk)
  - dplaunch.exe (from sdk)

Next API to implement on a per SDK program basis:
  override.exe
  - (calls dpserial so basic problems with that remain)
  - after that ?

  dplaunch.exe
  - I think that everything is basically working. The launched app may not
    work on the other hand.

  lserver.exe
  - Missing messaging portion. Everything else works.
 
  bellhop.exe
  - Need to implement lobby server support.
  - ?

  dpslots.exe
  - Works as host except for message stuff
  - Missing correct handling of receipt of playerid

Other TODO:

- look at problem with parsing the resource file for dplaunch. wrc problem?
- I should be getting the dialog box to come up for dpchat when something is selected
Call OLE32.7: CoCreateInstance(010017f0,00000000,00000001,010017e0,010094b4) ret=01002f38 fs=0237
Call ADVAPI32.188: RegOpenKeyExA(80000002,5e08dd90 "Software\\Microsoft\\DirectPlay\\Compatibility",00000000,00020019,40e7f49c) ret=5e0b6e5a fs=0237

   
Peter Hunnisett  -  hunnise@nortelnetworks.com
