Commit Graph

643 Commits

Author SHA1 Message Date
JosJuice 272f9d3cbc FileSystemGCWii: Allow reading files partially 2015-05-03 15:44:24 +02:00
JosJuice 0d9ca081bb Remove CFileSystemGCWii::Read32
A function that does the same thing was added to IVolume in 4cd00e3.
2015-05-03 11:39:20 +02:00
JosJuice ee694e327a Get rid of banner loaders and move their functionality to volumes
Having some data available in banner loaders and some other data
data available in volumes gets messy, especially with GetNames(),
which is available in both but returns different results
depending on which one is used. This change drops support
for reading names and descriptions from Wii save data.
2015-04-28 23:44:29 +02:00
JosJuice 04fcb72e0b Fix reading Wii FST size 2015-04-28 17:20:33 +02:00
JosJuice d43a920924 Filesystem: Return file list reference instead of modifying argument 2015-04-28 12:48:05 +02:00
JosJuice 235ecfbed7 Return GetNames languages, to avoid hardcoded language lists in callers
This makes the code cleaner and also leads to some user-visible changes:

The wx game properties will no longer let the user
select WAD languages that don't have any names.

The Qt game list will now display names using the languages
set in the configuration instead of always using
English for PAL GC games and Japanese for WADs.

If a WAD doesn't have a name in the user's preferred language,
English is now selected as a fallback before Japanese.
2015-04-23 08:14:39 +02:00
Lioncash f5c72c5b1a DiscIO: Add a missing header to Volume.h 2015-04-20 21:10:31 -04:00
Matthew Parlane 571eee8648 Merge pull request #2225 from JosJuice/remove-volumehandler
Get rid of VolumeHandler
2015-04-21 11:18:57 +12:00
Stevoisiak 7c1ab2911a Move down Country_World
The countries are sorted alphabetically. This should have been changed
when the variable was renamed from Country_International to
Country_World
2015-04-08 18:55:16 -04:00
JosJuice 4cd00e366c Get rid of VolumeHandler
VolumeHandler is basically just a wrapper around a single IVolume object.
This change moves that object to DVDInterface, moves the Read32
function to IVolume, and gets rid of the rest of VolumeHandler.
2015-04-05 10:09:48 +02:00
Michael Ehrenreich 9387603fcf Improve error handling in DiscIO::CompressFileToBlob and DecompressBlobToFile 2015-03-17 09:01:26 +01:00
JosJuice 66bb3000c2 Don't construct NANDContentLoader classes before Main.cpp runs
The cUIDsys constructor writes to <Wii user path>/sys/uid.sys.
This must not be done before Main.cpp sets the correct user paths.
2015-03-09 16:08:32 +01:00
Lioncash b7514955e5 Merge pull request #2113 from Stevoisiak/VolumeCleanup
Basic volume code cleanup
2015-03-05 12:18:53 -05:00
JosJuice 96c4b332f6 FileMonitor: Check log level in addition to FileMonitor checkbox
This is good for performance when FileMontior is selected
but the log level only is set to notice or warning.
The ability to do this wasn't available until recently:
1ed41672f5
2015-03-03 11:33:16 +01:00
Stevoisiak 492aa5c391 DiscIO: Get rid of unsafe cast 2015-02-28 22:03:53 -05:00
Stevoisiak 5346e791bc VolumeWad: change titlever to title_version 2015-02-28 21:42:16 -05:00
Stevoisiak eff924e9e2 General Formatting 2015-02-28 19:33:27 -05:00
Stevoisiak ede4977d12 VolumeWiiCrypted: Implement IsDiscTwo()
Allows us to check if a Wii game is marked as Disc 2.
2015-02-26 17:10:18 -05:00
Stevoisiak f72a559958 Rearranged Volume header files 2015-02-26 16:57:32 -05:00
Stevoisiak 06cb85991e De-capitalized CountryCode 2015-02-26 16:57:31 -05:00
Stevoisiak df2f6d137e VolumeWad: Move country identification to GetCountry()
Brings the code more in line with the rest of the game volume code
2015-02-26 16:55:17 -05:00
Stevoisiak d3190ec4f1 VolumeWad: Private variables for offset values 2015-02-26 16:55:16 -05:00
skidau 793abccb5e Merge pull request #1942 from Buddybenj/No-Intro
Replace Country Names With No-Intro Names
2015-02-23 12:56:28 +11:00
Markus Wick 95c48b2be7 Merge pull request #2018 from JosJuice/gameini-region-wildcard
Support game INIs that match all regions
2015-02-21 15:47:57 +01:00
Buddybenj 265a21a565 Replace Country Names With No-Intro Names 2015-02-17 18:50:10 -06:00
skidau 61b19bda3e Merge pull request #2042 from unknownbrackets/gcz-fix
DiscIO: On decompress to file, write last blocks correctly
2015-02-14 13:46:06 +11:00
Pierre Bourdon 4ceae57713 Merge pull request #2015 from Stevoisiak/WAD-Version-Check
VolumeWad: Return version number for WADs
2015-02-13 22:09:30 +01:00
Unknown W. Brackets df5857b5af DiscIO: On decompress to file, write last blocks. 2015-02-12 20:30:11 -08:00
JosJuice e186104960 Don't use revision-specific unique ID strings outside of CoreParameter 2015-02-11 19:01:04 +01:00
magumagu 0f96a0104e Merge pull request #1752 from Buddybenj/clean-up
Clean Up
2015-02-10 11:39:14 -08:00
JosJuice 28b441ebea VolumeWiiCrypted: Replace some hardcoded values with constants 2015-02-08 10:31:17 +01:00
Stevoisiak b578abfbaa VolumeWad: Return version number for WADs 2015-02-05 11:27:57 -05:00
JosJuice 521ccd7b44 VolumeWiiCrypted: Decryption optimization
The block doesn't have to be read if it already is in m_pBuffer.
2015-01-26 15:59:25 +01:00
Benjamin Przybocki 4f324ad742 Clean Up 2015-01-24 17:10:21 -06:00
Ryan Houdek 80e6367e46 Merge pull request #1869 from Stevoisiak/GeneralConsistency
Minor consistency changes
2015-01-21 13:46:53 -06:00
Ryan Houdek f9fc9d47c0 Merge pull request #1895 from JosJuice/isvolumewiidisc
Don't read from disk when checking volume type
2015-01-21 13:45:28 -06:00
skidau 6f61f90dab Merge pull request #1777 from JosJuice/filemonitor-volumedirectory
Add FileMonitor support for VolumeDirectory
2015-01-20 12:32:42 +11:00
JosJuice ace060748b Don't read from disk when checking volume type
Should be faster than relying on the OS to cache the magic words.
Also gets rid of the odd recursive call in VolumeDirectory.
2015-01-17 13:21:02 +01:00
Stevoisiak f31b688cf5 More minor consistency changes 2015-01-12 22:28:12 -05:00
Matthew Parlane b3474c8218 Merge pull request #1796 from Stevoisiak/cacheRevisionNote
Added CACHE_REVISION warnings
2015-01-13 08:36:50 +13:00
Tres Walsh e3e290123b Fix compiler error for win64 (SFileInfo doesn't get used much so a copy won't kill us) 2015-01-11 15:59:50 -08:00
Tres Walsh 8ee601d32b Fix variable name ambiguity 2015-01-11 13:54:20 -08:00
Tres Walsh 9e541f6d2d Reduce number of allocations in CFileSystemGCWii::BuildFilenames
Modify SFileInfo to use a default move constructor, and no copy constructor.
Modify SFileInfo to use member initializers.
2015-01-11 13:42:50 -08:00
Stevoisiak fe49427688 Additional CACHE_REVISION increment warnings
GameFile.cpp warnings for DolphinQt,
ISOFile.cpp warnings for DolphinWX
2015-01-11 00:25:36 -05:00
JosJuice 358183e34a Fix 4.0-4901 VolumeDirectory stack overflow
I actually fixed this once, but then I broke it in a
failed attempt to optimize. VolumeHandler::IsWii calls
CVolumeDirectory::Read(0x18, 4, &MagicWord, false);
2015-01-09 22:50:07 +01:00
skidau 3738d27b24 Merge pull request #1776 from JosJuice/cleanrip-wii-discs
Fix CleanRip reading Wii discs
2015-01-03 10:42:51 +11:00
Stevoisiak 2e1d8d7ac0 Added identifier for country code 'B'
Only used by the American version of Ufouria: The Saga
2014-12-30 19:57:14 -05:00
JosJuice bb93336ecf DiscIO: Replace "raw" functions with "decrypt" parameters
This is intended to make decryption look less implicit in the code.
2014-12-28 10:35:48 +01:00
JosJuice 7f04a23e23 Add FileMonitor support for VolumeDirectory 2014-12-27 20:13:31 +01:00
JosJuice 72f8f243c7 Never decrypt data when using DI command 0xA8
CleanRip relies on this when ripping Wii discs.
2014-12-27 13:49:25 +01:00
JosJuice 1618d31523 FileMonitor: Get rid of "GC" from names and comments 2014-12-25 11:12:04 +01:00
JosJuice 8624461315 Re-add FileMonitor support for Wii discs
This in done in the same way as GC discs, unlike the previous implementation.
2014-12-25 11:01:18 +01:00
JosJuice 467b3e6baf DiscIO: Clear error status when reading file 2014-12-14 13:16:21 +01:00
Lioncash f14f0caea6 DiscIO: Remove some explicit deletes 2014-12-04 11:39:20 -05:00
skidau b9b3277fb5 Merge pull request #1618 from JosJuice/dvd-low-open-partition
Fix Wii disc partitions
2014-12-03 21:24:56 +11:00
JosJuice a2566bd397 DiscIO: Safety check when allocating memory for TMD 2014-12-03 10:54:09 +01:00
magumagu 4bb48d09dd DiskIO: Clean up GetTMD() API. 2014-11-30 16:38:13 +01:00
magumagu b1df4e5986 Make DVDLowOpenPartition actually change partitions. 2014-11-30 16:01:05 +01:00
Unknown W. Brackets 815b7bec96 DiscIO: Change a memset() to zero initialization. 2014-11-27 11:12:17 -08:00
Unknown W. Brackets f54bf81520 DiscIO: Avoid zeroing buffer when compressing gcz.
This saves 6% time.
2014-11-27 08:58:09 -08:00
Unknown W. Brackets 2635e7d9ea DiscIO: Decompress to file using a larger buffer.
This improves performance by around 20% for me, and the memory use impact
is negligible considering Dolphin is otherwise unusable.
2014-11-27 08:34:44 -08:00
Unknown W. Brackets f2f83a0c60 DolphinWX: Allow cancelling gcz compression. 2014-11-27 07:53:28 -08:00
Stevoisiak 6da394a4d0 More formatting and consistency fixes 2014-11-24 17:16:59 -05:00
Steven Vascellaro 695bbac36a Removed SDK flag
SDK is not an official Nintendo country code, and is not actually used
by any official software.
2014-11-18 19:44:17 -05:00
Stevoisiak f1a26ff654 Various country flag improvements
* Added country flags for games from Netherlands and Spain
* Added separate category for Region Free games (Uses European flag as placeholder)
* Added missing country filter options in "show regions" menu
* Rearranged country filters for readability
* Incremented CACHE_REVISION

Also fixed various country filters not showing up as options in the "Show regions" menu.
2014-11-18 19:44:16 -05:00
Rachel Bryk fa18518cef Fix reading wii revisions. 2014-11-15 00:39:54 -05:00
Rachel Bryk fa5e3ec292 Implement GetRevision() for wii disks. 2014-11-14 21:06:26 -05:00
Stevoisiak b25e1a2eb4 Various formatting and consistency fixes 2014-11-13 22:42:18 -05:00
comex 7747c9efbb Merge pull request #1429 from lioncash/concat
FileSystemGCWii: Shorten some string concatenations
2014-10-28 23:38:58 -04:00
comex 3247f28048 Merge pull request #1430 from lioncash/voldir
VolumeDirectory: Pass std::string by reference for SetUniqueID/SetName
2014-10-28 23:38:21 -04:00
Stevoisiak 00620ea729 Added flags for Russia and Australia 2014-10-28 23:04:24 -04:00
Lioncash 56bc58b9f4 VolumeDirectory: Pass std::string by reference for SetUniqueID/SetName 2014-10-28 14:18:54 -04:00
Lioncash d1d70c1a7d FileSystemGCWii: Shorten some string concatenations
Just does it all on one line instead.
2014-10-28 13:41:42 -04:00
Lioncash 00b3cc3b09 VolumeCreator: Make master key arrays static
Only used within this translation unit.
2014-10-12 15:07:39 -04:00
Lioncash 6cfa579870 VolumeGC: Use regular return type declaration for GetStringDecoder 2014-10-07 21:15:14 -04:00
Rohit Nirmal 46057db37d Fix build failing when disabling precompiled headers. 2014-09-19 18:17:51 -04:00
Lioncash 4db2af2d42 DiscIO: Remove unnecessary break statements. 2014-09-12 11:34:34 -04:00
skidau 4cb25633e1 Merge pull request #1048 from lioncash/discio
DiscIO: Minor changes to VolumeDirectory.
2014-09-12 11:31:29 +10:00
Lioncash b06ec302d1 Remove some unnecessary semicolons 2014-09-11 13:05:31 -04:00
Lioncash 9601f5ec5f DiscIO: Get rid of some casts and a c_str call in VolumeDirectory 2014-09-09 19:01:20 -04:00
Lioncash b34f2a78f5 DiscIO: Simplify GetUniqueID in VolumeDirectory 2014-09-09 18:57:45 -04:00
Rohit Nirmal fbc64984ca Include CommonTypes.h instead of Common.h. 2014-09-08 15:39:58 -04:00
shuffle2 9302218a19 Merge pull request #851 from lioncash/logg
Common: Kill off duplicate log warning definitions
2014-09-06 12:35:19 -07:00
Lioncash 690ed8580c Common: Kill off duplicate log warning definitions
Also embed the log checks rather than using macros
2014-09-06 15:11:29 -04:00
Rohit Nirmal cf8d1c9197 FileHandlerARC: Remove FileHandlerARC. 2014-09-05 12:53:41 -04:00
Rohit Nirmal a3d9b22c27 BannerLoaderWii: Removed #if 0'd code. 2014-09-05 12:52:29 -04:00
shuffle2 532b7bb7da Merge pull request #893 from rohitnirmal/scan-build-fixes
Scan build fixes
2014-09-02 23:15:18 -07:00
Shawn Hoffman 266992684d msvc: remove some remnants of SDL and DSound from projects and general cleanup. 2014-09-01 21:27:44 -07:00
Lioncash 1977ea42ae DiscIO: Prefix class member variables with "m_" 2014-09-01 15:48:02 -04:00
Lioncash 4cb46879bc DiscIO: Move some raw pointers over to unique_ptr 2014-08-31 14:48:57 -04:00
Lioncash 55a0034dd5 DiscIO: Clean up brace placements 2014-08-30 18:06:43 -04:00
Lioncash 77aef014a0 Merge pull request #909 from lioncash/void
Get rid of C-style empty function parameter indicators
2014-08-30 15:28:47 -04:00
Lioncash 1d706b2311 Get rid of C-style empty function parameter indicators 2014-08-30 15:23:48 -04:00
Lioncash cee3362e33 DiscIO: Get rid of unnecessary struct differencing 2014-08-29 20:07:55 -04:00
Lioncash 6955e023a0 Merge pull request #877 from lioncash/voldir
DiscIO: Move VolumeDirectory off of raw pointers
2014-08-28 04:11:33 -04:00
Rohit Nirmal 9e340b1c81 Initialize variables to silence garbage return warning from scan-build. 2014-08-27 20:35:20 -05:00
Lioncash 5082afa670 DiscIO: Move VolumeDirectory off of raw pointers 2014-08-26 00:23:16 -04:00
Lioncash f18fec81fe DiscIO: Make the unordered set in IsSoundFile static
Doesn't need to be instantiated every time the function is called.
2014-08-25 19:56:09 -04:00
Shawn Hoffman f1b82a34b2 Windows: Use a shared precompiled header for dolphin code under Source/ 2014-08-14 23:51:13 -07:00
Lioncash 4fa71dd59e Remove fakepoll.h.
It was only used for Windows XP and lower.

This also bumps the _WIN32_WINNT define in the stdafx precompiled headers to set the minimum version as Windows Vista.
2014-07-26 22:53:40 -04:00
Scott Mansell d4a2afe345 Fix another protential issue with casting.
Another issue from #334 with the casting moved from the output of
min to it's inputs.

This is a non-issue on 64 bit machines, but if dolphin is compiled
on an OS with size_t == u32 (say ARM) then remainingSize could be
truncated.

Restored the casting to the original order before #334.
2014-07-15 01:38:05 +12:00
degasus 6d3f249dcc mark all local variables as static 2014-07-11 16:10:20 +02:00
degasus 22e1aa5bb4 mark all local functions as static 2014-07-11 16:07:23 +02:00
Tillmann Karras d3fa8a6167 Reorder class initializer lists 2014-07-04 03:53:22 +02:00
Lioncash 0332d4d76f Merge pull request #539 from jordan-woyak/fix-extract-directory
Fix ISO Directory extraction.
2014-06-29 21:35:46 -04:00
Lioncash f78b94077e DiscIO: Centralize the banner pointer and validity boolean into IBannerLoader
These are both used within the banner loaders, and IsValid is exactly the
same. So this makes sense.
2014-06-29 15:40:18 -04:00
Lioncash d800b5fb74 DiscIO: Fix extra tabs in the banner loader headers 2014-06-29 15:31:44 -04:00
Jordan Woyak 3805c4967f Fix ISO Directory extraction. 2014-06-29 14:22:06 -05:00
Lioncash ca5340ebde Centralize the logging code into its own folder in Common. 2014-06-25 22:11:42 -04:00
Lioncash 8b13afbb8e Remove the 32-bit config platform from the VS solution and projects 2014-06-24 22:07:26 -04:00
Lioncash ce54c1e571 Kill off replaceable usages of s[n]printf. 2014-06-18 19:53:38 -04:00
Paul Olszewski 5d793881b0 Fix the capitalization of "GameCube" throughout the project. 2014-06-08 11:24:49 +09:00
Lioncash 49b0eef393 Remove the min/max functions in CommonFuncs.
The algorithm header has the same functions.
2014-05-29 21:44:41 -04:00
Pierre Bourdon 664c8d30a0 Remove all trailing whitespaces from our codebase. 2014-03-29 11:05:44 +01:00
Ryan Houdek 5310d6d2ea Fix a crash that got recently introduced.
When CFileSystemGCWii::GetFileName can't find a valid filename it would return nullptr.
nullptr as a std::string throws an assert within the std lib.
So return an empty string and check if it is empty or not
2014-03-23 22:29:30 -05:00
Lioncash bd1ce18f90 Simplify file tree building for the filesystem view.
Technically this also simplifies on disc filename building in general.
2014-03-16 16:54:00 -04:00
Lioncash f325fc9634 Clean up FileHandlerARC.cpp/.h
- Removed parentheses from the returns.
- Put the function declaration headers back on a single line.
- Make FindFileInfo's parameter a const string reference.
2014-03-15 02:14:49 -04:00
Lioncash a82675b7d5 Kill off some usages of c_str.
Also changes some function params, but this is ok.
Some simplifications were also able to be made (ie. killing off strcmps with ==, etc).
2014-03-14 13:51:23 -04:00
Matthew Parlane 31cfc73a09 Fixes spacing for "for", "while", "switch" and "if"
Also moved && and || to ends of lines instead of start.
Fixed misc vertical alignments and some { needed newlining.
2014-03-11 00:35:07 +13:00
Matthew Parlane e05eca71ea Merge pull request #149 from lioncash/filemonitor-song-types
Add more sound file extensions to FileMonitor's IsSoundFile.
2014-03-10 13:45:23 +13:00
Tillmann Karras d802d39281 clang-modernize -use-nullptr
and s/\bNULL\b/nullptr/g for *.cpp/h/mm files not compiled on my machine
2014-03-09 21:14:26 +01:00
Tillmann Karras f28116b7da clang-modernize -add-override 2014-03-09 21:12:01 +01:00
Tillmann Karras c89f04a7c5 clang-modernize -loop-convert
and some manual adjustments
2014-03-09 21:11:59 +01:00
Lioncash b027c4d64e Add more sound file extensions to FileMonitor's IsSoundFile. 2014-03-09 12:46:01 -04:00
lioncash 2c8b9735ae Add two other formats to the list of extensions in IsSoundFile
.adx is used in various games, so this should definitely be here.
2014-03-04 08:57:07 -05:00
lioncash f39c757edf Simplify ShowSound() in FileMonitor.cpp.
Now if more sound types are found, they just need to simply be added to
the unordered set.

- Also changed ShowSound() to IsSoundFile()
- Fixed IsSoundFile’s definition in FileMonitor.h. This whole time it
has been defined as a void method, when in reality it was a bool
function.

- Changed the FileMonitor’s string parameters to be constant references.
2014-03-04 08:39:25 -05:00
Tillmann Karras 315a8ba1c0 Various changes suggested by cppcheck
- remove unused variables
- reduce the scope where it makes sense
- correct limits (did you know that strcat()'s last parameter does not
  include the \0 that is always added?)
- set some free()'d pointers to NULL
2014-02-28 12:43:20 +01:00
Tillmann Karras 6914eca167 Fix various warnings reported by clang
- mostly remove unused variables
- rename some generic JIT identifiers
2014-02-28 12:28:19 +01:00
Pierre Bourdon c698c07755 Make DiscIO/ mostly IWYU clean (and fix errors in rest of the project detected by this change). 2014-02-22 23:37:29 +01:00
Pierre Bourdon 8ea8da6ebc Fix more header sorting issues in DiscIO/ (now check-includes clean). 2014-02-20 01:01:10 +01:00
Lioncash 2afe215271 Convert all includes to relative paths. 2014-02-18 02:19:10 -05:00
Lioncash 3fd87a7636 Second and final pass of clearing out tabs. 2014-02-17 02:19:41 -05:00
Lioncash 6c4ee1753a Fix some vertical alignments
ie. uses spaces for alignment.
2014-02-16 20:12:05 -05:00
Jordan Woyak d6f6672522 Kill auto usage in CISOBlob.cpp per request. 2014-02-13 16:09:58 -06:00
Jordan Woyak cec8ac20fc Fixed issue 7020. CISO >4GB failure. Caused by integer overflow. 2014-02-13 15:47:42 -06:00
Tillmann Karras 404624bf0b Turn loops into range-based form
and some things suggested by cppcheck and compiler warnings.
2014-02-13 09:05:50 +01:00
lioncash d2038049f5 Replace all include guard ifdefs with "#pragma once" 2014-02-10 18:07:16 -05:00
Matthew Parlane 32bfcc034f Some tidy up of sprintf to StringFromFormat
Includes a small fix to SetupWiiMemory
2014-02-10 17:25:18 +13:00
Lioncash 40182a48a5 Cleanup enum indentations. 2014-02-09 16:16:10 -05:00
Pierre Bourdon e59f770ccb Revert "Merge pull request #49 from Parlane/sprintf_tidy"
Change broke the build on Debian stable.

This reverts commit 28755439b3, reversing
changes made to 64e01ec763.
2014-02-09 16:14:13 +01:00
Matthew Parlane ebff7974c3 Some tidy up of sprintf to StringFromFormat 2014-02-08 14:32:48 +13:00
Jasper St. Pierre 34692ab826 Remove unnecessary Src/ folders 2013-12-31 14:03:19 -05:00
Jasper St. Pierre 43e618682e Convert all vcxproj files to UNIX line endings 2013-12-31 14:03:18 -05:00
Chanwoong Kim c405d92c41 fixed issue 6852. 2013-12-07 16:07:47 +09:00
Ryan Houdek 4867937355 Add Read16/Read8 to the CBlobBigEndianReader so the key check is reading 8bit from the correct location to determin which key to use. Also change check to == 1 as suggested in the IRC channel on first implementation. Potentially fixes 6852. 2013-12-06 20:40:12 -06:00
Tillmann Karras 268bdf19ce Fix format string warnings 2013-11-13 04:01:16 +01:00
Ryan Houdek 68ba0f7f4e Add a comment to the magic value reading location. 2013-11-11 17:17:49 +00:00
Chanwoong Kim 22fef0da9b Fixed a bug that incorrectly recognized as 'GameCube'. when you open the Korean Wii Disc, which is re-encrypted with a common-key(g_MasterKey). 2013-11-12 01:05:30 +09:00
Matthew Parlane e15f628935 Fix {Read,Write}FileToString.
We should be using binary always.
2013-11-05 00:33:41 +13:00
comex 21610c2e54 Run code through clang-modernize -add-override to add 'override' decls. 2013-11-03 20:54:05 -05:00