Commit Graph

12524 Commits

Author SHA1 Message Date
Jules Blok 84a5f4abb0 VideoBackends: Use the new divisor when clearing the depth buffer. 2015-05-08 14:32:22 +02:00
Jules Blok 1a409a2e16 VideoBackends: Clamp Z peek values. 2015-05-08 14:32:21 +02:00
Jules Blok 0f2c72f0f8 VideoCommon: Clamp integer conversions. 2015-05-08 14:32:16 +02:00
Jules Blok b0770e2a0c VideoBackends: Floor depth values in depth copy shaders. 2015-05-08 14:29:30 +02:00
Jules Blok be810eb750 OGL: Switch depth buffers to GL_DEPTH_COMPONENT32F format. 2015-05-08 14:29:30 +02:00
Jules Blok 4b2e04b862 OGL: Change the depth buffer type to GL_FLOAT. 2015-05-08 14:29:29 +02:00
Jules Blok c4f85a38e6 VideoBackends: Use proper floating point depth precision. 2015-05-08 14:29:29 +02:00
Gabriel Corona 04cb6fccd6 GDB stub over UNIX socket
This is available with the `GDBSocket` option in
`~/.dolphin-emu/Config/Dolphin.ini`.

GDB can connect to it with:

    $ powerpc-eabi-gdb
    (gdb) target remote |socat STDIO UNIX:foo.sock

Because I don't like so much binding the GDB stub socket to 0.0.0.0.
On Linux, with a suitable umask, we can make sure that another local
user cannot connect to the socket.
2015-05-08 14:23:37 +02:00
shuffle2 268b8fd26f Merge pull request #2026 from mrgreywater/d3d-debugbreak
D3D: More debug information and break on error
2015-05-07 19:29:21 -07:00
Eder Bastos b47835fc07 Implement first few screens of Android 5.0-based UI. 2015-05-07 22:27:42 -04:00
shuffle2 94995503aa Merge pull request #2374 from randomstuff/fix-unpn
Fix build without UPnP
2015-05-07 18:36:02 -07:00
shuffle2 6fe2ab7fbf Merge pull request #2359 from darkengine-io/new-qt
DolphinQt updates
2015-05-07 18:34:42 -07:00
Simon McFarlane 6c6fe8d724 QT: Add reset button 2015-05-07 12:37:19 -07:00
Simon McFarlane 5988750fe4 QT: Add Play/Pause to Emulation menu 2015-05-07 12:37:19 -07:00
Simon McFarlane 29a9c24b73 QT: Add ISO folder browser 2015-05-07 12:37:18 -07:00
Lioncash f77587506f Merge pull request #2345 from lioncash/tl
VideoConfigDiag: Simplify string translation handling
2015-05-07 05:05:48 -04:00
skidau 9eaae880e5 Merge pull request #1793 from LPFaint99/memcard
GCI folder: flush 1 second after last block is written
2015-05-07 16:30:01 +10:00
skidau 7b3bc9bfc7 Merge pull request #2373 from jdieter/master
Reverts #2362 while still fixing deadlock when adding multiple Wiimotes
2015-05-07 16:28:13 +10:00
Gabriel Corona 469ea24717 Fix build without UPnP
There is no checkbox.
2015-05-06 20:59:19 +02:00
Jonathan Dieter 3fe839d225 Avoid deadlock when adding Wiimotes (attempt #2)
Signed-off-by: Jonathan Dieter <jdieter@lesbg.com>
2015-05-06 21:53:53 +03:00
Ryan Houdek 80fe5e0a55 Merge pull request #2370 from sigmabeta/native-libs-task-removal
Remove the "nativeLibsToJar" gradle task.
2015-05-06 09:16:43 -04:00
Jules Blok 24594a7888 PixelShaderCache: Fix MSAA depth copy shader. 2015-05-06 12:43:35 +02:00
joewestcott 72956d59c8 Reverts pull request #2362, fixes issue 8542. 2015-05-06 05:36:37 +01:00
skidau a7e2425ffb Merge pull request #2367 from skidau/GCPad-Recalibrate-forced
Skipped the calibration of the GC controller if it has already been calibrated.
2015-05-06 12:42:29 +10:00
Eder Bastos 2fe4b9ce68 Remove the "nativeLibsToJar" gradle task. 2015-05-05 22:34:56 -04:00
skidau 41f168373b Merge pull request #2362 from jdieter/master
Avoid deadlock when adding Wiimotes
2015-05-06 12:30:54 +10:00
skidau 571cdcddd8 Merge pull request #2340 from dibas/testing
Show the cursor in os x fullscreen by default. Fixes issue 8376.
2015-05-06 12:28:45 +10:00
Simon McFarlane 629f45f1a5 QT: add exit function 2015-05-05 17:58:21 -07:00
comex 6414cdabb2 Merge pull request #2286 from JosJuice/wii-opening-bnr
Read opening.bnr to get names from Wii discs
2015-05-05 16:20:04 -04:00
skidau 06bca52d80 Skipped the calibration of the GC controller if it has already been calibrated. 2015-05-05 13:05:34 +10:00
Jules Blok 7a1252f7e5 VideoBackends: Implement depth copy shaders with integer math. 2015-05-05 00:40:25 +02:00
Ryan Houdek f9dc8a39c0 Merge pull request #2350 from sigmabeta/master
Convert the Android source code to Gradle.
2015-05-03 22:01:02 -04:00
Markus Wick e0cfd934d2 Merge pull request #2364 from kayru/d3d_texture_bsf
D3D: StateManager::Apply no longer iterates through every texture and sampler slot
2015-05-03 21:39:33 +02:00
Yuriy O'Donnell df5750edfd D3D: Replaced explicit _BitScanForward with LeastSignificantSetBit 2015-05-03 21:14:29 +02:00
Jonathan Dieter 4112794d4a Avoid deadlock when adding Wiimotes
Signed-off-by: Jonathan Dieter <jdieter@lesbg.com>
2015-05-03 18:47:15 +03:00
JosJuice df8e768b77 wx: Now that Wii doesn't support descriptions, rename Notes to Maker
I'm not sure if Maker is the best name (Developer? Publisher?
Company? Copyright?) but I went with it because it's
what the game properties window uses. For the sake of
backwards compatibility, the INI option wasn't renamed.
2015-05-03 16:13:55 +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
Eder Bastos c80225ea4d Convert the Android source code to the directory structure of a Gradle-based Android Studio project. 2015-05-02 21:49:17 -04:00
Markus Wick a76bfb1f55 Merge pull request #2356 from Armada651/dump-efb
VideoCommon: Implement EFB dumping for both backends.
2015-05-02 13:27:38 +02:00
Jules Blok 54f4443971 VideoCommon: Implement EFB dumping for both backends. 2015-05-02 13:23:33 +02:00
Ingve Skåra 5799824b22 Fix dead link 2015-05-01 21:42:50 +02:00
mathieui 7b45eae6e7 Add missing ifdefs around GCAdapter code in Controller config
Otherwise the build fails if libusb is not found
2015-05-01 17:56:15 +02:00
skidau 9348b2e1a6 Merge pull request #2330 from mathieui/background-gc-adapter-scan
Add a background thread to detect the GC adapter
2015-05-01 12:09:18 +10:00
mathieui df8b86ed63 Traversal: use the defaults if empty or space-only config entries are detected 2015-05-01 03:11:28 +02:00
Simon McFarlane 886e5c80dd Remove BanishBackground function
No longer needed
2015-04-30 17:33:24 -07:00
Simon McFarlane e6e046e37c Make revision text wxStaticText 2015-04-30 17:32:45 -07:00
Simon McFarlane df341ffba6 Change about page branch info to wxStaticText 2015-04-30 17:22:37 -07:00
mathieui c452e72ca7 Netplay: don’t show traversal server/port options (INI config only) 2015-05-01 02:03:53 +02:00
Lioncash 9012ed18b1 AboutDolphin: Set the multi-line style for branch information
Without this, all the branch information would be put on one line, which isn't intended.
2015-04-30 18:07:58 -04:00
Lioncash 2b89350868 AboutDolphin: Remove unnecessary code 2015-04-30 18:05:30 -04:00
Markus Wick 4b00ccbe4e Merge pull request #2342 from rohit-n/warnings
Silence -Wshadow and -Wsign-compare warnings.
2015-04-30 23:22:19 +02:00
Lioncash d69a4697fa Merge pull request #2347 from JosJuice/fix-dol-crash
Fix DOL crash caused by VolumeHandler removal
2015-04-30 07:36:55 -04:00
JosJuice f7d20204bb Fix DOL crash caused by VolumeHandler removal
Similar to the WAD crash (0b44d7c) but in another part of the boot code.
2015-04-30 13:29:09 +02:00
mathieui ec7445d66b GCAdapter: Add a setting to toggle rumble 2015-04-30 11:35:16 +02:00
mathieui 57f458fe9b GCAdapter: Add a background thread to detect the adapter
This scanning thread either polls libusb or checks every 500ms for a
change depending on host capabilities. The GC Adapter can now be plugged
and unplugged at any time when dolphin is open, it will be used if the
direct connect option is set.
2015-04-30 11:35:16 +02:00
Simon McFarlane cd7466864e Make OC slider match enabled state on window load 2015-04-30 01:28:43 -07:00
Lioncash 0004b6004b VideoConfigDiag: Simplify string translation handling
Explicit wxGetTranslation usage isn't necessary
2015-04-30 04:18:13 -04:00
Simon McFarlane 6728f87677 Add size to CPU clock override slider
Fixes slider having 0 width on wxGTK
2015-04-29 21:49:58 -07:00
skidau d46598e51a Merge pull request #2336 from lioncash/tl
FrameTools: Simplify some wx string translation marking
2015-04-30 14:03:21 +10:00
skidau 052162e6b9 Merge pull request #2332 from comex/fix-alerts-maybe
Fix some false positive ScheduleEvent alerts
2015-04-30 14:03:00 +10:00
Rohit Nirmal 76181f9327 Silence -Wshadow and -Wsign-compare warnings. 2015-04-29 19:59:34 -05:00
comex bac4167ff5 Merge pull request #2319 from comex/linted-fix-qualcomm-fail
(lint issues fixed) Fix OpenGLES 3.0 on Qualcomm's crappy driver, it can't bitshift sometimes.
2015-04-29 17:09:56 -04:00
Yuriy O'Donnell 2b664f5d89 D3D: StateManager::Apply no longer iterates through every texture and sampler slot
Now using bit scan through dirty slot masks.
2015-04-29 20:08:00 +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
Lioncash 88f7536d81 DolphinWX: Remove unnecessary forward declarations
These are all fully defined
2015-04-28 17:32:38 -04:00
dibas 441976e09b Show the cursor in os x fullscreen by default. Fixes issue 8376. 2015-04-28 22:12:39 +02:00
JosJuice 04fcb72e0b Fix reading Wii FST size 2015-04-28 17:20:33 +02:00
Simon McFarlane 8f56138ec4 Use wxStaticText::Wrap rather than manually inserting newlines 2015-04-28 01:17:43 -07:00
Simon McFarlane df7c9664da Set minimum size on config window
To prevent tabs from getting a scrollbar
2015-04-27 22:55:08 -07:00
Lioncash be3bd52bb5 FrameTools: Simplify some wx string translation marking 2015-04-28 00:02:35 -04:00
Matthew Parlane c58e94cf95 Merge pull request #2331 from lioncash/access
DolphinWX: Make some UI functions/members private
2015-04-28 15:42:52 +12:00
Matthew Parlane 42ebf5b3bf Merge pull request #2333 from lioncash/virt
InputCommon/Core: Get rid of some virtual destructor warnings
2015-04-28 15:41:48 +12:00
Lioncash 8e59987d46 TextureDecoder_Common: Add missing algorithm include
It was being indirectly included, causing VS to syntactically mark std::min/max usages as being undefined (however it still compiled fine, of course)
2015-04-27 23:17:41 -04:00
Matthew Parlane 5091a18369 Merge pull request #2334 from lioncash/uninit
Interpreter_LoadStorePaired: Silence uninitialized variable warnings
2015-04-28 14:57:49 +12:00
Lioncash 9603fb6ccd Interpreter_LoadStorePaired: Silence uninitialized variable warnings 2015-04-27 22:54:58 -04:00
Lioncash d39b519850 InputCommon/Core: Get rid of some virtual destructor warnings
These classes have virtual methods, but no virtual destructor, which causes warnings on some compilers.
2015-04-27 21:41:59 -04:00
comex 65457628d7 Merge pull request #2324 from endrift/about-dialog-osx
Attempt to beautify About dialog on OS X.
2015-04-27 21:23:27 -04:00
comex a9fe0ec0ab Fix some false positive ScheduleEvent alerts:
- CEXIETHERNET::SendComplete is always called from the main thread, so
  drop the _Threadsafe.

- Mark the FIFO player thread as the "CPU thread" so it can call
  ScheduleEvent without complaints.  I haven't actually tested this,
  since I don't know how to use the FIFO player; it might break
  something.
2015-04-27 21:19:28 -04:00
Lioncash 899fd55ea8 DolphinWX: Make some general UI functions/vars private 2015-04-27 21:04:05 -04:00
Lioncash 263e64e939 DolphinWX: Make some debugger functions/vars private
Some classes expose things that aren't used outside of them (and in some cases, shouldn't be exposed).
2015-04-27 20:42:18 -04:00
skidau 4bf4778cd7 Merge pull request #2312 from comex/shutdown-race-condition
Exit ReadDataFromFifoOnCPU, PushFifoAuxBuffer early if shutting down (GpuRunningState=false)
2015-04-27 19:47:00 +10:00
skidau b8eecff5c9 Merge pull request #2325 from JosJuice/isoproperties-zero-files
ISOProperties: Correctly handle partitions with 0 files
2015-04-27 19:45:21 +10:00
skidau 472e281445 Merge pull request #2316 from comex/fix-watch
Fix watchpoints ("memory breakpoints") with JIT
2015-04-27 19:42:13 +10:00
Lioncash b457c61b3e Merge pull request #2328 from rohit-n/format
Silence -Wformat warnings in debug builds.
2015-04-26 16:19:08 -04:00
Rohit Nirmal fb46afd5c3 Silence -Wformat warnings in debug builds. 2015-04-26 13:45:06 -05:00
Rohit Nirmal 10aa6488d9 Qt: Check if game filename is null before loading.
This is so that the error message box does not
appear if the user simply cancels loading a game.
2015-04-26 11:13:16 -05:00
LPFaint99 c4ba7e51e5 GCI folder: flush 1 second after last block is written 2015-04-25 15:40:40 -07:00
Jeffrey Pfau af20e7498c Only wxMac supports scaleFactor, so only use it on OS X 2015-04-25 14:53:37 -07:00
Jeffrey Pfau 4a97045d81 Add hack for removing background from text controlers, per comex 2015-04-25 14:52:53 -07:00
JosJuice db1d81ebf8 ISOProperties: Don't block when opening default INI in text editor
The purpose of blocking is to reload user INIs after they
have been edited. However, ISOProperties never reloads
default INIs, because they aren't meant to be edited.
Blocking on default INIs is thus useless, and it's
rather annoying for games that have two default INIs,
because it makes it impossible to see both at once.
2015-04-25 22:15:48 +02:00
JosJuice fbed0b4a9c ISOProperties: Correctly handle partitions with 0 files 2015-04-25 15:33:20 +02:00
Jeffrey Pfau addbafcfda Attempt to beautify About dialog on OS X.
Added a 2x version of the logo, and cleaned up layout a bit.
2015-04-25 04:22:32 -07:00
Matthew Parlane 392b9abece Merge pull request #2016 from RisingFog/splash
Update About Dolphin Screen
2015-04-25 21:50:40 +12:00
magumagu 645aa5af8b Merge pull request #2323 from dolphin-emu/itym
ITYM PowerPC::Write_U{8,16}, not Memory::
2015-04-24 22:19:37 -07:00
comex 7fe13d9af8 Merge pull request #2175 from RachelBryk/oc
Disable oc setting while netplay or movie is active.
2015-04-25 00:58:16 -04:00
comex 9d8c347e8d Merge pull request #2290 from RachelBryk/cc-tasinput
Implement classic controller tas input.
2015-04-25 00:44:29 -04:00
comex 38a14b73a4 Merge pull request #2321 from JosJuice/wiimote-battery-fix
Fix emulated Wii Remote battery level being low when not configured
2015-04-24 22:43:05 -04:00
comex dea88ef5a1 ITYM PowerPC::Write_U{8,16}, not Memory::
PowerPC does exceptions and hardware and stuff, Memory doesn't.

I did not realize until a few minutes ago that there were two versions of these functions.  This is why namespaces suck.  Anyway, these were added by Mullin earlier this year.
2015-04-24 22:41:10 -04:00
comex 132e1068ce Remove checks that disable fastmem if debugging and ENABLE_MEM_CHECK are enabled.
They weren't sufficient and are made redundant by previous commits; they
also (on master) caused breakage due to Jit64::psq_stXX assuming writes
would be fastmem and not clobber a register under certain conditions.

That really needs to be refactored, but for now, this works.
2015-04-24 22:37:54 -04:00
comex 2264e7b087 Use a fake exception to exit early in case of memory breakpoints.
Change TMemCheck::Action to return whether to break rather than calling
PPCDebugInterface::BreakNow, as this simplified the implementation; then
remove said method, as that was its only caller.  One "interface" method
down, many to go...
2015-04-24 22:37:54 -04:00
comex dd7ab4812b On x86, disabling fastmem isn't enough actually.
Without fastmem, the JIT code still does an inline check for RAM
addresses.  With watchpoints we have to disable that too.  (Hardware
watchpoints would avoid all the slow, but be complicated to implement
and limited in number - I doubt most people debugging games care much if
they run slower.)

With this change and watchpoints enabled, Melee runs at no more than 40%
speed, despite running at full speed without them.  Oh well.  Better
works slowly than doesn't bloody work.

Incidentally, I'm getting an unrelated crash in
PowerPC::HostIsRAMAddress when shutting down a game.  This code sucks.
2015-04-24 22:37:54 -04:00
comex b84f6a55ab Automatically disable fastmem and enable memcheck when there are any watchpoints.
- Move JitState::memcheck to JitOptions because it's an option.
- Add JitOptions::fastmem; switch JIT code to checking that rather than
  bFastmem directly.
- Add JitBase::UpdateMemoryOptions(), which sets both two JIT options
  (replacing the duplicate lines in Jit64 and JitIL that set memcheck
  from bMMU).
  - (!) The ARM JITs both had some lines that checked js.memcheck
    despite it being uninitialized in their cases.  I've added
    UpdateMemoryOptions to both.  There is a chance this could make
    something slower compared to the old behavior if the uninitialized
    value happened to be nonzero... hdkr should check this.
- UpdateMemoryOptions forces jo.fastmem and jo.memcheck off and on,
  respectively, if there are any watchpoints set.
- Also call that function from ClearCache.
- Have MemChecks call ClearCache when the {first,last} watchpoint is
  {added,removed}.

Enabling jo.memcheck (bah, confusing names) is currently pointless
because hitting a watchpoint does not interrupt the basic block.  That
will change in the next commit.
2015-04-24 22:37:53 -04:00
comex 3499f2c2d0 To make up for it, make pressing enter on the value textbox set the value. 2015-04-24 22:19:21 -04:00
comex 0c18e5886d Remove mnemonics in MemoryWindow.
On OS X, this broke Cmd-V to paste in the text boxes.  Apparently wx
thinks having mnemonics (which are Alt-* on Windows) be Cmd-* on OS X,
even if this disables standard shortcuts, is a good idea.

Lioncash suggested just getting rid of the accelerators on non-menu
controls, so I'm doing that rather than disabling them only on OS X.
2015-04-24 22:06:03 -04:00
comex 37d00cceda Fix wx bullshit which made the watch view assert on my machine.
1) Apparently wxString::Format is type safe, and passing a u32 to it
with the format "%lu" crashes with a meaningless assertion failure.
Sure, it's the wrong type, but the error sure doesn't help...

2) "A MenuItem ID of Zero does not work under Mac".  Thanks for the
helpful assert message, no thanks for making your construct have random
platform-specific differences for no reason (it's not like menu item IDs
directly correspond to a part of Cocoa's menu API like they do on
Win32).
2015-04-24 22:04:46 -04:00
Lioncash 87bd57e0be Merge pull request #2322 from JosJuice/extract-file-fix
Fix extracting files from Wii discs
2015-04-24 16:32:23 -04:00
JosJuice 2e10a71dcd Fix extracting files from Wii discs
I broke it for individual files but not folders in 4.0-6016.
2015-04-24 22:08:15 +02:00
JosJuice fe9fdd3244 Fix emulated Wii Remote battery level being low when not configured
All the multiplying and dividing by 100 in controller configs is
messy... An attempted solution to the problem was to not multiply
default_value by 100 in ControllerEmu::ControlGroup::LoadConfig,
but that broke other things instead, so I went with this.
2015-04-24 19:36:08 +02:00
comex b3aaa46d42 Merge pull request #2088 from Sintendo/diecmp
Emit 'TEST reg, reg' for 'CMP reg, 0' automatically
2015-04-23 16:34:23 -04:00
Dwayne Slater ae83a1b821 Fix OpenGLES 3.0 on Qualcomm's crappy driver, it can't bitshift sometimes.
[fixed lint issues and grammar ~comex]
2015-04-23 16:33:12 -04: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
comex 87a63713f4 Merge pull request #2317 from comex/oops
Fix code broken by merge
2015-04-23 02:08:28 -04:00
comex 74c30d1784 Fix code broken by merge 2015-04-23 02:07:45 -04:00
Lioncash a39985fe08 Merge pull request #2315 from lioncash/code
DolphinWX: Remove superfluous code in FrameTools
2015-04-23 02:05:14 -04:00
comex ad95454d04 Merge pull request #2223 from phire/imm
Cleanup OpArg, make immediates more explicit.
2015-04-23 01:53:18 -04:00
Lioncash 8fb36228e5 Merge pull request #2311 from JosJuice/fix-wad-crash
Fix WAD crash caused by VolumeHandler removal
2015-04-23 00:23:42 -04:00
Lioncash 819f4d994c DolphinWX: Remove superfluous code in FrameTools 2015-04-22 19:56:50 -04:00
Rachel Bryk 5047cf562a Implement classic controller tas input. 2015-04-22 16:19:13 -04:00
JosJuice 0b44d7c18a Fix Wii software crashing at boot if no disc is inserted
Boot_BS2Emu was trying to read from the inserted disc even when
nothing was inserted, and this happened to not crash (but not
work either) before VolumeHandler was removed. This commit adds
a check that restores the old behavior, so there is no longer a
crash, but the game ID still doesn't get set for WADs. I don't
know if/how it should be set, so this felt like the safest option.
2015-04-22 09:14:41 +02:00
comex 5d61b9d0a4 Merge pull request #2313 from lioncash/unused
GPFifo: Remove unused parameters from Write[x] functions
2015-04-22 00:39:38 -04:00
comex 31ea8d0834 Merge pull request #2310 from lioncash/fsmenu
FrameTools: Use AppendRadioItem for constructing the frameskip menu
2015-04-22 00:39:17 -04:00
Lioncash 56df9b7508 GPFifo: Remove unused parameters from Write[x] functions 2015-04-21 23:01:25 -04:00
comex 06dd0ba3b4 Exit ReadDataFromFifoOnCPU, PushFifoAuxBuffer early if shutting down (GpuRunningState=false)
This was causing a race condition where the "absurdly large aux buffer"
panic alert would be triggered in the last bit of fifo processing on the
CPU thread in deterministic mode (i.e. netplay).  SyncGPU is supposed to
move the auxiliary queue data to the beginning of the containing buffer
so we don't have to deal with wraparound; if GpuRunningState is false,
however, it just returns, because it's set to false by another thread -
thus it doesn't know whether RunGpuLoop is still executing (in which
case it can't just reset the pointers, because it may still be using the
buffer) or not (in which case the condition variable it normally waits
for to avoid the previous problem will never be signaled).  However,
SyncGPU's caller PushFifoAuxBuffer wasn't aware of this, so if the
buffer was filling at just the right time, it'd stay full and that
function would complain that it was about to overflow it.  Similar
problem with ReadDataFromFifoOnCPU afaik.  Fix this by returning early
from those as well; other callers of SyncGPU should be safe.  A
*slightly* cleaner alternative would be giving the CPU thread a way to
tell when RunGpuLoop has actually exited, but whatever, this works.
2015-04-21 22:33:29 -04:00
Markus Wick 4340927b7f Merge pull request #2308 from Stevoisiak/FrameToolsMath
FrameTools: Remove redundant 'i-1'
2015-04-21 16:17:02 +02:00
Lioncash ebe0222265 FrameTools: Use AppendRadioItem for constructing the frameskip menu
Same thing, less code.
2015-04-20 21:51:30 -04:00
Lioncash f5c72c5b1a DiscIO: Add a missing header to Volume.h 2015-04-20 21:10:31 -04:00
Stevoisiak c3cf43f064 FrameTools: Remove redundant 'i-1' 2015-04-20 20:24:37 -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
Matthew Parlane a86f2fe2e7 Merge pull request #2199 from skidau/remove-controls-lock
Cleaned up the controller locking mechanism
2015-04-21 11:13:30 +12:00
Matthew Parlane 82bbada352 Merge pull request #2257 from RachelBryk/battery
Add an option for wiimote battery.
2015-04-21 11:12:12 +12:00
Matthew Parlane f35277f215 Merge pull request #2267 from Stevoisiak/soundStream
(Visual Studio) Categorize SoundStream.h with other SoundStream files
2015-04-21 11:10:49 +12:00
Lioncash d799446faf Core: Don't display on-screen messages via DisplayMessage until emulation has begun 2015-04-20 18:31:40 -04:00
Lioncash d27b8673f5 Merge pull request #2306 from Stevoisiak/MoveUndoSaveState
FrameTools: Move "Undo Save State" to save state menu
2015-04-19 20:45:41 -04:00
Stevoisiak 83ec7a1e78 FrameTools: Move "Undo Save State" to save state menu 2015-04-19 20:18:11 -04:00
Stevoisiak 8adf8b16bc Globals.h: Added comments for menu sections 2015-04-19 18:51:55 -04:00
degasus 8c209b3bc9 no-gui: fix help string 2015-04-18 15:03:42 +02:00
Lioncash 9eb608c9da Merge pull request #2301 from lioncash/const
General: Apply the const specifier where applicable
2015-04-16 23:13:39 -04:00
Markus Wick cd0212ab1c Merge pull request #2302 from lioncash/perf
PerfQueryBase: Move common implementation variables into base class
2015-04-16 07:31:31 +02:00
skidau 7063886520 Merge pull request #2289 from lioncash/netplay
DolphinWX: Break the netplay UI controls into separate classes.
2015-04-16 12:35:41 +10:00
skidau f0593095b4 Merge pull request #2295 from comex/fix-usb-threading
Fix threading issues
2015-04-16 12:33:20 +10:00
skidau 70605cae5c Merge pull request #2300 from lioncash/update
Debugger: Update the registers/watches before refreshing grids.
2015-04-16 12:30:24 +10:00
skidau c895e4504a Merge pull request #2298 from JosJuice/partitions-no-string-parsing
Fix extracting Wii disc partitions numbered 10 or higher
2015-04-16 12:00:40 +10:00
skidau 221d37ae83 Merge pull request #2287 from lioncash/hkbinds
HotkeyDlg: Get rid of application-wide event bindings.
2015-04-16 11:59:24 +10:00
skidau 6b82b31640 Merge pull request #2285 from linkmauve/nogui-no-x11
NoGUI: Don’t segfault when the DISPLAY environment variable isn’t set
2015-04-16 11:58:15 +10:00
Lioncash 63393570fb PerfQueryBase: Move common implementation variables into base class 2015-04-15 19:22:16 -04:00
Emmanuel Gil Peyrot 1e7ca7f579 NoGUI: Don’t segfault when the DISPLAY environment variable isn’t set 2015-04-16 01:10:57 +02:00
JosJuice 86ceb54c38 Fix extracting Wii disc partitions numbered 10 or higher
Instead of trying to get the partition number from the
(localized!) item name, the partitions are now stored as item data.
2015-04-15 09:29:24 +02:00
Lioncash b0613bb1c8 General: Apply the const specifier where applicable 2015-04-15 02:04:03 -04:00
Lioncash 2cddb8f480 Debugger: Update the registers/watches before refreshing grids. 2015-04-15 00:13:13 -04:00
Lioncash bdde6b2a7c D3D: Remove dependency on wxWidgets
This hasn't been necessary for ages
2015-04-14 22:27:03 -04:00
Lioncash a6970b3744 Merge pull request #2288 from lioncash/unnecessary
ISOProperties: Remove unnecessary/unused variables & controls.
2015-04-14 10:42:29 -04:00
Lioncash 882080c282 Merge pull request #2284 from lioncash/leaks
DolphinWX: Fix memory leaks relating to the TAS dialog
2015-04-14 10:38:48 -04:00
Lioncash c36a6b7599 Merge pull request #2291 from JosJuice/qt-sort-ascending-title
DolphinQt: Sort game list by ascending title order by default
2015-04-13 02:36:31 -04:00
comex 8ebe3d3478 Remove unused field. 2015-04-13 02:27:08 -04:00
comex 5fff97f3f4 Fix printf width in TraversalServer. 2015-04-13 02:26:52 -04:00
comex ba664b3293 Join the emu thread in Core::Stop. Get rid of Core::Shutdown which did that before.
Core::Shutdown was only called on app exit, yet the emu thread exits
whenever emulation stops; if you launched a new game it would just join
via the destructor when s_emu_thread was set to a new thread.
(Incidentally, the destructor also makes explicitly joining on app exit
rather pointless.)

Because the GUI thread wasn't waiting for the CPU thread to fully shut
down, Core::IsRunning would remain true briefly after CFrame::DoStop
which, given Dolphin's penchant for accessing variables belonging to
other threads, can only mean trouble... In my case, because the previous
commit caused UpdateGUI, which is called at the end of DoStop, to call
PauseAndLock, which checks IsRunning, pressing stop at the right time
would cause strange behavior.
2015-04-13 02:17:38 -04:00
comex e000aaaf5d Have the UI thread do PauseAndLock before messing with GetUsbPointer.
Since its lifetime is managed on the CPU thread, this (or a refactoring)
is absolutely required.  One of the functions with a PauseAndLock call
added is CFrame::UpdateGUI; this is fine now, since it's called only
after important events happen, so just make sure not to call it every
frame or something :)
2015-04-13 01:49:24 -04:00
JosJuice bd680aa3b5 Main: Remove unnecessary shellapi.h include
The include was introduced by bcf1f54c and made unnecessary by 611f3494.
2015-04-12 10:22:18 +02:00
mathieui 4c2d25eeaf Fix a warning
HotkeyManagerEmu.enabled is unused, as everything now uses
HotkeyManagerEmu.s_enabled.
2015-04-11 19:47:39 +02:00
JosJuice 9e4eefc6fd DolphinQt: Sort game list by ascending title order by default 2015-04-11 16:44:35 +02:00
Rachel Bryk 48a1d97fe7 Disable oc setting while netplay or movie is active. 2015-04-11 03:54:11 -04:00
Lioncash bd28d260ce DolphinWX: Break the netplay UI controls into separate classes. 2015-04-11 01:35:54 -04:00
Lioncash 5d7cd29a8b ISOProperties: Remove unnecessary/unused variables & controls. 2015-04-10 19:53:58 -04:00
Lioncash 9cc244e913 HotkeyDlg: Get rid of application-wide event bindings.
This dialog is used as a modal dialog, so making the key-press event bindings application-wide is unnecessary.
2015-04-10 19:31:37 -04:00
Lioncash 00943b1ef4 DolphinWX: Fix memory leaks relating to the TAS dialog
Initially, the dialogs construct in the background when Dolphin initializes. However, it waits until the user actually makes the dialogs visible to decide on whether to create the Wii or GC control layouts.

Therefore, the call to CreateBaseLayout() essentially creates a sizer that isn't actually attached to a main sizer that is set as the sizer for the dialog to use. So upon destruction, these controls would never actually be destroyed if the user didn't open and then close the TAS dialogs.
2015-04-09 23:33:33 -04:00
Lioncash 1a18cad178 Merge pull request #2281 from Stevoisiak/MoveCountryWorld
Re-sort Country_World
2015-04-09 12:15:18 -04:00
Lioncash 2c2409fee4 Merge pull request #2278 from lioncash/leak
Debugger: Fix memory leaks related to grid tables
2015-04-09 11:07:27 -04: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 76d0cfa8ac Fix terrible Speed Up Disc Transfer Rate mistake
I apologize.
2015-04-08 08:59:49 +02:00
Lioncash 180854c617 Debugger: Fix memory leaks related to grid tables
Incrementing the reference count here isn't necessary, as they construct with a count of 1. Incrementing again results in the attributes not being freed.
2015-04-07 23:16:29 -04:00
skidau f8a4d4702c Merge pull request #2252 from mathieui/traversal-timeout
NetPlay: Don’t wait forever in the traversal client
2015-04-08 11:56:57 +10:00
skidau ff891394e8 Merge pull request #2248 from mathieui/netplay-disable-ui
NetPlay: Disable some UI elements when a game is running
2015-04-08 11:56:06 +10:00
skidau 5638ddaf6c Merge pull request #2263 from JosJuice/sudtr-not-instant
Make Speed Up Disc Transfer Rate not instant
2015-04-08 11:54:44 +10:00
Lioncash ec96119f8c TASInputDlg: Remove unnecessary explicit bools 2015-04-07 21:44:51 -04:00
degasus ef6bdf674f Common: Remove TLS usage in GetLastErrorMsg
Just return std::string as this code isn't performance critical.
2015-04-07 22:42:21 +02:00
Lioncash 4796dc80bf Merge pull request #2254 from SizzlingCalamari/remove-DSPLLE-cycle-mutex
Made cycle count atomic to avoid using a mutex
2015-04-07 08:27:38 -04:00
Lioncash 54cedf77f9 Merge pull request #2265 from lioncash/warn
ConfigManager: Fix a sign mismatch warning
2015-04-06 09:34:23 -04:00
degasus 74795b4553 Fifo: rewrite Fifo_PauseAndLock
This lock isn't required any more as our FlushGpu garanty to block until the GPU is idle
2015-04-06 12:35:35 +02:00
degasus b1ffd32f5f Fifo: only touch the SIMD state once in the single core loop 2015-04-06 12:35:35 +02:00
degasus d2c62b1744 Fifo: only sleep once within every ms of emulated time 2015-04-06 12:35:35 +02:00
degasus b020ae1c5d Fifo: rewrite sync on idle skipping hack
Now it's done without a busy loop
2015-04-06 12:35:35 +02:00
degasus 9bdaa00e2d Fifo: use the outer loop on sync GPU 2015-04-06 12:35:35 +02:00
degasus 279c657cda Fifo: Replace busy loop with condition variable 2015-04-06 12:35:27 +02:00
Scott Mansell 9fdc713c87 While I'm here, Add some comments. 2015-04-05 21:19:56 +12:00
Scott Mansell e9459fb30a JitIL: Fix a bug in floatpoint load/store instructions.
The regBuildMemAddress function already clears the address register.
Not only is clearing it again pointless, regBuildMemAddress uses the
bits in IInfo slightly diffrently and the second clear can clear
the wrong registers causing bugs if something else actually needs to
use those registers.
2015-04-05 20:17:50 +12: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
Lioncash 2211aead7f DSPInterpreter: Remove unused volatile variable and related function 2015-04-03 22:46:30 -04:00
Stevoisiak 78971b0840 (Visual Studio) Categorize SoundStream.h with other SoundStream files 2015-04-03 14:37:03 -04:00
Lioncash 7848876f99 ConfigManager: Fix a sign mismatch warning 2015-04-02 14:30:38 -04:00
Lioncash 38236fb8e8 Merge pull request #2262 from Buddybenj/change-wording-2
Change Wording in Help Menu
2015-04-02 13:36:48 -04:00
JosJuice ee3d36af92 Make Speed Up Disc Transfer Rate not instant
The instant speed broke some games. SUDTR will now emulate
the transfer from the disc drive buffer to the main memory,
but not the speed of the disc drive itself.
2015-04-02 11:46:19 +02:00
Buddybenj fb0d3a9756 Change Wording in Help Menu
"Dolphin at GitHub" doesn't make much sense IMO. We could also make it say "Source Code" or "Dolphin on GitHub".

I also changed "Dolphin Website" to make it consistent with the Qt version.
2015-04-01 18:08:26 -05:00
JosJuice 0deb9f5e39 Revert "Merge pull request #2256 from RachelBryk/Dolphin-Pro"
This reverts commit ae0a090701, reversing
changes made to 6b6b5ed37f.
2015-04-01 22:30:57 +02:00
degasus 119fea0d72 Remove TM character which breaks our buildbot
Or github...
2015-04-01 22:24:13 +02:00
Pierre Bourdon ae0a090701 Merge pull request #2256 from RachelBryk/Dolphin-Pro
Limit Wiimote battery usage for Dolphin-lite users.
2015-04-01 21:07:22 +02:00
Rachel Bryk ba93b91565 Add an option for wiimote battery. 2015-04-01 05:29:45 -04:00
Rachel Bryk d39d89594d Limit Wiimote battery usage for Dolphin-lite users.
Wiimote batteries drain over time. The user must upgrade to Dolphin Pro for $19.95 to recharge them.
2015-04-01 04:31:03 -04:00
Fog a94e31e476 Update About Dolphin Screen 2015-03-31 21:30:05 -04:00