/* 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 MB_BEACON_DATA_ATTR_FIXED_NO_ICON MB_BEACON_DATA_ATTR_VOLAT |
|
| 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 | Bits indicating the player numbers for all current players. |
| changePlayerFlag | Flag indicating the number of a player whose information changed with the latest update. |
| member | Member information. |
| userVolatData | Contains user settings data that is set by the parent using the MB_SetUserVolatData function. |
This structure stores the information previously returned by the children that the multiboot parent will broadcast in its next beacon to all children.
2004/11/25 Initial version.
CONFIDENTIAL