NCDHasEnabledNetworkConfig function reference [PPC]
NETMemCpy and NETMemSet function references
rvlnetconf [PPC]
NWC24errgen functionality [PPC]
MPGetConnectedAIDs function reference
NETGetStartupErrorCode function reference
NWC24SetMsgLedPattern function stronger[PPC]
NWC24Editor tool and added a WAD file[PPC]
NWC24Check function[PPC]
MPWaitPseudoVBlank function. [PPC]
NCDHasEnabledNetworkConfig function. [PPC]
SHA-256 functions. [PPC]
ENC_ERR_NOT_LOADED error. [PPC]
NWC24CheckUserIdRegion function. [PPC]
nwc24errgen tool. [PPC]
NWC24Check function's behavior to reflect guideline changes. [PPC]
SOStartupEx function in retail products. [PPC]
ncdconfigtool. [PPC]
nwc24init. [PPC]
nping tool. [PPC]
NWC24SetMsgMBDelay function and changed its specifications [PPC]
mpdsmodel sample demo[PPC]
MPSendAsync and MPUpdateBeaconAsync functions[PPC]
NETCalcHMAC* functions[PPC]
NWC24CheckMsgBoxSpace function.[PPC]
NWC24GetDlVfName function.[PPC]
NWC24GetDlVfPathByTask function.[PPC]
NWC24SetMsgDesignatedTime function.[PPC]
Letter sample demo that sends messages that include letterform data.[PPC]
MPPortCallbackInfo_Connected structure[PPC]
mpdlntr2rvl demo[PPC]
sostartup demo.[PPC]
NWC24Check function.[PPC]
NWC24CheckDlTask function.[PPC]
NWC24DeleteDlTask function.[PPC]
NWC24SetSearchCondPublic function.[PPC]
NCDConfigTool.[PPC]
memcpy/memset functions called internally by the library.[PPC]
NWC24CheckUserId function reference.
NWC24GetMsgFromId function reference
NWC24Editor tool[PPC]
ChannelJump demo[PPC]
Letter demo[PPC]
makeChjp.exe[PPC]
regds.exe tool[PPC]
REXDEMO function.[PPC]
REXDEMO function.[PPC]
NHTTPSetProxyDefault function.[PPC]
NWC24Check.[PPC]
NWC24Check.[PPC]
NWC24SetIconNewSign function.[PPC]
NWC24SetMsgAttached function.[PPC]
NHTTPCleanupAsync function [PPC]
SOPoll at fixed intervals [Firmware]
MPSendAsync function callback [PPC]
SOPoll function to be blocked when using a wireless LAN[Firmware]
NCDGetWirelessMacAddress function to NET [PPC]
(08/12/19 + SDK3.2 patch 2/Firmware 55.18.25)
Added details to the following function references relating to NAND library return values.
VFCreateSystemFileVFDeleteSystemFileNCDHasEnabledNetworkConfig function reference [PPC]The error code used as an example in the NCDHasEnabledNetworkConfig function reference is different from the error code that should actually be displayed. This was corrected.
Also, the following network development document was also revised to reflect that correction.
$RevoEX/docs/TechnicalNotes/NetworkDevelopment.pdf
(08/12/19 + SDK3.2patch2/Firmware55.18.25)
NETMemCpy and NETMemSet function referencesAdded function references for the NETMemCpy and NETMemSet functions, which were added in RevoEX 2.1, because they did not exist.
Added the following group of functions to allow control of a child device's entry state during DS Download Play.
MPDLStartDownloadExMPDLResetEntryBitmapMPDLSetEntryFilterCallbackFixed a bug that caused an inconsistency in internal memory management when an extremely long URL was specified to create a request.
rvlnetconf [PPC]Added the rvlnetconf tool, which employs a subset of the features of nwc24init and ncdconfigtool in the command line, and a corresponding manual.
NWC24errgen functionality [PPC]Handled selection of the message type in the "Post a broken msg to the recv box" feature in the NWC24erren tool.
Fixed a bug where an overflow would occur if the following functions returned a size of 2 GB or greater.
VFGetFileSize(W)VFGetFileSizeByFdVFGetOffsetByFdVFGetDriveFreeSize(W)VFGetFileSizeU32(W)VFGetFileSizeU32ByFdVFGetOffsetU32ByFdVFGetDriveFreeSizeU64(W)When writing beyond the drive's available space and an error is generated, the drive's available space would not return to its original size even if that file was deleted. This bug was fixed.
The following functions were not thread-safe, so exclusive control processing was added.
VFCreateSystemFileRamVFGetFileSize(W)VFGetFileSizeByFdVFGetOffsetByFdVFGetLastError(08/08/05 + SDK3.2/Firmware55.15.24)
MPGetConnectedAIDs function referenceA function reference for MPGetConnectedAIDs, which gets an AID list for currently connected children, has been added.
NETGetStartupErrorCode function referenceThe fact that return values of the NETGetStartupErrorCode function are negative has been clarified.
The fact that the 5103X error is sometimes not issued when the AP is running, even temporarily, during application execution with the typical method of issuing network errors when calling the SOStartup function.
NWC24SetMsgLedPattern function stronger[PPC]The algorithm for checking values versus the pattern argument used inside the NWC24SetMsgLedPattern has been reinforced.
An error is now returned when a setting value has been specified at the same time as RevoEX 1.0.
NWC24Editor tool and added a WAD file[PPC]NWC24Editor has been rebuilt using the latest libraries.
In addition, the WAD file for NWC24Editor has been added to $RevoEX/RVL/bin/tools.
(08/07/08 + SDK3.2RC/Firmware55.15.23)
A function has been added for reading out user-data up to 24 bytes set for the ssid argument of the WM_StartConnect function from the Wii when a child device is connected.
The length is stored in the ssidUserDataLength field of the MPPortCallbackInfo_Connected structure, while the actual data contents are stored in the ssidUserData field.
Processing would occasionally stop due to an invalid internal state occurring during the shut-down process from the MP parent device. This problem has been corrected.
If execution was halted by the debugger during MP communications, a panic would frequently occur when execution was resumed. This problem has been corrected.
NWC24Check function[PPC]Although the network error history would be checked for the last four errors up to this release when NWC24_USE_DOWNLOADS was specified as an argument to the NWC24Check function, this has been limited to just one error.
This revision will decrease the time it takes the NWC24Check function to detect network recovery when execution of a download task fails due to a network problem and the network subsequently recovers.
(2008/06/11 + SDK 3.2 PR 2 / Firmware 243.8.3)
In the NWC24 scheduler function references, described the suspend counter's behavior.
In the references for functions included in the SO library, revised the wording of formerly vague notes related to the handling of return values. The functions' behavior has not changed.
Revised character codes that had been omitted from the "List of Characters that can be Input in the Address Book" in the NWC24 Function Reference Manual.
Revised the NWC24 demos that had been implementing functions in non-recommended ways.
Fixed a bug where notification of fatal errors was not being properly sent to the callback function configured with the MPSetIndicationConfig function.
MPWaitPseudoVBlank function. [PPC]Added the MPWaitPseudoVBlank function, which puts the current thread to sleep until a pseudo-VBlank occurs. The pseudo-VBlank is synchronized for all connected child devices.
Added a feature that uses MP_INDICATION_CB_TYPE_PSEUDO_VBLANK to notify of the timing of the pseudo-VBlank in the callback function set by the MPSetIndicationConfig function. The pseudo-VBlank is synchronized for connected child devices.
To enable this feature, MP_MODE_ENABLE_PSEUDO_VBLANK_INDICATION must be specified for MPConfig.mode.
If using MP communications when little data was being sent and the send frames were short, Wii would sometimes send data to the child DS at intervals too short for the DS to process the data. We have changed the MP sequence send interval from 1 ms to 2 ms.
This step should alleviate instances of the child device being suddenly cut off from MP Communications due to MP lifetime expiration.
Added the functions (see below) that can regulate the timing at which the group of players who have completed a download will begin to restart.
MPDLGetBootableBitmapMPDLGetBootStopperMPDLSetBootStopperAdded a feature that allows the Wii console to send arbitrary user-defined parameters of 32 bytes or less to programs on child devices; the programs can reference these parameters after restarting.
A child device's program can use the MB_GetMultiBootDownloadParameter function to refer to the information stored in the userParam field of the MPConfig structure.
Fixed a bug that caused a large number of debugging messages to be displayed while the MPFS library was being used.
NCDHasEnabledNetworkConfig function. [PPC]Added the NCDHasEnabledNetworkConfig function to allow the caller to determine if usable network settings are saved before the SOStartup function is called.
Normally, no problems arise with the existing method of calling the SOStartup function directly and then getting the errors. This should be used only if specific changes have to be made to the application processing sequence.
SHA-256 functions. [PPC]Added functions for supporting the new SHA-256 hash algorithm. For more details, see the function reference manual.
Some libraries that use the network now require the application to explicitly initialize the NHTTP library; for this reason, we changed the public package to include the NHTTPStartup and NHTTPCleanupAsync functions. The set of functions included in the public package will only allow initialization; arbitrary HTTP communication cannot be performed.
ENC_ERR_NOT_LOADED error. [PPC]If, in NWC24 library functions that entail character code conversion of Wii messages, an attempt was made to use an encoding with an unloaded conversion table in the ENC library, NWC24_ERR_FATAL would be returned. We revised these functions to return NWC24_ERR_NOT_SUPPORTED the same way as when an unsupported encoding is specified.
NWC24CheckUserIdRegion function. [PPC]Added the NWC24CheckUserRegion function to check if a user ID (Wii number) is valid and belongs to a Wii console of the same region as the local Wii console.
nwc24errgen tool. [PPC]Added the nwc24errgen tool to intentionally generate message box-related error states. For more details, see the function reference manual.
NWC24Check function's behavior to reflect guideline changes. [PPC]Revision of WiiConnect24 Programming Guidelines removed the NWC24 download feature from the Parental Controls restrictions. Thus, if NWC24_USE_DOWNLOADS is passed to the NWC24Check function as an argument, the function will not return an error even if Parental Controls are enabled. Because of this, we have also revised the content of related function references.
Added NWC24_AUTOENCODING_KR and NWC24_AUTOENCODING_CN to the definition of NWC24AutoEncodingType.
Fixed bugs in the way that several NWC24 functions for controlling message boxes handled errors generated within the library.
SOStartupEx function in retail products. [PPC]The length of time preceding a timeout can be set arbitrarily with the SOStartupEx function. However, because changing this value can alter network device connectivity, use of the SOStartupEx function with retail products is now prohibited.
ncdconfigtool. [PPC]Revised this tool to display a confirmation when HOME or START is pressed. Changed the UseProxy flag to inherit the value obtained by OR'ing the Enable value of all individual Proxy settings. This flag can no longer be configured separately.
Added the Copy to SSL and Copy to HTTP menus.
nwc24init. [PPC]Revised this to display a confirmation when HOME or START is pressed.
nping tool. [PPC]Added the ping.elf tool, which pings the host name or IP address specified as an argument to ndrun.
Added a character filter file that extracts the characters usable in Wii Friend names.
The character filter file is a definition file used by fontcvtr (provided with NintendoWare for Revolution) to specify the characters included in a font.
(2007/12/10 + SDK 3.1 patch 2/Firmware 35.4.16)
NWC24SetMsgMBDelay function and changed its specifications [PPC]Changed the NWC24SetMsgMBDelay function so that it can only send to a local Wii Message Board, without using the network.
Also, fixed a problem with illegal LED illumination timing when this was used together with the NWC24SetMsgLedPattern function.
(2007/12/03 + SDK 3.1 patch 2/Firmware 35.4.16)
Added references to the MPDS library.
Added a list of character codes to the NWC24 function reference that can be used to input nicknames in the console's friend roster from the the Wii Message Board address book.
Added a simple screen display to visually indicate when game information is being shared to the $RevoEX/build/demos/mpds/mpdsmodel sample demo.
Added a const modifier to the context argument for the MPDSSetupPortConfig function, the dataSet argument for the MPDSGetData function and to the return values.
Changed the value indicated by the MP_RESULT_* constant. The symbol has not been changed.
This change was added in 2.1 PR but it was left out of the changelog.
Changed the MPSendAsync and MPUpdateBeaconAsync functions so that they will no longer be compatible and so that void* userData can be taken as a direct argument.
As a result, the MPSetUserData and MPGetUserData functions have been eliminated.
If your application uses userData, make the following changes.
1. Change the type of the MPSendAsync and MPUpdateBeaconAsync callback functions to void (*callback)(int result, MPCallbackInfo* info). 2-a. If user-data is not passed to the callback
Change the last argument of the MPSendAsync and MPUpdateBeaconAsync functions to NULL.
2-b. If user-data is passed to the callback
Pass a pointer directly to the user-data in the last argument of the MPSendAsync and MPUpdateBeaconAsync functions.
Replace any sections calling MPGetUserData with links from info to userData.
This change was added in 2.1 PR but it was left out of the changelog.
If the NWC24 auto-scheduler was running during MP communications, communication errors was sometimes logged internally because you were unable to connect to the Internet using the wireless interface.
To prevent this, changes were made such that the NWC24SuspendScheduler function is called within the MPStartup function.
It is acceptable to call the NWC24SuspendScheduler function from the application before calling the MPStartup function, because the NWC24SuspendScheduler function can be called within a nested structure.
Changes were made to the NETCalcHMACMD5 and NETCalcHMACSHA1 functions because there were pointers without const, even though they were only referenced internally.
Also changed the type of the argument indicating length from s32 to u32.
Added the NWC24CheckMsgBoxSpace function to determine whether there was enough room in the message box in advance when creating multiple messages.
Changed the name of the NWC24GetDlVfName function to NWC24GetDlVfPathByTask.
This change was added in 2.1 PR but it was left out of the changelog.
Added the NWC24GetDlVfPathByTask function to get the VF archive file path to store files for the specified download task.
This change was added in 2.1 PR but it was left out of the changelog.
Set the upper limit for the value provided to the elapsedTime argument in the NWC24SetMsgDesignatedTime function to 14,400 minutes.
Made changes to specify GX_CLAMP when creating a TPL file to avoid texture wraps that would occur when the dimensions of the bottom right and left of the letterform data's footer was the power of two.
Also added a reference to the need to specify GX_CLAMP when creating a TPL file.
(2007/10/26 + SDK 3.1 patch 2/Firmware 35.4.16)
The following revisions were made to the Function Reference Manual.
Changed the fields of the MPPortCallbackInfo_Connected structure.
Added the ssidUserData field, which reads the value set in the user data region of the SSID when the child is connected.
This new feature cannot be used with the current firmware.
The feature will become available when the firmware is next updated.
The size of memory that must be prepared by the allocator and passed to MPStartup has been increased to 65,000 bytes, compared to the previous 32,500 bytes.
Officially added sequential communications functionality inside the MP communications library for data retransmission and to eliminate data duplication.
When using sequential communications, we recommend using eight children or less.
By setting MPConfig.beaconPeriod to MP_BEACON_PERIOD_AUTO, the beacon period can be aptly set even though it varies every time.
To shorten waiting times when the DS never seems able to find a Wii, MP_BEACON_PERIOD_AUTO should be specified for the beacon period under normal circumstances.
Fixed a bug that caused a newly connected Nintendo DS system to freeze on rare occasions after the start of downloading.
This symptom can occur in some of the early Nintendo DS systems.
With the addition of the MPDS library, changed the mpdlntr2rvl demo to use data sharing.
Also fixed a bug and cleaned up the code.
Revision of the corresponding child program will show up in or after NitroSDK 4.2 RC.
Added bannerCharacter and bannerPalette as members of the MPDLCOnfig structure, expanding the MPDL library and enabling icon images to be replaced at will.
If NULL is specified as the pointer for these new members, the banner icon images stored in the programs are used for display, as has been the case until now.
Added the MPDS library, which can be used to manipulate data sharing features.
Data sharing is a high-level protocol established by MP communications that uses MP communications to synchronize data shared between parent and child in every game frame.
Sequential communications are used internally to exploit the feature; you therefore need to remember that sequential communications are suitable only for up to eight connected children.
As of RevoEX 2.1PR a reference for the features has not yet been prepared.
This demo displays network error codes on the screen for the user when the SOStartup function is called in the background and an error occurs.
When a request specified was Connection:Keep-Alive, if there was no explicit answer statement from the server it was assumed that the response was a denial and the socket would then be destroyed. The internal behavior of the library has been changed to a typical HTTP client implementation so if it is HTTP1.0 the socket is destroyed but if it is HTTP1.1 the socket is reused.
The NWC24Check function now returns NWC24_ERR_PROTECTED as the return value when parental controls have been set to restrict network features.
In conjunction with this, the error-handling sequence and other explanations in the function reference manual were revised.
Fixed a bug that caused NWC24_OK to be returned when a zero-cleared task was passed to the argument.
The function was changed so that now, when a non-existent task is deleted, an error is returned instead of stopping the process with an ASSERT.
Useful functions have been added to handle multiple download tasks.
(It was also possible to handle multiple tasks with the previous API set.))
NWC24GetDlTaskMineExNWC24GetDlTaskByAppIdExNWC24SetDlUserParameterNWC24GetDlUserParameterNWC24SetDlKeysNWC24GetDlVfPathIn the old specification for message searches, public messages were included in the search targets by default. That has been changed so now they are not included by default.
If you want to include public messages among the search targets, call the newly added NWC24SetSearchCondPublic function.
Fixed a bug in NCDConfigTool that caused the host name to be deleted whenever the proxy username or password was configured.
Substituted high-speed versions of the processes for the memcpy function and the memset function, which are called internally by the SO library and a number of other RevoEX libraries.
(2007/09/05 + SDK 3.1 / Firmware 33.4.16)
Added a description to the NWC24CheckUserId function reference for when the NWC24_ERR_PROTECTED return value is returned.
Added a description to the NWC24GetMsgFromId function reference for when the NWC24_ERR_NOT_SUPPORTED return value is returned.
After a keep-alive request had completed and then the server-side timeout period had elapsed, issuing another request to the same domain would result in an attempt to use a disconnected socket again, causing communications to continually fail. This problem has been fixed.
Added the NWC24Editor tool to $RevoEX/RVL/bin/tools/. This tool can perform a number of functions: It can send and receive WiiConnect24 messages, edit the Friend Roster, and reference download tasks.
Modified the names of a number of internal functions included in the VF library that conflicted with other libraries in RevoSDK.
(2007/08/08 + SDK 3.1 RC2/ Firmware 33.4.15)
The following revisions were made to the Function Reference Manual.
Added a document for developing applications that use WiiConnect24 in $RevoEX/docs/TechnicalNotes/WiiConnect24_ProgramingManual.pdf.
The following changes were made to the network development environment documentation.
Added the Channel Jump demo in $RevoEX/build/demos/nwc24demo as a sample that sends a message with an attached Channel Jump to itself.
The scene to be displayed when the sample is started is changed using a tag attached to a message that indicates the scene shown when the message was created.
Added the Letter demo in $RevoEX/build/demos/nwc24demo as a sample that sends a message with attached simple letterform template data to itself.
The letterform template image data can only be checked on the Wii Message Board.
Added a tool that creates the setting file (chjump.bin) for Channel Jumping to $RevoEX/X86/bin.
A bug was fixed that caused the execution of the regds.exe tool to never complete if a relatively large SRL file was specified to the tool.
(2007/07/23 + SDK 3.1 RC/ Firmware 33.4.14
There was a problem with the way memory was secured by the REXDEMO function used in the demos. This has been corrected.
There was a problem with the image-reception method settings of the REXDEMO function used in the demos. This has been corrected.
Adjusted the MP communications timing so it is closer to the actual timing used by pairs of DS consoles.
This increased the tolerance for poor radio conditions.
If the NHTTPSetProxyDefault function was called when there was no proxy setting, a warning message would display to debug output. That message no longer displays.
The feature to resume SSL sessions can now be utilized. To use this feature, specify SSL_VERIFY_OPTION_SESSION_CACHE as the verify option for SSL.
If the server also supports SSL session resumption, the SSL connection will be faster on the second and subsequent times.
Improved the error-determination process of the NWC24Check function, making changes that shorten the time it takes to detect network connection problems in some cases.
Added the flag NWC24_USE_SETTINGS to the NWC24Check function. This is a use-specific flag for checking only the console settings.
The provisional support for the NWC24SetIconNewSign function (as added in Note 15-16) has now been made official.
The size restriction on Letterform Templates pasted to the Wii Message Board has been changed to 120 KB.
In line with this change, the size restriction in the NWC24SetMsgAttached function for attached binary that is received when type is NWC24_APP_WII_MSGBOARD has also been changed to 120 KB.
The provisional support for the NWC24SetMsgDesignatedTime function (as added in Note 15-17) has now been made official.
When the NWC24SetMsgSubject function received certain data, a buffer overflow would arise during internal processing. That bug has been fixed.
The internal state of the VF library would become abnormal if the library's mount and unmount functions were repeatedly executed at an unusually high incidence. The problem has been fixed.
When the VFOpenFile function attempted but failed to open a file in a write-protected device, this would not be reflected in the error content of the VFGetLastError function. That problem has been fixed.
(2007/06/28 + SDK 3.0 patch 4 / Firmware 31.4.13)
Made the following changes to improve DHCP connectivity:
secs field of the DHCP-DISCOVER and DHCP-REQUEST messages.SOStartup is detected when requested IP option is attached to the DHCP DISCOVER message, or when DHCP starts from the INIT-REBOOT state.DHCP Option.Trimmed several seconds off the time it takes for DHCP when SOStartup function has executed.
This change was added in Firmware 31.4.7 but it was left out of the changelog.
During a TCP asynchronous connection, SO_POLLWRNORM was flagged when the SOPoll function was called, but now it will not be flagged until the actual connection has been established.
With this change, you can now use the SOPoll function to determine if an asynchronous connection has been established.
This change was added in Firmware 31.4.12 but it was left out from the changelog.
The internal state of the VF library would become abnormal if the library's mount and unmount functions were repeatedly executed at an unusually high incidence. The problem has been fixed.
(2007/06/22 + SDK 3.0 patch 3 / Firmware 31.4.12)
Discovered and corrected some irrelevancies in the internal argument check process of the NWC24SetMsgText function.
Also changed the specification so it is no longer assumed that the string given to the text argument terminates with 0.
Up until now, ncdconfigtool only supported the entry of a Pass Phrase of 8 to 63 ACSII characters as the WPA's PSK key. Now it also supports a 64-digit hexadecimal entry.
(2007/06/08 + SDK 3.0 patch 2 / Firmware 31.4.11)
In the NHTTP function reference, when return value is 0 or -1, edited the failure cause when -1 is returned.
In the NHTTP library, when the connection handle was released the message queue handle was not released, so repeated use would reduce system resources. That problem has been fixed.
Changed the DHCP timeout values. They used to be 1,2,3,4,5,6 for a total of 6 times and 21 seconds. They are now 2,2,2,3,4,5,5,5 for a total of 8 times and 28 seconds.
Also changed the reference to reflect this change.
Improved connectivity with access points.
When communications involve multiple DS children and the MPFS library receives connection notifications and requests simultaneously from a number of children, the library falls into an endless loop. That problem has been fixed.
NHTTPCleanupAsync function [PPC]A warning message now displays if the NHTTPCleanupAsync function is called before the connection handle has been released.
Reduced the frequency at which SO functions are called inside the NHTTP library, which improved the performance of the process for receiving communications packages.
When the Wii does not have valid network settings, the call to the NWC24Check function now immediately detects the error. Before, it took some time for the error to be detected, but that problem has been fixed.
When the NWC24Check function was called with NWC24_USE_DOWNLOADS as the argument, errors that should have been ignored were instead detected. This problem has been fixed.
Changed the specification so nothing is done when functions like NWC24EnableDlLaxParameterChecking set values outside of the range for parameters.
When the NWC24SetMsgSubjectAndTextPublic function was used and some character encoding conversion was done, there would be an NWC24_ERR_OVERFLOW error even when there was sufficient buffer space. That problem has been fixed.
The NWC24 download features now include a feature to decrypt content that is encrypted.
Opt-Out-related flags have been added to download tasks.
Also, to access these flags, added the NWC24SetDlOptOutFlags function and the NWC24GetDlOptOutFlags function.
Prepared data structure definitions and functions that access the structures for the purpose of Channel Jumping, which is a means of starting a channel application directly from a message on the Wii Message Board. The following functions are now available:
NWC24InitCHJumpObj NWC24CheckCHJumpObj NWC24SetCHJumpTitleId NWC24SetCHJumpOptions NWC24SetCHJumpBlockData NWC24GetCHJumpTotalSize NWC24GetCHJumpTitleId NWC24GetCHJumpOptions NWC24GetCHJumpBlockSize NWC24GetCHJumpBlockData NWC24_APP_WII_CHJUMP and NWC24_AUD_WII_SOUND that had been added in Note 15-14.
Sometimes an accurate function list could not be obtained when scanning with ncdconfigtool. The problem has been fixed.
(2007/05/14 + SDK 3.0 / Firmware 31.4.7)
Necessary corrections were made to descriptions and comments in the NWC24 library's function reference.
Made overall corrections to the VF library's function reference, fixing inconsistencies in terminology and clearing up vague descriptions.
Also added a reference for the VFGetApiErrorString function, which had been lacking up to now.
Added an explanation in the NWC24 library's function reference about the letterform template used when posting messages to the Wii Message Board.
When the firmware acts autonomously to connect to the network, sometimes it uses WPA to connect to an access point. That process has been improved.
SOPoll at fixed intervals [Firmware]When connected to a network using a wireless LAN, there was a bug that caused SOPoll to be blocked for less than 600ms every 120 seconds. The problem has been fixed.
MPSendAsync function callback [PPC]When the MPSendAsync function was called in the callback to the MPSendAsync function, multiple recursive calls were issued depending on the conditions. This has been corrected.
Added a mechanism to reliably check the ROM information of DS programs distributed by the MPDL library.
Note that with this mechanism in place, you now need a process for the application to create registration information ahead of time.
For details, read the following document:$RevoEX/docs/TechnicalNotes/DSProgramForDownload.jp.pdf
Made revision so the Wii numbers of retail-version Wii consoles cannot be registered to the Friend Rosters of development-use Wii consoles.
This measure was taken to reduce the risk of accidental release into the marketplace of data from WiiConnect24 applications that are still under development.
The following bugs in the NHTTP library have been fixed:
label and value arguments with a specified size of 0 were given to the following arguments, the communications process would fail.When the Wii does not have valid network settings, the call to the NWC24Check function now immediately detects the error. Before, it took a long time before the error could be detected, but that problem has been fixed.
When NWC24CommitMsg was called, NWC24_ERR_FULL would be returned even when there is available space enough for one message in the Outbox or the Inbox. This has been corrected.
Added the NWC24GetFriendInfoStatus function to check the status of a specified item in the Wii's friend roster.
However, the function reference does not yet support this.
The NWC24GetMyUserId function can now be called even when the NWC24 library is not open.
The following new definition values have been added to NWC24MIMEType:
NWC24_APP_WII_CHJUMPNWC24_AUD_WII_SOUNDWhen the NWC24ReadMsgAttached function executed, 1 byte more was expanded than the size of the attached binary obtainable by NWC24GetMsgAttachedSize. This problem has been corrected.
Added the NWC24SetIconNewSign function to indicate new arrivals with an icon in the Channel menu.
Note that this is a provisional version and not an official version of the function.
Added the NWC24SetMsgDesignatedTime function to delay message sending by a specified duration.
Note that this is a provisional version and not an official version of the function.
Added the NWC24SwapFriendInfos function to swap items in the Wii's Friend Roster.
Corrections were made so the download features in the NWC24 library will operate correctly when the NWC24 specification is expanded in the future.
Depending on the memory state, sometimes the process would stop when using the functions NWC24SetMsgSubjectPublic, NWC24SetMsgTextPublic and NWC24SetMsgSubjectAndTextPublic. That problem has been fixed.
Added the following states to those for which 6-digit error codes can be obtained by the NWC24GetErrorCode function:
NWC24OpenLib function returns an error that can be retried (NWC24_ERR_BUSY, NWC24_ERR_INPROGRESS, NWC24_ERR_MUTEX)NWC24CommitMsg function returns file-related errors or Outbox file errors.Changed the default setting of the NWC24EnableLedNotification function to TRUE, thereby permitting WiiConnect24 messages to trigger slot illumination. Also, added the restriction that the NWC24SetMsgLedPattern function can only specify slot illumination for messages sent to the Wii Message Board.
Eliminated the function group for SD Card slot mounting features that had been released on a test basis.
For reasons of compatibility the conventional functions still exist, but henceforth these features cannot be used for new purposes.
Added the VFSetTimeStampCallback function for specifying timestamps for files and directories.
By default, the VF library gets the timestamp by using the value returned by the OSGetTime function. However, by using VFSetTimeStampCallback to set your own callback you can temporarily change the timestamp.
In the MPFS sample demo, when multiple children are connected the demo will generate an error and stop when you return to the initial screen from the MPFS server status screen.
(2007/03/09 + SDK 2.4 patch 3 / Firmware 21.2.2)
There was an omission in the description of the return values in the NWC24GetMyUserId Function Reference page. This problem has been fixed.
(2007/03/02 + SDK 2.4 patch 3 / Firmware 21.2.2)
There were mistakes in the descriptions of the return values in the following Function Reference pages. These problems have been fixed.
Beginning with SDK Version 2.4 patch3, the major version number of default firmware has been changed to 21. RevoEX also supports this change. Corrections must be made to ddf files and other locations where the firmware version is specified.
There was a problem with AssociationID management that caused the AssociationID not to be distributed correctly when multiple MP children were disconnected and the connection was repeated. This bug has been fixed.
When using MP communications with more than 13 DS children in the connected state, there was a bug that prevented key response frames sent from the 13th and later DS units from being processed normally. This has been corrected.
SOPoll function to be blocked when using a wireless LAN[Firmware]If a Wii/NDEV was configured to connect to a network using the wireless LAN, there was a bug causing the SOPoll function to be blocked temporarily every two minutes after the SOStartup function is executed. This bug was fixed.
Connectivity was improved between Wii and some routers.
When beacon data distributed during MP communications was updated, there were cases in which the data was unintentionally sent while it was in the middle of being updated, but this bug has been fixed.
Because the short preamble feature was not supported, there was a problem that prevented connection to access points for some operation modes for some wireless LAN access points. The short preamble feature was supported in order to make access possible to access points in these operation modes.
There was a bug in which processing did not complete when trying to mount a second drive, but this has been fixed.
The known issue that was in Note 12-14 was corrected in Revolution SDK 2.4 patch3.
(2007/02/21 + SDK 2.4 patch 2 / Firmware 17.2.0)
There were several broken links within the overall Function Reference, so they were fixed.
Added documentation regarding the development environment for developing network-enabled applications in $RevoEX/docs/TechnicalNotes/NetworkDevelopment.jp.pdf.
When representing player status as a bit set, the data format was changed from int to u32. The following function prototypes have been changed:
MPDLGetEntryBitmap functionMPDLGetBootedBitmap functionMPDLStartDownload functionThe MPFS library, providing a ROM file system for Nintendo DS programs via wireless access, was released.
This library was the "WFS" module in the Nintendo DS development environment.
NCDGetWirelessMacAddress function to NET [PPC]The NCDGetWirelessMacAddress function was removed, and the NETGetWirelessMacAddress function, incorporating the same features, was added.
Following that change, the ncd macaddr sample demo was deleted, and the net macaddr sample demo, incorporating the same features, was added.
This change was added in RevoEX-1.0 RC9 but it was left out of the changelog.
The NHTTP library has been removed from public availability.
The nhttp sample demo was also been undisclosed.
In the $RevoEX/build/demos/nwc24demo/src/MsgViewer sample demo, an incorrect value was being set for the third argument when the NWC24GetMsgIdList function was called. This bug has been fixed.
NWC24_ERR_OLD_SYSTEM was added as a new value for NWC24Err. This error is returned mainly when a system update is necessary in order to use a given feature of WiiConnect24.
This change was added in RevoEX-1.0 RC9 but it was left out of the changelog.
In part of the MUA, there was a problem in which garbled characters would occur if a different character encoding was specified for the subject and the message body. As a result, the NWC24SetMsgSubjectAndTextPublic function was added.
Wrapping is now performed when long subjects are specified in the NWC24SetMsgSubjectPublic function.
When the size of the buffer given to sending and receiving functions is 0, it was being regarded as an illegal argument, and SO_EINVAL was being returned immediately. The internal operations were changed so that such buffer sizes will be regarded as valid arguments and the actual send/receive processing will be attempted.
The SSL library has been removed from public availability.
There was a bug causing all messages created with this tool to be configured as messages with illegal formats, but this has been corrected.
In addition, a description about DWC ID was added to the the description of operation in RevoEX/docs/NWC24MessageBoxEditor.jp.txt.
In environments prior to Revolution SDK 2.4 patch2, there were times in which the subject was being cut off for long subjects that were specified using the NWC24SetMsgSubjectAndTextPublic and NWC24SetMsgSubjectPublic functions and converted to ISO-2022-JP. We plan to fix this bug the next time RevolutionSDK is updated.
(2007/02/01 + SDK 2.4 patch 2 / Firmware 17.2.0)
The following revisions were made to the Function Reference Manual.
NETGetStartupErrorCode function of the NET library.The ordering of port receive callbacks and send callbacks occurring in single MP sequences were different than that of the WM library for DS. This was changed so that send callbacks are called after port receive callbacks.
It became possible to perform sequential communication using port numbers 12 through 15. However, this has not been sufficiently tested, so it may not operate normally. In particular, we are aware that data leaks can occur when more than eight child devices are in use. This functionality can be used for experimental purposes. At present, do not use sequential communications in any product.
In addition, this functionality may be abolished in future, depending on verification results.
When the MPDLStartup function was called, abnormal operation sometimes occurred in the library depending on an indefinite initial value within the specified memory. This problem has been corrected.
When the user's memory allocator returns NULL inside the call to NHTTPGetHeaderField, there was a bug in which processing was not halted and the NULL pointer was accessed; this problem has been corrected.
There was a bug that caused the NHTTPGetUserParam function to always return 0 regardless of the value specified in the NHTTPCreateConnection function, but this problem has been fixed.
When reconnecting to the same host with keep-alive HTTP requests, there was a bug that caused the previous socket handle to be used even if only the IP addresses were the same and the port numbers were different. This problem has been corrected.
There was a problem with a part of the method for checking the size of a message when the NWC24CommitMsg function was executed, but this has been corrected.
Added the following functions to the NWC24 library:
NWC24GetMsgTextPtrNWC24GetMsgAttachedPtrNWC24GetMsgSizeIn the NWC24 library of RevoEX1.0-FC8, there was a bug that caused the NWC24ReadMsgToID function to return NWC24_ERR_FORMAT even though the recipient's Wii number was specified correctly. This has been corrected.
The outgoing encoding that is performed within the NWC24SetMsgSubjectPublic and NWC24SetMsgTextPublic functions is automatically detected. There was a bug where the last character of the specified string was not used, but this has been corrected.
When trying to delete a message addressed to the Wii Menu with the NWC24DeleteMsg function, there was a bug preventing it from being deleted even from the application that created the message. This has been corrected.
There was a problem preventing NWC24 Easy Setup (SC > NWC24) from being selected; this has been corrected. In addition, when NWC24 Easy Setup is executed, NetContentRestrictions was also changed to OFF to match ParentalControl.
When memory was mounted as a drive with the VFMountDriveRam function, there was a bug that caused valid archive data existing within memory always to be ignored and initialized everything. This problem has been corrected.
(2006/12/05 + SDK 2.4 / Firmware 17.2.0)
SDK 2.4 is supported by generating all libraries in a Revolution SDK 2.4 build environment.
Beginning with SDK Version 2.4, the major version number of default firmware has been changed to 17. RevoEX also supports this change. Corrections must be made to ddf files and other locations where the firmware version is specified.
With the change to firmware version 17.2.0, WiiConnect24 shutdown processing has been revised. The time required to shutdown WiiConnect24 while communications are underway has been shortened, and shutdown processing for the file system and other resources is now performed more accurately.
The NWC24EnableLedNotification() function has been added to allow the use of lights when a message containing an embedded LED light command is received while running an application.
Illegal management of the internal state sometimes occurred when the MPDL library was shut down, and then started again.
This problem has been corrected.
A description of NHTTP_ERROR_BUSY has been added to the description of NHTTPError in the function reference. Code showing how to use this error to detect whether asynchronous processing has completed has also been added to the sample.
The port receive callback function has been added to the manual.
(06/11/22 + SDK2.3patch9/Firmware14.1.1)
NWC24SetDlInterval() now attempts to reschedule download tasks only when a value other than used previously has been set.
NWC24ExecDownloadTask() error codes can now be obtained using NWC24GetErrorCode().
The mail check interval used with WiiConnect24 is once every ten minutes, but this caused a problem with lowered debugging efficiency during debugging. To resolve this, a feature for forcibly sending and receiving mail has been added to the nwc24init tool.
Processing has been added to the MsgBoxEditor tool for handling behavior when the POWER or RESET Button is pressed.
The following changes have been made to the NCDConfigTool:
WEP40 is assumed when a five-character WEP key is entered in WEP104 mode.The mpdlsimple sample has been changed so that downloads can be started either automatically or manually.
The manual now clearly states that the memory allocator passed to the MPStartup function must allocate memory that starts at a 32-byte boundary.
(20061116 + SDK 2.3 patch 9 / Firmware 14.1.1)
There was a hang-up problem when sending a close request to a socket during data communications.
This problem has been fixed. This could only be corrected by replacing the firmware.
Although this bug occurred in most cases when canceling a socket in standby status during block mode communications, it could also theoretically occur even during non-block mode, even though the probability of such occurrence was very low.
Depending on the communication settings, it was sometimes hard for a new NDS child to connect to a Wii parent when the Wii parent was already communicating with another NDS child.
This has been improved by changing communication parameters.
Due to a problem with the thread-exclusive processing of the function used to get network settings, calls to all NCD functions from another thread were blocked when calling the following functions when the profile was not automatically selected:
This problem has been corrected.
The NWC24RequestShutdown function has been added for safely shutting down the WiiConnect24 system even when running a WiiConnect24 download task.
This function is used when shutting down NWC24 features during power cycle operations of an application that has issued a new download request while WiiConnect24 is enabled.
In the release version of the VF library, the function for mounting SD drives always failed.
This problem has been fixed.
This problem might occur not only during system menu startup, but also during application startup. The changes referred to in Note 07-01 have also been made to counteract possible problems during application startup.
(2006/11/15 + SDK 2.4 / Firmware 14.1.0)
Fixed a problem that made the console Power button unresponsive when it was pressed repeatedly while the system menu was starting.
This revision is compiled in RevoEX-1.0FC4plus1.
Relaxed the restrictions on settings such as validation time for WiiConnect24 download tasks.
This revision is compiled in RevoEX-1.0FC4plus1.
Re-initializing the library did not work correctly, even if the MPDLStartup function was called again after the MPDLCleanup function.
This problem has been corrected.
Changed the MPStartup function so that there is only place where the memory allocator passed to MPStartup is called. The memory allocated there is released when MPCleanup is run.
When there was a failure in calling the MPStartup function, the MP library was sometimes corrupted.
This problem has been fixed.
There is a restriction that the allocator passed to MPStartup must allocate memory on MEM2. This is verified at runtime. If there is an error, MPStartup returns MP_RESULT_NOT_ENOUGH_MEMORY and fails.
Memory not allocated by the allocator, for example the MPConfig structure passed to MPStartup or any memory passed to MP functions, including MPSend and MPRecv, can be in MEM1.
The connection status managed by the MP library was sometimes corrupted when there was a break by the debugger during MP communications or when an extremely heavy process was run on a high priority thread on the PPC side.
The frequency with which this occurred has been reduced. Even when it does occur, if the child device disconnects after detecting an abnormal status, revisions are made so that the parent device can restore the internal status.
Because some wireless access points automatically disconnect when there is no communication status for a specified period, some applications detected unintentional disconnection.
Therefore, a feature has been added to send a keep-alive dummy frame to the wireless access point when no communication is exchanged for 70 seconds.
This change is a solution to the known problems listed in Note 05-12 and Note 06-03.
Added a feature to ncdconfigtool to export and import configuration contents to an SD card.
Corrected errors, unified formatting, and added appropriate supplementary material to the function reference manuals for the NHTTP/VF library.
(2006/11/12 + SDK 2.3 patch 7 / Firmware 14.0.9)
Corrected behavior when no response message was sent for a friend registration message sent from the Wii of a friend that had already been registered.
Until now, it was possible to register a clearly illegal e-mail address as a Public friend in the friend list, but a restriction has been added that allows only valid addresses to be registered.
An error value, such as NWC24_ERR_FORMAT, NWC24_ERR_STRING_END, or NWC24_ERR_PROTECTED, is returned when an invalid address is passed to NWC24WriteFriendInfo.
(2006/11/11 + SDK 2.3 patch 6 / Firmware 14.0.8)
Added the VFUnmountDriveForce function to forcibly unmount a drive, even if there is a file open on that drive.
Communication could not be restored to a possible state when the system detected that the internal status management was deficient when the network interface disconnected.
This problem has been corrected.
Responsiveness has been somewhat improved for the internal thread that receives the cancellation when a cancellation is requested immediately after a POST request is issued.
A resource leak sometimes occurred when a socket did not shut down correctly internally when a SSL communication through a proxy connection was canceled before the handshake could be established
This problem has been corrected.
An exception sometimes occurred when trying to access an SD card if an SD card with an abnormal format was repeatedly inserted and removed.
This problem has been corrected.
A .ddf file is automatically generated when demo software using the RevoEX make system is built. The firmware version specified by this .ddf file was changed to 14.x.x. This change does not impact special software that does not reference the .ddf file, such as channel applications.
When changing the name of a file or moving a directory with a 8.3 formatted name containing lowercase characters, an undefined operation occasionally occurred due to the internal FAT status.
This problem has been corrected.
Previously, the disconnect notification was returned after finishing the disconnect process for the NDS child when an active disconnect was performed from the Wii parent. This has been changed so that the disconnect notification is returned when the disconnect process for the child device begins. This is because there might be a bug in the process to send notification when waiting until the disconnect process finished.
When an e-mail address was registered to the friend list, filtering when a message was received was case-sensitive but filtering is now case-insensitive.
Even when a non-fatal problem occurred while calling NWC24Check(), it was determined to be fatal and NWC24_ERR_FATAL was returned.
Determination of FATAL errors has been revised, and NWC24_ERR_FATAL is not returned when a non-fatal error, such as a network error, occurs.
Fixed the case in which no response message was sent for a friend registration message sent from another Wii.
In addition, to improve the stability of sending and receiving these friend registration messages, a process to resend messages was added. The retry process is performed a total of four times after 1 hour, 4 hours, 24 hours, and 72 hours for normal mail servers that perform mail checks every 10 minutes.
This interval is proportional to the mail check interval of the server. For example, when using a debug mail server with a check interval of 1 minute, the retry process occurs at 6 minutes, 24 minutes, 144 minutes, and 423 minutes.
(2006/11/09-19:41 + SDK 2.3 patch 5)
Corrected the problem that sometimes prevented the correct error from being returned when a partial network error occurred.
NWC24TrySuspendScheduler() and NWC24OpenLib() sometimes locked due to the influence of the exclusive access control in the library. Rather than locking, NWC24_ERR_MUTEX is now returned.
Fixed the bug that caused an erroneous search of NWC24_ERR_HIDDEN messages when trying to obtain all messages without setting conditions with NWC24SearchMsgs().
When an illegal string such as "=QZ" was included in the body of an external message encoded in QuotedPrintable, the reception of the entire message failed. This has been fixed so that the illegal string is discarded, and the remaining text is obtained.
Since RevoEX-0.8-061026_1528, the disconnect reason code for the Disconnect notification issued when the parent device actively disconnected a child device during MP communications was unintentionally changed from MP_DISCONNECT_REASON_ACTIVE to MP_DISCONNECT_REASON_DEAUTH_LEAVING. This has been restored.
(06/11/08-20:42)
Previously, the port number for SSL communication during proxy connection was fixed as 443. However, this has been changed so that it can be explicitly specified with a URL.
MEM1 buffer is assigned with SSL, operation occurs without problems, although it does slow down.LEDMode is set to zero.There was a risk that calling NWC24SetMsgSubjectPublic() or NWC24SetMsgTextPublic() on a device set to the US or the EU region might conflict with ASSERT. This has been corrected.
Made the default firmware TITLEID 13.x.x when no REX_TITLEID is specified due to a change in the firmware number assignment. This is a temporary value. The final version may change.
Firmware 11 or later has the specification to rename network configuration files to be used when network configuration files for Firmware 10 or earlier exist. In this case, if both old configuration files and new configuration files exist, the old configuration file was previously discarded. However, this has been changed so the new configuration file is overwritten by the old configuration file and renamed.
Previously, mail that had only attached data with no body text and did not have multipart encoding was discarded when received. This has been changed so that it is not discarded.
Corrected the problem that prevented the generation of some network connection–related error codes (5xxxx series) returned by NWC24.
The NHTTP library sometimes did not return if cancellation occurred directly after an HTTPS connection request. This problem has been corrected.
(06/11/07-19:30)
Changed some of the character code set candidates converted with NWC24SetMsgSubjectPublic() or NWC24SetMsgTextPublic().
Second and subsequent SSL requests sometimes failed when an SSL request was issued using a configuration that used a proxy. This problem has been corrected.
Reduced the NHTTP Timeout value from 60 to 40 seconds.
Changed the mail process so that mail send tasks are skipped when they occur directly after a mail check fails with NWC24_ERR_NETWORK. This takes into consideration the possibility that a second timeout can occur.
When over 1.5 MB of mail accumulated in the server mail spool, the mail was previously split up and sent. After the first mail reception, the remaining portion could not be retrieved during the next mail reception. The receive process did not occur until new mail arrived. This problem has been corrected.
(06/11/07-13:30)
Added a function to enable LED illumination when receiving a WC24 message while an application is running.
Nintendo Technical Support Center
CONFIDENTIAL