* common: move ThreadingDialogs and wxAppWithHelpers to main project
* common: move CheckedStaticBox to the main project
* common: move pxCheckBox to the main project
* common: move pxRadioPanel to the main project
* common: move pxEvents.h to main project
* common: format AlignedMalloc.cpp
* common: format AppTrait.h
* common: format Assertions.h
* common: format CheckedStaticBox
* common: format Console
* common: format Dependencies.h
* common: format EmbeddedImage
* common: format EventSource
* common: format Exceptions
* common: format FastFormatString.cpp
* common: format General.h
* common: format InitInterface
* common: format MathUtils.h
* common: format MemsetFast/MemcpyFast
* common: format Mutex.cpp
* common: format PageFaultSource.h
* common: format Path.h
* common: format PathUtils.cpp
* common: format Pcsx2Types.h
* common: format Perf
* common: format PersistentThread.h
* common: format RwMutex
* common: format SafeArray
* common: format ScopedAlloc.h
* common: format ScopedPtrMT.h
* common: format Semaphore.cpp
* common: format StringHelpers
* common: format ThreadTools.cpp
* common: format Threading.h
* common: format ThreadingDialogs
* common: format ThreadingInternal.h
* common: format TraceLog.h
* common: format VirtualMemory.cpp
* common: format pxCheckBox
* common: format pxEvents.h
* common: format pxForwardDefs.h
* common: format pxRadioPanel
* common: format pxStaticText
* common: format pxStreams
* common: format pxTranslate.cpp
* common: format pxWindowTextWriter.cpp
* common: format wxAppWithHelpers
* common: format wxBaseTools.h
* common: format wxGuiTools
* common: format wxHelpers.cpp
* common: format Darwin directory
* common: format Linux directory
* common: format Windows directory
* common: format LnxCpuDetect.cpp
* common: format WinCpuDetect.cpp
* common: format bmi.cpp
* common: format cpudetect.cpp
* common: format cpu_detect_internal.h
* common: format fpu.cpp
* common: format groups.cpp
* common: format instructions.h
* common: format internal.h
* common: format jmp.cpp
* common: format legacy.cpp
* common: format legacy_instructions.h
* common: format legacy_internal.h
* common: format movs.cpp
* common: format simd.cpp
* common: format tools.h
* common: format x86emitter.cpp
* common: format x86types.h
* common: format bmi.h
* common: format dwshift.h
* common: format group1.h group2.h group3.h
* common: format incdec.h
* common: format jmpcall.h
* common: format movs.h
* common: format simd_arithmetic.h
* common: format simd_comparisons.h
* common: format simd_helpers.h
* common: format simd_moremovs.h
* common: format simd_shufflepack.h
* common: format simd_templated_helpers.h
* common: format test.h
Since emulation settings has been renamed general settings, we can put BIOS and Folder in the same location where people have an overview and can just use tab key on icons or mouse. Less confusion and also fixes the speedhacks section *for the zillionth time*.
Move the pcsx2 project from pcsx2/windows/VCprojects/ to pcsx2/
This is to fix an issue that was causing the intermediate files to go to the wrong directory.
pcsx2/windows/VCprojects/Win32/Devel/../../GS/GS.o -> pcsx2/Win32/Devel/GS/GS.o
*Resulting .wavs should get saved in the same location as the video file on linux
*Keep gui capture state consistent regardless of the method used to start recording
*Reworked mainFrame capture menu video options to route to a single toggleCapture_click function
*Split GS & SPU2 recording into start & end functions
* Moved ps1 init. Added Sample Rate change for SPU that gets set but not applied
* SPU: misc fixes on SPU ps1 mode init
* Init the soundbuffer to apply sample rate. Actually set the correct sample rate for the ps1 though it still won't apply
Co-authored-by: Gauvain 'GovanifY' Roussel-Tarbouriech <gauvain@govanify.com>
Co-authored-by: kenshen112 <obarrtimothy@gmail.com>
Shares a single filename between the two capture functions so that the .avi and .wav will match.
Default wavdump filename changed to "audio_recording.wav"
Allocate memory in an x86-64-compatible way
Another part of #3451
Note: While this shouldn't change how anything works, it's been the #1 source of breakage of 32-bit builds in #3451 (it was the cause for the failure of win32 to allocate memory and the failure of linux-32 afterward) so we should definitely make sure it gets tested
see #3523 for more information
Fix codegen on x86-64
Part 1 of the changes being worked on in #3451
Makes x86emitter emit the x86-64 machine code you would expect it to
Also adds some unit tests to verify that things are working
* git: Ignore uncaught linux build artifacts
* onepad-legacy: Return legitimate key event on `PADkeyEvent` call
Onepad-legacy was the plugin that was building and being used on my linux environment. I'm not sure if t hat's expected and normal 'onepad' has yet to take over.
* onepad: Return legitimate key event on `PADkeyEvent` call
* recording: Remove unnecessary `PadKeyDispatch(ev)` wrapping func
* recording: Cleanup key event handling when GSFrame CoreThread is paused
* recording: Refactor recording status check to be more explicit
* recording: Define additional key bindings for capitalized varient
Despite the advice of the docstrings in these files, on linux this seems to be required for the bindings to consistently fire.
* onepad: Declare `AnalyzeKeyEvent` not static
* recording: Ensure file extension is appended to recording file on linux
* recording: Correct typo in comment
* recording: Better wording around linux keybinding handling
* Remove unneeded `extern`
* Improve secondary dialogs in Onepad. I'll do gtk stuff in this branch, too, I promise...
* More fiddling with onepad's secondary dialogs.
* Rework config.inl to use wx, getting the rest of the null plugins.
* Remove some unnecessary includes, and convert SysMessage to wx in onepad.
* Add in tellowkrinkle's Mac OS fixes.
* macOS compile
* Fix memprotect error on macOS
* Fix semaphore wait + thread cancel on macOS
* Fix timedlock timeout calculation
* spu2-x macOS
* onepad macOS support
* Add MacOS game controller db
* Disable onepad_legacy on macOS
* Fix spu2-x configuration crashes
* Make recompiler work on 32-bit macOS
* Use dylib extension for plugins on macOS
* Make app bundle on macOS
* Use git info for Info.plist version
Avoid some function overloads that can accept char*, wxChar* and
wxString as a parameter. wxString can be constructed with either of
those parameters, so the function overloads may actually result in
ambiguity errors. Keep the wxString parameter versions and remove the
rest.
Fixes some compile errors on FreeBSD.
__try is used in pthread_cleanup_push when CLEANUP_SET is used as the
pthread cleanup model. That can't be used in functions with objects that
have destructors, so move it into a separate function.
Prevents compile errors on non-release Windows builds if other things in
the internal callback function change.
This pull request is for the pending reorganization of the folder structure on GSdx,
making it better organized and easier to work with.
Also remove unused GSTextureFX.cpp file.
This reverts
93d5b52df3f3e78b826755155ca7f1.
Unfortunately wxString stuff is a PITA to deal with. Breaks FreeBSD
compile, but there are probably more issues that just haven't been
reported yet...
__try is used in pthread_cleanup_push when CLEANUP_SEH is used as the
pthread cleanup model. That can't be used in functions with objects
that have destructors, so move it into a separate function.
Fixes a non-release build compile error on Windows. Regression was
introduced in 93d5b52df3.
Avoid some function overloads that can accept char*, wxChar* and
wxString as a parameter. wxString can be constructed with either of
those parameters, so the function overloads may actually result in
ambiguity errors. Keep the wxString parameter versions and remove the
rest.
Fixes some compile errors on FreeBSD.
Fixes a compile error (C2666) on VS2017 15.8 caused by ambiguity issues.
The sstream header uses
constexpr auto _both = ios_base::in | ios_base::out;
Without the extra type restrictions the compiler cannot tell whether to
use the template or the built-in | operator (the const wxSizerFlags &
parameter will accept ints).
Fixes some issues with opening ini/log files when the path contains
characters that are not present in the current codepage for the
following plugins:
SPU2-X
LilyPad
cdvdGigaherz
Dev9null
USBnull
FWnull
Adds a helper function for converting UTF-8 to UTF-16 on Windows. Also
adds a fopen wrapper function for pathnames that may contain characters
that are not present in the current Windows codepage.
The C spec states that the va_arg argument value is indeterminate after
returning from vfprintf. va_end and va_start must be called before the
variable is reused.
clang and earlier GCC versions do not provide the _xgetbv intrinsic.
GCC8 does, but unfortunately it's broken.
(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85684).
Re-use our _xgetbv implementation to avoid the bug, but rename it to
avoid compilation errors as well.
Avoid enabling the child windows when SetValue is called if the window
is currently disabled.
Also continue processing the checkbox event after it has been handled,
which allows the event to propagate to the parent window.
It's not really used, and the OSD uses a different API.
The specified calling convention (stdcall) is also incorrect since
variadic functions are caller-clean, not callee-clean. The compilers
ignore the stdcall and just use cdecl (I think), though it does trigger
a -Wcast-calling-convention on clang.
Issue: wait of the semaphore timedout. However semaphore was properly posted
counter is 1.
To workaround the issue, only throw an error if semaphore counter is 0.
Note: I reduced the timeout to 100ms by threads to avoid huge startup delay
Close#1939