Commit graph

12022 commits

Author SHA1 Message Date
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
Sean
304d9ccd58 [Android] Enable filtering onscreen buttons 2014-07-16 20:29:10 -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
Lioncash
30e4366d28 Merge pull request #580 from SeannyM/smaller-b
[Android] User configurable input overlay scaling
2014-07-16 19:04:35 -04: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
Sean
cd9a0b6f4d [Android] Onscreen controls better resemble GC and user configurable scaling 2014-07-15 16:14:27 -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
Lioncash
35b97ed732 Merge pull request #558 from sigmabeta/game-list-fixes
A few tweaks to implementation of the game list screen.
2014-07-15 11:31:26 -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
Eder Bastos
36821cb117 Display file size in GiB instead of bytes. 2014-07-14 21:52:52 -04:00
LPFaint99
198d137ca0 GCI Folder fix compatibility with games that relocate the save after first use 2014-07-14 18:52:29 -07:00
Eder Bastos
0170050cad Use the "No Banner" graphic as a Drawable resource, instead of as an asset. 2014-07-14 21:34:44 -04: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
Lioncash
a546ef3276 Merge pull request #573 from sigmabeta/file-copies-intentservice
Get rid of the UI-less Activity that launches from Android's home screen.
2014-07-10 16:20:38 -04: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
Eder Bastos
94b1eeaf6f Move first-execution copying of shaders / binaries to an IntentService. 2014-07-09 07:56:27 -04: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
Spanti Nicola (RyDroid)
5c6296291d Minor improvement of the desktop file 2014-07-06 23:46:46 +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
Pierre Bourdon
0b74ad1b20 Merge pull request #560 from lioncash/android-misc
Android: Remove an unnecessary getString call from EmulationActivity
2014-07-06 00:06:23 +02:00
Lioncash
5c7ed205a9 Android: Remove an unnecessary getString call from EmulationActivity 2014-07-05 18:02:30 -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
Eder Bastos
53e4f3d73c Implement ViewHolder pattern on the GameListAdapter. 2014-06-24 23:03:38 -04: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
Lioncash
4138702336 Merge pull request #530 from workhorsy/master
Fixed issue with DSP Dump not closing files.
2014-06-23 19:48:03 -04:00
Matthew Brennan Jones
ad5d28af4e Fixed issue with DSP Dump not closing files.
When dumping the two DSP ROMs to file, if it failed to open one of them, neither will be closed. It should now close any that were opened.
2014-06-23 13:08:43 -07:00
Eder Bastos
2c1008f0ae Allow user to quit app with back button. 2014-06-23 08:24:39 -04: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
Lioncash
1439e45940 Merge pull request #525 from lioncash/android-xml-cleanup
Separate the XML view handling of the folder browser and the game list from one another.
2014-06-22 14:15:50 -04: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
8e2015b9cb Separate the XML view handling of the folder browser and the game list from one another. 2014-06-21 19:47:11 -04:00
Lioncash
4d39076d04 Merge pull request #524 from sigmabeta/android-banner-scaling
Fix banner scaling using a different method.
2014-06-21 19:20:19 -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
Eder Bastos
b940e69f3b Fix banner scaling in game list.
-In GameListAdapter.java, the existing scaling code is unnecessary and stops Android's built in scaling from doing its job.
-In gamelist...etc.xml, set the icon's width to 100 density-independent pixels (i.e. have android figure out how to make it the right size.)
2014-06-21 12:01:16 -04: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
Matthew Parlane
91502b4fc8 Merge pull request #514 from jordan-woyak/input-diag-win-crash
Fix InputConfigDiag crash on Windows. (GCode issue 7384)
2014-06-20 13:38:57 +12:00
Jordan Woyak
7ecc32f87f Fix InputConfigDiag crash on Windows. (GCode issue 7384) 2014-06-19 19:58:55 -05:00
Ryan Houdek
d62ae92b8f Merge pull request #373 from sigmabeta/android-ui-cleanup
Soften up some of the UI elements on Android
2014-06-19 19:25:52 -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
degasus
d93f2973f7 PixelShader: use the vertex const buffer for ppl 2014-06-19 16:33:33 +02:00
degasus
027baad73b VideoCommon: use the Light struct in XF memory 2014-06-19 16:33:29 +02:00
Tony Wasserka
e642c8d0c1 Merge pull request #497 from Armada651/osd-scaling
D3D: Reset viewport before drawing the OSD.
2014-06-19 15:26:10 +02:00
Tony Wasserka
0b1cb1ee45 Merge pull request #436 from RachelBryk/netplay-kick
Add an option to kick players from netplay.
2014-06-19 14:57:00 +02:00
Tillmann Karras
feef0bbd2b JITs: add a macro for easy interpreter fallback 2014-06-19 14:39:01 +02:00
Tillmann Karras
f351ec64db Jit64[IL]: remove code leftover from x86-32 2014-06-19 14:32:53 +02:00
Tillmann Karras
e684e902ef Jit64IL: remove unused macro 2014-06-19 14:32:53 +02:00
Rachel Bryk
e519b05e7a Remove an unused variable.
It's never been used since it was added except to check the value, which is always false.
2014-06-18 20:25:21 -04:00
Lioncash
ce54c1e571 Kill off replaceable usages of s[n]printf. 2014-06-18 19:53:38 -04:00
Shadox Fix
d3a55ccb79 Update references of Google Code to GitHub and update copyright year. 2014-06-18 23:40:25 +02:00
magumagu
1f604e87be Try to make DTK rewrite handle events the same way as the old code. 2014-06-18 13:09:55 -07:00
Rachel Bryk
dbcd40111f Add an option to kick players from netplay. 2014-06-18 13:22:45 -04:00
Ryan Houdek
afc4a37058 Merge pull request #502 from magumagu/video-common-small-cleanup
VideoCommon: small cleanups.
2014-06-16 20:51:34 -05:00
Ryan Houdek
ee690fe401 Merge pull request #468 from RachelBryk/remove-exi-update
Remove unused EXI update functions.
2014-06-16 16:36:13 -05:00
Jules Blok
6c52ec93b7 D3D: Reset viewport before drawing the OSD. 2014-06-16 23:34:54 +02:00
magumagu
9d87818853 VideoCommon: small cleanups. No functional change. 2014-06-16 14:03:29 -07:00
Lioncash
f05d3f6e5d Use only section-based ini reading. 2014-06-16 01:31:23 -04:00
magumagu
31b950325d HLE: Remove ES_LAUNCH HLE.
It isn't necessary anymore now that we emulate ES_LAUNCH correctly in
IPCHLE.  This fixes launching MP2 multiplayer in Metroid Prime Trilogy.
2014-06-15 20:08:15 -07:00
magumagu
b423004ab3 IPCHLE: use only one CoreTiming event. 2014-06-15 20:08:14 -07:00
magumagu
f9b72d0891 IPCHLE: Fix ES_LAUNCH so it works for disk titles.
Among other things, this makes the Disk Channel fully functional.
2014-06-15 20:08:14 -07:00
magumagu
ee0c5bdc20 Try to fix android build. 2014-06-15 15:56:42 -07:00
magumagu
a282f181cd Streaming/DTK audio: fix pausing playback. 2014-06-15 15:08:47 -07:00
magumagu
affb7c17fc Audio mixer: fix a couple compiler warnings. 2014-06-15 14:51:33 -07:00
magumagu
40e2ce4f27 Audio mixer: remove check for ratio > 1.0.
The code actually handles this case correctly; the algorithm is linear
interpolation between the two closest samples, and the way it is written
should work correctly with any ratio.
2014-06-15 14:51:20 -07:00
Ryan Houdek
7416b9cdb4 Merge pull request #496 from Sonicadvance1/fix-subfic-round2
Fix ARM Jit's subfic when d != a.
2014-06-15 11:25:39 -05:00
Pierre Bourdon
7f7f5c9d29 Merge pull request #494 from Armada651/master
Fix OpenGL video backend when using "render to main" on Windows.
2014-06-15 17:39:52 +02:00
Ryan Houdek
78d2322aa0 Fix ARM Jit's subfic when d != a.
Missed this path previously, Crazy Taxi hits it.
2014-06-15 15:37:17 +00:00
Ryan Houdek
83157ba350 Fix the ARM JIT's subfic implementation. 2014-06-15 09:40:31 -05:00
Jules Blok
f408dc72e7 Fix OpenGL video backend when using "render to main" on Windows. 2014-06-15 14:59:25 +02:00
Pierre Bourdon
020b4fde1e Merge pull request #492 from Armada651/master
Remove EmuWindow
2014-06-15 14:16:53 +02:00
magumagu
d905cbfd5d Don't set DAZ on x86 in non-IEEE mode.
I have no idea why we were using it in the first place; it doesn't match
the behavior of PPC NI flag.
2014-06-15 03:51:51 -07:00
Tony Wasserka
a6395ae5b3 Merge pull request #432 from magumagu/ipchle-timing
IPC-HLE event handling improvements
2014-06-15 12:00:54 +02:00
magumagu
d43ecd0bd1 Rewrite handling of DTK (streaming) audio.
The primary motivation here is to make sure we submit samples from the
CPU thread. This makes sure the timing of related interrupts accurate,
and generally keeps the different kinds of audio synchronized.  This will also
allow improvements to audio dumping functionality.

The new code is also more concise because it gets rid of some duplicated
audio mixing code.
2014-06-14 15:55:20 -07:00
Armada
f2759ffe65 Remove EmuWindow.
All it did was raise complexity.
2014-06-15 00:49:49 +02:00
Pierre Bourdon
a0ff868c34 Merge pull request #488 from Tilka/dead_code
Jit64: remove dead code
2014-06-14 22:39:50 +02:00
magumagu
58e9b65f9b IPCHLE: clean up spelling. 2014-06-14 10:03:49 -07:00
magumagu
063ab30e3d IPCHLE: improve HLE timing.
This change attempts to make calls to WII_IPC_HLE_Interface::Update()
more consistent.  We should be calling it whenever there is something we
can pop from a queue, and this patch does that.

DeviceUpdate() now works independently of Update(): it's now just a periodic
timer for devices which need to regularly update state.

With this change, we need a non-zero default delay for IPC replies because
replies are popped off the queue much more aggressively.

This fixes launching channels from the the System Menu.
2014-06-14 10:02:46 -07:00
Tony Wasserka
d7736ac714 Merge pull request #445 from magumagu/video-dead-code
Video backends: remove dead code.
2014-06-13 22:38:22 +02:00
Tony Wasserka
2f6e559978 Merge pull request #440 from magumagu/dsound-revert
Revert "DSound: use DSound notifications to produce sound."
2014-06-13 22:37:33 +02:00
Tony Wasserka
a8f32adcab Merge pull request #470 from pauldacheez/s-Gamecube-GameCube
Fix the capitalization of "GameCube" throughout the project.
2014-06-13 21:52:08 +02:00
Tony Wasserka
0bc6b49c07 Merge pull request #483 from neobrain/bitfield_fixes
BitField fixes
2014-06-13 20:43:02 +02:00
Ryan Houdek
f87b913f0e Fix the vertexloader on non-x86 targets.
When I dropped ARM from a generic target, this caused the vertexloader to try using the JIT path.
Instead of !_M_GENERIC, check for _M_X86 instead. Since it is only for the x86 target
2014-06-13 18:36:54 +00:00
Tillmann Karras
32e427cd73 Jit64: remove dead code 2014-06-13 20:15:31 +02:00
Ryan Houdek
2152e812fc Fix conditional branching on x86_64.
The register cache can be filled to the point that when dumping them the FixupBranch goes over the maximum size of 0x80.
Force them to use the "5byte" variant of the jump.

If we were able to determine if the length we had to jump was <0x80 in the future this could be a slight optimization.
This has to be done in bcctrx, bclrx, and twx. It was already done in bcx before.
This fixes issue 7378.
2014-06-13 12:41:50 -05:00
magumagu
3da52018dc Interpreter: return single-precision results for ps_rsqrte. 2014-06-11 19:50:33 -07:00
Tony Wasserka
3d6f9ef897 BitField: Add an explicit getter function for retrieving the BitField value.
Sometimes (in particular when using non-typesafe functions) it can be convenient to have a getter method rather than performing a potentially lengthy explicit cast.
2014-06-11 20:58:40 +02:00
Tony Wasserka
78fbf2ecaa Fix a few warnings caused by using BitField with non-typesafe functions. 2014-06-11 20:58:40 +02:00
Tony Wasserka
b3c7f003da BitField: Delete copy assignment to prevent obscure bugs. 2014-06-11 20:58:40 +02:00
Ryan Houdek
1db93db474 Merge pull request #474 from Sonicadvance1/conditional-branch
Support conditional register cache flushing on ARMv7.
2014-06-10 07:21:07 -05:00
Ryan Houdek
be4b544bf6 Merge pull request #479 from Sonicadvance1/x86-regcache
Jit64 RegCache cleanup
2014-06-10 07:20:55 -05:00
Ryan Houdek
5147e721ae Revert "PPCAnalyst now detects internal branches better"
This reverts commit 31ec57ab81.
2014-06-10 04:58:56 -05:00
Ryan Houdek
c2b6a41e6b Fix a few code style remarks.
Removes some casting of size_t to int.
2014-06-10 02:52:15 -05:00
Ryan Houdek
b4ec70f0ac Add conditional register cache flushing to JIT64's twx instruction. 2014-06-10 02:46:10 -05:00
Ryan Houdek
06e8c7d7c9 Add conditional register cache flushing to JIT64's bcx instruction. 2014-06-10 02:45:04 -05:00
Ryan Houdek
b99edd6202 Add conditional register cache flushing to JIT64's bcctrx conditional route. 2014-06-10 02:44:16 -05:00
Ryan Houdek
5e1a465d50 Change register cache to using an enum to determine flush mode.
This is easier to identify what the flush is doing rather than a "true" as argument.
2014-06-10 02:42:00 -05:00
Ryan Houdek
2989ccff79 Support conditional register cache flushing on ARMv7.
Similar to PR #451, but for ARM as well.
2014-06-09 06:08:13 -05:00
Rachel Bryk
c38e8e25dd Remove unused video config variable. 2014-06-09 00:02:38 -04:00
Ryan Houdek
4cfeeee5e9 Merge pull request #472 from Sonicadvance1/ARM-is-not-generic
Make it so ARMv7 isn't a generic target.
2014-06-08 09:30:57 -05:00
Tony Wasserka
489534bc7c Merge pull request #248 from RachelBryk/dsp-rom-hash
Add DSP rom hashes to movie header.
2014-06-08 11:27:55 +02:00
Paul Olszewski
5d793881b0 Fix the capitalization of "GameCube" throughout the project. 2014-06-08 11:24:49 +09:00
Ryan Houdek
6e1d312091 Make it so ARMv7 isn't a generic target.
Rearranges a bit of code so that ARM isn't a generic build anymore. Because it obviously isn't
2014-06-07 20:26:31 -05:00
Pierre Bourdon
b79482af44 Merge pull request #459 from lioncash/prototype-typo
Fix a typo in a function prototype in PowerPCDisasm.h
2014-06-08 03:17:06 +02:00
Ryan Houdek
103d9008d6 Merge pull request #391 from RachelBryk/netplay-flash-on-join
Flash netplay window when someone joins if the window doesn't have focus...
2014-06-07 06:33:54 -05:00
Ryan Houdek
b778b43992 Merge pull request #404 from magumagu/jitcache-cleanup
JitCache cleanup
2014-06-07 01:49:07 -05:00
Ryan Houdek
7d12a31cc2 Merge pull request #395 from RachelBryk/race
Fix a couple race conditions.
2014-06-07 01:10:51 -05:00
Ryan Houdek
b591184e4b Merge pull request #437 from lioncash/netplay
Minor netplay server cleanup
2014-06-07 01:08:52 -05:00
Ryan Houdek
d2e4c2fc50 Fix OpenGL ES version detection.
Mesa report GLES version as "3.0" not "3.00"
Spec mandates X.Y versioning scheme, doesn't say how long the decimal place must be.
2014-06-06 21:21:35 -05:00
Ryan Houdek
b6db0d0ab8 Merge pull request #457 from Tilka/jcc
x64Emitter: J_CC: use 32 bit offset automatically
2014-06-06 20:53:50 -05:00
Ryan Houdek
c118632cde Merge pull request #450 from Tilka/fmrx
Jit64: revert fmrx revert
2014-06-06 20:53:21 -05:00
Rachel Bryk
525965a873 Remove unused EXI update functions. 2014-06-06 20:30:36 -04:00
Ryan Houdek
db08f7bf4a Merge pull request #371 from quarnster/patch-1
PPCAnalyst now detects internal branches better
2014-06-06 02:45:24 -05:00
Pierre Bourdon
7ffea5ddc9 Merge pull request #464 from lioncash/log-str
Use std::string in LogContainer's constructor.
2014-06-06 00:59:22 +02:00
Pierre Bourdon
834bc85e1f Merge pull request #458 from Tilka/warnings
Fix some warnings
2014-06-06 00:58:37 +02:00
Lioncash
3843848ed4 Use std::string in LogContainer's constructor.
This allows for removal of the strcpy calls, also it's technically way more safe, though I doubt we'll ever have a log name larger than 128 characters or a short description larger than 32 characters.

Also moved these assignments into the constructor's initializer list.
2014-06-05 18:50:14 -04:00
Pierre Bourdon
b780ef950c Merge pull request #435 from YourGamesBeOver/master
Options for selecting which columns are visible in the game list.
2014-06-06 00:46:26 +02:00
yourgamesbeover
91840cb4c7 added option for selecting which column are displayed in the game list, added optional game id column, and added config entry to disable making compressed games blue 2014-06-05 15:34:20 -04:00
degasus
9566dcf0da OGL: speed up the EFB cache
gcc doesn't optimize this loops with -O2, so using memset now.
A flag to skip the clear funktion was added as the cache is already cleared most of the time.
2014-06-05 14:53:09 +02:00
degasus
d9eafd94a2 OGL-StreamBuffer: replace size_t with u32
Yes, this matters.
We align our buffer all the the time which needs a division. u64 divisions are just so slow.
2014-06-05 13:33:50 +02:00
degasus
606e46ba8d OGL-StreamBuffer: move alignment to caller
Only the caller know if alignment is needed at all, so it can be skipped now.
2014-06-05 13:32:13 +02:00
degasus
02a4e3d70f OGL-StreamBuffer: make the SLOT calculation much easier
The size of the buffer is now power of 2, so we can use a shift instead of a division.
This was at about 2% of the global CPU usage.
2014-06-05 13:32:13 +02:00
degasus
d81d2e8915 OGL-StreamBuffer: allocate fences in StreamBuffer directly 2014-06-05 13:32:13 +02:00
Tony Wasserka
e2cfb7f0fa Merge pull request #448 from lioncash/fifo-cleanup
Expand GetBPRegInfo to include the rest of the BP registers.
2014-06-05 13:21:05 +02:00
degasus
0688cfdaef OGL-StreamBuffer: don't use coherent mapping
Coherent mapping seems to be much slower on fermi gpus.
2014-06-05 12:18:44 +02:00
lioncash
efdcfe404f Fix a typo in a function prototype in PowerPCDisasm.h
Should be GetGPRName not GetGRPName.

Removed an unnecessary extern declaration of GetGRPName in RegisterWindow.cpp.

Also added GetFPRName to the PowerPCDisasm header for consistency.
2014-06-04 12:12:28 -04:00
Tillmann Karras
0eb341e542 Fix some warnings.
The 'offset' variable needs to stay because the disabled code below uses it.
2014-06-04 01:04:52 +02:00
Tillmann Karras
f8280401f6 x64Emitter: J_CC: use 32 bit offset automatically 2014-06-03 23:08:58 +02:00
Ryan Houdek
3a06907653 Merge pull request #455 from lioncash/arm-cpudetect-fix
Stringify ArmCPUDetect.cpp.
2014-06-02 20:10:39 -05:00
Lioncash
7d7b3d6156 Stringify ArmCPUDetect.cpp. 2014-06-02 21:08:26 -04:00
Ryan Houdek
b5a12dd7a2 Merge pull request #454 from Sonicadvance1/fix-android-crash
[Android] Fix potential crash in Video Settings.
2014-06-02 19:39:32 -05:00
Ryan Houdek
7dc31fbd1a Fix potential crash in Video Settings.
When Shaders folder didn't exist it would cause crash.
2014-06-02 17:57:23 -05:00
degasus
541bfd071e Jit64: Don't flush the regcache on bcx 2014-06-02 18:12:54 +02:00
degasus
0cd9eea99e RegCache: make state clear optional on flushes 2014-06-02 18:12:53 +02:00
degasus
38c3812a60 RegCache: merge fpr+gpr BindToRegister 2014-06-02 18:12:53 +02:00
degasus
9e9b71fa87 RegCache: merge fpr+gpr StoreFromRegister 2014-06-02 18:12:53 +02:00
degasus
fd9bfddde7 RegCache64: devirtualize RegCache::Start 2014-06-02 18:12:53 +02:00
degasus
8693e0abaa RegCache64: Use std::array 2014-06-02 18:11:26 +02:00
degasus
6089812482 RegCache64: move x?locks into register structs 2014-06-02 13:02:52 +02:00
degasus
c800918fd8 RegCache64: remove unused functions 2014-06-02 09:53:44 +02:00
Henrik Rydgård
edf9af0047 Merge pull request #449 from Sonicadvance1/remove-ppcstate-mojs
Remove unused mojs array from ppcState.
2014-06-02 09:42:53 +02:00
Tillmann Karras
2cf27e4de8 Jit64: revert fmrx revert
The AVX revert was not supposed to touch fmrx.

Partially reverts 2fad2a3e88.
2014-06-02 08:53:02 +02:00
Ryan Houdek
e0a60a40a5 Remove unused mojs array from ppcState.
This was some unused array just sitting in our global ppcState struct.
I've got no idea what its use was /supposed/ to be used for if ever implemented.
2014-06-02 01:39:07 -05:00
Lioncash
776e36b10a Fix a typo in a BP register name (BPMEM_TX_SETLUT_4 -> BPMEM_TX_SETTLUT_4).
Also fixed the alignment of the register values.
2014-06-02 02:26:30 -04:00
degasus
4545fa589d Jit64: remove unused FlushMode enum 2014-06-02 08:24:25 +02:00
Lioncash
12db989098 Add missing registers in GetBPRegInfo 2014-06-02 02:19:53 -04:00
Ryan Houdek
5d3382fb56 Fix a crash in ARM's CPUDetect on a malformed /proc/cpuinfo.
If a CPU string was incapable of being found we would return a null pointer, which would crash with strncpy.
Also if we couldn't get a CPU implementer we would call free() to a null pointer.
In addition, detect 64bit ARM running.
2014-06-01 23:55:38 -05:00
Ryan Houdek
87e671404a Make MemoryUtil.cpp use the correct x86_64 define.
MemoryUtil.cpp was incorrectly using the old __x86_64__ define when it should be using _M_X86_64.
It was also using _ARCH_64 when it shouldn't have which was causing an errant PanicAlert to come up in my development.
2014-06-01 23:45:44 -05:00
magumagu
0aecd9504e Video backends: remove dead code. 2014-06-01 01:56:09 -07:00
magumagu
87a804fdfc Revert "DSound: use DSound notifications to produce sound."
This reverts commit 4990b8910b.

The commit is causing substantial performance issues for the DSound
backend which I somehow didn't catch during testing.
2014-05-31 13:35:46 -07:00
Sean
568f3248f3 Android: add multitouch support 2014-05-30 19:02:28 -04:00
shuffle2
d0201335c6 Merge pull request #300 from Sonicadvance1/Fix-AndroidInput
[Android] Fixes a bunch of input bugs.
2014-05-30 15:32:08 -07:00
Lioncash
7babc635cb Compress a for loop in NetPlayServer.
Also gets rid of a redundant return from a void function.
2014-05-29 22:14:50 -04:00
Lioncash
49b0eef393 Remove the min/max functions in CommonFuncs.
The algorithm header has the same functions.
2014-05-29 21:44:41 -04:00
Lioncash
a3ae20fc15 Remove the use of a delete[] in NetPlayServer.
We just use a vector instead of a raw pointer.
2014-05-29 20:39:09 -04:00
Pierre Bourdon
3097345929 Merge pull request #411 from lioncash/fifo-cleanup
Make GetBPRegInfo just take two strings as parameters
2014-05-30 01:51:11 +02:00
Lioncash
c96407bd2a Make GetBPRegInfo just take two strings as parameters
Gets rid of the size parameters.
2014-05-29 19:44:14 -04:00
shuffle2
7c09f07f36 Merge pull request #399 from magumagu/bsemu-bat
BS2 emulation: set up a reasonable BAT during startup.
2014-05-29 15:36:28 -07:00
shuffle2
e9975cdd63 Merge pull request #419 from magumagu/jit-load-store-cleanup
Jit load store cleanup
2014-05-29 15:25:00 -07:00
shuffle2
fd6fd8fcf1 Merge pull request #433 from lioncash/ini
Get rid of the temporary buffer in IniFile's Load function.
2014-05-29 14:53:16 -07:00
shuffle2
3b23f4bbd6 Merge pull request #420 from magumagu/backpatch-s8
JIT: make backpatch handle sign-extend from 8 bits correctly.
2014-05-29 14:09:59 -07:00
shuffle2
329fcad04f Merge pull request #421 from CarlKenner/MissingSpace
Fix error message when D3D11 HResults fail.
2014-05-29 14:06:18 -07:00
shuffle2
d18bc31e74 Merge pull request #429 from RachelBryk/netplay-pid
Make sure netplay player IDs are actually unique.
2014-05-29 14:02:24 -07:00
shuffle2
fee69236d5 Merge pull request #403 from RachelBryk/netplay-player-selection
When updating netplay player list, reselect by string instead of index.
2014-05-29 13:52:44 -07:00
Lioncash
eca70d1562 Get rid of the temporary buffer in IniFile's Load function.
std::getline is the string-based equivalent.
2014-05-28 20:26:15 -04:00
Rachel Bryk
80ab567a5b When reading an ini file, if there is an error, check if it is simply because the eof was reached. 2014-05-28 14:06:18 -04:00
Pierre Bourdon
10efd5b8c0 Merge pull request #430 from shuffle2/xsave-workaround-fix
msvc C initializers return int...fix EnableXSaveWorkaround when rax doesn't implicitly equal zero.
2014-05-28 12:25:25 +02:00
Pierre Bourdon
2a14c55279 Merge pull request #409 from lioncash/lolmemset
Explicitly center the X and Y joystick values.
2014-05-28 12:19:48 +02:00
Rachel Bryk
8c70ee7194 Make sure netplay player IDs are actually unique.
Fixes issue 7329.
2014-05-28 06:04:08 -04:00
Pierre Bourdon
f120d333b7 Merge pull request #414 from sigmabeta/android-gradle-customization
Android: Attach '.debug' to the end of the app's package name, if built in Debug configuration.
2014-05-28 12:01:36 +02:00
Pierre Bourdon
0602dacfde Merge pull request #423 from lioncash/dsp-clarification
Clarify what FindBrackets does in the DSP assembler
2014-05-28 12:01:05 +02:00
Pierre Bourdon
3c722b6be7 Merge pull request #417 from magumagu/jit-unused-flags
Jit: Remove unused members from JitState.
2014-05-28 12:00:46 +02:00
Pierre Bourdon
5abd518eb9 Merge pull request #427 from magumagu/interpreter-hle
Interpreter: correctly support HLE functions.
2014-05-28 11:59:02 +02:00
Pierre Bourdon
21cf8fe32e Merge pull request #393 from RachelBryk/netplay-chat-limit
Limit netplay chat messages to 2000 characters.
2014-05-28 11:57:49 +02:00
Pierre Bourdon
ce139622f6 Merge pull request #392 from RachelBryk/error-check-ini-file
Check for errors when reading lines from ini files.
2014-05-28 11:57:00 +02:00
Shawn Hoffman
47a2eb47a0 msvc C initializers return int...fix EnableXSaveWorkaround when rax doesn't implicitly equal zero. 2014-05-28 00:16:33 -07:00
Shawn Hoffman
58bcc3d12a Redo commit 932945d480
This time, make sure the object for disabling XSave support in msvcr can't be dropped by the linker.
2014-05-27 13:41:19 -07:00
Rachel Bryk
b1029223c6 When updating netplay player list, reselect by string instead of index.
Fixes issue 7284.
2014-05-27 10:43:41 -04:00
lioncash
4cb111e5db Clarify what FindBrackets does in the DSP assembler 2014-05-26 17:04:58 -04:00
Pierre Bourdon
f5e1dee230 Merge pull request #413 from delroth/flags-opt
PowerPC: Get rid of the 'cr' field which was obsoleted by the new 'cr_fast'
2014-05-26 22:37:01 +02:00
shuffle2
4758b362c3 Merge pull request #415 from magumagu/memory-cleanup
Memory code cleanup
2014-05-26 13:35:54 -07:00
CarlKenner
361d53fdc7 Fix error message when D3D11 HResults fail.
Prevents showing the wrong function name by putting a space between the function name and "Failed".
Also fixes the capitalization.
2014-05-27 00:45:26 +09:30
magumagu
2599cd545e JIT: make backpatch handle sign-extend from 8 bits correctly.
I don't think this is actually possible to trigger at the moment... but
it matches the implementation of SafeLoadToReg.
2014-05-26 01:45:07 -07:00
magumagu
e5ebf22161 JIT: unify two branches in SafeLoadToReg.
Should behave the same as it did before.
2014-05-25 21:14:06 -07:00
magumagu
68a327c246 JIT: Simplify redundant if statements for memcheck. 2014-05-25 21:13:39 -07:00
Eder Bastos
5416dd24d7 Attach '.debug' to the end of the app's package name. This allows for installation of both debug and release configs on the same device. 2014-05-26 00:08:40 -04:00
magumagu
e239e82ea3 Jit: Remove unused members from JitState. 2014-05-25 18:19:47 -07:00
Lioncash
1583ce9363 Use strings instead of arbitrary buffers for video statistics 2014-05-25 21:11:29 -04:00
magumagu
ec9dd80b7f Memmap: get rid of unused junk.
This should make it a bit more clear what interfaces we're actually
exposing for memory access at the moment.
2014-05-25 18:07:09 -07:00
magumagu
44f481ec13 PPCCache: Get rid of FAST_ICACHE define.
There's no reason to keep around the ifdefs.
2014-05-25 18:06:52 -07:00
magumagu
98dd99a696 Interpreter: correctly support HLE functions.
m_EndBlock is always false at the beginning of SingleStepInner in the
normal interpreter loop.
2014-05-25 15:39:46 -07:00
Pierre Bourdon
3a76c0c8f5 PowerPC: Get rid of the 'cr' field which was obsoleted by the new 'cr_fast' 2014-05-25 22:59:51 +02:00
Pierre Bourdon
010ca048df Merge pull request #408 from lioncash/bool
Use a bool instead of an int to represent the initialized state in IOWin.cpp
2014-05-25 02:25:56 +02:00
Lioncash
9e7c5c0e58 Explicitly center the X and Y joystick values.
More self-explanatory at a glance than a memset.
2014-05-24 20:10:41 -04:00
Lioncash
728078bc09 Use a bool instead of an int to represent the initialized state in IOWin.cpp 2014-05-24 19:43:11 -04:00
Lioncash
dd35a968f8 Fix a struct overflow case in WII_IPC_HLE_Device_hid.cpp
WiiHIDDeviceDescriptor is 20 bytes in size (2 of which are padding bytes)
libusb_device_descriptor on the other hand is 18 bytes (does not have the
2 padding bytes).

So we were pulling 20 bytes out of an 18 byte struct, which isn't really
correct.
2014-05-24 18:36:28 -04:00
magumagu
282e9bd292 JitCache: use a custom bit-set class.
Unfortunately, this appears to be necessary for the sake of performance;
the standard library equivalents don't work well enough on Visual Studio
2013. vector<bool>::insert() is way too slow in debug
builds to be usable, and std::bitset generates inefficient code in release
builds.
2014-05-24 14:17:53 -07:00
magumagu
6bb08de8a0 JIT: get rid of useless code in JitCache.cpp. 2014-05-24 11:04:24 -07:00
magumagu
336b55bbc4 BS2 emulation: set up a reasonable BAT during startup.
It doesn't really matter much at the moment given our current terrible MMU
emulation, but it will start mattering once our MMU emulation gets more
accurate.
2014-05-24 03:46:12 -07:00
magumagu
440246a190 Interpreter: use numeric_limits instead of FLT_MAX.
Minor cleanup, and fixes compilation on some systems.
2014-05-24 10:58:15 +02:00
Tony Wasserka
cffa848b99 Merge pull request #390 from magumagu/fp-reciprocal
Add accurate implementations of frsqrte and fres
2014-05-24 10:45:01 +02:00
shuffle2
ca3002977b Merge pull request #256 from magumagu/dsound-notify
DSound: use DSound notifications to produce sound.
2014-05-23 17:02:55 -07:00
Pierre Bourdon
d71e20880f Merge pull request #398 from Sonicadvance1/Fix-Spaced-Build-Path
Fixes build if the build path has spaces in it.
2014-05-24 01:29:20 +02:00
Ryan Houdek
d710e3af82 Fixes build if the build path has spaces in it. 2014-05-23 18:24:08 -05:00
Eder Bastos
8a288c7765 Increase size of title text; force it to take a single line and ellipsize if text doesn't fit. Also set both text fields to a slightly lighter color. 2014-05-23 18:47:43 -04:00
magumagu
6955fef161 Interpreter: Code style fixes. 2014-05-23 15:06:09 -07:00
magumagu
d0ed3b8192 Jit: Use infinity and NaN from numeric_limits.
MSVC's implementation of INFINITY is unusable.
2014-05-23 14:59:03 -07:00
magumagu
a9a2d3d98d New frsqrte implementation; verified accurate.
This is similar to the old implementation, but it uses smaller tables, and
handles more edge cases correctly.  (hwtest coming soon.)
2014-05-23 14:59:02 -07:00
magumagu
129e76e60d Interpreter: refactor the rsqrte code, and use it for ps_rsqrte. 2014-05-23 14:59:00 -07:00
magumagu
567724b2f8 Jit: get rid of incorrect implementations of fres and frsqrte.
The existing implementations produce answers which aren't consistent with
the hardware, and games care about correct floating point math.

These can be reimplemented at some point in the future, if someone cares
enough, but the general case is probably too much code to inline.

(I'm leaving the ARM implementations in place by request, even though they
suffer the same issues.)
2014-05-23 14:57:34 -07:00
Yuriy O'Donnell
ac75766c25 removed trailing whitespace 2014-05-23 21:14:48 +02:00
Yuriy O'Donnell
d08abfc14e JIT: JitBaseBlockCache::InvalidateICache no longer memsets iCache memory to INVALID_BYTE.
This is redundant, since we reset the valid_block bits any way.
However, this was a source of a significant performance issues in some games.
In particular, Metal Gear Solid: Twin Snakes.
2014-05-23 20:40:45 +02:00
Yuriy O'Donnell
de1e2127dc JIT: JitBaseBlockCache::valid_block is now std::vector<bool>
This was previously a std::bitset, which resulted in generation of suboptimal code by VS2013 compiler.
See https://gist.github.com/kayru/753db9607d680e26194b
2014-05-23 20:32:25 +02:00
Rachel Bryk
e6684d17c1 Fix a couple race conditions.
Checks if another game is already starting to boot before starting to boot a new one, and only change video backend, and dual core if a game is actually not running.
2014-05-23 10:22:00 -04:00
Rachel Bryk
61d3360033 Limit netplay chat messages to 2000 characters.
There's not really a good reason to be sending messages longer than that, and very long messages can hang dolphin for quite a long time.
2014-05-23 08:11:49 -04:00
Rachel Bryk
cd299f0703 Flash netplay window when someone joins if the window doesn't have focus. 2014-05-23 07:30:08 -04:00
Rachel Bryk
0782d106db Check for errors when reading lines from ini files.
Fixes issue 7283.
2014-05-23 03:17:19 -04:00
magumagu
2f8a147eda Interpreter: make fres match hardware.
New table-based implementation written based on actual hardware behavior.
(hwtest coming soon).
2014-05-22 19:48:48 -07:00
magumagu
ad4ad7c1ed Use accurate frsqrte in Interpreter.
The implementation of frsqrte exposed by this change isn't completely
correct; that will be fixed in a later commit.
2014-05-22 19:46:27 -07:00
shuffle2
b58753bd69 Merge pull request #370 from Sonicadvance1/remove_specialized_memcmp
Removes ZeroFrog's "optimized" memcpy and memcmp functions.
2014-05-22 13:02:11 -07:00
shuffle2
fc41a53b46 Merge pull request #309 from magumagu/jit-unify-asm
JIT: unify JitAsm for JIT64 and JIT64IL.
2014-05-21 23:10:08 -07:00
shuffle2
c308657779 Merge pull request #376 from lioncash/wx
Wx cleanup
2014-05-21 21:54:00 -07:00
shuffle2
c4e60d5353 Merge pull request #356 from Sonicadvance1/Fix-MMUAnalyst
Fixes games that use the MMU to page in code(Rogue Leader).
2014-05-21 20:59:25 -07:00
shuffle2
6544d53c16 Merge pull request #361 from LPFaint99/wiisave
Export wii saves to the "User" directory
2014-05-21 20:17:18 -07:00
shuffle2
9ce269c7dc Merge pull request #382 from magumagu/faster-fast-disc-speed
DVDInterface: make fast disc speed faster.
2014-05-21 20:12:38 -07:00
shuffle2
4fb10a11b9 Merge pull request #379 from jordan-woyak/gamelist-size-fix
Fix game list size display.
2014-05-21 19:52:10 -07:00
shuffle2
dd413269e3 Merge pull request #343 from jordan-woyak/disable-sdl-windows
Disable SDL input on Windows.
2014-05-21 19:47:44 -07:00
Jasper St. Pierre
9d161b4170 BPStructs: Consistently put the two shared copy args first
And rename them so they make a bit more sense.
2014-05-20 11:28:15 -04:00
Jasper St. Pierre
1ae8edc1d0 BPStructs: Remove another function wrapper 2014-05-20 11:28:15 -04:00
Jasper St. Pierre
b1d3c5937a BPStructs: Move LoadBPReg here 2014-05-20 11:28:14 -04:00
Jasper St. Pierre
763ad77a1c BPStructs: Flatten out BPWritten 2014-05-20 11:28:14 -04:00
Jasper St. Pierre
07ab77d31c BPStructs: Reindent BPWritten 2014-05-20 11:28:08 -04:00
Jasper St. Pierre
c33a1b4b28 BPStructs: Document BPMEM_BP_MASK better 2014-05-20 11:26:31 -04:00
Jasper St. Pierre
2f122ea63c BPMemory: Fix "DISPLAYCOPYFILER" typo 2014-05-20 11:15:10 -04:00
Jasper St. Pierre
4e8e51b278 BPStructs: Remove calls to SetInterlacedMode when reloading state
SetInterlacedMode is a dummy no-op that does nothing.
2014-05-20 11:15:10 -04:00
Jasper St. Pierre
833b7ee584 BPFunctions: Remove the rest of GetConfig 2014-05-20 11:15:09 -04:00
Jasper St. Pierre
08611c3f36 PixelShaderManager: Fizzle out fog changes when disabled here
This lets us remove a use of GetConfig.
2014-05-20 11:15:09 -04:00
Jasper St. Pierre
fe645b888b BPFunctions: Remove use of a dumb method
GetPointer serves no purpose.
2014-05-20 11:15:08 -04:00
Jasper St. Pierre
56228cea5d BPFunctions: Remove an unused method 2014-05-20 11:15:08 -04:00
Jasper St. Pierre
4f4e3fad85 BPMemory: Clean up and rename some variables and comments
This is about the register number, not the opcode.
2014-05-20 11:15:08 -04:00
Jasper St. Pierre
e81b62aad1 BPFunctions: Clean up math slightly
No need for magic 342 numbers.
2014-05-20 11:14:00 -04:00
degasus
c1b6fcc00b ogl: pixel format shader without resolving
v2: Don't use std::to_string as this function is broken on android.
2014-05-19 09:29:40 +02:00
degasus
e150d307a6 ogl: use ARB_texture_multisample for msaa 2014-05-19 09:21:44 +02:00
degasus
fab78c2dff ogl: add ARB_texture_multisample 2014-05-19 09:21:44 +02:00
degasus
775858b6bc ogl: drop NV_framebuffer_multisample_coverage 2014-05-19 09:21:44 +02:00
degasus
afea848e3b ogl: drop csaa support 2014-05-19 09:21:44 +02:00
magumagu
5dffa28f0a DVDInterface: make fast disc speed faster.
Fixes workaround for crash in Star Wars Rogue Leader.
2014-05-18 20:03:55 -07:00
Jordan Woyak
d841e5176f Fix game list size display. 2014-05-18 12:17:56 -05:00
Lioncash
554207a87c Remove an unnecessary null check in CodeWindow.cpp.
The validity of ToolBar is checked at the beginning of the function
2014-05-18 11:43:21 -04:00
Pierre Bourdon
826a9e0152 MMIO: Lazy-initialize read/write handlers since most are not actually used 2014-05-18 17:37:33 +02:00
Lioncash
75cb8a7452 Fix a typo in the JIT debugger window 2014-05-18 10:31:39 -04:00
Tony Wasserka
6950f533ae Merge pull request #355 from magumagu/gx-missing-opcode
Opcode decoding: handle missing opcodes 0x88 etc.
2014-05-18 11:12:06 +02:00
Ryan Houdek
a4bb0dafb4 Removes ZeroFrog's "optimized" memcpy and memcmp functions.
These were only compiled in on Windows and x86_32.
They provided "optimized" copies and compares based on blocksizes for the AMD Athlon and Duron CPU families.
The code was taken from something that AMD provides with a as-is license.
Just get rid of this crap.
2014-05-17 18:03:31 -05:00
Pierre Bourdon
0f1b1dd3cf CheckExceptions: add TODO and remove a wrong comment 2014-05-18 00:56:18 +02:00
Lioncash
5f796e919b Move bn.h and ec.h into the correct filter section 2014-05-17 16:47:41 -04:00
Lioncash
e1359382be Kill off _T and wxT macros
Minor other alterations that relate to above as well.

Also added the PanicAlertT version of alerts for some error messages that
use PanicAlert. We want the user to actually understand why the error
occurred.
2014-05-17 16:25:51 -04:00
Tony Wasserka
fc34d5a130 Merge pull request #360 from magumagu/lighting-rounding
Video backends: fix rounding in lighting computation.
2014-05-17 21:06:31 +02:00
magumagu
9b82d72070 Video backends: warn on usage of GL_DRAW_QUADS_2.
It's not normally used, so if it shows up, it could indicate a CPU emulation
bug.
2014-05-17 11:55:32 -07:00
Lioncash
90df5efd01 Get rid of old wx event type usages. Use recommended replacements 2014-05-17 13:17:43 -04:00
Pierre Bourdon
5391b2dd9c Merge pull request #327 from magumagu/dvd-seek-time
DVD emulation: make seek timing more accurate.
2014-05-17 18:48:35 +02:00
Pierre Bourdon
396e13de89 Merge pull request #369 from lioncash/ini
Use size_t in std::string operations in IniFile.cpp, not int
2014-05-17 17:42:08 +02:00
Tony Wasserka
0fac17da33 Merge pull request #269 from magumagu/swbackend-xfregisters
SW backend: use VideoCommon XFRegisters struct.
2014-05-17 10:40:57 +02:00
magumagu
6fbf6fad3b VideoCommon: cleanup Renderer::RecordVideoMemory. 2014-05-16 18:58:08 -07:00
magumagu
1357277f40 Video backends: mass-replace "xfregs" with "xfmem". 2014-05-16 18:58:07 -07:00
magumagu
8f5342c442 Video backend: merge global var xfmem into xfregs.
There isn't really any reason to keep them separate.
2014-05-16 18:55:31 -07:00
magumagu
818c89313e Video backends: unify xfregs/xfmem structures.
Removes the duplicate swxfregs global variable/struct from the software
backend in favor of the ones from VideoCommon.
2014-05-16 18:55:30 -07:00
shuffle2
d0de0c1222 Merge pull request #374 from ToadKing/master
make IOCTL_SO_GETHOSTID more accurate on Windows
2014-05-16 18:12:35 -07:00
Toad King
1ba5ffeea3 remove trailing whitespace 2014-05-16 20:10:30 -04:00
Toad King
e7e6021414 changed IOCTL_SO_GETHOSTID to remove malloc()/free() calls
account for GetIpForwardTable() returning ERROR_MORE_DATA
2014-05-16 19:13:52 -04:00
magumagu
8b82cea704 Video backends: fix behavior of "konst" TEV inputs.
Also fixes TEVCOLORARG_HALF.

Values verified to match hardwarere.
2014-05-16 12:19:35 -07:00
Tony Wasserka
fee6efc4dc Merge pull request #375 from degasus/remove_SkipVertices
VertexLoaderManager: Remove unused function.
2014-05-16 16:20:29 +02:00
Tony Wasserka
b8817267f4 Merge pull request #366 from Jezze/vertex
OGL/VertexManager: Remove unused variable.
2014-05-16 16:18:14 +02:00
Tony Wasserka
25e8dc0aed Merge pull request #354 from magumagu/gx-primitive-mask
Opcode decoding: 0xC0 isn't a valid command.
2014-05-16 15:59:59 +02:00
degasus
7bb44199fd remove unused and unexported function 2014-05-16 14:33:00 +02:00
Toad King
ce64885a66 make IOCTL_SO_GETHOSTID more accurate on Windows 2014-05-15 20:33:21 -04:00
Eder Bastos
570cda3e39 Clarify that 'tools' attributes are only visible in the UI editor preview, and darken the game title text a little 2014-05-15 19:39:47 -04:00
Eder Bastos
08bb79ccb3 Soften up some of the UI elements. 2014-05-15 18:06:23 -04:00
Fredrik Ehnbom
31ec57ab81 PPCAnalyst now detects internal branches better
For example:

```
addr     opcode    disasm
80026584 48000054  b	->0x800265D8 
```
2014-05-15 16:36:44 +02:00
Lioncash
d0bd4119d1 Use size_t in std::string operations in IniFile.cpp, not int 2014-05-14 20:38:08 -04:00
Jens Nyberg
f742c5a057 OGL/VertexManager: Remove unnused m_CurrentVertexFmt 2014-05-13 23:59:08 +02:00
LPFaint99
1b65456738 Export wii saves to the "User" directory 2014-05-11 22:23:21 -07:00
Jordan Woyak
635dbd0ff9 Possibly an OSX buildfix. 2014-05-11 23:05:34 -05:00
magumagu
9e4eeb3b9b Video backends: fix rounding in lighting computation.
For whatever reason, the hardware doesn't do a full divide by 255, but
instead uses an approximation with shifting, similar to the way it is done
in TEV.
2014-05-11 12:53:02 -07:00
shuffle2
36720e6822 Merge pull request #351 from Tilka/make_unique
Add a std::make_unique implementation (Common/StdMakeUnique.h)
2014-05-11 01:46:09 -07:00
Tony Wasserka
541ff4cc7c Merge pull request #359 from shuffle2/d3d-disable-warnings-as-errors
D3D: Don't pass D3D10_SHADER_WARNINGS_ARE_ERRORS to the compiler in debug builds.
2014-05-11 10:41:28 +02:00
Tillmann Karras
fd94ce5210 fixmeup use 2014-05-11 10:40:18 +02:00
Tillmann Karras
4400e511c0 fixmeup rename 2014-05-11 10:40:18 +02:00
Shawn Hoffman
17577affba D3D: Don't pass D3D10_SHADER_WARNINGS_ARE_ERRORS to the compiler in debug builds.
For quite a while this has been causing integer division to generate a warning as error, blocking shader compiling. This means probably no one has even been running D3D in debug builds...
I tried disabling the warning with a #pragma, but it doesn't seem to apply when this flag is used.
2014-05-10 22:12:54 -07:00
Sean Maas
1da3a43698 Add japanese strings 2014-05-11 00:35:59 -04:00
Ryan Houdek
15ce648b0d Merge pull request #341 from lioncash/pragma
Move the header guard before the includes in VideoCommon's Statistics.h
2014-05-10 23:21:53 -05:00
Ryan Houdek
878740b43d Merge pull request #349 from Sonicadvance1/Android-Default-Config
[Android] Change default EFB copy method from disabled to texture.
2014-05-10 23:19:43 -05:00
Ryan Houdek
fcc7b6e56d Merge pull request #346 from Sonicadvance1/Android-PewPewShaders
Adds support for the PP shaders in the Android UI.
2014-05-10 22:51:28 -05:00
magumagu
39d439fc48 Opcode decoding: handle missing opcodes 0x88 etc.
Hardware testing shows that they do the same thing as the 0x80 family of
opcodes: they draw quads.
2014-05-10 20:33:28 -07:00
shuffle2
2983ae2823 Merge pull request #357 from shuffle2/master
Revert "x64FPURoundMode: always set x87 precision"
2014-05-10 20:26:56 -07:00
Ryan Houdek
004af614cf Merge pull request #335 from Tilka/twx
Jit64: implement tw/twi more accurately
2014-05-10 22:26:02 -05:00
Shawn Hoffman
700c135386 Revert "x64FPURoundMode: always set x87 precision"
This reverts commit 9de77b7c23.
Setting x87 precision control is only supported on x86 platforms (not ARM or x64).
2014-05-10 20:21:07 -07:00
Ryan Houdek
cdec575bef Fixes games that use the MMU to page in code(Rogue Leader).
The issue was that on memory exception we wouldn't call in to PPCAnalyst and our code_block would retain the previous blocks information.
This would cause us to compile the previous blocks instructions in prior to the exception exit.
2014-05-09 09:10:45 -05:00
magumagu
369c0c4ce2 Opcode decoding: 0xC0 isn't a valid command.
Fix our opcode decoders to handle this appropriately.
2014-05-08 15:49:19 -07:00
magumagu
4f5421ffb5 DVDInterface: code cleanup. 2014-05-08 11:47:38 -07:00