/* This parent game information does not change */
typedef struct MBGameInfoFixed
{
MBIconInfo icon;
MBUserInfo parent;
u8 maxPlayerNum;
u8 pad[1];
u16 gameName[ MB_GAME_NAME_LENGTH ];
u16 gameIntroduction[ MB_GAME_INTRO_LENGTH ];
} MBGameInfoFixed;
/* This parent information changes dynamically */*/
typedef struct MBGameInfoVolatile
{
u8 nowPlayerNum;
u8 pad[1];
u16 nowPlayerFlag;
u16 changePlayerFlag;
MBUserInfo member[ MB_MEMBER_MAX_NUM ];
u8 userVolatData[ MB_USER_VOLAT_DATA_SIZE ];
} MBGameInfoVolatile;
/* Parent game information beacon */
typedef struct MBGameInfo
{
MBGameInfoFixed fixed;
MBGameInfoVolatile volat;
u16 broadcastedPlayerFlag;
u8 dataAttr;
u8 seqNoFixed;
u8 seqNoVolat;
u8 fileNo;
u8 pad[2];
u32 ggid;
struct MBGameInfo *nextp;
} MBGameInfo;
The members of MBGameInfo are:
| fixed | Parent game information that does not change. | |
| volat | Volatile parent game information that changes dynamically. | |
| broadcastedPlayerFlag | Bit indicating that player information has been broadcast. | |
| dataAttr | Attributes of beacon broadcast by parent:MB_BEACON_DATA_ATTR_FIXED_NORMAL |
|
| seqNoFixed | Sequence number of the fixed region. When this number changes, the data in fixed is received again. (But this is normally fixed and not changed.). | |
| seqNoVolat | Sequence number of the volatile region. When this number changes, the data in volat is received again. | |
| fileNo | File number. | |
| ggid | Game group ID. | |
| nextp | Pointer to the next GameInfo (One-directional list). | |
The members of MBGameInfoFixed are:
| icon | Icon data. |
| parent | Parent user information. |
| maxPlayerNum | Maximum number of players. |
| gameName | Game title. |
| gameIntroduction | Description of the game. |
The members of MBGameInfoVolatile are:
| nowPlayerNum | Current number of players. |
| nowPlayerFlag | express the player numbers of all current players as a bit xyxyxy |
| changePlayerFlag | Flag indicating the number of a player whose information changed with the latest update. |
| member | Member information. |
| userVolatData | User setting data, which is set by parent using MB_SetUserVolatData. |
This structure stores the information previously returned by the children that the multiboot parent will broadcast in its next beacon to all children.
MB_FakeStartScanParent
11/25/2004 Initial version.
CONFIDENTIAL