Tillmann Karras
eb057d49a0
x64Emitter: drop duplicate enum & unused wrappers
...
Keep the more explicit version of the two SSECompare enums.
And the unused CMP* wrappers wouldn't exactly make the code more
readable anyway.
2015-05-31 08:32:31 +02:00
flacs
43ed19a663
Merge pull request #2481 from lioncash/reference
...
x64Emitter: Pass some OpArg parameters by const reference.
2015-05-31 08:22:55 +02:00
flacs
a806feb10e
Merge pull request #2474 from Tilka/zfreeze
...
zfreeze: fix 2-component positions
2015-05-31 06:35:21 +02:00
Tillmann Karras
a6004f8274
Jit64: drop more x86_32 left-overs
2015-05-31 05:28:40 +02:00
Markus Wick
c12f04eefa
Merge pull request #2472 from degasus/master
...
AudioCommon: Remove lock on Pause state
2015-05-30 23:40:46 +02:00
degasus
9c730b0a1f
Unittests: Add BlockingLoopTest
2015-05-30 13:40:36 +02:00
degasus
bfa61105d5
Common: Update BlockingLoop to only use one atomic.
...
This merges two atomic<bool> into one atomic<int>.
We did move the bit from one bool to another, now we can use operator--.
2015-05-30 12:58:09 +02:00
degasus
02a3a063c3
Fifo: Extract syncing loop
...
It's now a new helper function within common.
2015-05-30 12:58:09 +02:00
JosJuice
301218a103
Volume: Use more appropriate types for some returned values
...
Disc number is changed from bool to u8, and revision is changed from
int to u16 (WADs can use all 16 bits, but discs can only use 8 bits).
2015-05-29 21:14:02 +02:00
JosJuice
9a000f4085
Volume: Mark ReadWiiNames parameter as const
...
I forgot it when I added the method.
2015-05-29 20:19:11 +02:00
Scott Mansell
7df6982973
Add a dirty flag for arraybases.
...
Only loop through and call getPointers when something has actually
changed.
Worth about 2-4% speedup un SMG over the previous commit.
2015-05-30 04:39:48 +12:00
Scott Mansell
f57517f1a0
Clean up cached_arraybases. Update VideoSW to new scheme.
...
Move ownership of cached_arraybases from CPMemory to VertexLoaderManager
to better match it usage.
2015-05-30 04:09:27 +12:00
degasus
c4fc141ced
OGL: Always use sampler objects.
...
We are used to use the texture parameter for all util draw calls,
but AMD seems to have a bug where they use the sampler parameter
of stage 0 if no sampler is bound to the used stage.
So as workaround (and a bit as nicer code), we now use sampler
objects everywhere.
2015-05-29 14:03:03 +02:00
Tillmann Karras
4943b36259
zfreeze: fix 2-component positions
2015-05-29 13:43:12 +02:00
Scott Mansell
6d916762fb
Fix invalid pointer errors in Burnout 2.
...
Yet another story of games loading weird shit into registers.
For some reason, Burnout 2 would (in rare situations) load invalid
addresses into cp_state.array_bases. What would the real hardware
do in this situation? Who knows, Burnout 2 doesn't actually enable
the vertex array with the invalid address so nothing kinky happens.
But dolphin tries to optimise things and starts using the address
as soon as it is loaded into memory. This causes GetPointer (which is
now much more vocal) to throw an error.
The Fix: We don't call GetPointer until we are sure the vertex array
has been enabled.
2015-05-29 18:51:17 +12:00
Markus Wick
61c53babf4
Merge pull request #2467 from RisingFog/disc2fix
...
Fix adding additional Disc 2 to certain multi-disc games
2015-05-29 07:47:56 +02:00
Ryan Houdek
cdbdff436b
Merge pull request #2478 from degasus/fix_prefetching
...
HiresTexture: Fix prefetching with broken textures
2015-05-29 01:42:48 -04:00
degasus
c69cc91f00
HiresTexture: Fix prefetching with broken textures
2015-05-29 07:31:11 +02:00
Lioncash
0b8372e566
Jit_Util: Make some OpArg parameters const references
2015-05-29 01:13:45 -04:00
Lioncash
e3a6191f02
x64Emitter: Pass some OpArg parameters by const reference
...
Considering OpArg is a struct, passing by value creates unnecessary copies.
2015-05-29 01:13:29 -04:00
Lioncash
810a04db58
x64Emitter: Remove 'Gen::' namespace prefix from some parameters
...
The emitter is already within the Gen namespace, so this isn't necessary.
2015-05-29 01:05:09 -04:00
Lioncash
84ed196c14
x64Emitter: Adjust position of reference and pointer indicators
...
Matches the coding style.
2015-05-29 01:04:45 -04:00
Lioncash
ac26f8e79f
Pass strings by const reference where possible
2015-05-28 20:54:55 -04:00
comex
45b07cbdcd
Fix determinism issues with Wiimote netplay.
...
- Change the Wiimote emulation SYSCONF R/W to use the temporary NAND if in use.
- Fix up SysConf API so this actually works.
Kind of a hack. Like I said, this can be cleaned up when configuration
is synced...
2015-05-28 19:19:00 -04:00
comex
0d257b9e88
Don't randomly generate a serial number in deterministic mode.
2015-05-28 19:14:43 -04:00
comex
138d72313e
Add a quick check to ScheduleEvent_Threadsafe to ensure it doesn't happen in deterministic mode.
2015-05-28 19:14:43 -04:00
comex
dc91e8b607
Add a mode to use a dummy Wii NAND.
...
Eventually, netplay will be able to use the host's NAND, but this could
still be useful in some cases; for TAS it definitely makes sense to have
a way to avoid using any preexisting NAND.
In terms of implementation: remove D_WIIUSER_IDX, which was just WIIROOT
+ "/", as well as some other indices which are pointless to have as
separate variables rather than just using the actual path (fixed, since
they're actual Wii NAND paths) at the call site. Then split off
D_SESSION_WIIROOT_IDX, which can point to the dummy NAND directory, from
D_WIIROOT_IDX, which always points to the "real" one the user
configured.
2015-05-28 19:14:42 -04:00
comex
f6c6822f71
The old g_want_determinism check in WiiSockMan missed a few cases. Move to net.cpp.
...
Specifically, things like GETHOSTBYNAME, GETHOSTID, etc. could be done
without creating a socket, which is what the old check blocked. Now we
check at the ioctl and ioctlv handlers. Might be possible to get a bit
more realistic behavior in future by filtering individual ioctls, but it
probably doesn't matter.
2015-05-28 19:14:42 -04:00
comex
3173d4dcbf
Disable /dev/usb/hid too.
2015-05-28 19:14:42 -04:00
comex
aae104ccb4
Disable some stuff in IPC_HLE when determinism is required.
...
This includes net, which is nonsensical to "sync" in netplay/replays
(could have the host do the Wii networking in future though...), and USB
keyboard, which just needs some love to do the same.
2015-05-28 19:14:42 -04:00
comex
a0a80c9a9c
Fix CopyDir to not require source and dest paths to end with "/".
2015-05-28 19:14:42 -04:00
comex
a225426510
Rewrite FileSearch and improve ScanDirectoryTree.
...
- FileSearch is now just one function, and it converts the original glob
into a regex on all platforms rather than relying on native Windows
pattern matching on there and a complete hack elsewhere. It now
supports recursion out of the box rather than manually expanding
into a full list of directories in multiple call sites.
- This adds a GCC >= 4.9 dependency due to older versions having
outright broken <regex>. MSVC is fine with it.
- ScanDirectoryTree returns the parent entry rather than filling parts
of it in via reference. The count is now stored in the entry like it
was for subdirectories.
- .glsl file search is now done with DoFileSearch.
- IOCTLV_READ_DIR now uses ScanDirectoryTree directly and sorts the
results after replacements for better determinism.
2015-05-28 19:14:42 -04:00
degasus
9a96e3c416
AudioCommon: Remove lock on Pause state
...
We had to lock audiocommon with the old asynchron HLE audio emulation,
now our Mixer is just a plain FIFO which may underrun.
Of course, this will stutter, but underruning the audio backend is likely worse.
2015-05-28 19:58:18 +02:00
JosJuice
6fb8ce58d6
Honor logging settings at startup
...
https://code.google.com/p/dolphin-emu/issues/detail?id=7959
2015-05-28 09:28:23 +02:00
Fog
c767813c0c
Fix adding additional Disc 2 to certain multi-disc games
2015-05-27 11:08:57 -04:00
Tillmann Karras
285ac34bf3
OGL: use GL_TEXTURE* constants
2015-05-27 15:05:49 +02:00
JosJuice
f1580a4c91
Fix game list name encoding error caused by 4.0-6419 ( d7900b4
)
...
The UTF-8 std::strings were being interpreted as the default encoding.
2015-05-27 12:28:23 +02:00
Markus Wick
255a8dfdd2
Merge pull request #2465 from lioncash/commandproc
...
CommandProcessor: Replace volatile usages with atomics
2015-05-27 11:07:36 +02:00
Lioncash
1ba3b4e7ac
CommandProcessor: Replace volatile usages with atomics
...
Also remove said variables from being globals.
2015-05-27 03:53:29 -04:00
Markus Wick
3318120632
Merge pull request #2422 from lioncash/core
...
DSPCore: Make the mailbox registers atomic.
2015-05-27 09:14:41 +02:00
Lioncash
ec03196267
PixelEngine: Replace volatile usages with atomics
...
Also removes two unused volatile variables.
2015-05-27 02:39:55 -04:00
Markus Wick
a6b327751a
Merge pull request #2463 from lioncash/fifo
...
Fifo: Replace usages of volatile with atomics
2015-05-27 08:03:39 +02:00
Lioncash
5db7d4d1d5
DSPCore: Make the mailbox registers atomic.
2015-05-27 00:58:52 -04:00
Lioncash
4cb55cc427
Fifo: Replace usages of volatile with atomics
2015-05-27 00:42:56 -04:00
Rohit Nirmal
c59bfd2b7f
Fix building with PCH disabled.
2015-05-26 22:44:51 -05:00
Matthew Parlane
3135b4f3e4
Merge pull request #2461 from lioncash/barrier
...
Thread: Remove unused Barrier class
2015-05-27 13:21:14 +10:00
Lioncash
23c11b3f27
Thread: Remove unused Barrier class
2015-05-26 19:25:59 -04:00
Markus Wick
85e706b4ec
Merge pull request #2459 from degasus/master
...
Common: Fix IsTriviallyCopyable macro for GCC 5
2015-05-26 20:13:14 +02:00
degasus
ebad10f2a1
Common: Fix IsTriviallyCopyable macro for GCC 5
...
Based on quarthex's patch in PR #2440
2015-05-26 19:50:14 +02:00
Tillmann Karras
6ea49da5b9
Jit64: fix ps_sum
...
It's /always/ the register cache.
2015-05-26 19:00:42 +02:00
skidau
8944e07f84
Merge pull request #2457 from degasus/master
...
DolphinWX: Drop dead hotkey button.
2015-05-26 23:53:46 +10:00
degasus
b64301d65c
DolphinWX: Drop dead hotkey button.
2015-05-26 15:50:15 +02:00
Jules Blok
0b61a0dfc5
Merge pull request #2448 from Armada651/depth-inversion
...
D3D: Depth range inversion.
2015-05-26 15:39:50 +02:00
Markus Wick
d7900b4423
Merge pull request #2006 from RisingFog/disc2
...
Append Disc 2 to Titles for Multi-Disc Games
2015-05-26 15:39:42 +02:00
Jules Blok
ca7801da44
D3D: Invert initial depth buffer clear.
2015-05-26 15:31:36 +02:00
galop1n
2975e53091
D3D: Depth range inversion.
...
Credits go to Galop1n for designing this technique and to BhaaLseN for cleaning up the commit.
2015-05-26 15:31:31 +02:00
Markus Wick
a6412fb41e
Merge pull request #2162 from degasus/prefetch_tex
...
CustomTexture: prefetch all available textures
2015-05-26 13:30:26 +02:00
Markus Wick
5d3a248811
Merge pull request #2455 from lioncash/fifo
...
FifoQueue: Use atomics instead of volatile members
2015-05-26 12:26:36 +02:00
Lioncash
de5038849e
FifoQueue: Use atomics instead of volatile members
2015-05-26 05:34:47 -04:00
Ryan Houdek
b038b61a29
[ARMv7] Extend the life of the JIT Recompiler.
...
Until loadstores are fully investigated, let's artificially extend the life of it by disabling all of them.
These instructions break in a very terrible way and eventually all loadstores end up attempting to access memory region (u32)-1.
Disable until someone has enough time to investigate further.
2015-05-25 23:36:28 -05:00
Ryan Houdek
a4a8162fb5
Merge pull request #2188 from JosJuice/dol-cleanup
...
DOL loader cleanup with std::vector and safety checks
2015-05-25 23:51:40 -04:00
Ryan Houdek
f4625e6383
Merge pull request #2398 from JosJuice/revert-854f6b8
...
Attempt at fixing issue 8544 (input recording desyncs)
2015-05-25 23:49:56 -04:00
Ryan Houdek
061848457a
Merge pull request #2382 from RisingFog/vfwfix
...
Fix video dumping incorrect lengths for some games in Windows
2015-05-25 23:46:22 -04:00
Ryan Houdek
f706518dc0
Merge pull request #2390 from darkengine-io/new-qt
...
More miscellaneous Qt fixes
2015-05-25 23:45:21 -04:00
Ryan Houdek
96ef0fce38
Merge pull request #2450 from lioncash/alloc
...
NetPlayClient: Remove unnecessary array allocation
2015-05-25 23:42:49 -04:00
Ryan Houdek
b0b5f4d10d
Merge pull request #2326 from JosJuice/isoproperties-config-block
...
ISOProperties: Don't block when opening default INI in text editor
2015-05-25 23:42:26 -04:00
Ryan Houdek
5911dd528a
Merge pull request #2361 from JosJuice/filesystem-read32
...
Remove CFileSystemGCWii::Read32
2015-05-25 23:40:28 -04:00
Ryan Houdek
c88d6c804a
Merge pull request #2430 from Sonicadvance1/android_panic_handler
...
[Android] Add support for panic alerts to the JNI.
2015-05-25 23:37:48 -04:00
Ryan Houdek
4ba430951a
Merge pull request #2439 from JosJuice/company-from-id
...
Use an ID-to-name map when volume has no company string
2015-05-25 23:32:55 -04:00
Ryan Houdek
0c31013622
Merge pull request #2453 from rohit-n/call-me-bob
...
Fix building with PCH disabled.
2015-05-25 23:28:18 -04:00
Ryan Houdek
1d6375b71f
Merge pull request #2339 from JosJuice/fix-wii-fst-size
...
Fix reading Wii FST size
2015-05-25 23:27:25 -04:00
Rohit Nirmal
dbe54e63ed
Fix building with PCH disabled.
2015-05-25 22:26:43 -05:00
Ryan Houdek
dad5d8e13d
Merge pull request #2357 from degasus/ogl_efb_poke_merge
...
ogl: efb poke merge
2015-05-25 23:26:39 -04:00
Ryan Houdek
3817dd0f91
Merge pull request #2272 from phire/jitil-floatbug
...
JitIL: Fix a bug in floatpoint load/store instructions.
2015-05-25 23:17:56 -04:00
Ryan Houdek
d789d8d75f
[Android] Add support for panic alerts to the JNI.
2015-05-25 22:13:00 -05:00
Ryan Houdek
7c04c76a26
Merge pull request #2421 from Tilka/jit_stuff
...
Jit64: fixes + less code
2015-05-25 23:08:24 -04:00
Ryan Houdek
0c5f5c4519
Merge pull request #2394 from Sonicadvance1/android_block_profiling_api
...
[Android] Block profiling JNI interface
2015-05-25 23:06:37 -04:00
Ryan Houdek
95f9096068
Merge pull request #2396 from Sonicadvance1/fix_racing_cpu_core
...
Fix a race condition when pausing the CPU core.
2015-05-25 23:06:18 -04:00
Ryan Houdek
99d9161e49
Merge pull request #2429 from Sonicadvance1/aarch64_block_profile
...
[AArch64] Implement block profiling.
2015-05-25 23:05:54 -04:00
Markus Wick
1fc3c8aa02
Merge pull request #2451 from degasus/master
...
DSP: Inline DSPControl into DSPState
2015-05-25 15:19:31 +02:00
Ryan Houdek
69963dc4b0
Merge pull request #2274 from degasus/disable_bbox
...
Disable bbox
2015-05-25 08:46:12 -04:00
Tillmann Karras
30ebb2459e
Set copyright year to when a file was created
2015-05-25 13:22:31 +02:00
Tillmann Karras
cefcb0ace9
Update license headers to GPLv2+
2015-05-25 13:22:31 +02:00
Tillmann Karras
268f52e054
Add missing license headers
2015-05-25 13:11:47 +02:00
Tillmann Karras
6d9986846c
Simplify some more license headers
2015-05-25 13:11:41 +02:00
degasus
dd35f5df94
DSP: Inline DSPControl into DSPState
...
This was a struct with exactly one element, and
an overloaded constructor which matches the construtor
of this element. So there is no need for this stacked
structur.
2015-05-25 10:56:14 +02:00
degasus
7e127da791
VideoCommon: Warn if bbox is disabled but used
2015-05-25 09:33:34 +02:00
degasus
029912681e
VideoCommon: return 0 if bbox is disabled
...
Through just returning the last written value sounds better, this crashes Paper Mario.
In my opinion, gfx issues are fine on older GPUs, but crashes should not happen.
2015-05-25 09:33:34 +02:00
degasus
6b2a1e57e2
BBox: remove now unreachable SW bbox implementation
2015-05-25 09:33:34 +02:00
degasus
acd074e291
VideoCommon: Make BBox emulation optional
2015-05-25 09:33:34 +02:00
degasus
ac0e304159
Jitregister: fix common-core dependency
2015-05-25 09:33:34 +02:00
Markus Wick
732802ebd0
Merge pull request #2419 from Armada651/clip-control
...
OGL: Add glClipControl support.
2015-05-25 09:29:43 +02:00
Lioncash
b0075966af
NetPlayClient: Remove unnecessary array allocation
2015-05-24 22:53:25 -04:00
Matthew Parlane
34cd2b0299
Merge pull request #2435 from sigmabeta/android-native-autodetect
...
Android: Have build.gradle figure out what ABI and Toolchain to use.
2015-05-25 10:11:52 +10:00
JosJuice
d2e6adb045
Use an ID-to-name map when volume has no company string
...
This is written so that the result of GetCompanyFromID never is cached
(except on Android?). Caching is unnecessary because the string can be
obtained quickly at runtime, and not caching it means that the cache
doesn't have to be invalidated when GetCompanyFromID is edited.
2015-05-24 17:41:53 +02:00
Lioncash
6b30c9710c
SoundStream: Devirtualize StartLogAudio and StopLogAudio
...
These don't rely on anything that might need to be implemented in other SoundStream classes.
2015-05-24 06:10:11 -04:00
Lioncash
07d4dbe657
AudioCommon: Add missing override specifiers
...
Also removes unnecessary virtual keywords.
2015-05-24 06:10:03 -04:00
Lioncash
4695233c98
SoundStream: Devirtualize GetMixer
...
Since it's handled by the base class, there's no need to allow overriding.
2015-05-24 05:49:51 -04:00
Lioncash
35ee8a1362
SoundStream: Internally construct the mixer
...
Instead of creating the mixer externally and then passing it in, it can just be made within the class.
2015-05-24 05:49:41 -04:00
Lioncash
88e1850231
GekkoDisassembler: Fix typecast for the second printf param for mtfsf
2015-05-24 01:54:04 -04:00