diff --git a/Source/Core/DiscIO/DirectoryBlob.cpp b/Source/Core/DiscIO/DirectoryBlob.cpp index 6433c87822..cf63309d45 100644 --- a/Source/Core/DiscIO/DirectoryBlob.cpp +++ b/Source/Core/DiscIO/DirectoryBlob.cpp @@ -156,11 +156,7 @@ DirectoryBlobReader::DirectoryBlobReader(const std::string& root_directory) : m_root_directory(root_directory) { SetDiscHeaderAndDiscType(); - - constexpr u64 BI2_ADDRESS = 0x440; - constexpr u64 BI2_SIZE = 0x2000; - AddFileToContents(&m_virtual_disc, m_root_directory + "sys/bi2.bin", BI2_ADDRESS, BI2_SIZE); - + SetBI2(); BuildFST(SetDOL(SetApploader())); if (m_is_wii) @@ -282,6 +278,13 @@ void DirectoryBlobReader::SetDiscHeaderAndDiscType() } } +void DirectoryBlobReader::SetBI2() +{ + constexpr u64 BI2_ADDRESS = 0x440; + constexpr u64 BI2_SIZE = 0x2000; + AddFileToContents(&m_virtual_disc, m_root_directory + "sys/bi2.bin", BI2_ADDRESS, BI2_SIZE); +} + void DirectoryBlobReader::SetPartitionTable() { constexpr u64 PARTITION_TABLE_ADDRESS = 0x40000; diff --git a/Source/Core/DiscIO/DirectoryBlob.h b/Source/Core/DiscIO/DirectoryBlob.h index c156e877ac..abe1f4b164 100644 --- a/Source/Core/DiscIO/DirectoryBlob.h +++ b/Source/Core/DiscIO/DirectoryBlob.h @@ -77,6 +77,7 @@ private: bool ReadInternal(u64 offset, u64 length, u8* buffer, const std::set& contents); void SetDiscHeaderAndDiscType(); + void SetBI2(); void SetPartitionTable(); void SetWiiRegionData(); void SetTMDAndTicket();