2009-05-03 20:53:31 +02:00
|
|
|
#ifndef _CFG_H_
|
|
|
|
#define _CFG_H_
|
|
|
|
|
|
|
|
#include <gctypes.h>
|
|
|
|
#include "disc.h"
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C"
|
|
|
|
{
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define CFG_HOME_REBOOT 0
|
|
|
|
#define CFG_HOME_EXIT 1
|
|
|
|
|
|
|
|
#define CFG_VIDEO_SYS 0 // system default
|
|
|
|
#define CFG_VIDEO_DEFAULT 1
|
|
|
|
#define CFG_VIDEO_GAME 1 // game default
|
|
|
|
#define CFG_VIDEO_PATCH 2 // patch mode
|
|
|
|
#define CFG_VIDEO_PAL50 3 // force PAL
|
|
|
|
#define CFG_VIDEO_PAL60 4 // force PAL60
|
|
|
|
#define CFG_VIDEO_NTSC 5 // force NTSC
|
|
|
|
#define CFG_VIDEO_COUNT 6
|
|
|
|
|
|
|
|
#define CFG_LANG_CONSOLE 0
|
|
|
|
#define CFG_LANG_JAPANESE 1
|
|
|
|
#define CFG_LANG_ENGLISH 2
|
|
|
|
#define CFG_LANG_GERMAN 3
|
|
|
|
#define CFG_LANG_FRENCH 4
|
|
|
|
#define CFG_LANG_SPANISH 5
|
|
|
|
#define CFG_LANG_ITALIAN 6
|
|
|
|
#define CFG_LANG_DUTCH 7
|
|
|
|
#define CFG_LANG_S_CHINESE 8
|
|
|
|
#define CFG_LANG_T_CHINESE 9
|
|
|
|
#define CFG_LANG_KOREAN 10
|
|
|
|
#define CFG_LANG_COUNT 11
|
|
|
|
|
|
|
|
#define CFG_ALIGN_LEFT 0
|
|
|
|
#define CFG_ALIGN_RIGHT 1
|
|
|
|
#define CFG_ALIGN_CENTRE 2
|
|
|
|
#define CFG_ALIGN_TOP 3
|
|
|
|
#define CFG_ALIGN_BOTTOM 4
|
|
|
|
#define CFG_ALIGN_MIDDLE 5
|
|
|
|
|
|
|
|
extern char *cfg_path;
|
|
|
|
//extern char *cfg_images_path;
|
|
|
|
|
|
|
|
struct CFG
|
|
|
|
{
|
|
|
|
// char *background;
|
|
|
|
// short covers;
|
|
|
|
// short simple;
|
|
|
|
// short video;
|
|
|
|
// short language;
|
|
|
|
// short ocarina;
|
|
|
|
// short vipatch;
|
|
|
|
// short home;
|
|
|
|
// short download;
|
|
|
|
// short installdownload;
|
|
|
|
// short hidesettingmenu;
|
|
|
|
// short savesettings;
|
|
|
|
short widescreen;
|
|
|
|
short parentalcontrol;
|
2009-05-23 00:36:55 +02:00
|
|
|
// short maxcharacters;
|
2009-05-03 20:53:31 +02:00
|
|
|
short godmode;
|
2009-05-10 00:37:14 +02:00
|
|
|
short xflip;
|
2009-05-06 13:09:32 +02:00
|
|
|
short wsprompt;
|
2009-05-03 20:53:31 +02:00
|
|
|
char unlockCode[20];
|
|
|
|
char covers_path[100];
|
|
|
|
char theme_path[100];
|
|
|
|
char disc_path[100];
|
2009-05-17 10:40:47 +02:00
|
|
|
char titlestxt_path[100];
|
2009-05-16 17:38:52 +02:00
|
|
|
char language_path[100];
|
2009-05-20 02:03:43 +02:00
|
|
|
char oggload_path[100];
|
|
|
|
char ogg_path[150];
|
2009-05-28 14:12:52 +02:00
|
|
|
char update_path[150];
|
2009-05-17 06:02:52 +02:00
|
|
|
short keyset;
|
2009-05-03 20:53:31 +02:00
|
|
|
};
|
|
|
|
|
2009-05-15 06:07:34 +02:00
|
|
|
|
2009-05-03 20:53:31 +02:00
|
|
|
struct THEME
|
|
|
|
{
|
|
|
|
int selection_x;
|
|
|
|
int selection_y;
|
|
|
|
int selection_w;
|
|
|
|
int selection_h;
|
2009-06-01 05:49:50 +02:00
|
|
|
int gamegrid_x;
|
|
|
|
int gamegrid_y;
|
|
|
|
int gamegrid_w;
|
|
|
|
int gamegrid_h;
|
|
|
|
int gamecarousel_x;
|
|
|
|
int gamecarousel_y;
|
|
|
|
int gamecarousel_w;
|
|
|
|
int gamecarousel_h;
|
2009-05-04 07:08:10 +02:00
|
|
|
short cover_x;
|
|
|
|
short cover_y;
|
2009-05-03 20:53:31 +02:00
|
|
|
short showID;
|
2009-05-23 00:36:55 +02:00
|
|
|
// short maxcharacters;
|
2009-05-15 06:07:34 +02:00
|
|
|
short batteryUnused;
|
2009-05-04 07:08:10 +02:00
|
|
|
short id_x;
|
|
|
|
short id_y;
|
|
|
|
short region_x;
|
|
|
|
short region_y;
|
|
|
|
short power_x;
|
|
|
|
short power_y;
|
|
|
|
short home_x;
|
|
|
|
short home_y;
|
|
|
|
short battery1_x;
|
|
|
|
short battery2_x;
|
|
|
|
short battery3_x;
|
|
|
|
short battery4_x;
|
|
|
|
short battery1_y;
|
|
|
|
short battery2_y;
|
|
|
|
short battery3_y;
|
|
|
|
short battery4_y;
|
2009-05-29 03:50:05 +02:00
|
|
|
short favorite_x;
|
|
|
|
short favorite_y;
|
|
|
|
short abc_x;
|
2009-05-30 05:02:41 +02:00
|
|
|
short abc_y;
|
|
|
|
short list_x;
|
|
|
|
short list_y;
|
2009-05-29 03:50:05 +02:00
|
|
|
short grid_x;
|
|
|
|
short grid_y;
|
|
|
|
short carousel_x;
|
|
|
|
short carousel_y;
|
|
|
|
short count_x;
|
|
|
|
short count_y;
|
|
|
|
short sortBarOffset;
|
2009-05-03 20:53:31 +02:00
|
|
|
// short showPower;
|
|
|
|
// short showHome;
|
2009-05-04 07:08:10 +02:00
|
|
|
short setting_x;
|
|
|
|
short setting_y;
|
|
|
|
short install_x;
|
|
|
|
short install_y;
|
2009-05-03 20:53:31 +02:00
|
|
|
short showHDD;
|
|
|
|
short hddInfoAlign;
|
2009-05-04 07:08:10 +02:00
|
|
|
short hddInfo_x;
|
|
|
|
short hddInfo_y;
|
2009-05-03 20:53:31 +02:00
|
|
|
short showGameCnt;
|
|
|
|
short gameCntAlign;
|
2009-05-04 07:08:10 +02:00
|
|
|
short gameCnt_x;
|
|
|
|
short gameCnt_y;
|
2009-05-03 20:53:31 +02:00
|
|
|
short showRegion;
|
|
|
|
short showBattery;
|
|
|
|
short showToolTip;
|
|
|
|
//color
|
|
|
|
short info_r;
|
|
|
|
short info_g;
|
|
|
|
short info_b;
|
2009-05-18 11:33:23 +02:00
|
|
|
short prompttxt_r;
|
|
|
|
short prompttxt_g;
|
|
|
|
short prompttxt_b;
|
2009-06-01 05:49:50 +02:00
|
|
|
short settingsTxt_r;
|
|
|
|
short settingsTxt_g;
|
|
|
|
short settingsTxt_b;
|
|
|
|
short clock_r;
|
|
|
|
short clock_g;
|
|
|
|
short clock_b;
|
2009-05-03 20:53:31 +02:00
|
|
|
short clock_x;
|
|
|
|
short clock_y;
|
|
|
|
short clockAlign;
|
2009-05-04 07:08:10 +02:00
|
|
|
short sdcard_x;
|
|
|
|
short sdcard_y;
|
2009-05-05 04:56:01 +02:00
|
|
|
short gameText_r;
|
|
|
|
short gameText_g;
|
|
|
|
short gameText_b;
|
2009-05-06 06:52:44 +02:00
|
|
|
short pagesize;
|
2009-05-03 20:53:31 +02:00
|
|
|
};
|
|
|
|
|
2009-05-16 17:38:52 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
2009-05-03 20:53:31 +02:00
|
|
|
extern struct CFG CFG;
|
|
|
|
extern struct THEME THEME;
|
|
|
|
extern u8 ocarinaChoice;
|
2009-05-22 09:15:01 +02:00
|
|
|
extern u16 playcnt;
|
2009-05-03 20:53:31 +02:00
|
|
|
extern u8 videoChoice;
|
|
|
|
extern u8 languageChoice;
|
|
|
|
extern u8 viChoice;
|
|
|
|
extern u8 iosChoice;
|
2009-05-20 10:31:47 +02:00
|
|
|
extern u8 faveChoice;
|
2009-05-03 20:53:31 +02:00
|
|
|
extern u8 parentalcontrolChoice;
|
2009-05-05 08:24:23 +02:00
|
|
|
extern u8 xflip;
|
|
|
|
extern u8 qboot;
|
2009-05-22 19:51:28 +02:00
|
|
|
extern u8 sort;
|
|
|
|
extern u8 fave;
|
2009-05-06 13:09:32 +02:00
|
|
|
extern u8 wsprompt;
|
2009-05-17 06:02:52 +02:00
|
|
|
extern u8 keyset;
|
2009-05-25 14:10:34 +02:00
|
|
|
extern u8 gameDisplay;
|
2009-05-03 20:53:31 +02:00
|
|
|
|
|
|
|
struct Game_CFG
|
|
|
|
{
|
|
|
|
u8 id[8];
|
|
|
|
u8 video;
|
|
|
|
u8 language;
|
|
|
|
u8 ocarina;
|
|
|
|
u8 vipatch;
|
|
|
|
u8 ios;
|
|
|
|
u8 parentalcontrol;
|
|
|
|
};
|
2009-05-20 10:31:47 +02:00
|
|
|
struct Game_NUM
|
|
|
|
{
|
|
|
|
u8 id[8];
|
|
|
|
u8 favorite;
|
2009-05-22 09:15:01 +02:00
|
|
|
u16 count;
|
2009-05-20 10:31:47 +02:00
|
|
|
};
|
2009-05-03 20:53:31 +02:00
|
|
|
|
|
|
|
|
2009-05-04 23:50:46 +02:00
|
|
|
void CFG_Default(int widescreen); // -1 = non forced mode
|
2009-05-30 00:14:19 +02:00
|
|
|
void CFG_Load(void);
|
2009-05-16 17:38:52 +02:00
|
|
|
void lang_defualt();
|
2009-05-03 20:53:31 +02:00
|
|
|
struct Game_CFG* CFG_get_game_opt(u8 *id);
|
2009-05-20 10:31:47 +02:00
|
|
|
struct Game_NUM* CFG_get_game_num(u8 *id);
|
2009-05-03 20:53:31 +02:00
|
|
|
bool CFG_save_game_opt(u8 *id);
|
2009-05-20 10:31:47 +02:00
|
|
|
bool CFG_save_game_num(u8 *id);
|
2009-05-04 23:50:46 +02:00
|
|
|
bool CFG_forget_game_opt(u8 *id);
|
2009-05-10 12:47:15 +02:00
|
|
|
int subfoldercheck(char * directory);
|
2009-05-03 20:53:31 +02:00
|
|
|
|
|
|
|
//Astidof - Begin of modification
|
2009-05-04 23:50:46 +02:00
|
|
|
enum {
|
2009-05-29 15:20:28 +02:00
|
|
|
ConsoleLangDefault=0,
|
2009-05-04 23:50:46 +02:00
|
|
|
jap,
|
|
|
|
eng,
|
|
|
|
ger,
|
|
|
|
fren,
|
|
|
|
esp,
|
|
|
|
it,
|
|
|
|
dut,
|
2009-05-03 20:53:31 +02:00
|
|
|
schin,
|
|
|
|
tchin,
|
2009-05-29 15:20:28 +02:00
|
|
|
kor,
|
2009-05-30 00:14:19 +02:00
|
|
|
|
2009-05-29 15:20:28 +02:00
|
|
|
settings_language_max // always the last entry
|
2009-05-03 20:53:31 +02:00
|
|
|
};
|
|
|
|
|
2009-05-04 23:50:46 +02:00
|
|
|
enum {
|
2009-05-29 15:20:28 +02:00
|
|
|
systemdefault=0,
|
2009-05-04 23:50:46 +02:00
|
|
|
discdefault,
|
2009-05-03 20:53:31 +02:00
|
|
|
patch,
|
|
|
|
pal50,
|
|
|
|
pal60,
|
2009-05-29 15:20:28 +02:00
|
|
|
ntsc,
|
|
|
|
settings_video_max // always the last entry
|
2009-05-04 23:50:46 +02:00
|
|
|
};
|
2009-05-03 20:53:31 +02:00
|
|
|
|
|
|
|
enum {
|
2009-05-29 15:20:28 +02:00
|
|
|
off=0,
|
2009-05-03 20:53:31 +02:00
|
|
|
on,
|
2009-05-29 15:20:28 +02:00
|
|
|
settings_off_on_max // always the last entry
|
2009-05-04 23:50:46 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
enum {
|
|
|
|
GameID,
|
|
|
|
GameRegion,
|
|
|
|
Both,
|
|
|
|
Neither,
|
2009-05-29 15:20:28 +02:00
|
|
|
settings_sinfo_max // always the last entry
|
2009-05-04 23:50:46 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
enum {
|
2009-05-29 15:20:28 +02:00
|
|
|
i249=0,
|
2009-05-04 23:50:46 +02:00
|
|
|
i222,
|
2009-05-03 20:53:31 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
enum {
|
2009-05-29 15:20:28 +02:00
|
|
|
ios249=0,
|
2009-05-03 20:53:31 +02:00
|
|
|
ios222,
|
2009-05-29 15:20:28 +02:00
|
|
|
settings_cios_max // always the last entry
|
2009-05-03 20:53:31 +02:00
|
|
|
};
|
2009-05-04 23:50:46 +02:00
|
|
|
|
|
|
|
enum {
|
2009-05-29 15:20:28 +02:00
|
|
|
hr12=0,
|
2009-05-20 10:31:47 +02:00
|
|
|
hr24,
|
|
|
|
Off,
|
2009-05-29 15:20:28 +02:00
|
|
|
settings_clock_max // always the last entry
|
2009-05-04 23:50:46 +02:00
|
|
|
};
|
2009-05-21 06:00:16 +02:00
|
|
|
enum {
|
2009-05-29 15:20:28 +02:00
|
|
|
all=0,
|
2009-05-21 06:00:16 +02:00
|
|
|
pcount,
|
|
|
|
};
|
2009-05-04 23:50:46 +02:00
|
|
|
|
|
|
|
enum {
|
2009-05-29 15:20:28 +02:00
|
|
|
RumbleOff=0,
|
2009-05-04 23:50:46 +02:00
|
|
|
RumbleOn,
|
2009-05-29 15:20:28 +02:00
|
|
|
settings_rumble_max // always the last entry
|
2009-05-04 23:50:46 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
enum {
|
2009-05-29 15:20:28 +02:00
|
|
|
TooltipsOff=0,
|
2009-05-04 23:50:46 +02:00
|
|
|
TooltipsOn,
|
2009-05-29 15:20:28 +02:00
|
|
|
settings_tooltips_max // always the last entry
|
2009-05-04 23:50:46 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
enum {
|
2009-05-29 15:20:28 +02:00
|
|
|
v10=0,
|
2009-05-04 23:50:46 +02:00
|
|
|
v20,
|
|
|
|
v30,
|
|
|
|
v40,
|
|
|
|
v50,
|
|
|
|
v60,
|
|
|
|
v70,
|
|
|
|
v80,
|
|
|
|
v90,
|
|
|
|
v100,
|
|
|
|
v0,
|
2009-05-29 15:20:28 +02:00
|
|
|
settings_volume_max // always the last entry
|
2009-05-03 20:53:31 +02:00
|
|
|
};
|
|
|
|
|
2009-05-05 08:24:23 +02:00
|
|
|
enum {
|
2009-05-29 15:20:28 +02:00
|
|
|
no=0,
|
2009-05-05 08:24:23 +02:00
|
|
|
yes,
|
2009-05-10 03:01:41 +02:00
|
|
|
sysmenu,
|
|
|
|
wtf,
|
2009-05-20 22:09:57 +02:00
|
|
|
disk3d,
|
2009-05-29 15:20:28 +02:00
|
|
|
settings_xflip_max // always the last entry
|
2009-05-05 08:24:23 +02:00
|
|
|
};
|
2009-05-17 06:02:52 +02:00
|
|
|
enum {
|
2009-05-29 15:20:28 +02:00
|
|
|
us=0,
|
2009-05-17 06:02:52 +02:00
|
|
|
dvorak,
|
|
|
|
euro,
|
2009-05-25 14:10:34 +02:00
|
|
|
azerty,
|
2009-05-29 15:20:28 +02:00
|
|
|
settings_keyset_max // always the last entry
|
2009-05-25 14:10:34 +02:00
|
|
|
};
|
|
|
|
enum {
|
|
|
|
list,
|
|
|
|
grid,
|
|
|
|
carousel,
|
2009-05-17 06:02:52 +02:00
|
|
|
};
|
2009-05-29 15:20:28 +02:00
|
|
|
enum {
|
|
|
|
scrollDefault,
|
|
|
|
scrollMarquee,
|
2009-05-04 23:50:46 +02:00
|
|
|
|
2009-05-29 15:20:28 +02:00
|
|
|
settings_scrolleffect_max // always the last entry
|
|
|
|
};
|
2009-05-04 23:50:46 +02:00
|
|
|
struct SSettings {
|
2009-05-24 00:23:24 +02:00
|
|
|
int video;
|
|
|
|
int language;
|
2009-05-22 19:51:28 +02:00
|
|
|
int ocarina;
|
|
|
|
int vpatch;
|
|
|
|
int ios;
|
2009-05-24 00:23:24 +02:00
|
|
|
int sinfo;
|
|
|
|
int hddinfo;
|
|
|
|
int rumble;
|
|
|
|
int xflip;
|
|
|
|
int volume;
|
2009-05-03 20:53:31 +02:00
|
|
|
int tooltips;
|
|
|
|
char unlockCode[20];
|
2009-05-24 00:23:24 +02:00
|
|
|
int parentalcontrol;
|
2009-05-04 23:50:46 +02:00
|
|
|
int cios;
|
2009-05-24 00:23:24 +02:00
|
|
|
int qboot;
|
|
|
|
int wsprompt;
|
|
|
|
int keyset;
|
2009-05-17 10:40:47 +02:00
|
|
|
int unicodefix;
|
2009-05-24 00:23:24 +02:00
|
|
|
int sort;
|
|
|
|
int fave;
|
|
|
|
int wiilight;
|
2009-05-25 14:10:34 +02:00
|
|
|
int gameDisplay;
|
2009-05-30 18:58:34 +02:00
|
|
|
int patchcountrystrings;
|
2009-05-04 23:50:46 +02:00
|
|
|
};
|
|
|
|
|
2009-05-03 20:53:31 +02:00
|
|
|
void CFG_LoadGlobal(void);
|
|
|
|
bool cfg_save_global(void);
|
|
|
|
//Astidof - End of modification
|
|
|
|
|
|
|
|
char *get_title(struct discHdr *header);
|
|
|
|
u8 get_block(struct discHdr *header);
|
|
|
|
|
|
|
|
void CFG_Cleanup(void);
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|