Commit Graph

28 Commits

Author SHA1 Message Date
JosJuice b470fa5454 FileMonitor redesign
Advantages:

* Simpler code in general
* No extra volume objects created
* Now actually notices if the disc or partition gets
  changed while the core is running
* No longer picks up on disc access done by the GUI
  (it used to do so as long as the core was running)
* Gets rid of a Core dependency in DiscIO

There are two performance disadvantages:

* FileMonitor is now a bit slower when used with VolumeDirectory
  because FileMonitor now always uses the FileSystemGCWii code
  for finding filenames instead of VolumeDirectory finding the
  filename on its own and directly hooking into FileMonitor.
  But this isn't such a big deal, because it's happening on the
  DVD thread, and my currently unmerged file system PR will make
  FileSystemGCWii's file finding code about as fast as
  VolumeDirectory's.
* FileMonitor's creation of the file system object is now
  done on the CPU thread instead of the DVD thread, and
  it will be done even if FileMonitor logging is disabled.
  This will be fixed in the next commit.
2017-03-13 17:13:20 +01:00
JosJuice 9bd514ed1c Add TGC disc image compatibility 2016-12-18 18:57:36 +01: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
Tillmann Karras ac5f56df7e mbedTLS: adapt Dolphin's Visual Studio files 2015-09-25 03:46:41 +02:00
Shawn Hoffman aa7208e270 [windows] Update projects to vs2015. 2015-09-03 04:23:01 -07: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
Rohit Nirmal cf8d1c9197 FileHandlerARC: Remove FileHandlerARC. 2014-09-05 12:53:41 -04: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
Shawn Hoffman f1b82a34b2 Windows: Use a shared precompiled header for dolphin code under Source/ 2014-08-14 23:51:13 -07:00
Lioncash 8b13afbb8e Remove the 32-bit config platform from the VS solution and projects 2014-06-24 22:07:26 -04: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
Shawn Hoffman ccd30024b3 Update to VS2013 and a slew of build-related updates. Notes:
* Currently there is no DEBUGFAST configuration. Defining DEBUGFAST as a preprocessor definition in Base.props (or a global header) enables it for now, pending a better method. This was done to make managing the build harder to screw up. However it may not even be an issue anymore with the new .props usage.
* D3DX11SaveTextureToFile usage is dropped and not replaced.
* If you have $(DXSDK_DIR) in your global property sheets (Microsoft.Cpp.$(PlatformName).user), you need to remove it. The build will error out with a message if it's configured incorrectly.
* If you are on Windows 8 or above, you no longer need the June 2010 DirectX SDK installed to build dolphin. If you are in this situation, it is still required if you want your built binaries to be able to use XAudio2 and XInput on previous Windows versions.
* GLew updated to 1.10.0
* compiler switches added: /volatile:iso, /d2Zi+
* LTCG available via msbuild property: DolphinRelease
* SDL updated to 2.0.0
* All Externals (excl. OpenAL and SDL) are built from source.
* Now uses STL version of std::{mutex,condition_variable,thread}
* Now uses Build as root directory for *all* intermediate files
* Binary directory is populated as post-build msbuild action
* .gitignore is simplified
* UnitTests project is no longer compiled
2013-10-26 17:55:38 -07:00
Matthew Parlane 59e060aba2 Missed some VS build options. 2013-08-16 21:42:31 +12:00
Matthew Parlane d6ec6ae97a Fix polarssl on Windows. 2013-08-16 00:24:10 +12:00
Jordan Woyak 536c110b31 Fix "DiscIO" to build with "Unicode". 2013-02-27 20:04:07 -06:00
skidau 7885e63deb Added wbfs support. Thanks to lordlyhobo for the patch. Fixes issue 859. 2012-05-04 00:09:01 +10:00
Shawn Hoffman c5d746f3d8 remove scons files from VS projects 2012-03-18 06:41:12 -07:00
Shawn Hoffman 95517a9741 vs2010: Disable LTCG for realz 2011-09-05 09:43:23 -07:00
Shawn Hoffman 6e4923399e revert r7212 (express users must modify a single line, instead)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7220 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-21 15:17:41 +00:00
Shawn Hoffman 62cb8ebe46 Force dolphin to use the windows7.1sdk (the windows7.1sdk installer is silly and refuses to recognize that vs2010 exists).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7212 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-20 18:08:20 +00:00
Shawn Hoffman a34b81cc01 vs2010:
buildfix
move much of the build settings to .props files
-please use them as much as possible in the future, instead of changing individual projects
NOTE: to avoid left over blobs, clean your builds *before* applying these changes.
TODO: add DebugFast target for projects that are lacking it. Lack of DebugFast targets cause the linker to use LTCG when we don't want it.
please test for regressions which could be caused by being too happy with compiler flags :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7109 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 04:03:48 +00:00
Shawn Hoffman af9ef060c0 vs2010: Enable LTCG only for release builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7032 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-01 04:45:29 +00:00
Shawn Hoffman 118d623a18 vs2010:
fix all build targets (they've all built here - you may have to manually delete the intermediate directories if you have conflicts after this commit).
set the debug path to $(TargetDir)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7022 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 15:53:54 +00:00
Shawn Hoffman 7ae1340179 vs2010 add filters for everything (...except wxw projects...). Try to fix SVNRevGen, but I'm not sure it's working...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7012 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 07:51:37 +00:00
Jordan Woyak 66cd497dfe Added "DebugFast" configs to vs2010 projects. Removed solution folders.(vs express doesn't like them)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6931 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 10:41:26 +00:00
Soren Jorvang 0288742565 Various minor fixes to allow building with clang on OS X.
Fixes issue 3992. 

wxWidgets patch at http://trac.wxwidgets.org/ticket/12332 .


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6929 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 05:01:00 +00:00
Jordan Woyak cbc520a70a Committing Visual Studio 2010 solution/project files. (not switching from 2008 just yet, just making 2010 an option) Still need to add a "DebugFast" config and change optimization settings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6927 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 00:14:29 +00:00