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