summaryrefslogtreecommitdiff
path: root/Source/Core/DiscIO/Src/NANDContentLoader.cpp
diff options
context:
space:
mode:
authorsl1nk3.s <sl1nk3.s@gmail.com>2009-06-08 18:07:45 +0000
committersl1nk3.s <sl1nk3.s@gmail.com>2009-06-08 18:07:45 +0000
commite384c91313bc6a50644212ef09bad055ff5df1b8 (patch)
treede16a0e776bf51fb282203d42198e698fce032fa /Source/Core/DiscIO/Src/NANDContentLoader.cpp
parent1a6b9d8174d396debecfc54494d839283b819087 (diff)
Fix error #002 for Wad games, also fix the Wii menu black screen, this is still a bit hacky as we don't know where to read the IOS rev, but hey it works :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3378 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core/DiscIO/Src/NANDContentLoader.cpp')
-rw-r--r--Source/Core/DiscIO/Src/NANDContentLoader.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/Source/Core/DiscIO/Src/NANDContentLoader.cpp b/Source/Core/DiscIO/Src/NANDContentLoader.cpp
index b80156973f..eef2586b7b 100644
--- a/Source/Core/DiscIO/Src/NANDContentLoader.cpp
+++ b/Source/Core/DiscIO/Src/NANDContentLoader.cpp
@@ -123,6 +123,7 @@ public:
bool IsValid() const { return m_Valid; }
u64 GetTitleID() const { return m_TitleID; }
+ u16 GetIosVersion() const { return m_IosVersion; }
u32 GetBootIndex() const { return m_BootIndex; }
size_t GetContentSize() const { return m_Content.size(); }
const SNANDContent* GetContentByIndex(int _Index) const;
@@ -138,6 +139,7 @@ private:
bool m_Valid;
u64 m_TitleID;
+ u16 m_IosVersion;
u32 m_BootIndex;
u16 m_numEntries;
u16 m_TileVersion;
@@ -166,6 +168,7 @@ CNANDContentLoader::CNANDContentLoader(const std::string& _rName)
: m_TitleID(-1)
, m_BootIndex(-1)
, m_Valid(false)
+ , m_IosVersion(0x09)
{
if (File::IsDirectory(_rName.c_str()))
{
@@ -233,7 +236,8 @@ bool CNANDContentLoader::CreateFromDirectory(const std::string& _rPath)
m_TileVersion = Common::swap16(pTMD + 0x01dc);
m_numEntries = Common::swap16(pTMD + 0x01de);
m_BootIndex = Common::swap16(pTMD + 0x01e0);
- m_TitleID = Common::swap64(pTMD + 0x018C);
+ m_TitleID = Common::swap64(pTMD + 0x018c);
+ m_IosVersion = Common::swap16(pTMD + 0x018a);
m_Content.resize(m_numEntries);
@@ -325,7 +329,8 @@ bool CNANDContentLoader::ParseTMD(u8* pDataApp, u32 pDataAppSize, u8* pTicket, u
u32 numEntries = Common::swap16(pTMD + 0x01de);
m_BootIndex = Common::swap16(pTMD + 0x01e0);
- m_TitleID = Common::swap64(pTMD + 0x018C);
+ m_TitleID = Common::swap64(pTMD + 0x018c);
+ m_IosVersion = Common::swap16(pTMD + 0x018a);
u8* p = pDataApp;