The MPDS library is a DataSharing protocol library that allows data to be shared synchronously at the game frame level via MP communications between parent and child devices.
The MPDS library uses any one communications port of the MP library. All other communications ports, as well as overall control of MP communications, can be freely managed on the application side.
The corresponding implementation on the client side is included in the WM library in the Nintendo DS development kit, NITRO-SDK. For details, see the Wireless Communications Library Overview included with the NITRO-SDK.
For more on the MP library, see the MP API Introduction.
The MP communications cycle among DS devices will not match the Wii V-Blank cycle because the Wii and the DS have different V-Blank cycles. So to perform DataSharing seamlessly, a dedicated thread that works on the MP communication cycle (the one that succeeds for the MPDSStep function) is needed in addition to the main loop for rendering that matches the Wii V-Blank cycle.
You can also perform DataSharing within the main loop without creating a thread by using the MPDSTryStep function, but DataSharing will fail frequently because the timing at which data is set does not match between the parent and the child.
There is a third way, as well. Using the callback function that can be configured in the MPDSConfig structure's mpdsCallback field, you can call the MPDSTryStep function within the shared data delivery notification callback. Take care to avoid excessive processing within the callback function, though.
2007/11/28 Initial version.
CONFIDENTIAL