Christian Widmer
5fbf8f561b
Use CRC32 for IPL checks and update hashes
...
This changes the hashing algorithm from Adler32 to CRC32 for it
is more widely used and therefore makes it easier to verify hashes.
For example the Redump database does provide CRC32 hashes, while it
doesn't have Adler32 ones.
Additionally adds new hashes from the bugtracker and the forums and
removes unknown ones.
2015-10-09 14:36:30 +02:00
Christian Widmer
1dd4c93f0c
DolphinQt: Install binary for systems not matching APPLE
2015-10-09 11:11:41 +02:00
Christian Widmer
6eb6fa9bf8
Include unistd.h in memtools.cpp to fix nopch
...
Fixes falling back to generic on non-windows builds with PCH disabled
leading to runtime crashes and the pagefault test failing. Thanks to
HdkR!
2015-10-09 11:08:17 +02:00
Lioncash
737de5e115
StreamADPCM: Convert into a namespace
...
No need to have a class with only static member functions
2015-10-08 19:46:55 -04:00
Lioncash
66a576548c
ConfigManager: Get rid of an unnecessary smart-pointer get() call
2015-10-08 19:36:28 -04:00
Scott Mansell
71d7cd6b9d
DolphinWX: Make UpdateLog() return in a finite time.
...
After fixing the deadlock in #3006 , it is now possible for log
messages to flood in faster than UpdateLog can render them.
This causes it to never return, locking up the gui thread and
filling the windows message queue (which triggers the stack
overflow bug in older versions of Wx)
2015-10-09 12:14:04 +13:00
Lioncash
307ef88af6
DSPEmitter: Rename Default() to FallBackToInterpreter()
2015-10-08 12:45:14 -04:00
Lioncash
5f181957b3
NANDContentLoader: Replace a string rbegin() call with a back() call
2015-10-07 09:47:26 -04:00
catzilla4
867a1beb9f
Added some headers to allow Dolphin to compile in my environment.
2015-10-06 19:09:57 -05:00
shuffle2
ec28d7df92
Merge pull request #3144 from lioncash/dsp
...
DSPIntCCUtil: Minor changes
2015-10-06 13:03:11 -07:00
shuffle2
1c97da4942
Merge pull request #3132 from sepalani/fix_mbedtls
...
mbedTLS: fix blocking read
2015-10-06 13:01:57 -07:00
Christian Widmer
1fc1f00162
Include cstring in Hash.cpp to fix building without PCH
2015-10-06 14:59:56 +02:00
Lioncash
f53d060d70
DSPIntCCUtil: Remove unused function GetMultiplyModifier
2015-10-05 19:40:11 -04:00
Lioncash
1a989985c1
DSPIntCCUtil: Mark translation local functions as static
2015-10-05 19:39:09 -04:00
Sepalani
8efd5d1a74
WSAGetLastError: fix return value
2015-10-06 00:15:20 +02:00
Chris Burgener
5edb2bfea1
Fix wxWidgets Error in About Window
2015-10-05 13:36:53 -04:00
shuffle2
3b1375f78c
Merge pull request #3134 from lioncash/namespace
...
CPU: Convert CCPU into a namespace
2015-10-04 14:22:50 -07:00
shuffle2
55ea9e77e6
Merge pull request #3135 from lioncash/dsp
...
DSPCore: Convert defines over to enums
2015-10-04 14:22:02 -07:00
shuffle2
552c1f51d8
Merge pull request #3068 from mickdermack/pr-block-input
...
Block WX input when detecting controls
2015-10-04 14:19:44 -07:00
Lioncash
b730ad4406
DSPCore: Convert defines over to enums
2015-10-04 16:42:30 -04:00
Lioncash
ef1cc2cec4
CPU: Convert CCPU into a namespace
...
There's not much point to a class with only static member functions.
2015-10-04 15:15:10 -04:00
Lioncash
ba0a3c520b
EXI_DeviceAGP: Remove unnecessary headers
2015-10-04 13:13:32 -04:00
Fog
471c835546
Add Frame Advance Hold Hotkey Functionality
2015-10-04 12:14:36 -04:00
Michael Ehrenreich
b4411bd2ef
Block WX input when detecting controls
2015-10-04 14:50:28 +02:00
Pierre Bourdon
a2b3cdc393
FifoDataFile: Revert PadFile changes from 4.0-1127.
...
Fixes #9006 .
2015-10-04 13:53:01 +02:00
Sepalani
5be64d39b0
mbedTLS: fix blocking read
2015-10-04 12:24:25 +02:00
shuffle2
6d4128ddcc
Merge pull request #3128 from lioncash/unique
...
ControllerEmu: Use make_unique over raw new
2015-10-03 19:08:00 -07:00
shuffle2
569d25d9b4
Merge pull request #3129 from lioncash/mailbox
...
DSPHWInterface: Use an enum for indicating mailbox type
2015-10-03 19:04:35 -07:00
shuffle2
eb07038723
Merge pull request #3130 from rohit-n/sign-compare
...
VideoCommon: Silence -Wsign-compare warnings.
2015-10-03 18:49:38 -07:00
Rohit Nirmal
18f0831861
VideoCommon: Silence -Wsign-compare warnings.
2015-10-03 20:32:16 -05:00
shuffle2
0fdaacc7e0
Merge pull request #2738 from lioncash/bitfield
...
Common: Fix BitField mask generation.
2015-10-03 18:21:24 -07:00
shuffle2
81414b4fa2
Merge pull request #3076 from void-ghost/stereo3d_presets
...
Stereo3d presets
2015-10-03 18:10:23 -07:00
shuffle2
b926061f64
Merge pull request #3095 from void-ghost/savestate_race_condition_fix
...
SaveState: Fix for race condition in SaveAs(...)
2015-10-03 18:08:33 -07:00
shuffle2
4fb90bf9f6
Merge pull request #3115 from lioncash/ifx
...
DSPCore: Minor changes
2015-10-03 18:03:26 -07:00
shuffle2
06379cc3a0
Merge pull request #3113 from lioncash/input
...
InputCommon: Get rid of multiple identical define macros
2015-10-03 18:01:36 -07:00
shuffle2
a6f04b0e15
Merge pull request #3091 from Tilka/mbedtls
...
Update mbed TLS (PolarSSL)
2015-10-03 18:00:58 -07:00
shuffle2
8bb35c8588
Merge pull request #3083 from JosJuice/ipc-ticks
...
Use correct GetTicksPerSecond() value in IPC delays
2015-10-03 17:56:57 -07:00
shuffle2
9878004871
Merge pull request #3105 from phire/dont_block
...
ALSA: Don't block on Clear() call.
2015-10-03 17:55:26 -07:00
shuffle2
f5c88fc1a9
Merge pull request #3125 from JosJuice/di-callback-pointer
...
Simplify getting DI pointer in IOCtl callback
2015-10-03 17:52:58 -07:00
shuffle2
b4be34bc68
Merge pull request #3124 from dolphin-emu/shuffle2-patch-1
...
Fix WiiSockMan::DecodeError
2015-10-03 14:59:20 -07:00
Lioncash
9c73d63d40
DSPHWInterface: Use an enum for indicating mailbox type
2015-10-03 17:53:24 -04:00
Lioncash
fa05710f2f
ControllerEmu: Use make_unique over raw new
2015-10-03 15:37:25 -04:00
Lioncash
5464e698fc
Merge pull request #3102 from rohit-n/build-pch
...
Fix building with PCH disabled.
2015-10-03 13:30:51 -04:00
Scott Mansell
f84577b90b
LogManager: Move android logcat code into the proper place.
2015-10-04 02:18:06 +13:00
Scott Mansell
5f8a67250f
Bitset: Make bool() operator explicit.
2015-10-04 01:37:32 +13:00
Scott Mansell
18142eddb4
LogManager: Remove unused define.
2015-10-04 00:38:47 +13:00
Scott Mansell
6153424b8c
LogManager: replace set of LogListener pointers with bitset.
...
Mostly so we can iterate over which LogListeners are enabled without
having to aquire a lock.
2015-10-04 00:38:34 +13:00
Scott Mansell
83fa504cd9
Bitset: Make cast overrides const
2015-10-04 00:36:58 +13:00
JosJuice
bf2676a1b1
Simplify getting DI pointer in IOCtl callback
...
Gets rid of an odd code construct, and fixes the "Trying to run two DI
devices at once" ERROR_LOG appearing at the wrong times.
2015-10-03 11:35:29 +02:00
shuffle2
f33fae574f
Fix WiiSockMan::DecodeError
2015-10-03 01:56:42 -07:00
Scott Mansell
a10a3ecbac
ALSA: Don't block on Clear() call.
...
snd_pcm_writei() is meant to block block until all samples are written,
but apparently in some situations it can block for much longer, prehaps
even a infinite time, in the case of virtual machine FifoCI runs in.
Because it grabed a mutex before blocking, it could also block the
Clear() call for an infinite length of time, blocking dolphin's emu
thread.
snd_pcm_writei() also takes 10-15 seconds if you run dolphin under GDB
and can randomly take 5 or so seconds during normal usage.
By moving all the pause code to the ALSA thread, Clear() no-longer
blocks and everyone keeps their sanity.
2015-10-03 16:31:55 +13:00
flacs
6658d21215
Merge pull request #3121 from lioncash/pch
...
pch: Update MSVC version check
2015-10-03 05:21:17 +02:00
Scott Mansell
f1a43dc6d4
Merge pull request #3118 from lioncash/junk
...
WiimoteEmu: Get rid of an unused clamp function
2015-10-03 16:21:00 +13:00
Scott Mansell
bcee41b65d
Merge pull request #3123 from lioncash/null
...
Core: Replace 0 literals with nullptr
2015-10-03 16:19:46 +13:00
Rohit Nirmal
6001366aac
Alsa: Silence -Wsign-compare warning.
2015-10-02 21:10:06 -05:00
Lioncash
0f6c4653a4
Core: Replace 0 literals with nullptr
2015-10-02 22:06:17 -04:00
Lioncash
aeee5be5ef
pch: Update MSVC version check
2015-10-02 20:51:23 -04:00
Lioncash
a30681834c
InputCommon: Use NSNumber numeric literals in Obj-C code
2015-10-02 13:23:46 -04:00
Lioncash
5d8e422d82
WiimoteEmu: Get rid of an unused clamp function
2015-10-02 10:33:29 -04:00
Lioncash
75907d83c6
DSPCore: Get rid of division for determining array size in VerifyRoms
2015-10-01 11:49:30 -04:00
Lioncash
73f312863d
DSPCore: Compress common fill loops into std::fill
2015-10-01 11:23:01 -04:00
Scott Mansell
58d893e56f
Merge pull request #3075 from waddlesplash/no-regexp
...
FileSearch: Don't use RegExes, just do string comparisons.
2015-10-02 04:00:23 +13:00
Lioncash
ccc3cd884e
DSPCore: Use std::array to represent ifx_regs
2015-10-01 10:26:16 -04:00
Lioncash
7f9cb1b6a8
ControllerConfigDiag: Remove superfluous arguments
2015-10-01 09:37:48 -04:00
Lioncash
b3da7e81bd
ControllerConfigDiag: Amend button sizing issues
2015-10-01 09:34:32 -04:00
Lioncash
449c57a8e0
InputCommon: Get rid of multiple identical define macros
2015-10-01 08:45:22 -04:00
flacs
696d6eae09
Merge pull request #3108 from lioncash/cstyle-array
...
ChunkFile: Provide additional helpers for C-style arrays
2015-10-01 01:55:54 +02:00
Lioncash
a10be26972
Tev: Don't savestate Zero16
...
It's an array of zeroes. There's no need.
2015-09-30 19:45:50 -04:00
Lioncash
c6678687b0
ChunkFile: Provide additional helpers for C-style arrays
...
Gets rid of magic numbers in cases where the array size is known at compile time.
This is also useful for future entries that are stack allocated arrays as these
functions prevent incorrect sizes being provided.
2015-09-30 19:45:46 -04:00
flacs
6305437327
Merge pull request #3110 from booto/alsa-buffer-type
...
AlsaSound: fix buffer type, clean up macros
2015-10-01 00:01:26 +02:00
Lioncash
473188a2c3
WII_IPC_HLE_Device_fs: Get rid of a pointer cast
2015-09-30 16:04:53 -04:00
JosJuice
dec142cd00
DolphinWX: Respect aspect ratio of banners
2015-09-30 21:31:20 +02:00
JosJuice
7fdfea5a69
DolphinWX: Don't use nearest neighbor scaling for banners
...
* Makes HBC icons look better
* Fixes the issue with white dots appearing in downscaled images
* No longer subjectively better for GC banners according to comex
2015-09-30 21:30:06 +02:00
Ryan Houdek
0764971feb
Merge pull request #3109 from OrdinaryMagician/miniupnpc14
...
Update to support miniupnpc 1.9 API version 14
2015-09-30 11:08:58 -04:00
Marisa Kirisame
8c5744bca7
miniupnpc API version 14 changed the upnpDiscover functions, adding an argument for TTL (should default to 2)
...
this enables support for that should the build system have that specific version installed, the miniupnpc bundled in the project is unchanged
2015-09-30 16:50:58 +02:00
Ryan Houdek
ebf2420c6b
Merge pull request #3057 from booto/finicky-vert-beam-position
...
VI: Fix vert beam position inaccuracy
2015-09-30 08:26:31 -04:00
booto
6c28ea58ab
AlsaSound: fix buffer type, clean up macros
2015-09-30 19:14:03 +08:00
flacs
16957fcaec
Merge pull request #3107 from lioncash/pragma
...
TextureDecoder_x64: Remove now-unnecessary clang #pragma warning suppression
2015-09-29 19:53:12 +02:00
booto
ea6af0e98b
VI: Fix vert beam position inaccuracy
2015-09-30 00:21:33 +08:00
Lioncash
50a7390622
TextureDecoder_x64: Remove unnecessary commented out header
2015-09-29 11:04:00 -04:00
Lioncash
80c7e3ebc0
TextureDecoder_x64: Remove clang warning suppression
...
This was an issue two years ago on clang 3.3
2015-09-29 11:00:59 -04:00
Lioncash
d6ff75d71d
OGL: Remove unnecesary FPSCounter include from Render.cpp
2015-09-29 10:01:38 -04:00
Lioncash
4a981e3a04
FPSCounter: Change Update's return type to void
...
Its returned value is never used.
2015-09-29 10:01:37 -04:00
Lioncash
55c7754738
FPSCounter: Give the refresh interval a concrete type
2015-09-29 10:01:37 -04:00
Lioncash
e82b6a8532
FPSCounter: Direct initialize class members
2015-09-29 10:01:37 -04:00
Lioncash
bf23fcfc1f
FPSCounter: Don't provide direct access to m_fps
2015-09-29 09:43:03 -04:00
Tillmann Karras
2f6f30a939
Fix -Wuninitialized warnings
2015-09-29 04:27:27 +02:00
flacs
43e60073d1
Merge pull request #3100 from lioncash/printf
...
Get rid of some casts used with logging for size_t
2015-09-29 03:50:48 +02:00
flacs
d5ec7124e4
Merge pull request #3099 from lioncash/banner
...
VolumeGC: Get rid of banner pointer casts
2015-09-29 03:49:08 +02:00
flacs
aaa48e19fe
Merge pull request #3097 from JosJuice/blob-type
...
Fix blob type detection for game right-click menu
2015-09-29 03:46:29 +02:00
Rohit Nirmal
3b75f45cf6
Fix building with PCH disabled.
2015-09-28 11:51:08 -05:00
Lioncash
311c76647d
Get rid of some casts used with logging for size_t
...
Replaces them with the now-valid %z specifiers
2015-09-28 08:43:53 -04:00
Lioncash
7317dd4be2
VolumeGC: Get rid of banner pointer casts
...
Prefer reading the data into the reified struct instead.
2015-09-28 04:31:43 -04:00
shuffle2
2cb5c41fed
HostGetString: Actually fill a string with data
2015-09-28 05:40:52 +02:00
Matthew Parlane
ba96ca289d
Merge pull request #3034 from waddlesplash/new-qt
...
QtCompile.props: Update for Qt 5.5.
2015-09-28 15:17:17 +13:00
JosJuice
21cb13828c
Fix blob type detection for game right-click menu
...
I forgot to update it after changing how IsCompressed() works.
Also, checking file name extensions is a bad way of checking blob types.
2015-09-27 21:06:19 +02:00
JosJuice
be7e0554d2
DiscIO: Add a way to get blob type
2015-09-27 20:54:31 +02:00
ghost
cd19d5392e
SaveState: Fix for race condition ("wait" didn't actually waited for file to flush/close).
...
g_compressAndDumpStateSyncEvent was Set() before destruction of file object (i.e. before flushing changes and closing file).
Also, adds Common::ScopeGuard wrapper for RAII.
2015-09-27 21:40:32 +03:00
waddlesplash
06c6f60f5b
OGL: Use SplitPath() instead of std::regex.
2015-09-27 13:26:19 -04:00
waddlesplash
5643fe5d1f
FileSearch: Don't use RegExs, just do string comparisons.
...
Nothing used the RegEx feature of FileSearch, and GCC < 4.9
doesn't support C++11 RegEx properly, so get rid of it.
2015-09-27 13:25:51 -04:00
Scott Mansell
ce493b897d
Merge pull request #2271 from revel8n/fixes
...
Fix for alignment of zero-length files within directory based virtual disk
2015-09-28 05:28:38 +13:00
Scott Mansell
be3851b72e
Merge pull request #3090 from LPFaint99/gcifolder
...
GCI Folder: Skip 'header-only' writes
2015-09-28 05:26:12 +13:00
Scott Mansell
af327aec79
Merge pull request #3036 from mimimi085181/hash-respecting-stride
...
Respect the stride for efb copies when hashing them
2015-09-28 05:23:55 +13:00
Scott Mansell
4817118028
Merge pull request #3084 from JosJuice/cpu-core-clock
...
SystemTimers: Don't name non-constant variables as if they are constant
2015-09-28 05:22:54 +13:00
flacs
34c020352f
Merge pull request #3092 from JosJuice/compressed-blobs
...
Display all compressed formats in blue in GUI
2015-09-27 12:57:19 +02:00
Lioncash
457a398c33
MemoryWindow: Adjust control alignment
...
Aligns controls so that their widths remain the same with one another
2015-09-26 22:46:57 -04:00
Lioncash
5aa19ad051
MemoryWindow: Change the address search wxTextCtrl into a wxSearchCtrl
2015-09-26 22:46:53 -04:00
Lioncash
7ba171a497
CodeWindow: Ignore search error highlighting on empty string
...
Doesn't make sense to flag these as errors, since someone might search for another address.
2015-09-26 22:38:08 -04:00
Lioncash
6866373202
CodeWindow: Replace wxStaticText/wxTextCtrl combo with a wxSearchCtrl
...
Same thing, one control.
2015-09-26 22:38:07 -04:00
flacs
8ea9b07b59
Merge pull request #3093 from lioncash/header_shuffle
...
Common: Trim Common.h
2015-09-27 03:18:03 +02:00
revel8n
d4c2ca46a4
- Fix for alignment of 0-length files when volume directory is created from directory on disk
...
Updating constant value representation
Explicitly state data type in std:max usage
2015-09-26 18:29:29 -05:00
Lioncash
cc036ca86c
Common: Remove other Common prefixed headers from Common.h
2015-09-26 18:51:58 -04:00
Lioncash
19ac565e0d
Common: Move asserts to their own header
2015-09-26 18:51:27 -04:00
Lioncash
867df74b52
Common: Remove strdup define
...
It's not used anywhere.
2015-09-26 18:50:42 -04:00
Lioncash
1d42db2439
Common: Move NonCopyable to its own header
2015-09-26 18:50:35 -04:00
Lioncash
bb927ad738
Atomic_GCC: Throw out old code
2015-09-26 15:59:36 -04:00
Lioncash
d67ea484f7
Common: Get rid of compiler semantic asserts
...
They were never used.
2015-09-26 15:57:13 -04:00
mimimi085181
e24b8c4ab7
Respect the stride for efb copies when hashing them
2015-09-26 20:19:02 +02:00
Scott Mansell
a91810ba3b
Merge pull request #3042 from booto/audio-timing
...
AI: reduce overhead of sample counter
2015-09-27 05:03:55 +13:00
Ryan Houdek
be667e7de8
Merge pull request #3035 from aserna3/SSAAImprovements
...
Improved OGL and D3D's AA options in UI
2015-09-26 09:27:39 -04:00
JosJuice
6935d28112
Display all compressed formats in blue in GUI
...
In the past, only GCZ was shown as compressed, not CISO and WBFS.
2015-09-26 15:24:29 +02:00
JosJuice
94ee720a07
Rename IsCompressedBlob to IsGCZBlob for clarity
...
GCZ is just one of the several compressed formats that Dolphin supports.
2015-09-26 14:46:53 +02:00
LPFaint99
ddc523b81d
GCI Folder: Skip 'header-only' writes
...
issue #8961
2015-09-25 22:12:40 -07:00
Tillmann Karras
f6795466e7
mbedTLS: adapt Dolphin code
2015-09-26 07:09:19 +02:00
Anthony Serna
df189c3ea3
Improved D3D and OGL AA option UI
...
Removed Quality Levels from D3D AA options
Dropdown text now shows whether you're applying MSAA or SSAA
Added a description for SSAA
Moved SSAA checkbox
Cleaned up AA in backends slightly. Supported modes is now a list of ints.
2015-09-25 09:05:18 -07:00
Tillmann Karras
ac5f56df7e
mbedTLS: adapt Dolphin's Visual Studio files
2015-09-25 03:46:41 +02:00
Tillmann Karras
063446c46f
mbedTLS: run rename.pl script and fix errors
2015-09-25 03:46:41 +02:00
Lioncash
7e69a0ce79
CommandProcessor: Remove unused extern
2015-09-24 11:35:46 -04:00
JosJuice
ab8f75f000
SystemTimers: Don't name non-constant variables as if they are constant
2015-09-24 14:57:25 +02:00
ghost
7c1565b201
VideoConfig/LocalConfig/HotkeyManager: Added hotkeys for switching stereo-3d presets.
...
Added 3 depth/convergence presets. They are adjustable via (existing) hotkeys - changes to depth and convergence are applied to current preset.
Added 3 hotkeys for activating presets. Added hotkey for toggle between first and second preset.
Added OSD message for convergence/depth changes.
Presets are saved into per-game configs.
2015-09-24 15:19:55 +03:00
Lioncash
d694994874
BoundingBox: Remove unnecessary headers
2015-09-24 03:19:43 -04:00
Tillmann Karras
aba083dd3a
FifoPlayer: remove leftover code
2015-09-24 05:09:41 +02:00
flacs
c1ee0e7829
Merge pull request #3078 from lioncash/titleid
...
DiscIO: Do swapping in GetTitleID implementations
2015-09-23 18:56:57 +02:00
flacs
cf131b133e
Merge pull request #3079 from lioncash/emit
...
x64Emitter: Minor changes
2015-09-23 18:55:24 +02:00
flacs
40da69d5a2
Merge pull request #3081 from lioncash/si-enum
...
SI_Device: Convert define constants over to enums
2015-09-23 18:55:10 +02:00
Rohit Nirmal
a48e425f41
Silence -Wshadow warning.
2015-09-23 11:02:24 -05:00
JosJuice
3fdae38e26
Use correct GetTicksPerSecond() value in IPC delays
...
The constant IPC_DEFAULT_DELAY used a value from GetTicksPerSecond(),
which in turn uses a value from CPU_CORE_CLOCK... but CPU_CORE_CLOCK
isn't actually a constant! It's first initialized to 486 MHz and then
changed to 729 MHz in SystemTimers::PreInit if emulating a Wii. This
means that the IPC delays always used 486 MHz and thus were wrong.
To fix this, the IPC reply constants are changed to functions.
2015-09-23 18:02:09 +02:00
Lioncash
c7148c9660
SI_Device: Convert define constants over to enums
2015-09-23 11:13:03 -04:00
booto
0e0fec3075
AI: reduce overhead of sample counter
2015-09-23 20:39:28 +08:00
Lioncash
7890b38c15
x64Emitter: Remove unimplemented function prototype in OpArg
2015-09-22 19:54:46 -04:00
Lioncash
6e5f60bab7
x64Emitter: Make single argument constructor explicit
2015-09-22 19:51:14 -04:00
Lioncash
213d11dc62
Merge pull request #2939 from lioncash/find
...
FramebufferManagerBase: Compress a loop into a find_if
2015-09-22 18:56:38 -04:00
Lioncash
4b9b82e000
DiscIO: Do swapping in GetTitleID implementations
...
Gets rid of external swaps at every usage.
2015-09-22 13:50:35 -04:00
Lioncash
5d774df1e8
Merge pull request #3074 from JosJuice/isoproperties-gettitleid
...
Remove odd way of getting ID in ISOProperties
2015-09-22 12:24:19 -04:00
Markus Wick
3930c929cb
Merge pull request #3062 from phire/moveGL
...
Move GL interface code out of the OpenGL video backend.
2015-09-22 15:32:48 +02:00
Scott Mansell
a537ca7543
Merge pull request #2997 from phire/FixFifoRecorder
...
FifoRecorder: Use Texture Cache to record efb copies correctly.
2015-09-23 00:17:37 +12:00
Scott Mansell
aa1fec6fc3
FifoPlayer: Fixup style of types.
2015-09-23 00:03:43 +12:00
Scott Mansell
a355d9868e
FifoRecorder: Use Video Common to record efb2ram correctly.
...
Texture updates have been moved into TextureCache, while
TMEM updates where moved into bpmem. Code for handling
efb2ram updates was added to TextureCache.
There was a bug for preloaded RGBA8 textures, it only copied
half the texture. The TODO was wrong too.
2015-09-22 23:59:16 +12:00
ghost
07e4b4f7c4
VideoBackend: Video config filename is now exposed in VideoBackends.
...
It reduces redundancy. Needed make possible to save current video config.
2015-09-22 09:47:19 +03:00
JosJuice
42db9e2897
Remove odd way of getting ID in ISOProperties
...
Other code (like GameListItem) simply calls GetUniqueID,
and I've never seen that lead to any problems.
2015-09-21 17:46:05 +02:00
Scott Mansell
c9836ff592
EGL: Don't depend on VideoCommon or Core
2015-09-22 00:36:48 +12:00
Scott Mansell
72249b8085
GLX: Don't depend on Core or VideoCommon
2015-09-22 00:36:47 +12:00
Scott Mansell
01ed925fec
AGL: Don't depend on VideoCommon
2015-09-22 00:36:46 +12:00
Scott Mansell
93f6563789
WGL: Don't depend on Core/VideoCommon
2015-09-22 00:36:45 +12:00
Scott Mansell
95f3c956a8
Move GL interface code out of the OpenGL video backend.
2015-09-22 00:36:45 +12:00
Lioncash
bddcdd9d94
Jit_Util: Replace two MDisp usages with MatR
...
Same thing, less to read.
2015-09-21 08:20:35 -04:00
flacs
3df83e5717
Merge pull request #3069 from degasus/master
...
VideoSW: Don't raise a PanicAlert because of indices
2015-09-21 11:58:13 +02:00
Lioncash
67cfadf0bb
DSPJitUtil: Use SCALE constants instead of magic numbers
2015-09-21 04:50:25 -04:00
Lioncash
29c674848d
DSPJitRegCache: Make GetFreeXReg return by value
...
There's no reason to only modify an enum value by reference.
2015-09-21 04:24:09 -04:00
CastellaFactory
7ddfe713d5
[Netplay] Show error dialog if failed to connect to netplay server when Traversal and Force Listen Port is enabled
2015-09-20 20:15:13 +09:00
CastellaFactory
1f83a3d146
[Netplay:Traversal] Add "Force Netplay Listen Port" feature that was in old netplay branch
2015-09-20 20:15:13 +09:00
degasus
be16901ae1
VideoSW: Don't raise a PanicAlert because of indices
...
It's not panic, it may just render wrong. And this case seems to happen often.
2015-09-20 13:13:47 +02:00
flacs
63c373c843
Merge pull request #3063 from lioncash/func
...
DSPJitRegCache: Fix function casing
2015-09-20 03:32:11 +02:00
flacs
403df299a6
Merge pull request #3066 from degasus/master
...
GLInterface: Fix VideoSW on linux + OSX (v2)
2015-09-20 03:30:46 +02:00
JosJuice
17edcc4fc7
Fix Cheat Manager not saving created codes
2015-09-19 17:20:16 +02:00
Markus Wick
1c502b76a5
Merge pull request #3065 from JosJuice/wad-id-exception
...
Fix 4.0-7767 regression: exception when handling short WAD IDs
2015-09-19 13:49:21 +02:00
degasus
c976e14277
GLInterface: Fix VideoSW on linux + OSX (v2)
...
Our Video Software backend isn't OpenGL Core compatible, so we need a flag to alloc a compatible one.
v2: Fix AGL profile selection.
2015-09-19 13:22:55 +02:00
JosJuice
e2e7fc9029
Fix 4.0-7767 regression: exception when handling short WAD IDs
2015-09-19 09:23:52 +02:00
flacs
9b08de9522
Merge pull request #3064 from phire/no_xp
...
VideoBackendBase: Remove check for XP.
2015-09-18 21:18:07 +02:00
Scott Mansell
b6cd78a370
VideoBackendBase: Remove check for XP.
2015-09-19 07:10:44 +12:00
Lioncash
c2cc8d7cd8
DSPJitRegCache: Fix function casing
2015-09-18 13:23:32 -04:00
Lioncash
9f389fdccb
Gekko: Make sign-extension functions constexpr
2015-09-18 11:14:45 -04:00
Markus Wick
b293bd22d6
Merge pull request #3060 from dolphin-emu/revert-3054-master
...
Revert "GLInterface: Fix VideoSW on linux + OSX"
2015-09-18 13:48:47 +02:00
Markus Wick
8bd1be643c
Merge pull request #3059 from lioncash/vtx
...
VertexLoaderUtils: Get rid of pointer casts
2015-09-18 13:45:14 +02:00
Markus Wick
a7e9a154a5
Revert "GLInterface: Fix VideoSW on linux + OSX"
2015-09-18 13:40:09 +02:00
Scott Mansell
3f56480903
Merge pull request #3037 from JosJuice/titles-txt-sort
...
DolphinWX: Fix sorting games by custom titles
2015-09-18 17:41:32 +12:00
Lioncash
c3332604fa
ControllerInterface: Fix -Winconsistent-missing-override warnings on OSX
2015-09-17 15:15:15 -04:00
Lioncash
28d1001ff8
VertexLoaderUtils: Get rid of pointer casts
...
Eliminates most ubsan asserts that stem from VideoCommon when running starfield.
2015-09-17 14:24:11 -04:00
degasus
baf09c3af6
VideoSW: Remove unused function
2015-09-17 19:44:44 +02:00
flacs
e4dfb2f6bf
Merge pull request #3054 from degasus/master
...
GLInterface: Fix VideoSW on linux + OSX
2015-09-17 19:21:16 +02:00
degasus
3b5b80bf3c
VideoSW: Drop SW bbox code
...
The hardware backends don't use this shared code any more, and it's not needed for video sw either. So this was just dead code.
2015-09-17 18:21:37 +02:00
degasus
e3e0399af2
VideoSW: Drop HwRasterizer
...
I don't remember it being working, and nobody cares about performance of videosw.
2015-09-17 18:21:37 +02:00
degasus
48279c1840
GLInterface: Fix VideoSW on linux + OSX
...
Our Video Software backend isn't OpenGL Core compatible, so we need a flag to alloc a compatible one.
2015-09-17 17:52:56 +02:00
Lioncash
cfa43f64bf
x64Emitter: Remove pointer cast
...
No more ubsan asserts in the JIT and x64 emitter code paths when running starfield.
2015-09-17 09:35:13 -04:00
Lioncash
a94300dd86
Rasterizer: Use multiplication instead of shifts in DrawTriangleFrontFace
...
The left-hand-side is negative at some point which is considered undefined by the standard.
2015-09-17 01:46:29 -04:00
Lioncash
00ffc47751
Jit_Util: Mark a class function as const
2015-09-17 00:21:50 -04:00
flacs
6940fc5ab9
Merge pull request #2947 from Rukario/my_branch
...
Updated terms in Netplay window.
2015-09-17 03:02:59 +02:00
Lioncash
c6ea9eb7c3
JitCache: Remove unused define
2015-09-16 19:15:47 -04:00
Tillmann Karras
b8f3519e49
Fix -Wunused-private-field warning
2015-09-16 23:31:53 +02:00
flacs
49ea15b950
Merge pull request #2873 from lioncash/netleaks
...
NetPlay: Fix a memory leak
2015-09-16 21:56:17 +02:00
Markus Wick
295b869304
Merge pull request #3028 from mimimi085181/sonic-fighters-regression-fix2
...
Fix performance regression in Sonic the Fighters, introduced by PR#2001
2015-09-16 21:53:03 +02:00
flacs
9e5f2ded86
Merge pull request #3040 from lioncash/arraysize
...
AX: Use ArraySize over sizeof division
2015-09-16 21:25:29 +02:00
flacs
29a0a2b626
Merge pull request #3043 from lioncash/jitalign
...
JitCache: Get rid of pointer casts
2015-09-16 21:22:01 +02:00
flacs
84f4c446de
Merge pull request #3045 from lioncash/state
...
State: Increase savestate version
2015-09-16 21:19:21 +02:00
flacs
ca7b999968
Merge pull request #3046 from phire/dx11-segfault
...
Remove segfault from DX11 backend.
2015-09-16 21:18:22 +02:00
Scott Mansell
deeb1d8370
Remove segfault from DX11 backend.
...
Instead of blindly using the expected width, clamp it to the stride of the
buffer which dx11 returns. This prevents use from reading invalid memory
at the end of textures.
This doesn't solve the base issue of what to do when a game tries to copy
from outside the efb. On real hardware it returns random noise (biased
to all ones)
2015-09-17 02:22:00 +12:00
Lioncash
227c3aa259
State: Increase savestate version
...
This should have been done when GC_ALIGN macros were replaced.
2015-09-16 09:04:44 -04:00
Lioncash
8aac59418b
JitCache: Get rid of pointer casts
...
Silences more ubsan runtime asserts
2015-09-16 06:25:48 -04:00
degasus
3ae466a33c
JitArm64: Fix lmw + stmw
2015-09-16 08:11:18 +02:00
flacs
955bef226e
Merge pull request #3041 from lioncash/align
...
Common: Get rid of a few pointer casts
2015-09-15 20:40:05 +02:00
Lioncash
2c5c99ec71
Common: Get rid of a few pointer casts
2015-09-15 12:28:59 -04:00
Lioncash
77d3bed058
AX: Use ArraySize over sizeof division
...
Also gets rid of magic numbers in volume ramp generation.
2015-09-14 23:55:09 -04:00
Lioncash
b7739f5d85
VideoCommon: Remove unnecessary enum typedef
2015-09-14 19:43:31 -04:00
Lioncash
56560403bd
BreakPoints: Remove unimplemented function declarations
2015-09-14 11:50:34 -04:00
waddlesplash
f5743f5ee9
DolphinQt: Handle the Host_UpdateTitle callback.
2015-09-13 09:37:00 -04:00
waddlesplash
7c91669ced
DolphinQt: Updates to the SystemInfo dialog.
...
* Windows 8.1/10 & OS X .10/.11 constants now in Qt
* idealThreadCount() includes hyperthreads, so say 'logical processors'
2015-09-13 09:33:32 -04:00
waddlesplash
7c2f22fd0c
DolphinQt: Use C++11 'final' keyword where applicable.
2015-09-13 09:33:30 -04:00
waddlesplash
11c641ed90
DolphinQt: Set the SUBSYSTEM in Release mode to 'Windows' to hide the console.
2015-09-13 09:33:28 -04:00
waddlesplash
0e2ea1ba64
DolphinQt: Remove '&' on closures where it isn't needed.
2015-09-13 09:33:26 -04:00
waddlesplash
7c13021627
DolphinQt: Add 'Screenshot' button.
2015-09-13 09:33:24 -04:00
waddlesplash
db8b50cf7e
DolphinQt: Indentation fixes.
2015-09-13 09:33:22 -04:00
waddlesplash
831d8ef13f
DolphinQt: Properly handle quit events.
...
* Confirm stopping emulation when the window is closing, not just the "Stop" button
* Don't resume if we were already paused when we got the quit event
* Shutdown the core at the end of main() so we don't crash on exit
* Miscellaneous other logic cleanups related to this
2015-09-13 09:32:09 -04:00
JosJuice
210aa774d5
DolphinWX: Only read titles.txt once
...
titles.txt is read into a map and passed to the GameListItem
constructor, making game list scanning a bit more efficient.
ISOPropreties's constructor is changed to take a GameListItem as an
argument instead of creating one on its own, because ISOPropreties
doesn't have the titles.txt map that the GameListItem constructor wants.
2015-09-13 14:17:58 +02:00
JosJuice
10aafff5b9
DolphinWX: Fix sorting games by custom titles
...
The custom title reading code is moved so that custom titles are
returned by GameListItem::GetName(). The comparison code is changed
to use GetName() instead of GetName(DiscIO::IVolume::ELanguage).
GetName(DiscIO::IVolume::ELanguage) must not return custom titles,
because netplay relies on it returning the same name for all players.
2015-09-13 12:45:06 +02:00
Scott Mansell
45c1cfa078
Merge pull request #2242 from Stevoisiak/Titles.txt
...
GameListCtrl: Improvements for reading custom game titles
2015-09-13 14:03:47 +12:00
waddlesplash
c781123db7
QtCompile.props: Update for Qt 5.5.
2015-09-12 18:58:14 -04:00
JosJuice
cbd539eb3d
Use official names for GameCube controller sticks
...
Main Stick is changed to Control Stick and C-Stick is changed to C Stick.
A new ui_name variable is added to ControlGroup so that the UI strings
in DolphinWX can be updated without breaking backwards compatibility
with config INIs and other things that use names as IDs.
2015-09-12 22:45:06 +02:00
waddlesplash
436f1133dd
DolphinQt: Simplify action setup.
...
We don't need two sets of actions (one with icons, one without icons)
for Play/Stop, we can just tell Qt not to display the icons in the menus.
2015-09-12 11:24:00 -04:00
Scott Mansell
c0a89c3bf4
Merge pull request #3009 from phire/depth_tested_pokes
...
Add some logging for depth tested efb color pokes.
2015-09-12 22:20:59 +12:00
Scott Mansell
44456bec0f
Add some logging for depth tested efb color pokes.
2015-09-12 22:19:59 +12:00
Scott Mansell
66dd79c569
Merge pull request #3010 from Felk/master
...
fixed disabling auto reporting for emulated wiimotes not working properly
2015-09-12 21:40:25 +12:00
Tillmann Karras
38ae572203
Debugger: fix -Wunused-private-field warning
2015-09-12 10:01:26 +02:00
mimimi085181
dd458b554d
Fix performance regression in Sonic the Fighters, introduced by PR#2001
2015-09-12 09:12:14 +02:00
Lioncash
baa9eacd51
LookUpTables: Make functions constexpr
2015-09-12 03:04:40 -04:00
Ryan Houdek
f121d7a8cd
Merge pull request #3026 from lioncash/constexpr
...
MathUtil: Make Clamp and IsPow2 constexpr functions.
2015-09-12 02:28:38 -04:00
Ryan Houdek
4d5baa4772
Merge pull request #3024 from LAGonauta/x-fi-audio-fix
...
Added X-Fi check and convert surround FLOAT to SHORT when it is detected
2015-09-12 02:27:16 -04:00
Ryan Houdek
5556781946
Merge pull request #3018 from Armada651/ogl-tab
...
OGL: Invert Top-and-Bottom mode.
2015-09-12 02:21:19 -04:00
Ryan Houdek
2e6db7dc27
Merge pull request #2991 from lioncash/pcast
...
EXI_DeviceIPL: Get rid of a pointer cast
2015-09-12 02:15:59 -04:00
Ryan Houdek
17ff069d4a
Merge pull request #3002 from degasus/master
...
OGL: reimplement SSAA based on ARB_gpu_shader5
2015-09-12 02:14:45 -04:00
Ryan Houdek
6d9b4d7d35
Merge pull request #3025 from Tilka/fixfix
...
VertexLoaderX64: fix 2GB warnings
2015-09-12 01:38:14 -04:00
Lioncash
3f4852a03d
MathUtil: Convert IsPow2 into a constexpr function
2015-09-12 01:26:05 -04:00
Lioncash
b9e360df7b
MathUtil: Convert Clamp into a constexpr function
2015-09-12 01:18:28 -04:00
Lioncash
113cc119de
Merge pull request #2829 from JosJuice/fix-wii-fst-size-2
...
Fix reading Wii FST size (for real this time)
2015-09-12 00:50:00 -04:00
Lioncash
fa62018c40
Merge pull request #2995 from endrift/tasinputdlg-threading
...
DolphinWX: TAS fixes, take three
2015-09-12 00:42:21 -04:00
Lioncash
5db4a60995
Merge pull request #2993 from JosJuice/dol-elf-qt
...
DolphinQt: Support ELF and DOL files in the game list
2015-09-12 00:38:51 -04:00
Lioncash
4de2bd3be4
Merge pull request #2833 from waddlesplash/dolphin-qt
...
DolphinQt: Rewrite 'About' dialog to match the new WX one.
2015-09-12 00:38:05 -04:00
Lioncash
4643da73a3
Merge pull request #3021 from waddlesplash/dolphin-qt-fixup
...
DolphinQt: Use more C++11, add more sanity to VS projects.
2015-09-12 00:36:35 -04:00
Scott Mansell
68b415ba87
Merge pull request #3019 from mimimi085181/store-base-hash
...
Store the base hash for paletted textures in the texture cache entries
2015-09-12 16:24:29 +12:00
Scott Mansell
02842cb34b
Merge pull request #3006 from phire/deadlock
...
Fix deadlock with KHR_debug.
2015-09-12 16:19:58 +12:00
Scott Mansell
ee7285a1db
Merge pull request #3008 from Lionel07/qt-screensaver
...
Qt: Disable Display Sleep when game is running (Windows)
2015-09-12 16:13:51 +12:00
Scott Mansell
2c67ad88cd
Merge pull request #3023 from JosJuice/qt-pixmaps
...
DolphinQt: Bring pixmaps up to date with DolphinWX and themes
2015-09-12 16:13:35 +12:00
Jeffrey Pfau
c08203b704
DolphinWX: TAS fixes, take three
2015-09-11 19:51:31 -07:00
Tillmann Karras
63c9fdd074
VertexLoaderX64: fix 2GB warnings
...
Unlike the CPU JIT, the vertex loader JIT already emits
position-independent code, so all we need to do is disable the warning.
2015-09-12 01:24:47 +02:00
Corwin Mcknight
b2e4019383
DolphinQt: Disable Display Sleep on Windows.
...
Disables Display Sleeping on Windows on DolphinQt while the game runs,
and re-enables it after the game closes.
2015-09-11 16:06:59 -07:00
flacs
c5685ba53a
Merge pull request #2972 from lioncash/align
...
General: Replace GC_ALIGN macros with alignas
2015-09-11 17:00:13 +00:00
Lioncash
d7acf06505
Merge pull request #2985 from JosJuice/iselfordol
...
DolphinWX: Don't use IsElfOrDol outside of ISOFile
2015-09-11 12:28:57 -04:00
LAGonauta
b98b55c7be
Added X-Fi check and convert surround FLOAT to SHORT when it is detected
...
Fixed braces, first try fixing mac compilation and removed useless NULL
comparison.
2015-09-11 13:22:04 -03:00
JosJuice
cb496994e3
DolphinQt: Bring pixmaps up to date with DolphinWX and themes
...
Also removed PLUGIN from names because there aren't actually any plugins.
2015-09-11 16:13:18 +02:00
flacs
c07d672b31
Merge pull request #3003 from dolphin-emu/revert-2961-printf
...
Partially revert "General: Toss out PRI macro usage"
2015-09-11 14:08:58 +00:00
JosJuice
ec8ede2600
DolphinQt: Support XML metadata in Homebrew Channel format
2015-09-11 16:02:39 +02:00
JosJuice
3e6d62ae9e
DolphinQt: Support banners in Homebrew Channel format
...
HBC uses files named icon.png for icons. This change makes Dolphin
support that file name, and also [executable file name].png
in case someone wants to have multiple files in one folder.
The HBC banner support is mainly intended for DOL and ELF files,
but it can also be used to override banners of disc images,
something that wasn't possible in the past.
That sure was simple compared to the wx version of this commit...
2015-09-11 16:02:38 +02:00
JosJuice
047ddb94a2
DolphinQt: Support ELF and DOL files in the game list
2015-09-11 16:02:14 +02:00
Lioncash
19459e827f
Partially revert "General: Toss out PRI macro usage"
2015-09-11 09:49:00 -04:00
Ryan Houdek
c319fbb98d
Merge pull request #3013 from aserna3/Security101
...
Removed fastmem from Android UI
2015-09-11 09:14:50 -04:00
waddlesplash
c75fd4d7c5
DolphinQt: Add some sanity to the VS projects.
2015-09-10 23:49:20 -04:00
waddlesplash
8fbf70ec55
DolphinQt: Make use of the C++11 signal/slot connection syntax.
...
Also use lambdas over one-line functions in some cases.
2015-09-10 23:31:40 -04:00
waddlesplash
0c1671973c
DolphinQt: Rewrite About dialog to match the new DolphinWX one.
2015-09-10 23:02:47 -04:00
mimimi085181
e408e0ab17
Store the base hash for paletted textures in the texture cache entries
2015-09-10 22:28:59 +02:00
Jules Blok
99c08c89bb
OGL: Invert Top-and-Bottom mode.
2015-09-10 22:22:26 +02:00
Ryan Houdek
3014feedc8
Merge pull request #3012 from degasus/destAlpha
...
VideoCommon: Drop "Disable destAlpha" hack
2015-09-10 13:56:43 -04:00
mimimi085181
38f6cf2089
Perform garbage collection for efb copies
...
This checks every TEXTURE_KILL_THRESHOLD frames, to see if the hash for the memory area of the efb copy has hanged. If it has changed, the efb copy can be removed, it wouldn't be used anymore. Before this pr, some efb copies would never be deleted.
Fixes issue https://bugs.dolphin-emu.org/issues/6101 and possibly some other VRAM leaks.
2015-09-10 11:58:58 +02:00
Scott Mansell
ef4974b6a2
Remove unused log type.
2015-09-10 18:39:32 +12:00
Scott Mansell
0ed1e977cc
Rearrange the logtypes into something closer to alphabetical order.
...
Also fix up a few of the long names.
2015-09-10 18:39:08 +12:00
Scott Mansell
de9310fe70
Split OpenGL errors into a separate logtype from Video errors.
...
Allows them to be enabled/disabled separately.
2015-09-10 18:38:45 +12:00
Lioncash
88c9c6d086
ExpressionParser: Make all control paths return a value in operator std::string
2015-09-09 22:41:47 -04:00
Anthony Serna
cbd7b0793f
Removed fastmem from Android UI
2015-09-09 14:46:20 -07:00
degasus
74b20e627c
VideoCommon: Drop "Disable destAlpha" hack
...
This option has no use any more, neither performance nor driver workaround.
2015-09-09 21:31:54 +02:00
Scott Mansell
38d05cd70f
Merge pull request #3007 from phire/khr_debug_notification
...
OpenGL: drop log level of some spammy KHR_debug messages.
2015-09-09 17:34:27 +12:00
Felk
786cf7c9ff
fixed disabling auto reporting for emulated wiimotes not working properly
2015-09-09 04:55:14 +02:00
Lioncash
8f13d50a4e
Merge pull request #2989 from lioncash/filter
...
DiscIO/VS: Remove an empty filter
2015-09-08 21:01:00 -04:00
Scott Mansell
a95adba39b
Drop DEBUG_SEVERITY_NOTIFICATION messages down to DEBUG_LOG
2015-09-09 12:22:52 +12:00
Scott Mansell
b9b80191d5
Fix deadlock with KHR_debug.
...
An KHR_debug callback could end up waiting for a mutex
on a thread which calls windows system functions.
While this is not expressly forbidden by the standards,
it does forbid directy calling windows system functions
from a KHR_debug callback. Close enough.
2015-09-09 12:05:24 +12:00
James Cowgill
50d5a9a9bc
HW: Fix spelling mistake
2015-09-08 21:11:28 +01:00
flacs
48031eaff7
Merge pull request #2974 from Tilka/fprf
...
Jit64: fix errors in FPRF calculation
2015-09-08 18:59:22 +00:00
flacs
0c381d6547
Merge pull request #2975 from lioncash/emit
...
x64Emitter: Simplify/compress some conditionals
2015-09-08 18:44:54 +00:00
Ryan Houdek
5d7f834cde
Add run count to the JIT profile information
2015-09-08 11:09:52 -05:00
Markus Wick
81c07d4919
Merge pull request #2990 from lioncash/noncopy
...
Common: Alter semantics of the NonCopyable mixin
2015-09-08 11:08:58 +02:00
Ryan Houdek
2e02de6587
Merge pull request #2998 from Sonicadvance1/GLES_BBox
...
[GLES] Enable bounding box support.
2015-09-08 02:38:54 -05:00
Scott Mansell
332e81d2d7
Merge pull request #2984 from JosJuice/dvdinterface-round-down
...
DVDInterface: Use ROUND_DOWN
2015-09-08 12:43:11 +12:00
degasus
664beea538
OGL: reimplement SSAA based on ARB_gpu_shader5
...
So i965 shall support it again.
2015-09-07 22:21:11 +02:00
Ryan Houdek
2ad26ab3e9
[AArch64] Fix Test&Branch to relative location instructions.
...
Wasn't masking by the size of the offset encoding so negative values were killing the instruction
Missed commiting this in my integer gatherpipe PR.
Fixes crashing on AArch64.
2015-09-07 13:38:58 -05:00
Ryan Houdek
bfb544e1fb
[GLES] Enable bounding box support.
2015-09-07 12:07:27 -05:00
Markus Wick
5585c5adc2
Merge pull request #2994 from aserna3/master
...
Properly implemented confirm on stop CLI switch
2015-09-07 14:00:17 +02:00
Ryan Houdek
a9a339a00c
Merge pull request #2962 from Sonicadvance1/aarch64_integer_gatherpipe
...
[AArch64] Implement integer gatherpipe writes.
2015-09-07 06:20:01 -05:00
Scott Mansell
1f800b80dd
Merge pull request #2960 from phire/improve_efb2tex
...
Make efb2tex behave much more like efb2ram.
2015-09-07 14:12:03 +12:00
Ryan Houdek
99a7dfaf5e
Merge pull request #2965 from Sonicadvance1/Android_config_changes
...
[Android] Fix multi-gamecube controller input, config changes
2015-09-06 20:07:32 -05:00
Anthony Serna
a5d6072a45
Properly implemented confirm on stop CLI switch
2015-09-06 14:35:26 -07:00
Lioncash
1b026364bf
Merge pull request #2992 from aserna3/master
...
Implemented CLI switch to disable confirm on stop
2015-09-06 16:55:11 -04:00
Anthony Serna
ad1a8a1b31
Implemented CLI switch to disable confirm on stop
2015-09-06 13:08:29 -07:00
Lioncash
ec3d55b093
EXI_DeviceIPL: Get rid of a pointer cast
...
Also moves the RTC updating code to its own function.
2015-09-06 14:42:43 -04:00
Lioncash
53465e329a
Common: Alter semantics of the NonCopyable mixin
...
Uses delete to make the unimplemented functions detectable at compile time
and not link time if they are used.
The move constructor and assignment operator are removed as moves are not
copies, but transfers of ownership, which isn't suited for this class.
2015-09-06 13:45:08 -04:00
degasus
1c0366993a
VideoBackends: Reimplement SSAA, now for D3D + OGL
2015-09-06 19:40:00 +02:00
Lioncash
f194ee6223
x64Emitter: Simplify/compress some conditionals
2015-09-06 13:28:36 -04:00
Lioncash
623df9b5ca
DiscIO/VS: Remove an empty filter
2015-09-06 13:23:33 -04:00
Scott Mansell
ac467d9fb9
FifoPlayer: Don't check efb copy hashes when plaing back a broken dff
2015-09-07 05:20:25 +12:00
Lioncash
8ce04f9a65
General: Replace GC_ALIGN macros with alignas
...
Standard supported alignment -> out with compiler-specific.
2015-09-06 12:53:51 -04:00
Scott Mansell
bda964e0b9
Workaround to allow partial texture updates to keep working in NSMBWii
2015-09-07 02:32:01 +12:00
Scott Mansell
ee649c6d9f
Make efb2tex behave more like efb2ram.
...
Instead of having special case code for efb2tex that ignores hashes,
the only diffence between efb2tex and efb2ram now is that efb2tex
writes zeros to the memory instead of actual texture data.
Though keep in mind, all efb2tex copies will have hashes of zero as
their hash.
2015-09-07 02:32:01 +12:00
Scott Mansell
c08a83a5aa
Merge pull request #2957 from phire/unify_efbcopy
...
Cleanup and unify efb copy implemtations into VideoCommon
2015-09-07 00:10:42 +12:00
JosJuice
4716c8ecf6
DolphinWX: Little simplification for game right-click menu
2015-09-06 13:33:23 +02:00
JosJuice
cb3b1b6f44
DolphinWX: Don't use IsElfOrDol outside of ISOFile
...
It's redundant because GetPlatform can do the same thing.
2015-09-06 13:33:19 +02:00
Scott Mansell
d797b5d0b5
Use ROUND_UP instead of custom bittwiddling.
2015-09-06 23:00:17 +12:00
JosJuice
5c454379ae
DVDInterface: Use ROUND_DOWN
2015-09-06 12:15:01 +02:00
Scott Mansell
137856bd00
Fix palette conversions for 4 bit efb copies.
...
Fixes purple shadow in THPS4 and many other things.
2015-09-06 21:16:52 +12:00
Scott Mansell
e745748c3e
Improve comments for texture formats enum.
2015-09-06 21:16:51 +12:00
Scott Mansell
b9be3245e1
Move common EFB copy code into VideoCommon
...
Addded a few duplicated depth copy texture formats to the enum
in TextureDecoder.h. These texture formats were already implemented
in TextureCacheBase and the ogl/dx11 texture cache implementations.
2015-09-06 21:16:51 +12:00
Scott Mansell
be4caa3dc0
Merge pull request #2961 from lioncash/printf
...
General: Toss out PRI macro usage
2015-09-06 21:02:22 +12:00
Scott Mansell
d52d8bf935
Merge pull request #2982 from lioncash/unique
...
Common: Remove StdMakeUnique.h
2015-09-06 21:01:48 +12:00
Lioncash
8b027f6ed7
CMakeLists: Bump C++ compilation from gnu++0x to c++1y
2015-09-06 04:10:40 -04:00
Lioncash
4fc71e9708
Common: Remove StdMakeUnique.h
2015-09-06 04:09:53 -04:00
Scott Mansell
a26cac87fc
Merge pull request #2959 from rohit-n/build-pch
...
Fix building with PCH disabled.
2015-09-06 19:59:49 +12:00
Scott Mansell
61da83182e
Merge pull request #2978 from lioncash/override
...
Add missing override specifiers
2015-09-06 19:21:59 +12:00
Scott Mansell
728d082bc7
Merge pull request #2983 from lioncash/delete
...
WII_Socket: Make the copy-assignment operator deleted
2015-09-06 19:20:47 +12:00
Lioncash
007939c4e9
WII_Socket: Make the copy-assignment operator deleted
2015-09-06 03:12:01 -04:00
Lioncash
f64de2006b
HLE_Misc: Remove unnecessary headers
2015-09-06 02:27:04 -04:00
Lioncash
4a2e680ed2
VolumeGC: Initialize a variable
...
Silences an uninitialized variable warning
2015-09-05 23:05:28 -04:00
Lioncash
22635c1800
Add missing override specifiers
2015-09-05 22:40:19 -04:00
comex
96e42dff52
Merge pull request #2977 from lioncash/unused
...
General: Remove unimplemented function prototypes
2015-09-05 22:20:47 -04:00
Lioncash
633be0387d
General: Remove unimplemented function prototypes
2015-09-05 22:01:07 -04:00
Pierre Bourdon
6af8e00b66
Merge pull request #2813 from lioncash/updating_list
...
CheatSearchTab: Make the search results list auto update address values
2015-09-05 23:10:06 +02:00
Pierre Bourdon
8a993e1fbc
Merge pull request #2958 from JosJuice/dol-elf-banners
...
DolphinWX: Support banners in Homebrew Channel format
2015-09-05 23:08:07 +02:00
Lioncash
8fdb013d54
General: Toss out PRI macro usage
...
Now that VS supports more printf specifiers, these aren't necessary
2015-09-05 16:02:35 -04:00
Tillmann Karras
8f777cd839
Jit64: fix errors in FPRF calculation
2015-09-05 20:17:53 +02:00
booto
d4344abd89
Revert "Merge pull request #2943 from booto/vi-enb"
...
This reverts commit 8dd80b8e97
, reversing
changes made to c5979b47be
.
2015-09-06 01:21:23 +08:00
Markus Wick
60e0339ae5
Merge pull request #2963 from Sonicadvance1/AArch64_improved_vertexloader
...
[AArch64] Minor improves to the vertex loader JIT
2015-09-05 15:44:52 +02:00
Ryan Houdek
de80b9e988
Merge pull request #2971 from degasus/arm
...
JitArm64: fix smaller issues
2015-09-05 08:43:44 -05:00
degasus
9187200de3
Android: Abort the screenshot after 2 seconds
...
If the emulation is crashed, this blocks forever. So there is no way to exit the emulation within a finite time.
2015-09-05 15:29:22 +02:00
degasus
24fec3ebca
JitArm64: Fix float load & store
2015-09-05 13:48:29 +02:00
degasus
36902c58eb
JitArm64: Fix lwbrx and lhbrx
2015-09-05 13:48:29 +02:00
degasus
696f95d5f9
JitArm64: Fix subfic
2015-09-05 13:48:29 +02:00
degasus
baa28e13f4
JitArm64: Remove FLUSH_INTERPRETER
...
It seems to be broken for some instructions, and there is no need for it any more.
2015-09-05 13:48:29 +02:00
Scott Mansell
52948bb3ef
Cleanup and unify handling of efb copy stride.
2015-09-05 23:37:24 +12:00
Tillmann Karras
a8c8f52f20
OGL: remove unused variable
2015-09-05 12:40:14 +02:00
Tillmann Karras
405554e327
Jit64: remove unnecessary indirection
2015-09-05 12:40:14 +02:00
Tillmann Karras
72eed1aa82
JitCache: drop unused method
2015-09-05 12:40:14 +02:00
Ryan Houdek
7650117c26
Properly support MSAA and SSAA as separate features(+GLES)
...
SSAA relies on MSAA being active to work. We only supports 4x SSAA while in fact you can enable SSAA at any MSAA level.
I even managed to run 64xMSAA + SSAA on my Quadro which made some pretty sleek looking games. They were very cinematic though.
With this, it properly fixes up SSAA and MSAA support in GLES as well. Before they were broken when stereo rendering was enabled.
Now in GLES they can properly support MSAA and also stereo rendering with MSAA enabled(with proper extensions).
2015-09-05 05:23:29 -05:00
Ryan Houdek
9618738278
Remove all of our workarounds for Qualcomm devices we don't support anymore.
2015-09-04 23:45:35 -05:00
Markus Wick
e7660325b4
Merge pull request #2967 from Sonicadvance1/GLES_blend_func_extended
...
Support EXT_blend_func_extended in GLES.
2015-09-05 03:43:28 +02:00
Ryan Houdek
5fa4c8d930
Support EXT_blend_func_extended in GLES.
...
This lets us get dual source blending on GLES targets.
2015-09-04 20:25:59 -05:00
Ryan Houdek
9bb63bf2eb
[Android] Fix multi-gamecube controller input, config changes
2015-09-04 20:06:01 -05:00
Ryan Houdek
6cf7048423
Implement ClearCurrent on the EGL GLInterface
...
This fixes an error on GLInterface shutdown when using EGL.
2015-09-04 19:58:58 -05:00
Ryan Houdek
c458c9d049
[AArch64] Minor improves to the vertex loader JIT
...
Just some minor improvements noticed by dumping the vertex loader blocks.
2015-09-04 19:57:08 -05:00
Ryan Houdek
de051dac71
[AArch64] Implement integer gatherpipe writes.
2015-09-04 19:52:25 -05:00
Ryan Houdek
791c7d5a84
[AArch64] Clean up bogus vector FCVT{N,L} instruction usage.
...
Replace the instruction with the scalar variant FCVT instruction.
FCVT{N,L} 8 cycles latency on the Cortex A57
FCVT has five cycle latency and slightly higher throughput
On the A72 all three of these instructions will have three cycle latency,
While FCVT{N,L} will have half the throughput.
2015-09-04 19:41:54 -05:00
Ryan Houdek
2c68f6bfc5
[AArch64] Implement Fiora's preemptive paired loadstore optimization.
...
This provides a decent speed up in pretty much everything that touches pair loadstores because in most cases they are just regular non-quantizing
float loadstores that happen.
2015-09-04 19:20:33 -05:00
Lioncash
e01428935f
Merge pull request #2954 from lioncash/snprintf
...
CommonFuncs: Remove define for snprintf
2015-09-04 19:11:38 -04:00
Lioncash
e90eb17aeb
Merge pull request #2956 from JosJuice/extra-space
...
Remove extra space from 5a32c3f
2015-09-04 14:22:59 -04:00
JosJuice
41315b19f1
DolphinWX: Support banners in Homebrew Channel format
...
HBC uses files named icon.png for icons. This change makes Dolphin
support that file name, and also [executable file name].png
in case someone wants to have multiple files in one folder.
The HBC banner support is mainly intended for DOL and ELF files,
but it can also be used to override banners of disc images,
something that wasn't possible in the past.
There are currently issues with banner scaling not preserving
the aspect ratio and looking bad in general.
2015-09-04 19:08:30 +02:00
Rohit Nirmal
8aed7589ae
Fix building with PCH disabled.
2015-09-04 10:34:45 -05:00
JosJuice
0af2bbcea3
Remove extra space from 5a32c3f
2015-09-04 15:32:30 +02:00
Markus Wick
7ada372ed9
Merge pull request #2944 from degasus/arm
...
JitArm64: Cleanup floating point regcache
2015-09-04 13:14:29 +02:00
booto
97f55c0cc9
VI: Less log spam in Release build
2015-09-04 17:08:19 +08:00
Lioncash
0d0dd075ef
CommonFuncs: Remove define for snprintf
...
VS 2015 implements snprintf
2015-09-04 03:13:02 -04:00
Lioncash
a11ae2cf30
CommonFuncs: Remove SLEEP macro
...
There's already a function in Thread for this.
2015-09-04 02:43:38 -04:00
shuffle2
4218fb4eea
Merge pull request #2916 from lioncash/wx
...
DolphinWX: Minor changes to Main
2015-09-03 22:59:29 -07:00
shuffle2
9a92ff5238
Merge pull request #2926 from lioncash/wx-mc
...
MemcardManager: Remove explicit delete and new
2015-09-03 22:58:06 -07:00
shuffle2
272302be82
Merge pull request #2950 from lioncash/bf
...
BitField: Enable ifdef'd out code for Windows
2015-09-03 22:56:55 -07:00
shuffle2
a09b9bef8d
Merge pull request #2952 from lioncash/constexpr
...
CommonFuncs: Replace ArraySize define with constexpr equivalent
2015-09-03 22:56:25 -07:00
Lioncash
3f1b488a12
CommonFuncs: Replace ArraySize define with constexpr equivalent
2015-09-03 23:47:14 -04:00
Lioncash
102a2a975d
BitField: Enable ifdef'd out code for Windows
2015-09-03 22:06:15 -04:00
Pierre Bourdon
8dd80b8e97
Merge pull request #2943 from booto/vi-enb
...
VI: Respect DisplayControlRegister ENB bit
2015-09-04 03:50:39 +02:00
Lioncash
4fd060ba11
Core: Use constexpr for default pad and attachment radius
2015-09-03 19:44:42 -04:00
Rukario
e939fba3e7
Updated terms in Netplay window.
2015-09-03 07:36:52 -07:00
Shawn Hoffman
399083ac8a
Drop the old msvcrt files.
2015-09-03 06:10:01 -07:00
Shawn Hoffman
66a3951c3b
[windows] Add workaround(HACK) for vs2015 implementating a conformant std::is_trivially_copyable...
...
see https://github.com/dolphin-emu/dolphin/pull/2218
2015-09-03 04:39:06 -07:00
Shawn Hoffman
bea18eedc4
[windows] remove various workarounds which were required for vs2013
2015-09-03 04:39:05 -07:00
Shawn Hoffman
30702c17b6
[windows] When making scmrev.h, also look for msysgit explicitly. VS2015 packages it.
2015-09-03 04:39:04 -07:00
Shawn Hoffman
9b56efe57c
Revert "Base.props: Remove DXSDK_DIR from the include path."
...
This reverts commit bea3054c9c
.
2015-09-03 04:23:02 -07:00
Shawn Hoffman
aa7208e270
[windows] Update projects to vs2015.
2015-09-03 04:23:01 -07:00
Markus Wick
ad978122d9
Merge pull request #2942 from booto/xfb_lines
...
VideoCommon: xfb height calculation adjusted
2015-09-03 09:40:24 +02:00
Scott Mansell
a1538a30ef
Merge pull request #2941 from lioncash/gp
...
GPFifo: Remove pointer casts
2015-09-03 13:47:26 +12:00
Lioncash
2d224bd3b1
ActionReplay: Remove an alloca call
2015-09-02 17:41:19 -04:00
degasus
5797111ef0
JitArm64: Optimize fpr.R()
2015-09-02 22:46:14 +02:00
degasus
dfd44730c8
JitArm64: simplify fpr call
2015-09-02 22:46:14 +02:00
booto
28d788ba2c
VI: Respect DisplayControlRegister ENB bit
...
When ENB is set to 0 (default), VI should not
generate clocks, and so shouldn't generate
output.
2015-09-03 04:13:32 +08:00
booto
5a32c3fba4
VideoCommon: xfb height calculation adjusted
...
Baten Kaitos allocates its XFBs from a tagged heap
structure. With the old calculation, too many lines
were being written so the tag of the allocation
after the XFB was being corrupted. Fixes crash
mentioned in this comment:
https://code.google.com/p/dolphin-emu/issues/detail?id=7734#c6
2015-09-03 03:57:03 +08:00
Lioncash
f32b79e612
GPFifo: Get rid of pointer casts
2015-09-02 15:24:33 -04:00
Lioncash
db98efdc98
GPFifo: Adjust parameter names
2015-09-02 15:20:02 -04:00
Ryan Houdek
3b65c4070c
Merge pull request #2935 from Sonicadvance1/GLES_palette_conversion
...
[GLES] Support texture_buffer for palette texture conversion.
2015-09-02 10:11:41 -05:00
Scott Mansell
ecbb83fa0f
Merge pull request #2686 from booto/field-timing
...
VI: derive field timing from VI registers
2015-09-03 01:09:43 +12:00
Markus Wick
66e9395d5d
Merge pull request #2937 from lioncash/enums
...
VideoCommon: Convert some defines into enums
2015-09-02 13:27:09 +02:00
Lioncash
401f765462
FramebufferManagerBase: Compress a loop into a find_if
2015-09-01 16:54:44 -04:00
Rohit Nirmal
9c26bb0e17
Fix building with PCH disabled.
2015-09-01 13:45:23 -05:00
flacs
3b134497dd
Merge pull request #2774 from AdmiralCurtiss/wiimote-extension-reconnect-on-button-press
...
Wiimote: Extend emulated Wiimote reconnect-on-button-press to attachments.
2015-09-01 18:31:39 +02:00
Lioncash
71ef0a0245
PixelShaderGen: Use spaces instead of tabs for vertical alignment
2015-09-01 12:20:50 -04:00
Lioncash
91eff28699
PixelShaderGen: Move defines into the implementation file
...
These aren't used outside of it. This also reduces the amount of things in
the global namespace.
2015-09-01 12:18:18 -04:00
Lioncash
c760ffbd28
BPMemory/XFMemory: Convert defines to enums
...
These actually convey a concrete type, as well as also providing a
symbolic constant during debugging.
2015-09-01 12:07:10 -04:00
booto
f6e4a8e680
FifoPlayer: Use VI derived timing, not hardcoded 60Hz
2015-09-01 20:24:42 +08:00
booto
8d6c39a89d
VI: Adjust forced-progressive hack per magumagu's suggestion
2015-09-01 20:24:41 +08:00
booto
acc9a74174
VI: Restore forced-progressive hack with option
...
Bugfix: TargetRefreshRate uses rounded result
NTSC's 59.94 was becoming 59 with integer division.
2015-09-01 20:24:40 +08:00
booto
480dbb22f2
VI: derive field timing from VI registers
2015-09-01 20:24:40 +08:00
Ryan Houdek
7a35f9285b
[GLES] Support texture_buffer for palette texture conversion.
...
OpenGL ES 3.2 adds this feature to core
It was available to GLES 3.1 as GL_{EXT, OES}_texture_buffer as well.
For the non-Nvidia vendors that implemented this is:
- Qualcomm's Adreno 4xx
- IMGTec's PowerVR Rogue
2015-09-01 05:41:03 -05:00
Lioncash
222b33f0a3
VolumeCreator: Fix a typo in VolumeKeyForPartition's name
2015-08-31 20:01:51 -04:00
Lioncash
1db1a8aacf
VolumeCreator: Use a unique_ptr in CreateVolumeFromFilename
2015-08-31 20:01:44 -04:00
flacs
b9ea9c05ad
Merge pull request #2931 from lioncash/mem
...
VertexLoader_Color: Remove some pointer casts
2015-09-01 00:32:43 +02:00
Lioncash
f7e22c8126
VertexLoader_Color: Mark translation-unit-local functions static
2015-08-31 17:31:23 -04:00
Lioncash
ec42be79f3
VertexLoader_Color: Get rid of some pointer casts
2015-08-31 17:31:11 -04:00
Ryan Houdek
ae0a06a018
[AArch64] Implement dcbz instruction
2015-08-31 15:39:47 -05:00
Ryan Houdek
d495ad5104
[AArch64] Make TST reg, reg emitter alias
2015-08-31 14:03:32 -05:00
Ryan Houdek
0f54aa48b4
Merge pull request #2928 from Sonicadvance1/aarch64_improved_singles
...
[AArch64] Improve floating point single instructions.
2015-08-31 12:00:08 -05:00
Ryan Houdek
bcde1aa8ff
[AArch64] Improve floating point single instructions.
...
Instead of having an "INS" instruction after every single instruction to duplicate the bottom 64bits in to the top 64bits of the register,
create a new FPR register cache type to track when a register's lower 64bits is supposed to be duplicated in to the high 64bits.
Not necessarily actually having the lower bits duplicated in the host side register. This removes inefficient INS instructions from sequential single
float instructions.
In particular a very heavy single heavy block in Animal Crossing went from 712 instructions down to 520 instructions(~37% less instructions!)
2015-08-31 11:09:17 -05:00
Ryan Houdek
d003934b8a
Merge pull request #2929 from Sonicadvance1/aarch64_optimize_gpr_flush
...
Aarch64 optimize gpr flush
2015-08-31 10:55:45 -05:00
Ryan Houdek
8bf332cf08
[AArch64] Optimize GPR cache flushing.
...
If we are flushing multiple sequential guest GPRs then we can store two in a single STP instruction.
Ikaruga does this quite a bit in their blocks where they do an lmw at the very end and then we have to flush them all.
Typically cuts 16 STR instructions down to 8 STP instructions there.
2015-08-30 23:07:12 -05:00
Ryan Houdek
f2c17436ab
[AArch64] Fix issue in emitter.
...
Loadstore pairs support only signed offsets, not unsigned.
2015-08-30 23:05:59 -05:00
Scott Mansell
368867dba0
Merge pull request #2922 from aserna3/SDBlock
...
Implemented ability to block writes to the SD card
2015-08-31 04:51:50 +12:00
Ryan Houdek
b907576510
[AArch64] Support profiling by cycle counters if they are available to EL0
2015-08-30 10:25:16 -05:00
Ryan Houdek
5110574c1f
Merge pull request #2921 from Sonicadvance1/aarch64_optimize_lmw
...
[AArch64] Optimize lmw.
2015-08-30 10:23:57 -05:00
Anthony Serna
0390bd61df
Fixed introduced compiler warning in Linux
2015-08-29 20:41:59 -07:00
Lioncash
e0aabc5f6c
MemcardManager: Remove trivial explicit delete and new
...
Also gets rid of pointer casting.
2015-08-29 22:46:18 -04:00
Lioncash
d58550e874
MemcardManager: Minor cleanup of header code
2015-08-29 05:19:51 -04:00
Lioncash
0f3e4c50e1
MemcardManager: Correct class indentation
2015-08-29 05:13:20 -04:00
Lioncash
072150589e
Merge pull request #2924 from lioncash/scope
...
Hash: Narrow define scope
2015-08-29 03:12:18 -04:00
Lioncash
e7c7dcaa1f
Merge pull request #2923 from lioncash/override
...
Jit_Util: Add missing override specifiers
2015-08-29 03:12:11 -04:00
Lioncash
310bb46967
Hash: Narrow define scope
2015-08-29 02:57:35 -04:00
Markus Wick
a16669231a
Merge pull request #2917 from Sonicadvance1/android_fix_sgs6
...
[Android] Workaround Mali driver issue on the Samsung Galaxy S6.
2015-08-29 08:56:32 +02:00
Lioncash
df19f11cb9
Jit_Util: Add missing override specifiers
2015-08-29 00:30:18 -04:00
Anthony Serna
db7fe9507e
Implemented ability to block writes to the SD card
...
Renamed variable to be more accurate
2015-08-28 17:32:29 -07:00
Markus Wick
6004ecc521
Merge pull request #2920 from rohit-n/build-pch
...
Fix building with PCH disabled.
2015-08-28 23:08:24 +02:00
Ryan Houdek
8d61706440
[AArch64] Optimize lmw.
...
This instruction is fairly heavily used by Ikaruga to load a bunch of registers from the stack.
In particular at the start of the second stage is a block that takes up ~20% CPU time that includes a usage of lmw to load half of the guest
registers.
Basic thing optimized here is changing from a single 32bit LDR to potentially a single 128bit LDR.
a single 32bit LDR is fairly slow, so we can optimize a few ways.
If we have four or more registers to load, do a 64bit LDP in to two host registers, byteswap, and then move the high 32bits of the host registers in
to the correct mapped guest register locations.
If we have two registers to load then do a 32bit LDP which will load two guest registers in a single instruction.
and then if we have only one register left to load, load it as before.
This saves quite a bit of cycles since the Cortex-A57 and A72's LDR instruction takes a few cycles.
Each 32bit LDR takes 4 cycles latency, plus 1 cycle for post-index(which typically happens in parallel.
Both the 32bit and 64bit LDP take the same amount of latency.
So we are improving latencies and reducing code bloat here.
2015-08-28 14:40:30 -05:00
Ryan Houdek
2c3fa8da28
[AArch64] Fix a bug in the register caches.
...
This is a bug that crops if BindToRegister() is called multiple times in a row without a R() function call between them.
How to reproduce the bug:
1) Have a completely filled cache with no host register remaining
2) Call BindToRegister() with different guest registers
3) Don't call R() between the BindToRegister() calls.
This issue typically wouldn't be seen for a couple of reasons. Typically we have /plenty/ of registers in the cache, and in most cases we only call
BindToRegister() once per instruction. In the off chance that it is called multiple times, it wouldn't update the last used counts and would flush the
same register as the previous call to it.
2015-08-28 14:36:14 -05:00
Rohit Nirmal
6252d2d71a
Fix building with PCH disabled.
2015-08-28 14:13:28 -05:00
Lioncash
a6bd2fea28
Merge pull request #2919 from lioncash/vec
...
Vec3: Remove a memset call on the this pointer.
2015-08-28 15:05:02 -04:00
Lioncash
e787501528
Vec3: Simplify operator== code
2015-08-28 14:46:40 -04:00
Markus Wick
b11de5bddb
Merge pull request #2918 from lioncash/memcpy
...
DataReader: Get rid of pointer casts
2015-08-28 20:45:15 +02:00
Lioncash
d86d5fae9f
Merge pull request #2909 from aserna3/DollsAndElves
...
Implemented .elf and .dol support in gamelist
2015-08-28 14:28:09 -04:00
Lioncash
bb27f80a65
Vec3: Remove a memset call on the this pointer
2015-08-28 14:10:07 -04:00
Anthony Serna
faedf1bc5c
Implemented .elf and .dol support in gamelist
...
Fixed a TON of structuring, formatting.
removed README.txt files from themes at MaJoR's request
Added platform icon for ELFs/DOLs
2015-08-28 11:10:03 -07:00
Ryan Houdek
01db003779
[Android] Workaround Mali driver issue on the Samsung Galaxy S6.
...
Samsung updated the video drivers on the SGS6 which introduced a bug when disabling vsync.
Both the driver versions are r5p0, but the md5sums of the blob differ.
To work around the issue, make sure to never disable vsync by calling eglSwapInterval.
We can't actually determine the driver version on Android yet.
So until the driver version lands that displays the driver version string in the GL_VERSION string
we will need to keep this workaround enabled at all times, which is a bit annoying.
Current mali drivers return the video driver version in one of the EGL strings you can query.
The issue with that is that Android eats all of those strings, so we can't query it.
2015-08-28 09:02:46 -05:00
flacs
d373dd372d
Merge pull request #2913 from Tilka/fix_warning_fix
...
AVIDump: fix -Wsign-compare warning
2015-08-27 23:50:34 +02:00
Lioncash
4fb3a8b78d
DataReader: Get rid of pointer casts
2015-08-27 13:43:04 -04:00
Lioncash
7fa0ecd046
Main: Make the wxLocale class member a unique_ptr
2015-08-27 08:36:01 -04:00
Lioncash
14ae1d23cf
Main: Move unofficial build check to its own function
...
Removes the need to explicitly call exit.
2015-08-27 08:35:51 -04:00
Lioncash
aafae49d24
Main: Move commandline parsing handling to appropriate override functions
2015-08-27 08:29:53 -04:00
Ryan Houdek
d9b18862f3
Merge pull request #2908 from Sonicadvance1/gles_3_2
...
Support OpenGL ES 3.2.
2015-08-26 18:19:17 -05:00
Ryan Houdek
447b1b09e3
Support OpenGL ES 3.2.
...
OpenGL ES 3.2 adds a few things we care about supporting in core. In particular:
- GL_{ARB,EXT,OES}_draw_elements_base_vertex
- KHR_Debug
- Sample Shading
- GL_{ARB,EXT,OES,NV}_copy_image
- Geometry shaders
- Geometry shader instancing (If they support GL_{EXT,OES}_geometry_point_size)
Nvidia was the first to release an OpenGL ES 3.2 driver which I uesd to test this on.
This also enables GS Instancing on GLES 3.1 hardware if it supports all of the required extensions.
2015-08-26 17:57:51 -05:00
Ryan Houdek
6d25c469cf
Merge pull request #2915 from degasus/arm
...
JitArm64: Implement rlwnmx
2015-08-26 15:52:37 -05:00
Markus Wick
54f882704a
Merge pull request #2914 from JosJuice/fix-volumedirectory
...
Fix VolumeDirectory
2015-08-26 22:12:23 +02:00
degasus
e516d4ef59
JitArm64: Implement rlwnmx
2015-08-26 21:59:10 +02:00
JosJuice
d276d1abbb
Fix VolumeDirectory
...
Fixes the regression from a225426
and clarifies a related comment.
2015-08-26 19:21:09 +02:00
Markus Wick
3e9dac3910
Merge pull request #2810 from Sonicadvance1/disassembler_improv
...
Have the disassembler show the PC next to host instructions.
2015-08-26 17:01:39 +02:00
flacs
99e88a7af7
Merge pull request #2887 from Tilka/swap
...
Jit64: some byte-swapping changes
2015-08-26 16:43:45 +02:00
flacs
eb6ac641be
Merge pull request #2906 from Tilka/fpscr
...
Jit64: fix bugs in the FPSCR instructions
2015-08-26 16:43:28 +02:00
Tillmann Karras
6ec4bdf862
CoreTiming: remove unused functions
2015-08-26 15:40:15 +02:00
Tillmann Karras
0f4861cac2
CoreTiming: make loops easier to read
2015-08-26 14:53:58 +02:00
Ryan Houdek
ca51f1a4f6
[AArch64] Optimize paired registers being used in double operations.
...
In particular this optimizes the case where a 32bit float is loaded via lfs, and then used in double operations.
This happens very often in Gekko based code because the best way to load a 32bit value as a double is lfs since it automatically turns in to a double value.
There are a few other implications of this in practice as well. Like if both of the paired registers are loaded via psq_l and then used in double
operations it would be improved.
Also if we implement a double register we've got to be careful to make sure we understand if it is in "lower" register or the full 128bit register.
2015-08-26 05:50:04 -05:00
Markus Wick
5716d18d10
Merge pull request #2910 from Sonicadvance1/aarch64_regcache_fix
...
[AArch64] Fix a bug in the register cache.
2015-08-26 08:31:24 +02:00
Ryan Houdek
4f5f29a0fb
[AArch64] Fix a bug in the register cache.
...
If the register was only a lower pair and it needed the full register, then we need to load the high 64bits.
Which we weren't doing before.
2015-08-26 01:21:43 -05:00
Markus Wick
43d17cb360
Merge pull request #2904 from Sonicadvance1/aarch64_more_inst
...
[AArch64] Implement fdivx/fdivsx/mfcr/mtcrf.
2015-08-26 07:48:24 +02:00
Tillmann Karras
ee4a12ffe2
Jit64: some byte-swapping changes
2015-08-26 05:41:18 +02:00
flacs
6015e2d812
Merge pull request #2900 from aroulin/x64emitter-rcp
...
x64Emitter: add RCPPS and RCPSS SSE instructions
2015-08-26 05:05:53 +02:00
Ryan Houdek
6729a36d8d
[AArch64] Set BindToRegister's to_load correctly for double FP ops.
2015-08-25 21:29:27 -05:00
Lioncash
db4f692482
GCMemcard: Clean up memcard logging messages.
2015-08-25 21:55:52 -04:00
Tillmann Karras
ee50a2ef28
Jit64: fix bugs in the FPSCR instructions
2015-08-25 23:48:14 +02:00
Markus Wick
bd08c1b01a
Merge pull request #2901 from Sonicadvance1/aarch64_stfiwx
...
[AArch64] Implement stfiwx
2015-08-25 22:47:39 +02:00
Markus Wick
24cb650078
Merge pull request #2663 from degasus/dcbx
...
Jit64: dcbf + dcbi
2015-08-25 12:16:56 +02:00
Ryan Houdek
0666c0750b
[AArch64] Implement fdivx/fdivsx/mfcr/mtcrf.
...
Gets the povray bench to better times than the Wii.
2015-08-24 15:32:19 -05:00
Ryan Houdek
d96be9250c
Merge pull request #2899 from Sonicadvance1/aarch64_fctiwzx
...
[AArch64] Implement fctiwzx
2015-08-24 13:22:27 -05:00
Ryan Houdek
cd03b8baf6
Merge pull request #2895 from Sonicadvance1/qualcomm_workaround_gles31
...
Disable OpenGL ES 3.1 on all Qualcomm Adreno devices.
2015-08-24 13:22:12 -05:00
degasus
0d92c8fb89
Jit64: Optimize dcbx
2015-08-24 18:33:23 +02:00
Tillmann Karras
ac84d6d0fa
Jit64: some cache flush changes
...
- dynamically allocate third scratch register instead of forcing ECX
- use LEA as 3 operand add if possible
- use BT,JC instead of SHR,TEST,JNZ
- merge MOV,TEST
- use appropriate ABI function (no asm change)
2015-08-24 18:33:23 +02:00
degasus
6f34b27323
Jit64: implement dcbf + dcbi
2015-08-24 18:33:19 +02:00
Markus Wick
0ad6fa8f62
Merge pull request #2903 from lioncash/cast
...
Memmap: Remove pointer casts
2015-08-24 15:42:56 +02:00
Lioncash
abd3b124be
Memmap: Remove pointer casts
2015-08-24 09:07:09 -04:00
Tillmann Karras
33eefc2d86
Jit64: quickfix for mtfsfx
2015-08-24 12:12:31 +02:00
Ryan Houdek
d3176fe22a
[AArch64] Implement stfiwx
...
Improves povray performance by ~4%
2015-08-24 01:10:55 -05:00
Ryan Houdek
80fa9af9b1
Merge pull request #2898 from degasus/linking
...
JitArm64: Faster linking of continuous blocks
2015-08-23 18:09:02 -05:00
degasus
7320d519b4
JitArm64: Implement srwx
2015-08-23 23:29:48 +02:00
degasus
4722a69fd0
JitArm64: Implement divwux
2015-08-23 23:29:18 +02:00
degasus
9e4366963c
JitArm64: Implement subfic
2015-08-23 23:29:07 +02:00
degasus
95be17772f
JitArm64: Implement addex
2015-08-23 23:29:02 +02:00
degasus
025e7c835a
JitArm64: Implement subfcx
2015-08-23 23:28:28 +02:00
degasus
550a90e691
JitArm64: Implement subfex
2015-08-23 23:28:24 +02:00
Ryan Houdek
561744819e
[AArch64] Implement fctiwzx
...
Improves the povray benchmark time by 5.6%
2015-08-23 15:35:18 -05:00
Ryan Houdek
4fa23abbe1
[AArch64] Implement MOVI and ORR(imm) in the NEON emitter.
2015-08-23 15:34:53 -05:00
aroulin
0a0e012fab
x64Emitter: add RCPPS and RCPSS SSE instructions
2015-08-23 16:59:27 +02:00
degasus
77a6798094
JitArm64: Faster linking of continuous blocks
2015-08-23 14:44:23 +02:00
Markus Wick
73067b1ef1
Merge pull request #2888 from degasus/jit64
...
Jit64: Faster linking of continuous blocks
2015-08-23 13:24:15 +02:00
Lioncash
2a1abf8dd6
Merge pull request #2896 from lioncash/using
...
Core: Minor CPU core typedef cleanup
2015-08-22 19:00:23 -04:00
Ryan Houdek
cc3fb7e7b4
Merge pull request #2883 from degasus/master
...
Profiler: Sort output by total time
2015-08-22 17:52:54 -05:00
Markus Wick
8b881a6c34
Merge pull request #2891 from Sonicadvance1/aarch64_implement_crxxx
...
[AArch64] Implement the cr instructions
2015-08-23 00:44:47 +02:00
Lioncash
fdafa5d063
Core: Move includes out of instruction table headers
...
These aren't necessary (and cause unnecessary indirect inclusions).
2015-08-22 14:15:02 -04:00
Lioncash
a248a4d2ce
Jit64/JitIL: Relocate instruction typedefs
2015-08-22 14:15:00 -04:00
Lioncash
c56717e058
Core: Shorten the _interpreterInstruction typedef
...
The class itself already acts as a namespace trailer, so '_interpreter'
isn't necessary. This also gets rid of a duplicate typedef in the
Interpreter_Tables.
2015-08-22 14:14:49 -04:00
Ryan Houdek
b4e4a4cef4
Disable OpenGL ES 3.1 on all Qualcomm Adreno devices.
...
Their new driver that supports GLES3.1 + AEP has issues with it.
At the very least they don't implement all of the geometry shader features fully which causes shader linker issues when we attempt to use them.
I don't have a device so I can't fully test, so until I do I'm going to blanket disable the whole thing.
2015-08-22 09:12:19 -05:00
Markus Wick
a39c0910c4
Merge pull request #2893 from Sonicadvance1/aarch64_memory_base_register
...
[AArch64] Use a register as a constant for the memory base.
2015-08-22 15:41:57 +02:00
Ryan Houdek
dba579c52f
[AArch64] Use a register as a constant for the memory base.
...
Removes a /lot/ of redundant movk operations in fastmem loadstores.
Improves performance of the povray bench by ~5%
2015-08-22 08:36:34 -05:00
Markus Wick
3f5ff98c1b
Merge pull request #2890 from lioncash/ptr
...
x64Emitter: Remove pointer casts from Write{8,16,32,64} functions
2015-08-22 10:09:28 +02:00
Markus Wick
2d505bc2a6
Merge pull request #2894 from Sonicadvance1/no_more_eaten_canary
...
Fix the shader overrunning our max shader size.
2015-08-22 10:08:14 +02:00
Markus Wick
c2f38f1d16
Merge pull request #2892 from Sonicadvance1/aarch64_frsp
...
[AArch64] Implement frspx
2015-08-22 09:44:14 +02:00
Ryan Houdek
3242e1a617
Fix the shader overrunning our max shader size.
...
The Star Wars games really push the hardware to its limits, which can cause the shaders that are produced to be 18kb or more.
Double our maximum shader size to compensate.
Fixes issue #8860
2015-08-22 01:01:03 -05:00
Ryan Houdek
ce32b76be3
[AArch64] Implement frspx
...
Improves performance in povray bench by 2%
2015-08-22 00:35:30 -05:00
Ryan Houdek
d74eb0ea58
[AArch64] Fix the bugs in the cr instructions
...
Makes it a bit more efficient in the process.
2015-08-21 23:24:29 -05:00
degasus
e9ade0abe1
JitArm64: implement crXXX
2015-08-21 20:49:08 -05:00
Lioncash
a69755d9ee
x64Emitter: Remove pointer casts from Write{8,16,32,64} functions
...
This also silences quite a few ubsan asserts from firing when the emitter is being used.
2015-08-21 18:09:48 -04:00
flacs
95d958c03d
Merge pull request #2889 from lioncash/interp
...
Interpreter: Use std::isnan instead of IsNAN
2015-08-21 21:43:08 +02:00
Lioncash
caec42135d
MathUtil: Remove IsNAN and IsINF
...
These aren't necessary, since the stdlib provides equivalents.
2015-08-21 15:05:43 -04:00
flacs
bb7f3d1822
Merge pull request #2867 from Tilka/mtspr_hid0
...
Jit64: implement HID0 case of mtspr
2015-08-21 21:04:35 +02:00
flacs
01aea965ba
Merge pull request #2864 from Tilka/fpscr
...
Jit64: implement FPSCR related instructions
2015-08-21 21:04:20 +02:00
Lioncash
18d658df1f
Interpreter_FloatingPoint: Use std::isnan instead of IsNAN
...
Same thing, except one is part of the stdlib.
2015-08-21 15:04:03 -04:00
degasus
78aa01e06e
Jit64: Faster linking of continuous blocks
...
We compile the blocks as they are executed, so it's common
to link them continuously. We end with calling JMP after every
block, but often just with a distance of 0.
So just emitting NOPs instead also "calls" the next block, but
easier for the CPU.
2015-08-21 17:41:53 +02:00