Commit Graph
100 Commits
Author SHA1 Message Date
comex aa452f4fe8 Merge pull request #1576 from comex/osx-qt-build-fixes
OS X Qt build fixes
2014-11-20 12:11:43 -05:00
comex fb50cb6d99 Merge pull request #1550 from degasus/bbox
OGL: implement bounding box support with ssbo
2014-11-19 20:25:23 -05:00
comex ba4a763410 Move library aggregation into common CMakeLists.txt; add missing libs to DolphinQt.
Fixes DolphinQt build (on OS X, anyway) when libav is enabled.
2014-11-19 20:09:12 -05:00
comex dd2c8c49b3 Merge pull request #1515 from RachelBryk/gpudeterminism-isoprops
Add GPUDeterminismMode to isoproperties.
2014-11-19 20:03:52 -05:00
comex 688b1e537e rename CopyDataIntoBundle target name to avoid wx/qt conflict 2014-11-19 14:53:51 -05:00
comex c5a25d56e0 Remove Android <ucontext.h> hack.
There was a longstanding hack that defined ucontext_t manually to work
around the lack of this header on the Android NDK.  However, it looks
like newer NDK versions now have it like good little POSIX boys, and my
recent header reshuffle broke the build on those versions, presumably
because the real and fake definitions of ucontext_t end up included in
the same file where they weren't under the old organization.

Rather than try to revert the conflict, this commit just removes the
hack.  The buildbot's NDK will need to be upgraded.
2014-11-17 13:29:04 -05:00
comex aa2fc1f66b Merge pull request #1449 from comex/memtools-merge
Reorganize faulting stuff.  Differentiate between arch- and OS-specific defines.
2014-11-16 13:46:33 -05:00
comex 37b14bdec9 Fix wxCommandEvent/wxThreadEvent subclass mismatch
Regression by 3fed975bac caused netplay to
crash on OS X.  While I'm at it, fix the long-standing "unsafe i guess"
AddPendingEvent, since we depend on wx 3 now...
2014-11-15 23:52:19 -05:00
comex 4e484faf4c Merge pull request #1557 from lioncash/join
Core: Join some variable declarations and assignments
2014-11-15 20:53:45 -05:00
comex 8dbef4e987 Merge pull request #1553 from degasus/master
OpcodeDecoder: Skip recursiv display lists
2014-11-15 11:05:41 -05:00
comex 68c5758151 Merge pull request #1435 from comex/osx-build
OS X CMake improvements
2014-11-14 15:03:53 -05:00
comex 8c26b0207d Merge pull request #1543 from comex/utf8-issues
stupid utf-8 stuff
2014-11-14 15:03:36 -05:00
comex efb2f361aa Don't murder the default PATH and CMAKE_SYSTEM_PREFIX_PATH on OS X. Just prioritize /usr.
Changing PATH basically screws everything up, and while the attempt to
avoid MacPorts copies of system libraries was well-intentioned, it made
the OS X buildbot unable to pick up ffmpeg and libusb.

It's sufficient to put /usr first to make sure we use the system copies
of duplicated libraries.
2014-11-14 15:00:50 -05:00
comex 0cf8ab175b Fix UCodes.cpp to use UTF-8 encoding. 2014-11-14 11:53:56 -05:00
comex 5e25b6389c Make check-includes.py properly report bad UTF-8 on all platforms rather than crashing on Python 3.
Doesn't really belong there, but just removing the check doesn't feel
like a good idea.
2014-11-14 11:52:40 -05:00
comex cb0af4057e Link Foundation/CoreServices into unit tests so they build with DISABLE_WX. 2014-11-14 11:28:13 -05:00
comex ba48541c47 Merge pull request #1504 from comex/gpu-determinism-uninit-fix
Fix uninitialized GPU determinism mode for NAND titles or whatever.
2014-11-06 19:49:31 -05:00
comex e2c5573bc9 Merge pull request #1505 from FioraAeterna/fixbadmistake
JIT: remove accidentally left-in debug code
2014-11-05 21:41:30 -05:00
comex 9d23a366c8 Fix uninitialized GPU determinism mode for NAND titles or whatever.
m_strGPUDeterminismMode can be set by either the global or game
settings.  Either way, it's then supposed to be parsed into an enum,
m_GPUDeterminismMode.  However, the code to do this was placed right
after checking for game settings, which doesn't happen at all if there
isn't a valid title ID.  Move it outside the if block.
2014-11-05 19:36:12 -05:00
comex 9cba787871 Merge pull request #1408 from randomstuff/perf
Profiling: measure time on non-Windows/POSIX using clock_gettime
2014-11-03 22:36:32 -05:00
comex 507104186c Merge pull request #1427 from lioncash/uninit
Core: Fix potentially uninitialized variable warnings
2014-11-03 22:32:58 -05:00
comex 42d41a456e Merge pull request #1489 from FioraAeterna/revertopt
JIT: revert cmpXX optimization
2014-11-03 21:07:11 -05:00
comex 80d60c8c44 Merge pull request #1487 from FioraAeterna/fixinvalidate
JIT: fix valid_block marking
2014-11-03 19:36:03 -05:00
comex 4cf8697957 Merge pull request #1480 from RachelBryk/warn
Fix some warnings.
2014-11-03 00:36:40 -05:00
comex 9f683f353b Make EXI use CoreTiming events like everything else instead of having its own slow special check.
Microphone is probably wrong/mistimed because it doesn't take into
account cycles late, but that's not a new issue here.
2014-11-03 00:28:46 -05:00
comex 08b61fdd9c Merge pull request #1465 from degasus/master
VideoCommon: Remove GetPointer in fifo code
2014-11-02 19:58:45 -05:00
comex 890b788633 Merge pull request #1467 from waddlesplash/dolphin-qt
DolphinQt: Games now boot!
2014-11-02 18:08:55 -05:00
comex 5d18c66c99 Merge pull request #1464 from phire/usb_keyboard
Remove GetPointer from Wii USB Keyboard.
2014-11-01 22:35:37 -04:00
comex af1a08fbf3 Merge pull request #1453 from lioncash/str
GCMemcardDirectory: Pass std::strings by reference.
2014-10-31 16:07:46 -04:00
comex f95b44c96d Merge pull request #1451 from lioncash/const
SI_Device: Make GetDeviceNumber and GetDeviceType const.
2014-10-31 16:07:04 -04:00
comex 2ecd849eab Reorganize faulting stuff. Differentiate between arch- and OS-specific defines.
- Get rid of ArmMemTools.cpp and rename x64MemTools.cpp to MemTools.cpp.
  ArmMemTools was almost identical to the POSIX part of x64MemTools, and
  the two differences, (a) lack of sigaltstack, which I added to the
  latter recently, and (b) use of r10 to determine the fault address
  instead of info->si_addr (meaning it only works for specifically
  formatted JIT code), I don't think are necessary.  (Plus Android, see
  below.)

- Rename Core/PowerPC/JitCommon/JitBackpatch.h to Core/MachineContext.h.
  It doesn't contain anything JIT-specific anymore, and e.g. locking
  will want to use faulting support regardless of whether any JIT is in
  use.

- Get rid of different definitions of SContext for different
  architectures under __linux__, since this is POSIX.  The exception is
  of course Android being shitty; I moved the workaround definition from
  ArmMemTools.cpp to here.

- Get rid of #ifdefs around EMM::InstallExceptionHandler and just
  provide an empty implementation for unsupported systems (i.e.
  _M_GENERIC really).  Added const bool g_exception_handlers_supported
  for future use; currently exception handlers are only used by the JIT,
  whose use implies non-M_GENERIC, but locking will change that.

- Remove an unnecessary typedef.
2014-10-31 00:14:06 -04:00
comex de6dd847e7 Merge pull request #1445 from lioncash/array
DSPAnalyzer: Use a std::array for the code flags
2014-10-30 17:43:00 -04:00
comex 67452c53f1 Merge pull request #1386 from booto/small-loop-fix
VideoCommon: loop bug in ShaderGenCommon.h debug
2014-10-29 17:28:10 -04:00
comex eb22adf24a Merge pull request #1433 from rohit-n/fix-warnings
DolphinWX: Fix a few warnings.
2014-10-29 17:23:56 -04:00
comex d2990bc70a Merge pull request #1420 from jcowgill/fix-cmake-test-names
Rename unittest targets to Tests_*
2014-10-29 17:23:26 -04:00
comex 089e32ba7d Merge pull request #1307 from comex/bitset
Higher level bitset wrapper
2014-10-28 23:39:35 -04:00
comex 7747c9efbb Merge pull request #1429 from lioncash/concat
FileSystemGCWii: Shorten some string concatenations
2014-10-28 23:38:58 -04:00
comex 3247f28048 Merge pull request #1430 from lioncash/voldir
VolumeDirectory: Pass std::string by reference for SetUniqueID/SetName
2014-10-28 23:38:21 -04:00
comex 6618337ece Merge pull request #1421 from comex/frames-mkdir
Create userdir/Dump/Frames as needed.
2014-10-28 23:37:36 -04:00
comex 6698bfe58e Merge pull request #1424 from phire/memmapPtrCleanup
Memmap pointer cleanup.
2014-10-28 17:31:23 -04:00
comex 073cce959a Create userdir/Dump/Frames as needed.
This is used for framedump.raw in non-Windows builds without libav
support.
2014-10-28 17:24:07 -04:00
comex 1c32a3f77c Merge pull request #1426 from lioncash/osx
Make some OSX-only functions static
2014-10-28 16:16:03 -04:00
comex 31c679a3dc Merge pull request #1403 from waddlesplash/dolphin-qt
DolphinQt: Fix toolbar image loading on Retina displays
2014-10-28 16:15:04 -04:00
comex 5f4c22df1a Merge pull request #1423 from Buddybenj/cannot
Fix consistency of cannot throughout the project
2014-10-27 21:28:17 -04:00
comex c76b804258 Merge pull request #1406 from lioncash/const
DolphinQt: Make GetOS const
2014-10-27 15:04:41 -04:00
comex 5f21683343 Merge pull request #1388 from waddlesplash/dolphin-qt
DolphinQt: About dialog fixes, SystemInfo dialog
2014-10-25 21:20:02 -04:00
comex c81e3da22f Add unit test. 2014-10-25 16:57:25 -04:00
comex b29e5146ec Convert some VideoCommon stuff to BitSet.
Now with a minor performance improvement removed for no reason.
2014-10-25 16:57:25 -04:00
comex f51c233a08 Add workaround for OS X symbol clash and AllOnes helper method. 2014-10-25 16:57:25 -04:00
comex eb7f4dac50 Convert registersInUse to BitSet. 2014-10-25 16:57:25 -04:00
comex b6a7438053 Add BitSet and, as a test, convert some JitRegCache stuff to it.
This is a higher level, more concise wrapper for bitsets which supports
efficiently counting and iterating over set bits.  It's similar to
std::bitset, but the latter does not support efficient iteration (and at
least in libc++, the count algorithm is subpar, not that it really
matters).  The converted uses include both bitsets and, notably,
considerably less efficient regular arrays (for in/out registers in
PPCAnalyst).

Unfortunately, this may slightly pessimize unoptimized builds.
2014-10-25 16:56:51 -04:00
comex 275755aaaf Merge pull request #1381 from skidau/Remove-false-ext-exception-error
Added a check for external exceptions that have been set
2014-10-25 16:48:44 -04:00
comex 4b0c6d8e0f Merge pull request #1385 from lioncash/bitfield
BitField: Fix a typo in the sample usage.
2014-10-25 16:48:31 -04:00
comex b7cb5b69c4 Merge pull request #1387 from RachelBryk/radius
Change default gcpad radius to 100.
2014-10-25 16:46:06 -04:00
comex ab7c594b26 Merge pull request #1400 from lioncash/warn
CheatSearchTab: Fix signed/unsigned comparison warning
2014-10-25 16:45:50 -04:00
comex a9f9e81330 Use double braces for std:array initialization to avoid clang warning.
std::array does not have an initializer list constructor, instead (for
some reason) being defined to contain one public array member, allowing
it to be directly initialized.  Thus the most explicit way to initialize
it is with two braces, one for the struct and one for the array.  C++
allows the second pair of braces to be omitted, but clang complains
about it.
2014-10-25 15:39:24 -04:00
comex 5c2a470b97 Fix 'sizeof' which broke in my reference-to-pointer conversion. 2014-10-25 15:02:12 -04:00
comex e51676fdf1 Merge pull request #1395 from Sonicadvance1/fix-OSX-spaces
Fixes packaging OS X binary with spaces in the directory name.
2014-10-25 14:58:11 -04:00
comex 1f5b1001ce Merge pull request #1342 from phire/lessGetPointer
Eliminate getPointers which are memcpyed or memset.
2014-10-23 14:42:37 -04:00
comex 00c6ec97a6 Merge pull request #1347 from comex/header-hygiene
Add missing includes where headers depend on other headers having been included first.
2014-10-22 23:23:58 -04:00
comex 6e774f1b64 Add missing includes where headers depend on other headers having been included first.
This is good hygiene, and also happens to be required to build Dolphin
using Clang modules.

(Under this setup, each header file becomes a module, and each #include
is automatically translated to a module import.  Recursive includes
still leak through (by default), but modules are compiled independently,
and can't depend on defines or types having previously been set up.  The
main reason to retrofit it onto Dolphin is compilation performance - no
more textual includes whatsoever, rather than putting a few blessed
common headers into a PCH.  Unfortunately, I found multiple Clang bugs
while trying to build Dolphin this way, so it's not ready yet, but I can
start with this prerequisite.)
2014-10-21 21:22:16 -04:00
comex 06433652be Improve some libcdio CoreFoundation code.
I found it via clang complaining about a useless null check on an array,
but I decided to get rid of the array in favor of dynamic allocation, as
there was no reason to assume a maximum length of 0x32 bytes.  Plus, add
a CFString type check just in case, and switch to UTF-8 in the
off-chance it matters.

The result has not actually been tested, as I have no CD drive.
2014-10-21 21:20:11 -04:00
comex 8492d04dfa Use pointers instead of references in GetUidData to avoid the undefined behavior of *(T *)nullptr (ewwww) 2014-10-21 21:20:05 -04:00
comex 54035560e5 Merge pull request #1332 from Stevoisiak/bittosSettingsFile
Added settings file for bittos+
2014-10-21 21:10:39 -04:00
comex 9adf608f38 Merge pull request #1355 from FioraAeterna/fixmmuoff
MMU: allow page-table loads/stores if MMU is off
2014-10-21 14:55:18 -04:00
comex 3d536bbe38 Merge pull request #425 from LPFaint99/clang-format_config
Add .clang-format configuration
2014-10-21 03:50:00 -04:00
comex c048691a57 Merge pull request #1292 from FioraAeterna/enablebats
Make EnableBATs an option instead of disabling it entirely
2014-10-21 02:26:49 -04:00
comex 78deebd732 Merge pull request #1346 from kayru/d3d_clip_enable
D3D: Enabled depth clipping
2014-10-21 01:59:24 -04:00
comex 24e72cd064 Merge pull request #991 from phire/dsi_should_crash
Panic if game does an invalid memory access.
2014-10-21 01:53:08 -04:00
comex ea16b2d065 Merge pull request #1335 from lioncash/indent
Debugger: Fix class indentation
2014-10-20 19:17:24 -04:00
comex 2575eaa818 Merge pull request #1339 from phire/getString
IPC_HLE: Replace (const char *)GetPointer(x) with GetString(x)
2014-10-20 19:17:05 -04:00
comex 4af98d63bc Merge pull request #1344 from comex/mem-tools-testing
MemTools testing
2014-10-19 22:20:30 -04:00
comex 6a7cff02b8 Merge pull request #1343 from comex/yet-another-stupid-branch
Rename the poorly named {Read,Write}BigEData to Copy{From,To}Emu -
2014-10-19 22:18:57 -04:00
comex c5c4dd49e6 Add a define to use sigaction on OS X instead of OS-specific page fault handling.
The latter was introduced last year in order to allow debugging without
turning off Fastmem; I wanted to see if the old way was faster.  In
fact, it is not, but may as well keep the define around in case future
testing is necessary.
2014-10-19 20:41:54 -04:00
comex 4d610cc30e Add a test for page fault handling.
This both tests that they work correctly and prints timing information
if you run it manually.
2014-10-19 20:41:52 -04:00
comex f8dfb2ec90 Rename the poorly named {Read,Write}BigEData to Copy{From,To}Emu -
and change argument order to match memcpy.

Oh, and fix a lulzy buffer overflow in IOS emulation while I'm at it.
2014-10-19 19:34:38 -04:00
comex 742f9c6b14 Merge pull request #1319 from lioncash/tas_vars
TASInputDlg: Apply m_ prefix to class member variables.
2014-10-18 01:04:32 -04:00
comex 2684c75c6e Merge pull request #1304 from FioraAeterna/fasterhash
Hash: unroll CRC loop, since CRC32 typically has nontrivial latency
2014-10-17 20:24:47 -04:00
comex 536b8d6695 Merge pull request #1305 from dolphin-emu/revert-1222-backpatchchanges
Revert "FastMem: don't let the backpatcher hit the same location twice"
2014-10-16 21:43:18 -04:00
comex 4c2a542f1e Revert "FastMem: don't let the backpatcher hit the same location twice" 2014-10-16 21:39:15 -04:00
comex 4e8cc952bb Merge pull request #1247 from Stevoisiak/WiimoteSubmenu
Moved "Connect Wiimote" options into submenu
2014-10-16 20:12:35 -04:00
comex eb865cae20 Merge pull request #1284 from comex/even-more-warnings
Even more warnings
2014-10-16 17:05:25 -04:00
comex 67088a1834 Fix signed/unsigned comparison and unused variable warnings. 2014-10-16 17:03:49 -04:00
comex 4134a0ad54 Make some variables static (should probably adjust for coding style too, but I'm not the one who merged code with bad style...) 2014-10-16 17:03:37 -04:00
comex 1ff86a4716 Merge pull request #1295 from crudelios/remove-bbox-settings
Remove setting to enable or disable Bounding Box calculation.
2014-10-16 17:00:37 -04:00
comex cedf0f68a8 Merge pull request #1303 from degasus/master
DriverDetails: mark intel buffer_storage bug as fixed
2014-10-16 16:59:28 -04:00
comex c5247673cd If the stack overflow trap region has already been tripped, don't continue to ignore faults there.
In the unlikely case that it tripped and then, due to a bug, some other
fault occurred (e.g. stack misalignment), Dolphin would go into an
infinite loop rather than crashing.
2014-10-16 02:14:02 -04:00
comex 8f61c6f239 Merge pull request #1243 from comex/warning-fixes
Misc / warning fixes
2014-10-14 01:14:26 -04:00
comex 6650f8922d Merge pull request #1283 from FioraAeterna/removebats
MMU: disable BAT resolution
2014-10-14 01:14:14 -04:00
comex b93953250a TAS warning fixes: unused vars, shadowing, incorrect (unsigned) 2014-10-14 01:11:31 -04:00
comex 5b8722b6f2 Don't pass u64 (which may be long long) to %lu.
A type-safe StringFromFormat sure would be nice...
2014-10-14 01:10:35 -04:00
comex d4e8e3a6a3 Properly handle the Wiimote speaker data format being unknown. 2014-10-14 01:10:35 -04:00
comex a27f5fe301 Remove another auto .. -> declaration. 2014-10-14 01:10:35 -04:00
comex 47faf7c4fd Merge branch 'Remove-MMU-Speed-Hack-option' of https://github.com/skidau/dolphin into skidau-Remove-MMU-Speed-Hack-option
Conflicts:
	Source/Core/Core/PowerPC/Jit64/JitAsm.cpp
2014-10-14 01:08:20 -04:00
comex 89fb096ef3 Merge pull request #1282 from lioncash/readme
Readme: Add a link to the Transifex page
2014-10-14 01:03:36 -04:00
comex 85086e1e6c Merge pull request #1224 from FioraAeterna/profile
JIT: re-add profiling support on x86_64
2014-10-07 02:31:04 -04:00
comex 39d01774de Merge pull request #1229 from lioncash/ts
Fifo: Fix tab/space mismatches
2014-10-07 02:27:37 -04:00
comex 9d059d1d2f Merge pull request #1221 from LPFaint99/memcard
Fix endian error. allows loading of current games save even if the memca...
2014-10-06 23:21:36 -04:00
comex 47bf698b70 Merge pull request #1217 from lioncash/tcast
TrampolineCache: Remove unnecessary cast
2014-10-04 00:19:08 -04:00
comex 7bce3fcdf9 Merge pull request #1174 from FioraAeterna/fifowriteaddrfix
JIT: properly remove FIFO write addresses when code is invalidated
2014-10-04 00:18:58 -04:00