Commit Graph

9209 Commits

Author SHA1 Message Date
Jules Blok 961076a3d5 D3D: Return to windowed mode before destroying the swapchain. 2014-07-19 21:14:45 +02:00
Jules Blok 77bc879384 D3D: Add exclusive fullscreen support. 2014-07-19 21:14:44 +02:00
Jules Blok d72375fdfa D3D: Request desktop resolution before overriding the buffer size.
This fixes issues where the wrong refresh rate is selected for some monitors.
2014-07-19 21:14:44 +02:00
Jules Blok c323b386ae Prevent DXGI from making changes to the window.
Prevents DXGI from responding to Alt+Enter and messing up our fullscreen handling.
2014-07-19 21:14:43 +02:00
Jules Blok 8d76dca30d Frame: Make RendererHasFocus() compatible with the new window structure. 2014-07-19 21:14:38 +02:00
Jules Blok 66fec6d0bd Remove CPanel.
Let the RenderFrame handle those messages.
2014-07-19 21:13:15 +02:00
Dolphin Bot 5df45dfbba Merge pull request #650 from lioncash/scrolling
DolphinWX: Implement scrolling in the memory views
2014-07-19 19:31:41 +02:00
Jules Blok 1b70bebb5a Don't create a Panel for a seperate render window.
Instead of setting RenderParent to null and raising complexity RenderFrame can be its own parent.
2014-07-19 15:56:49 +02:00
booto 631a361cc8 GCPadEmu: stop sticks wrapping at extreme values 2014-07-19 19:22:05 +08:00
LPFaint99 da99e0448b GCI Folder: no need to force reload sysmenu to get version
causes crash with larger gci folders as we pull the loader out from under the ppc
2014-07-18 20:34:26 -07:00
Lioncash a00c7bdb9e DolphinWX: Implement scrolling in the memory views 2014-07-18 22:42:03 -04:00
TotalNerd b2ac65bb21 Revised channel access from EXI_DeviceMemoryCard 2014-07-18 20:06:03 -05:00
Ryan Houdek bc9ef95643 Support Sampler binding in the shader.
In the cases where we support the binding layout keyword, use it for more than binding UBO location.
This changes it so it is supported for samplers as well.

Instances when this is enabled is if a device supports GL_ARB_shading_language_420pack, or if it supports GLES 3.10.
2014-07-18 17:04:03 -05:00
Dolphin Bot b9dc69105d Merge pull request #595 from Armada651/pref_log
FPSCounter: Flush the logs every second and close them when the renderer is shut down.
2014-07-18 12:59:04 +02:00
Jules Blok eaa7460636 FPSCounter: Remove redundant destructor. 2014-07-18 12:49:40 +02:00
Pierre Bourdon a180cd60ee Merge pull request #640 from lioncash/debugger
DolphinWX: Enable certain Code View context options only when the core is running.
2014-07-18 09:15:03 +02:00
Pierre Bourdon 8085b3d264 Merge pull request #638 from lioncash/bound-check
Core: Fix bounds checking within GCMemcard.cpp.
2014-07-18 09:14:27 +02:00
Pierre Bourdon 4db84c5188 Merge pull request #637 from lioncash/unused
Core: Remove unused function Callback_ISOName()
2014-07-18 09:14:06 +02:00
Pierre Bourdon 2fbdc03572 Merge pull request #642 from phire/vs-constants
VideoSoftware: Use the same max XFB size as VideoCommon.
2014-07-18 09:12:36 +02:00
Lioncash 98f352a4e6 Core: Fix warnings in JitRegCache 2014-07-18 02:44:29 -04:00
Tillmann Karras 771a30da36 Jit64: implement frsp 2014-07-17 23:22:41 +02:00
TotalNerd f602372885 Redo timing in DMAWrite/DMARead 2014-07-17 10:57:34 -05:00
TotalNerd 8a0093de23 Emulate GameCube memory card speeds 2014-07-17 10:57:34 -05:00
Scott Mansell 7aff56bef5 Implement the correct method for determining field order.
Based on advice from tueidj we implement this method based on how
TVs actually determin the field order.

Removes spammy messages about "Invalid field order"
2014-07-17 23:56:23 +12:00
Pierre Bourdon d44fc48295 SW: Call OnFrameEnd in the FifoPlayer XFB hack. Required to dump DFF frames. 2014-07-17 13:20:13 +02:00
Scott Mansell 2be83c13be VideoSoftware: Use the same max XFB size as VideoCommon.
And lets just use the same constant as videocommon, so if it ever
increases (again) VideoSoftware will be automatically updated.
2014-07-17 22:39:09 +12:00
Lioncash bc172f4883 DolphinWX: Enable certain Code View context options only when the core is running.
Prior to this, attempting to execute these contextual menu options would
crash the application.
2014-07-17 04:50:53 -04:00
Scott Mansell 48afab2685 Correct left/right volume for padded samples. 2014-07-17 18:41:18 +12:00
Scott Mansell a0101c5d29 Audio Mixer: move Static variable to a member variable.
The two instances of this class were sharing a frac variable causing
audio glitches when both were running (which is now all the time).

Fixes issue 7463 (Since DTK merge, audio has staic in it).
2014-07-17 18:26:21 +12:00
Lioncash 7ca8a834c1 Core: Fix bounds checking within GCMemcard.cpp.
Prior to this 127 would be an allowed numeric index. However There is only an addressable range from 0-126.
2014-07-17 01:33:47 -04:00
LPFaint99 19c94de6e0 Gcifolder use correct region for fifologs and homebrew 2014-07-16 21:41:09 -07:00
Lioncash 041445a155 Core: Remove unused function Callback_ISOName() 2014-07-16 20:44:17 -04:00
Dolphin Bot 51dff5a74e Merge pull request #622 from phire/sw-fix-frame-dump
Fixed Frame dumping in VideoSoftware.
2014-07-17 02:04:03 +02:00
Scott Mansell 92eed47213 Fixed Frame dumping in VideoSoftware.
Old code dumped the efb, which was no-longer relevant since the
backend gained xfb support.
New code dumps the colour texture which is about to be rendered to
the screen so correctly reflects the bypassXFB option.
2014-07-17 11:43:59 +12:00
Pierre Bourdon 8cf21cdcdb Merge pull request #633 from magcius/wip/input-focus-fix
Fix input focus issues
2014-07-17 01:21:31 +02:00
Pierre Bourdon 9481af886b Merge pull request #632 from lioncash/dolwx
DolphinWX: Mild readability clean up of CodeView.
2014-07-16 23:46:47 +02:00
Pierre Bourdon ebec4b01ef Merge pull request #634 from degasus/pixelshader-align
PixelShaderGen: fix indentation
2014-07-16 23:43:36 +02:00
Jules Blok 3b978f7c27 Turn the FPSCounter namespace into a class. 2014-07-16 20:40:40 +02:00
Tony Wasserka 2daa83da48 Merge pull request #372 from Tilka/fctiwzx
Jit64: implement fctiwx/fctiwzx
2014-07-16 17:41:21 +02:00
degasus 01fd96ab31 PixelShaderGen: fix indentation 2014-07-16 17:24:43 +02:00
Jasper St. Pierre 44307c9508 Host: Add a new "UIHasFocus" hook to determine if the UI has focus
We can't use RendererHasFocus for this purpose because of some issues
with exclusive fullscreen, and the new RendererHasFocus implementation
didn't work for non-Render to Main Window cases, since the renderer
window wasn't managed by wx.
2014-07-16 10:27:21 -04:00
Jasper St. Pierre ee087f5953 Revert "Frame: Fix RendererHasFocus"
This reverts commit ff918df889.

This changed it from "RendererHasFocus" to "UIHasFocus", which is
wrong. Specifically, it broke for non-Render to Main Window cases where
the renderer window isn't managed by wx. It also broke the pending
exclusive fullscreen support, which checks this function to determine if
the renderer is on top so it can full-screen it.

We'll add a new hook, "UIHasFocus", in the next commit.
2014-07-16 10:26:06 -04:00
Lioncash 48ca800b13 DolphinWX: Mild readability clean up of CodeView.
- Gets rid of the underscore in some function names
- Appends the 'm_' prefix to class member variables.

Now it isn't a pain to see what is being modified in terms of state. Especially in the OnPaint call.
2014-07-15 23:01:17 -04:00
Dolphin Bot 57a4bfb835 Merge pull request #631 from lioncash/scrolling
DolphinWX: Implement scrolling in the code view and DSP disassembly view.
2014-07-16 03:53:53 +02:00
Lioncash 9c1b427687 DolphinWX: Implement scrolling in the code view and DSP disassembly view. 2014-07-15 21:35:11 -04:00
Lioncash 6c57457f9f Core: Correct some function casings. 2014-07-15 19:41:50 -04:00
Tillmann Karras 6521929f99 Jit64: implement fctiw/fctiwz 2014-07-15 23:58:09 +02:00
Tillmann Karras 6df48ed432 x64Emitter: add CVTTPD2DQ 2014-07-15 23:53:56 +02:00
Rachel Bryk ed5169c5eb Fix leaking exi devices. 2014-07-15 16:15:38 -04:00
Lioncash ebd029973a Merge pull request #604 from magcius/wip/emu-cleanup-2
Start cleaning up the input interface
2014-07-15 12:11:17 -04:00
Lioncash 01cd90deef Merge pull request #544 from LPFaint99/memcard
GCI Folder fix compatibility with games that relocate the save after first use
2014-07-15 12:09:56 -04:00
Lioncash 0720a36c99 Merge pull request #624 from phire/fix-334-issue
Fix another protential issue with casting.
2014-07-15 12:04:16 -04:00
Lioncash 79eb0f8d0c Merge pull request #623 from phire/sw-xfb-clamping
Fix incorrect clamping in SWRenderer.
2014-07-15 12:04:06 -04:00
Scott Mansell b8695a57da Fix incorrect clamping in SWRenderer.
A previous PR changed a whole lot of min/maxes to std::min/std::max
but made a mistake here and used a templated min which cast it's
arguments to unsigned instead of casting return value.

This resulted in glitchy artifacts in bright areas (See issue 7439)

I rewrote the code to use a proper clamping function so it's cleaner
to read.
2014-07-15 21:15:49 +12:00
Lioncash 8cc11de94a Merge pull request #625 from lioncash/logging
Remove some unnecessary defines in Log.h
2014-07-15 02:37:16 -04:00
Tillmann Karras 4063694d20 VideoCommon: fix ifdef expression 2014-07-15 04:15:49 +02:00
LPFaint99 198d137ca0 GCI Folder fix compatibility with games that relocate the save after first use 2014-07-14 18:52:29 -07:00
Lioncash 8087a89afd Remove some unnecessary defines in Log.h 2014-07-14 15:51:28 -04:00
Scott Mansell d4a2afe345 Fix another protential issue with casting.
Another issue from #334 with the casting moved from the output of
min to it's inputs.

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

Restored the casting to the original order before #334.
2014-07-15 01:38:05 +12:00
Scott Mansell d4cfddcf8d Revert "DolphinWX: Use non-deprecated flags for the monospace debugger font" 2014-07-14 21:37:27 +12:00
shuffle2 3ac4e9f171 Merge pull request #608 from lioncash/compat
DolphinWX: Remove the use of some wx 1.0 compatibility function calls.
2014-07-14 01:56:09 -07:00
shuffle2 0c6eeaff05 Merge pull request #617 from Tilka/clang_bug
VideoCommon: fix clang version check
2014-07-14 01:55:31 -07:00
Pierre Bourdon 1464cfee13 Merge pull request #619 from lioncash/dpl2
Correct the function casing for DPL2Decoder
2014-07-14 10:21:20 +02:00
Lioncash 2c73472671 Correct the function casing for DPL2Decoder
Brings it more in-line with the rest of the codebase.
2014-07-14 03:34:40 -04:00
Lioncash b66eb03b2f OGL: Correctly guard against array bounds of s_encodingPrograms
s_encodingPrograms is defined as an array with a length of 64
NUM_ENCODING_PROGRAMS is also defined as 64.

However 64 is out of bounds, so we want to be comparing for "equal to or
greater than here"
2014-07-14 00:48:14 -04:00
Lioncash d931637d63 DolphinWX: Remove two c_str calls in ISOProperties.cpp. 2014-07-13 23:43:41 -04:00
Lioncash 5c57a1ef4b DolphinWX: Remove the use of some wx 1.0 compatibility functions.
Uses the recommended replacements.
2014-07-13 23:42:37 -04:00
Tillmann Karras dbc30c6c76 VideoCommon: make version check easier to read 2014-07-14 03:05:56 +02:00
Pierre Bourdon dee6f226a3 Merge pull request #614 from Tilka/branch_prediction
[RFC] Common: add macros for assisting branch prediction
2014-07-14 03:00:08 +02:00
Tillmann Karras 0be03252cc VideoCommon: fix clang version check
That was... er... a typo!
2014-07-14 02:59:31 +02:00
shuffle2 3f67ec0d50 Merge pull request #611 from Tilka/clang_bug
VideoCommon: version-check clang for workaround
2014-07-13 17:52:54 -07:00
Tillmann Karras b6f3ae23bc VideoCommon: version-check clang for workaround
The bug was fixed in clang 3.4.
2014-07-14 02:12:48 +02:00
Pierre Bourdon 5c701f6e82 Merge pull request #610 from lioncash/delete
DolphinWX: Remove the need for an explicit new/delete in ISOProperties
2014-07-14 01:55:11 +02:00
Tillmann Karras d398e9ef61 Common: add macros for assisting branch prediction 2014-07-14 01:52:14 +02:00
Jules Blok aa2495205e Shutdown the Core before other components.
Other components depend on the EmuThread being stopped.
2014-07-13 23:47:59 +02:00
Pierre Bourdon 8876ee120a Change libav* autodetection to support framedumping on Ubuntu 14.04
Add an "ugly" workaround in the AVIDump code, but looking at other project this
seems to be the most common way to handle this API change.
2014-07-13 23:06:20 +02:00
shuffle2 3cabacde9d Merge pull request #613 from lioncash/uninitialized
Core: Fix potential uninitialized var usage in WII_IPC_HLE_Device_usb
2014-07-13 14:03:02 -07:00
Lioncash fae0cf3698 Core: Fix potential uninitialized var usage in WII_IPC_HLE_Device_usb
If "if (ReadStoredLinkKey->read_all == 1)" is not true, then
num_keys_read would be used uninitialized.
2014-07-13 15:41:35 -04:00
Lioncash 9d3c0102fc Core: Get rid of an unnecessary struct typedef in Boot.h. 2014-07-13 15:28:50 -04:00
Lioncash 5b649902dc DolphinWX: Remove the need for an explicit new/delete in ISOProperties
Just use a normal constructor call and call Destroy to close the window.
2014-07-13 15:06:03 -04:00
Pierre Bourdon 16582a0459 Merge pull request #543 from RachelBryk/patches
Fix patches not being loaded when running real gc bios.
2014-07-13 06:25:39 +02:00
Pierre Bourdon 0563960dbc Merge pull request #603 from lioncash/debugger-font
DolphinWX: Use non-deprecated flags for the monospace debugger font
2014-07-13 06:21:02 +02:00
Pierre Bourdon 12fa5ba8b4 Merge pull request #607 from Tilka/fix_warnings
Fix warnings unearthed by #579
2014-07-13 06:20:45 +02:00
Tillmann Karras 0ccee6c87b Fix warnings unearthed by #579 2014-07-13 02:16:51 +02:00
Jules Blok 64801008a0 NoGUI: Add missing call to Core::Shutdown().
Fixes a crash when exiting the application.
2014-07-13 01:05:09 +02:00
Jasper St. Pierre ff918df889 Frame: Fix RendererHasFocus
The logic of RendererHasFocus was extremely convoluted beforehand and
was too brittle and broke in certain circumstances, like when the
GCPad window was active. Simplify it and leave a comment explaining the
new logic. This fixes the GCPad window not working when Background Input
is unchecked.
2014-07-12 07:29:49 -04:00
Lioncash 26f3867e20 DolphinWX: Allow short-hand searching in the code window
Lessens the restrictions on the searching in the code view.
Now typing out the full 8 digit hex number isn't needed. For example, you don't need to type 000000FF to go to FF, you just literally type FF.

Also makes JumpToAddress a boolean function to remain consistent with the DSP code view.

This will also change the address search box to have a red background if
either an invalid hex number is given, or if it's longer than 8 characters
2014-07-11 18:32:32 -04:00
Lioncash 58c58d2f92 InputCommon: Use enums instead of defines within GCPadStatus.h 2014-07-11 17:18:11 -04:00
Jasper St. Pierre e4eec2002b ControllerEmu: Remove focus-checking code from the rest of ControllerEmu 2014-07-11 14:08:29 -04:00
Jasper St. Pierre 74f3083381 ControllerInterface: Gate the input based on our new background input setting 2014-07-11 13:38:52 -04:00
Jasper St. Pierre 5abc028ace ControllerEmu: Make BackgroundInput a global setting through the virtualization
This will allow us to simplify the checks for background input and push
them further down into the architecture, into the ControllerEmu layer.

The new setting isn't actually used yet, though.
2014-07-11 13:38:37 -04:00
Jasper St. Pierre 0d49bf65a7 ControllerEmu: Virtualize settings
This will allow us to move Background Input to a global setting rather
than a local setting.
2014-07-11 13:32:58 -04:00
Jasper St. Pierre a6dc3c47a9 ControllerEmu: Change the GetState interface to remove range/base
Do the scaling in the code that interprets the results.

This also removes the templatization of things and changes the interface
to always take a double.

This does add a bit more code to the users of GetState, especially when
having to deal with focus management, but this will be cleaned up very
soon, as focus and focus-related options will be centralized inside the
input platforms themselves, rather than spread out across all the input
plugins.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre 0d11081a3b ControllerEmu: Clean up the code that applies the modifier
This makes it more clear and pretty much the analog stick code bog standard.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre c29d5ff989 ControllerEmu: Always convert to polar coordinates and back
Most users will have something in the radius or deadzone fields, so
don't bother filtering out 'extra' work. This also lets us clean up
the modifier implementation.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre f2d4f10fc9 ControllerEmu: Remove support for the "Square Stick" option
It was only used for really old joypads which we really don't want to
support. If users have these joypads, they should look into using
something at the OS level, as games shouldn't need to have this
transformation; it should be done by the OS and driver.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre 07c4925059 InputConfigDiagBitmaps: Clean up the FORCE drawing code as well 2014-07-11 13:32:57 -04:00
Jasper St. Pierre 4d2a39090b InputConfigDiagBitmaps: Rewrite the stick visualization code
Change our DrawCoordinate helper method to take raw coordinate
positions, and draw the rectangle using that. This is a lot better
and more friendly than applying various crazy constants in the GetState
for the base/range.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre 8abff435e6 InputConfigDiagBitmaps: Clean up code a bit more
Split out some math into a utility.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre 3c411c33e8 InputConfigDiagBitmaps: Start a cleanup by splitting code out
This doesn't have any functional changes, it just removes part of the
mess by killing indentation.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre 68a4979f35 Nunchuk: Stop the dereference dance 2014-07-11 13:32:56 -04:00
Jasper St. Pierre e20a0265de Remove UDPWiimote feature
It substantially complicates the code and doesn't really provide any
functionality. According to the forums, the Android app is out of date
and has been broken for quite a while.

If we want to add this back, I'd write an app that speaks a more native
Wiimote protocol, and we can hook that up to the backend quite easily.
It could even be over our NetPlay protocol!
2014-07-11 13:32:56 -04:00
Jasper St. Pierre c11672b2d8 ControllerEmu: Constructors go on top 2014-07-11 13:32:18 -04:00
Jasper St. Pierre d468c38335 ControllerEmu: Fix code style 2014-07-11 13:32:18 -04:00
Jasper St. Pierre 0c9f6c2a2b ControllerEmu: Remove unnecessary include 2014-07-11 13:32:18 -04:00
Lioncash 6885bac05f DolphinWX: Use non-deprecated flags for the monospace debugger font 2014-07-11 13:11:11 -04:00
degasus 7e79806efc remove unused globals
Also change globals into statics which are only used in one file
2014-07-11 16:10:20 +02:00
degasus 81ed17be53 avoid the extern keyword in .cpp files 2014-07-11 16:10:20 +02:00
degasus 6d3f249dcc mark all local variables as static 2014-07-11 16:10:20 +02:00
degasus 22e1aa5bb4 mark all local functions as static 2014-07-11 16:07:23 +02:00
Tony Wasserka 326af097d9 Merge pull request #593 from neobrain/master
Use uniform capitalization in VideoConfigDiag
2014-07-11 13:26:23 +02:00
Dolphin Bot 75c6575f37 Merge pull request #601 from lioncash/pad-struct
Change SPADStatus struct name to GCPadStatus
2014-07-11 06:20:33 +02:00
Lioncash 896d7e5685 Change SPADStatus struct name to GCPadStatus
Also get rid of the typedef, since this is unnecessary in C++
2014-07-10 22:02:38 -04:00
Pierre Bourdon ef510a4f73 Merge pull request #594 from lioncash/another-clamp-removal
DolphinWX: Remove yet another clamp method
2014-07-11 02:48:27 +02:00
Lioncash 6f9483d161 DolphinWX: Remove unnecessary true within event Skip calls 2014-07-10 20:39:26 -04:00
Lioncash 32d53c7d1d DolphinWX: Get rid of an unneccessary cast in CodeWindow
CFrame inherits from CRenderFrame which inherits from wxFrame which
eventually inherits from wxWindow, so this cast is not required.
2014-07-10 20:29:55 -04:00
Jules Blok 6def4ead01 FPSCounter: Flush the logs every second and close them when the renderer is shut down. 2014-07-10 23:11:28 +02:00
Jules Blok 1754cbda9d Move FPSCounter calls to RenderBase. 2014-07-10 23:11:09 +02:00
Dolphin Bot bc655d1a82 Merge pull request #515 from Armada651/threading
Make the emulation stop asynchronous to prevent deadlocks.
2014-07-10 21:02:47 +02:00
shuffle2 15c1250d9d Merge pull request #596 from delroth/master
AVIDump: fix FFV1 encoding
2014-07-09 18:02:40 -07:00
Pierre Bourdon da697df6ee AVIDump: fix FFV1 encoding
ffmpeg 2.0 changed requirements for the FFV1 encoder and made them more strict,
requiring more fields of the input frame to be initialized. Explicitly setting
pixfmt, width and height solve the EINVAL issues with FFV1 encoding.

Original fix from http://ffmpeg.org/pipermail/libav-user/2013-October/005759.html
2014-07-10 02:53:12 +02:00
Lioncash dbdefd074b DolphinWX: Remove yet another clamp method 2014-07-09 16:17:13 -04:00
Tony Wasserka ff0f90efa1 VideoConfigDiag: Use uniform capitalization.
Nouns should be written capitalized for consistency.
2014-07-09 21:52:04 +02:00
Lioncash 7b95bc78aa Merge pull request #592 from Armada651/pref_log
FPSCounter: Change format string to match value.
2014-07-09 13:56:52 -04:00
Jules Blok 09304cab57 FPSCounter: Change format string to match value. 2014-07-09 19:45:56 +02:00
Dolphin Bot 7b754d6f99 Merge pull request #591 from Armada651/pref_log
FPSCounter: Add "Log render time to file" feature.
2014-07-09 18:06:57 +02:00
Jules Blok 95b579746f Replace "Log FPS to file" by the "Log render time to file" feature. 2014-07-09 17:56:11 +02:00
Jules Blok 61d44cf73f FPSCounter: Use a Timer for the FPS update time. 2014-07-09 17:53:41 +02:00
Jules Blok efeadb7fe9 FPSCounter: Add "Log render time to file" feature.
Allows for a more accurate performance measurement.
2014-07-09 17:53:31 +02:00
Rachel Bryk 36bc494a0b Fix code style in WII_IPC_HLE_Device_net.h/.cpp. 2014-07-09 05:26:04 -04:00
Pierre Bourdon 29873a7c55 Merge pull request #585 from lioncash/sprintfs
DolphinWX: Kill off sprintf calls in CheatsWindow.cpp
2014-07-09 02:36:22 +02:00
Pierre Bourdon beeed520a5 Merge pull request #582 from lioncash/casts
DolphinWX: Remove redundant casts in ISOProperties
2014-07-09 02:35:05 +02:00
Jules Blok 4df00ae544 Movie: Do not attempt to record input when the emulation has not started yet.
Fixes a null pointer exception when the user starts the recording during a state transition.
2014-07-08 22:32:35 +02:00
Jules Blok db7e746cb4 Check whether the core is running instead of checking if it is unitialized.
This properly handles the stopping state and more accurately represents the intended check.
2014-07-08 22:30:44 +02:00
Lioncash 54105a8bba DolphinWX: Kill off sprintf calls in CheatsWindow.cpp 2014-07-08 16:19:34 -04:00
Lioncash 1f25f3c1c9 Merge pull request #584 from lioncash/bind
DolphinWX: Bind the drop handling function to the frame with Bind, not Connect
2014-07-08 16:11:08 -04:00
Lioncash d2ddf40ccb DolphinWX: Bind the drop handling function to the frame with Bind, not Connect. 2014-07-08 15:41:21 -04:00
Jules Blok ad1b61af2e FrameTools: Update GUI and disable Play button when in stopping state. 2014-07-08 21:21:25 +02:00
Jules Blok 49eade69a3 Core: Return CORE_STOPPING even if hardware is already uninitialized. 2014-07-08 21:21:24 +02:00
Jules Blok b30d5dccbe Frame: OnClose now handles asynchronous behaviour of DoStop(). 2014-07-08 21:21:24 +02:00
Jules Blok 3266394dfb Make the emulation stop asynchronous to prevent deadlocks.
This may expose bugs which relied on the Main Thread to be suspended in the stopping state.
2014-07-08 21:21:23 +02:00
Lioncash 2eb12dee55 DolphinWX: Remove a wx 2.9.0 and 2.8.0 version check in GameListCtrl 2014-07-08 14:42:10 -04:00
Lioncash 5fe293af9d DolphinWX: Remove redundant casts in ISOProperties
These are both int, so the cast isn't necessary
2014-07-08 14:31:12 -04:00
Dolphin Bot 3bde3988eb Merge pull request #576 from lioncash/shader-string
D3D: Use std::strings for Compile[x]Shader and CompileAndCreate[x]Shader
2014-07-08 12:10:14 +02:00
Lioncash a523a6d1bf D3D: Use std::strings for Compile[x]Shader and CompileAndCreate[x]Shader
With strings, we don't need to care about passing in a length, since it internally stores it. So now, we don't even need a length parameter for these functions anymore as well.
This also kills off some sprintf_s calls.
2014-07-07 19:32:03 -04:00
Pierre Bourdon b0b70381f7 Revert "Don't add segfault handler in interpreter mode" 2014-07-07 05:30:06 +02:00
Lioncash ec1e52de53 VideoCommon: Get rid of an snprintf call in VideoConfig.cpp 2014-07-06 15:33:08 -04:00
Dolphin Bot cc3dda5b22 Merge pull request #362 from Tilka/ffmpeg_libav_new
AVIDump: use new ffmpeg/libav API
2014-07-06 19:33:27 +02:00
Dolphin Bot 4ec8c3714d Merge pull request #328 from Tilka/enum_cpubackend
Don't add segfault handler in interpreter mode
2014-07-06 19:28:10 +02:00
Dolphin Bot db4e32a124 Merge pull request #547 from lioncash/cleanups
Clean up the DSP disassembler a little.
2014-07-06 19:20:07 +02:00
Tony Wasserka a798548c30 Merge pull request #546 from workhorsy/header_guard_to_pragma_once
Changed lingering header include guards to pragma once.
2014-07-06 14:19:32 +02:00
Ryan Houdek 4483b64bcb Merge pull request #463 from degasus/vertex_format_cache
VideoCommon: Cache native vertex formats
2014-07-06 05:26:42 -05:00
degasus e72b01caa1 ConfigManager: fix alignment 2014-07-06 11:05:16 +02:00
Lioncash 09eb1acc5e Common: Using size_t in PointerWrap's DoContainer apparently causes crashes. Fixes this. 2014-07-06 03:05:27 -04:00
Rachel Bryk 5558aa08c2 Fix hiding size column in game list. 2014-07-06 01:59:38 -04:00
Dolphin Bot 4117b5ec12 Merge pull request #563 from lioncash/pointerwrap
Common: Make DoContainer within PointerWrap private.
2014-07-06 07:57:22 +02:00
Dolphin Bot 8da2bc63cf Merge pull request #559 from RachelBryk/gci-folder-state
Merge pull request #559 from RachelBryk/gci-folder-state

Keep device type EXIDEVICE_MEMORYCARDFOLDER for gci folder.
2014-07-06 07:34:55 +02:00
Dolphin Bot e9a4a54f89 Merge pull request #564 from lioncash/constants
Merge pull request #564 from lioncash/constants

VideoCommon: Remove some unused constants from VertexShaderGen.h.
2014-07-06 07:24:32 +02:00
Lioncash 48ff45b8a8 VideoCommon: Remove some unused constants from VertexShaderGen.h. 2014-07-05 23:46:07 -04:00
Lioncash b97d2853a7 Common: Make DoContainer within PointerWrap private.
This shouldn't really be exposed as a public function and should only be called through other Do class functions that take a container type as a parameter.
2014-07-05 23:03:43 -04:00
Rachel Bryk 86ccf13c09 End movie play back immediately if g_currentByte > g_totalBytes.
Also uncomment a PanicAlert in the case of g_currentByte > totalSavedBytes, and add comment explaining how it can happen.
2014-07-05 19:48:44 -04:00
Tillmann Karras ad2aaedd8b Don't install segfault handler in interpreter mode 2014-07-05 11:02:41 +02:00
Tillmann Karras 311e9e655a CoreParameter: add enum CPUBackend 2014-07-05 11:02:41 +02:00
Tillmann Karras 20a16beabd enum CPUState: rename CPU_* to STATE_* 2014-07-05 11:01:49 +02:00
Rachel Bryk e02f680861 Keep device type EXIDEVICE_MEMORYCARDFOLDER for gci folder.
This fixes loading save states when type mismatches.
2014-07-05 00:22:42 -04:00
degasus bb2fc8ecbb VideoCommon: Cache native vertex formats
We are used to have a 1:1 mapping of GX vertex formats and the native (OGL + D3D) ones, but there are by far more GX ones.
This new cache maps them directly so that we don't flush on GX vertex format changes as long as the native one doesn't change.

The idea is stolen from galop1n.
2014-07-04 14:39:27 +02:00
Tony Wasserka ee100cf827 Merge pull request #557 from JMC47/pinned_memory
Change comment on Pinned Memory to be less ambiguous
2014-07-04 14:10:00 +02:00
Justin Chadwick 43dcbe0a73 Change the comments to be more detailed. 2014-07-04 08:00:49 -04:00
Pierre Bourdon 7035e5e4fb Merge pull request #555 from JMC47/pinned_memory
Place pinned memory as top priority.
2014-07-04 13:56:45 +02:00
Tillmann Karras 20dc0e7819 Remove unused variables 2014-07-04 03:56:58 +02:00
Tillmann Karras d3fa8a6167 Reorder class initializer lists 2014-07-04 03:53:22 +02:00
Justin Chadwick 30f93ab418 Place pinned memory as top priority 2014-07-03 20:35:13 -04:00
degasus 02ac5e95c8 VideoCommon: normalize lighting direction.
It seems that the lighting direction must be normalized. This fixes lots of lighting issues mostly shown in the d3d backend.
2014-07-03 21:08:19 +02:00
Tony Wasserka be1fe80bb6 Merge pull request #549 from lioncash/fps
FPS counter cleanup
2014-07-03 09:52:29 +02:00
Lioncash 9c764eff3a Fix a type-conversion warning in Movie.cpp
Fixes a C4800 warning. 'int' : forcing value to bool 'true' or 'false'
(performance warning)
2014-07-03 02:07:29 -04:00
Lioncash ab6434f616 Merge pull request #551 from lioncash/movie
Clean up string handling in Movie.cpp
2014-07-02 22:57:01 -04:00
Lioncash d649027ec8 Clean up string handling in Movie.cpp 2014-07-02 22:45:50 -04:00
Rachel Bryk de3f587b32 Add support for 2 memory cards for movies. 2014-07-02 22:26:29 -04:00
Lioncash 00efaedb02 FPS counter cleanup
- Isolate it into it's own namespace
- Shorten function names, the namespace self-documents.
- Just use the std I/O, we can just write directly to the stream for
  logging.
2014-07-02 20:23:09 -04:00
Lioncash af7efaa461 [Core] Clean up the DSP disassembler
- Get rid of deletes.
- Clean out all of the sprintf calls. Now std::string based.
- Fully explicit function names, etc.
2014-07-02 20:19:39 -04:00
Matthew Brennan Jones 124210c50f Changed lingering header include guards to pragma once.
Some headers where using #ifndef to guard being including multiple times. But most were using pragma once. So for consistency I changed them all to use pragma once.
2014-07-01 22:17:33 -07:00
Rachel Bryk 899274445b Fix patches not being loaded when running real gc bios. 2014-06-30 17:28:45 -04:00
Zhuowei Zhang 25bd5e237b Add Change Disc option to the right-click menu in the game list. For issue 7411. 2014-06-30 12:06:45 -07:00
Matthew Parlane 5dc7c8ad31 Remove weird buffering from WII_IPC_HLE_Device_sdio_slot0.cpp 2014-06-30 03:39:40 +00:00
Lioncash fb18b8b689 Merge pull request #541 from lioncash/sdio
Get rid of a few delete[] calls in WII_IPC_HLE_Device_sdio_slot0.cpp
2014-06-29 23:23:19 -04:00
Lioncash 8ada47876a Get rid of a few delete[] calls in sdio_slot0.cpp 2014-06-29 22:55:47 -04:00
Lioncash ada3e97715 Merge pull request #538 from lioncash/savestate-dragdrop
Fix dragging and dropping savestates in the render window
2014-06-29 21:47:51 -04:00
Lioncash 0332d4d76f Merge pull request #539 from jordan-woyak/fix-extract-directory
Fix ISO Directory extraction.
2014-06-29 21:35:46 -04:00
Lioncash d720e3ed0b Merge pull request #452 from degasus/stats
Video statistics update
2014-06-29 16:41:54 -04:00
Lioncash f78b94077e DiscIO: Centralize the banner pointer and validity boolean into IBannerLoader
These are both used within the banner loaders, and IsValid is exactly the
same. So this makes sense.
2014-06-29 15:40:18 -04:00
Lioncash d800b5fb74 DiscIO: Fix extra tabs in the banner loader headers 2014-06-29 15:31:44 -04:00
Jordan Woyak 3805c4967f Fix ISO Directory extraction. 2014-06-29 14:22:06 -05:00
Lioncash 3df00cd3f5 Fix dragging and dropping savestates in the render window 2014-06-28 16:55:15 -04:00
Lioncash 91da031220 Merge pull request #522 from lioncash/fix-dragdrop-crash
Fix crashes when dragging and dropping files outside of the gamelist
2014-06-28 16:53:10 -04:00
Ryan Houdek aae1630949 Merge pull request #533 from Anti-Ultimate/master
Fix OpenGL VSync
2014-06-28 11:06:57 -05:00
Jules Blok 8571d7aceb RenderFrame: Set the background to black. 2014-06-28 16:02:51 +02:00
Anti-Ultimate aacf885b48 Fix OpenGL VSync 2014-06-28 00:10:34 +02:00
Tillmann Karras 6b3e6e6ffb AVIDump: rename frame variables 2014-06-27 19:48:36 +02:00
Tillmann Karras c2c46d7573 AVIDump: update ffmpeg/libav API usage
libav 10 was released on May 10th, 2014 and it drops support for some
long-deprecated stuff like avcodec_encode_video().
2014-06-27 19:48:36 +02:00
Tillmann Karras e3fef8c990 AVIDump: cleanup 2014-06-27 19:48:35 +02:00
galop1n 729758f2f9 Fix an invalid foreach loop over an unordered_map with deletion in WiiSockets 2014-06-27 13:02:28 -04:00
degasus 7db5a4b22d Statistics: Reformat stats string 2014-06-27 09:36:50 +02:00
degasus f1ddd3c66a VideoCommon: remove unused stats 2014-06-27 09:35:26 +02:00
Lioncash bd377b9580 Merge pull request #443 from magumagu/loadstore-cleanup
Loadstore cleanup
2014-06-26 21:32:59 -04:00
Lioncash 11d304ae29 Merge pull request #259 from magumagu/dtk-rewrite
DTK rewrite
2014-06-26 20:01:07 -04:00
magumagu ca0203a1cc AudioCommon: restore support for DTK volume setting. 2014-06-26 16:56:57 -07:00
Lioncash ca5340ebde Centralize the logging code into its own folder in Common. 2014-06-25 22:11:42 -04:00
Ryan Houdek a40ae6883a Move CoreTiming::downcount to PowerPC::ppcState.
This isn't technically the correct place to have the downcount variable, but it is similar to what PPSSPP does to gain a bit of extra speed on ARM.
We access this variable quite a bit, with each exit in a block it is subtracted from.
On ARM this required four instructions to load and store the value, while now it only requires two.

This gives an average of 1FPS gain to most games.
Examples:
Crazy Taxi: 54FPS -> 55FPS
Luigi's Mansion: 20FPS -> 21FPS
Wind Waker(Save Screen): 27FPS -> 28FPS

This seems to average a 6mhz to 16mhz CPU core emulation improvement in the few games I've tested.
2014-06-26 01:48:00 +00:00
Lioncash 177658aed6 Merge pull request #513 from lioncash/vs-x64
Remove the 32-bit config platform from the VS solution file
2014-06-25 21:23:45 -04:00
Lioncash 2db50612b9 Merge pull request #510 from RachelBryk/unused
Remove an unused variable.
2014-06-25 12:41:04 -04:00
Tony Wasserka 416a3201ed Merge pull request #480 from Sonicadvance1/PR371-Revert
Revert "PPCAnalyst now detects internal branches better"
2014-06-25 16:02:52 +02:00
Ryan Houdek a99ad2db7c Merge pull request #499 from magumagu/ipchle-disk-channel
ES_LAUNCH fixes for disk channel etc
2014-06-25 04:00:57 -05:00
Lioncash 8b13afbb8e Remove the 32-bit config platform from the VS solution and projects 2014-06-24 22:07:26 -04:00
Lioncash eb3de73ab9 Merge pull request #531 from LPFaint99/memcard
GCI Folder: correctly identify region of sysmenu
2014-06-24 21:18:27 -04:00
Lioncash 10dc1ef135 Fix crashes when dragging and dropping files outside of the gamelist 2014-06-24 16:43:02 -04:00
Jordan Woyak 516369594f Store ini sections in a std::list (rather than vector) to prevent unexpected pointer invalidation with use of GetOrCreateSection. 2014-06-24 12:37:38 -05:00
LPFaint99 c65a6f5fb0 GCI Folder: correctly identify region of sysmenu 2014-06-23 19:58:27 -07:00
LPFaint99 32b2c40490 first implementation of memcard from directory, creates a memory card from USERDIR/GC/<REGION>/Card <A/B>
Savestates include the entire memorycard, but the only saves that should be modified are the ones that are directly modified by the game the others are preserved merely to avoid changing the memory card header during the game as some games (Zelda) refuse to save

Implement DMA r/w for memcard.
Skips programming buffer for writes

Add a migration feature that auto imports all saves from your default memcard to the new memcard dir if it doesn't exist.

Actually "delete" save files by renaming to s/*.gci/*.gci.deleted/
2014-06-22 18:03:52 -07:00
LPFaint99 404e9ce3ee move memorycard handling to its own class 2014-06-22 17:59:08 -07:00
Pierre Bourdon add090bde6 DSP: Add support for PCAP logging of CPU<->DSP communications 2014-06-22 20:04:46 +02:00
Pierre Bourdon 7889d90633 DSPLLE: Improve initialization by using an options structure instead of individual params 2014-06-22 20:04:46 +02:00
Pierre Bourdon ce74752e91 Common: Add a PCAP writer module 2014-06-22 20:04:46 +02:00
Lioncash 3c51c75b3e Merge pull request #526 from RachelBryk/input-label
Fix an incorrect label in fps display string.
2014-06-22 13:31:31 -04:00
Rachel Bryk addbbf11d7 Allow progressive scan to be set by game ini. 2014-06-22 12:29:16 -04:00
Rachel Bryk 93a215c9e7 Fix an incorrect label in fps display string. 2014-06-22 12:21:11 -04:00
Pierre Bourdon 5dff577339 Merge pull request #500 from lioncash/ini
Use only section-based ini reading.
2014-06-22 17:21:45 +02:00
Lioncash 86d6455391 Merge pull request #505 from RachelBryk/wiimote-state
Save an unsaved wiimote variable to save states.
2014-06-21 19:59:24 -04:00
Lioncash 72050d455d Merge pull request #521 from RisingFog/dtm-update
Removed unused variable, Added tick count check
2014-06-21 19:19:02 -04:00
Tony Wasserka d60f91ef5a Merge pull request #501 from magumagu/sw-cp-structs
VideoSoftware: remove duplicated CommandProcessor structures.
2014-06-21 22:23:19 +02:00
magumagu 8bf3ffc76f VideoSoftware: remove duplicated CommandProcessor structures. 2014-06-21 11:54:43 -07:00
Fog 76c5fa084b Removed unused variable, added tick count check 2014-06-21 11:43:33 -04:00
Tony Wasserka fbca397c92 Merge pull request #439 from degasus/lighting-fix
Lighting cleanup
2014-06-21 12:17:26 +02:00
Tony Wasserka ddadb4f29d Merge pull request #523 from RachelBryk/uninitialized-load-state
Abort loading a save state if emulation isn't running.
2014-06-21 11:39:57 +02:00
Tony Wasserka cad7614e7e Merge pull request #520 from pauldacheez/enumerate-outputs-harder
Make the common "Failed to enumerate outputs" message much more useful.
2014-06-21 11:39:10 +02:00
Rachel Bryk 3e60979000 Abort loading a save state if emulation isn't running. 2014-06-20 21:22:54 -04:00
Paul Olszewski c5ef249c4b Make the common "Failed to enumerate outputs" message much more useful.
Now it includes its most common cause, a simply-worded solution, and an exclamation point.
2014-06-20 15:51:54 -05:00
magumagu eeb7fc25f4 JIT: Make lmw/stmw use safe load/stores. 2014-06-20 12:54:10 -07:00
magumagu 6c9095ebab JITIL: fix some unsafe loads.
I'm planning on making changes to the memory code, so I don't want this
stuff to get in the way.  The slight performance hit to JITIL isn't really
important at the moment.
2014-06-20 12:53:22 -07:00
magumagu 85724dd78a JIT: Remove dead code. 2014-06-20 12:53:21 -07:00
magumagu 06864e9fee JIT: Clean up float loads and stores.
Less code is good, and this should make future changes to memory handling
easier.
2014-06-20 12:52:39 -07:00
Rachel Bryk 0d60389d03 Save an unsaved wiimote variable to save states. 2014-06-20 09:35:47 -04:00
Tony Wasserka 07da9cbcf4 Merge pull request #518 from glennricster/master
Ensure (Get|Set)ColumnWidth is not called on a non existant column.
2014-06-20 14:12:15 +02:00
Glenn Rice bb6d360b06 Ensure (Get|Set)ColumnWidth is not called on a non existant column.
The AutomaticColumnWidth method can be called when the game list does
not have any columns (for example when dolphin is starting).  In this
case wxWidgets assertions fail when (Get|Set)ColumnWidth are called on
columns that do not exist.  So check to make sure there are columns to
prevent this.
2014-06-20 07:03:44 -05:00
Tony Wasserka ddce7e9778 Merge pull request #508 from RisingFog/upstream
Add Tick Count to Movie Files
2014-06-20 13:47:05 +02:00
Jordan Woyak 7ecc32f87f Fix InputConfigDiag crash on Windows. (GCode issue 7384) 2014-06-19 19:58:55 -05:00
Fog c6e1a19e61 Add Tick Count to Movie Files
Added tick count to .dtm movie files for more accurate time calculations
2014-06-19 12:11:09 -04:00
Tony Wasserka 0e0238eccf Merge pull request #498 from magumagu/remove-daz
Don't set DAZ on x86 in non-IEEE mode.
2014-06-19 16:53:21 +02:00
Tony Wasserka 9f22b2378d Merge pull request #485 from magumagu/packed-fp-reciprocal
Interpreter: return single-precision results for ps_rsqrte.
2014-06-19 16:51:33 +02:00
degasus 924ad1ee9f LightingShader: hard code const variable 2014-06-19 16:46:53 +02:00
degasus e456a5e64f PixelShader: remove the duplicated ppl constants 2014-06-19 16:33:33 +02:00