mirror of
https://github.com/Fledge68/WiiFlow_Lite.git
synced 2024-11-01 00:55:06 +01:00
-changed version number to Beta 4.1.1
-fixed a possible return to neek bug -some cleanup
This commit is contained in:
parent
6162cc7a3f
commit
7b738cbe73
@ -44,8 +44,7 @@ SOURCES := source \
|
||||
DATA := data \
|
||||
data/images \
|
||||
data/help \
|
||||
data/sounds \
|
||||
data/save
|
||||
data/sounds
|
||||
INCLUDES := source
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
|
@ -11,7 +11,7 @@ typedef struct _dolheader
|
||||
u32 bss_size;
|
||||
u32 entry_point;
|
||||
u32 padding[7];
|
||||
} __attribute__((packed)) dolheader;
|
||||
} ATTRIBUTE_PACKED dolheader;
|
||||
|
||||
void PatchChannel(u8 vidMode, GXRModeObj *vmode, bool vipatch, bool countryString,
|
||||
u8 patchVidModes, int aspectRatio);
|
||||
|
@ -51,7 +51,7 @@ struct RLAN_Header
|
||||
u32 file_size;
|
||||
u16 offset;
|
||||
u16 section_count;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct PAI1_Header
|
||||
{
|
||||
@ -63,7 +63,7 @@ struct PAI1_Header
|
||||
u16 file_count;
|
||||
u16 animator_count;
|
||||
u32 entry_offset;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct AnimatorHeader
|
||||
{
|
||||
@ -71,14 +71,14 @@ struct AnimatorHeader
|
||||
u8 tag_count;
|
||||
u8 is_material;
|
||||
u16 apad;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct Anim_Header
|
||||
{
|
||||
u32 animation_type;
|
||||
u8 frame_count;
|
||||
u8 pad[3];
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct KeyFrame_Header
|
||||
{
|
||||
@ -89,7 +89,7 @@ struct KeyFrame_Header
|
||||
u16 key_count;
|
||||
u16 pad1;
|
||||
u32 offset;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct KeyType
|
||||
{
|
||||
|
@ -52,13 +52,13 @@ private:
|
||||
u32 magic;
|
||||
u32 num_textures;
|
||||
u32 header_size;
|
||||
} __attribute__((packed)) ;
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct TPL_Texture
|
||||
{
|
||||
u32 texture_offset;
|
||||
u32 palette_offset;
|
||||
} __attribute__((packed)) ;
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct TPL_Texture_Header
|
||||
{
|
||||
@ -75,7 +75,7 @@ private:
|
||||
u8 min_lod;
|
||||
u8 max_lod;
|
||||
u8 unpacked;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct TPL_Palette_Header
|
||||
{
|
||||
@ -84,7 +84,7 @@ private:
|
||||
u8 pad;
|
||||
u32 format;
|
||||
u32 offset;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
Texture::Header *header;
|
||||
TPL_Palette_Header *palette;
|
||||
|
@ -99,7 +99,7 @@ protected:
|
||||
u32 filesize;
|
||||
u16 header_len;
|
||||
u16 section_count;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct Header
|
||||
{
|
||||
@ -107,19 +107,19 @@ protected:
|
||||
u8 pad[3];
|
||||
float width;
|
||||
float height;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct LytItemList
|
||||
{
|
||||
u16 num_items;
|
||||
u16 offset_to_first;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct LytStringTable
|
||||
{
|
||||
u32 offset_filename;
|
||||
u32 pad;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct Group
|
||||
{
|
||||
|
@ -41,7 +41,7 @@ public:
|
||||
GXColorS10 color_regs[3];
|
||||
GXColor color_constants[4];
|
||||
u32 flags;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
Material();
|
||||
|
||||
@ -87,14 +87,14 @@ private:
|
||||
u32 texture_coord_gen : 4;
|
||||
u32 texture_srt : 4;
|
||||
u32 texture_map : 4;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct TextureMap
|
||||
{
|
||||
u16 tex_index;
|
||||
u8 wrap_s;
|
||||
u8 wrap_t;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct TextureSrt
|
||||
{
|
||||
@ -103,7 +103,7 @@ private:
|
||||
f32 rotate;
|
||||
f32 scale_x;
|
||||
f32 scale_y;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct TextureCoordGen
|
||||
{
|
||||
@ -111,14 +111,14 @@ private:
|
||||
u8 tgen_src;
|
||||
u8 mtxsrc;
|
||||
u8 pad;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct ChannelControl
|
||||
{
|
||||
u8 color_matsrc;
|
||||
u8 alpha_matsrc;
|
||||
u16 pad;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct IndSrt
|
||||
{
|
||||
@ -127,7 +127,7 @@ private:
|
||||
f32 rotate;
|
||||
f32 scale_x;
|
||||
f32 scale_y;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct IndStage
|
||||
{
|
||||
@ -135,19 +135,19 @@ private:
|
||||
u8 tex_map;
|
||||
u8 scale_s;
|
||||
u8 scale_t;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct BlendModes
|
||||
{
|
||||
u8 type, src_factor, dst_factor, logical_op;
|
||||
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct AlphaCompareModes
|
||||
{
|
||||
u8 compare, op, ref0, ref1;
|
||||
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct TevSwap
|
||||
{
|
||||
@ -155,7 +155,7 @@ private:
|
||||
u32 b : 2;
|
||||
u32 g : 2;
|
||||
u32 r : 2;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct TevStage
|
||||
{
|
||||
@ -184,7 +184,7 @@ private:
|
||||
u32 tevregid : 2;
|
||||
u32 clamp : 1;
|
||||
|
||||
} __attribute__((packed)) color_in, __attribute__((packed)) alpha_in;
|
||||
} ATTRIBUTE_PACKED color_in, ATTRIBUTE_PACKED alpha_in;
|
||||
|
||||
struct
|
||||
{
|
||||
@ -205,8 +205,8 @@ private:
|
||||
u32 addprev : 1;
|
||||
u32 format : 2;
|
||||
|
||||
} __attribute__((packed)) ind;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED ind;
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
// Material flags
|
||||
MatFlags *flags;
|
||||
|
@ -57,7 +57,7 @@ public:
|
||||
Vec2f scale;
|
||||
float width;
|
||||
float height;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
Pane() : header(NULL) {}
|
||||
virtual ~Pane();
|
||||
|
@ -38,7 +38,7 @@ public:
|
||||
u16 material_index;
|
||||
u8 tex_coord_count;
|
||||
u8 pad;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
QuadPane() : header(NULL) {}
|
||||
void Load(QuadPane::Header *file);
|
||||
|
@ -71,7 +71,7 @@ private:
|
||||
float height; // seems to work better for offset calculation
|
||||
float space_char;
|
||||
float space_line;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
Textbox::Header *header;
|
||||
const u16 *text;
|
||||
|
@ -85,7 +85,7 @@ private:
|
||||
u32 filesize;
|
||||
u16 header_len;
|
||||
u16 section_count;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct GlgrHeader
|
||||
{
|
||||
@ -97,7 +97,7 @@ private:
|
||||
u16 sheet_count;
|
||||
u16 cwdh_count;
|
||||
u16 cmap_count;
|
||||
}__attribute__(( packed ));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct FinfHeader
|
||||
{
|
||||
@ -117,7 +117,7 @@ private:
|
||||
u8 width;
|
||||
u8 ascent;
|
||||
u8 unk8_10;
|
||||
} __attribute__(( packed ));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct TglpHeader
|
||||
{
|
||||
@ -138,7 +138,7 @@ private:
|
||||
u16 width; // width of image
|
||||
u16 height; // height of image
|
||||
u32 dataOffset; // data offset
|
||||
} __attribute__(( packed ));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct CwdhHeader
|
||||
{
|
||||
@ -148,7 +148,7 @@ private:
|
||||
u16 endIdx; //
|
||||
u32 next; //
|
||||
|
||||
} __attribute__(( packed ));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct CmapEntry
|
||||
{
|
||||
@ -158,14 +158,14 @@ private:
|
||||
u16 pad;
|
||||
u32 pos;
|
||||
u16 charCode;
|
||||
} __attribute__(( packed ));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct Cwdh
|
||||
{
|
||||
s8 advanceKerning;
|
||||
u8 unk;
|
||||
s8 advanceGlyphX;
|
||||
} __attribute__(( packed ));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
// font texture decompress functions
|
||||
static bool Decompress_0x28( unsigned char *outBuf, u32 outLen, const unsigned char *inBuf, u32 inLen );
|
||||
|
@ -50,13 +50,13 @@ private:
|
||||
u8 pad[3];
|
||||
u32 content_offset;
|
||||
u32 frame_table_offset;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct Frame
|
||||
{
|
||||
u16 material_index;
|
||||
u8 texture_flip;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
Header *header;
|
||||
std::vector<Frame *> frames;
|
||||
|
@ -53,7 +53,7 @@ typedef struct _uid
|
||||
{
|
||||
u64 TitleID;
|
||||
u32 unused;
|
||||
} __attribute__((packed)) uid;
|
||||
} ATTRIBUTE_PACKED uid;
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
@ -23,7 +23,7 @@ typedef struct _ios_settings_t
|
||||
{
|
||||
u8 cios;
|
||||
bool use_cios;
|
||||
} __attribute__((packed)) ios_settings_t;
|
||||
} ATTRIBUTE_PACKED ios_settings_t;
|
||||
|
||||
class NandSave
|
||||
{
|
||||
|
@ -1,5 +1,5 @@
|
||||
#define APP_NAME "WiiFlow"
|
||||
#define APP_VERSION "Beta 4.0.6"
|
||||
#define APP_VERSION "Beta 4.1.1"
|
||||
|
||||
#define APPDATA_DIR "wiiflow"
|
||||
#define APPDATA_DIR2 "apps/wiiflow"
|
||||
|
@ -57,14 +57,14 @@ typedef struct _PARTITION_RECORD {
|
||||
u8 chs_end[3]; /* Cylinder-head-sector address to last block of partition */
|
||||
u32 lba_start; /* Local block address to first sector of partition */
|
||||
u32 block_count; /* Number of blocks in partition */
|
||||
} __attribute__((__packed__)) PARTITION_RECORD;
|
||||
} ATTRIBUTE_PACKED PARTITION_RECORD;
|
||||
|
||||
|
||||
typedef struct _MASTER_BOOT_RECORD {
|
||||
u8 code_area[446]; /* Code area; normally empty */
|
||||
PARTITION_RECORD partitions[4]; /* 4 primary partitions */
|
||||
u16 signature; /* MBR signature; 0xAA55 */
|
||||
} __attribute__((__packed__)) MASTER_BOOT_RECORD;
|
||||
} ATTRIBUTE_PACKED MASTER_BOOT_RECORD;
|
||||
|
||||
typedef struct _EXTENDED_BOOT_RECORD {
|
||||
u8 code_area[446]; /* Code area; normally empty */
|
||||
@ -72,7 +72,7 @@ typedef struct _EXTENDED_BOOT_RECORD {
|
||||
PARTITION_RECORD next_ebr; /* Next extended boot record in the chain */
|
||||
u8 reserved[32]; /* Normally empty */
|
||||
u16 signature; /* EBR signature; 0xAA55 */
|
||||
} __attribute__((__packed__)) EXTENDED_BOOT_RECORD;
|
||||
} ATTRIBUTE_PACKED EXTENDED_BOOT_RECORD;
|
||||
|
||||
typedef struct _GUID_PART_ENTRY
|
||||
{
|
||||
@ -82,7 +82,7 @@ typedef struct _GUID_PART_ENTRY
|
||||
u64 part_last_lba; /* Last LBA (inclusive, usually odd) */
|
||||
u64 attribute_flags; /* GUID Attribute flags (e.g. bit 60 denotes read-only) */
|
||||
char partition_name[72]; /* Partition name (36 UTF-16LE code units) */
|
||||
} __attribute__((__packed__)) GUID_PART_ENTRY;
|
||||
} ATTRIBUTE_PACKED GUID_PART_ENTRY;
|
||||
|
||||
typedef struct _GPT_HEADER
|
||||
{
|
||||
@ -101,7 +101,7 @@ typedef struct _GPT_HEADER
|
||||
u32 part_entry_size; /* Size of a partition entry (usually 128) */
|
||||
u32 part_entry_checksum; /* CRC32 of partition array */
|
||||
u8 zeros[420];
|
||||
} __attribute__((__packed__)) GPT_HEADER;
|
||||
} ATTRIBUTE_PACKED GPT_HEADER;
|
||||
|
||||
typedef struct _PartitionFS {
|
||||
const char *FSName;
|
||||
@ -111,7 +111,7 @@ typedef struct _PartitionFS {
|
||||
u8 PartitionType;
|
||||
u8 PartitionNum;
|
||||
wbfs_t *wbfshandle;
|
||||
} __attribute__((__packed__)) PartitionFS;
|
||||
} ATTRIBUTE_PACKED PartitionFS;
|
||||
|
||||
|
||||
class PartitionHandle
|
||||
|
@ -26,6 +26,7 @@
|
||||
|
||||
#include <vector>
|
||||
#include <string>
|
||||
#include <gccore.h>
|
||||
|
||||
using namespace std;
|
||||
|
||||
@ -39,16 +40,16 @@ enum
|
||||
|
||||
typedef struct _Accessory
|
||||
{
|
||||
string Name;
|
||||
bool Required;
|
||||
string Name;
|
||||
bool Required;
|
||||
} Accessory;
|
||||
|
||||
typedef struct _GameOffsets
|
||||
{
|
||||
char gameID[7];
|
||||
unsigned int gamenode;
|
||||
unsigned int nodesize;
|
||||
} __attribute__((__packed__)) GameOffsets;
|
||||
char gameID[7];
|
||||
unsigned int gamenode;
|
||||
unsigned int nodesize;
|
||||
} ATTRIBUTE_PACKED GameOffsets;
|
||||
|
||||
class GameTDB
|
||||
{
|
||||
|
@ -21,7 +21,7 @@ struct TexData
|
||||
u8 format;
|
||||
u8 maxLOD;
|
||||
bool thread;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
class STexture
|
||||
{
|
||||
|
@ -27,7 +27,7 @@ typedef struct wbfs_head
|
||||
u8 wbfs_sec_sz_s; // size of a wbfs sec
|
||||
u8 padding3[2];
|
||||
u8 disc_table[0]; // size depends on hd sector size
|
||||
}__attribute((packed)) wbfs_head_t ;
|
||||
} ATTRIBUTE_PACKED wbfs_head_t;
|
||||
|
||||
typedef struct wbfs_disc_info
|
||||
{
|
||||
|
@ -35,7 +35,7 @@ typedef union
|
||||
u32 _checksum;
|
||||
u32 data[0x1f];
|
||||
};
|
||||
} __attribute__((packed)) playtime_t;
|
||||
} ATTRIBUTE_PACKED playtime_t;
|
||||
|
||||
playtime_t playrec_buf;
|
||||
|
||||
|
@ -2240,10 +2240,7 @@ bool CMenu::_loadChannelList(void)
|
||||
emuPartition = _FindEmuPart(emuPath, true);
|
||||
if(emuPartition < 0)
|
||||
return false;
|
||||
|
||||
currentPartition = emuPartition;
|
||||
NandHandle.SetNANDEmu(currentPartition); /* Init NAND Emu */
|
||||
NandHandle.SetPaths(emuPath.c_str(), DeviceName[currentPartition]);
|
||||
NandHandle.PreNandCfg(m_cfg.getBool(CHANNEL_DOMAIN, "real_nand_miis", false),
|
||||
m_cfg.getBool(CHANNEL_DOMAIN, "real_nand_config", false));
|
||||
cacheDir = fmt("%s/%s_channels.db", m_listCacheDir.c_str(), DeviceName[currentPartition]);
|
||||
@ -2488,7 +2485,7 @@ typedef struct map_entry
|
||||
{
|
||||
char filename[8];
|
||||
u8 sha1[20];
|
||||
} __attribute((packed)) map_entry_t;
|
||||
} ATTRIBUTE_PACKED map_entry_t;
|
||||
|
||||
void CMenu::loadDefaultFont(void)
|
||||
{
|
||||
|
@ -1223,8 +1223,8 @@ void CMenu::_launchGame(dir_discHdr *hdr, bool dvd)
|
||||
int aspectRatio = min((u32)m_gcfg2.getInt(id, "aspect_ratio", 0), ARRAY_SIZE(CMenu::_AspectRatio) - 1u)-1;
|
||||
|
||||
string emuPath;
|
||||
int emuPartition = _FindEmuPart(emuPath, false);
|
||||
|
||||
int emuPartition = 0;
|
||||
|
||||
u8 emulate_mode = min((u32)m_gcfg2.getInt(id, "emulate_save", 0), ARRAY_SIZE(CMenu::_SaveEmu) - 1u);
|
||||
|
||||
if(emulate_mode == 0)
|
||||
@ -1235,8 +1235,9 @@ void CMenu::_launchGame(dir_discHdr *hdr, bool dvd)
|
||||
}
|
||||
else if(emulate_mode == 1)
|
||||
emulate_mode = 0;
|
||||
if(!dvd && emulate_mode)
|
||||
if(emulate_mode && !dvd && !neek2o() && CurrentIOS.Type == IOS_TYPE_D2X)
|
||||
{
|
||||
emuPartition = _FindEmuPart(emuPath, false);
|
||||
if(emuPartition < 0)
|
||||
{
|
||||
if(emulate_mode == 4)
|
||||
@ -1261,11 +1262,8 @@ void CMenu::_launchGame(dir_discHdr *hdr, bool dvd)
|
||||
NandHandle.CreatePath("%s:/wiiflow/nandemu", DeviceName[emuPartition]);
|
||||
}
|
||||
}
|
||||
/* Init NAND Emu Settings */
|
||||
NANDemuView = true;
|
||||
NandHandle.SetNANDEmu(emuPartition);
|
||||
NandHandle.SetPaths(emuPath.c_str(), DeviceName[emuPartition]);
|
||||
/* Set them */
|
||||
NANDemuView = true;
|
||||
m_cfg.setInt(WII_DOMAIN, "savepartition", emuPartition);
|
||||
m_cfg.setString(WII_DOMAIN, "savepath", emuPath);
|
||||
if(emulate_mode == 2 || emulate_mode > 3)
|
||||
@ -1285,6 +1283,9 @@ void CMenu::_launchGame(dir_discHdr *hdr, bool dvd)
|
||||
NandHandle.Do_Region_Change(id);
|
||||
}
|
||||
}
|
||||
else
|
||||
emulate_mode = 0;
|
||||
|
||||
bool cheat = m_gcfg2.testOptBool(id, "cheat", m_cfg.getBool(WII_DOMAIN, "cheat", false));
|
||||
debuggerselect = m_gcfg2.getBool(id, "debugger", false) ? 1 : 0; // debuggerselect is defined in fst.h
|
||||
if(id == "RPWE41" || id == "RPWZ41" || id == "SPXP41") // Prince of Persia, Rival Swords
|
||||
@ -1332,7 +1333,7 @@ void CMenu::_launchGame(dir_discHdr *hdr, bool dvd)
|
||||
if(D2X_PatchReturnTo(returnTo) >= 0)
|
||||
memset(&returnTo, 0, sizeof(u32));
|
||||
}
|
||||
if(emulate_mode && !neek2o() && CurrentIOS.Type == IOS_TYPE_D2X)
|
||||
if(emulate_mode)
|
||||
{
|
||||
/* Enable our Emu NAND */
|
||||
DeviceHandle.UnMountAll();
|
||||
@ -1459,7 +1460,7 @@ struct IMD5Header
|
||||
u32 filesize;
|
||||
u8 zeroes[8];
|
||||
u8 crypto[16];
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
void CMenu::_gameSoundThread(CMenu *m)
|
||||
{
|
||||
|
@ -785,8 +785,9 @@ int CMenu::main(void)
|
||||
else if(Sys_GetExitTo() == EXIT_TO_SMNK2O || Sys_GetExitTo() == EXIT_TO_WFNK2O)
|
||||
{
|
||||
string emuPath;
|
||||
m_current_view = COVERFLOW_CHANNEL; /* So we get the NAND path */
|
||||
_FindEmuPart(emuPath, false);
|
||||
Sys_SetNeekPath(emuPath.size() > 1 ? emuPath.c_str() : NULL);
|
||||
Sys_SetNeekPath(NandHandle.Get_NandPath());
|
||||
}
|
||||
//gprintf("Saving configuration files\n");
|
||||
m_cfg.save();
|
||||
|
@ -116,6 +116,8 @@ int CMenu::_FindEmuPart(string &emuPath, bool skipchecks)
|
||||
return -1;
|
||||
else if((skipchecks || _TestEmuNand(emuPart, tmpPath, true)))
|
||||
{
|
||||
NandHandle.SetNANDEmu(emuPart);
|
||||
NandHandle.SetPaths(tmpPath, DeviceName[emuPart]);
|
||||
emuPath = tmpPath;
|
||||
return emuPart;
|
||||
}
|
||||
|
@ -27,6 +27,7 @@
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <unistd.h>
|
||||
#include <gccore.h>
|
||||
#include "BNSDecoder.hpp"
|
||||
#include "memory/mem2.hpp"
|
||||
|
||||
@ -150,7 +151,7 @@ struct BNSHeader
|
||||
u32 infoSize;
|
||||
u32 dataOffset;
|
||||
u32 dataSize;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct BNSInfo
|
||||
{
|
||||
@ -188,20 +189,20 @@ struct BNSInfo
|
||||
u16 chan2LoopPredictiveScale;
|
||||
s16 chan2LoopPrevSamples[2];
|
||||
u16 chan2LoopPadding;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct BNSData
|
||||
{
|
||||
u32 fccDATA;
|
||||
u32 size;
|
||||
u8 data;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct ADPCMByte
|
||||
{
|
||||
s8 sample1 : 4;
|
||||
s8 sample2 : 4;
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct BNSADPCMBlock
|
||||
{
|
||||
@ -209,7 +210,7 @@ struct BNSADPCMBlock
|
||||
u8 coeffIndex : 3;
|
||||
u8 lshift : 4;
|
||||
ADPCMByte samples[7];
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct BNSDecObj
|
||||
{
|
||||
|
@ -24,7 +24,7 @@
|
||||
* for WiiXplorer 2010
|
||||
***************************************************************************/
|
||||
#include <unistd.h>
|
||||
|
||||
#include <gccore.h>
|
||||
#include "SoundHandler.hpp"
|
||||
#include "Mp3Decoder.hpp"
|
||||
#include "OggDecoder.hpp"
|
||||
|
@ -38,7 +38,7 @@ struct U8Header
|
||||
u32 headerSize;
|
||||
u32 dataOffset;
|
||||
u8 zeroes[16];
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
struct U8Entry
|
||||
{
|
||||
@ -53,7 +53,7 @@ struct U8Entry
|
||||
u32 fileLength;
|
||||
u32 numEntries;
|
||||
};
|
||||
} __attribute__((packed));
|
||||
} ATTRIBUTE_PACKED;
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,8 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<app version="4.0.3">
|
||||
<app version="4.1">
|
||||
<name> WiiFlow</name>
|
||||
<coder>OverjoY, FIX94</coder>
|
||||
<version>r433</version>
|
||||
<version>4.1</version>
|
||||
<release_date>TBD</release_date>
|
||||
<short_description>USB Loader / Nand Emulator</short_description>
|
||||
<long_description>
|
||||
|
Loading…
Reference in New Issue
Block a user