usbloadergx/source/usbloader/disc.h

63 lines
1.2 KiB
C
Raw Normal View History

#ifndef _DISC_H_
#define _DISC_H_
2009-09-27 20:19:53 +02:00
#include <gccore.h> /* for define ATTRIBUTE_PACKED */
#ifdef __cplusplus
extern "C"
{
#endif
/* Disc header structure */
struct discHdr
{
2010-09-24 02:48:03 +02:00
/* Game ID */
u8 id[6];
2010-09-24 02:48:03 +02:00
/* Game version */
u16 version;
2010-09-24 02:48:03 +02:00
/* Audio streaming */
u8 streaming;
u8 bufsize;
2010-09-24 02:48:03 +02:00
/* Padding */
u8 is_ciso;
u8 unused1[13];
2010-09-24 02:48:03 +02:00
/* Magic word */
u32 magic;
2010-09-24 02:48:03 +02:00
/* Padding */
u8 unused2[4];
2010-09-24 02:48:03 +02:00
/* Game title */
char title[64];
2010-09-24 02:48:03 +02:00
/* Encryption/Hashing */
u8 encryption;
u8 h3_verify;
2010-09-24 02:48:03 +02:00
/* Padding */
u8 unused3[30];
} ATTRIBUTE_PACKED;
/* Prototypes */
2010-09-24 02:48:03 +02:00
s32 Disc_Init(void);
s32 Disc_Open(void);
s32 Disc_Wait(void);
void __Disc_SetLowMem(void);
s32 Disc_SetUSB(const u8 *);
s32 Disc_ReadHeader(void *);
s32 Disc_IsWii(void);
s32 __Disc_FindPartition(u64 *outbuf);
void PatchCountryStrings(void *Address, int Size);
s32 __Disc_FindPartition(u64 *outbuf);
s32 Disc_JumpToEntrypoint(u8 videoselected, bool enablecheat);
#ifdef __cplusplus
}
#endif
#endif