summaryrefslogtreecommitdiff
path: root/Source/Core/DiscIO
AgeCommit message (Collapse)Author
2016-05-29SectorReader: Fix reading the last block of the disc.Pierre Bourdon
Regression from PR #3795.
2016-04-26DriveReader: Fix View > Show DrivesEmptyChaos
DriveReader::m_size was never initialized which was indirectly causing CGameListCtrl to crash Dolphin when it tried to insert a character at a negative index in a string. Reading one sector at a time is very inefficient and appears to be causing timing issues during boot so SectorReader has been enhanced to support batching. SectorReader has been given a working cache system.
2016-03-20properly open/close the file to avoid rapid open/close cyclesBhaaL
ES_OPENCONTENT and ES_CLOSECONTENT now call Open and Close respectively, as the old code did.
2016-03-20hide the distinction between WAD and File from ESBhaaL
instead, leave all the management with the NANDContentLoader. for file data (directly on the NAND), this opens the file on-demand and returns the requested chunk when asked for it. for on-the-fly decrypted WAD data, we just keep the decoded buffer in memory, like we've done before - except that we don't give away any objects we don't want to.
2016-03-20fix some style inconsistencies that drove me nutsBhaaL
2016-01-15DiscIO: Use specified Wii region for discsbooto
2016-01-07Merge pull request #3429 from sepalani/debug_vector_fixPierre Bourdon
Debug Builds: Fixed vector assertion
2016-01-05DolphinWX: Stop using XPM imagesJosJuice
Using the XPM format for images has become a maintenance problem because people don't know how to create them. This commit removes all XPM images and all C files that contain PNG images. DolphinWX now uses the PNGs in the Resources folder instead, just like DolphinQt and DolphinQt2 do.
2016-01-03Debug Builds: Fixed vector assertionSepalani
2015-12-22Merge pull request #3362 from lioncash/memoryMathew Maidment
NANDContentLoader/WiiWAD: Get rid of raw delete and new
2015-12-21Silence -Wshadow and -Wmaybe-uninitialized warnings.Rohit Nirmal
2015-12-19Volume: Make GetTMD return a vectorLioncash
2015-12-19NANDContentLoader/WiiWAD: Get rid of raw delete and newLioncash
2015-12-15Merge pull request #3309 from JosJuice/reload-banner-without-volumeMarkus Wick
Don't read from volume when reloading Wii banners
2015-12-15Merge pull request #3265 from JosJuice/volumedirectory-simplificationsMarkus Wick
DiscIO: Small VolumeDirectory simplifications
2015-12-15Merge pull request #3127 from JosJuice/read-returnMarkus Wick
DiscIO: Improve error handling for reading integers
2015-12-15Merge pull request #3270 from JosJuice/more-translationsMarkus Wick
Mark more strings for translation
2015-12-14DiscIO: Improve DiscScrubber::ReadFromVolume error handlingJosJuice
2015-12-14DiscIO: Improve CBlobBigEndianReader error handlingJosJuice
2015-12-14DiscIO: Unify CBlobBigEndianReaderJosJuice
2015-12-14DiscIO: Improve IVolume::Read32 error handlingJosJuice
Callers can now check whether reads fail, either by checking the return value or by setting the buffer to a known bad value and seeing if it stays untouched. I've added error checks to FileSystemGCWii and Boot_BS2Emu, but not to Boot since it doesn't check any of its other reads either.
2015-12-08Fix building with PCH disabled.Rohit Nirmal
2015-12-08DiscIO: Get rid of a few explicit deletesLioncash
2015-12-07DiscIO: Make factory methods return unique_ptrsLioncash
Rather than rely on the developer to do the right thing, just make the default behavior safely deallocate resources. If shared semantics are ever needed in the future, the constructor that takes a unique_ptr for shared_ptr can be used.
2015-12-03Don't read from volume when reloading Wii bannersJosJuice
Should make loading cached Wii games that lack banners slightly faster.
2015-11-28DiscIO: Don't use PlainFileReader in VolumeDirectoryJosJuice
Blobs are not for regular file reading.
2015-11-21Added info for Rodea The Sky SoldierTony Drake
2015-11-20Mark more strings for translationJosJuice
2015-11-18Merge pull request #3206 from JosJuice/limit-filesystem-size-2Markus Wick
Limit size of loaded file systems
2015-11-17DiscIO: Small VolumeDirectory simplificationsJosJuice
2015-11-17Merge pull request #3181 from JosJuice/scrub-directoriesScott Mansell
Don't reserve space for directories when scrubbing
2015-11-10DiscIO: drop unused stuffTillmann Karras
2015-11-01DiscScrubber: Add another nullptr checkJosJuice
2015-10-28Limit size of loaded file systemsJosJuice
If a disc image is malformed in a specific way, Dolphin will try to allocate a lot of memory, making it crash. To avoid that, this change adds an artificial limit for the size of file systems that Dolphin will try to load.
2015-10-18Remove length parameter from DiscScrubber::ReadFromVolumeJosJuice
The function only makes sense when the length is 4. All current callers use the length 4, so this change doesn't affect any behavior.
2015-10-17Remove DiscScrubber::GetDOLSize in favor of IFileSystem::GetBootDOLSizeJosJuice
IFileSystem::GetBootDOLSize acts the same. The only difference is that it reads the DOL offset on its own, but this change makes that optional.
2015-10-17Don't reserve space for directories when scrubbingJosJuice
The offset in a directory FileInfo is an FST offset, not a disc offset. Treating it as a disc offset doesn't make sense. Directories don't take up space outside of the FST, so they don't need to be marked as used. The old behavior may have prevented some scrubbable areas from being scrubbed.
2015-10-16Merge pull request #3139 from JosJuice/fix-wii-rootflacs
Mark which Wii root to use in the NAND path code
2015-10-16Mark which Wii root to use in the NAND path code.comex
It's used by both the GUI to do things like install WADs and check up on the system menu, in which case the global root should be used, and by /dev/es, in which case the local one should. The latter isn't *terribly* useful today, since no contents will ever be installed in temporary roots (although it's still relevant for data directories), but converting the whole thing makes sense because then it will Just Work once the entire NAND is synced. Because it would have been a bit of work to split it up (but I can if desired), this commit also contains some basic cleanup of NANDContentLoader: (1) The useless interface class INANDContentLoader is removed and the methods are changed to just return CNANDContentLoader (the only implementation); (2) CNANDContentManager is changed to use unique_ptr and cleaned up a bit.
2015-10-12DolphinWX: decompress discs to calculate MD5 hashTillmann Karras
2015-10-12DiscIO: implement CISOBlob::GetDataSize()Tillmann Karras
This is a best-effort approach, since the CISO format does not save the original file size.
2015-10-12DiscIO: implement WbfsBlob::GetDataSize()Tillmann Karras
2015-10-12DiscIO: fix reading the last sector in WBFSTillmann Karras
Instead of rounding down, round up.
2015-10-12DiscIO: merge initial WBFS readsTillmann Karras
2015-10-12DiscIO: pre-swap WLBATillmann Karras
2015-10-12DiscIO: use std::min() in WBFSTillmann Karras
2015-10-07NANDContentLoader: Replace a string rbegin() call with a back() callLioncash
2015-10-03Merge pull request #3091 from Tilka/mbedtlsshuffle2
Update mbed TLS (PolarSSL)
2015-10-03Merge pull request #3102 from rohit-n/build-pchLioncash
Fix building with PCH disabled.
2015-09-29Merge pull request #3099 from lioncash/bannerflacs
VolumeGC: Get rid of banner pointer casts