JosJuice
79f3b5c5ff
Fix -Wshadow warning for file_entry
...
This struct didn't follow our naming convention,
so let's rename the struct itself instead of
the variable that triggered the warning.
2017-01-22 17:27:37 +01:00
BhaaL
07d1f18f53
CompressFileToBlob: add an explicit seek to make sure we're at the start
2017-01-21 21:42:58 +01:00
BhaaL
30e0f3d9ca
DecompressFileToBlob: don't assume success if decompression failed
2017-01-21 21:42:58 +01:00
BhaaL
24be8c0814
IsGCZBlob: try to leave the file position where it was before
...
callers that don't seek afterwards might be missing a few bytes that way.
2017-01-21 21:42:57 +01:00
Pierre Bourdon
334ddf754e
DiscIO: Export GetKeyFromTicket
...
This function has more uses than just in DiscIO (e.g. WFS).
2017-01-14 17:06:40 +01:00
Pierre Bourdon
650a1fdb1f
DiscIO: Implement functions to lookup tickets
...
These two functions load either a signed ticket or a raw ticket from the
emulated NAND.
The ticket signature skip is refactored out of the ticket writing in
order to be usable by the raw ticket reading function.
2017-01-14 17:06:40 +01:00
Pierre Bourdon
2ed352698f
IOS/ES: Implement ES_AddTicket.
...
Refactor the existing DiscIO::AddTicket to not require the caller to
pass the requested title ID. We do not have the title ID in the ES case,
and it needs to be extracted from the ticket. Since this is always a
safe operation to do (title ID is always in the ticket), the
implementation is made default.
2017-01-14 15:23:16 +01:00
Matthew Parlane
9838afea41
Merge pull request #4479 from GerbilSoft/feature/RVT-R.dev-key
...
Support for RVT-R disc images
2017-01-13 09:56:50 +13:00
Matthew Parlane
d346d4ced1
Merge pull request #4544 from JosJuice/region-enum
...
DiscIO: Add GetRegion function and Region enum
2017-01-13 09:19:27 +13:00
JosJuice
b1873264d7
WbfsBlob: Don't wrap file_entry in std::unique_ptr
...
There doesn't seem to be any reason for doing it.
2017-01-11 13:39:46 +01:00
JosJuice
0363be4320
WbfsBlob: Remove m_total_files
...
std::vector already keeps track of this for us.
2017-01-11 13:39:38 +01:00
JosJuice
5c02795af0
WbfsBlob: Only open each file once
...
The first file used to be opened once by
CreateBlobReader and once inside WbfsFileReader.
2017-01-11 13:33:27 +01:00
JosJuice
8d54bbc528
Don't create new IOFiles when creating a blob
...
...except for WBFS, which is special because
it has the ability to open multiple files.
2017-01-11 13:23:23 +01:00
JosJuice
d1ea00ed88
Only open file once when detecting blob type
2017-01-11 13:23:19 +01:00
Lioncash
a93861ab49
DiscScrubber: Don't take SFileInfo instances by value
...
Avoids unnecessary copies.
2017-01-04 20:12:49 -05:00
Lioncash
c52d1e735a
DiscScrubber: Use an unsigned loop index in ParseDisc
...
Prevents an implicit signed to unsigned conversion when assigning a
partition's group number.
2017-01-04 20:03:12 -05:00
Lioncash
6ff21c48cb
DiscScrubber: Correct printf specifiers
2017-01-04 19:56:39 -05:00
Lioncash
b1a2dec78a
DiscScrubber: Convert a #define into a typed constant
2017-01-04 19:53:31 -05:00
Lioncash
5b1aae0cbf
DiscScrubber: Make struct and variable names conformant to the coding style
2017-01-04 17:04:41 -05:00
Lioncash
4a9bc2340b
DiscScrubber: Convert into a class
...
Allows potential multiple scrubbers to run at once. Also gets rid of the
need to explicitly clean up resources.
2017-01-04 16:06:21 -05:00
JosJuice
f85266df20
SConfig: Replace bNTSC with m_region
...
This lets us get rid of VideoInterface::SetRegionReg,
a huge hack in CEXIMemoryCard, and some minor things.
2017-01-02 20:57:48 +01:00
JosJuice
66ea9f5cc1
DiscIO: Add GetRegion function and Region enum
...
Instead of needing different switch cases for
converting countries to regions in multiple places,
we now only need a single country-to-region switch case
(in DiscIO/Enums.cpp), and we get a nice Region type.
2017-01-02 20:57:11 +01:00
JosJuice
8e4a781974
VolumeDirectory: Modernize variable names
2016-12-26 11:45:22 +01:00
JosJuice
00aa2d37e9
VolumeDirectory: Don't use references inappropriately
...
Integers should be passed as pointers when a function
modifies them (to make it clear that they get modified).
2016-12-26 09:52:18 +01:00
Mat M
9c8e27e3bb
Merge pull request #4558 from JosJuice/volumedirectory-fst-sort
...
VolumeDirectory: Sort the FST
2016-12-25 17:38:58 -05:00
JosJuice
3196f697bb
VolumeDirectory: Use a range-based for loop in ComputeNameSize
2016-12-25 23:01:42 +01:00
JosJuice
f3987d13ea
VolumeDirectory: Make m_totalNameSize a local variable
...
After BuildFST finishes executing, it's never needed again.
2016-12-25 22:57:14 +01:00
JosJuice
a502f069e8
VolumeDirectory: Sort the FST
...
We can't rely on the OS returning files and directories
in a deterministic order, so we should sort them on our own
if we want VolumeDirectory to work for movies and netplay.
2016-12-25 22:35:38 +01:00
JosJuice
9bd514ed1c
Add TGC disc image compatibility
2016-12-18 18:57:36 +01:00
Léo Lam
31ccfffd38
Common: Add alignment header
...
Gets rid of duplicated alignment code.
2016-12-06 20:33:53 +01:00
David Korth
25fe999a79
Added support for Wii RVT-R disc images.
...
These disc images are encrypted and signed using a different set of keys.
We only care about the master key, so we check the signature issuer. If
it matches the debug issuer, then we'll use the RVT-R key. Otherwise,
the previous set of common and Korean keys are used.
2016-12-01 07:51:29 -05:00
Markus Wick
d5ca153c26
Merge pull request #4401 from JosJuice/rename-getuniqueid
...
DiscIO/SConfig: Rename GetUniqueID to GetGameID
2016-10-31 12:39:27 +01:00
JosJuice
1081497cad
DiscIO/SConfig: Rename GetUniqueID to GetGameID
...
We call this "game ID" everywhere else, and it's not
actually completely unique.
2016-10-29 15:24:02 +02:00
JosJuice
d6731d34ef
Remove VolumeCreator logs
...
These logs are very rarely useful and cause the issue
https://bugs.dolphin-emu.org/issues/9767
2016-10-29 13:08:24 +02:00
Lioncash
d9eb7c4e80
NANDContentLoader: Add IOFile forward declaration
...
This would previously fail to compile when included in files that do not
include FileUtil.h due to lack of a type declaration.
This moves the constructor and destructor into the cpp file in order to
satisfy the requirements of unique_ptr construction and deletion. That is,
unique_ptr requires a concrete type at the point of construction and
destruction. If the constructor or destructor is left in the header, then
at the point of construction or destruction, IOFile will still be
considered an incomplete type, as unique_ptr's deleter will still only be
able to see the forward declaration, which it can't use.
2016-10-14 20:27:22 -04:00
shuffle2
cc66f0336f
Merge pull request #3963 from JosJuice/banner-loaded-failure
...
VolumeGC: Set m_banner_loaded when banner loading fails
2016-10-03 06:33:52 -07:00
Mat M
ccfc081697
Merge pull request #4245 from aldelaro5/logs-levels-changes
...
Lots of Logs levels changes (also enable INFO level in every build)
2016-10-02 16:51:44 -04:00
aldelaro5
f0aa9b3751
Reorganise a ton of logs level
...
Most of this commits changes performance decreasing logs from info to debug and also cleans up innacurate levels.
2016-10-01 15:50:28 -04:00
Lioncash
61b977c914
WiiWad: Make WiiWAD constructor explicit
2016-09-25 18:04:11 -04:00
Lioncash
7de0d51345
WiiWad: Move static implementation details to cpp file
...
These functions don't actually depend on any state from the class
instance, so they don't really belong in the header, and are just
an implementation detail.
2016-09-25 18:04:04 -04:00
Lioncash
144c23dead
Filesystem: Return strings from GetFileName without the const qualifier
...
This is mostly pointless and can inhibit move construction
2016-09-18 12:56:25 -04:00
Lioncash
5aeedcd27c
NANDContentLoader: Remove unnecessary trailing semicolons
2016-09-14 20:12:25 -04:00
Lioncash
b43a26b90c
NANDContentLoader: Remove virtual specifier from CNANDContentLoader destructor
...
This class is marked final, so there's no need to declare it as virtual.
2016-09-14 19:45:52 -04:00
Lioncash
3196bf5392
NANDContentLoader: Specify constructors as explicit where applicable
...
Prevents implicit conversion.
2016-09-14 19:44:44 -04:00
Lioncash
89c65be703
NANDContentLoader: Delay vector construction until needed in Get()
...
No need to construct the vector right off the bat.
2016-09-14 19:41:41 -04:00
Lioncash
b1ffa74043
NANDContentLoader: Make CNANDContentData's Get function return by non-const value
...
const specifiers like this are practically pointless and can inhibit move construction.
2016-09-14 19:15:31 -04:00
EmptyChaos
eccec3c6d3
DiscIO: Fix NAND Memory Leak
...
CNANDContentData is a base class with a non-virtual destructor so
derived classes don't get destroyed causing them to leak resources.
2016-09-14 15:54:05 +10:00
Léo Lam
c1184957a5
Run clang-format on missed files
...
`clang-format`s files that lint missed because of the bug. Fortunately,
not much.
2016-08-11 21:14:39 +02:00
JosJuice
0a15aaaa12
Move DiscIO enums to a new file
...
At first there weren't many enums in Volume.h, but the number has been
growing, and I'm planning to add one more for regions. To not make
Volume.h too large, and to avoid needing to include Volume.h in code
that doesn't use volume objects, I'm moving the enums to a new file.
I'm also turning them into enum classes while I'm at it.
2016-07-13 17:29:27 +02:00
Pierre Bourdon
f4d2626d2b
Merge pull request #4005 from EmptyChaos/blockcache-bug
...
SectorReader: Minor cache bias bug
2016-07-13 12:11:19 +02:00
JosJuice
53e7eed28d
DiscScrubber: Fix issue 9356
2016-07-11 11:46:15 +02:00
EmptyChaos
9036b9d8e8
SectorReader: Fix cache line bias
...
Minor bug where SectorReader::GetEmptyCacheLine was biased towards
the first hit.
2016-07-09 02:27:35 +10:00
JosJuice
31226b8503
DiscScrubber: Replace unused blocks with 0x00 instead of 0xFF
2016-07-07 11:51:58 +02:00
JosJuice
202c9d58cd
VolumeGC: Set m_banner_loaded when banner loading fails
...
If banner loading fails once, it will very likely fail again.
Setting m_banner_loaded to true when banner loading fails
prevents LoadBannerFile from wasting time if it's called again.
Banner loading requires loading the file system, which takes a
noticeable amount of time, so this matters.
2016-06-28 18:05:44 +02:00
JosJuice
1878605d77
Undo some comment formatting changes from b5104a7
2016-06-25 18:07:10 +02:00
Rukai
b5104a79f1
GCVolume: supports reading all opening.bnr information
...
DQT2: Game properties dialog contains info tab giving information about the selected iso.
2016-06-26 00:03:59 +10:00
Pierre Bourdon
3570c7f03a
Reformat all the things. Have fun with merge conflicts.
2016-06-24 10:43:46 +02:00
Pierre Bourdon
c4240692b6
SectorReader: Fix reading the last block of the disc.
...
Regression from PR #3795 .
2016-05-29 18:26:04 +02:00
EmptyChaos
97d570f0c9
DriveReader: Fix View > Show Drives
...
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-04-26 21:24:08 +10:00
BhaaL
a449ef4e11
properly open/close the file to avoid rapid open/close cycles
...
ES_OPENCONTENT and ES_CLOSECONTENT now call Open and Close respectively,
as the old code did.
2016-03-20 13:10:51 +01:00
BhaaL
8a6d9e1e0b
hide the distinction between WAD and File from ES
...
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-20 13:10:50 +01:00
BhaaL
1e28d06f26
fix some style inconsistencies that drove me nuts
2016-03-20 13:10:47 +01:00
booto
92278886b9
DiscIO: Use specified Wii region for discs
2016-01-15 03:35:10 +08:00
Pierre Bourdon
bff79df363
Merge pull request #3429 from sepalani/debug_vector_fix
...
Debug Builds: Fixed vector assertion
2016-01-07 00:48:40 +01:00
JosJuice
81466d7fa3
DolphinWX: Stop using XPM images
...
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-05 19:11:58 +01:00
Sepalani
ba794272f5
Debug Builds: Fixed vector assertion
2016-01-03 13:17:26 +01:00
Mathew Maidment
1b69743ba1
Merge pull request #3362 from lioncash/memory
...
NANDContentLoader/WiiWAD: Get rid of raw delete and new
2015-12-22 06:39:12 -05:00
Rohit Nirmal
aaa89d4f73
Silence -Wshadow and -Wmaybe-uninitialized warnings.
2015-12-21 10:06:07 -06:00
Lioncash
cbeb7034eb
Volume: Make GetTMD return a vector
2015-12-19 18:00:44 -05:00
Lioncash
c78c54c546
NANDContentLoader/WiiWAD: Get rid of raw delete and new
2015-12-19 17:37:09 -05:00
Markus Wick
c310b3f0e6
Merge pull request #3309 from JosJuice/reload-banner-without-volume
...
Don't read from volume when reloading Wii banners
2015-12-15 18:48:49 +01:00
Markus Wick
2990df3f59
Merge pull request #3265 from JosJuice/volumedirectory-simplifications
...
DiscIO: Small VolumeDirectory simplifications
2015-12-15 18:36:49 +01:00
Markus Wick
25a584626f
Merge pull request #3127 from JosJuice/read-return
...
DiscIO: Improve error handling for reading integers
2015-12-15 18:16:40 +01:00
Markus Wick
e4b83d17bf
Merge pull request #3270 from JosJuice/more-translations
...
Mark more strings for translation
2015-12-15 18:13:26 +01:00
JosJuice
cbfab2a754
DiscIO: Improve DiscScrubber::ReadFromVolume error handling
2015-12-14 10:01:38 +01:00
JosJuice
bd67333da9
DiscIO: Improve CBlobBigEndianReader error handling
2015-12-14 09:56:44 +01:00
JosJuice
c01265db34
DiscIO: Unify CBlobBigEndianReader
2015-12-14 09:38:23 +01:00
JosJuice
c7e747d775
DiscIO: Improve IVolume::Read32 error handling
...
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-14 09:38:21 +01:00
Rohit Nirmal
5a7e0aba70
Fix building with PCH disabled.
2015-12-08 16:57:37 -06:00
Lioncash
6295297ab3
DiscIO: Get rid of a few explicit deletes
2015-12-08 04:35:56 -05:00
Lioncash
edbbf493f8
DiscIO: Make factory methods return unique_ptrs
...
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-07 05:57:37 -05:00
JosJuice
a0cd753060
Don't read from volume when reloading Wii banners
...
Should make loading cached Wii games that lack banners slightly faster.
2015-12-03 17:29:59 +01:00
JosJuice
f9af58a388
DiscIO: Don't use PlainFileReader in VolumeDirectory
...
Blobs are not for regular file reading.
2015-11-28 09:18:22 +01:00
Tony Drake
941125699c
Added info for Rodea The Sky Soldier
2015-11-21 11:40:03 -05:00
JosJuice
74ea765427
Mark more strings for translation
2015-11-20 11:33:47 +01:00
Markus Wick
584ea8b320
Merge pull request #3206 from JosJuice/limit-filesystem-size-2
...
Limit size of loaded file systems
2015-11-18 10:43:47 +01:00
JosJuice
3a9e382661
DiscIO: Small VolumeDirectory simplifications
2015-11-17 10:09:54 +01:00
Scott Mansell
eddea7f15f
Merge pull request #3181 from JosJuice/scrub-directories
...
Don't reserve space for directories when scrubbing
2015-11-17 10:37:09 +13:00
Tillmann Karras
df79398445
DiscIO: drop unused stuff
2015-11-10 17:03:08 +01:00
JosJuice
6dce8b4deb
DiscScrubber: Add another nullptr check
2015-11-01 20:30:49 +01:00
JosJuice
6c25c63301
Limit size of loaded file systems
...
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-28 21:47:19 +01:00
JosJuice
4d77d12f01
Remove length parameter from DiscScrubber::ReadFromVolume
...
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-18 09:24:31 +02:00
JosJuice
618ccf6109
Remove DiscScrubber::GetDOLSize in favor of IFileSystem::GetBootDOLSize
...
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-17 20:52:26 +02:00
JosJuice
1ec9c6393a
Don't reserve space for directories when scrubbing
...
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-17 17:30:23 +02:00
flacs
05e339a605
Merge pull request #3139 from JosJuice/fix-wii-root
...
Mark which Wii root to use in the NAND path code
2015-10-16 16:49:34 +02:00
comex
c22d1d68ab
Mark which Wii root to use in the NAND path code.
...
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-16 09:10:39 +02:00
Tillmann Karras
00aefa5e08
DolphinWX: decompress discs to calculate MD5 hash
2015-10-12 02:35:43 +02:00
Tillmann Karras
efe71e686b
DiscIO: implement CISOBlob::GetDataSize()
...
This is a best-effort approach, since the CISO format does not save the
original file size.
2015-10-12 02:33:38 +02:00
Tillmann Karras
1a8e2e16e3
DiscIO: implement WbfsBlob::GetDataSize()
2015-10-12 02:33:04 +02:00
Tillmann Karras
a92b4bda95
DiscIO: fix reading the last sector in WBFS
...
Instead of rounding down, round up.
2015-10-12 02:31:51 +02:00
Tillmann Karras
3a2efc9f4f
DiscIO: merge initial WBFS reads
2015-10-12 02:31:51 +02:00
Tillmann Karras
f416106eec
DiscIO: pre-swap WLBA
2015-10-12 02:31:51 +02:00
Tillmann Karras
b1100e4aa0
DiscIO: use std::min() in WBFS
2015-10-12 02:31:51 +02:00
Lioncash
5f181957b3
NANDContentLoader: Replace a string rbegin() call with a back() call
2015-10-07 09:47:26 -04:00
shuffle2
a6f04b0e15
Merge pull request #3091 from Tilka/mbedtls
...
Update mbed TLS (PolarSSL)
2015-10-03 18:00:58 -07:00
Lioncash
5464e698fc
Merge pull request #3102 from rohit-n/build-pch
...
Fix building with PCH disabled.
2015-10-03 13:30:51 -04:00
flacs
d5ec7124e4
Merge pull request #3099 from lioncash/banner
...
VolumeGC: Get rid of banner pointer casts
2015-09-29 03:49:08 +02:00
flacs
aaa48e19fe
Merge pull request #3097 from JosJuice/blob-type
...
Fix blob type detection for game right-click menu
2015-09-29 03:46:29 +02:00
Rohit Nirmal
3b75f45cf6
Fix building with PCH disabled.
2015-09-28 11:51:08 -05:00
Lioncash
7317dd4be2
VolumeGC: Get rid of banner pointer casts
...
Prefer reading the data into the reified struct instead.
2015-09-28 04:31:43 -04:00
JosJuice
be7e0554d2
DiscIO: Add a way to get blob type
2015-09-27 20:54:31 +02:00
Scott Mansell
ce493b897d
Merge pull request #2271 from revel8n/fixes
...
Fix for alignment of zero-length files within directory based virtual disk
2015-09-28 05:28:38 +13:00
flacs
34c020352f
Merge pull request #3092 from JosJuice/compressed-blobs
...
Display all compressed formats in blue in GUI
2015-09-27 12:57:19 +02:00
revel8n
d4c2ca46a4
- Fix for alignment of 0-length files when volume directory is created from directory on disk
...
Updating constant value representation
Explicitly state data type in std:max usage
2015-09-26 18:29:29 -05:00
Lioncash
cc036ca86c
Common: Remove other Common prefixed headers from Common.h
2015-09-26 18:51:58 -04:00
Lioncash
19ac565e0d
Common: Move asserts to their own header
2015-09-26 18:51:27 -04:00
JosJuice
6935d28112
Display all compressed formats in blue in GUI
...
In the past, only GCZ was shown as compressed, not CISO and WBFS.
2015-09-26 15:24:29 +02:00
JosJuice
94ee720a07
Rename IsCompressedBlob to IsGCZBlob for clarity
...
GCZ is just one of the several compressed formats that Dolphin supports.
2015-09-26 14:46:53 +02:00
Tillmann Karras
ac5f56df7e
mbedTLS: adapt Dolphin's Visual Studio files
2015-09-25 03:46:41 +02:00
Tillmann Karras
063446c46f
mbedTLS: run rename.pl script and fix errors
2015-09-25 03:46:41 +02:00
Lioncash
4b9b82e000
DiscIO: Do swapping in GetTitleID implementations
...
Gets rid of external swaps at every usage.
2015-09-22 13:50:35 -04:00
Lioncash
113cc119de
Merge pull request #2829 from JosJuice/fix-wii-fst-size-2
...
Fix reading Wii FST size (for real this time)
2015-09-12 00:50:00 -04:00
Lioncash
19459e827f
Partially revert "General: Toss out PRI macro usage"
2015-09-11 09:49:00 -04:00
Lioncash
623df9b5ca
DiscIO/VS: Remove an empty filter
2015-09-06 13:23:33 -04:00
Scott Mansell
be4caa3dc0
Merge pull request #2961 from lioncash/printf
...
General: Toss out PRI macro usage
2015-09-06 21:02:22 +12:00
Lioncash
4a2e680ed2
VolumeGC: Initialize a variable
...
Silences an uninitialized variable warning
2015-09-05 23:05:28 -04:00
Lioncash
633be0387d
General: Remove unimplemented function prototypes
2015-09-05 22:01:07 -04:00
Lioncash
8fdb013d54
General: Toss out PRI macro usage
...
Now that VS supports more printf specifiers, these aren't necessary
2015-09-05 16:02:35 -04:00
Shawn Hoffman
aa7208e270
[windows] Update projects to vs2015.
2015-09-03 04:23:01 -07:00
Lioncash
222b33f0a3
VolumeCreator: Fix a typo in VolumeKeyForPartition's name
2015-08-31 20:01:51 -04:00
Lioncash
1db1a8aacf
VolumeCreator: Use a unique_ptr in CreateVolumeFromFilename
2015-08-31 20:01:44 -04:00
Anthony Serna
faedf1bc5c
Implemented .elf and .dol support in gamelist
...
Fixed a TON of structuring, formatting.
removed README.txt files from themes at MaJoR's request
Added platform icon for ELFs/DOLs
2015-08-28 11:10:03 -07:00
Markus Wick
3469694b46
Merge pull request #2676 from Stevoisiak/SpellingCorrections
...
Minor spelling corrections
2015-08-15 18:36:56 +02:00
JosJuice
e0a47c11f5
Fix reading Wii FST size (for real this time)
...
04fcb72
fixed an issue with reading the Wii FST size, but I found a second
issue when working on PR #2820 - the size must be shifted left by 2.
DiscScrubber and Boot already do this correctly using separate code.
2015-08-10 16:35:23 +02:00
Lioncash
7ee0e75633
Remove unnecessary virtual keywords
2015-07-30 10:33:08 -04:00
skidau
a12a4520d8
Merge pull request #2684 from TraceBullet/master
...
DiscIO: Check if m_Disc is null in ParsePartitionData()
2015-07-14 10:56:12 +10:00
Scott Mansell
dc25277a2f
Merge branch 'stable' into 'master'
2015-07-13 12:40:38 +12:00
JosJuice
9018b546c7
WbfsBlob: Don't enter an infinite loop when reading beyond end of disc
...
read_size remained 0 when the "Read beyond end of disc" error occurs,
which made the while (nbytes) loop never end. As a fix, SeekToCluster
now explicitly sets available to 0 when the error occurs, and Read
checks for it.
2015-07-06 15:41:37 +02:00
Trace Bullet
64bd20aba7
DiscIO: Check if m_Disc is null in ParsePartitionData()
2015-07-02 11:45:22 -04:00
Stevoisiak
7248f9b524
Minor spelling corrections
2015-06-29 14:51:21 -04:00
Lioncash
daa205990f
Use emplace() instead of insert() where applicable for maps.
2015-06-28 19:52:40 -04:00
Markus Wick
156fb82117
Merge pull request #2620 from JosJuice/more-decodestring
...
Volume: Use DecodeString more
2015-06-18 14:57:10 +02:00
JosJuice
a825c7ddfe
Volume: Use DecodeString more
...
DecodeString handles the case where there is no trailing null byte,
so using it lets the code be a bit simpler.
2015-06-18 14:45:26 +02:00
yerejm
fff81fecb1
Reinstate format string.
...
Avoid the consequences in the unlikely event the path includes a %.
2015-06-14 16:49:35 +10:00
JosJuice
ec0370d2d1
Volume: Add prefer_long parameter to GetNames
...
GC games with long names store two variations of the name in
opening.bnr. This makes the shorter of those names available.
For volumes other than GC discs, prefer_long is ignored.
2015-06-08 12:00:34 +02:00
Ryan Houdek
a81d1c250a
Merge pull request #2512 from JosJuice/bnr-size-match
...
VolumeGC: Check that opening.bnr size matches type
2015-06-07 23:20:54 -04:00
JosJuice
0ed3118141
Volume: Return volume type as an enum
...
ISOFile and GameFile were using IsWiiDisc() and IsWadFile() to set
an enum value. The volume might as well return an enum directly.
I increased the Qt CACHE_REVISION because m_platform now is saved as u32
instead of int, but increasing the wx CACHE_REVISION is not necessary.
2015-06-04 16:26:36 +02:00
JosJuice
95a2abc1ce
Use PanicAlertT instead of PanicAlert when appropriate
...
I tried to change messages that contained instructions for users,
while avoiding messages that are so technical that most users
wouldn't understand them even if they were in the right language.
2015-06-04 13:25:06 +02:00
JosJuice
78b6ed0218
VolumeGC: Check that opening.bnr size matches type
...
The old code would accept files with BNR1 length and BNR2 type, which
can be a problem when GetNames tries to read the extra BNR2 strings.
2015-06-03 11:35:05 +02:00
comex
349f9d5493
Merge pull request #2484 from JosJuice/volume-return-types
...
Volume: Use more appropriate types for some returned values
2015-06-02 20:29:08 -04:00
comex
2ae6fb9240
Merge pull request #2338 from JosJuice/getfilelist-return
...
Filesystem: Return file list reference instead of modifying argument
2015-06-02 20:28:25 -04:00
comex
a3b3f0522b
Merge pull request #1556 from comex/project-moration
...
Rudimentary version of Wii IPC determinism. Ported from my old udpnet branch.
2015-06-02 18:38:19 -04:00
JosJuice
301218a103
Volume: Use more appropriate types for some returned values
...
Disc number is changed from bool to u8, and revision is changed from
int to u16 (WADs can use all 16 bits, but discs can only use 8 bits).
2015-05-29 21:14:02 +02:00
JosJuice
9a000f4085
Volume: Mark ReadWiiNames parameter as const
...
I forgot it when I added the method.
2015-05-29 20:19:11 +02:00
Lioncash
ac26f8e79f
Pass strings by const reference where possible
2015-05-28 20:54:55 -04:00
comex
dc91e8b607
Add a mode to use a dummy Wii NAND.
...
Eventually, netplay will be able to use the host's NAND, but this could
still be useful in some cases; for TAS it definitely makes sense to have
a way to avoid using any preexisting NAND.
In terms of implementation: remove D_WIIUSER_IDX, which was just WIIROOT
+ "/", as well as some other indices which are pointless to have as
separate variables rather than just using the actual path (fixed, since
they're actual Wii NAND paths) at the call site. Then split off
D_SESSION_WIIROOT_IDX, which can point to the dummy NAND directory, from
D_WIIROOT_IDX, which always points to the "real" one the user
configured.
2015-05-28 19:14:42 -04:00
comex
a225426510
Rewrite FileSearch and improve ScanDirectoryTree.
...
- FileSearch is now just one function, and it converts the original glob
into a regex on all platforms rather than relying on native Windows
pattern matching on there and a complete hack elsewhere. It now
supports recursion out of the box rather than manually expanding
into a full list of directories in multiple call sites.
- This adds a GCC >= 4.9 dependency due to older versions having
outright broken <regex>. MSVC is fine with it.
- ScanDirectoryTree returns the parent entry rather than filling parts
of it in via reference. The count is now stored in the entry like it
was for subdirectories.
- .glsl file search is now done with DoFileSearch.
- IOCTLV_READ_DIR now uses ScanDirectoryTree directly and sorts the
results after replacements for better determinism.
2015-05-28 19:14:42 -04:00
Ryan Houdek
5911dd528a
Merge pull request #2361 from JosJuice/filesystem-read32
...
Remove CFileSystemGCWii::Read32
2015-05-25 23:40:28 -04:00
Ryan Houdek
4ba430951a
Merge pull request #2439 from JosJuice/company-from-id
...
Use an ID-to-name map when volume has no company string
2015-05-25 23:32:55 -04:00
Ryan Houdek
1d6375b71f
Merge pull request #2339 from JosJuice/fix-wii-fst-size
...
Fix reading Wii FST size
2015-05-25 23:27:25 -04:00
Tillmann Karras
30ebb2459e
Set copyright year to when a file was created
2015-05-25 13:22:31 +02:00
Tillmann Karras
cefcb0ace9
Update license headers to GPLv2+
2015-05-25 13:22:31 +02:00
JosJuice
d2e6adb045
Use an ID-to-name map when volume has no company string
...
This is written so that the result of GetCompanyFromID never is cached
(except on Android?). Caching is unnecessary because the string can be
obtained quickly at runtime, and not caching it means that the cache
doesn't have to be invalidated when GetCompanyFromID is edited.
2015-05-24 17:41:53 +02:00
Lioncash
383b104af0
WiiWad: Use correct form of delete for arrays
2015-05-22 17:52:54 -04:00
JosJuice
bad09fc358
Volume: Rename GetName to GetInternalName
...
This is intended to better separate it from GetNames and to clarify
that this name originally wasn't meant to be shown to users.
The ISOProperties GUI is also updated, mainly because labeling
the long banner name "short name" was confusing.
2015-05-11 11:19:30 +02:00
JosJuice
2d5d5fa83e
Read opening.bnr to get names from Wii discs
...
This makes Dolphin display the same names as the Disc Channel.
2015-05-03 15:58:35 +02:00
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