CfgUSBLoader/source/xml.h

68 lines
1.6 KiB
C
Raw Permalink Normal View History

#ifndef _XML_H_
#define _XML_H_
#ifdef __cplusplus
extern "C"
{
#endif
#define XML_NUM_ACCESSORY 12
// all: 16 actual max: 7 controllers for SC7E52
#define XML_NUM_FEATURES 4
#define XML_MAX_SYNOPSIS 3000
typedef struct gameXMLinfo
{
char id[8];
char region[8];
char title[100];
char *synopsis;
char developer[40];
char publisher[40];
int year;
int month;
int day;
char genre[64];
char ratingtype[6];
char ratingvalue[6];
//char ratingdescriptors[16][40];
int wifiplayers;
char wififeatures[XML_NUM_FEATURES];
int players;
// accessoryID: 0=unused 1+id=supported 100+id=required
char accessoryID[XML_NUM_ACCESSORY];
u32 caseColor;
int hnext;
} gameXMLinfo;
struct gameXMLinfo *get_game_info(int i);
struct gameXMLinfo *get_game_info_id(u8 *gameid);
char* getLang(int lang);
bool ReloadXMLDatabase(char* xmlfilepath, char* argdblang, bool argJPtoEN);
void CloseXMLDatabase();
bool LoadGameInfoFromXML(u8 * gameid);
char *ConvertLangTextToCode(char *langtext);
char *VerifyLangCode(char *langtext);
int ConvertRatingToAge(char *ratingvalue, char *ratingSystem);
void ConvertRating(char *ratingvalue, char *fromrating, char *torating, char *destvalue, int destsize);
void FmtGameInfo(char *linebuf, int cols, int size);
void PrintGameInfo();
void PrintGameSynopsis();
int getIndexFromId(u8 * gameid);
bool DatabaseLoaded(void);
int getControllerTypes(char *controller, u8 * gameid);
const char *getControllerName(gameXMLinfo *g, int i, int *req);
bool hasGenre(char *genre, u8 * gameid);
bool hasFeature(char *feature, u8 *gameid);
bool xml_getCaseColor(u32 *color, u8 *gameid);
#ifdef __cplusplus
}
#endif
#endif