diff --git a/Makefile.main b/Makefile.main
index e03ce3d5..a231267d 100644
--- a/Makefile.main
+++ b/Makefile.main
@@ -44,8 +44,7 @@ SOURCES := source \
DATA := data \
data/images \
data/help \
- data/sounds \
- data/save
+ data/sounds
INCLUDES := source
#---------------------------------------------------------------------------------
diff --git a/resources/wiiflow_game_booter/source/ChannelHandler.hpp b/resources/wiiflow_game_booter/source/ChannelHandler.hpp
index 78b5d603..629550de 100644
--- a/resources/wiiflow_game_booter/source/ChannelHandler.hpp
+++ b/resources/wiiflow_game_booter/source/ChannelHandler.hpp
@@ -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);
diff --git a/source/banner/Animator.h b/source/banner/Animator.h
index 962d8186..34af8665 100644
--- a/source/banner/Animator.h
+++ b/source/banner/Animator.h
@@ -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
{
diff --git a/source/banner/BannerTexture.hpp b/source/banner/BannerTexture.hpp
index de6cfa72..570e4613 100644
--- a/source/banner/BannerTexture.hpp
+++ b/source/banner/BannerTexture.hpp
@@ -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;
diff --git a/source/banner/Layout.h b/source/banner/Layout.h
index 2095dbe3..658df701 100644
--- a/source/banner/Layout.h
+++ b/source/banner/Layout.h
@@ -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
{
diff --git a/source/banner/Material.h b/source/banner/Material.h
index fa7f3487..77f1eff5 100644
--- a/source/banner/Material.h
+++ b/source/banner/Material.h
@@ -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;
diff --git a/source/banner/Pane.h b/source/banner/Pane.h
index b0374bfe..88af0b4d 100644
--- a/source/banner/Pane.h
+++ b/source/banner/Pane.h
@@ -57,7 +57,7 @@ public:
Vec2f scale;
float width;
float height;
- } __attribute__((packed));
+ } ATTRIBUTE_PACKED;
Pane() : header(NULL) {}
virtual ~Pane();
diff --git a/source/banner/QuadPane.h b/source/banner/QuadPane.h
index c0302449..b60d3088 100644
--- a/source/banner/QuadPane.h
+++ b/source/banner/QuadPane.h
@@ -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);
diff --git a/source/banner/Textbox.h b/source/banner/Textbox.h
index 96c815f8..406f2deb 100644
--- a/source/banner/Textbox.h
+++ b/source/banner/Textbox.h
@@ -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;
diff --git a/source/banner/WiiFont.h b/source/banner/WiiFont.h
index 3861c08f..2c3bf930 100644
--- a/source/banner/WiiFont.h
+++ b/source/banner/WiiFont.h
@@ -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 );
diff --git a/source/banner/Window.h b/source/banner/Window.h
index 97880818..08f44851 100644
--- a/source/banner/Window.h
+++ b/source/banner/Window.h
@@ -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 frames;
diff --git a/source/channel/nand.hpp b/source/channel/nand.hpp
index 5efa0377..45e3030b 100644
--- a/source/channel/nand.hpp
+++ b/source/channel/nand.hpp
@@ -53,7 +53,7 @@ typedef struct _uid
{
u64 TitleID;
u32 unused;
-} __attribute__((packed)) uid;
+} ATTRIBUTE_PACKED uid;
using namespace std;
diff --git a/source/channel/nand_save.hpp b/source/channel/nand_save.hpp
index 0f7bff05..da753fc0 100644
--- a/source/channel/nand_save.hpp
+++ b/source/channel/nand_save.hpp
@@ -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
{
diff --git a/source/defines.h b/source/defines.h
index f132e385..fc643e72 100644
--- a/source/defines.h
+++ b/source/defines.h
@@ -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"
diff --git a/source/devicemounter/PartitionHandle.h b/source/devicemounter/PartitionHandle.h
index ad441949..5d2ed189 100644
--- a/source/devicemounter/PartitionHandle.h
+++ b/source/devicemounter/PartitionHandle.h
@@ -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
diff --git a/source/gui/GameTDB.hpp b/source/gui/GameTDB.hpp
index 9016d27f..b56f64ca 100644
--- a/source/gui/GameTDB.hpp
+++ b/source/gui/GameTDB.hpp
@@ -26,6 +26,7 @@
#include
#include
+#include
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
{
diff --git a/source/gui/texture.hpp b/source/gui/texture.hpp
index b16e440b..412f1c98 100644
--- a/source/gui/texture.hpp
+++ b/source/gui/texture.hpp
@@ -21,7 +21,7 @@ struct TexData
u8 format;
u8 maxLOD;
bool thread;
-} __attribute__((packed));
+} ATTRIBUTE_PACKED;
class STexture
{
diff --git a/source/libwbfs/libwbfs.h b/source/libwbfs/libwbfs.h
index 745bc959..540d7f29 100644
--- a/source/libwbfs/libwbfs.h
+++ b/source/libwbfs/libwbfs.h
@@ -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
{
diff --git a/source/loader/playlog.c b/source/loader/playlog.c
index bf3b8861..e93e7f81 100644
--- a/source/loader/playlog.c
+++ b/source/loader/playlog.c
@@ -35,7 +35,7 @@ typedef union
u32 _checksum;
u32 data[0x1f];
};
-} __attribute__((packed)) playtime_t;
+} ATTRIBUTE_PACKED playtime_t;
playtime_t playrec_buf;
diff --git a/source/menu/menu.cpp b/source/menu/menu.cpp
index 760838aa..44188a4e 100644
--- a/source/menu/menu.cpp
+++ b/source/menu/menu.cpp
@@ -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)
{
diff --git a/source/menu/menu_game.cpp b/source/menu/menu_game.cpp
index dac7c94a..3c7fe2a1 100644
--- a/source/menu/menu_game.cpp
+++ b/source/menu/menu_game.cpp
@@ -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)
{
diff --git a/source/menu/menu_main.cpp b/source/menu/menu_main.cpp
index 54b9c430..51e26ff3 100644
--- a/source/menu/menu_main.cpp
+++ b/source/menu/menu_main.cpp
@@ -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();
diff --git a/source/menu/menu_nandemu.cpp b/source/menu/menu_nandemu.cpp
index d6133396..59e52397 100644
--- a/source/menu/menu_nandemu.cpp
+++ b/source/menu/menu_nandemu.cpp
@@ -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;
}
diff --git a/source/music/BNSDecoder.cpp b/source/music/BNSDecoder.cpp
index 2be65f41..929ebf50 100644
--- a/source/music/BNSDecoder.cpp
+++ b/source/music/BNSDecoder.cpp
@@ -27,6 +27,7 @@
#include
#include
#include
+#include
#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
{
diff --git a/source/music/SoundHandler.cpp b/source/music/SoundHandler.cpp
index 91f923aa..c8775b7a 100644
--- a/source/music/SoundHandler.cpp
+++ b/source/music/SoundHandler.cpp
@@ -24,7 +24,7 @@
* for WiiXplorer 2010
***************************************************************************/
#include
-
+#include
#include "SoundHandler.hpp"
#include "Mp3Decoder.hpp"
#include "OggDecoder.hpp"
diff --git a/source/unzip/U8Archive.h b/source/unzip/U8Archive.h
index 58c9a604..048d8f59 100644
--- a/source/unzip/U8Archive.h
+++ b/source/unzip/U8Archive.h
@@ -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" {
diff --git a/wii/apps/wiiflow/meta.xml b/wii/apps/wiiflow/meta.xml
index aa3f56f9..a43e9424 100644
--- a/wii/apps/wiiflow/meta.xml
+++ b/wii/apps/wiiflow/meta.xml
@@ -1,8 +1,8 @@
-
+
WiiFlow
OverjoY, FIX94
- r433
+ 4.1
TBD
USB Loader / Nand Emulator