mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-22 05:40:01 -06:00
Ban compression of Wii images until it has been tested. All sorts of minor cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@669 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -26,6 +26,7 @@
|
||||
|
||||
#include "Common.h"
|
||||
#include "CompressedBlob.h"
|
||||
#include "FileUtil.h"
|
||||
#include "Hash.h"
|
||||
|
||||
#ifdef _WIN32
|
||||
@ -35,11 +36,6 @@
|
||||
#include "../../../../Externals/zlib/zlib.h"
|
||||
#endif
|
||||
|
||||
#ifdef _WIN32
|
||||
#define fseek _fseeki64
|
||||
#endif
|
||||
|
||||
|
||||
namespace DiscIO
|
||||
{
|
||||
|
||||
@ -163,6 +159,11 @@ void CompressedBlobReader::GetBlock(u64 block_num, u8 *out_ptr)
|
||||
bool CompressFileToBlob(const char* infile, const char* outfile, u32 sub_type,
|
||||
int block_size, CompressCB callback, void* arg)
|
||||
{
|
||||
if (File::GetSize(infile) > 2000000000ULL) {
|
||||
PanicAlert("Sorry - compressing Wii games not yet supported.");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (IsCompressedBlob(infile))
|
||||
{
|
||||
PanicAlert("%s is already compressed! Cannot compress it further.", infile);
|
||||
|
@ -137,6 +137,7 @@ size_t CFileSystemGCWii::GetFileList(std::vector<const SFileInfo *> &_rFilenames
|
||||
if (_rFilenames.size())
|
||||
PanicAlert("GetFileList : input list has contents?");
|
||||
_rFilenames.clear();
|
||||
_rFilenames.reserve(m_FileInfoVector.size());
|
||||
for (size_t i = 0; i < m_FileInfoVector.size(); i++)
|
||||
_rFilenames.push_back(&m_FileInfoVector[i]);
|
||||
return m_FileInfoVector.size();
|
||||
@ -182,9 +183,11 @@ bool CFileSystemGCWii::InitFileSystem()
|
||||
|
||||
if (Root.IsDirectory())
|
||||
{
|
||||
m_FileInfoVector.clear();
|
||||
if (m_FileInfoVector.size())
|
||||
PanicAlert("Wtf?");
|
||||
u64 NameTableOffset = FSTOffset;
|
||||
|
||||
m_FileInfoVector.reserve(Root.m_FileSize);
|
||||
for (u32 i = 0; i < Root.m_FileSize; i++)
|
||||
{
|
||||
SFileInfo sfi;
|
||||
@ -194,7 +197,6 @@ bool CFileSystemGCWii::InitFileSystem()
|
||||
sfi.m_FileSize = Read32(Offset + 0x8);
|
||||
|
||||
m_FileInfoVector.push_back(sfi);
|
||||
|
||||
NameTableOffset += 0xC;
|
||||
}
|
||||
|
||||
|
@ -79,7 +79,7 @@ IVolume* CreateVolumeFromFilename(const std::string& _rFilename)
|
||||
{
|
||||
case DISC_TYPE_WII:
|
||||
case DISC_TYPE_GC:
|
||||
return(new CVolumeGC(pReader));
|
||||
return new CVolumeGC(pReader);
|
||||
|
||||
case DISC_TYPE_WII_CONTAINER:
|
||||
{
|
||||
@ -106,7 +106,7 @@ IVolume* CreateVolumeFromFilename(const std::string& _rFilename)
|
||||
|
||||
IVolume* CreateVolumeFromDirectory(const std::string& _rDirectory, bool _bIsWii)
|
||||
{
|
||||
if(CVolumeDirectory::IsValidDirectory(_rDirectory))
|
||||
if (CVolumeDirectory::IsValidDirectory(_rDirectory))
|
||||
return new CVolumeDirectory(_rDirectory, _bIsWii);
|
||||
|
||||
return NULL;
|
||||
|
@ -421,7 +421,7 @@ void CVolumeDirectory::WriteEntry(const File::FSTEntry& entry, u32& fstOffset, u
|
||||
m_virtualDisk.insert(make_pair(dataOffset, entry.physicalName));
|
||||
|
||||
// 4 byte aligned
|
||||
dataOffset = (dataOffset + entry.size + 3) & ~3;
|
||||
dataOffset = (dataOffset + entry.size + 3) & ~3ULL;
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user