Lioncash (1520): [Android] Add a button in the emulation view that allows a person to exit [Android] Woops forgot a JP TL of a UI string. Merge branch 'master' of https://code.google.com/p/dolphin-emu into androi [Android] Add a JP version of the string for FSAA. Also correct the Englis [Android] Move EmulationActivity.java and NativeGLSurfaceView.java into a [Core] Fix a memory leak in NetPlayServer.cpp in function OnData(). [Android] Fix a situation within the FolderBrowser where the application w [Android] Tiny inline documentation cleanup. [Android] Remove commented out code within EmulationActivity.java. Since t Simplify SwitchPage() within GameListActivity.java. We no longer need the [Android] Return true upon displaying the exit confirmations dialog in Emu [Android] Remove an unnecessary method override from GameListActivity.java [Android] Explicitly specify the allowBackup attribute in the manifest. [Android] Add correct density-sized images of the navigation drawer icon. [Android] Add xxhdpi versions of the file icon and the folder icon used in [Android] Externalize how the formatting is used in the file size string, [Android] Make the GameListFragment extend a ListFragment instead of a Fra [Android] General documentation cleanup and additions. Adjusts the documen [Common] Abstract out the decode5A3Image and decodeCI8Image functions in B [Android] Simplify call for getting the WindowManager instance within Emul [Android] Simplify a string retrieval in FolderBrowserAdapter. [Android] Simplify LayoutInflater retrieval within GameListAdapter, Folder [Android] Make sure to change the title accordingly when coming back from [Core] Simplify a loop within function Run() in Interpreter.cpp. The incre Remove D3D9 related files. [Android] Reflect the string change in the Tegra 4 support commit with the [Android] Remove unnecessary attributes from the ViewPager layout XML file [Android] Remove unnecessary equals comparison in VideoSettingsFragment.ja [Android] Rephrase a comment in VideoSettingsFragment.java. [Android] Change the names of the functions responsible for loading/saving {Android] Eliminate need for even using a byte array when copying assets o Revert "{Android] Eliminate need for even using a byte array when copying [Android] Actually show the currently selected CPU core and video backend [Android] Replace the getter for the adapter backing the GameListFragment [Android] Implement OnSharedPreferenceChangeListener within PrefsActivity. Remove some unnecessary includes. Revert "Remove some unnecessary includes." Fix a filter in the VS project file for JitILCommon-related files. Remove a redundant assignment in Init() within PowerPC.cpp. We already as Remove some unnecessary includes as well as simplifying exisiting ones if Remove some more unnecessary includes, as well as organize a little more. Clean out includes in JitILCommon. Clean out includes from regular JitCommon. Woops forgot to clean out some files in the Jit64IL. All clean now. Clean out unnecessary includes from the DSP JIT. Remove unnecessary include of "../../Core/Src/ConfigManager.h" from Banner Clean up includes in DiscIO as much as possible. Remove some more includes. Add header cstdint to CommonTypes.h Fix Linux build. Really fix the Linux build this time. Fix an issue where my recent changes would cause compilation to fail on so Fix my fix. [Android] Refactor InputConfigFragment a little bit in preparation for the [Android] Documentation typo cleanups from the last commit. [Android] Implement a very basic version of the input overlay configuratio [Android] Slight cleanup for previous commit. Mostly UI adjustments. [Android] The emulation overlay now sets the button positions based upon t [Android] Maintain the chosen button layout when returning to the input ov [Android] Prevent automatic alignments within the overlay configuration se [Android] Fix alignment issues with the overlay config settings. [Android] Add the capability to dynamically enable and disable the input o [Android] Fix the super-mature string that was a placeholder for the title [Android] Improve an if statement check in InputConfigFragment.java. Also [Android] Add the copyright header to some Java source files that were lac [Android] Overlay now works during emulation. [Android] General cleanup. [Android] More cleanup. We don't need the preference to enable/disable the Fix the filter for some files in the Core VS project related to the JitIL. [Android] Get rid of some unnecessary onAttach overrides in AboutFragment, [Android] Bump the targetSdkVersion in the AndroidManifest XML file to 19 [Android] Documentation and some cleanup. [Android] Get rid of some unnecessary variables in the getView() methods o [Android] Indicate whether or not the device supports NEON within the Abou [Android] Externalize the device compatibility warning strings. [Android] Simplify the AboutFragmentAdapter a little bit. [Android] Add ability to take screenshots into the emulation menu. [Android] Fix the handling of orientation changes for the Fragments relate [Android] Eliminate the need to hold a reference to the shown Fragment wit [Android] Change the name of the XML layout file gamelist_folderbrowser_li [Android] Use the ViewHolder design pattern for the FolderBrowserAdapter. [Android] Simplify the AboutFragment view inflating. Considering the backi [Android] Simplify the FolderBrowserAdapter a little, as well as the Fill [Android] Like the previous commit (but for the GameListFragment), don't c [Android] Remove accidental fragment tag in GameListActivity (it was usele Merge branch 'master' of https://code.google.com/p/dolphin-emu [Core] Fix a mismatched dealloc in Render.cpp in the OGL backend. Should b [Android] Expand the input binding UI in the settings to handle 4 Gamecube [Android] Basic UI functionality for enabling/disabling aforementioned Gam [Android] Basic Wiimote binding settings now implemented. [Android] Build the configuration window for the overlay programmatically. [Android] Add Javadoc to InputOverlayDrawableJoystick. [Android] Simplify some things in the overlay. Also Javadoc the new static Fix "Entry Point Not Found crash on Windows Vista" Minor const-correctness for some functions in FifoPlayer and some AudioCom [Android] Simplify resizeDrawable in OverlayConfigButton.java. [Android] Simplify instantiations of OverlayConfigButton.java. Also simpli [Android] Initial implementation of the extended info menu. [Android] Initial introduction of the EGLHelper utility class. Should simp [Android] Finally check if regular OpenGL is possible on devices and displ [Android] Greatly clean up the previous commits. Now here is the long list [Android] Get rid of the version check class in VideoSettingsFragment.java [Android] Parse integer ranges in the GLES3 info tab. [DolphinWX] Prevent hotkeys from being assigned to more than one button/fu [Core] Remove an unnecessary pragma directive from EXI_Channel.h. [Android] Implement CPU info retrieval within the about menu. Fix three limits in GLES2InfoFragment.java. Change the readme to use markdown instead of being a regular .txt file. Fix formatting within the Readme.md. A little more. Update the Readme.md with suggestions and improvements by neobrain. Move the recommended CPU/GPU sentences onto their own indented line in the Add a period in the system requirements list for consistency. Monospace files, folders, keys, and commands within the Readme.md file. Correct the dolphin-emu.org links to use https. Remove two references to DX9 in VideoCommon. Fix an unused variable within function GetScheduledEventsSummary() in Core Light cleanup to a little bit of InputCommon. Replaces much of the iterato Remove some unnecessary comments, as pointed out by Matt_P. Move two macros that literally doesn't change across all JIT platforms (JI Introduce the usage of unique_ptr into the InputCommon ControlEmu.h class. Clean up InputConfigDiag.cpp. Purely stylistic cleanup of Core/HW/WiimoteEmu/Attachment/* files. [VideoCommon] Remove references to now non-existant files OpenCL.h and Ope Remove a pointless c_str() call in FileUtil.cpp. The function takes a stri Change some for+iterator loops in GeckoCode.cpp and GeckoCodeConfig.cpp in Fix name conventions of some of the foreach loop variables. [VideoCommon] Eliminate the function Xchg in Statistics.cpp. std::swap doe Add const qualifiers to two foreach loop variables for consistency. Introduce a generic clamp function to clean up some similarly duplicated c Change the modified parameter in the Clamp function to be a pointer. Simplified GetAreaCode() and GetHardwareModel() to simply use a map in com Add static and const qualifiers to the maps. Remove function StringFromInt from StringUtil.cpp/.h. C++11 has std::to_st Cleanup enum indentations. Clean up some struct indentations Remove function Xchg from SWStatistics.cpp. Like the one previous, this ca Clarify an if statement in NetPlayClient.cpp. See: https://github.com/Laur Replace all include guard ifdefs with "#pragma once" Kill off some silly casting in the FifoPlayer. Clean out some old left-behind quantizer stuff in Jit64/Jit_LoadStorePaire Remove dead else branch in StoreFromRegister() in Jit64/JitRegCache.cpp Remove #if 0 statement in lfd() in Jit64/Jit_LoadStoreFloating.cpp Kill off some usages of the ArraySize macro. Fix some vertical alignments Remove the embedded Console from the possible logging options. Turns out Console.cpp and ConsoleListener.cpp were being built into the Li Remove the leftover folder for Wii IO bridge. Was removed in the mmio merg Second and final pass of clearing out tabs. Convert all includes to relative paths. Scope the Windows include directory to only point to Source/Core/. Fix the OSX build. Fix more header sorting issues in Core/ (now check-includes clean). Fix the Windows build in relation to the recent changes. Forgot to move DSPTool over. Fixed now. Fix the Android build. Fix the Windows build for the final time. Initial removal of the actual console functionality on windows. Purge wx elements of the console. WII_IPC_HLE_Device_usb_kbd.cpp's Update method should return 0, not false, isSameValue in IR.cpp/.h should be returning a boolean value. In UCode_AX.cpp in function HandleCommandList() - case CMD_MIX_AUXB_NOWRIT Unnecessary c_str call in WII_IPC_HLE_Device_es.cpp's OpenTitleContent fun Tiny cleanup to WII_IPC_HLE.cpp. Eliminate the magic constants in the switch statement in WII_IPC_HLE_Devic Fix WII_SEEK_END seeking. Remove another clamp function laying in the codebase and replace it with t Fix a case where the wrong placeholders were being assigned for the up and Rename the JIT function Default() to FallBackToInterpreter(). Communicates Make the base calculation in CheatsWindow simpler. Change the DebugInterface, PPCDebugInterface, and DSPDebugInterface to use Simplify ShowSound() in FileMonitor.cpp. Add two other formats to the list of extensions in IsSoundFile Actually make PPCDebugInterface::ClearAllBreakpoints have functionality. Add ClearAllMemChecks to DebugInterface Mark functions in the PPCDebugInterface and DSPDebugInterface as final. Remove some superfluous arguments from some wx control creations [Android] Remove unnecessary comment from VideoSettingsFragment. [Android] Split the AboutFragmentItem and InfoFragmentAdapter into their o Add a namespace to DSPHost. Add more sound file extensions to FileMonitor's IsSoundFile. Fix DSPTool. Rename assemble.cpp/.h and disassemble.cpp./.h to DSPAssembler.cpp/.h and Fix DSPTool string output for disassembly. [Android] Tidy up the dialog buttons that don't do anything. Simplify boolean toggling in the TASInputDlg. Fix a typo in DSPSymbols. (DisasssembleRange -> DisassembleRange) Kill off some usages of c_str. Make WiiSocket function names conform to the coding style. Clean up FileHandlerARC.cpp/.h Simplify file tree building for the filesystem view. Prevent VideoConfig inheritance. Cleanup a little bit of the PHackSettings. Remove an unnecessary wx translation underscore macro from PHackSettings. Simplify log queue clearing. Remove unused function PanicAlertToVideo from Core.cpp. Mark the audio streams as final. These aren't intended to be continually e Remove usesMixer function from the sound streams. This isn't used anywhere Mark the PPCDebugInterface and DSPDebugInterface as final. Fix a call to a parent class method in InputOverlay. Should have been a ca Fix two untranslated Japanese strings. Provide clearly defined densities of the controller icons. Remove an unused parameter from UpdateDebugger_MapLoaded. Fix include order in EGL.h. Add the algorithm header to a few FifoPlayer cpp files. Remove unnecessary wxT declarations in FifoPlayerDlg. These are not needed Fix assertion fails in FifoPlayerDlg.cpp. Replace use of the deprecated mem_fun function with mem_fn. Move the #pragma once header guard before the includes in Statistics.h in Use size_t in std::string operations in IniFile.cpp, not int Get rid of old wx event type usages. Use recommended replacements Kill off _T and wxT macros Move bn.h and ec.h into the correct filter section Fix a typo in the JIT debugger window Remove an unnecessary null check in CodeWindow.cpp. Fix a struct overflow case in WII_IPC_HLE_Device_hid.cpp Use a bool instead of an int to represent the initialized state in IOWin.c Explicitly center the X and Y joystick values. Use strings instead of arbitrary buffers for video statistics Clarify what FindBrackets does in the DSP assembler Get rid of the temporary buffer in IniFile's Load function. Make GetBPRegInfo just take two strings as parameters Remove the use of a delete[] in NetPlayServer. Remove the min/max functions in CommonFuncs. Compress a for loop in NetPlayServer. Add missing registers in GetBPRegInfo Fix a typo in a BP register name (BPMEM_TX_SETLUT_4 -> BPMEM_TX_SETTLUT_4) Stringify ArmCPUDetect.cpp. Fix a typo in a function prototype in PowerPCDisasm.h Should be GetGPRName Use std::string in LogContainer's constructor. This allows for removal of Use only section-based ini reading. Kill off replaceable usages of s[n]printf. Separate the XML view handling of the folder browser and the game list fro Fix crashes when dragging and dropping files outside of the gamelist Remove the 32-bit config platform from the VS solution and projects Centralize the logging code into its own folder in Common. Fix dragging and dropping savestates in the render window DiscIO: Fix extra tabs in the banner loader headers DiscIO: Centralize the banner pointer and validity boolean into IBannerLoa Get rid of a few delete[] calls in sdio_slot0.cpp [Core] Clean up the DSP disassembler FPS counter cleanup Clean up string handling in Movie.cpp Fix a type-conversion warning in Movie.cpp Android: Remove an unnecessary getString call from EmulationActivity Common: Make DoContainer within PointerWrap private. VideoCommon: Remove some unused constants from VertexShaderGen.h. Common: Using size_t in PointerWrap's DoContainer apparently causes crashe VideoCommon: Get rid of an snprintf call in VideoConfig.cpp Introduce the revised coding style. D3D: Use std::strings for Compile[x]Shader and CompileAndCreate[x]Shader DolphinWX: Remove redundant casts in ISOProperties DolphinWX: Remove a wx 2.9.0 and 2.8.0 version check in GameListCtrl DolphinWX: Bind the drop handling function to the frame with Bind, not Con DolphinWX: Kill off sprintf calls in CheatsWindow.cpp DolphinWX: Remove yet another clamp method DolphinWX: Get rid of an unneccessary cast in CodeWindow DolphinWX: Remove unnecessary true within event Skip calls Change SPADStatus struct name to GCPadStatus DolphinWX: Use non-deprecated flags for the monospace debugger font InputCommon: Use enums instead of defines within GCPadStatus.h DolphinWX: Allow short-hand searching in the code window DolphinWX: Remove the need for an explicit new/delete in ISOProperties Core: Get rid of an unnecessary struct typedef in Boot.h. Core: Fix potential uninitialized var usage in WII_IPC_HLE_Device_usb DolphinWX: Remove the use of some wx 1.0 compatibility functions. DolphinWX: Remove two c_str calls in ISOProperties.cpp. OGL: Correctly guard against array bounds of s_encodingPrograms Correct the function casing for DPL2Decoder Remove some unnecessary defines in Log.h CMakeLists: Increment the minimum required version of wxWidgets Core: Correct some function casings. DolphinWX: Implement scrolling in the code view and DSP disassembly view. DolphinWX: Mild readability clean up of CodeView. Core: Remove unused function Callback_ISOName() Core: Fix bounds checking within GCMemcard.cpp. DolphinWX: Enable certain Code View context options only when the core is Core: Fix warnings in JitRegCache DolphinWX: Implement scrolling in the memory views DolphinWX: Move some public variables to be private in CodeView Core: Make CPU_POWERDOWN the initial CPU state. DolphinWX: Fix a possible crash when setting debugger memory values. DolphinWX: Fix a double truncation warning in InputConfigDiagBitmaps Clarify that WiimoteEmu::Spy is intended for debugging purposes Get rid of a few C-style struct declarations InputCommon: Include the algorithm header in ForceFeedbackDevice Core: Fix the license headers for Memmap.h and SystemTimers.h/.cpp Core: Get rid of the void handle parameter for DSP initialization Core: Use param padState instead of a global in SetInputDisplayString Core: Remove the ratio parameter in Zelda UCode's SizeForResampling func Core: Fix a possible overflow in EXI_DeviceIPL Core: Use character literals within EXI_DeviceIPL Core: Remove the unused cycle parameter from DSPHLE update calls Remove fakepoll.h. Fix a style guide oversight Clarify the preferred prefix form to be within loops in the style guide Core: Turn some includes into forward declarations. Core: Use the enum constant for an invalid reg in JitRegCache Core: Remove defines used to work around an MSVC 2005 bug Core: Use a std::string in EXI_DeviceIPL instead of a char buffer Convert some more header inclusions into forward declarations Android: Remove an unused variable from MainAndroid.cpp Really get rid of the MSVC 2005 workaround completely Core: Use an enum for the Gekko exception flags instead of defines Common: State OS instead of 32/64 bit in the netplay lobby DolphinWX: Remove the Projection Hack UI Common: Simplify StripTailDirSlashes Core: Fix Y-data not being assigned in Drums.cpp Core: Get rid of a cast in JitRegCache.cpp Core: Fix cast warnings in DSPJitRegCache Core: Remove now redundant assert conditions in some DSPJitRegCache functi Core: Remove using statements from the Jit and Interpreter headers Core: Clean up coding style in the Interpreter DolphinWX: Use a regular wxMessageBox instead of a PanicAlert for non-pani Core: Remove unused parameters in Movie DolphinWX: Remove an unused variable from ISOProperties Core: Fix warnings on Linux related to the JIT Core: Kill off an unused parameter for NetPlayServer::StartGame Core: Fix formatting warnings in DSPJitRegCache Core: Fix usages of NULL and 0 literals for pointers in GCMemcardDirectory AudioCommon: Get rid of some unnecessary mem_fn calls AudioCommon: Remove an unnecessary parameter from the OpenAL constructor Fix a cast warning when compiling with MSVC Isolate D3D and Software Renderer from wxWidgets code Core: Get rid of Host_GetInstance() Common: Introduce the new Gekko disassembler to Common. Revert "Fix hotkeys in Linux and Mac OS X" DolphinWX: Ensure the code view string vector is always a size of two. DolphinWX: Make the software renderer text translateable Core: Remove unused file DSPJitUtil.h Core: Default initialize a pointer to nullptr in gdsp_do_dma() Core: Fix a leak on OSX that could occur in IOdarwin.mm Core: Fix two more potential memory leaks within IOdarwin.mm Common: Use the OSX equivalent byte-swap functions Core: Kill off Host_UpdateBreakPointView() UnitTests: Get rid of now-nonexistent Host_GetInstance() within StubHost Core: Kill off Host_UpdateLogDisplay() D3D: Remove an unnecessary call to Host_GetRenderWindowSize() WGL: Get rid of the use of the Host_GetRenderWindowSize() call. AGL: Remove the call to Host_GetRenderWindowSize(). GLX: Remove all Host_GetRenderWindowSize calls. Core: Get rid of function prototypes in ActionReplay.cpp Core: Get rid of calls to mem_fn in thread instantiations Core: Get rid of C-style struct typedefs DolphinWX: Fix scrolling in hex mode for the memory view Software: Get rid of an unnecessary format string in SWmain.cpp Core: Fix case where a panic alert wouldn't be shown in MemoryUtil.cpp Core: Actually show MemoryUtil.cpp allocation error messages on Linux Core: Remove leftover Windows 32-bit functions in MemArena.cpp Software: Make constants char_width and char_height private in RasterFont Software: Make an enum into a static constant in DebugUtil.cpp Software: Fix various brace styling errors Software: Fix the formatting and function casing in Vec3.h Software: Fix function casing in TextureEncoder Software: Apply static to some functions Software: Fix over-indentation of SetupQuad() Software: Fix some if-statement body placements Software: Fix function casing in SWRenderer Common: Fix AsciiToHex returning true on overflow values DolphinWX: More readable variable names in BreakpointView DolphinWX: Fix variable styling in BreakpointView InputCommon: Don't base default radius of analog sticks off of their name. OGL: Fix brace and body placements OGL: Clean up parameters for some functions. OGL: Add static to a function in NativeVertexFormat Core: Kill off Host_ShowJitResults OGL: Get rid of an unnecessary WIN32 ifdef in main.cpp Common: Get rid of StdConditionVariable, StdMutex, and StdThread. Common: Add Flag.h to the Visual Studio project. OGL: Removed some unnecessary preprocessor directives from Render.cpp. Get rid of instances of "using namespace std;" in the project DolphinWX: Use the typesafe equivalents for declaring wx event types Core: Fix vertical alignment of a table in DSPTables.cpp Core: Clean up body/brace placements in Jit64 and JitCommon Core: Change "unsigned result" to "u32 result" in rlwinmx for Jit64 Core: Clean up body/brace placements in JitArm32 Core: Clean up brace/body placements for JitIL Core: Better assert messages for stx op Core: Join a few if statements in IR.cpp DolphinWX: Get rid of unnecessary hotkey code. Core: Removed blank headers Boot_ELF.h and Boot_WiiWAD.h Core: Simplify Memory::GetString UnitTests: Remove now non-existent UpdateStatusBar from StubHost. DolphinWX: Move the CodeView debugger view over to wxGraphicsContext DolphinWX: Parenthesize some expressions in CodeView.cpp DiscIO: Make the unordered set in IsSoundFile static DiscIO: Move VolumeDirectory off of raw pointers DiscIO: Get rid of unnecessary struct differencing Core: Change a bitwise OR fail case to a logical AND success check in Acti Get rid of C-style empty function parameter indicators Common: Clean up brace placements AudioCommon: Clean up brace placements DiscIO: Clean up brace placements InputCommon: Clean up brace placements VideoCommon: Clean up brace placements D3D: Clean up brace placements DolphinWX: Clean up brace placements Core: Clean up brace placements PPCAnalyst: Use std::swap instead of making a temporary variable Core: Fix potential uninitialized variable warnings in Wii_IPC_HLE_Device_ AudioCommon: Declare iterator variable in loop body in DPL2Decoder AudioCommon: Get rid of now unused handle param for InitSoundStream() Core: Break movie header validity checking into a function InputCommon: Rename class InputPlugin to InputConfig DiscIO: Move some raw pointers over to unique_ptr DolphinWX: Fix exporting of Wii save files DolphinWX: Use normal instantiation of wxTimer in HotkeyDlg DiscIO: Prefix class member variables with "m_" DolphinWX: Get rid of unnecessary getName function in LogWindow DolphinWX: Get rid of an snprintf call in ISOProperties DolphinWX: Change a wx Printf call to a Format call Common: Remove unnecessary "using namespace Gen;" from x64emitter Common: Make the LUTs in ColorUtil static Common: Remove unnecessary define check in Log2 Common: Make TITLEID_SYSMENU a static const variable in NandPaths.h OGL: Fix constant casing in RasterFont OGL: Make rasters 2D array static in RasterFont Core: Initialize all JITIL RegInfo members in the initializer list. VSProps: Add C4351 to the list of disabled warnings in Base.props Core: Fix variable prefixing of statics in Core.cpp Common: Remove unused header from Thread.cpp Core: Make the tables in ARDecrypt.cpp static DolphinWX: Simplify wiki link construction Common: Fix a potential infinite loop in ReplaceAll AudioCommon: Remove unused parameter from OpenSLESStream constructor AudioCommon: Make WaveFileWriter inherit NonCopyable Common: Remove HAVE_CXX11_SYNTAX define from Common.h DolphinWX: Fix Wii save importing Common: Kill off duplicate log warning definitions AudioCommon: Use std::string for the filename parameter of StartLogAudio Common: Inline declare some loop variables in ArmEmitter DolphinWX: Remove unnecessary unique_ptr get calls in InputConfigDiag DolphinWX: Use std::string over char arrays in MemoryView AudioCommon: Remove unnecessary usages of mem_fn InputCommon: Remove unnecessary breaks in XInput's GetName function Common: Remove unused variable in MemoryMap_Setup Common: Fix code styling in Arm64Emitter DiscIO: Simplify GetUniqueID in VolumeDirectory DiscIO: Get rid of some casts and a c_str call in VolumeDirectory Remove some unnecessary semicolons DiscIO: Remove unnecessary break statements. DolphinWX: Get rid of fallthrough in ScanForISOs ARM64: Make getters within ArithOption const. UnitTests: Fix misplaced braces in the x64Emitter tests InputCommon: Initialize NSDictionaries using literal syntax. Kill off the wx casts within InputCommon and GLInterface. DolphinWX: Fix GC/Wiimote input windows randomly crashing on OSX FrameTools: Set focus on Windows via CFrame::SetFocus DolphinWX: Get rid of an explicit delete in OnExportSave VideoCommon: Make zfreeze in GenMode 1 bit in size VideoCommon: Fix function casing in FrameBufferManagerBase Fix building Dolphin on OSX without precompiled headers DolphinWX: Fix the memory view in the debugger DolphinWX: Fix case where the debugger would crash on hiding a pane. DolphinWX: Fix the video dialog crashing Dolphin on OSX Android: Silence a few warnings OGL: Get rid of explicit deletes in RasterFont Fix some warnings on Linux Core: Fix SIGABRT possibility in EXI_DeviceGecko ISOProperties: Fix typo in the tooltip for manual config editing. CoreParameter: Use unique_ptr in place of raw pointers CoreParameter: Kill off an snprintf usage SI: Fix bounds check in GetDeviceType DSPJitRegCache: Merge two loops in popRegs. DSPJitRegCache: Use std::array to represent the register arrays Jit_Integer: Get rid of some cast noise in boolX Core: Move FPSCR exception flags to a typed enum NetPlayClient: Remove unused macro AudioCommon: Prefix soundStream global with g_ WiiSaveCrypted: Move some function params over to std::string Jit64: Change a NULL to nullptr DolphinWX: Fix double-spacing in some UI strings TrampolineCache: Remove unnecessary cast DolphinWX: Make WXInputBase part of the WxUtils namespace. Fifo: Fix tab/space mismatches VolumeGC: Use regular return type declaration for GetStringDecoder Android: Use apply() instead of commit() for SharedPreference changes. PPCAnalyst: Remove unnecessary casts JitCache: Use std::array to back the arrays within it. AVIDump: Add missing CoreTiming header VolumeCreator: Make master key arrays static ControllerEmu: Get rid of redundant string appending Software: Remove obsoleted VideoConfigDialog. TASInputDlg: Fix some potential uninitialized variable warnings. Core: Use an enum for indicating CPU cores Readme: Add a link to the Transifex page ControllerInterface: Get rid of SetHwnd(), introduce Reinitialize() Remove unused filter in DolphinWX vcproj file. TASInputDlg: Apply m_ prefix to class member variables. DolphinWX: Split cheat window components into their own source files CheatsWindow: Remove unnecessary wxPanel in the wxDialog DolphinWX: Reimplement cheat listbox updating, but without a global CheatsWindow: unfriend CreateCodeDialog. Debugger: Fix class indentation TASInputDlg: Pass string by reference for CreateStickLayout CheatSearchTab: Use a wxRadioBox for data sizes CoreParameter: Fix initializer list order AGL: Use NSOpenGLContext's clearCurrentContext in ClearCurrent GLUtil: Change return type from GLuint to GLenum for OpenGL_ReportGLError. TextureCache: Get rid of explicit deletes in SaveTexture BitField: Fix a typo in the sample usage. CheatSearchTab: Fix signed/unsigned comparison warning CheatsWindow: Remove unnecessary header includes and forward decls CheatSearchTab: Make cheat list display in monospace font DolphinQt: Make GetOS const OGL: Get rid of error macros EXI_DeviceIPL: Fix vertical alignment of IPL arrays EXI_Channel: Use an enum for read/write modes Make some OSX-only functions static FileSystemGCWii: Shorten some string concatenations VolumeDirectory: Pass std::string by reference for SetUniqueID/SetName BootManager: Get rid of unnecessary forward declaration CheatSearchTab: Improve localization possibilities for a string DSPAnalyzer: Use a std::array for the code flags SI_Device: Make GetDeviceNumber and GetDeviceType const. GCPadEmu/WiimoteEmu: Make some arrays static GCMemcardDirectory: Pass std::strings by reference. Interpreter: Remove a redundant macro VideoCommon/VideoBackends: Remove unnecessary wxWidgets references. CheatSearchTab: Use a more specific event type for ApplyFocus DolphinWX: Make the TAS dialog window titles translatable. TASInputDlg: Use Bind over Connect for event handling Core: Fix potentially uninitialized variable warnings Interpreter: Remove dead patches() function DolphinWX: wx-ify the unofficial version warning Host: Kill off Host_SysMessage TASInputDlg: Narrow a variable scope in UpdateFromText PPCCache: Make PLRU lookup tables static DolphinWX: Eliminate most usages of event tables in the debugger. Remove unnecessary cstdarg header includes Main: Explicitly use the HTTPS site URL. Movie: Get rid of unnecessary explicit memcpys DolphinWX: Remove unnecessary forward declarations DolphinWX: Kill off trivial event tables NetPlayDiag: Make the window title translateable NetPlayDiag: Get rid of event table NetPlayDiag: Get rid of unnecessary text limit check DolphinWX: Eliminate some memory leaks FrameAui: Allow notebook tabs to be rearranged in the parent notebook. MemoryView: Fix a dealloc of a stack reference LogWindow: Fix the timer event bindings Android: Compress an if statement in FolderBrowser Android: Prevent instantiation of utility classes AndroidManifest: Increment the minimum and target SDK values Android: Support RTL language translations Android: Remove unused imports in GameListItem ISOFile: Get rid of a delete call WatchView: Pass string by reference in SetWatchName Core: Join some variable declarations and assignments Android: Use a PagerTabStrip instead of the ActionBar. Host: Kill off GetRenderWindowSize WxUtils: Get rid of GetCurrentBitmapLogicalScale InputConfigFragment: Use a StringBuilder for string concatenation AboutFragmentItem: Remove incorrect javadoc tag DolphinWX: Fix button handling for AR codes DolphinWX: Fix patch removal VideoOGL: Move X11 wxWidgets utilities to DolphinWX Arm(64)Emitter: Make some variables static WiimoteConfigDiag: Move GameCube controller settings over WiimoteConfigDiag: Split UI sizer creation into their own functions. WiimoteConfigDiag: Fix assertion problems on non-OSX OSes. WiimoteConfigDiag: Remove trailing whitespace WiimoteConfigDiag: Size the config buttons correctly WiimoteConfigDiag: Unify controller menu with the GameCube controllers. WiimoteConfigDiag: Rename to ControllerConfigDiag. ControllerConfigDiag: Remove now obsolete TODOs ControllerConfigDiag: Disable controller type changes if netplay or a movi DolphinWX: Add new icon for the controller menu. ControllerConfigDiag: Fix Linux builds InputConfigDiag: Clean up dialog title translation handling WII_IPC_HLE_Device_fs: Remove unused macro constant DolphinWX: Specify wxID_ANY where -1 is used in controls FrameTools: Fix dimming of controller settings menu item DolphinWX: Fix assertions when using Boomy Jit: Remove unnecessary include DiscIO: Remove some explicit deletes Common: Remove locale based functions from CommonFuncs. TASInputDlg: Remove unnecessary wxWidgets default values. TASInputDlg: Replace some for loops with range-based for loops. TASInputDlg: Fix a typo in layout alignment flags TASInputDlg: Eliminate the usage of some spacers. FifoRecorder: Use std::vector for m_Ram and m_ExRam MemoryWindow: Remove wxSprintf call, use wxString::Format instead. ControllerConfigDiag: Potentially fix scaling problems on high DPI Android: Remove unnecessary context variable in SliderPreference Android: Fix a warning regarding a string in the slider layout Android: Use findViewById instead of getChildAt Android: Fix a typo (Depthn -> Depth) SI_DeviceKeyboard: Remove superfluous virtual specifiers. Core: Add the GCKeyboard source files to the GCKeyboard VS filter GCKeyboardEmu: Use range-based for loops for iterating the key arrays Coding style cleanup from the zfreeze merge EXI_DeviceAGP: Pass string by reference InputConfigDiag: Fit buttons to their text DSPDebugWindow: Fix issue where the DSPLLE window would hang Dolphin on OS Use unique_ptr for some IVolume instances OGL: Fix a memory leak that would occur every time a game is launched Memmap: Fix switch fallthroughs Use emplace_* functions where in-place construction is preferable OnScreenDisplay: Allow for different colored messages WiimoteEmu: Change define into a variable and move it to where it's used. DolphinWX: Get rid of unnecessary Destroy calls Core: Move several files into the correct VS directory filter DolphinWX: Change Enable(false) calls into Disable() where possible DolphinWX: Remove unnecessary wxBeginBusyCursor and wxEndBusyCursor calls PowerPC: Document the instruction table flags PowerPC: Remove unused enum values PPCTables: Correct some flag descriptions PPCTables: Remove an unnecessary forward declaration PPCTables: Simplify UsesFPU PowerPC: Get rid of magic numbers related to interp/JIT initialization. Interpreter: Remove unnecessary prototypes and includes Interpreter: Use correct destination for eciwx Interpreter: Use FL_IN_A0B for ecowx Interpreter: Use Helper_Get_EA_X() for eciwx and ecowx Interpreter: Use correct destination for psq_l, psq_lx, psq_lu, and psq_lu Interpreter_Tables: srawix only uses rS, not rS and rB. Interpreter: Rearrange ordered/unordered compares Interpreter: Set the FPCC bits correctly for ordered/unordered FP compares DolphinWX: Remove unnecessary Windows-specific code in Frame.cpp Interpreter: Uncomment code related to cmp and cmpl Interpreter: Fix Helper_UpdateCR1 DolphinWX: Make RAM watch strings translateable DolphinWX: Remove unnecessary control IDs DolphinWX: Use AUI in the code window. DolphinWX: Relocate the address search into the code window DolphinWX: Remove an unnecessary sizer from the watch window PixelShaderManager: Remove unnecessary casts. DolphinWX: Clean up some wxTimer code DolphinWX: Allow input subsystems to correctly deinitialize Interpreter_Tables: Fix wrong flags and add missing ones PPCTables: Remove FL_OUT_S. DolphinWX: Break up ConfigMain.cpp into separate classes DolphinWX: Eliminate remnants of the event table in ConfigMain DolphinWX: Propagate event to refresh the game list x64FPURoundMode: Make a look-up table static Interpreter/JIT: Add missing overflow variants into the tables. Interpreter/Jit Tables: Merge table31 and table31_2 x64Emitter: Remove emitter pointer parameter from WriteNormalOp. DolphinWX: Initialize the HotkeyManager after input backends are initializ Core: Fix warnings related to HotkeyManager DolphinWX/Common: Change some find_first_of usages to find DolphinWX: Get rid of wxGrid-based casts in the debugger. ConfigManager: Fix a sign mismatch warning DSPInterpreter: Remove unused volatile variable and related function TASInputDlg: Remove unnecessary explicit bools Debugger: Fix memory leaks related to grid tables DolphinWX: Fix memory leaks relating to the TAS dialog HotkeyDlg: Get rid of application-wide event bindings. ISOProperties: Remove unnecessary/unused variables & controls. DolphinWX: Break the netplay UI controls into separate classes. D3D: Remove dependency on wxWidgets Debugger: Update the registers/watches before refreshing grids. General: Apply the const specifier where applicable PerfQueryBase: Move common implementation variables into base class Core: Don't display on-screen messages via DisplayMessage until emulation DiscIO: Add a missing header to Volume.h FrameTools: Use AppendRadioItem for constructing the frameskip menu GPFifo: Remove unused parameters from Write[x] functions DolphinWX: Remove superfluous code in FrameTools DolphinWX: Make some debugger functions/vars private DolphinWX: Make some general UI functions/vars private InputCommon/Core: Get rid of some virtual destructor warnings Interpreter_LoadStorePaired: Silence uninitialized variable warnings TextureDecoder_Common: Add missing algorithm include FrameTools: Simplify some wx string translation marking DolphinWX: Remove unnecessary forward declarations VideoConfigDiag: Simplify string translation handling AboutDolphin: Remove unnecessary code AboutDolphin: Set the multi-line style for branch information OGL: Get rid of some explicit deletes in Render OGL: Join declarations and assignments in Render DolphinWX: Remove unnecessary includes Core: Remove some header inclusions in header files AudioCommon: Migrate threadData to OpenALStream and AOSoundStream HotkeyDlg: Fix keypress event binding Contributing.md: Fix a typo Mixer: Convert volatile variables to atomics. AlsaSoundStream: Convert volatile variables to atomics AlsaSoundStream: Use an enum class for signifying ALSA thread state WiiConfigPane: Handle switch cases explicitly WII_IPC_HLE_Device_hid: Fix a function name typo Software: Convert most volatile variables to atomics JitWindow: Add missing virtual destructor to HostDisassembler ButtonManager: Pass strings by const reference WII_IPC_HLE_Device_net: Fix a leak with getaddrinfo ExpressionParser: Add missing break in UnaryExpression value setting WiiWad: Use correct form of delete for arrays DolphinWX: Add missing breaks to a switch in RegisterView NetPlayClient: Fix reassembling of system time from packets NetPlayClient: Rename time variables to be more self-explanatory DSPCaptureLogger: Add virtual destructor GekkoDisassembler: Fix disassembly of mtfsf's FM field GekkoDisassembler: Fix typecast for the second printf param for mtfsf SoundStream: Internally construct the mixer SoundStream: Devirtualize GetMixer AudioCommon: Add missing override specifiers SoundStream: Devirtualize StartLogAudio and StopLogAudio NetPlayClient: Remove unnecessary array allocation FifoQueue: Use atomics instead of volatile members Thread: Remove unused Barrier class Fifo: Replace usages of volatile with atomics DSPCore: Make the mailbox registers atomic. PixelEngine: Replace volatile usages with atomics CommandProcessor: Replace volatile usages with atomics Pass strings by const reference where possible x64Emitter: Adjust position of reference and pointer indicators x64Emitter: Remove 'Gen::' namespace prefix from some parameters x64Emitter: Pass some OpArg parameters by const reference Jit_Util: Make some OpArg parameters const references Interpreter: Remove unused function prototype Core: Pass several parameters by const reference PPCAnalyst: Mark some functions as const PPCAnalyst: Remove extra whitespace from CodeBuffer JitArm64_RegCache: Make some functions const Arm64Emitter: Make GetReg() const Jit: Make IsInCodeSpace() const Core: Convert volatile bools to atomics WII_IPC_HLE: Remove a silly volatile usage EXI_DeviceEthernet: Convert a volatile bool to an atomic Common: Fix a typo in the VS project file Common: Fix typos in BlockingLoop.h Arm64Emitter: Remove unused variable from EncodeLoadStoreRegisterOffset DolphinWX: Remove the Toggle IR hotkey. HiresTextures: Remove unused variable JitRegCache: Get rid of an unnecessary cast RenderBase: Remove an unused variable VertexLoader: Remove the LOADERDECL define. Hash: Remove the HashFNV prototype Mixer: Devirtualize DTK and DSP audio logging functions Mixer: Fix erroneous global prefixes on class variables Add an OSD notification for screenshot saving Add an OSD notification for screenshot saving Use emplace() instead of insert() where applicable for maps. Arm64Emitter: Add a missing const specifier for an array table MMIO: Add missing override specifiers Core: Change a volatile into an atomic DSPInterpreter: Remove an unused typedef WiimoteEmu: Fix use of spaces. Core: Use clamps for nunchuk and wiimote x,y,z values VertexLoaderBase: Adjust the scope of a boolean variable DolphinWX: Pass string by const reference in CISOProperties constructor Core: Pass string by const reference in SaveScreenShot DolphinWX: Get rid of some magic numbers in MemoryView and MemoryWindow SI_DeviceGCController: Remedy undefined behavior regarding shifts PathConfigPane: Use shortened variants of the browse buttons JitWindow: Use TitleCase for the JIT block viewer tab DolphinWX: Remove unused code from MemcardManager PostProcessingConfigDialog: Remove an unnecessary format call GeckoCode: Remove GetAddress function prototype UICommon: Pass string by const reference for HostDisassemblerLLVM CPUDetect: Remove a memset call on the this pointer Remove unnecessary virtual keywords UICommon: Fix a leak/bug in Disassembler retrieval CheatSearchTab: Convert wxListBox into a wxListView CheatSearchTab: Display floating point equivalent results AudioCommon: Log to AUDIO, not DSPHLE AudioCommon: Remove unused code from XAudio streams Arm64Emitter: Fix encoding of '2-reg misc' variant of FCMEQ CheatSearchTab: Make the search results list auto update address values CheatSearchTab: Simplify functionality JitInterface: Fix null checking in GetProfileResults NetPlayProto: Minor cleanup NetPlay: Use std::array for the pad mappings DolphinWX: Fix memory leaks occurring in ISOProperties Frame: Remove an unused enum and array Debugger: Remove unused instance variables VertexShaderManager: Remove unused parameter TextureConversionShader: Remove an unused parameter NetPlay: Return mapping arrays and player list vectors directly NetWindow: Minor simplifications ChangeGameDialog: Internally set the chosen game name NetWindow: Replace old wx event binding types NetWindow: non-ugly way to check for window focus NetWindow: Remove translation marker from empty string NetPlayClient: Correctly free packet data Frame/TASInputDlg: Remove unused functions IniFile: Mark getter functions as const Jit: Remove unnecessary namespace prefixes x64Emitter: Make WriteModRM and WriteSIB private x64Emitter: Remove unused code Interpreter_FloatingPoint: Use std::isnan instead of IsNAN MathUtil: Remove IsNAN and IsINF x64Emitter: Remove pointer casts from Write{8,16,32,64} functions Core: Shorten the _interpreterInstruction typedef Jit64/JitIL: Relocate instruction typedefs Core: Move includes out of instruction table headers Memmap: Remove pointer casts GCMemcard: Clean up memcard logging messages. Main: Move commandline parsing handling to appropriate override functions Main: Move unofficial build check to its own function Main: Make the wxLocale class member a unique_ptr DataReader: Get rid of pointer casts Vec3: Remove a memset call on the this pointer Vec3: Simplify operator== code Jit_Util: Add missing override specifiers Hash: Narrow define scope MemcardManager: Correct class indentation MemcardManager: Minor cleanup of header code MemcardManager: Remove trivial explicit delete and new VertexLoader_Color: Get rid of some pointer casts VertexLoader_Color: Mark translation-unit-local functions static VolumeCreator: Use a unique_ptr in CreateVolumeFromFilename VolumeCreator: Fix a typo in VolumeKeyForPartition's name BPMemory/XFMemory: Convert defines to enums PixelShaderGen: Move defines into the implementation file PixelShaderGen: Use spaces instead of tabs for vertical alignment FramebufferManagerBase: Compress a loop into a find_if GPFifo: Adjust parameter names GPFifo: Get rid of pointer casts ActionReplay: Remove an alloca call Core: Use constexpr for default pad and attachment radius BitField: Enable ifdef'd out code for Windows CommonFuncs: Replace ArraySize define with constexpr equivalent Readme: Specify that VS 2015 is to be used instead of VS 2013 CommonFuncs: Remove SLEEP macro CommonFuncs: Remove define for snprintf General: Toss out PRI macro usage General: Remove unimplemented function prototypes Add missing override specifiers VolumeGC: Initialize a variable HLE_Misc: Remove unnecessary headers WII_Socket: Make the copy-assignment operator deleted Common: Remove StdMakeUnique.h CMakeLists: Bump C++ compilation from gnu++0x to c++1y General: Replace GC_ALIGN macros with alignas DiscIO/VS: Remove an empty filter x64Emitter: Simplify/compress some conditionals Common: Alter semantics of the NonCopyable mixin EXI_DeviceIPL: Get rid of a pointer cast ExpressionParser: Make all control paths return a value in operator std::s Partially revert "General: Toss out PRI macro usage" MathUtil: Convert Clamp into a constexpr function MathUtil: Convert IsPow2 into a constexpr function LookUpTables: Make functions constexpr BreakPoints: Remove unimplemented function declarations VideoCommon: Remove unnecessary enum typedef AX: Use ArraySize over sizeof division Common: Get rid of a few pointer casts JitCache: Get rid of pointer casts State: Increase savestate version JitCache: Remove unused define Jit_Util: Mark a class function as const Rasterizer: Use multiplication instead of shifts in DrawTriangleFrontFace x64Emitter: Remove pointer cast VertexLoaderUtils: Get rid of pointer casts ControllerInterface: Fix -Winconsistent-missing-override warnings on OSX Gekko: Make sign-extension functions constexpr DSPJitRegCache: Fix function casing DSPJitRegCache: Make GetFreeXReg return by value DSPJitUtil: Use SCALE constants instead of magic numbers Jit_Util: Replace two MDisp usages with MatR DiscIO: Do swapping in GetTitleID implementations x64Emitter: Make single argument constructor explicit x64Emitter: Remove unimplemented function prototype in OpArg SI_Device: Convert define constants over to enums BoundingBox: Remove unnecessary headers CommandProcessor: Remove unused extern Common: Get rid of compiler semantic asserts Atomic_GCC: Throw out old code Common: Move NonCopyable to its own header Common: Remove strdup define Common: Move asserts to their own header Common: Remove other Common prefixed headers from Common.h CodeWindow: Replace wxStaticText/wxTextCtrl combo with a wxSearchCtrl CodeWindow: Ignore search error highlighting on empty string MemoryWindow: Change the address search wxTextCtrl into a wxSearchCtrl MemoryWindow: Adjust control alignment VolumeGC: Get rid of banner pointer casts Get rid of some casts used with logging for size_t FPSCounter: Don't provide direct access to m_fps FPSCounter: Direct initialize class members FPSCounter: Give the refresh interval a concrete type FPSCounter: Change Update's return type to void OGL: Remove unnecesary FPSCounter include from Render.cpp TextureDecoder_x64: Remove clang warning suppression TextureDecoder_x64: Remove unnecessary commented out header WII_IPC_HLE_Device_fs: Get rid of a pointer cast ChunkFile: Provide additional helpers for C-style arrays Tev: Don't savestate Zero16 InputCommon: Get rid of multiple identical define macros ControllerConfigDiag: Amend button sizing issues ControllerConfigDiag: Remove superfluous arguments DSPCore: Use std::array to represent ifx_regs DSPCore: Compress common fill loops into std::fill DSPCore: Get rid of division for determining array size in VerifyRoms WiimoteEmu: Get rid of an unused clamp function InputCommon: Use NSNumber numeric literals in Obj-C code pch: Update MSVC version check Core: Replace 0 literals with nullptr ControllerEmu: Use make_unique over raw new DSPHWInterface: Use an enum for indicating mailbox type EXI_DeviceAGP: Remove unnecessary headers CPU: Convert CCPU into a namespace DSPCore: Convert defines over to enums DSPIntCCUtil: Mark translation local functions as static DSPIntCCUtil: Remove unused function GetMultiplyModifier NANDContentLoader: Replace a string rbegin() call with a back() call DSPEmitter: Rename Default() to FallBackToInterpreter() ConfigManager: Get rid of an unnecessary smart-pointer get() call StreamADPCM: Convert into a namespace UCodes: Get rid of pointer casts UCodes: Simplify ExramRead VertexShaderManager: Get rid of float pointer casts VertexShaderManager: Get rid of other magic constants DSPHLE: Remove duplicated struct Core: Move a global into a namespace FifoAnalyzer: Replace loop with std::accumulate MathUtil: Default initialize Rectangle class data members MathUtil: Make Rectangle constructors and equality operator constexpr WII_IPC_HLE: Remove unused typedef TextureCacheBase: Change CacheLinesPerRow to BytesPerRow Arm64Emitter: Mark trivial functions as constexpr Arm64Emitter: Get rid of a pointer cast DSPRegCache: Class access level formatting DSPJitRegCache: Make the allocation array part of the DSPJitRegCache class InputConfig: Clean up controller management ISOFile: Get rid of explicit deletes WaveFile: Get rid of an explicit delete WII_IPC_HLE_Device_usb: const correctness for function parameters NullSound: Replace header define with private constant NullSound: Use std::array for the buffer Rasterizer: Get rid of a trivial pointer cast Rasterizer: Get rid of a clamp macro Rasterizer: Convert BLOCK_SIZE into a constant variable Rasterizer: Specify internal linkage on Draw Rasterizer: Mark some references as const EXI: Use std::array and std::unique_ptr for managing channels DiscIO: Make factory methods return unique_ptrs DiscIO: Get rid of a few explicit deletes Interpreter: Remove underscore from frsp's parameter Interpreter: Update CR when FRSP's record bit is set Jit: Fall back to interpreter when frsp's record bit is set Interpreter: Get rid of some aliasing casts EXI_Device: Get rid of explicit delete and new SI: Get rid of explicit delete and new NANDContentLoader/WiiWAD: Get rid of raw delete and new Volume: Make GetTMD return a vector VideoBackends: Simplify initialization and deinitialization of resources StreamBuffer: Remove unnecessary inline specifiers StreamBuffer: Use std::array for fences StreamBuffer: Correct function casing StreamBuffer: Make factory function return a std::unique_ptr FramebufferManagerBase: Get rid of explicit delete and new FramebufferManager: Get rid of raw new and delete Render: Get rid of explicit new and delete VertexLoaderBase: Get rid of explicit delete and new Fifo: Convert define into constant ShaderGeneration: Get rid of static buffers ShaderGenerators: Remove unnecessary inline keywords ShaderGenCommon: Remove unnecessary static keywords HiresTextures: Remove unnecessary header includes HiresTextures: Make Load return a unique_ptr HiresTextures: Remove the need to explicitly free SOIL allocated data DSPCore: Make the DSP emitter global a unique_ptr DSPCore: Prefix globals with g_ ProgramShaderCache: Simplify SHADERUID comparison operators GLInterface: Add missing override specifiers WGL: Make class member private GLInterfaceBase: In-class initialize protected members GLInterface: Make GLInterfaceMode an enum class OnScreenDisplay: Make CallbackType an enum class VideoBackend: Get rid of a boolean global OGL: Correct unique_ptr types JitInterface: Get rid of a global variable Interpreter: Remove unnecessary includes from Interpreter.h MemTools: Get rid of a global variable HLE: Move static variable out of header ARM Jit: Use std::tie for SlowmemHandler comparison Jit: Get rid of indirect includes HW: Remove unnecessary header inclusions Mixer: Devirtualize Mixer: Directly initialize class members Mixer: Convert defines into concrete variables VideoCommon: Header cleanup DSPEmulator: Make CreateDSPEmulator return a unique_ptr VideoInterface: Fix code style/indentation VideoInterface: Change a global into a translation-unit local variable VideoInterface: Correct namespace indentation VideoInterface: specify internal linkage on local variable DVDInterface: Make a global a local variable TextureCacheBase: Simplify init/comparison of TCacheEntryConfig RenderBase: Get rid of an undefined global extern CPMemory: Remove unnecessary extern specifiers from functions OpcodeDecoder: Add namespace DVDInterface: Use correct prefix for static local variables NetPlayClient: Remove unnecessary includes NetPlayClient: Make is_connected private NetPlayClient: Make m_state private NetPlayClient: In-class initialize variables where possible NetPlayClient: Make SendAsync take a unique_ptr as a parameter NetPlayClient: Extract control mapping checking to its own function NetPlayClient: Deduplicate code for player list retrieval NetPlayClient: Use std::array instead of C arrays for buffers Fifo: Make g_bSkipCurrentFrame a TU-local variable Fifo: Make g_use_deterministic_gpu_thread a TU-local variable Fifo: Get rid of undefined global BootManager: Simplify SaveConfig BootManager: Vertically align where sensible to do so VideoCommon: Convert some DataReader includes into forward declarations Memmap: Make the MMIO mapping a unique_ptr D3DBase: Fix missing return statement ShaderCache: Remove unnecessary null checks ShaderCache: Remove unnecessary template type specifications NativeVertexFormat: Use in-class initialization NativeVertexFormat: Add missing override specifier D3DStreamBuffer: Use size_t within the class interface D3D12: Get rid of safe deletion macros VideoBackendBase: Store video backends as unique_ptr NetPlayServer: Get rid of some explicit deallocations NonCopyable: Specify const in copy constructor/assignment signatures NonCopyable: Remove private access specifier pch: Update Visual Studio version check D3D: Amend code to fix a new VS warning VertexLoaderTest: Amend code to fix new warnings in Visual Studio MathUtilTest: Fix tests on MSVC - Document compiler bug ChunkFile: Handle bool in a stable way across platforms Ryan Houdek (1252): Allow GLES3 hardware to support FSAA. Need a GUI option for this on Androi Pull in the glRenderbufferStorageMultisample function pointer at run time. [Android] Add in FSAA option. Merge branch 'GLES3-FSAA' [Android] Fix typo, FSAA stands for full scene antialiasing. [Android] Use new 4.0 icon. Merge branch 'master' into android-core-control [Android] Fix the ability to stop the game and start another. [ARM] lfsux/lfdx/lfdux/stfsx/stfsux/stfdx/stfdux implementations. Enable fastmem for the lfs instruction for unix and OSX as well. Nevermind the previous commit, SafeLoadToEAX already calls in to UnsafeLoa [ARM] Change all floating point loadstores to fastmem implementations exce Screw you comex, this doesn't even make any damn sense. [ARM] Have both fastmem and non-fastmem paths for floating point loadstore [ARM] Fix fastmem... [ARM] Implement subfic with optimizations stolen from JIT64. [ARM] fctiwx implementation. [ARM] ps_div implementation. [ARM] ps_res implementation. [ARM] ps_cmpu0/ps_cmpu1/ps_cmpo0/ps_cmpo1 implementations. [Android] The issue with the dynamic UBO access on Adreno platforms was fi [ARM] psq_lx/psq_lux/psq_stx/psq_stux implementations. Four more instructi [ARM] fresx/fnmaddsx/fselx/frsqrtex/fnmaddx implementations. [ARM] Implement CR1 setting for the few floating point instructions that I [Android] The dynamic UBO access isn't actually fixed, contrary to what re Quick build fix. Implement CR1 for the intepreter. To be honest I have no idea why this was [Android] Fix Fastmem on Android 4.2 [ARM] Disable subfic, it prevents Wind Waker from booting into a save game [Android] Tegra 4 'support.' This brings up the OpenGL backend to support Only emit the texgens if they are used, not every single time do all of th [Android] Fix an issue where emulation would crash if we couldn't retrieve [Android] Missed a few things for PowerVR544MP3 'support.' It doesn't actu Fix PixelShaderGen from the previous commit. [ARM] Beginning of JitArmIL JIT recompiler. This code is entirely based of [ARM-JITARMIL] CMP optimization. Int3 IR. DownCount added. [ARM] Update the ArmEmitter with a bunch of NEON emitters. This adds aroun [ARM-JITArmIL] Provide the necessary instructions to allow the JitArmIL to [ARM-JITArmIL] Begin merging of the two IL cores in to a common source bas [JITArmIL] Fix JITIL compiling on x86. [JitArmIL] Fix Windows build? [ARM-JITArmIL] Remove the SystemRegisters file. [ARM] Clean up LSL, LSR, and ASR emitters, we don't need a separate instru [ARM-JitArmIL] Enable a bunch of instructions. Add the JITIL Arm recompiler to the Android settings. Add the Arm JITIL to DolphinWX. Merge branch 'JitArmIL' This implements a partial JITIL based off of the J [Android] Make Tegra 4 output graphics that aren't visually appealing. Build fix for previous commit. [ARM] Fix the JITILArm and JITArm dispatchers from comex's recent changes. Fix rendering on Adreno and Mali. This adds a new DriverDetails bug to kno [Android] Fix Build. [Android] Fix MIPS compiling. [Android] Fix MIPS compiling. [Android] 0.12 release. [Android] Change how the onTouchEvent native method works. Just pass in th Fixes GCC 4.9 compilation. It now supplies its own _mm_shuffle_epi8 intrin Revert "Fixes GCC 4.9 compilation. It now supplies its own _mm_shuffle_epi Wipe all traces of OpenSSL's AES implementation. Use polarssl instead. This introduces a FXAA post processing shader for our OpenGL backend. I wo [Android] Fix PCH build. Clean up DolphinWX cmake file a little bit. Modif Fix FXAA shader for OpenGL ES 3. [viewport-float] Fix OpenGL ES 3 build. [Android] Do /not/ give users the benefit of the doubt that the device sup [ARM] Fix an issue with the data offset in LoadStore operations. Thanks to [ARM] Minor idle skip optimization in bx. [ARM] More NEON emitters. [ARM] More NEON emitters. Add a comment to the magic value reading location. [ARM] Fix NEON emitter encodings. [ARM] Don't leave my test code in the JIT core. Redo 'Fixes GCC 4.9 compilation. It now supplies its own _mm_shuffle_epi8 Disable Fastmem on JIT64IL. JIT64IL is completely incompatible with Fastme Remove our two instances of auto_ptr and replace it with unique_ptr. auto_ Windows requires memory to be included to use unique_ptr Merge branch 'master' into android-new-control-input-overlay [Android-overlay] Had the action reversed. [Android-overlay] Support touch screen axises in native. Have a non-config Make sure to add our resources for the joystick. Fix GUI-less build. Also potentially OS X. We now require libpng due to ou Fix OS X wxWidgets complaining. [Android] Spawn a message if someone's phone doesn't support NEON. NEON is [Android] Broken UBOs has been fixed in Adreno driver v53, so update the c [Android] Disable the workaround for Qualcomm devices with driver >= 53 fo [Android] Add screenshot nativelibrary function. Screenshot capability of Software rasterizer for feature completness. Woops, vim copy and paste issue with a double include. Change software rasterizer screenshot code due to change in api just now. [Android] Make joysticks less dumb from a configuration standpoint. Merge branch 'master' into jit_exit_addresses Fix OpenGL ES 3 in the recent changes. texelFetch doesn't require the lod [ARM] Implement the Acid test in the JIT core. This test is currently brok [Android-overlay] Support multiple gamepads with touch screen controls. [Android] Due to recent changes in code breaking Tegra 4 support, and also Merge branch 'master' into android-new-control-input-overlay [Android] Enable the ability to find OpenMP on Android...which isn't used [Android] Enable hard-float support. Requires Android NDK r9b. Merge branch 'master' into android-new-control-input-overlay Fix the issue with COLOROUT not being defined anymore. Fix a issue where M [Android] Fix the check for the Qualcomm graphics driver version for v53 d Fix for OpenGL ES 3. Fix OpenGL ES 3. [Android-overlay] Multiple physical gamepad support. Revert "jit: change our linking module to be able to handle arbitrary exit [Android-overlay] Add the new overlay icons. Support configuring them. Dis [Android-overlay] Disable Wiimote configuration until it is wired up. Merge branch 'master' into android-new-control-input-overlay [Android-overlay] Fix Java imports. [Android-overlay] Z-button support. [ANDROID] Fix ARMv5 build. [Android] Fix alert when using crappy Qualcomm drivers. [Android] 0.13 release. [Android] Fix an issue that occurs due to the warning dialog. Support OS specific bugs in our DriverDetails. Oops. Fix a typo in the DriverDetails change. Add Read16/Read8 to the CBlobBigEndianReader so the key check is reading 8 Remove all instances of OpenCL in the Dolphin Project. A brief history of Fix Windows Build Fix Linux build. [Android] Remove the now unused texture loader on the JNI side of things. [Android] Make our OpenGL ES 3 check in the UI less stupid. Have our OpenGL/ES context creation be less stupid. Add CMakeLists.txt.user to the .gitignore file. Closes issue 6873. Fix Cmake failure. If we are using OpenGL ES 3, then don't check for OpenGL/GLU [Android] Fix gamepad input. Fix ARM unix build. Small cleanup in the EGL GLInterface. Oops, I left a bit being set when it shouldn't have been. [Android] Fix joysticks only capable of right/down movements. Also make it In the shader log message, say if the error came from a PS or VS. [Android] Things fixed in Qualcomm driver v53. GLSL Centroid usage. SHADER Work around AMD's broken Linux drivers when it comes to pinned memory and [Android] Work around Qualcomm's broken garbage in their v53 drivers. This [Android] Stop copying assets that don't need to be copied anymore. Fix the extended information status line that shows emulated mhz + idles s [Android] Add a gradle build file for use with Android Studio 4.0 Remove our GLU dependency. Fix static zlib [Android] Fix the gradle build system to allow for building from terminal. [buffer_storage] Implement ARB_buffer_storage. Disable it for GL_ARRAY_BUF [buffer_storage] Require GLEW 1.10 which has the new OpenGL 4.4 methods. F [buffer_storage] Add the CLIENT_STORAGE_BIT since we access the buffer mor Support grabbing whichever OpenGL mode we are running under from GLInterfa [Android] Support grabbing OpenGL extensions and a function for checking f [ARM] Implement tw/twi [Android] Enable shader cache. [buffer_storage] Code formatting changes suggested by Bh44L [buffer_storage] Temporary fix for Android/GLES3 just like how everything Free performance for AMD+Linux. Instead of disabling BaseVertex due to pin Disable primitive restart on buggy OS X Intel HD 3000 drivers. Merge branch 'master' into buffer_storage Merge branch 'master' into buffer_storage Merge branch 'buffer_storage' Merge Fail. We don't disable BaseVertex on broken pinned memory. [Android] Reenable the bug for dynamic UBO array member accesses. Some inf Probe the GL_RENDERER string on Nvidia to grab the driver version. Fix for previous commit. I was supposed to use GL_VERSION, not GL_RENDERER Slight optimization in the pixel shader. We are using pow(2.0, X) in place Enable buffer_storage for Nvidia drivers 332.21 and above. Update some of the comments in DriverDetails.h for drivers that have fixed [GLExtensions] Initial code drop for GLExtensions. This drops GLEW entirel [GLExtensions] Add ARB_buffer_storage to negate at least one null pointer [GLExtensions] Remove glew includes from wgl and agl. [GLExtensions] Fix a typo in KHR_debug [GLExtensions] KHR_debug on OpenGL ES 3 has a KHR suffix on their function [GLExtensions] Dynamically pull in the GL 1.3 and 1.4 functions as well. [GLExtensions] Hopefully fix OS X build. [GLExtensions] Still had a GLEW lib hanging out in the CMake file for the [GLExtensions] Fix Windows build. [GLExtensions] Make sure to initialize our function pointers with VideoSof [GLExtensions] Don't fail out loading funciton pointers in both ES2 and ES [GLExtensions] Oops. Don't just outright disable these helper functions. [GLExtensions] Pull in all the function pointers for OpenGL 1.1, This remo [GLExtensions] wxWidgets expects to statically link in to GL 1.1 functions [GLExtensions] Missed a couple USE_GLES3 compile time differences. [GLExtensions] Make sure to link against libdl since we use it to grab GL [GLExtensions] Remove AGL GetProcAddress. Change dlsym to using RTLD_NEXT. [GLExtensions] Fix OS X build. [GLExtensions] Populate the extension list for OpenGL implementations that [GLExtensions] Future proof ourself by putting the default: instance on th [GLExtensions] OpenGL 3.0 also added GL_ARB_map_buffer_range to core. [GLExtensions] Remove a bunch of unneeded headers. Fix Linux+EGL compiling [GLExtensions] Move the include directory location for Externals/GL so no [GLExtensions] Refix GLES3 build. Until we clean up the platform detection [GLExtensions] Rename internal GetProcAddress function since it clashes wi Merge of GL-AutoChoose. This branch is the final step of fully supporting Move Win32 specific function grabbing fallback to WGL.cpp. Fixes issue 696 Rename our GLInterface class function 'GetProcAddress' in order to not hav Stop building GLExtensions.cpp twice(One in GL, one in software). We don't Revert "Modified project settings" [android-about-menu-info] Have information populate the GLES2 and GLES3 ta [android-about-menu-info] Add desktop OpenGL tab population. Since showing [GLExt-Cleanup] This cleans up some extra bits unneeded in the extension h Bit of a failure. Fixes 6964. I was attempting to grab wglSwapIntervalEXT Fix OpenGL 2.1 devices that support everything we need. The only two devic [Android] Fix Android not calling eglSwapBuffers This isn't the cleanup th [Android] Fix Adreno v53 development drivers rotating framebuffer Older Qu [JITARM] Fixes an issue in the slowmem path that causes grey THP movies, a Fix a typo in EGL.h for setting mode. Seems to have been a copy and paste Remove Cache DL option from Android UI This option has been removed entire Improve GLExtensions compile time. This changes from using logical and to Cleanup GLExtensions on how it fails. If there is an issue with a reported redo 'jit: change our linking module to be able to handle arbitrary exit a Initialize linkStatus to false in the ARM JIT cores as well. If block linking isn't enabled then make sure there isn't a performance hi On block unlinking, wipe the address from the valid links. Fix the arbitrary exits. We have to make sure that the block links are cle Fix ARM build Change OpenGL extension initialization in to a big array This is a reasona Make it possible to build Dolphin for Android in OS X and also less of a p Fix the OpenGL About tab. Move EGLHelper to be local to the creation of th Fix the nogui build when building with EGL Make our architecture defines less stupid. Our defines were never clear be OS X likes to be different. It reports the host processor type as i386 ins Provide our own dot functions in GLSL since GLSL doesn't provide integer v Due to the removal of our char* IniFile setters/getters this broke Android Fix arch detection on x86. Fix arch detection on x86. Fix arch detection on x86. Fix building the release APK with gradle. In release build all warnings ar Fix the Android build when using clang 3.4 Clang 3.4 exposes some warnings on Android. Fixes all warnings on Android Pass our signing information to gradle by argument. Changes from using env Allow the user to enable the extended information string like the old days Make configuring the onscreen controls less annoying. Revert "Remove an unnecessary wx translation underscore macro from PHackSe Fix a crash that got recently introduced. Add initial support for GLSL ES 3.10. Fix a bug in the ARMEmitter. Fix Fastmem on ARM once more. Remove dumb CodeBlock duplication in the emitters. Fixes issue 6990. This [ARM] Minor cleanup to lXX and stX. Fixes a bug. Fixes an issue in lXX whe Add the ability to determine the Mali driver version. This is the only way Support checking for the Mali-T7xx line of GPUs. They are similar enough t [ARM] Implements more fastmem instructions in lXX. There are a few instruc Add the ability to generate a files MD5sum. This adds the ability to gener Fix the integer overflow that happens in the MD5Sum Progressbar. Don't use SDL devices that report invalid ranges. If Buttons, Axes, Hats, Change to ARM's naming convention in DriverDetails. This matches how ARM h Change IPL horizontal offset from +5 to 0. Noticed this while fiddling wit Fix texture conversion shaders for GLSL ES. Noticed this while messing wit Moves a few Cmake options so that debug options are near one another. Move Adds Link Time Optimization cmake option. [Android] Fix a bunch of input bugs. Looking at the old code for the Butto Fix missing instructions in ARM JIT Tables. The ARM insturction tables wer Removes unused argument in Helper_UpdateCR1. Adds new PPCAnalyser class. Supports conditional branch continuation. More Adds support to the new PPCAnalyst to the ARM JIT cores. ArmJit32 supports Support the new PPCAnalyst class in JIT64. Address delroth's comments. Let Jit64IL use the new PPCAnalyst class Missed the analyzer object not named correctly. Move the JitWindow debugging window over to using the new PPCAnalyzer clas Remove the old PPAnalyst::Flatten function that is no longer in use. Fixes glVertexAttribIPointer on GLES. Changes posmtx vertex attribute to integer. Enables usage of GLSL textureSize on Qualcomm v66. Adds support for the PP shaders in the Android UI. Fixes our post processing shaders so they work under OpenGL ES 3.0 Change Android's default EFB configuration to texture instead of disabled. Fixes games that use the MMU to page in code(Rogue Leader). Removes ZeroFrog's "optimized" memcpy and memcmp functions. Fixes build if the build path has spaces in it. Add a Cmake generic build option and remove x86_32 build capabilities. Make MemoryUtil.cpp use the correct x86_64 define. Fix a crash in ARM's CPUDetect on a malformed /proc/cpuinfo. If a CPU stri Remove unused mojs array from ppcState. This was some unused array just si Fix potential crash in Video Settings. When Shaders folder didn't exist it Fix OpenGL ES version detection. Mesa report GLES version as "3.0" not "3. Make it so ARMv7 isn't a generic target. Rearranges a bit of code so that Support conditional register cache flushing on ARMv7. Similar to PR #451, Change register cache to using an enum to determine flush mode. This is ea Add conditional register cache flushing to JIT64's bcctrx conditional rout Add conditional register cache flushing to JIT64's bcx instruction. Add conditional register cache flushing to JIT64's twx instruction. Fix a few code style remarks. Removes some casting of size_t to int. Revert "PPCAnalyst now detects internal branches better" Fix conditional branching on x86_64. The register cache can be filled to t Fix the vertexloader on non-x86 targets. Fix the ARM JIT's subfic implementation. Fix ARM Jit's subfic when d != a. Missed this path previously, Crazy Taxi Move CoreTiming::downcount to PowerPC::ppcState. Support Sampler binding in the shader. Remove JitArmIL files from the project. Due to how the new CR-flags work, Support the 64bit CR flags in the ARM JIT. Fixes a check for what mmap returns. Remove x86_32 from DolphinWX. Remove x86_32 from the DSP JIT. Remove x86_32 from VertexLoader. Remove x86_32 from Jit64. Remove x86_32 from Jit64IL. Remove x86_32 from JitCommon. Remove x86_32 from the JIT block "profiler." Remove x86_32 from x64MemTools Removes x86_32 from Visual Studio Base properties. Remove the rest of x86_32 support from Common. Add TryParseVector to StringUtil. Adds a nice way to have options be in a Add the VideoCommon PostProcessing class. Add the PostProcessing class object to RenderBase in VideoCommon. Backends Change OpenGL's post processing to use the new VideoCommon PP object. Change all the post processing shaders to the new system. Removes the READ Add the configuration dialog for post processing configuration options. On Fix the Not button showing up in the advanced control dialog. Fixes PP-shaders on !Mesa targets. Catch broken configurations inside of the Post Processing shaders. Qualcomm fixed screen rotation in their latest v66 development drivers. Clear the texture used by PP shaders prior to use. We were generating a te Update the android cmake toolchain file to support 64bit. Update build.gradle to newer buildtools. Update shown CPU cores in the Android UI. Remove the SSE2 messagebox. Add some static_asserts to the Arm32 JIT to make sure ppcState is sane. Remove PowerPCState::DebugCount. Work around Intel's failings with with buffer_storage Revert "Don't sleep in the event thread" Fix ArmEmitter's asserts from failing to compile. Changed them all from de [AArch64-emitter] Initial work on a emitter for 64bit ARM. I've tested a f Beginning of the AArch64 JIT branch. This is the bare minimum required to Add immediate support to the GPR cache. Add AArch64 target to the backpatch header. This fixes the issue of a mill Add a couple of asserts to the Arm64 JIT to make sure we can load everythi Fix a few minor bugs that appeared in the latest android cmake script Update external polarssl to 1.3.8 Fix building ARMv7 on the 64bit Android NDK. Fix Generic build from AArch64 merge. Fix building x86_64 on Android. Add sign extending aliases to the ARM64Emitter. Include a missing include in the ARM emitter's common code. Fix the return value of PPCAnalyst. In situations where conditional contin Fix AArch64 MOVI2R helper function. In the case of a zero immediate, it wo Fix all the current issues with the AArch64 register cache. Fixes all the Add AArch64 emitter aliases for MOV and MVN. Fix AArch64 JIT compiling. Show OpenGL or OpenGL ES on Android depending on what the device supports. Add a comment to the software renderer that stride should be implemented [AArch64] Implement a bunch of integer instructions 16 new instructions fo Fix some indention on AArch64 JIT. Change the QGR union over to a BitField union. Makes it easier to generate [AArch64] Implement extshx and extsbx. [AArch64] Implement cntlzwx. [AArch64] Implement negx. [AArch64] Implement mcrf. [AArch64] Implement mtsr and mfsr [AArch64] Implement mtsprin and mfsprin [AArch64] Implement mfmsr [AArch64] Implement twi and tw. Implement XER optimization on ARMv7 JIT core Fix ARMv7 JIT from XER optimization. This was a subtle bug I introduced si Add AArch64 JIT recompiler to wxWidgets UI. Change driver details to reflect Qualcomm's changes with their v95 driver. Fix a crash on Android when unplugging a controller during emulation. Fix a race condition in our OpenSL ES audio backend. After calling enqueue Remove hard dependency of GLX from Dolphin with X11. Remove a hard dependency from libGL from the software renderer. Don't enable stepping on ARMv7 JIT core if just in the debugger. Adds support for stepping in the ARMv7 JIT. Disable the fake vmem hack on 32bit targets. This hack is incompatible wit Removes Android cmake option. Changes from ARMv6 NOP to ARMv7 NOP. Dolphin doesn't support ARMv6. Get th Cleans up the JIT block viewer in the WX UI. Enables block profiling in the UI on non x86 targets. Removes some terrible printf debugging that was left over in the ARMv7 JIT Enables EarlyZ support in OpenGL ES 3.1. Fixes black screen issue on EGL+X11 systems. Adds support to ARMv7's register cache for not loading a destination regis Adds support back for non-immediate cmp/cmpi to ARMv7 JIT. Optimizes instructions in ARMv7's JIT inside of the arith function. Fixes OpenSLES's sample rate. Removes ARMv7 specific byteswap routines from CommonFuncs.h Removes unused cmake script for finding GLEW. Implements LLVM based disassembler for the debugger. Fixes ARM CPU detection routine for the hardware. We weren't dropping a ne Fixes packaging OS X binary with spaces in the directory name. Revert "Removes ARMv7 specific byteswap routines from CommonFuncs.h" Fixes minor bug in the ARMv7 register cache. Fixes some overzealous optimizations from ARMv7 BindToRegister. Fixes a potential crash on the ARMv7 JIT if someone disables the entire JI Fixes LLVM library detection. Fixes missing objects on Adreno hardware. Removes Qualcomm's rotated framebuffer bug from DriverDetails. Adds a DriverDetails bug to track Qualcomm attributeless rendering. Enables EFB copies by default on Android. Implements PP shader system using attribute workaround. Optimizes ARMv7 andi{s,}_rc implementations. Disables NEON optimized instructions. These are causing issues in games. I Enables the ARMv7 FPR cache. Enables ARMv7 build options entirely on ARM. Reimplements fastmem for ARMv7 floating point loadstores. ARMv7 register cache optimizations. Enable support for not loading a desti Adds MCR/MRC to the ARMv7 emitter. Implements block time profiling on ARMv7. Fixes ARMv7 FP loadstores using fastmem when not enabled. Fixes GLExtensions for GL 2.1 or GLES 2 devices. Rewrites ARMv7 fastmem entirely. Adds support for OpenGL ES draw_elements_base_vertex. [ARM32] Removes conditional execution from ARMv7's Jit function. [ARM32] Removes a block of conditional execution in the dispatcher. [ARM32] Remove conditional execution from store instructions. Fixes OpenGL ES rendering. sampler2DArray doesn't have a default precision [ARM32] rlwimix and rlwnmx optimizations. [ARM32] srawix optimization when source is an immediate. [ARM32] negx optimization if source is immediate [ARM32] cntlzwx optimization if source is immediate [ARM32] Adds unsigned compares. Superscedes PR #1131. Optimizes cmpi a bit [ARM32] Eat a register to store our memory base. This saves at least two i [ARM32] Moves loadstore extend flag to backpatch code. [ARM32] Minor optimization in paired loadstores. [ARM32] Fix a couple bugs in the paired loadstore routines. Update the android cmake toolchain to latest. [Android] Removes CPU architecture number from CPU helper. [AArch64] Workaround builtin byteswap bug. [Android] Fix NEON detection with AArch64 Fix register usage detection in PPCAnalyst. [AArch64] Add loadstore paired emitter instructions. [AArch64] Improves the register cache. [AArch64] Fixes the dispatcher [AArch64] Implements block linking. [AArch64] Implements HLE function injection [AArch64] Makes some integer instructions more clear what they're doing. [AArch64] Only flush registers that are needed with interpreter fallback. Works around broken Intel Windows video drivers. Idle loop in GPU loop on dual core systems. Adds LLVM version check to cmake. Enables stereo rendering with OpenGL ES 3.1 + AEP. Fixes Adreno 400 slow performance. Minor changes to DriverDetails Work around broken Android garbage. [Android] Raise requirements to Android 4.3 and OpenGL ES 3.0 Updates the gradle build file to the latest needed for Android Studio. [AArch64] Improvements to the AArch64 emitter. [AArch64] Removes ARMv8 as a generic target. [AArch64] Register cache improvements. Adds the ability to flush the cache [ARM] Adds a ArmCommon folder. [AArch64] Removes CODE_SIZE variable. [AArch64] Add an exception exit function with the exit location already in [AArch64] Optimization in the dispatcher. [AArch64] Flush registers from register cache if they won't be used again. [AArch64] Adds support for BindToRegister to the integer instructions. [AArch64] Add partial support for cmp* instructions. [ARMv7] Minor integer fastmem optimization. [AArch64] Adds backpatching routines. Currently supports only integer load [AArch64] Implements loadstore instructions in the JIT recompiler. [AArch64] Adds support for conditional continue. Requires PR #1723 prior t [Android] Add a few helper functions to EGLHelper. Let's us check for exte [Android] Add support for sterescopy configuration. [AArch64] Fix ADDS/SUBS emitter functions. [AArch64] Fix 8 & 16 bit loadstore indexes. I wasn't bit shifting correctl [AArch64] Minor MOVI2R improvement. [AArch64] Add MUL/MNEG instruction aliases to the emitter. [AArch64] Minor shifted register adjustment. [AArch64] Add a few more VFP register helpers. Renames Is128Bit to IsQuad [AArch64] Add the float emitter. [AArch64] Implement FPR Cache. [AArch64] Fix loads with update. [AArch64] Add some static_asserts. Makes sure we have a few PPCState value [AArch64] Add a memory dump routine. [AArch64] Add floating point backpatching support. [AArch64] Flush FPRs if they won't be used be used the rest of the block. [AArch64] Enable the full range of integer loadstores. [AArch64] Implement 13 integer instructions. [AArch64] Implement three system register instructions. [AArch64] Implement 24 paired instructions. [AArch64] Implement 19 floating point instructions [AArch64] Implements 15 floating loadstores. [Android] Expose aspect ratio to the video settings. Improve the LLVM disassembler in the debug window. Expose the JIT quantize and dequantize arrays to all the JITs. [AArch64] Emitter improvements. Adds a bunch of new instructions to the em [Android] Remove posix_memalign workaround. Google fixed the issue of posi Fixes disassembly of paired store instructions. [AArch64] Fixe a bug in constant propagated ComputeRC. [AArch64] Fully implement cmpl and cmpli. [AArch64] Optimize loadstores address calculation. Add support for two new OpenGL ES extensions. This adds support for OES_dr Minor fix with psq_st{u,}x disassembly. Remove an assumption in SDL. [AArch64] Implements paired loadstores. [AArch64] Add some more scalar VFP ops to the emitter. [AArch64] Move the 64bit floating point instructions to scalar. Fix the Post Processing shader configuration dialog. [AArch64] Fix bugs in floating point loadstores. [AArch64] Implement mfspr/mtspr XER routines. [AArch64] Minor fix in the UMULH/SMULH. These two instructions ignore the Remove an old GLES define that I missed. [Android] Add internet permissions. [AArch64] Fix all of the paired store instructions. Rearchitect a bit of our AsmCommon routines. [AArch64] Fix cmp [AArch64] Fix addzex. [AArch64] Fix addcx. [AArch64] Make sure to load the full destination register on float instruc [AArch64] Fix AArch64 instruction encoding. [AArch64] Implement TU/TL merging. [Android] No longer carry a default configuration file. [Android] Select the AArch64 recompiler core by default if shown to suppor [Android] Change the default renderer to OpenGL. Update Android cmake. [AArch64] Implement a way to call lambdas in the emitter Fix clang on x86_64. [AArch64] Add support for MMIO loads. [AArch64] Don't flush VFP register to stack when not needed. [AArch64] Minor performance improvements to paired stores. Remove an old outdated comment that makes no sense. [AArch64] Implement MMIO Writes. [AArch64] Remove an extraneous nop in 8bit fastmem stores. Remove an old comment about stfiwx. This instruction does exactly what it [Android] Register panic alert handler. [AArch64] Fix a bunch of emitter asserts. [ARM] Fix poison memory functions. [AArch64] Fix non-PCH build. [AArch64] Implement a couple of emitter instructions. [AArch64] Fix another assert in the JIT register cache. Change RunVertices' function arguments. [AArch64] Implement vertex loader recompiler. [AArch64] Minor floating point loadstore improvements. Convert our vertex loader unit test to the new RunVertices arguments arran [AArch64] Implement loadstore unscaled. [AArch64] Change the vertex loader over to using unscaled loadstores. [Android] Fix building unit tests. Fix mulli's flags in the instruction tables. [Android] Fix ignore format changes option. [GLExtensions] Add support for NV_occlusion_query_samples. Implement full occlusion queries for the Nexus 9. [AArch64] Fix fastmem lha/lhax. Fix a typo in the Android cmake toolchain script. Fix a crash with fastmem disabled. [Android] Stop eating button events we don't handle. Move user directory detection location to UICommon. Fix a bug on user path re-assignment. [AArch64] Optimize FPR pushing and popping. [AArch64] Implement VFP loadstore paired in the emitter. [AArch64] Implemented paired pushing/popping for the VFP. [AArch64] Stop violating the AAPCS64 so much. [AArch64] Allow the other FPR push/pop routines to use a temporary registe [AArch64] Handle FPR island registers in a less dumb way. [Android] Support arguments from Activity Monitor. Fix OpenGL ES 3.1 on non-Nvidia devices. [AArch64] Add an assert to SMOV in the emitter. SMOV doesn't have an encod [AArch64] Optimize slowmem paired stores. Fix user directories at times doing stupid things. [AArch64] Implement dirty register tracking. Using BindToRegister from the Fix Wii configuration path being incorrect. Make sure the JitInterface's WriteProfileResults instruction pauses and re Add JNI interface for enabling writing block profile results. Fix non-PCH build. Fix a race condition when pausing the CPU core. [AArch64] Disable psq_l. [AArch64] Implement block profiling. This is time based block profiling un [Android] Add support for panic alerts to the JNI. [ARMv7] Extend the life of the JIT Recompiler. Fix JIT core's block sizes. [AArch64] Don't disable tw{i,} Break out the disassembler code from the WXWidgets UI. This cleans up some [AArch64] Minor bugfix and optimization. [AArch64] Implement lmw/stmw. [AArch64] Implement ZFreeze cache Fix OpenGL ES shader compilation. [AArch64] Upstream PPSSPP's emitter changes. [AArch64] Add ASIMD LDR/STR with register offset [AArch64] Optimize gatherpipe stores [AArch64] Disable psq_l again. Remove ARMv7 support. [AArch64] Detect AES/SHA1/SHA2/CRC32 in CPUDetect. [AArch64] Implement CRC32 texture hashing. [AArch64] Implement a couple instructions in the emitter. Implements LD2R. [AArch64] Clamp quantized store ranges. Fixes block dots in THP videos. Ni [AArch64] Clean up our CPUDetect. Drops ARMv7 feature detection. [Android] Remove dialog telling individuals that their drivers are terribl [Android] Make sure we are setting the default user directory. This fixes [AArch64] Implement {U, S}QXTN{,2} Also split out XTN to XTN and XTN2. [AArch64] Optimize paired quantized stores. Uses {S,U}QXTN to saturate the [AArch64] Fix a few bugs in the FPR cache. [AArch64] Reenable psq_l. The bug was due to issues in the FPR cache. [AArch64] Fix a couple of bugs in the vertex loader [AArch64] Implement slwx in the recompiler. [AArch64] Implement BFI & UBFIZ in the emitter. [AArch64] Implement rlwimix. Fix an oversight in GLExtensions Work around slow glBufferSubData on PowerVR. Work around PowerVR's shader compiler. This bug has been reported to IMGTe Add Wiimote support to the Android backend. Not actually wired up to the A Work around devices that choose to only return the default EGL_RENDERABLE_ [AArch64] Add support for JitRegister to the dispatcher and paired loadsto Remove perf_dir Dolphin WX option. Have the disassembler show the PC next to host instructions. On unknown_instruction dump the full guest GPR state. [AArch64] Fix FCMGE instruction encoding. [AArch64] Don't do an unnecessary 128bit REV64 operation. Add support for a CodeBlock holding a child. [AArch64] Banish slowmem operations to farcode. [AArch64] Implement fcmp{u,o} [GLES] Fix real XFB. Fix a memory leak in the EGL GLInterface. [AArch64] Optimize cases when an FPR is only used for non-paired ops. [AArch64] Optimize lfd instructions if possible. [AArch64] Fix the bugs in the cr instructions [AArch64] Implement frspx Fix the shader overrunning our max shader size. [AArch64] Use a register as a constant for the memory base. Disable OpenGL ES 3.1 on all Qualcomm Adreno devices. Their new driver tha [AArch64] Implement MOVI and ORR(imm) in the NEON emitter. [AArch64] Implement fctiwzx [AArch64] Implement stfiwx Improves povray performance by ~4% [AArch64] Implement fdivx/fdivsx/mfcr/mtcrf. [AArch64] Set BindToRegister's to_load correctly for double FP ops. [AArch64] Fix a bug in the register cache. [AArch64] Optimize paired registers being used in double operations. Support OpenGL ES 3.2. [Android] Workaround Mali driver issue on the Samsung Galaxy S6. [AArch64] Fix a bug in the register caches. [AArch64] Optimize lmw. [AArch64] Support profiling by cycle counters if they are available to EL0 [AArch64] Fix issue in emitter. [AArch64] Optimize GPR cache flushing. [AArch64] Improve floating point single instructions. [AArch64] Make TST reg, reg emitter alias [AArch64] Implement dcbz instruction [GLES] Support texture_buffer for palette texture conversion. [AArch64] Implement Fiora's preemptive paired loadstore optimization. [AArch64] Clean up bogus vector FCVT{N,L} instruction usage. [AArch64] Implement integer gatherpipe writes. [AArch64] Minor improves to the vertex loader JIT Implement ClearCurrent on the EGL GLInterface [Android] Fix multi-gamecube controller input, config changes Support EXT_blend_func_extended in GLES. Remove all of our workarounds for Qualcomm devices we don't support anymor Properly support MSAA and SSAA as separate features(+GLES) [GLES] Enable bounding box support. [AArch64] Fix Test&Branch to relative location instructions. Add run count to the JIT profile information Use __builtin_trap for our crash define instead of int3/exit Enable the page fault test on targets that aren't x86_64 Enable Anisotropic filtering in ES. We shouldn't be trying to enable the SSBO extension in ES. Make sure not to use a GL texture buffer past the max size. [GLExtensions] Support ORing of extensions when checking for support. [GLExtensions] Improve the extension loader. [OGL] Update extension checks in Render. Fix minor memory leak in WGL interface. Work around Google's trash NDK Including missing headers required for non-pch builds and other architectu Add a comment to DriverDetails about Qualcomm failing our alpha tests. Support multiple bridge interfaces in Linux. Improve our LLVM check [Android] Add support for launching a game through activity monitor. Make GLExtensions no longer require slghtly modified GL headers. In fact, Remove our modified GL headers. [Android] Disable screen lock when a title is running. [OpenSLES] Fix a delay in audio processing. Fix warning in VideoInterface Move SI_GCAdapter over to InputCommon Add two missing values that can fit in GCPadStatus Make the Wii U Gamecube adapter work with less magic. Fix GCPad recalibration shortcut. Fixup typo in GCAdapter Add a stubbed GCAdapter namespace. [Android] Add support for the Wii U Gamecube adapter under Android. [Android] Fix enabling and disabling Gamecube controllers. Move Android JNI bits from DolphinWX to the Android folder. Fix hotkeys not reporting inputs. Add support for framedumping to OpenGL ES. Fix assert on reset button hit. Fix typo in GLExtensions Disable geometry shaders on mesa AMD/ATI drivers. [Android] Pause and resume emulation using proper functions Add support to EGL to on the fly destroy the resulting surface [Android] Add support for rotation and minimizing the application Fix debugger address lookup search control. Fix a typo on the size passed in to the IPL descrambler. Fix the Exit hotkey. Strip the Android shared library file. This cuts down the shared library s Blacklist Sandy Bridge on mesa from using geometry shaders. Allow multiple GC adapters on one PC to be used with multiple Dolphin inst Stops netplay clients from failing to send settings on game start Fix a bug in GCAdapter_Android where the payload size would end up being c Implement shared contexts in the EGL context. Implement support for GL 4.2 in GLExtensions Support the OpenGL core profile in EGL. Include the EGL defines we need for KHR_create_context ourselves. Support a headless EGL option. Implement requesting permission for using the GC Wii U Adapter. Fix a few missing includes Fix a bug in the Common CMakeLists file Rearrange GLInterface interface generation. Use cmake to determine if we are enabling the Android Controller Interface CMakeLists cleanup and enable Android headless building. [Android] Fix crash when we don't have access to a folder. Remove mbedtls install target [Android] Implement support for real Wiimotes with the DolphinBar Both Intel and Radeon Mesa geometry shader bugs are fixed in 11.1.2 Extend libav check to find versions without pkg-config Geometry shader bug isn't fixed in 11.1.2 for Intel Sandy Bridge Improve stability of the Wii U Gamecube Controller adapter under Android. Change GL 4.2 defines over to the proper naming convention. Add support for GL 4.5 Add support for GL 4.4 Add support for GL 4.3 Disable a few OpenGL 4.5 functions that AMD fails to expose. Make sure to get the right function pointer for DSA+buffer_storage [AArch64] Fix fcmp. Fix a few asserts in the VertexShaderGen. Confirm with hardware test that the high bit of the input form is ignored. Remove two more asserts in VertexShaderGen. Remove mbedtls header install target. [Android] Make sure the file extension check isn't case sensitive Mark Mesa Intel Sandy Bridge geometry shaders not broken in Mesa 11.2 Update to MaJoR1's latest on screen buttons Workaround OS X video driver bug #24983074 Fix Android buildbot Make sure x86_64 isn't compiled with PIE. Our x86_64 recompilers don't sup Markus Wick (867): ogl: drop glsl120 support ogl: use GL_RGBA instead of GL_RGBA8 VideoCommon: keep a copy of the const buffer in VideoCommon ogl: implement useful constant buffer upload D3D: also uses VideoCommon constant buffer handling videoCommon: remove not supported constant types VideoCommon: refactor PixelShaderManager setters OGL: update ubo workaround VideoCommon: remove SetVSConstant4f VideoCommon: fix dstAlpha VideoCommon: reimplement Dirty() in PixelShaderManager Merge branch 'const_buffer_rework' VideoCommon: revert the ViewPort changes VideoCommon: Update FastDepth's comment ShaderGen: remove nonsense for() if() {} ShaderGen: drop PerPixelLighting + 8Texcoord hack ShaderGen: fix for commit bd80de14f4ca ogl: only use bufferdata if buffersubdata is broken jit64: enable faddsx again OGL: Use floating points for viewport parameters. VideoCommon: Drop D3D9 SSAA implementation Merge branch 'viewport_float' VideoCommon: move ViewportCorrection into VideoCommon ogl: don't call SetViewportChanged from backend as it's not needed any mor d3d: use backend based UpdateViewport instead of VideoCommon one ogl: remove some unneeded includes VideoCommon: remove constants.depthparams[2+3] as they aren't used in the VideoCommon: drop UpdateViewportWithCorrection ogl: don't force depth+stencil for default framebuffer ogl: ceil viewport, rounding isn't supported on vs and this is more like t Merge branch 'viewportCorrection' ogl: drop all %f from TextureConversionShader VideoCommon: create native texture pool ogl: check default framebuffer for msaa jit64: remove dead code jit: change our linking module to be able to handle arbitrary exit address VideoCommon: fix custom textures Revert "VideoCommon: create native texture pool" jit64: enable fp instructions faddx fsubx fdivx fdivsx jit64: add regcache option IsBound VideoCommon: don't read alpha from efb which don't have alpha D3D: also fix MAX_COPY_BUFFERS Merge branch 'efb2tex_alpha' VideoCommon: reorder cbufid in orderer. We've used once two times Opengl: fix real XFB sample positions OpenGL: cleanup yuv2rgb (real xfb) workflow OpenGL: also remove VAO from xfb convertion OpenGL: always use texture2d as efb OpenGL: fix xfb for texture2d OpenGL: fix efb2tex for texture2d OpenGL: fix efb2ram for texture2D OpenGL: fix emulate format changes for texture2d OpenGL: drop texture_rect hack OpenGL: cleanup efb2tex OpenGL: attributeless rendering in emulate format changes OpenGL: attributeless rendering for postprocessing OpenGL: attributeless rendering for efb2ram TextureConverter: remove D3D9 foo TextureConverter: Use gl_FragCoord instead of uv0 TextureConverter: Use integer math for swizzling TextureConvertion: merge Write*Swizzler TextureConverter: fix scoping TextureConverter: remove WriteIncrementSampleX OpenGL: split real xfb + efb2ram framebuffers OpenGL: reset EFB after efb2ram FB initialization OpenGL: readback efb2ram with different strides at once Merge X11+D3D FreeLook feature into DolphinWX OpenGL: fix crash in revision 95aeedec19db PixelShaderManager: clear s_bViewPortChanged flag OGL: use integer uniforms for efb2ram texture converter Merge branch 'ogl-tex2d' OpenGL: disable shader cache when ShaderDebugging is enabled VideoCommon: remove outdated copy of OGL::VertexManager::vFlush Revert "Jit64: use AVX instructions in some places" Jit64: load second operator for double intrutions Merge branch 'revert-avx' ogl: clamp to edge for out of bound efb access TextureCache: Warn for invalid custom textures OpenGL: drop UBO-workaround usage for efb2ram shaders OpenGL: use shader 420pack if available to staticly bind ubo location OpenGL: fix scaled efb2ram copys VideoCommon: disable efb access + perf querys on cph thread OGL: remove masking from streambuffer TextureConverter: remove implicit int->float convertion VideoCommon: cleanup of "components" usage fixup "Remove the ZTP speedup hack" enable buffer_storage on nvidia 331.38 on linux VertexLoader: don't check for possible range [GLExtensions] fixup for missing changes on rebase VideoCommon: merge triangle+list+point index buffers IndexGenerator: drop unused variable IndexGenerator: inline all variables Merge branch 'index_buffer_cleanup' Merge branch 'GLExtensions' OpenGL: fix our ubo workaround when blend_func_extended is missing OpenGL: remove small optimization VideoCommon: merge trivial parts of VertexManager::Flush fix windows debug comile VertexLoader: load scale factor as const, this will save some assembler in VertexLoader: inline destionation buffer VertexLoader: temp class for reader/writer OpenGL: change StreamBuffer in a streaming way OpenGL: refactor all of our StreamBuffers VideoCommon: allow backends to set the buffer pointer as they want to OpenGL: Stream vertices + indices VideoCommon: don't save streaming fifos into savestate D3D: move streaming buffer fallback into D3D backend Merge branch 'StreamBuffers' OpenGL: remove unused OpenGL headers VideoCommon: fix "Buffer not large enough for all vertices!" OSX: don't avoid unsync mapping on nvida gpus just because the windows dri OGL: remove version check for buffer_storage on windows NativeVertexFormat: swap unsigned / signed formats to match GX order PortableVertexFormat: add a struct which hold all needed information for e PortableVertexFormat: use AttributeFormat for normal attribute format PortableVertexFormat: use AttributeFormat for color attribute format PortableVertexFormat: use AttributeFormat for texcoord attribute format PortableVertexFormat: use AttributeFormat for posmtx attribute format VideoCommon: remove Cache Displaylist VideoCommon: small VertexLoader(Manager)? refactoring GameSettings: wipe cache display lists buildbot: find base revision and generate diff explicit VertexShaderGen: fix D3D posmtx attribute regression by VertexLoaderCleanu OGL: remove ubo workaround Pulseaudio: rewrite the pa backend with the async api Atomic Stores / Loads Throttle by coretiming event instead of VI Drop framelimit by fps Use float to calculate the fps/vps audiocommon: remove 1:1 interpolation audiocommon: sync mixer by fifo instead of estimate values controll the interpolation frac by the fifo size change AI sampling rate based on framelimit Disable framerate correction for OpenAL move shared parts from VertexManager::vFlush into VideoCommon fix ogl video config crash rename UpdateViewport to SetViewport like all others setters in RenderBase move perfquery enable checks into videocommon (caller side) use EFBRectangle for scissor rect merge some common parts of Swap() into VideoCommon inline SetViewport into VertexShaderManager Remove slowdown warning Fetch swapInterval function pointer after binding a context ogl: optimize real xfb a bit merge common parts of encoding shaders MathUtil: Change Log2 return value to int TextureConverter: Use Log2() and shifts instead of multiplications/divisio Rewrite texture tiling implementation calculate constant values on shader compilation Merge duplicate parts of sampler into header remove (ATTR|VARY)(IN|OUT) macros comment fixes VideoSoftware: remove const memory usage of DebugUtil Truncate the path on logging Add a hotkey for disabling the framelimit. Add set/get functions for IsFramelimiterTempDisabled drop Host_GetKeyState ogl: fix signed vs unsigned comparison warning ShaderGen/D3D: inline centroid ShaderGen: merge early-z blocks of ogl+d3d ShaderGen: use cbuffers for D3D ShaderGen: inline constant shaders PixelShaderGen: drop fmod as it isn't used any more PixelShaderGen: extract iround ShaderGen: make clipPos readonly ShaderGen: OGL: don't make a copy of "Normal" ShaderGen: make uv readonly remove unused and unexported function ogl: drop csaa support ogl: drop NV_framebuffer_multisample_coverage ogl: add ARB_texture_multisample ogl: use ARB_texture_multisample for msaa ogl: pixel format shader without resolving Jit64: remove unused FlushMode enum RegCache64: remove unused functions RegCache64: move x?locks into register structs RegCache64: Use std::array RegCache64: devirtualize RegCache::Start RegCache: merge fpr+gpr StoreFromRegister RegCache: merge fpr+gpr BindToRegister RegCache: make state clear optional on flushes Jit64: Don't flush the regcache on bcx OGL-StreamBuffer: don't use coherent mapping OGL-StreamBuffer: allocate fences in StreamBuffer directly OGL-StreamBuffer: make the SLOT calculation much easier OGL-StreamBuffer: move alignment to caller OGL-StreamBuffer: replace size_t with u32 OGL: speed up the EFB cache VideoCommon: use the Light struct in XF memory PixelShader: use the vertex const buffer for ppl PixelShader: remove the duplicated ppl constants LightingShader: hard code const variable VideoCommon: remove unused stats Statistics: Reformat stats string VideoCommon: normalize lighting direction. VideoCommon: Cache native vertex formats ConfigManager: fix alignment CMake: warn on missing declarations mark all local functions as static CMake: warn on missing variable declarations mark all local variables as static avoid the extern keyword in .cpp files remove unused globals PixelShaderGen: fix indentation ogl: fix rasterfont VertexLoader: cache NativeVertexFormat glx: fix shutdown hang VideoCommon: remove XFReg copy optimization VideoCommon: rewrite frame skipping code PixelShaderGen: replace multiplication with shift DriverDetails: mark intel buffer_storage bug as fixed OGL: force enable postprocessing OGL: fix interpolation of PP shaders VideoCommon: Remove GetPointer in fifo code OpcodeDecoder: Skip recursiv display lists OGL: implement bounding box support with ssbo OGL: fix buffer destruction OGL: also show driver warnings on release builds OGL: disable bbox writes if not supported use GL_TEXTURE_2D_ARRAY for most of our textures GeometryShader: Don't read from output variables OGL: require GL version >= 3.0 Common: Add a built-in profiler VideoCommon: fix include order VideoCommon: rewrite DataReader VideoCommon: fifo cleanups VideoCommon: cleanup OpcodeDecoder VertexLoader: Move the old Datareader function into VertexLoader VideoCommon: Rename s_pCurBufferPointer VideoCommon: clean up VertexLoader UnitTests: fix VertexLoaderTest PixelShaderGen: merge OGL+D3D bbox OGL: fix efb pokes VideoSW: rewrite VertexLoader to use the VideoCommon one Jit: move constants out of class GLX: try to get an OpenGL 3.3 core context VideoCommon: merge debug info generators VideoCommon: merge debug test generators OGL: draw shadows within rasterfont itself OGL: don't clear the stencil buffer OGL: Fix OGL3 with stereo enabled OGL: move osd warning for not supported stereo mode into config validation VideoCommon: Make GPU syncing hack optional VideoLoader: remove VAT_*_FRACBITS VertexLoaderUid: remove operator< VideoCommon: Move NativeVertexFormat cache to VertexLoaderManager VertexLoader: remove inlined getters VideoCommon: split VertexLoaderBase from VertexLoader VertexLoader: Add a test loader which compares two vertex loaders VertexLoader: Add a VertexLoader pointer to each function call VertexLoader: Merge dummy functions VertexLoader: Skip vertices with position index = -1 OGL: fix ssbo based bbox support OGL: disable driver warnings fetch VideoCommon: rewrite custom textures VideoCommon: Merge code to generate texture names on dumping VideoCommon: make hash independet from hires textures VideoCommon: fix deterministic dual core TexCache: Wipe pal hash TexCache: don't load tex level 0 on creation TexCache: remove expanded_width TexCache: don't invalidate efb copys because of config changes TexCache: rename OverlapsMemoryRange TexCache: unify global variables TexCache: clean up frameCount handling TexCache: use c++11 syntax for std::map::erase TextureCache: inline arguments into texture cache TexCache: cleanup max texture level TexCache: create a const Config struct TexCache: rewrite level calculation TexCache: Choose texture based on mipmap count OGL: Warn about wrong texture sizes TexCache: recreate the entry on level missmatch VideoSW: Fix vertex skipping TexCache: remove PC_TexFormat TexCache: merge texture and rendertarget factory function TexCache: also incude textures within the render target pool TexCache: use an unordered_multimap for the tex pool TexCache: don't try to aggressive reuse the entry Externals: add xxhash xxhash: Add cmake + VS files CustomTexture: check for min/max index on paletted textures CustomTexture: Use always safe texture hash CustomTexture: Use another file name with wildcards CustomTexture: Mark textures with mipmaps CustomTexture: also support the legacy format CustomTexture: Convert old format automatically CustomTexture: use xxhash CustomTexture: fix texture format TexCache: Rewrite the texID generation for paletted textures OpcodeDecoder: Calculate decoding time for vertices VideoBackends: set GLInterface to zero after deleting it HotKey: fix warnings ShaderGen: Fix pixel offset correction VideoCommon: use a new async event system for efb access VideoCommon: implement swap requests in the full async way VideoCommon: bbox by async events VideoCommon: perf querys by async events Revert "High quality resampler" OGL: support palette texture decoding VideoCommon: always enable efb copy VideoCommon: rename efb2tex and efb2ram TexCache: increase TEXTURE_KILL_THRESHOLD TextureCache: load all mipmap levels from custom textures enet: Search for shared library GLX: fix memory leak Remove TM character which breaks our buildbot Fifo: use the outer loop on sync GPU Fifo: rewrite sync on idle skipping hack Fifo: only sleep once within every ms of emulated time Fifo: only touch the SIMD state once in the single core loop Fifo: rewrite Fifo_PauseAndLock Common: Remove TLS usage in GetLastErrorMsg no-gui: fix help string PixelShaderGen: apply zfreeze before ztextures CustomTexture: prefetch all available textures VideoCommon: Abort texture prefetching on low RAM VideoCommon: Merge EFB pokes OGL: reimplement poke-color Jitregister: fix common-core dependency VideoCommon: Make BBox emulation optional BBox: remove now unreachable SW bbox implementation VideoCommon: return 0 if bbox is disabled VideoCommon: Warn if bbox is disabled but used BBox: Touch old gameinis again DSP: Inline DSPControl into DSPState DolphinWX: Drop dead hotkey button. Common: Fix IsTriviallyCopyable macro for GCC 5 AudioCommon: Remove lock on Pause state HiresTexture: Fix prefetching with broken textures OGL: Always use sampler objects. Fifo: Extract syncing loop Common: Update BlockingLoop to only use one atomic. Unittests: Add BlockingLoopTest HotKey: Allow more than one hotkey at the same time. DolphinWX: Also evaluate Hotkeys while stopped. InputCommon: Change default hotkey for home and start. OGL: Rewrite POKE_Z with a draw call Hotkeys: Fix duplicated called hotkeys. Hotkeys: Implement default hotkeys Hotkey: move some code into ParseHotkey Config: Add SyncOnSkipIdle GameIni option Fifo: Rewrite SyncGpu Hotkeys: Fix "Select State Slot" GameIni: Remove default Projection Hack Hotkeys: Fix missing hotkey strings Options: merge SCoreStartupParameter into SConfig Hotkeys: Fix translation array Revert "GeometryShaderGen: Don't use `centroid in` for input variables." Revert "GeometryShaderGen: Don't use `centroid in` for input variables." Interpreter: Idle skipping support JitArm64: Support branching fallbacks JitArm64: Drop icbi instruction JitArm64: Partially fallback on bcctrx Jit64: Fallback support of branching instructions JitArm64: Implement EXCEPTION_FPU_UNAVAILABLE support. JitArm64: Far Code Cache JitArm64: Move all FLUSH_MAINTAIN_STATE to the far cache JitArm64: Fix copy&paste issue CodeBlock: Add a shared IsAlmostFull function CachedInterpreter: New kind of jit which always fallback to interpreter. JitArm64: fix stfsux JitArm64: fix lfd OGL: Move copy_image variable into backend. DriverDetails: Disable GL_ARB_copy_image on mesa. PPCAnalyst: Mark function as static Wiimotes: Initialize all atomic globally. JitArm64: zero extend RC for cmpli JitArm64: disable addzex JitArm64: fix addzex JitArm64: optimize addzex JitArm64: Implement dcbt JitArm64: Fastmem: fixup map & lookup JitArm64: Move all pointers into the map JitArm64: Fix jit clearing AX-HLE: Call HLE on mailbox write DSP HLE: Remove timing informations from ucodes Profiler: Sort output by total time Jit64: Faster linking of continuous blocks JitArm64: implement crXXX JitArm64: Faster linking of continuous blocks JitArm64: Implement subfex JitArm64: Implement subfcx JitArm64: Implement addex JitArm64: Implement subfic JitArm64: Implement divwux JitArm64: Implement srwx Jit64: implement dcbf + dcbi Jit64: Optimize dcbx JitArm64: Implement rlwnmx JitArm64: simplify fpr call JitArm64: Optimize fpr.R() JitArm64: Remove FLUSH_INTERPRETER JitArm64: Fix subfic JitArm64: Fix lwbrx and lhbrx JitArm64: Fix float load & store Android: Abort the screenshot after 2 seconds VideoBackends: Reimplement SSAA, now for D3D + OGL OGL: reimplement SSAA based on ARB_gpu_shader5 VideoCommon: Drop "Disable destAlpha" hack JitArm64: Fix lmw + stmw GLInterface: Fix VideoSW on linux + OSX VideoSW: Drop HwRasterizer VideoSW: Drop SW bbox code VideoSW: Remove unused function Revert "GLInterface: Fix VideoSW on linux + OSX" GLInterface: Fix VideoSW on linux + OSX (v2) VideoSW: Don't raise a PanicAlert because of indices VideoSW: Wipe alpha on bypass EFB VideoSW: Split up OGL window handling VideoSW: Use OpenGL Core context Throttler + Mixer: Configureable variance OGL: Remove TCache::Entry usage in TextureConverter OGL-TextureConverter: Keep care about the global state ifself D3D-TextureEncoder: Remove TCache::Entry usage TextureCache: Split efb2ram from efb2tex TextureCache: Rewrite EFB Copy control flow TextureCache: Fix crash for invalid textures. VideoCommon: Create default implementation for state setters NativeVertexFormat: Inline Initialize in contructor TextureCache: Allow the backends to return nullptr for textures. FramebufferManager: Allow CreateXFBSource to return nullptr FramebufferManager: check for g_framebuffer_manager VideoSW: Wipe output vertices ConfigManager: initialize m_revision ShaderGen: Toggle value of uninitialized color. VideoSW: Use Zero for undefined colors. JitArm64: Fix single precision JitArm64: Fallback on FPRF usage. ConfigManager: Add get/set for missing ini options. MSAA: Store samples in ini files. Real Wiimote: Don't delay speaker data. VideoSW: Clear normal vertex data. VideoSW: Clear Vertex data before usage Throttler: Rename "framelimiter" to "emulation speed". VideoConfig: Use "GFX.ini" for both D3D and OGL. VideoSW: Use more VideoCommon Merge VideoBackendHardware into VideoBackend. VideoBackend: Remove simple wrapper functions. Fifo: Create a "Fifo" namespace. VideoState: Simplify dummy wrapper. Fifo: Fix SyncGPU. Fifo: More comments for SyncGPU functions. FifoPlayer: Use more enums. FifoPlayer: Sleep while high watermark is set. Thread: Limit thread name to 15 bytes on linux. JitArm64: Merge 3 way FP instructions. JitArm64: Also merge 3 way FP-PS instructions. JitArm64: Merge scalar 4-operant instructions. JitArm64: Merge ps_maddsX. JitArm64: Merge ps_mergeXX. JitArm64: Merge ps_mulsX. ArmJit64: Merge FP two operant instructions. JitArm64: Merge PS stuff into fp_logic. JitArm64: Merge ps_sumX. JitArm64: Merge more stuff into ps_maddXX. JitArm64: Single precision tracking. JitArm64: Track single precision in load/store. JitArm64: Track singles in fp_arith. JitArm64: Track singles in paired fp_logic. JitArm64: Track singles in frspx. JitArm64: Track singles in ps_mergeXX. JitArm64: Track singles in ps_mulsX. JitArm64: Track single precision in ps_res. JitArm64: Track singles in ps_sumX. JitArm64: Track single precision in ps_maddXX. JitArm64: Track singles in fcmpX. JitArm64: Track singles in stfs. JitArm64: Track singles in psq_st. JitArm64: Track singles in fabs. JitArm64: Replace REG_IS_LOADED with REG_LOWER_PAIR JitArm64: Remove LoadTo* helpers. JitArm64: Track singles in fselx. JitArm64: Track single precision in fctiwzx. JitArm64: Track single precision in ps_sel. JitArm64: Don't generate the carry if it's not used any more. JitArm64: Split addi from arith_imm. JitArm64: Optimize addi EGL: Also check for higher GL versions. CustomTextures: Fix loading of the last mipmaps. JitArm64: Fix LWZ idle skipping. JitArm64: Drop unused WriteExceptionExit. JitArm64: Precheck for exceptions before calling PowerPC::CheckExceptions. JitArm64: Store memory pointer once, not per block. JitArm64: Merge WriteExceptionExit. JitArm64: Rename global registers. JitArm64: Use a register as PC argument for the dispatcher. JitArm64: small cleanup, no changes JitArm64: Use immediate WriteExceptionExit more often. JitArm64: Align farcode entry points to 16 bytes JitArm64: Implement mulhwx JitArm64: Fix mulli. JitArm64: implement dcbx VideoSW: Drop SetViewOffset. VideoSW: Drop SetScissor(). VideoSW: Drop SetTevReg for colors. Android: Update gradle version PixelShaderGen: Move constant multiplication to constant generation. PixelShaderGen: Fixes implicit type conversion or PR #3772. Android: Also copy sys/Wii directory. Android: Check asset overwrite per file. Android: Also create directorys for the Wii files. CoreTiming: Trim max slicelength to the given value. VideoSW: Fix special case. SCM: Use std::string. OGL: Drop QC ES3.1 workaround. DriverDetails: Drop BUG_BROKENALPHATEST. OGL: Use coherent mapping on Qualcomm devices. JitArm64: Inline JitAsm in JitArm64. JitArm64: Use B() instead of BR() to jumo to ASM. JitCommon: Pass jit block instead of host pointer on linking. JitArm64: Check downcount on block linking. JitArm64: optimize bclrx VideoSW: Drop Update in XFB copy. VideoSW: Fix XFB config. GLExtensions: Fix OpenGL ES 3.2 handling. JitArm64: Clean up LWZ idle skipping. JitArm64: Check Exceptions on mtmsr. JitArm64: Handle ISI excepction. JitArm64: Fix broken block handling. JitArm64: Implement DSI exception. JitArm64: Fix dispatcher with MMU. Pierre Bourdon (701): We're not stable anymore :( Fix the icon used for Dolphin on windows Handle BP mask register better to avoid useless BP writes (causing flushes Use an unordered_set to track FIFO write adresses Fix the Zelda: The Wind Waker heat effect glitch. Do not fastmem addresses that were constant propagated Change the default GFX backend from D3D11 to OGL. SWCommandProcessor: fix the CPReg structure fields Starting point for the new MMIO interface MMIO: Port the PI MMIOs to the new interface. MMIO: Port the VI MMIOs to the new interface. MMIO: Port the MI MMIOs to the new interface (and rework that module exten MMIO: Port the DSP/ARAM/AI MMIOs to the new interface. MMIO: Port the DI MMIOs to the new interface. MMIO: Port the SI MMIOs to the new interface. MMIO: Port the AI MMIOs to the new interface. MMIO: Port the IPC MMIOs to the new interface (and move the IOB handling t MMIO: Port the EXI MMIOs to the new interface. MMIO: Port the VideoCommon CP MMIOs to the new interface (and provide fram MMIO: Port the VideoCommon PE MMIOs to the new interface. MMIO: Port the SW CP/PE MMIOs to the new interface. Remove the old MMIO access "interface". Use a pointer instead of a non-const ref in MMIO::Mapping::Read now that c Fix Linux build Dolphin now builds on Linux with only Source/Core as include dir Add an automated tool that does basic checking of includes sort order. Fix more header sorting issues in Common/ (now check-includes clean). Fix more header sorting issues in DiscIO/ (now check-includes clean). Fix more header sorting issues in AudioCommon/ (now check-includes clean). Fix more header sorting issues in InputCommon/ (now check-includes clean). Fix more header sorting issues in VideoCommon/ (now check-includes clean). Fix more header sorting issues in DolphinWX/ (now check-includes clean). Fix more header sorting issues in VideoBackends/ (now check-includes clean Fix LinearDiskCache.h relying on a file not directly included. Add a tools that detects include cycles in the Dolphin codebase. Make Common/ mostly IWYU clean (and fix errors in rest of the project dete Make DiscIO/ mostly IWYU clean (and fix errors in rest of the project dete Make DolphinWX/ mostly IWYU clean. Fix a compilation error introduced in PR #91. MMIO: Show the read/write size in invalid handlers. MMIO: Pass the provided high part/low part addrs to handlers in {Read,Writ MMIO: Fix a megaderp in the UniqueID function causing handlers to be overw WriteToHardware: Pass through the whole 0xCC008xxx area to GPFifo instead Remove Source/{Unittests,TestSuite}. CMake: detect GTest if it is installed Add the infrastructure required to easily add unit tests and test it with Tests: Add more MMIO tests as an example. Do not hard fail when running 'make unittests' without GTest. Unittests: Always use GTest from Externals (recommended way from GTest FAQ UnitTests: ensure the Binaries/Tests directory exists before linking. MMIO: Add a function to check if a given address refers to MMIO registers. MMIO: Pass pointers to the complex method lambdas when visiting. x64Emitter: Allow const pointers where it makes sense to do so. x64ABI: Add two more CallFunction functions (for additional parameter type x64Emitter: Add functions to call a C++ std::function from JITed code JitUtil: Optimize MMIO loads by generating code to directly access a given Add more tests for Common and Core/MMIO MemoryInterface: properly register region MMIOs. Do not force DSPLLE in Zelda HLE games anymore. Remove all trailing whitespaces from our codebase. DSPHLE: Rename files to remove redundant 'UCode' prefix. DSPHLE: Mass rename classes to match our coding style better. DSPHLE: Cleanup UCodes.{cpp,h} DSPHLE: Cleanup AX{,Wii}.{cpp,h} DSPHLE: Cleanup CARD.{cpp,h} DSPHLE: Cleanup GBA.{cpp,h} DSPHLE: Cleanup INIT.{cpp,h} DSPHLE: Cleanup ROM.{cpp,h} DSPHLE: Cleanup common style issues in Zelda.{cpp,h} (most of the file is DSPHLE: Remove 'ZeldaObsolete.txt' DSPHLE: Rename variables in the Zelda UCode to match Dolphin's coding styl CPUDetect: add support for MOVBE detection x64Emitter: Add the MOVBE instruction. Jit_Util: Provide two util functions to load/store and swap values, using JitAsmCommon: Use MOVBE everywhere it matters (!x86 only code, !old CPU su Jit64: Use LoadAndSwap/SwapAndStore where it makes sense. Common: Add a 'Flag' class that is used to encapsulate a boolean flag mani Common: Move the Event class to a separate file, and add tests for it. Fix Common::Flag: Add support for TestAndSet + test by implementing basic spin Common::Event: Implement in terms of Common::Flag to get rid of a volatile Common::Event: Add a faster Windows specific implementation based on the c DolphinWX Config: mark JITIL as slower to remove a source of confusion for WriteToConstRamAddress: support swap on 32 bit too CheckExceptions: add TODO and remove a wrong comment MMIO: Lazy-initialize read/write handlers since most are not actually used PowerPC: Get rid of the 'cr' field which was obsoleted by the new 'cr_fast Translation pull from Transifex Translations: update from Transifex, switch Gamecube->GameCube to match ch Common: Add a PCAP writer module DSPLLE: Improve initialization by using an options structure instead of in DSP: Add support for PCAP logging of CPU<->DSP communications Revert "Don't add segfault handler in interpreter mode" AVIDump: fix FFV1 encoding Change libav* autodetection to support framedumping on Ubuntu 14.04 SW: Call OnFrameEnd in the FifoPlayer XFB hack. Required to dump DFF frame IOWin: Make error 0x1F less noisy. IOWin: rework _IOWrite OVERLAPPED/bytes written handling. VertexLoaderUID: remove global state dependency VertexLoader: Simplify SetVAT VertexLoader: take the VAT object directly for RunVertices VertexLoader: Remove global state dependency on g_nativeVertexFmt x64Emitter: Fix REX encoding for SETcc Optimize PPC CR emulation by using magic 64 bit values CR: Replace some magic values with constants. Move GLInterface around to remove VideoBackends dependency on DolphinWX UnitTests: make it possible to build tests for code that has global depend VertexLoader: Remove more global state dependencies (this time IndexGenera VertexLoader: Add very basic unit testing to get started VertexLoader: Add more tests, including a few small benchmarks Jit64: Fix immediates being zero-extended to cr_val instead of sign-extend Revert "Jit64: Fix immediates being zero-extended to cr_val instead of sig VertexLoader: do not prepare for vertices if we need to skip them Revert "Catch broken configurations inside of the Post Processing shaders. VertexLoader: Change VtxDesc to use u64 instead of u32 x64Emitter: Remove a declared function that is never implemented x64Emitter: RDTSC now without a typo'd name x64Emitter: Assert when using an invalid POP instead of generating an INT3 x64Emitter: Error out on 8 bits CMOV, and emit 16 bits CMOV properly x64Emitter: Fix MUL with AH/BH/CH/DH registers. x64Emitter: assert instead of crashing when generating MOVZX with a wrong x64Emitter: Support FLD/FSTP with 80 bits operands x64Emitter: UNPCKLPS/HPS are now tested x64Emitter: Make it clear for both SSE to int conv that X64 regs are expec x64Emitter: Do not assert-fail on redundant MOVs, instead show an error lo UnitTests: Add tests for the x64Emitter x64EmitterTest: Fake support for all CPU extensions Fix DSP CMPAR disassembly Windows AVIDump: support "silent" frame dumping DSPHLE: Add a config parameter to dump UCode to disk ZeldaHLE: Rip out the whole voice processing code. Still boots games, but ZeldaHLE: Rip out more code, only keep normal version support and one CRC DSPHLE MailHandler: Synchronize reads and interrupts INIT UCode: reduce DSP initialization time Zelda HLE: Rewrite the control flow. ZeldaHLE: Implement more infrastructure and one sample source. ZeldaHLE: fix windows build ZeldaHLE: fix windows build again Zelda HLE: Implement HQ AFC samples decoding. Zelda HLE: Implement square wave sample source. Zelda HLE: Convert some ERROR_LOG to PanicAlert. Zelda HLE: Properly implement the square wave generation. Zelda HLE: Implement saw wave generation (sample source 0001). Zelda HLE: Value-initialize the std::arrays. Zelda HLE: Implement the PCM8 sample source. Zelda HLE: Add reverb emulation. Zelda HLE: Skip command words that are not commands. Zelda HLE: Initial support for Zelda Twilight Princess (GC) Zelda HLE: Implement sample sources 4, 7, 11 and 12. Zelda HLE: Add save state support. Zelda HLE: Add initial support for Wii DAC and SMG1. Zelda HLE: Fix and genericize PCM ARAM loading functions. Zelda HLE: Introduce behavior flags to handle UCode version differences. Zelda HLE: Add support for the light protocol. Zelda HLE: Fix reverb in the GC IPL. Zelda HLE: Add a missing mixing buffer used by GC IPL. Zelda HLE: Support both NTSC and PAL IPL. Zelda HLE: Handle the smaller VPBs used by the NTSC IPL. Zelda HLE: NTSC IPL provides the volume stepping explicitly. Zelda HLE: Add support for the Zelda: FSA UCode. Zelda HLE: Add support for the Pikmin 1 NTSC version of the UCode. Zelda HLE: Log the UCode version being used (CRC/flags). Zelda HLE: Add basic support for Luigi's Mansion. Zelda HLE: Implement sample source 3. Zelda HLE: Implement LQ AFC decoding (samples source 0005). Zelda HLE: Properly implement LQ AFC decoding. Zelda HLE: Only alert for mixing into back buffers for recent UCode versio Zelda HLE: Make the implementation less strict for recoverable errors. Zelda HLE: Support the per-frame sync protocol used by SMS. Zelda HLE: Update the CRC to games mapping (documentation only). Zelda HLE: Add support for the ZTP Wii UCode. ZeldaHLE: Add a missing game to the list of games to look at. ZeldaHLE: Properly implement light command 03. ZeldaHLE: Add a flag to disable Cmd0D on older UCodes. ZeldaHLE: Document that the crashy commands are not actually crashy on lig ZeldaHLE: Special case Cmd03 NOP handling to make it clear it shouldn't ev ZeldaHLE: Initial support for command 0C in both styles implemented by the ZeldaHLE: Support GBA crypto through command 0C. Reuses the pre-existing G ZeldaHLE: Implement constant patterns with variable step (sample source 0A ZeldaHLE: fix the constant pattern variable step computation. ZeldaHLE: really fix the constant pattern variable step computation. ZeldaHLE: Add new UCode version for Pikmin 1/2 New Play Control ZeldaHLE: Implement patterns 2/3 automatic regeneration. ZeldaHLE: Properly read remaining AFC samples when a whole frame is availa ZeldaHLE: Comment on the differences between FSA/ZTP UCodes. ZeldaHLE: Fix the AFC remaining samples logic on looping. ZeldaHLE: Add UCode version for Pikmin 1 PAL. Bump save state version. FifoDataFile: Revert PadFile changes from 4.0-1127. DolphinWX: Remove the dolphin-emulator.com check. Add linter script which will replace the ad-hoc commands ran by the linter ZeldaHLE: Add support for New Play Control! Pikmin 1 SectorReader: Fix reading the last block of the disc. Provide better scmrev defaults without .git Installer: Remove dual-architecture shim. StringUtil: Add a HexDump function. Externals: Add libcurl. scmrev: Add "distributor" option. Add an Analytics reporting system. Analytics: Implement UI. Automatic translation resources update from Transifex Automatic translation template update skidau (525): Added a small disc access delay to fix the missing music in Super Monkey B Added a check for the IOS version before overriding the OSGetResetCode() f Removed the IOSVersion check (caused some Wii games like Battalion Wars 2 Added code to update the PC before doing a fastmem write. Fixes games wit Corrected the XMM0 processing for pairedStoreQuantized in the x86 build. Increase the trampoline cache size to cater for fastmem writes. Added memchecks when the MMU is enabled. Thanks to comex for the fix. Removed duplicate definition of ibuild within JitIL.h. Fixes JitIL from h Changed the DSP ROM warning from a panic alert to an on-screen message. Added a check for a redundant mov in the fastmem writes code. Removed the auto setting of SEQUENCE_MS because the synchronised audio cod Take the size of the audio data into account when checking for the loop ad Update OpenAL-soft to 1.16.0 Added code to patch the codehandler's MMIO address to the currently runnin Added code to patch the codehandler's MMIO address to the currently runnin Updated SoundTouch library to 1.8.1 [r198] Added the EmuRunningState check to the GPU thread's FIFO loop so that the Moved the loop check back to a post-loop condition in DSP HLE AX ucode. T Re-added the acc_end_reached logic for AXWii. Hooked up the emulated Wiimote speaker. Route the wiimote speaker to the sound mixer (the host system's speakers). Used a constant for the default high value. Moved the linking of the FIFO CPWritePointer near where CPWritePointer get Replaced KillImmediate with BindToRegister in the tw instruction. Fixes t Fixed the "Undeclared identifier: uv0" OpenGL shader compile error that ap Added a xf.numtexgen != bp.numtextgen error log if there is a mismatch det Compile the ARAM DMA exception checks into the JIT block in a similar styl Re-added the ARAM DMA exception check. This fixes the audio cutting in an Added OPTYPE_LOADPS and OPTYPE_STOREPS instruction types to the PPC table. Added a CompileExceptionCheck function to the JitInterface and re-routed t Added a instant ARAM DMA mode which is enabled automatically when required Increased the savestate internal version. Added a small note for instant d Clean-up the leftover dspARAMAddresses code that was no longer needed. Re-added the change to make the dsp remaining block count zero-based. Fix Hooked up the emulated wiimote speaker's sample rate and volume set by the Removed the MMU Speed Hack option. The TLBHack is now enabled if the MMU o Added some of the MMU registers into the debugger Register window Corrected the physical memory access to MEM2 via the MMU. Fixes Toy Story Changed the FAST_TLB_CACHE to update its state only if the TLB cache is ac Fixed the step_size_bytes in the ADPCM Accelerator loop taking into accoun Corrected the step size bytes for the start of the DSP accelerator chunk. Clamp the AX Volume to prevent clipping. Patch by hk.konpie. Fixes issue Fixed typo in the MEM2 handling. Added a check for external exceptions that have been set. Prevents a fals Added a "Step Out" (aka "Step return") function to the debugger. Made the "continue", "stepover" and "stepout" functions work when the PC i Changed the step over routine to a single stepping version that steps unti Added a RAM Watch window to the debugger Added "Add to watch" context menu items to the Memory and Register windows Disable block linking while debugger stepping or if there are breakpoints Added a "Delete watch" context menu to the Watch window. Added a "View mem Added Load/Save function for the Watch window. Made the floating windows t Breakpoints and watches are now loaded and saved on start/stop. Saved Brea Removed the EXRAM_MASK from the safe address check as it was causing inval Added a new option to add memchecks from the Watch window. Fixed watch lab Fixed a crash that would occur when old symbol information was reused Fixed a crash that would occur if a new watch were added by entering a wat Disabled optimizations, block merging and instruction skipping code while Fixed a warning in the add memcheck from Watch window Fixed the endianess of the 32bit MMIO reads. Removed the DSP LLE on separate thread option. Disabled the DSP thread if netplay or a movie has been started Take into account the want_determinism option and do not create a DSP thre Ignore the emulated wiimotes speaker data if the sample rate is set at 0hz Packed the emu wiimote structs, removed swap16 and removed the speaker amp Added Australia to the list of valid PAL regions Separated out the CPU and GPU thread path to avoid clobbering. Removed the Update CPStatus before processing the FIFO events and force an exception c Added an exception check when the game is close to overflowing. Fixes the Fixed the fast disc speed option (immediately service the interrupt instea Updated C bit on TLB cache hits. Added TLB state to the save state file. Removed the tag check in InvalidateTLBEntry. All four TLB entries are alw Stored a copy of the PTE in the TLB like the real hardware does. Updated P Added GameCube Adapter support. Retrieved the endpoint addresses of the GC Adapter via the descriptor. Fixed wireless GC controller detection. Made the controller update thread- Moved the GC Adapter processing under "Standard Controller" as it appears Enable block-linking with MMU. Blocks that cause an ISI exception are not Fixed the non-responsive d-pad on the GC Adapter. Fixed -Wmissing-declarat Fixed the Y button (typo) on the GC adapter. Gave the GPU determinism game property its own ID so that changing it to " Corrected the buffer that is used by the GCAdapter thread. Removed redundant code from the GC Adapter interface. Added lock guards around the DSP LLE cycle count updating. Changed the isR Added an error recovery mechanism for the GC Adapter. Set the GC pad origin using the real hardware origin instead of the virtua Added a callback option instead of using a thread to read the GC adapter. Corrects the origin in the case where a GC Controller has been set in the Fixed the GC Steering Wheel and Dance Mat identification. Made the CPU thread wait for the GPU thread to swap, when XFB is enabled. Added GameCube Keyboard support. Draw buttons in rows of eight in the Controller config. Escaped the backslash character and relabelled the = key to EQUALS so that Fixed the emulated wiimote speaker's ADPCM sample rate. Patch by hk.konpi Fixed the GCPad and GCKeyboard getting initialised four times each. Added second parameter for the eject disc via StopMotor DI command. The A Added support for AGP. Original patch by GreyRogue. Added EEPROM saving to file. On DCBZ, mask the memory address to ensure that the address is within phys Added the ability to map gamepad buttons to hotkeys. Added a hash key finder. Fixed the memcard and AGP path parsing in Windows Fixed an overflow bug in Jit64. Changed the hash array to a CRC8 function. Initialised all controller interfaces together on CFrame construction to f Ignore hotkeys if the game has not started. Fixed the crash which occurred when opening Wiimote configuration before a Cleared the status of the GC Adapter before populating it with new data Moved the gcpad calibration from construction to runtime Ignore invalid rumble data sent over Netplay to the GC Adapter Removed the GC Adapter "Use Thread" option as it was not useful. Changed the GC Adapter rumble command to work like other controllers. Warning fix Added the ability to split the Debugger window horizontally and vertically Fixed the save state hotkeys so that they work with the Render to Main Win Fixed the Connect Wiimote hotkeys from getting activated while a GameCube Ignore the File Open command if a game is running Removed the requirement to have the Freelook option enabled for the freelo Increased the performance of the hotkey code by: Made the "Frame Advance" hotkey work while the key is held Made the freelook keys work while held down Fixed the crash that would occur when the Refresh button was pressed in th Renamed the Menu Accelerators to Key Shortcuts. Cleared the default mappin Readded the Key Shortcut function. Slowed down the freelook speed keys and allowed the depth/convergence keys Fixed a crash on launch which occurred if the hotkeys are not defined and Fixed the wiimote profiles not taking effect. Calibrated the GCPad even if the game does not explicitly do so. Cleaned up the controls lock that is not needed with 780eef68f6ec7deee1a11 Removed the controller update lock as it is no longer needed. Show no more than one FIFO error per session. Updated the input plugins reference of hwnd on game start. Fixes the emu Preliminary update to the GameCube to GBA link cable emulation. Fixes Zeld Added event.Skip() to the OnFocusChange event. Fixes the pulldown menus. Updated the hwnd for hotkeys. Revert the recent changes related to updating hwnd Track the co-ordinates of the mouse relative to the pointed window instead Skipped the calibration of the GC controller if it has already been calibr Removed the ability for PAL televisions to be set to progressive mode. Ignored the mouse position unless the cursor is over the Dolphin window. Catered for the case where ADPCM audio would loop before the end of the st Updated SoundTouch library to 1.9.2 Added the ability to search on previous value in the Cheat Search. Fixed a Tillmann Karras (383): Jit64: optimize floating-point/paired-single arith Document some UGeckoInstruction fields Document FPSCR fields Jit64: extract frsqrtex as method Jit64: fix typo in ps_sel and re-enable it Jit64: simplify ps_sel Jit64: implement ps_res Fix format string warnings Fix Bluetooth warnings Jit64: micro-optimize ps_sel x64: detect FMA support Jit64: Fix and re-enable psq_l for W=1 x64: support VEX opcode encoding Jit64: use AVX instructions in some places Jit64: don't unnecessarily load registers Interpreter: support non-IEEE mode emulation Interpreter: software-based flush-to-zero x64: add small warning if CPU has SSE2 but not DAZ Jit64: don't flush clean FPRs Merge branch 'ppc_fp' Jit64: fix fmrx regression Jit64: really fix fmrx regression Jit64: disable non-IEEE mode emulation x64: fix parameter names of WriteModRM() Fix warning Silence warning Jit64IL: nits Readme: add link to issue tracker x64: drop instructions that don't exist x64: add support for some x87 instructions Jit64[IL]: fix float conversions Interpreter: fix float conversions Re-enable non-IEEE mode support Fix some warnings Turn loops into range-based form Silence some Windows compiler warnings DSP: remove redundant expression DSP: add inline opcode documentation Remove X11InputBase (dead code) Add phire's more accurate DoubleToSingle version JitBackpatch: initialize InstructionInfo to 0 PolarSSL: update to current stable version (1.3.4) PolarSSL: adapt Dolphin to new version PolarSSL/CMake: validate cached values CMake: check PolarSSL version CMake: remove USE_SHARED_POLARSSL_LIBRARY Fix various warnings reported by clang CMake: fix escaping in miniupnpc test x64FPURoundMode: move things around a bit Convert MemoryUtil.cpp to Unix-style line endings Various changes suggested by cppcheck Crypto: small cleanup ArmEmitter: make it more readable Remove own round() implementation Fix the Windows build (broken in 315a8ba) Fix 32 bit non-Windows build SW renderer: add missing ClearCurrent() MMIOTest: fix sign warning Jit64::twx(): add assert message Update android.toolchain.cmake .gitignore: multiple build dirs and kdevelop stuff FPURoundMode: revert use of enums in bit-fields MathUtil: fix IsQNAN() Interpreter: less duplicate code in float compares clang-modernize -loop-convert clang-modernize -add-override clang-modernize -use-nullptr UCode_AX: don't always call NotifyAXThread() Interpreter: make some class members private UCodes: nits More range-based loops and overrides .gitignore: fix the build directory pattern Turn some non-const refs into pointers Tests: fix signed/unsigned comparison warning MathUtil: add constructors to IntFloat/IntDouble MathUtilTest: add test for FlushToZero Fix crash when pressing Tab Atomic: support clang 3.4+ Fix "warning: unused variable 'skipFrames'" BitFieldTest: fix warnings Optimize NOPs Add remaining possible uses of MOVBE BackPatch: make sure MOVBE is long enough Jit64IL: remove dummy implementations Jit64: use integer instructions for boolean logic Fix Fastmem on CPUs without MOVBE JitBackpatch: fix NOP padding Jit_Util: reduce NOP padding of 8 bit loads x64FPURoundMode: use fesetround() instead of asm x64FPURoundMode: always set x87 precision Fix LTO with GCC 4.9 Jit64: implement tw/twi more accurately Add a std::make_unique implementation Use std::make_unique where it makes sense to fixmeup rename fixmeup use Jit64: revert fmrx revert x64Emitter: J_CC: use 32 bit offset automatically Fix some warnings. Jit64: remove dead code Jit64IL: remove unused macro Jit64[IL]: remove code leftover from x86-32 JITs: add a macro for easy interpreter fallback AVIDump: cleanup AVIDump: update ffmpeg/libav API usage CMake: remove unused/duplicate definitions CMake: mention ffmpeg in libav messages CMake: update min. libav/ffmpeg library versions AVIDump: rename frame variables Reorder class initializer lists Remove unused variables enum CPUState: rename CPU_* to STATE_* CoreParameter: add enum CPUBackend Don't install segfault handler in interpreter mode Fix warnings unearthed by #579 Common: add macros for assisting branch prediction VideoCommon: version-check clang for workaround VideoCommon: fix clang version check VideoCommon: make version check easier to read VideoCommon: fix ifdef expression x64Emitter: add CVTTPD2DQ Jit64: implement fctiw/fctiwz Jit64: implement frsp Fix more warnings from #579 Jit64: re-enable ps_sum0 x64Emitter: make 'packed' parameter a bool x64Emitter: remove redundant "Gen::" CommandProcessor: mark some functions as static Fix and simplify GCPad::SetMotor() x64ABI: get rid of some duplicate code JitAsm: remove unused code pointers Reorder MainNoGUI shutdown Fix warnings about non-static variables Work around LLVM header peculiarity WiimoteReal: add m_ prefix to member variables WiimoteReal: shuffle code around WiimoteReal: inline unnecessary function WiimoteReal: use inheritance instead of #ifdef x64Emitter: fix bitwise AVX opcodes UnitTests: fix register symbol name in AVX tests UnitTests: add tests for bitwise AVX instructions Jit64: clean up casts in memory operands Add a .mailmap file Tools: buildbot try with binary diffs DSPHLE: fix an unimportant memory leak CMake: simplify some expressions buildbot-try: allow remotes other than "origin" SI_GCAdapter: properly clean up libusb x64Emitter: fix MOVLPD/MOVHPD x64Emitter: add MOVLPS/MOVHPS Fix indentation MemoryUtil: add comment for Valgrind MemoryUtil: mention Valgrind in mmap error message Jit64: fix psq_l/st regression D3D: remove unused variable DataReader: turn WritePointer into GetPointer VertexLoaderTester: fix a few problems VertexLoaderManager: make it nicer to read VertexLoader_Normal: use shorter notation VertexLoader_Color: clean up VertexLoader_TextCoord: reorder function list VertexLoader: remove old JIT XEmitter: overload MOVBE() VertexLoader: add new JIT Move MOVBE wrappers directly into XEmitter class VertexLoaderX64: implement pre-Haswell fallbacks VertexLoaderX64: suggestions by @magumagu VertexLoaderX64: fix duplicate register allocation VertexLoaderX64: fix a bunch of stuff VertexLoaderX64: make table lookup deterministic VertexLoaderX64: optimize color conversions VertexLoaderX64: register symbol for code page VertexLoader_Position: remove old JIT ideas VertexLoader: fix position offset bug VertexLoader: remove non-JIT SSE code VertexLoader: remove weird line VertexLoader: never reset alpha in 8888 colors VertexLoaderX64: support VAT.ByteDequant=0 VertexLoader: small clean up VertexLoaderBase: fix crash on invalid formats VertexLoaderX64: save XMM0 if the ABI requires it CoreTiming: fix warning VertexLoaderManager: assimilate GetVertexSize() Tools: add disassemble script for perf Externals: update libusb to version 1.0.19 Externals: add Dolphin-specific patches to libusb JitRegister: fix VTune integration Jit64: turn short jmp into near jmp DolphinWX: fix -e parameter Movie: reintroduce a local variable VertexLoaderManager: reset stats properly Fix -Wmissing-variable-declarations warning Fix VTune static library dependencies Common: add single header for all intrinsics Clean up the intrinsics #ifdef mess Common: move _mm_shuffle_epi8 to Intrinsics.h Common: move _M_SSE macro to Intrinsics.h Fix a -Wunused-result warning Fix some -Wsign-compare warnings Fix some -Wmissing-declarations warnings Intrinsics: drop custom _mm_shuffle_epi8() Fifo: drop unused functions Fifo: small cleanup DolphinWX: fix searching the game list in GTK Fix -Wreorder warning Fix include order of files outside of Source/Core Fix -Wswitch warning Add missing newlines at EOF enet: fix Visual Studio files Jit64: drop a FIXME that has been fixed for years Jit64: use MRegSum where appropriate VertexLoaderX64: fix harmless off-by-one error Fix warnings UnitTests: rewrite vertex loader tests SWVertexLoader: fix truncated components VertexLoaders: make positions more compact XEmitter: add PUNPCKLQDQ VertexLoaderX64: support SSE2 as a fallback VertexLoaderX64: use common code for FORMAT_FLOAT CMake: require wxWidgets 3.0.1 or newer Jit64[IL]: remove some unused stuff Fix -Wswitch warning Interpreter: use IntDouble instead of casts Jit64: drop unused argument from SetFPRFIfNeeded Jit64: rename twx to twX JitBase: small cleanup PowerPC: clean up instruction tables Jit64: indent far code because it looks nice x64CPUDetect: fix AVX2/BMI1/BMI2/HTT detection XEmitter: rename WriteRex to WriteREX XEmitter: rename WriteVex to WriteVEX XEmitter: add VBLENDVPD and VCMPPD XEmitter: restructure WriteVEXOp wrappers XEmitter: fix L bit in VEX prefix Interpreter: fix instruction table flags of frsp Jit64: fix ForceSinglePrecisionS/P Jit64: make ForceSinglePrecision more versatile Jit64: add packed optimization to frsp XEmitter: add BLENDPS/BLENDPD Jit64: optimize ps_sum Jit64: merge ps_sel into fselx Jit64: merge tri_op into fp_tri_op Jit64: merge ps_arith into fp_arith Jit64: merge ps_maddXX into fmaddXX Jit64: merge ps_sign into fsign Simplify some more license headers Add missing license headers Externals: add summary of licenses Relicense Dolphin under GPLv2+ Update license headers to GPLv2+ Tools: add script for updating license headers Set copyright year to when a file was created Jit64: fix ps_sum OGL: use GL_TEXTURE* constants zfreeze: fix 2-component positions Jit64: drop more x86_32 left-overs x64Emitter: drop duplicate enum & unused wrappers WiimoteReal: fix multiple Wiimotes on OS X Jit64: swap XMM registers for later optimization XEmitter: add FMA4 instructions Jit64: add FMA4 support to fmaddXX VertexLoaderX64: generate PIC Jit64: turn 32 bit addresses into offsets MemoryUtil: get executable pages near static data CMake: add ENABLE_PIE option Interpreter: fix NaN handling in FMA Interpreter: use the VERY_ACCURATE_FP code SDL: handle SDL_QUIT event VertexLoaderX64: revert 9da86092aeb1fda7470a661a36 zfreeze: cache vertex positions Revert "Jit64: add FMA4 support to fmaddXX" Jit64: optionally accurate NaNs Enable AccurateNaNs for "Dragon Ball: RKP" Interpreter: optimize NaN checks Interpreter: use std::isnan(x) instead of x != x x64FPURoundMode: fix comments Fix some warnings Common: drop GEKKO define Fix -Wformat-extra-args warning Logging: trigger _assert_() in release builds Jit64: fix pre-SSE4.1 fallback of ps_sum1 Jit64: fix pre-SSE4.1 fallback of ps_sum1 Interpreter: consolidate fdiv/fdivs/ps_div Interpreter: drop unused macros Interpreter: assign directly instead via variables Interpreter: simplify fres Interpreter: turn SNaNs into QNaNs Revert "Interpreter: assign directly instead via variables" CMake: fix PolarSSL test evdev: fix -Wunused-private-field warning VertexLoader: avoid empty lines in perf-$pid.map Jit64[IL]: drop WriteCallInterpreter Jit64: drop needless casts Interpreter: fix rounding of FNMA instructions Fix some warnings JitInterface: fix disassembly entry point PPCAnalyst: drop needless forward declarations JitRegCache: mark derived classes as final Jit64: use overloaded IsSimpleReg() where useful x64Emitter: add MOVSLDUP/MOVSHDUP Gekko: fix typos in HID2 Jit64: duplicate fres result into ps1 USBGecko: don't needlessly call StringFromFormat() Jit64: use BMI1's ANDN for andcx x64Emitter: check for immediates in BMI ops Jit64: make use of ANDN again x64Emitter: don't check flags for most BMI2 ops Jit64: clean up GetAllocationOrder() PulseAudio: fix small memleak evdev: don't pass null path to the kernel CachedInterpreter: avoid uninitialized value PowerPC: drop instructions not supported by GC/Wii PowerPC: fix typo in FPSCR comment Jit64: load PC only once after fallbacks Jit64: implement HID0 case of mtspr Interpreter: fix undefined bits of mffs Jit64: implement FPSCR related instructions AVIDump: fix -Wsign-compare warning Jit64: quickfix for mtfsfx Jit64: some cache flush changes Jit64: fix bugs in the FPSCR instructions Jit64: some byte-swapping changes CoreTiming: make loops easier to read CoreTiming: remove unused functions JitCache: drop unused method Jit64: remove unnecessary indirection OGL: remove unused variable Jit64: fix errors in FPRF calculation VertexLoaderX64: fix 2GB warnings Debugger: fix -Wunused-private-field warning Fix -Wunused-private-field warning FifoPlayer: remove leftover code mbedTLS: delete PolarSSL 1.3 mbedTLS: add version 2.1.1 mbedTLS: update license overview mbedTLS: run rename.pl script and fix errors mbedTLS: add Dolphin-specific vcxproj file mbedTLS: adapt CMakeLists.txt for Dolphin mbedTLS: adapt Dolphin's Visual Studio files mbedTLS: adapt Dolphin code Fix -Wuninitialized warnings Linux: detect perf and default map dir to /tmp Misc. style fixes OGL: simplify AA modes initialization Wiimote: simplify DoState() parameters VertexLoaderUtils: remove simple wrapper functions CMake: simplify FindMiniupnpc.cmake DiscIO: use std::min() in WBFS DiscIO: pre-swap WLBA DiscIO: merge initial WBFS reads DiscIO: fix reading the last sector in WBFS DiscIO: implement WbfsBlob::GetDataSize() DiscIO: implement CISOBlob::GetDataSize() DolphinWX: decompress discs to calculate MD5 hash PixelShaderGen: silence -Wformat-security warnings VertexLoaderX64: optimize 4444 color conversion VertexLoaderManager: symbolize magic constant VertexLoaderTester: drop superfluous newlines VertexLoaderX64: optimize more color swizzles OGL/ProgramShaderCache: small cleanup ShaderCaches: remove unneeded typedefs VideoCommon: flush vertex manager if components change VideoCommon: VertexManager -> VertexManagerBase VertexManagerBase: fix indentation VideoCommon: return code/uid from shader gens GLExtensions: remove duplicate typedefs DriverDetails: remove BUG_BROKENINFOLOG leftovers OGL: use StringFromFormat where appropriate VideoCommon: rename TextureCache to TextureCacheBase VideoCommon: drop unused variable/setter DiscIO: drop unused stuff Interpreter: don't always set FPSCR.FX on NaNs PowerPC: rename fcmpx to fcmpX JitArm64: fall back if FPSCR is used JitArm64: simplify fcmpX VideoSW: fix some warnings Fix warnings MMIO: correct error message Interpreter: deduplicate CR0 helper Interpreter: simplify mask helper Interpreter: simplify subtable handling VertexShaderGen: turn pseudo-mod into a simple and CMake: fix warning comex (372): Fix stack misalignment fix. Improve Atomic.h: Make CoreTiming's threadsafe events lock-free. Fix FifoQueue's atomicity on ARM. Don't disable SO_REUSEADDR on non-Windows, where it is safe. When hosting, don't try to connect if listening failed. Fix crash when a player leaves in NetPlay. operator= is a function too! std::forward is still appropriate. Remove FifoQueue iterator and RemoveThreadsafeEvents. Upgrade WX to r74856, mainly to support @2x. Don't call into wx in static initializers - crashes on Windows. Reapply shuffle2's patch. Add an explicit error message for outdated GCC, and remove some commented Fix my stupid attempt to depend on the entire Data/Sys directory. Darwin: Don't overwrite the C compiler if the user set one manually. Only include scmrev.h from Version.cpp. Remove "educational purposes only" from about message. Don't define _M_IX86 on ARM(!). Improve context structure handling on non-Windows. Comment out wx change to set WS_POPUP. Hack up wx to support @2x images in the toolbar. Oh please let's switch t Check in 2x versions of Clean*. Thanks, MaJoR1! 2x banner images! Fastmem writes for x86-64. Save only the registers that need to be saved rather than going through Pr Need to reload from XMM0 in this case. Fix Imm8 check. No need to std::move a return value. Thanks Billiard. Reset wxTAB_TRAVERSAL. Support a gcm revision-specific game ini for cheats + partially fix gecko Use a separate section for enabled Gecko codes, like AR. Move existing Melee AR codes to be for revision 0 and add JMC's for revisi Match ABI_AlignStack with ABI_RestoreStack properly. Fix use of ABI_GetAlignedFrameSize. Warning fixes: Trap to the debugger properly after BackPatch failure. Remove profiled re-JIT support in JitIL. Finish replacing ThunkManager with ABI_PushRegistersAndAdjustStack. Fix stfd, which was broken in the fastmem writes commit. Don't push registers before pairedStoreQuantized, that's dumb. Fix idle skipping. Merge branch '6663' Fix build-breaking typo. ...Forgot the XMM regs for x86. Fix storeSingleFloat stack alignment. Fix build issues on OS X i386. Fix updating the register even if an exception occurred in MMU mode. Don't waste time looking up the block if enableBlocklink is off anyway. Make JIT_UNLIMITED_ICACHE always on. Minor JitCache cleanup. Remove "deprecated" and unused function Read_Opcode_JIT_LC. One shudders to imagine what inhuman thoughts lie behind that code. Remove more unused stuff. Remove unused variable waitingForPEInterruptDisable. Perf: Use unordered_map instead of map in very slightly hot function. Try to atomically save config files. Fix config file saving on Windows. Fix out-of-tree build on OS X. Fix TextureEncoder.h Basic precompiled header support for Linux/OS X. Shaves 20-30% off full r Don't define __rdtsc if x86intrin.h already does. Update Global Melee Netplay Settings to add Pokemon Stadium. (There is pr Actually enable PCH. Fix build on Mavericks. Fix Linux build issue. Add git.bat to the options in make_scmrev.h.js because depot_tools uses it Improve ChunkFile.h: Merge remote-tracking branch 'shuffle2/vc12' Handle screenshot saving in RenderBase. Removes dependency on D3DX11 for fix non-HAVE_WX case Actually, filename really does need to be a parameter because of some rand Be less dumb. Run code through clang-modernize -loop-convert to create range-based for l Run code through the advanced tool 'sed' to remove trailing whitespace. Run code through clang-modernize -add-override to add 'override' decls. Fix warnings. "warning fixes" commit introduced warnings; fix them. (And I refuse to us Update wx to r75363 to address a wx bug that was breaking netplay on OS X. Disable a certain clang warning for libpng. Fix an idiotic race condition when starting games in multiple Dolphin inst Oops, don't use -lrt on Android either. Remove the flawed, unused attempt to manually emulate Gecko codes. Add a non-tiny warning about CPUs that will silently desync. Fix IsTriviallyCopyable for volatile (fixes Mac build). Don't cast -1 to enum to represent a missing value. Fix harmless warnings. Switch from disabling a laundry list of warnings for wxWidgets to just dis Remove unused declarations. Reduce my idiocy in register saving code. Fix bloody printf specifiers. Improve wording of a particularly atrocious message. Remove unused variable m_zero. Refactor SetCpStatus into two functions for from-GPU and from-CPU mode rat A tiny restructuring to allow inlining of FifoCommandRunnable. Probably u Add Flag support to ChunkFile.h Unify three types of non-FIFO requests to the GPU thread around Common::Ev Re-enable the vertex loader JIT on OS X. PointerWrap currently checks its mode for every individual byte of everyth Refactor opcode decoding a bit to kill FifoCommandRunnable. Don't switch to a vertex array object of 0. Evict registers from the cache based on LRU. Reserve a register for ppcState. Fix a bug with update loads in memcheck mode. Factor code from ABI_CallFunctionRR and GetWriteTrampoline into a helper, Rationalize temporary register usage. Actually add RCX, plus RDI and RSI on Unix. Symbolicize explicit uses of x86 registers where possible (GPRs only for n Remove unused functions in TextureDecoder. Fix signed/unsigned warning in GeckoCode.cpp. Improve code and clarify parameters to ABI_Push/PopRegistersAndAdjustStack Remove the inaccurately named ABI_PushAllCalleeSavedRegsAndAdjustStack (it Remove ABI_AlignStack/ABI_RestoreStack and the noProlog option to ABI_Call Fix warnings. Fix missing "return" Wrap some function calls in ABI_Push|PopRegistersAndAdjustStack(0, 0); Opportunistically predict BLR destinations using RET. Shorten the blr stub a bit. Run exception handlers on an alternate stack on Linux. Reorganize backpatching a bit. Untested on ARM. Be pedantic about stack overflow on Linux and OS X. Add missing push wrapper around UpdatePerformanceMonitor Fix backwards #ifdef. Correct inaccurate comment. Reset RSP after calling Jit in case it cleared the code cache. Fix fastmem in JitIL after 755bd2c4. Add a fake SContext definition for _M_GENERIC. Fix warning in x64CPUDetect.cpp in generic build by not building it. Some changes to VertexLoaderManager: Fix threading issue with vertex loader JIT. Switch to an unordered_map as a micro-optimization. Mechanical changes to move most CP state to a struct rather than separate Changes to allow LoadCPReg to work in a preprocess mode which affects a se Rejigger some FIFO buffer variables to be more rational. Make ReadDataFromFifo static. Add the 'desynced GPU thread' mode. Add a central variable g_want_determinism which controls whether to try to Add the override config option. Add OpenGL 4.0-4.5 core extensions. ReadDataFromFifo is always called with len = 32. Remove the parameter to Fix focus detection on OS X by replacing wxGetActiveWindow with wxWindow:: Remove useless STACKALIGN macro. Change a bunch of reference function arguments to pointers. Merge branch 'Remove-MMU-Speed-Hack-option' of https://github.com/skidau/d Remove another auto .. -> declaration. Properly handle the Wiimote speaker data format being unknown. Don't pass u64 (which may be long long) to %lu. TAS warning fixes: unused vars, shadowing, incorrect (unsigned) If the stack overflow trap region has already been tripped, don't continue Make some variables static (should probably adjust for coding style too, b Fix signed/unsigned comparison and unused variable warnings. Revert "FastMem: don't let the backpatcher hit the same location twice" Rename the poorly named {Read,Write}BigEData to Copy{From,To}Emu - Add a test for page fault handling. Add a define to use sigaction on OS X instead of OS-specific page fault ha Use pointers instead of references in GetUidData to avoid the undefined be Improve some libcdio CoreFoundation code. Add missing includes where headers depend on other headers having been inc Fix 'sizeof' which broke in my reference-to-pointer conversion. Use double braces for std:array initialization to avoid clang warning. Add BitSet and, as a test, convert some JitRegCache stuff to it. Convert registersInUse to BitSet. Add workaround for OS X symbol clash and AllOnes helper method. Convert some VideoCommon stuff to BitSet. Add unit test. Create userdir/Dump/Frames as needed. Reorganize faulting stuff. Differentiate between arch- and OS-specific de Make EXI use CoreTiming events like everything else instead of having its Fix uninitialized GPU determinism mode for NAND titles or whatever. Link Foundation/CoreServices into unit tests so they build with DISABLE_WX Make check-includes.py properly report bad UTF-8 on all platforms rather t Fix UCodes.cpp to use UTF-8 encoding. Don't murder the default PATH and CMAKE_SYSTEM_PREFIX_PATH on OS X. Just Fix wxCommandEvent/wxThreadEvent subclass mismatch Remove Android hack. rename CopyDataIntoBundle target name to avoid wx/qt conflict Move library aggregation into common CMakeLists.txt; add missing libs to D Fix name conflict between SoundTouch BOOL and ObjC BOOL. Switch from deprecated Carbon idle tickling to Cocoa power assertions. Update Main.cpp version checks. Upgrade AudioUnit API usage. Remove runtime OS X version check. Manually revert d34418100be19fdbdf112febde3303edd48c9247 Have the UI thread do PauseAndLock before messing with GetUsbPointer. Join the emu thread in Core::Stop. Get rid of Core::Shutdown which did th Fix printf width in TraversalServer. Remove unused field. Exit ReadDataFromFifoOnCPU, PushFifoAuxBuffer early if shutting down (GpuR Fix code broken by merge Fix wx bullshit which made the watch view assert on my machine. Remove mnemonics in MemoryWindow. To make up for it, make pressing enter on the value textbox set the value. Automatically disable fastmem and enable memcheck when there are any watch On x86, disabling fastmem isn't enough actually. Use a fake exception to exit early in case of memory breakpoints. Remove checks that disable fastmem if debugging and ENABLE_MEM_CHECK are e ITYM PowerPC::Write_U{8,16}, not Memory:: Fix some false positive ScheduleEvent alerts: Rewrite FileSearch and improve ScanDirectoryTree. Fix CopyDir to not require source and dest paths to end with "/". Disable some stuff in IPC_HLE when determinism is required. Disable /dev/usb/hid too. The old g_want_determinism check in WiiSockMan missed a few cases. Move t Add a mode to use a dummy Wii NAND. Add a quick check to ScheduleEvent_Threadsafe to ensure it doesn't happen Don't randomly generate a serial number in deterministic mode. Fix determinism issues with Wiimote netplay. Update enet to latest master - 5f476546edabdf37509cd3448d1a616f5eca535d Explicitly specify .pc names, since the previous guess in CheckLib.cmake w Work around check_libs failing on OS X due to -x objective-c. Add check for enet_socket_get_address in shared enet. Disable shared libenet by default because I'm going to diverge it soon. fix duplicate variable definition Fix bug where Gecko codes would be "enabled by default" Fix subdialogs of the ISO props dialog... sort of Undo accidental screwup of some HiresTextures code from project-moration. Simplify and improve. Fix indeterminism in GPU thread mode. Disable warnings for wx headers Fix misc. clang warnings - mostly complaints about inconsistent use of ove Fix linking to libav in non-default path Fix DoFileSearch returning the passed-in directories themselves. Fix DoFileSearch returning the passed-in directories themselves. Fix wording of invalid read/write message Make the LLVM detect script verify that the dynamic library actually exist Forgot to add a slash in one bit of code I switched from D_WIIUSER_IDX to Mark which Wii root to use in the NAND path code. Synchronize DVDInterface::ChangeDisc with the CPU thread properly. Jules Blok (367): Fix coding style Fix compilation ControllerInterface: Move DInput ForceFeedback support to a seperate class ForceFeedback: Add OSX rumble support ForceFeedback: Don't depend on the force_type_name index. ForceFeedback: Fixed scoping bug Remove EmuWindow. Fix OpenGL video backend when using "render to main" on Windows. D3D: Reset viewport before drawing the OSD. RenderFrame: Set the background to black. Make the emulation stop asynchronous to prevent deadlocks. Frame: OnClose now handles asynchronous behaviour of DoStop(). Core: Return CORE_STOPPING even if hardware is already uninitialized. FrameTools: Update GUI and disable Play button when in stopping state. Check whether the core is running instead of checking if it is unitialized Movie: Do not attempt to record input when the emulation has not started y FPSCounter: Add "Log render time to file" feature. FPSCounter: Use a Timer for the FPS update time. Replace "Log FPS to file" by the "Log render time to file" feature. FPSCounter: Change format string to match value. Move FPSCounter calls to RenderBase. FPSCounter: Flush the logs every second and close them when the renderer i NoGUI: Add missing call to Core::Shutdown(). Shutdown the Core before other components. Turn the FPSCounter namespace into a class. FPSCounter: Remove redundant destructor. Don't create a Panel for a seperate render window. Remove CPanel. Frame: Make RendererHasFocus() compatible with the new window structure. Prevent DXGI from making changes to the window. D3D: Request desktop resolution before overriding the buffer size. D3D: Add exclusive fullscreen support. D3D: Return to windowed mode before destroying the swapchain. D3D: Initialize the renderer in exclusive fullscreen mode if it is enabled D3D: Make the swapchain available outside of the namespace. Renderer: Restore exclusive mode after focus has been regained. Cosmetic changes based on feedback on PR #506. D3D: Don't set the windowed mode size when we initialize in fullscreen. Renderer: Don't attempt to switch to exclusive fullscreen if "render to ma VideoConfig: Add "Borderless Fullscreen" option. Let the Renderer decide when to exit fullscreen. Exit exclusive fullscreen when the stop confirmation is shown. Frame: Make the fullscreen transitions more reliable. Renderer: Only notify the host when exiting fullscreen Remove the 3D Vision hack. CFrame: Prevent fullscreen switches if the renderer is halted. Cosmetic changes based on feedback on PR #506. D3D: Make the global swapchain static again. D3D: Set s_last_fullscreen_mode when constructing the renderer. FPSCounter: Initialize members. Frame: Only prevent exclusive fullscreen switches when the emulator is pau CFrame: Handle close events that can't be vetoed. CFrame: Check borderless fullscreen setting before enabling exclusive full CFrame: Don't check the video config fullscreen setting. VideoConfig: Ignore Borderless Fullscreen setting when the backend does no FrameTools: Add a wxPanel as the child of the RenderFrame. CFrame: Only re-assign focus when "Render to main" is enabled. CFrame: Add fullscreen window styles to enable exclusive mode in OpenGL. CFrame: Always exit fullscreen before showing the stop dialog. CFrame: Render to a child on Linux and Mac OS X. Replace BorderlessFullscreenEnabled by ExclusiveFullscreenEnabled. Support the borderless fullscreen option in all backends. Limit Borderless Fullscreen to Windows systems. Add geometry shader generator for stereo 3D. Pass VS_OUTPUT structs between shaders. VideoConfigDiag: Add Stereo 3D option. PostProcessing: Add layered stereoscopy support. VertexShaderManager: Compute stereoscopy projection matrices. PixelShaderGen: Sample the correct texture layer. TextureCache: Implement layered framebuffer support. GeometryShaderGen: Allow stereoscopy to be disabled. TextureCache: Check the number of layers before reusing a texture. TextureCache: Set proper vertex limit in geometry shader. ShaderGen: Add a stereoscopy flag in the UID data. ShaderGen: Handle ShaderCode objects directly. TextureCache: Ignore the geometry shader if stereoscopy is disabled. ShaderGenCommon: Move uniforms into a common static string. GeometryShaderGen: Support stereoscopy on GPUs without support for instanc ShaderGen: Rename "eye" to "layer". OGL: Recreate the framebuffers when the stereo setting changes. VideoConfig: Limit the Stereo 3D option to the OpenGL backend. GeometryShader: Transform the projection within the geometry shader. ProgramShaderCache: Always generate a geometry shader UID, even if stereos OGL: Disable stereoscopy if the GPU does not support geometry shaders. ShaderGen: Make use of padding to store the stereo flag. Cosmetics. VideoConfigDiag: Add stereoscopy options group. Cosmetics. Render: Improve SBS presentation. VideoConfig: Add StereoMode enumeration. PostProcessing: Add support for anaglyph stereoscopy mode. VertexShaderManager: Add stereoscopy options to swap the left and right ey OGL: Add Top-and-Bottom stereoscopy mode. ProgramShaderCache: Don't call glAttachShader if no geometry shader was co OGL: Also redefine glFramebufferTexture on OpenGL ES. TextureCache: Fix invalid cast. VideoConfigDiag: Update descriptions of stereoscopy settings. VideoConfig: Use a smaller focal length default. TextureCache: Force mono copies of the depth buffer. PostProcessing: Apply color correction to the anaglyph shader. Shaders: Remove fake stereoscopic shaders. GeometryShader: Replicate missing position manipulations from vertex shade OGL: Remove Virtual XFB SBS support. ProgramShaderCache: Abort shader compilation if geometry shader failed to TextureCache: Recompile EFB2Tex shaders when stereo 3D is toggled. GeometryShader: Adjust positions after projection. ShaderGen: Only pass VS_OUTPUT between shaders if stereo 3D is enabled. VideoConfigDiag: Update descriptions. TextureCache: Ensure that all render target textures have as many layers a VideoCommon: Switch to Nvidia stereoscopy offset formula. PostProcessing: Invalidate shader when anaglyph stereoscopy is toggled. TextureCache: Add "Mono EFB Depth Copy" stereoscopy option. OGL: Add warning message when stereoscopic 3D is enabled but unsupported. Add stereoscopy hotkeys. VideoConfig: Move stereoscopy settings to the Enhancements section. GameSettings: Force mono EFB depth copies in Luigi's Mansion. VideoConfigDiag: Remove value labels. VideoConfigDiag: Update convergence description. GeometryShaderGen: Add comments. GeometryShaderGen: Declare the vertex array size. GeometryShaderGen: Set the properties of the VS_OUTPUT struct in the uid. VideoConfig: Rename StereoFocalLength to StereoConvergence. VideoConfig: Limit the StereoMonoEFBDepth option to the game ini and intro VideoConfig: Add separation and convergence modifiers to the game ini. OGL: Display the stereoscopy support warning before the stereo setting is OGL: Only show the options when stereoscopy was enabled in the INI file. VideoConfig: Further optimize convergence and separation values and update OGL: Don't use texture arrays for MSAA. FramebufferManager: Bind only the first framebuffer layer when the EFB onl D3DState: Always update the m_pending members in the setters. D3DState: Set the pixel shader in m_current when linking dynamically. D3D: Use two slices for most of our textures. D3D: Add GeometryShaderCache. D3D: Add geometry shader stereoscopy support. D3D: Add SBS/TAB output support. D3D: Add 3D vision support. D3D: Restore viewport after stereo blitting. D3D: Use common GetEFBLayers() instead of GetEFBSlices(). D3DTexture: Bind textures as texture arrays. D3D: Add geometry shader instancing support. D3D: Set the geometry shader for triangle primitives. PixelShaderGen: Sample the correct texture slice. D3D: Recreate the framebuffer when stereoscopic 3D is toggled. PixelShaderCache: Add texture array support to static shaders. PSTextureEncoder: Add texture array support. D3DUtil: Use a geometry shader to clear all slices. TextureCache: Add stereoscopy support for EFB to texture copies. D3D: Add anaglyph stereoscopy support. Cosmetics PixelShaderCache: Fix MSAA shaders. Cosmetics D3D: Fix Nvidia 3D Vision memory leak D3D: Define decimals in floating point numbers ShaderGen: Remove the GS_OUTPUT struct for OpenGL. Cosmetics VideoCommon: Add a separate constants buffer for the geometry shader. GeometryShaderGen: Pass the primitive type and always run the generator re GeometryShaderManager: Upload Line/Point width constants. GeometryShaderGen: Redefine gl_InvocationID so we can use the same variabl GeometryShaderGen: Support multiple primitive types. VideoCommon: Assume we always use a geometry shader, not just for stereosc VideoCommon: Merge LineGeometryShader into GeometryShaderGen. VideoCommon: Merge PointGeometryShader into GeometryShaderGen. GeometryShaderGen: Declare a prototype for EmitVertex(). GeometryShaderGen: Use signed integers for the texture offset flags. GeometryShaderGen: Remove redundant declaration. GeometryShaderGen: Pack uniforms more tightly. VertexManager: Disable culling for lines and points. GeometryShaderGen: Cosmetics. GeometryShader: Disable the geometry shader stage if it is a pass-through VideoCommon: Pass interface blocks between shader stages to resolve naming OGL: Don't generate a geometry shader if the backend doesn't support it. D3D: Set the geometry shader before every draw call. GeometryShaderManager: Set the constants within the callbacks. VideoCommon: Only use interface blocks when geometry shaders are supported D3D: Use ROUND_UP macro for rounding buffer sizes. OGL: Check OpenGL version for geometry shader support. VideoCommon: Don't pass structs between shader stages when geometry shader GeometryShaderGen: Don't use the reserved keyword "point" in D3D. VideoCommon: Add in/out qualifiers to centroid storage qualifier. VideoCommon: Handle wireframe mode in the geometry shader. D3DState: Remove wireframe rasterizer support. VideoCommon: Make IsPassthrough() a function of the ShaderUid. GeometryShaderGen: Re-emit the first vertex when wireframe mode is enabled FramebufferManager: Return the depth texture instead of the color texture FramebufferManager: Support resolving a multi-layered EFB in D3D. VideoCommon: Don't specify the redundant in/out qualifier if GL_ARB_shadin OGL: Disable geometry shaders on Intel's Windows drivers due to broken int GeometryShaderManager: Set stereo parameters in a SetConstants() call. FramebufferManager: Support resolving a multi-layered EFB in OGL. FramebufferManager: Support stereoscopic EFB format changes. PixelShaderCache: Support stereoscopic EFB format changes. Frame: Fix a crash-on-exit on Mac OS X. FramebufferManager: Use a separate layer variable. Cosmetics. FramebufferManager: Copy all EFB layers to the XFB framebuffer. OGL: Support stereoscopic XFB blit to screen. FramebufferManagerBase: Only allocate one layer for Real XFB. GeometryShaderCache: Cosmetics. FramebufferManager: Copy all EFB layers to the XFB. D3D: Support stereoscopic XFB blit to screen. VideoConfig: Turn off stereoscopy when Real XFB is enabled. VideoConfig: Rename Separation to Depth and update descriptions. GeometryShaderManager: Boost convergence value. VideoConfigDiag: Enable stereoscopy options. VideoConfig: Rename "StereoMonoEFBDepth" to "StereoEFBMonoDepth" D3D: Remove obsolete Real XFB codepath. VideoConfigDiag: Don't enable the post-processing config button when there FramebufferManager: Return framebuffer target size in GetTargetSize(). FramebufferManagerBase: Remove obsolete parameters. Renderer: Use old method of calculating the source rectangle. XFBEncoder: Sample the first layer of the resolved EFB texture. GeometryShaderManager: Set viewport in SetConstants(). PixelShaderCache: Don't use GetDimensions() for the sample count. XFBEncoder: Cosmetics. D3D: Fix Virtual XFB viewport. Renderer: Invalidate the FramebufferManager if the XFB mode is changed. Renderer: Cosmetics. DriverDetails: Update Intel bug description. VideoCommon: Don't pass structs between shaders, use the interface blocks DriverDetails: Remove Intel Structs bug since it doesn't affect us anymore VertexShaderGen: Don't read from output variables. PixelShaderGen: Don't assign to input variables. Stereo3D: Don't rely on GetEFBLayers() when dealing with shaders. VideoConfigDiag: Remove double space. VideoConfig: Fix convergence parameter. VertexShaderManager: Turn off the epsilon hack for Nvidia 3D Vision. VideoConfig: Don't disable stereoscopy if Real XFB is enabled but not in u PostProcessing: Use Dubois algorithm for anaglyph shader. PixelShaderCache: Implement Dubois algorithm in anaglyph shader. Anaglyph: Use matrices instead of vectors. VideoConfig: Define a per-game minimum convergence value instead of a perc ISOProperties: Add stereoscopy per-game settings. PostProcessing: Mark all shaders constant. OGL: Fix stereoscopy not being applied properly while the game is running. D3D: Only try to apply exclusive mode when the renderer is in focus. Host: Add Host_RendererIsFullscreen(). D3D: Further improve exclusive fullscreen state checking. FramebufferManager: Remove unnecessary sampler declaration. D3D: Fix Dolphin immediately exiting exclusive fullscreen. D3D: Allow borderless fullscreen to be turned on/off during gameplay. Add exclusive mode OSD messages. VideoConfig: Add exclusive mode flag. PixelShaderGen: Fix uninitialized variables. PostProcessing: Add support for user-supplied anaglyph shaders. VideoConfigDiag: Allow anaglyph shader to be turned off. PostProcessing: Move default pixel shader to PostProcessingShaderConfigura GeometryShaderGen: Perspective divide the line coordinates before comparin D3D: Use the correct format when resolving the EFB depth texture. TextureConversionShader: Use a Texture2DArray to match the shader resource VertexShaderManager: Turn the epsilon hack back on for 3D Vision. ProgramShaderCache: Do plenty of error checking before writing shaders to Base.props: Remove DXSDK_DIR from the include path. VideoCommon: Implement EFB dumping for both backends. VideoBackends: Implement depth copy shaders with integer math. PixelShaderCache: Fix MSAA depth copy shader. VideoBackends: Use proper floating point depth precision. OGL: Change the depth buffer type to GL_FLOAT. OGL: Switch depth buffers to GL_DEPTH_COMPONENT32F format. VideoBackends: Floor depth values in depth copy shaders. VideoCommon: Clamp integer conversions. VideoBackends: Clamp Z peek values. VideoBackends: Use the new divisor when clearing the depth buffer. D3D: Use a 32-bit floating point depth buffer. PixelShaderGen: Use new multiplier everywhere and directly cast to int ins TextureConversionShader: Use floating point values in clamp(). PixelShaderGen: Clamp zCoord to the depth range. Revert "D3D: Use a 32-bit floating point depth buffer." VideoBackends: Clamp depth to uint24 range. Revert "OGL: Switch depth buffers to GL_DEPTH_COMPONENT32F format." Revert "OGL: Change the depth buffer type to GL_FLOAT." OGL: Use floating point arithmetic to scale the depth value. OGL: Add glClipControl support. VertexShaderGen: Use correct depth output when glClipControl is supported. OGL: Depth range inversion. D3D: Invert initial depth buffer clear. VideoBackends: Allow the viewport to use the full depth range. Revert "OGL: Use floating point arithmetic to scale the depth value." Revert "Revert "OGL: Change the depth buffer type to GL_FLOAT."" Revert "Revert "OGL: Switch depth buffers to GL_DEPTH_COMPONENT32F format. D3D: Remove obsolete comment. D3D: Set the viewport to the full target size when doing EFB pokes. D3D: Implement Z pokes. Decide whether Dolphin is stable based on the branch name. Merge branch 'master' into stable Merge branch 'master' into stable GeometryShaderGen: Don't use `centroid in` for input variables. GeometryShaderGen: Consistently use xfmem just as the vertex shader. Merge branch 'stable' Merge branch 'stable' Merge branch 'stable' OGL: Allow inverted depth ranges. D3D: Cosmetics. Merge branch 'stable' OpenALStream: Fix sample conversion. Merge branch 'stable' CheatSearchTab: Check Core state instead of checking a memory pointer. Merge branch 'stable' CFrame: Claim all keyboard events on OS X. Merge branch 'stable' Revert "Join the emu thread in Core::Stop. Get rid of Core::Shutdown whic Core: Don't return true on IsRunning() when stopping emulation. CFrame: Ignore "Pause on Focus Lost" when not started. Merge branch 'stable' FrameTools: Disable hotkeys while a modal dialog is shown. Revert "Join the emu thread in Core::Stop. Get rid of Core::Shutdown whic Core: Don't return true on IsRunning() when stopping emulation. FrameTools: Disable hotkeys while a modal dialog is shown. HotkeyManager: Activate hotkey when key is pressed. Merge branch 'stable' Revert "VideoCommon: Clamp integer conversions." TextureCache: Remove redundant floor(). Readme: Update issue tracker URL. OGL: Invert Top-and-Bottom mode. VideoConfig: Change convergence setting to percentage value. VideoConfigDiag: Snap the convergence slider. VideoConfig: Move all GameINI stereoscopy options to the stereoscopy secti ISOProperties: Replace the ConvergenceMinimum option by the Convergence op VideoConfig: Move all stereoscopy options to the stereoscopy section. UserPreferences: Move all stereoscopy options to the stereoscopy section. VideoConfig: Fix stereoscopy preset settings. Render: Clamp the z range to the full range. VertexShaderManager: Add an epsilon hack to the perspective projection. VideoConfig: Don't give warnings for per-game stereoscopy parameters. FrameBufferManager: Fix typo in stereoscopic MSAA shader. D3D: Use a 32-bit floating point depth buffer. D3D: Use the full depth range for Z pokes. TextureConversionShader: Also invert color encoders if they're used to enc IniFile: Initialize with default value if key does not exist. VideoConfig: Replace FastDepthCalc by ForcedSlowDepth. Android: Remove FastDepthCalc option. GameSettings: Remove FastDepthCalc entries. Scott Mansell (320): Corrected names of GetXFBAddress* functions in header. VideoSoftware: Added Real XFB support. Appease the all powerful buildbot. Now Compiles on Visual Studio. Fixed nogui build. Fixed a few issues bought up in code review. Merge commit 'fa8a4cdbb57e' Fixed issues with feild ordering. Remove all refrences of field ordering from video backends. Merge branch 'fix-field-ordering' Videosoftware realxfb: Fixed a few bugs while testing Zelda: Collectors Ed Added a Bypass XFB option to Videosoftware's configuration. Fix a few typos. Merge branch 'master' into videosoftware-xfb Remove c++11 feature so VC2010 can be happy. Increase res of color texture to match PAL Super Smash Bros: Brawl Dynamically allocate color textures. Opengl: Fix opengl realxfb "macroblocking"/bluring issue. Fix Desktop GLSL versions in the recent changes. OpenGL: Enable filtering for EFB to Real XFB copies. Add comments for anybody attempting accuracy improvements in the future. Fix stupid bug in Z16L depth texture efb2ram encoding shader. Finally Merge branch 'videosoftware-xfb' Videosoftware: Fix memory cleanup code. x64Emitter: Add the xmm, xmm form of PSRLQ instruction. x64Emitter: Fix the PSUBQ instruction's opcode Interpeter: Fixed ConvertToDouble to match the manual. videosoftware: Added hack to bypass xfb just so fifoplayer works. Revert "DolphinWX: Use non-deprecated flags for the monospace debugger fon Fix another protential issue with casting. Fix incorrect clamping in SWRenderer. Fixed Frame dumping in VideoSoftware. Audio Mixer: move Static variable to a member variable. Correct left/right volume for padded samples. Update the Pokemon snap Pal ini to match NTSC. VideoSoftware: Use the same max XFB size as VideoCommon. Implement the correct method for determining field order. Fix PPC_FP on non-sse4.1 code paths. Make Invalid instruction debug assert a non-debug assert. Don't write to EXRAM if it doesn't exist. Panic on invalid reads/writes for non-mmu games. GetOpInfo: Assert on all invalid Ops. Fix bug in Load Paired so JitIL actually runs again. JitIL: Fix matching bug in Store Paired. Fix IsMMIOAddress Check. Fix Idle Skipping in JitIL. Fix Fastmem in JitIL for massive speed gains. IPC_HLE: Replace (const char *)GetPointer(x) with GetString(x) Eliminated getPointers which are memcpyed or memset. Remove another 3 getPointers. Revert changes preloading of RGBA8 tiles. Update pointer types in memmap.cpp to match dolphin style guide. Remove commented out EFB arena code. Round up 7 nibble constants to 8 nibbles, for readablity. Add range checking to CopyTo/FromEmu so it won't segfault. Remove old (and now incorrect) error checking code. Remove dumb getPointers that actually want the whole memory block. And clean up this GetPointer() while I'm here. Fix DSPLLE for games which DMA data from MEM2 to the DSP. Fix Indentation in PR 1450. Remove GetPointers in VideoSoftware. Wii Net SSL: Use std::string for hostname. Remove GetPointer from Wii USB Keyboard. Clean up debug string functions in OS_HLE. De-memsetify Wii_SSL and fix segfault. Move worldpos into it's own varying. Fix various issues with zfreeze implemntation. Make zfreeze use screenspace coordinates independant of IR. Fix pixelshader constant offsets. Reduce number of divisions in screenspace transform. Ensure that ZSlopes save/restore state correctly. A few small cleanups based on code review. Move Zfreeze code out individual backends into videoCommon Stop doing nastly shit to OpenGL stream buffers. BootElf: Use unique_ptr instead of vectors. BootUp: Clean up elf BootUp code. ElfReader: Clean up elf loader code. IsWiiElf: Optimise inner loop. Added a comment to document an issue with the codegen. JITIL: Improve address calulation for float loads/stores. Propagate elf loading failure up. Make the IsMMIOAddress function easier to read, add tests. Fix a buffer underrun in CalculateZSlope. Remove VBeam Speedhack. Remove now useless NumFields Function which always returned 1. Remove unneeded spaces from code. Cleanup DotProduct function to make it more readable. Fix regression with directx when zfreeze=true and ztest=false. Make immediates more explicit Make OpArg.offset and operandReg private. JitIL: Fix a bug in floatpoint load/store instructions. While I'm here, Add some comments. Fix invalid pointer errors in Burnout 2. Clean up cached_arraybases. Update VideoSW to new scheme. Add a dirty flag for arraybases. IPC_HLE: Simplify lifecycle of devices with shared pointers. IPC_HLE: Don't open/close file for every single file operation. Linux: Add an evdev based controller backend, to replace SDL. Linux: Disable SDL controller backend by default. CMake: Explicitly pull in threads. Linux: Don't allow dolphin to be build without evdev support. evdev: Support axis with ranges which extend below zero. Merge branch 'stable' IPC_HLE: Reimplement fix for issues 2917/5232 with more sanity. IPC_HLE: Cleanup device definitions with templates. evdev: Delete rumble effects on the correct file descriptor. Interpreter: Fix bug with icache emulation. PPCAnalyst: Don't swap instruction which might cause interrupts. Merge branch 'stable' into 'master' Heuristic to detect if a gamecube game is rendering 16:9 widescreen. Make the GameCube game widescreen heuristic smarter. Widescreen Heuristic: Cleanup code. Cleanup and unify handling of efb copy stride. Move common EFB copy code into VideoCommon Improve comments for texture formats enum. Fix palette conversions for 4 bit efb copies. Use ROUND_UP instead of custom bittwiddling. Make efb2tex behave more like efb2ram. Workaround to allow partial texture updates to keep working in NSMBWii FifoPlayer: Don't check efb copy hashes when plaing back a broken dff Fix deadlock with KHR_debug. Drop DEBUG_SEVERITY_NOTIFICATION messages down to DEBUG_LOG Split OpenGL errors into a separate logtype from Video errors. Rearrange the logtypes into something closer to alphabetical order. Remove unused log type. Add some logging for depth tested efb color pokes. Remove segfault from DX11 backend. VideoBackendBase: Remove check for XP. Move GL interface code out of the OpenGL video backend. WGL: Don't depend on Core/VideoCommon AGL: Don't depend on VideoCommon GLX: Don't depend on Core or VideoCommon EGL: Don't depend on VideoCommon or Core FifoRecorder: Use Video Common to record efb2ram correctly. FifoPlayer: Fixup style of types. ALSA: Don't block on Clear() call. Bitset: Make cast overrides const LogManager: replace set of LogListener pointers with bitset. LogManager: Remove unused define. Bitset: Make bool() operator explicit. LogManager: Move android logcat code into the proper place. DolphinWX: Make UpdateLog() return in a finite time. PixelShaderGen: Use arrays of texture samplers. Support Conservative Depth as a fallback for EarlyZ Make sure FORCE_EARLY_Z is defined for GLES VertexShader: Remove 'special case' that has been disabled forever. Bitfield: Add .natvis for easier debugging in Visual Studio BitField: Clean .natvis up slightly by using CDATA. Bitfield: And then mess things up again by handling signed fields. Bitfield: Add BSD license to match BitField.h Correct capitalization of 'Visual Studio' CMake: Fix FindMiniupnpc for ubuntu 14.04 Just a minor cleanup. Totally not the cause of random FifoCi failures. BPStructs: add debug info for texture setup. Remove the "Show EFB Copy Regions" debug option. Fifoplayer: Load the Correct version number. NoGui: Return no to yes/no panic alerts. XFMem: Don't warn on writes of zero to unknown registers. Remove individual byteswaps and replace with generic function. FifoAnalyzer: remove un-implemented header FifoAnalyzer: Convert FifoRecordAnalyzer to namespace. FifoAnalyzer: Convert FifoPlaybackAnalyzer to namespace FifoAnalyzer: Unify DecodeOp/DecodeCommand FifoAnalyzer: Remove old code that was meant to handle EFB copies FifoAnalyzer: Remove layer of indirection. FifoAnalyzer: Double check command size while recording. FifoRecorder: Fix bug with normal vertex arrays. Fix lens flares in Mario Kart Wii. Revert "Config Hotfix: Prevent per-game settings (ie. GameINI) being store Revert "ShaderGen: Toggle value of uninitialized color." FifoAnalyzer: Fix a few warnings that visual studio missed. TextureCache, fix an incorrect assert. Normalize aspect ratio calculations to 4:3 Rework aspect ratio calculations. Avoid the "Memory stride too small" assert GameInis: Allow one ini to cover all VC games for a console GameInis: Deduplicate all C64 and TurboGrafx CD games GameInis: Deduplicate NeoGeo and "Virtual Console Arcade" games GameInis: Deduplicate NES Virtual Console games GameInis: Deduplicate SNES Virtual Console games GameInis: Deduplicate all Sega Master System games GameInis: Deduplicate Sega Mega Drive (Genesis) inis GameInis: Deduplicate TurobGrafx 16 Virtual Console games GameInis: Make all Virtual Console games 4:3 GameInis: All Sega Master System games need RealXFB GameInis: NES games that don't require EFB2Ram differ per region. Implement BLR Overflow handling for Windows. Implement Dithering for video software Adjust cycle counts so they are accurate to the jit block level CoreTiming: Fix 31bit overflow for events scheduling. Mark global variables with g_ prefix Store an inverted copy of lastOCfactor. Disable JitArm64's inline timebase implemenation, as it's incorrect. OpenGL: Cache query to max texture size. Updated D3D12 to build on the newer windows 10 sdk. Use a sane default for the controller update rate. Only force progressive if we are currently in an interlaced video mode "Instant" ARAM DMA shouldn't schedule and event too soon. Fix Metroid: Other M Alternative fix: promote cycleslate to an s64 everywhere. Fix netplay desync when using wii-u adapter. make DeleteDirRecursively clean up correctly after failure. Close all files so /tmp can be deleted on save state load. Make exceptions consistant across all JITs/Interpeters. Increase Audio DMA Interrupt delay to 200 cycles. IPC_HLE: Close file handles before savestating. Fixes DKCR crashing. Cleanup: fix an incorrect variable name. TextureCache: Track efb copies used in a partially updated texture TextureCache: Rename functions and add comments to clear up docs Fiora (257): Fix quant/dequant table bug JIT: Don't assume the reserved bits in GQRs are zero JIT64: correctly sign-extend immediate RC values x64Emitter: optimize immediate sizes JIT: correctly set skipNext even if conditional-continue is off Debugger: make "PPC to x86" open JIT window JIT: correctly set skipNext even if conditional-continue is off JIT: Don't needlessly flush register state in merged integer+branch code Debugger: fix blowup calculation Externals: update Bochs to newer version Debugger: fix blowup calculation again JIT: don't rely on undefined behavior for constant overflow checking JIT64: faster implementation of mfcr JIT64: faster + branchless crxxx JIT64: faster implementation of mtcrf and mcrxr Debugger: fix JIT block viewer PPC view JIT: flush *after* the merged branch, not before x64Emitter: refactor to support longer opcodes JIT: cleanup unnecessary immedate size-checking logic JIT: avoid saving the PC on every store PPCAnalyzer: move num_instructions initialization to correct place JIT: faster PPC_FP code Add AVX2/BMI1/BMI2 detection support JIT64: Fix fmul rounding issues Interpreter: apply the same odd rounding to single multiplies as the JIT JIT: fix incredibly silly mistake in fmul rounding patch JIT64: clean up and unify float load/store code JIT64: add mulhwx implementation PPCFP: add comment JIT: Initial FPRF support Bugfixes for fmul rounding Fix another absent-minded typo in the fmul interpreter patch x64Emitter: add support for some missing CVT instructions Jit64: some load/store optimizations JIT: make fprf conditional in fcmp, just like the other instructions JIT64: add frspx implementation JIT: fix RAM check in load-from-constant-address JIT64: try enabling dcbz again JIT: revert lmw optimizations MMU: fix enhanced BAT support Rename Log2 and add IsPow2 to MathUtils for future use JIT64: optimize multiplication by immediate constants JIT64: optimize rlwinmx/rlwinix and friends JIT64: Optimize cmpXX JIT64: optimize sign/zero-extend JIT64: avoid using LEA for adds when not necessary JIT64: use LEA for the "a = b + imm" case of addi JIT64: use xor instead of mov for loading a zero regcache immediate JIT64: tweak srwx/slwx BindToRegister arguments JIT64: Optimize carry handling JIT64: optimize some special cases of srawix JIT64: support merged branching for rlwinmx, too JIT64: optimize carry calculations JIT: Fix callee-save registers on WIN64 JIT: implement timer support in mtspr JIT: merge paired timebase reads where possible x64Emitter: add support for shorter EAX forms of instructions x64Emitter: add BMI1/BMI2 support JIT: implement frsqrte JIT: implement fres JIT: fix regression in timer patch JIT: remove srawix fallback JIT: completely inline timer reading Revert "JIT64: optimize CA calculations" Remove debug printf from earlier commit JIT: fix branch merging with bclr JIT: fix conditional-continue=off JIT: fix a corner case in crXXX Rename Log2 and add IsPow2 to MathUtils for future use JIT64: optimize multiplication by immediate constants JIT64: optimize rlwinmx/rlwinix and friends JIT64: Optimize cmpXX JIT64: optimize sign-extend JIT64: avoid using LEA for adds when not necessary JIT64: use LEA for the "a = b + imm" case of addi JIT64: tweak srwx/slwx BindToRegister arguments JIT64: optimize carry handling JIT64: optimize some special cases of srawix JIT64: support merged branching for rlwinmx, too JIT: fix running in debug mode JIT: remove op merging code that served no purpose JIT: use XCHG in MOVTwo X64Emitter: support shorter mov reg, imm opcodes JIT: unify subfe/submex/subfex/adde/addmex/addzex code JIT: unify subfcx and addcx code JIT memcheck: don't flush register state unless an exception occurs JIT: support paired load/store with MMU on JIT: add "far code emitter" to reduce L1I cache pressure JIT64: optimize carry calculations JIT64: optimize carry calculations further PPCAnalyst: refactor, add carry op reordering and non-cmp reordering PPCAnalyst/JIT: add ability to easily toggle branch and carry merging JIT: use far code emitter in more places JIT: make memcheck macro support an inverted mode JIT: fix memcheck with stXx JIT: fix memcheck on float load/store, plus some corner cases Add immediate tests for WriteNormalOp JIT: fix JIT with conditional continue off, again MMU: properly check MEM1 range on Gamecube games x64Emitter: add LZCNT/TZCNT support and detection JIT: use LZCNT in cntlzw Interpreter: fix carry calculation in srawx JIT: optimize andi(s)_rc JIT: save an instruction in psq_l Revert "Two small JIT optimizations" x64Emitter: fix silent failure if WriteNormalOp is passed two memory opera JIT: support immediate stores JIT: some paired singles optimizations JIT: various float optimizations JIT: Various JitAsmCommon optimizations JIT: add fselx implementation GekkoDisassembler: fix/improve disassembly for a few instructions GekkoDisassembler: fix some float opcodes JIT: use cvtsi2ss in paired singles JIT: update some rather outdated comments JIT: simpler fallback conditions for load/store float JIT: rename a few constants to be more accurate JIT: implement remaining psq_l/st instruction variants JIT: fix regression in ps_sel JIT: fix debug mode Debugger: make opcode search a bit better Debugger: scroll by multiples of 4 bytes X64Emitter: add MOVHLPS/MOVLHPS JIT: add ps_cmp0/ps_cmp1 implementations using current fcmp code JIT: add ps_res and ps_rsqrte using scalar implementations JIT: support byte-reversed stores/loads JIT: fix fsel/ps_sel implementations for NaN input JIT: change eieio and tlbsync to DoNothing JIT: fix indexed paired singles Disassembler: fix disassembly of some twi instructions JIT: a small optimization for subfex and friends JIT: merge lbz + extsb JIT: flush a register if it won't be used for the rest of the block JIT: fix merged bclr with comex's BLR optimizations Reorganize carry to store flags separately instead of part of XER JIT: generic branch merging JIT: enable block linking and idle skipping in debug mode JIT: fix bugs with ComputeRC in branch merging patch JIT: fix branch merging, take 2 JIT: fix carry merging across breakpoints JIT+Emitter: support locking flags Debug: fix display of instructions in virtual memory in MMU games Interpreter: remove debug printf in psq_l GekkoDisassembler: show W and I in psq_l/psq_st disassembly MMU: support loads/stores that cross page boundaries JIT: properly remove FIFO write addresses when code is invalidated Fix BAT register initial values in bootcode x64Emitter: refactor, add some new AVX instructions JitAsmCommon: remove a few redundant moves JIT: load registers if they're going to be used later in the block JIT: add more AVX support, reduce redundant XMM moves JIT: set clear_cache_asap to false when clearing the cache WIP: don't let the backpatcher hit the same location twice JIT: re-add profiling support on x86_64 X64Emitter: add FMA3 support X64Emitter: add unit test for FMA JIT64: use FMA instructions CPU: improve instruction table flags for RC bits Debug: fix disable block linking option JIT: fix accidental disabling of block linking by default JIT: add basic register allocation heuristics MMU: disable BAT resolution Hash: unroll CRC loop, since CRC32 typically has nontrivial latency JIT: fix profiler on non-Windows OSs Make EnableBATs an option instead of disabling it entirely Add FPRF interface option, change from EnableFPRF to just FPRF Use CRC to output 64 bits instead of 32 Fix FPRF flag setting MMU: allow page-table loads/stores if MMU is off JIT: micro-optimize cmpXX a bit more for lower latency/code size JIT: use BLR optimization to avoid anding LR with 0xFFFFFFFC JIT: reorder blr comparisons JIT: optimize mulhwu JIT: merge fcmpx and cror JIT: optimize crclr special case of crxor JIT: flush unused registers during branch merges JIT: more mftb fixes JIT: fix dumb mistake in crclr optimization patch JIT: genericize immediate address handling, support in float stores too JIT: fix valid_block marking JIT: revert cmpXX optimization JIT: fix typo in optimization patch JIT: fix register preloading JIT: remove accidentally left-in debug code JIT: add 64-bit write support to FIFO functions JIT: revert accuracy improvement to mftb D3D: fix issues with multi-level 1x1 textures on D3D Vertex Loader: SSE implementations of more position/texcoord/normal format JIT: remove "accurate fcmp" option JIT: clear FIFO write addresses when block cache is cleared JIT: fix Force25BitPrecision with accurate single precision mode off JIT: remove "fast interrupts" option set and then used nowhere JIT: fix fcmp+cror merging bug Vertex loader: use ABI_CallFunction JIT: skip weird fmul rounding if the input is known to be single precision JIT: minor cleanup, avoid MOVSD where MOVAPD will do JIT: float instruction attribute fixes, fix binding mistakes JIT: more optimizing of float ops based on known input characteristics JIT: remove unnecessary pxor in paired stores JIT: fix profiler call Sometimes this seems to require a 64-bit offset, so TLB: fix backwards exception check Vertex loader: optimize texmtx_write_float4 JIT: fix snan/qnan handling in float loads/stores JIT: fix possible panicalert in loadstore JIT: fix MOVD_xmm typoes in ConvertDoubleToSingle FIFO: allocate slightly more for SIMD vertex loader overreads JIT: free up a register by eliminating RCODE_POINTERS JIT: Fix redundant MOVs in x86 trampolines Eliminate some spammy log messages in MMU mode JIT: fix carry optimization on blocks that end early Memory: forceinline read/write hardware functions, TLB/page functions JIT: cleanups/optimizations for ps loadstore GekkoDisassembler: fix display of CRs in branch operations MMU: fix rollback in DSIs on page-crossing stores MemmapFunctions: various MMU optimizations Memmapfunctions: more refactoring and optimizations MMU: small simplification of TLB structure MMU: remove code that looks totally wrong MMU: remove goto in MMU fast past check MMU: enable fastmem stores MMU: handle exception checks in fastmem JIT: implement crset special case JIT: simplify and optimize memcheck macros Fastmem: jump to trampolines instead of calling them x64ABI: enhance MOVTwo to take an offset MMU: simplify code to restore original data register after failed load MMU: fix TLB behavior on setting C bit MMU: optimize PTE lookup code Fastmem: increase the size of trampoline cache in MMU mode, check space Memmap: clean up function argument names. JIT: move mfcr code to JitAsmCommon MMU: fix problems with blocks that cross vmem page boundaries JIT: catch illegal instruction errors Interpreter: fix slwx Support overclocking and underclocking the Gamecube CPU JIT: optimize for the common case of unquantized psq_l/st StringUtils: use C locale instead of .1252 JIT: make instruction merging generic JIT: fix regression in non-fastmem for psq_st Shawn Hoffman (226): Update to VS2013 and a slew of build-related updates. Notes: [vc12] std::min/max requires header. It should be in pch, but Add dxsdk_dir to vc++ paths via base.props. This means you no longer need do not copy pdbs to binary dir (you can use the symbol server for $(random rename the dolphinwx project to dolphin, and thus change the executable na [windows] update SDL-2.0.0 to 2.0.1. Fixes issue 6793. Re-plumb window handle to the dsound backend. commit 1a428de189eb9456695429adc11b606936218924 introduced a bug by using Allow VS builds to be speedy again. windows: move arch defines to base.props Implement workaround for Windows versions which do not support XSAVE. Assign "user_defined" value properly for downloaded Gecko codes. Apparently the debug build has not been freeing memory since 2008. Undo th Revert "x64FPURoundMode: always set x87 precision" D3D: Don't pass D3D10_SHADER_WARNINGS_ARE_ERRORS to the compiler in debug Redo commit 932945d4808e37ba0ca1a953571187f445e24f41 msvc C initializers return int...fix EnableXSaveWorkaround when rax doesn' Windows: Also look for git.exe in the registry (for Git Extensions install Use official flag for detailed symbols. Require VS2013 with update 3 or la Windows: Improve XSaveWorkaround to behave correctly when XSAVE processor Fix regression with toggling the toolbar from PR761 Windows: Give SCMRevGen a configuration for x64 instead of Win32. Windows: Use a shared precompiled header for dolphin code under Source/ Windows: Add /Zc:inline to compiler options. Add Common/Event.h to the VS project files. Add Common::Event::WaitFor(), which has the same semantics as std::conditi Rewrite raw memcard threading code. Intended to fix issue 7484. Windows: Enable /Zc:rvalueCast solution-wide. msvc: enable strictStrings solution-wide for release. msvc: disable compiler warnings when building all Externals (cl /W0), exce msvc: resolve all warnings in Core. msvc: resolve all warnings in VideoCommon. msvc: resolve all warnings in VideoBackends/Software. msvc: resolve all warnings in VideoBackends/OGL. msvc: resolve all warnings in DolphinWX. msvc: enable compiler warnings as errors. msvc: skip copying Data dir and precompiled dlls to Binary dir if they are windows: remove now-extraneous NOMINMAX and WIN32_LEAN_AND_MEAN #defines f Add headers required by XAudio2_7 to externals. Remove dsound audio backend. unittests: correct some integers which should have been floating point typ Revert changes to how DInput filters out XInput devices. This is to remain msvc: do not compile sample programs for miniupnpc and libpng. msvc: remove some remnants of SDL and DSound from projects and general cle windows: make failure to load hid.dll or bthprops.cpl not pop a msgbox, an msvc: get UnitTests compiling move the decision to delay raw memcard flushes out of the thread. This all Prevent changing adapters during emulation and VideoConfigDiag cleanup Re-implement hiding of the menubar in fullscreen with render to main. raw memcards: revert last change so flushes are still time-driven. It turn Fix render to main crashing in fullscreen. When hiding the menubar (for go Quiet initialization order warning in CFrame Qt: Add msvc support Add Qt submodule for windows. windows/qt: add (hopefully) all plugins DolphinQt should possibly need. Fix QtCompile.props to work if the repo path contains spaces. windows: use qt 5.4.0 Revert "Externals: add Dolphin-specific patches to libusb" make libusb vcxproj use standard dolphin template and don't compile strerr remove win32/mixed project configurations. windows: don't compile with openmp support quiet some warnings which appear on vs2015. quieted warnings include shado [windows] Remove ConsoleListener, which was not actually used. [windows] Just kill ExtendedTrace. [windows] Update projects to vs2015. Revert "Base.props: Remove DXSDK_DIR from the include path." Patch libusb to compile on vs2015. Patch wxw to compile on vs2015. [windows/wxw] Exclude files which don't publish any symbols. [windows] When making scmrev.h, also look for msysgit explicitly. VS2015 p [windows] remove various workarounds which were required for vs2013 [windows] Add workaround(HACK) for vs2015 implementating a conformant std: Drop the old msvcrt files. HostGetString: Actually fill a string with data Fix WiiSockMan::DecodeError exchange XSaveWorkaround (which was fixed in VS2015) for ucrtFreadWorkarou patch win7 ucrtbase, and note versions Update ucrtFreadWorkaround.cpp JosJuice (209): DVDInterface: Initialize variables DVDInterface: CAV disc drive DVDInterface: Add a delay for commands other than regular reads DVDInterface: Tweak speeds DiscIO: Safety check when allocating memory for TMD VolumeHandler: Return success value DiscIO: Clear error status when reading file Make WII_IPC_HLE_Device_DI call DVDInterface WII_IPC_HLE: Return delay time instead of using GetCmdDelay WII_IPC_HLE_Device_DI: Use the new accurate timing WII_IPC_HLE: Fix timing weirdness Fix 4.0-4724 GC IPL regression Only use bounds check for DVDLowUnencryptedRead Check if there is a disc for all disc reads Mark cover as open when no disc is inserted Always read 0x20 bytes of disc ID Re-add FileMonitor support for Wii discs FileMonitor: Get rid of "GC" from names and comments Never decrypt data when using DI command 0xA8 Add FileMonitor support for VolumeDirectory DiscIO: Replace "raw" functions with "decrypt" parameters Fix "Lionux" typo DVDInterface: Use default delay for DVDLowClearCoverInterrupt Fix 4.0-4901 VolumeDirectory stack overflow Don't read from disk when checking volume type VolumeWiiCrypted: Decryption optimization DVDInterface: Move fast disc speed check to ExecuteReadCommand DVDInterface: Don't use return for ExecuteReadCommand result DVDInterface: Schedule event in ExecuteCommand DVDInterface: Get rid of DVDCommandResult struct VolumeWiiCrypted: Replace some hardcoded values with constants Move some BootManager game INI code to CoreParameter CoreParameter: Unify LoadDefaultGameIni and LoadLocalGameIni CoreParameter: Support game INIs that match all regions Don't use revision-specific unique ID strings outside of CoreParameter Use CoreParameter's game INI functions in more places Delete WPPJJF.ini Automated de-duplication of game INIs DVDInterface: Read disc after delay, not before CoreParameter: Refactor game INI code ISOProperties: Allow opening region-free INIs with "Show Defaults" button Remove "Needed for a few games." from fast disc speed description Delete PH_PRESETS.ini Use three-character names for game INIs that don't have region siblings Manual de-duplication of game INIs FileMonitor: Check log level in addition to FileMonitor checkbox Call SetUserDirectory before InitLanguageSupport Display languages untranslated in GUI language selection Sort language list alphabetically by new names Fix 4.0-5689 regression (AR codes, patches) Don't construct NANDContentLoader classes before Main.cpp runs Switch RZDE01r2.ini and RZDE01r0.ini When loading incompatible savestate, display which version created it Make Speed Up Disc Transfer Rate not instant Get rid of VolumeHandler Fix terrible Speed Up Disc Transfer Rate mistake DolphinQt: Sort game list by ascending title order by default Main: Remove unnecessary shellapi.h include Fix extracting Wii disc partitions numbered 10 or higher Fix Wii software crashing at boot if no disc is inserted Return GetNames languages, to avoid hardcoded language lists in callers Fix emulated Wii Remote battery level being low when not configured Fix extracting files from Wii discs ISOProperties: Correctly handle partitions with 0 files ISOProperties: Don't block when opening default INI in text editor Inherit settings from region-free INIs to region-specific INIs Filesystem: Return file list reference instead of modifying argument Fix reading Wii FST size Get rid of banner loaders and move their functionality to volumes Fix DOL crash caused by VolumeHandler removal CoreTiming: Add assert to ScheduleEvent_Immediate Remove CFileSystemGCWii::Read32 FileSystemGCWii: Allow reading files partially Read opening.bnr to get names from Wii discs wx: Now that Wii doesn't support descriptions, rename Notes to Maker DOL loader cleanup with std::vector and safety checks Revert "HW: Poll system input from system timers" Volume: Rename GetName to GetInternalName Use an ID-to-name map when volume has no company string Fix game list name encoding error caused by 4.0-6419 (d7900b4) Honor logging settings at startup Volume: Mark ReadWiiNames parameter as const Volume: Use more appropriate types for some returned values VolumeGC: Check that opening.bnr size matches type Use PanicAlertT instead of PanicAlert when appropriate Use PanicAlert instead of PanicAlertT when appropriate Volume: Return volume type as an enum Skip reading UTF-8 BOM at the beginning of INI files DVDInterface: Fix newFileName variable not being printed correctly Remove reference to DSP on Dedicated Thread VideoConfigDiag: Translate cache_hires_textures_desc like other strings Volume: Add prefer_long parameter to GetNames DolphinQt: Use short GC game titles in grid view Move GetCompany() to ISOFile.h/GameFile.h DolphinQt: Store GameFile banner as empty if missing Cache games without banners Volume: Use DecodeString more Fix more game list name encoding errors caused by 4.0-6419 (d7900b4) WbfsBlob: Don't enter an infinite loop when reading beyond end of disc Fix reading Wii FST size (for real this time) Restore old assert message for unknown instruction Remove forced DSP LLE from game INIs Fix VolumeDirectory Remove extra space from 5a32c3f DolphinWX: Support banners in Homebrew Channel format DVDInterface: Use ROUND_DOWN DolphinWX: Don't use IsElfOrDol outside of ISOFile DolphinWX: Little simplification for game right-click menu DolphinQt: Support ELF and DOL files in the game list DolphinQt: Support banners in Homebrew Channel format DolphinQt: Support XML metadata in Homebrew Channel format DolphinQt: Bring pixmaps up to date with DolphinWX and themes Use official names for GameCube controller sticks DolphinWX: Fix sorting games by custom titles DolphinWX: Only read titles.txt once Fix 4.0-7767 regression: exception when handling short WAD IDs Fix Cheat Manager not saving created codes Remove odd way of getting ID in ISOProperties Use correct GetTicksPerSecond() value in IPC delays SystemTimers: Don't name non-constant variables as if they are constant Rename IsCompressedBlob to IsGCZBlob for clarity Display all compressed formats in blue in GUI Don't force EFB Copies to Texture Only off for Metroid Prime DiscIO: Add a way to get blob type Fix blob type detection for game right-click menu DolphinWX: Don't use nearest neighbor scaling for banners DolphinWX: Respect aspect ratio of banners Correct Windows version requirement in Readme.md Simplify getting DI pointer in IOCtl callback Don't reserve space for directories when scrubbing Remove DiscScrubber::GetDOLSize in favor of IFileSystem::GetBootDOLSize Remove length parameter from DiscScrubber::ReadFromVolume Limit size of loaded file systems Fix GC software crashing at boot if no disc is inserted Set Speed Up Disc Transfer rate in the Sonic Riders INI DiscScrubber: Add another nullptr check DolphinQt: Add international flag to Resources DolphinWX: Remove FifoPlayerDlg::CreateIntegerLabel Remove SSAA checkbox and add SSAA to AA dropdown Resources: Update flag for Australia DolphinQt: Fix typo of return m_blob_type; ISOFile/GameFile: Clean up includes Create DVDThread (no multithreading yet) Read disc data asynchronously in DVDThread DVDThread: Performance logging Memmap: Fix a CopyToEmu bug Move DVDRead from DVDInterface to Boot Don't use GetPointer in DVDRead DiscIO: Small VolumeDirectory simplifications Do nothing when calling CopyToEmu with a length of 0 Rename "Purge Cache" to "Purge Game List Cache" DolphinWX: More consistent capitalization in menus Mark more strings for translation ISOFile/GameFile: Simplify IsElfOrDol Move nobanner and fileplatform from Themes to Resources State: Don't use memcpy and memcmp with strings Memmap: More error checking for Memset DiscIO: Don't use PlainFileReader in VolumeDirectory DolphinWX: Correct a compression condition Memmap: Replace ValidCopyRange with GetPointerForRange State/Movie: Use char instead of u8 for game ID Remove incorrect usage of _trans Don't read from volume when reloading Wii banners MainAndroid: Fix size logging DiscIO: Improve IVolume::Read32 error handling DiscIO: Unify CBlobBigEndianReader DiscIO: Improve CBlobBigEndianReader error handling DiscIO: Improve DiscScrubber::ReadFromVolume error handling Fix encoding for savestate slots DolphinQt: Attempt at fixing issue 9170 DolphinWX: Change "AM-Baseboard" string to "AM Baseboard" BootManager: Remove unnecessary LoadGameIni condition DolphinWX: Add missing m_ListElfDol cases Remove padding from platform icons and rating icons New 32x32 platform icons by MaJoR DolphinWX: Stop using XPM images DolphinWX: Minor adjustments to the widths of images HiresTextures: Also look for directories with 3-character IDs HiresTextures: Refactor getting directory DolphinWX: Re-add some padding for platform icons Change the size of the Wii platform icon DolphinWX: Unify the condition for the game list being empty Use the English name for DK Bongos in the English version of Dolphin DolphinWX: Support 2x images for all resources DolphinWX: Replace GetSelectedISO hack for multiple selections DolphinWX: Only show Wii compression warning once DolphinWX: Don't store compression progress in member variables DolphinWX: Don't include skipped items in the compression count DVDInterface: Log seek offsets with a more intuitive sign Update Windows installer instructions Always clear memory when booting DVDInterface/DVDThread: Don't store CoreTiming event IDs in savestates Update Windows build instructions Update .gitignore for Visual Studio 2015 Game INI updates Added game INIs for Pokémon Mystery Dungeon games Add EFB access to Super Mario Sunshine's INI and clean up old stuff Fix broken game INIs (comments starting in the middle of lines) Fix reading CISO files on Android Movie: Better safety when writing to s_revision Game INI updates Add more languages, and remove Hebrew because it's very incomplete Undo the addition of a translatable string during the string freeze Movie: Improve handling of non-hexadecimal revision strings Do not include the Dolphin version in the install directory name Update installer script filename in readme magumagu (208): Fix OpArg::WriteRex with 8-bit memory operand. Use unaligned stores to save XMM regs to stack. Compute stack usage correctly in ABI_CallFunctionPC. Save registers before calls in x86-32 JIT. Delete a bunch of old audio HLE cruft. Fix sound buffer addresses in Zelda UCode HLE. Zelda Ucode partly working without Premix hack. Fix minor Zelda Ucode audio corruption. Use correct sample rate in Zelda Ucode HLE. Add audio output for Zelda Ucode variants. Fix CMake build. Minor Ucode cleanup. Move UDSPControl structure into DSP.h . Move mixer construction to AudioCommon.cpp. Delete AudioCommon::UseJIT(). Move audio handling out of DSP emulation. Software backend: Delete forked PixelEngine. SW backend: make shaders work on Intel/Windows. D3D11: Use appropriate shader for PEEK_Z. Fix trailing whitespace. SWBackend: Fix code style. DSound: use DSound notifications to produce sound. D3DBackend: Don't recompute ID3D11Layout. VideoBackend: remove unused config vars. OpenGL config: clear backend_info.Adapters on init OpenGL backend: remove useless header Globals.h. JitIL: fix carry computation for srawi. PixelShaderGen: delete extra parenthesis. Software backend: make TEV rounding match hardware. Software backend: don't skip red component in TEV. VideoCommon: fix rounding in TEV. D3D11 backend: fix rounding in texture encoder. Interpreter: don't PanicAlert on write to SPR_HID2. PatchEngine: Remove no-op function LoadDiscList. Movie: don't use "hh" scanf modifier. VideoCommon: fix indirect texture coordinate computation in TEV. VideoCommon: correctly compute whether an indirect texture stage is active OpenGL: delete unused function parameter in TextureConverter. VideoInterface: accurate XFB width and height. VideoCommon: recreate XFB texture when the XFB size changes. VideoInterface: clean up naming and bitfields. JIT: unify JitAsm for JIT64 and JIT64IL. DVD emulation: make seek timing more accurate. DVDInterface: tweak buffered reads to be a bit faster. DVDInterface: code cleanup. Opcode decoding: 0xC0 isn't a valid command. Opcode decoding: handle missing opcodes 0x88 etc. Video backends: fix rounding in lighting computation. Video backends: fix behavior of "konst" TEV inputs. Video backends: unify xfregs/xfmem structures. Video backend: merge global var xfmem into xfregs. Video backends: mass-replace "xfregs" with "xfmem". VideoCommon: cleanup Renderer::RecordVideoMemory. Video backends: warn on usage of GL_DRAW_QUADS_2. DVDInterface: make fast disc speed faster. Use accurate frsqrte in Interpreter. Interpreter: make fres match hardware. Jit: get rid of incorrect implementations of fres and frsqrte. Interpreter: refactor the rsqrte code, and use it for ps_rsqrte. New frsqrte implementation; verified accurate. Jit: Use infinity and NaN from numeric_limits. Interpreter: Code style fixes. Interpreter: use numeric_limits instead of FLT_MAX. BS2 emulation: set up a reasonable BAT during startup. JIT: get rid of useless code in JitCache.cpp. JitCache: use a custom bit-set class. Interpreter: correctly support HLE functions. PPCCache: Get rid of FAST_ICACHE define. Memmap: get rid of unused junk. Jit: Remove unused members from JitState. JIT: Simplify redundant if statements for memcheck. JIT: unify two branches in SafeLoadToReg. JIT: make backpatch handle sign-extend from 8 bits correctly. Revert "DSound: use DSound notifications to produce sound." Video backends: remove dead code. Interpreter: return single-precision results for ps_rsqrte. IPCHLE: improve HLE timing. IPCHLE: clean up spelling. Rewrite handling of DTK (streaming) audio. Don't set DAZ on x86 in non-IEEE mode. Audio mixer: remove check for ratio > 1.0. Audio mixer: fix a couple compiler warnings. Streaming/DTK audio: fix pausing playback. Try to fix android build. IPCHLE: Fix ES_LAUNCH so it works for disk titles. IPCHLE: use only one CoreTiming event. HLE: Remove ES_LAUNCH HLE. VideoCommon: small cleanups. No functional change. Try to make DTK rewrite handle events the same way as the old code. JIT: Clean up float loads and stores. JIT: Remove dead code. JITIL: fix some unsafe loads. JIT: Make lmw/stmw use safe load/stores. VideoSoftware: remove duplicated CommandProcessor structures. AudioCommon: restore support for DTK volume setting. Initial unoptimized JITIL flag optimization. JITIL: Optimize compare instruction. JITIL: optimize branches. JITIL: compare instruction folding. JitIL: Misc small optimizations. JitIL: Attempt to constant-fold more aggressively. WIP XFB scaling. JIT: remove unused flag. Make DVDLowOpenPartition actually change partitions. DiskIO: Clean up GetTMD() API. ISOProperties: show all paritions on property page. HLE code replacement: remove unused code. JIT: remove unnecessary uses of MMU flag. JIT: use fastmem loads in MMU mode. JIT: simplify code using MOVTwo. D3D+OGL: choose blendenable over logicopenable. JIT: simplify ISI handling. OSREPORT: Fix out-of-bounds string access. Add missing "break" in Memory::GetPointer. Allow locked L1 DMA to write to the EFB. JIT: cleanup instrction merging for idle loop and dcbst. For idle loops, don't explicitly call CoreTiming::Advance. Remove HLE_HOOK_END. JIT: Fix the return pointer for backpatch trampolines. D3D: allow selecting adapters with no outputs. Remove EFB to RAM cache, and simplify code. Fix Intellisense error spam on Visual Studio. WIP. More work. Fix shader so it's possible to use with D3D Map(). Fix stupid mistake. Fix OpenGL coordinate computation. Fix RGBA8 encoding. Use linear sampling in ScaleByHalf mode. Remove some debugging junk. Don't use boolean negation. Make sure EFB2RAM buffer is wide enough for new coordinate system. D3D: delete unnecessary code. Fix D3D regression from PR1948. Clean up usage of ScheduleEvent_Threadsafe. Use faster CheckGatherPipe from JIT. Clean up usage of PowerPCState::Exceptions. Fix regression for D3D EFB depth copies. Make address translation respect the CPU translation mode. PowerPC: misc cleanup. Fix ARM64 build for address translation changes. Memmap: add an explanation of Dolphin's memory layout. Remove setting "BlockMerging". Remove the BAT checkbox/setting/implementation. Improve illegal instruction handling. Make all unknown opcodes behave consistently. Disable thread safety assertions added in PR1987. Fix typos from PR1856 (address translation). Allow executing code out of FakeVMEM. Fix the addresses of MMIO registers. Disable an IsCPUThread() assert in Release builds. Partially fix WWE12 titantron videos. Try to fix our memory map to match the GameCube. Decode EFB copies used as paletted textures. Remove TextureAddress struct. Explicitly set up AllocateTexture configuration for palette conversion. Fix registersInUse in Jit64::lmw. Hack around our terrible GC BIOS emulation. Refactor gather-pipe address checking. Fix crash in Wii games using IPCHLE networking. Correctly set up MSR and BAT registers for ELF loading. Fix clamping for rectangles. Fix typo in usage of IsOptimizableMMIOAccess. Fix paired loadstore to use correct load/store calls. Fix IPCHLE for gethostbyname. OpenGL: use ClampUL instead of ClampLL where appropriate. Remove remnants of old fake opcodes. Remove useless volatile from ProcessorInterface. Disable FakeVMem in Wii mode. Restore masking to gather pipe address checks. Fix timing regression affecting ES_LAUNCH. Fix IPCHLE to make NeoGamma work. Matthew Parlane (196): Upgrade libusb to 1.0.16 mtspr fall through to interpreter not needed for basic SPRs Missing break for IOCTL_ES_DELETETITLECONTENT Fix Windows vcxproj files. Missed OGL includes apparently. Fix accept() bug, which was using the wrong isRW for error conversion. Als Missed a accept error handler. Init instead of memset. Fix references for OGL, SW and D3D. C.K. should fix his website before throwing stones at obsolete xml. Revert "Add dxsdk_dir to vc++ paths via base.props. This means you no long [Windows] Add missing dlls and enable OpenMP support. Fix {Read,Write}FileToString. We should be using binary always. [JitIL] No more terrible usage of vectors. This is possible because of C++ Revert "D3D: Reintroduce depencency on D3DX11 because it's the most straig Support texture and screenshot dumping using WIC, no XP support. atlbase not needed. Interim fix until I get png done. Use libpng for saving images. TODO: Needs threading done similiar to OGL b Reworked Screenshot saving. Now OGL doesn't rely on WX for PNG saving. Fli Goto crosses initialization error. Sorry. Fix introduced ImageWrite warning. [OGL] Textures now save to PNG not TGA Api was too confusing for people. Use IOFile for TextureToPng to support non-ascii Changed save texture/scre Don't pass char* to std::string. Windows was fine with this :( std::string can't be passed to ... format. Imagewrite.cpp had same problem. I hate windows :( Only add real HID devices to HID list. Unused arguments removed from XFBSource::Draw Thanks neo. Modified project settings Give StringFromFormat a printf format attribute. It gives StringFromFormat Fix warnings found by StringFromFormat having printf style checking. Tidy up SetupWiiMemory Some tidy up of sprintf to StringFromFormat Some tidy up of sprintf to StringFromFormat Includes a small fix to SetupW Fix IniFile to use string& instead of char* Also removes .c_str() usages w Initialise entropy correctly for ssl. Makes the detection of shared PolarSSL more inline with usage. Randomise the mac address and store it in the config. This stops error 201 Fix MAC address reading on Windows. Fix bug in PrintCallstack caused by trying to use MMIO Also tidy up method Add missing functional include caused by PR111 Fixes include order of TextureConversionShader.cpp Fixes spacing for "for", "while", "switch" and "if" Also moved && and || t Use correct capitalization for SoundTouch.h in CMakeLists.txt Fixes Issue Fixes Wiimotes for libogc. Caused by USB not writing back expected values. Remove weird buffering from WII_IPC_HLE_Device_sdio_slot0.cpp Use new stick/trigger constants for Classic.cpp Revert "Use new stick/trigger constants for Classic.cpp" Added using githu Add stick and trigger radius/center/range consts Use new stick/trigger constants for Classic.cpp Install nogui executable to bindir Don't open a file handle for a directory in FileIO Change JC4E01.ini to use ascii single quote Fixed translation of strings at runtime. Static strings can not be transla Revert "SDL: handle SDL_QUIT event" Anisotropic Filtering option is now correct in D3D Values are saved/loaded Revert "x64: build a Position-Independent Executable (PIE)" Fix aniso filtering on d3d to not set aniso filter when using 1x Don't send return-only events to poll Fixes some network issues where the Tony Wasserka (196): VideoConfigDiag: Update video backend description to reflect the D3D9 remo Rename the Direct3D11 backend to Direct3D. The new short name is D3D. Remove some now unused VideoConfig settings. Shader generators: Remove any references to D3D9 and cleanup the affected Remove more references to D3D9... Remove another D3D9 reference. Removing more references to D3D9. imask stuff Revert "imask stuff" Merge branch 'd3d9-removal'. PixelShaderGen: Refine the comment from revision 3fbe1b1ccdcf. D3D: Use floating points for viewport parameters. D3D: Reintroduce depencency on D3DX11 because it's the most straightforwar D3D: Use D3DX for texture dumping. Revert "Be less dumb." Revert "Actually, filename really does need to be a D3D: Use D3DX11 for taking screenshots. Revert "Handle BP mask register better to avoid useless BP writes (causing OpenGL: Enable pinned memory even for index buffers (works for me). Big-is OpenCL: Use correct license header for TextureDecoder. Use less brain damaged names for DLCache and TextureDecoder. Update Readme.txt. Software renderer: Add linear interpolation of fog range adjustment factor Revert "Add CMakeLists.txt.user to the .gitignore file. Closes issue 6873. Software renderer: Add a zfreeze related TODO. VertexShaderManager: Remove a hardcoded projection hack. VertexShaderGen: Remove Sonic Unleashed hack. Doesn't seem to be required D3D/OGL: Add a TODO noting that we don't support GX_CULL_ALL, most notably D3D: Verbosify an error message. Remove the ZTP speedup hack. Also remove useless debugging code, and a pre Remove vertex streaming hack. GameSettings: Deleted references to the ZTP hack. Readme: Windows XP is not supported anymore. videosoftware: Provide a more elaborate comment on the FifoPlayer support videosoftware: More coding style fixes. OGL: Remove some dead code. OGL: Force highp for integers. PixelShaderGen: Make SampleTexture static inline. PixelShaderGen: Use integer math for alpha testing. PixelShaderGen: Fix an issue where small negative z coordinates would unde PixelShaderGen: Use integer math for sampling textures. PixelShaderGen: Use integer math for indirect texture coords. PixelShaderGen: Use integer math for rasterizer color. PixelShaderGen: Remove remaining floating point bits for texture color. PixelShaderGen: Use integer math for tev konst value. PixelShaderGen: Use integer math for tev outputs. PixelShaderGen: Use integer math for TEV combiners. PixelShaderGen: Remove superfluous registerstate stuff. Also, made alphabu PixelShaderGen: prev should be initialized to the proper value; tev output PixelShaderGen: Use integer math for indirect tev stage texcoord calculati PixelShaderGen: Write constants in decimal instead of hexadecimal where ap PixelShaderGen: Process fog calculations with integer math. PixelShaderGen: Change the "colors" and "kcolors" uniforms to be integers. PixelShaderGen: Change the "alpha" uniform to use integers. PixelShaderGen: Change indirect texture matrix uniforms to use integers. PixelShader: Store fog color as an integer. ShaderGen: Store light color uniforms as integers. ShaderGen: Store material uniforms as integers. LightingShaderGen: Perform some lighting calculations with integers. LightingShaderGen: Perform more lighting calculations with integers. PixelShaderGen: Treat UV coordinates like S17.7 integers (they're still st PixelShaderGen: Use integer math for z textures. PixelShaderGen: Perform some of the fog calculations with integers. PixelShaderGen: Remove some dead code. PixelShaderGen: Treat UV coordinates as actual integers. PixelShaderGen: Store tex scale as an integer. PixelShaderGen: Clean up tev compare functionality. PixelShaderGen: Use bit shifts instead of multiplications as a small optim PixelShaderGen: Remove old, mostly useless comments. PixelShaderGen: Cleanup and clarify bump alpha combiner inputs. PixelShaderGen: Add a note about a random idea which should be checked wit PixelShaderGen: Prettify generated shader source. PixelShaderGen: Write 16777215 in hex (0xFFFFFF) so that it's easier to un ConstantManager: Do not use single-element arrays. PixelShaderGen: Use spaces for alignment where appropriate. PixelShaderGen: Remove the "i" prefix for integer variables. PixelShaderGen: Don't make local lookup tables "static". Pixel/LightingShaderGen: Fix code alignment issues. PixelShaderGen: More code alignment fixes. OpenGL: Implement color and z pokes. Common: Add a generic class for accessing bitfields in a fast and endianne UnitTests: Add tests for BitField. BPMemory: Use the new BitField class in two selected structures. BPMemory: Expose the pixel_format and zformat fields in PE_CONTROL as enum BPMemory: Make use of BitField in a number of structures. PixelShaderGen: Cleanups and fixes for tev combiners. PixelShaderGen: Implement tev combiner lerping in a faster way which also PixelShaderGen: Cleanups. Software renderer: Use color combiner configuration for alpha combiner com Software renderer: Properly calculate tev combiner output. BPMemory: Fix an enum to use u32 as its underlying type. BitField: Optimize generated assembly by forcing inlining. BitField: Fix alignment issues. UnitTests: Add a test for BitField behavior on odd structure alignment. PixelShaderGen: Fix an issue with color combiner compare mode and simplify BPMemory: Use BitField for the GenMode fields. BPMemory: Fix GenMode using an incorrect number of bits for the number of VertexShaderGen: Correct vertex shader output to consider shifted pixel ce Workaround dumb custom texture loading logic so that D3D11, GL core (used Software renderer: Update a reference link. BitField: Delete copy assignment to prevent obscure bugs. Fix a few warnings caused by using BitField with non-typesafe functions. BitField: Add an explicit getter function for retrieving the BitField valu VideoConfigDiag: Use uniform capitalization. MMIO: Cleanup Mapping class by using templates instead of macros. Restore Wayland compatibility. UnitTests: Disable VertexLoader tests if EGL is enabled. ChunkFile: Add a DoArray overload which takes an std::array. GPU: Only load the relevant color components upon writes to the tev color VideoConfigDiag: Use consistent spelling of nouns. Make make_scmrev.h.js recognize "stable" as a stable branch. Make CMakeLists.txt recognize "stable" as a stable branch. flacs (142): Revert "Jit64: use BMI1's ANDN for andcx" Rachel Bryk (141): Add wiimote support to netplay. Misc netplay cleanup. Fix multiplayer wiimote netplay. Merge remote-tracking branch 'origin/master' into wiimote-netplay Probably worthless commit that may fix wiimote netplay buffer problems. Fix comments, and send wiimote mapping to new users. NetPlay: Add blank inputs when reporting mode changes, so the buffer isn't Clean up wiimote-netplay. Remove suggestion to restart dolphin if a wiimote movie desyncs, since it' Merge branch 'to-merge-after-4.0' Merge branch 'wiimote-netplay' Revert "Fix stack misalignment issues." Fix recording netplay with wiimote. Why do compilers assume i don't know order of opperations? :( Automatically connect the appropriate wiimotes in netplay. Extensions must Fix crash in gc games in netplay. Fix changing wiimotes when starting netplay. Fix linux, probably. Fix linux, attempt 2. Allow loading save states via drag and drop. Change iTLBHack to a bool. Allow setting DSP settings via game ini. Add literally a million blank inputs in netplay when a wiimote changes rep Fix unicode support for File::Rename() on windows. Don't prepend file:// in wxUtils::Explore() on windows. Wxw will just remo (Netplay) Disable record input checkbox while a game is running. [Netplay] Allow a spectator to leave without affecting players. Allow frame limit to be set via game ini. Stop saving random files to ./ Disable wiimote source selection while netplay is running. Change a PanicAlert to OSD message. Allow wiimote source to be set via game ini. Fix android build. Really fix android build. I've never claimed to be a good coder. Allow pad settings to be set via game ini. Bootmanager.cpp fixes and clean up. Fix copy and paste error in BootManager.cpp. Code cleanup Reenable vsync after releasing tab even if frame limit is disabled. Increase save state version. Save frame skipping option, and allow loading it from game ini too. Fix reading revision specific default game inis in ISOProperties. Fix extracting files on partition > 0. Fix extracting dols. Save bHLE_BS2 to config cache before it can be changed while booting. Add extract dol/apploader options back for gc disks. Add dsp rom hashes to movie header. Check for errors when reading lines from ini files. Flash netplay window when someone joins if the window doesn't have focus. Limit netplay chat messages to 2000 characters. Fix a couple race conditions. When updating netplay player list, reselect by string instead of index. Make sure netplay player IDs are actually unique. When reading an ini file, if there is an error, check if it is simply beca Remove unused EXI update functions. Remove unused video config variable. Remove fix item hang patch for wind waker. Add an option to kick players from netplay. Remove an unused variable. Save an unsaved wiimote variable to save states. Abort loading a save state if emulation isn't running. Fix an incorrect label in fps display string. Allow progressive scan to be set by game ini. Fix patches not being loaded when running real gc bios. Add support for 2 memory cards for movies. Keep device type EXIDEVICE_MEMORYCARDFOLDER for gci folder. End movie play back immediately if g_currentByte > g_totalBytes. Fix hiding size column in game list. Don't allow starting recording in states that will cause a crash or other Fix code style in WII_IPC_HLE_Device_net.h/.cpp. Fix leaking exi devices. Remove audio frame limit. Give file count in decimal rather than hex when exporting all wii saves. Don't spam PanicAlerts on wii save exports. Set the default radius to 100 for non-gcpad analog sticks. Remove a couple unneeded includes from Movie.cpp. Disable all logs by default. Change default netplay buffer to 5. Allow system time to move forward during netplay. Add OSD messages back to status bar. Change ControlState typedef to double, and change all related floats/doubl Read the config file before enabling logs. Change IniFile::Section::Set() with default value to use a template. Fix a typo introduced by 5adbc83 in ControllerEmu.cpp. Clear movie variables that might have been set from a previous run. Add an IsMovieActive function. Kill Core::g_CoreStartupParameter. Mass rename static variables to s_*. Cleanup Movie.h/cpp. Add hotkeys to select save state slots and to save/load the currently sele Remove an unused variable. Change netplay buffer SpinCtrl to default to 5. Allow custom textures to load from unicode paths. Make input display work properly with netplay. Cleanup Renderer::CalculateTargetSize(), and allow IRs higher than 4x to b Create new Movie menu. Fix IR input display. If one argument is given, assume it is a game, and run it. Add on screen frame counter. Don't allow multi compress to compress wbfs or wad files. Add support for cc and nunchuck in input display. Fix running dolphin with a single flag. Add wiimote tas input. Fix crash in tas input. Fix another crash in tas input. Replace wxFileExists() with File::Exists(). Get rid of netpad and just send the GCPadStatus in netplay. Disable skip bios option if no bios files exists. Read game title from ini file, or titles.txt if it exists. Fix description of hide mouse cursor option. Change default gcpad radius to 100. Alternate inputs once per frame rather than once per input for turbo. Fix acceleration emulation for wiimote and nunchuk. Fix wiimote accel. Add nunchuk support to tas input. Fix some warnings. Allow hard resets to be recorded in movies. Fix analog l/r with tas input. Fix the red dot not showing up in input config when pointing right. Fix some double->float conversions. Add GPUDeterminismMode to isoproperties. Implement GetRevision() for wii disks. Fix reading wii revisions. Make freelook hotkeys configurable. Fix wiimote connect hotkeys. Fix hires texture path. Remove an unneeded global variable from Movie.cpp. Make iso properties non modal. Fix order of some hotkeys Fix crash when server's client disconnects. Consistently sort games with the same name but different revision or regio Fix missing parenthesis. Use system time for start time in netplay. Fix home button in tas input. Fix enable cheats checkbox. Limit Wiimote battery usage for Dolphin-lite users. Add an option for wiimote battery. Disable oc setting while netplay or movie is active. Implement classic controller tas input. Compare timebase of netplay users to detect desyncs. Jasper St. Pierre (119): Put Plugins/ in Core/, rename to VideoBackends Fix MSVC project files .gitignore: Prevent Debugger directory from being removed again Update .gitignore TAP_Win32: Remove unnecessary Memmap.h include HW: Remove unnecessary "../HW/" in include paths Convert all vcxproj files to UNIX line endings Remove unnecessary Src/ folders Merge branch 'fuck-you-src-i-hate-you' NetPlay: Sync CPU engine between NetPlay clients/servers BPFunctions: Clean up math slightly BPMemory: Clean up and rename some variables and comments BPFunctions: Remove an unused method BPFunctions: Remove use of a dumb method PixelShaderManager: Fizzle out fog changes when disabled here BPFunctions: Remove the rest of GetConfig BPStructs: Remove calls to SetInterlacedMode when reloading state BPMemory: Fix "DISPLAYCOPYFILER" typo BPStructs: Document BPMEM_BP_MASK better BPStructs: Reindent BPWritten BPStructs: Flatten out BPWritten BPStructs: Move LoadBPReg here BPStructs: Remove another function wrapper BPStructs: Consistently put the two shared copy args first ControllerEmu: Remove unnecessary include ControllerEmu: Fix code style ControllerEmu: Constructors go on top Remove UDPWiimote feature Nunchuk: Stop the dereference dance InputConfigDiagBitmaps: Start a cleanup by splitting code out InputConfigDiagBitmaps: Clean up code a bit more InputConfigDiagBitmaps: Rewrite the stick visualization code InputConfigDiagBitmaps: Clean up the FORCE drawing code as well ControllerEmu: Remove support for the "Square Stick" option ControllerEmu: Always convert to polar coordinates and back ControllerEmu: Clean up the code that applies the modifier ControllerEmu: Change the GetState interface to remove range/base ControllerEmu: Virtualize settings ControllerEmu: Make BackgroundInput a global setting through the virtualiz ControllerInterface: Gate the input based on our new background input sett ControllerEmu: Remove focus-checking code from the rest of ControllerEmu Frame: Fix RendererHasFocus Revert "Frame: Fix RendererHasFocus" Host: Add a new "UIHasFocus" hook to determine if the UI has focus X11Utils: Remove unneeded SendButtonEvent / SendKeyEvent utilities VideoBackendBase: Remove unused stub Initialize implementation X11Utils: Don't depend on wx DolphinWX: Allow building both GUI and NoGUI at the same time CMakeLists: Try to fix the X11 detection on OS X X11_Util: Fix build when using EGL Remove support for Wayland Remove support for EGL under X11 GLX: Remove evdpy / dpy split MainNoGUI: Remove old OS X backend that doesn't work, rearchitect X11Utils: Simplify the Fullscreen interface X11Utils: Explicitly pass the window to fullscreen into ToggleFullscreen MainNoGUI: Supply a window in Host_GetRenderHandle MainNoGUI: Move a majority of the event handling from the GLX backend X11_Util: Resize the GLX window by listening to events on the parent EGL: Stop the window_handle shuffling as well Core: Remove Core::GetWindowHandle Core: Don't pass through a reference to the window handle Core: Remove UpdateFPSDisplay GLInterface: Destroy GLWin X11_Util: Don't specify a background pixel Add back X11 support to EGL Core: Don't display messages in the titlebar / statusbar PPCSymbolDB: Don't show any messages in the status bar Core: Move the titlebar / statusbar abstraction to DolphinWX Frame: Actually call UpdateTitle Don't sleep in the event thread PixelEngine: Remove unused AllowIdleSkipping and all references to it TextureDecoder: Fix a RGBA/BGRA copy/paste typo TextureDecoder: Remove unused function VideoCommon: Start putting common texture decoding code in TextureDecoder_ VideoCommon: Remove support for decoding to ARGB textures TextureDecoder: Add some statics to some of our helper functions TextureDecoder: Rearrange header slightly TextureDecoder: Add an enum for the TLUT formats TextureDecoder: Pass the TLUT address straight into the texture decoder TextureDecoder: Simplify how the reference texture decoder works TextureDecoder: Clean up the code style BreakPoints: Fix compile warning Memmap: Clean up indentation and whitespace a bit MemArena: Remove duplicated code MemmapFunctions: Remove unused effective_address argument Memmap: Make the constants aligned to 8 nibble characters MemArena: Bail on Arch64 if the out_ptr allocation fails MemoryWindow: Use p_pFakeVMEM, not the virtual mirror Memmap: Remove vestigals of the memory-mapped EFB MemArena: Remove the low mappings for our pointers MemArena: Clean up the code that does the mirroring MemArena: Rename GrabLowMemSpace to GrabSHMSegment MemArena: Fix a memory leak caused by pointer confusion MemArena: Fix the calculation of position in SHM MemArena: Merge the initialization code with the size calculation code MemArena: Fix the launching of non-Wii games Destroy OpenMP SI: Clean up controller-like devices with subclassing ControllerInterface: Remove unused "force" parameter DInput: Remove the unsupported Lights output ControllerInterface: Implement dummy UpdateInput / UpdateOutputs ControllerInterface: Remove unused ClearInputState ControllerInterface: Make UpdateInput / UpdateOutput return void GCPad: Clean up Motor/Rumble interfaces WiimoteEmu: Remove Spy method WiimoteHid: Remove unused structs Nunchuk: Use the accel_cal struct directly in nu_cal Nunchuk: Hardcode Nunchuk stick calibration values Nunchuk: Hardcode Nunchuk accelerometre calibration values as well WiimoteEmu: Hardcode acceleration calibration values SDL: Apply updates immediately rather than going through UpdateOutput XInput: Apply immediately as well ForceFeedback: Apply immediately as well HW: Remove UpdateOutput HW: Poll system input from system timers WiimoteEmu: Add back the calibrated accel data to the EEPROM HotkeyManager: Add missing hotkeys to the Hotkeys dialog Remove wx-based Hotkey stuff Dolphin Bots (113): Automatic translation resources update from Transifex Change the gettextize to not update .po files (Transifex will do that) Automatic translation template update Automatic translation resources update from Transifex Automatic translation template update Automatic translation resources update from Transifex Upgrade Android API. Automatic translation template update Automatic translation resources update from Transifex Automatic translation resources update from Transifex Automatic translation template update Automatic translation resources update from Transifex Automatic translation template update Automatic translation resources update from Transifex Automatic translation template update Automatic translation resources update from Transifex Revert "Automatic translation resources update from Transifex" Automatic translation template update Automatic translation resources update from Transifex Automatic translation template update Automatic translation resources update from Transifex Automatic translation template update Automatic translation resources update from Transifex Automatic translation template update Automatic translation template update Automatic translation resources update from Transifex Automatic translation template update Automatic translation resources update from Transifex Automatic translation template update Automatic translation template update Automatic translation template update Automatic translation resources update from Transifex Automatic translation template update Automatic translation template update Automatic translation resources sync with Transifex Automatic translation resources sync with Transifex Automatic translation resources update from Transifex Automatic translation resources sync with Transifex Automatic translation resources sync with Transifex Automatic translation resources sync with Transifex Automatic translation resources sync with Transifex sigmabeta (82): Android TV: File Dolphin under "Games" on the TV Launcher Android: Allow compilation using Android NDK r10e. Android: Display Panic Alerts on-screen as an Android Toast message. Android: Remove old panic alert messsaging flags. Android: Run AssetCopyService only once. Android: Add refresh library function. Android: Show the in-game menu when back button is pushed. Android: Show the version name as a subtitle in the GameGridActivity. Android: Show filenames for games with an empty title. Android: Don't remove input configuration related files from old UI. Android: Database improvements - remove non-existent games & folders. Android: Persist previously-set controller bindings on the Settings menu. Android: Don't delete the Input Overlay configuration screen. Android: Fix a bug making Input Overlay config screen only work in release Android: Have non-games use their filename as a Game ID. Android: Add Quicksave/Load functionality, and cleanup in-game menu. Android: Remove Low and Medium DPI versions of all images. Android: Switch all activities to AppCompat-based Material themes, and use Android Refactor: GameGridActivity is now MainActivity, and uses a Toolbar Android: MainActivity now contains a tab switcher separating games by plat Android: Save screenshot at end of an emulation session. Android: Invalidate Picasso screenshot cache every time a screenshot is di Android: Don't crash trying to hide toolbar in game. Android: Show screenshot on EmulationActivity before game starts. Android: Show transition animation while game loads. Android: Show transition animation when exiting game. Android TV: Game selection screen highlights games with accent color. Android: Add detailed instructions for setting up a build environment Android:Changes to simplify command-line building of the app, and bugfixes Android TV: Replace toolbar on EmulationActivity with a full-screen menu. Android TV: Fix a layering issue on the ingame menu Android TV: Visual tweaks & glitch fixes Android TV: Implement Save and Load state menus Android TV: Add title text to in-game menu, and make the menu scrollable. Change "Installation' headers to say 'Building' in Readme.md Android: Add UI for Wiimote configuration. Android: Wiimote UI Fixup Android: Implement UI for configuration of all 4 Wiimotes. Android TV: Implement game selector activity in new Android TV UI Android TV: Add row listing all games Android TV: Add settings row, enabling access to other screens. Android TV: Add first-run copy operations to TvMainActivity. Android: Add system requirements to Readme.md Android: Allow usage of Cached Interpreter core. Android: Include newer versions of support libraries, which contain bugfix Android: Remove "fitSystemWindows" flag from MainActivity layout Add support for the CPU Clock Override feature to Android UI Refactor DB read code to use RxJava Refactor MainActivity to MVP architecture Refactor TvMainActivity to MVP architecture Refactor AddDirectoryActivity and SettingsActivity to be launched exclusiv Refactor PlatformGamesFragment to MVP structure Update build tools + support libraries Move TvMainActivity to ui.main package Refactor EmulationActivity to be launched exclusively by its static launch Refresh screenshots in TvMainActivity after emulation complete Create a static Log class to call into instead of the default android one Prevent screenshot from showing on EmulationActivity rotation events Externalize animation code into static methods Create static helper methods for pixel-to-DP conversion Fix android builds Implement Java-based Config file read/save Implement basic framework for new Settings UI Implement Seekbar dialog and SingleChoice dialog Implement video settings + support for missing files / settings Cleanup and documentation Fix special case for XFB & update EFB to match desktop Add fragment transition animations to the Settings UI screen Fix accessing video settings on Android TV Fix bugs in Setting screen & add a way to exit without saving Fix rotations in Settings screen breaking everything Fix CPU Core selection on x86-64 devices (really, just the Android emulato Implement Gamecube Input setting screen Make necessary modifications to Java_GCAdapter for permissions request Add some stability fixes, though probably not enough Change SettingsActivity label to "Settings" instead of "CPU Settings" Fix capitalization on "GameCube" strings Add Wiimote Input menu Add Wiimote Speaker option Add Wiimote graphic Fix android builds permanently. Fix builds when using newest version of NDK Steven V. (75): Added .ini file for Rhythm Heaven Fever More Game Settings Files Game Settings Files Settings files Changes to Rhythm Heaven Fever Replaced generalized instances of GCM with ISO Removed Project M .ini files Fix for banner filename from ID Updated Netplay to use GetName() Rename m_names to m_banner_names Moved "Connect Wiimote" options into submenu Fixed minor capitalization issue Minor spelling fix Specified where GC Bios files go Fixed minor typo Added Game Settings file for Sonic 2 [JAP] Capitalized Dolphin Fixed incorrect game ID Added settings file for bittos+ Updated GCM references to ISO VideoConfigDiag: Updated video resolution description Added flags for Russia and Australia ConfigMain: Added missing filetypes to default ISO options Updated android GCM references to ISO Menu capitalization consistency Updated game ini files Removed "Dual Core [OFF]" from netplay warnings Various formatting and consistency fixes Renamed EuRGB60 to PAL60 Various country flag improvements Removed SDK flag Converted country flags for DolphinQt More formatting and consistency fixes Change DSP settings to Audio settings Specified where to find CACHE_REVISION ISOProperties: Rename Date to Build Date Renamed dsp.png to audio.png Changed config DSP references to config audio DolphinWX/Globals: Variable naming consistency Added identifier for country code 'B' Change Build Date to Apploader Date Changed default freelook hotkey to match description Added more settings tooltips Additional CACHE_REVISION increment warnings Country filter fixes/consistency Minor consistency changes More minor consistency changes De-capitalized countries VolumeWad: Return version number for WADs Style Guide: Added rule for do-while loops Formatting/Whitespace Cleanup VolumeWad: Private variables for offset values VolumeWad: Move country identification to GetCountry() De-capitalized CountryCode Rearranged Volume header files VolumeWiiCrypted: Implement IsDiscTwo() General Formatting VolumeWad: change titlever to title_version DiscIO: Get rid of unsafe cast VideoConfigDiag: Rename EFB Copies to RAM option Rename "Cheats Manager" to "Cheat Manager" DolphinWX: Changed "OnShow_CheatsWindow" to "OnShowCheatsWindow" Change OnGameListCtrl_ItemActivated to OnGameListCtrlItemActivated ConfigMain: Change _NTSC to ForceNTSCJ Check for GCMPathes if ISOPaths is not found (Visual Studio) Categorize SoundStream.h with other SoundStream files Move down Country_World Globals.h: Added comments for menu sections FrameTools: Move "Undo Save State" to save state menu FrameTools: Remove redundant 'i-1' Update cheat codes for Melee Minor spelling corrections Read custom titles from wiitdb.txt if titles.txt is not found Improve parsing custom game titles from titles.txt Fix reading custom titles from WAD files Rohit Nirmal (73): Initialize variables to silence garbage return warning from scan-build. Remove pointless initializations. Change NULL to nullptr. Controller Interface: Remove "using namespace" in header file. BannerLoaderWii: Removed #if 0'd code. FileHandlerARC: Remove FileHandlerARC. Remove more dead and redundant code. Fix some formatting (new lines on collapsed single-line conditionals, new Split some parts of UpdateBoundingBox into multiple lines. Also, fix issue Include CommonTypes.h instead of Common.h. Remove extra semicolons at the ends of some lines. Move "using namespace ArmGen" from headers to sources. include CommonTypes.h instead of Common.h, remove unused using. CBoot: Use vectors instead of raw pointers in ELF functions. Fix build failing when disabling precompiled headers. Android: Silence some more warnings. VideoCommon: Silence -Wmaybe-uninitialized warnings. Change another NULL to nullptr. OGL: Silence string format warnings. DolphinWX: Remove unused variable. DolphinWX: Fix -Wsign-compare warnings. Fix build failing with PCH disabled. OGL: Use unique_ptr instead of pointer when taking screenshot. Common: Fix -Wmaybe-uninitialized warning. PowerPC: Remove unused variable. Fail CMake if building WX without GTK libraries. Explicitly compile external WX in C++11 mode. Android: Silence a few warnings. Compile external WX with C++11 if Linux. Silence a few "zero as null pointer" warnings. Fix building with PCH disabled. VideoCommon: Fix -Wsign-compare warnings. Common: Remove gotos in FileUtil, and replace FILE*s with IOFile/ifstreams Common: Remove goto in MemArena. Fix building with PCH disabled. Fix building with PCH disabled. Fix -Wshadow warning. DolphinQt: Silence -Wshadow warnings. Silence some -Wswitch-default warnings. DSPLLE: Silence -Wshadow warning and conform more to style. Fix building with PCH disabled. Fix -Wsign-compare warnings. Fix building with PCH disabled. Fix building with PCH disabled. Fix building with PCH disabled. Silence -Wunused-variable warning. Core: Change NULLs to nullptrs. Qt: Check if game filename is null before loading. This is so that the err Silence -Wformat warnings in debug builds. Silence -Wshadow and -Wsign-compare warnings. Fix building with PCH disabled. Fix building with PCH disabled. Fix building with PCH disabled. Fix building with PCH disabled. Silence -Wreorder warning. Fix building with PCH disabled. Fix building with PCH disabled. Fix building with PCH disabled. Fix building with PCH disabled. Fix building with PCH disabled. Fix building with PCH disabled. Silence -Wshadow warning. Fix building with PCH disabled. Alsa: Silence -Wsign-compare warning. VideoCommon: Silence -Wsign-compare warnings. Fix building with PCH disabled. Silence -Wshadow and -Wmaybe-uninitialized warnings. Fix building with PCH disabled. Fix building with PCH disabled. Fix building with PCH disabled. Fix building with PCH disabled. Fix building with PCH disabled. Fix building with PCH disabled. mathieui (56): Fix issues with the GC adapter handling code Externals: Clean up some unneeded files from libusb GC Adapter: stop searching adapters after one has been added GC Adapter: don’t stop scanning after failing to claim an adapter GC Adapter: never call libusb_reset_device() GC Adapter: fix a crash on exit GC Adapter: do not proceed with the input read if the thread isn’t running GC Adapter: Do not abort if some libusb functions are not supported NetPlay: use a workaround from comex’s dc-netplay to interrupt enet NetPlay: add a Common/ENetUtil namespace NetPlay: Remove RunOnThread and add SendAsync methods NetPlay: Make the enet interrupts work NetPlay: Select a game only if enet connected successfully Traversal: Use a decent PRNG instead of rand() NetPlay: Disable some UI elements when a game is running NetPlay: Don’t wait forever in the traversal client Fix a warning GCAdapter: Add a background thread to detect the adapter GCAdapter: Add a setting to toggle rumble Netplay: don’t show traversal server/port options (INI config only) Traversal: use the defaults if empty or space-only config entries are dete Add missing ifdefs around GCAdapter code in Controller config Add hotkeys to increase/decrease the IR Traversal: Add a read-only text for server:port with a "reset to default" GCAdapter: Disable the scanning thread when direct connect is disabled GCAdapter: Only start the thread on startup if direct connect is enabled [Netplay] Always set a playerid Reset the GC adapter rumble when stopping a game Use the current commit hash in the netplay version [Pipe input] Make the commands locale-unaware Common: asterisks go against the type name More asterisks Correct ampersands as well A few more asterisks, mostly casts [netplay] Use the local type of each SI device Fix a bug in GCAdapter NetPlayServer: in-class initialization NetPlayServer: Possible out-of-bounds access on invalid input NetPlayServer: Make pad data unpacking nicer to read NetPlayServer: Make SendAsyncToClients use an unique_ptr [netplay] Fix a regression bootmanager: update the supposed-end-of-enum gcadapter: set the konga setting properly gcadapter: fix an incorrect mapping for non-local devices netplay: default the local pad to a gc controller [SI] add a way to check if the current controller is a gcpad [Movie] allow recording with any pad [netplay] Use the device only if it’s a gc controller or similar Make a generic rumble function Add information about disc number in the netplay setup Revert "Fix netplay desync when using wii-u adapter." Fix loading save states with input recording with the adapter Disable part of the adapter features for netplay GCAdapter: improve thread safety GCAdapter: protect some more functions Disable wiimotes on game start if running in netplay Stenzek (54): D3D: Fix crash on some drivers with small textures D3D: Remove redundant cast, move pitch calculation to caller D3D: Fix EFB->XFB copies incorrectly scaling, match GL behavior D3D: Fix EFB depth buffer copies, filtering on scaled EFB copies when MSAA D3D: Fix crash when taking screenshot with crop enabled D3D: Implement vectored efb pokes, increase util vertex buffer size to 64K VideoCommon: Change PokeEFB to take a pointer rather than a vector D3D: Fix crash on startup/resize OGL: Fix for black framebuffer when resolution/msaa mode changes D3D: Fix compilation error on windows ShaderGen: Remove virtual methods from ShaderGeneratorInterface, move stri TextureCacheBase: Change CalculateLevelSize to match D3D/OGL sizes PixelShaderGen: Use bitwise AND for wrapping indirect texture coordinates EXI: Refactor BBA-TAP interface for Windows to use a read thread EXI: Fix crash when loading save states with BBA activated EXI: Use unique_ptr in CEXIEthernet Common: Use C++ random generator for generating MAC addresses TextureConversionShader: Invert depth for Z24 encoder with D3D D3D12: Don't clear texture SRV on destruction, as it may still be in use D3D12: Don't add fence tracking entries without buffer offset changes D3D12: Improve robustness of command allocator and fence tracking D3D12: Clean up debug device creation path D3D12: Use stream buffer for CD3DFont D3D12: Use std::thread for worker thread D3D12: Cleanup/refactoring of teardown process D3D12: Simplify and fix MSAA EFB depth copy path D3D12: Implement non-blocking EFB access when EFB has not been modified D3D12: Fix crash/errors when switching MSAA modes while running D3D12: Don't enumerate outputs, it's not used anywhere D3D12: Optionally prevent StreamBuffer from executing command list D3D12: Add helper method for setting both viewport and scissor rect D3D12: Don't keep screenshot/encoder buffers mapped D3D12: Fixed issue where EFB copies could end up corrupted after reset D3D11: Fix texture dumping, for both single and multi-mip textures D3D11: Simplify MSAA depth texture resolving D3D11: Fix some cases where render target switches desynced StateManager ShaderGen: Only specify storage qualifier in interface block when needed D3D12: Allow large texture uploads (>64MiB) by using temporary buffer D3D12: Use signed ints for viewport origin D3D12: Use helper method for binding EFB render targets D3D12: Implement GPU-based bounding box D3D12: Fix error with >1xIR/MSAA EFB depth access D3D12: Refactoring and cleanups D3D12: Improve output of shader compiler errors D3D12: Don't add padding when allocating within empty StreamBuffer D3D12: Remove feature level checks D3D12: Implement XFB encoding/decoding (support Real XFB) D3D12: Remove D3D11 header references D3D12: Implement perf query support D3D12: Cleanup startup/shutdown process D3D12: Fix invalid CopyTextureRegion call in CopyRectangleFromTexture D3D12: Specify read/write ranges when calling Map/Unmap OGL: Work around slowdown of glMapBufferRange with SSBO on NVIDIA drivers D3D11: Fix CPU EFB color reads when MSAA is enabled Eder Bastos (47): Soften up some of the UI elements. Clarify that 'tools' attributes are only visible in the UI editor preview, Increase size of title text; force it to take a single line and ellipsize Attach '.debug' to the end of the app's package name. This allows for inst Fix banner scaling in game list. Allow user to quit app with back button. Implement ViewHolder pattern on the GameListAdapter. Move first-execution copying of shaders / binaries to an IntentService. Use the "No Banner" graphic as a Drawable resource, instead of as an asset Display file size in GiB instead of bytes. Add a bunch of gradle/AS related stuff to gitignore. Convert the Android source code to the directory structure of a Gradle-bas Add Android build instructions to Readme.md. Fix the ABI/toolchain table in Readme.md. Remove the "nativeLibsToJar" gradle task. Implement first few screens of Android 5.0-based UI. Have Picasso load images into memory at the size they will be displayed. Add floating action button to GameGridActivity. Add File Browser screen to new UI. Add touch feedback to GameGridActivity and AddDirectoryActivity. Don't show "Error" when a blank string is returned from a native method. Add a subtitle to AddDirectoryActivity containing the currently displayed Add an IntelliJ settings file describing the Dolphin project code style. Android: Scale number of columns in game grid according to screen width. Android: Fix a possible crash in the file browser if attempting to show a Android: Put GCPadNew.ini back into the repository. Android: Build separate APKs for each native platform. Move AssetCopyService to the services package. Android: Add Settings Activity to new UI. Android: Allow building of native libraries inside Android Studio / Gradle Android: No longer require specification of NDK or Git paths in build.grad Android: Implement reading country value from game files. Android: Remove inheritance from Game model, and improve the relevance of Android: Add SQLiteDatabase interface class. Android: Make floating action buttons use the correct accent color program Android: Implement an SQLite database-based game library. Android: Implement new EmulationActivity. Android: Have build.gradle figure out what ABI and Toolchain to use. Android: Upgrade to newest Build-Tools version. Android: Decouple SurfaceView initialization and emulation start. Android TV: Make file selector screen usable with d-pads Android TV: Allow the app to be launched from an Android TV launcher. Android TV: Add TV banner + some metadata. Android: Remove the old UI. Android: Require Android 5.0. Android: Remove old UI references from manifest, and set the new UI Activi Android: Ensure that the target folder for screenshots exists before attem myownfriend (44): Update 16bit.glsl Update 32bit.glsl Update FXAA.glsl Update acidtrip.glsl Update acidtrip2.glsl Update asciiart.glsl Update auto_toon.glsl Update auto_toon2.glsl Update bad_bloom.glsl Update chrismas.glsl Update cool1.glsl Update darkerbrighter.glsl Update emboss.glsl Update fire.glsl Update firewater.glsl Update invertedoutline.glsl Update mad_world.glsl Update nightvision.glsl Update nightvision2.glsl Update nightvision2scanlines.glsl Update posterize.glsl Update posterize2.glsl Update primarycolors.glsl Update sepia.glsl Update sketchy.glsl Update stereoscopic.glsl Update stereoscopic2.glsl Update asciiart.glsl Update auto_toon2.glsl Update nightvision2.glsl Update nightvision2scanlines.glsl Update posterize.glsl Update chrismas.glsl Update 16bit.glsl Update firewater.glsl Update 16bit.glsl Update asciiart.glsl Update primarycolors.glsl Update 32bit.glsl Update acidmetal.glsl Update cool1.glsl Update fire2.glsl Update emboss.glsl Update emboss.glsl Admiral H. Curtiss (38): Properly set default video mode for PAL Wii games. Config: Fix incorrect array length detection for CPU Emulation Engine opti Fixes issue with PAL Wind Waker not displaying PAL60 option. GameCube SRAM: Recalculate checksums after setting language. GameCube SRAM: Add a struct for the "flags" parameter. Boot: Automatically temporarily set GameCube language to 0 when booting NT GameCube Config: Add option to override the NTSC auto language change. Config: Add a boolean for PAL60, like the Progressive Scan one. Config: Allow PAL60 to be set by ini files. Netplay: Sync GameCube SRAM. Boot: Setting overrides should be applied after all settings from ini/movi Boot: Automatically temporarily disable PAL60 for NTSC Wii games. Movie: Add the PAL60 setting to Movie files. ConfigManager: Set homebrew video mode based on Dolphin's PAL60 config ins Boot: Decide setting.txt's country settings based on the game's video mode Netplay: Sync Video Mode settings. (Progressive Scan and PAL60) WiimoteReal: Make sure that Wiimote thread isn't already running before st WiimoteReal: Make sure that Wiimote thread isn't already running before st GetExeDirectory() shouldn't return paths with /../ in the middle. GameCubeConfig: If the user selects a memcard file path within Dolphin's d GameCubeConfig: Case insensitive compare & absolute path compare for the p GC Adapter: Do not attempt to claim_interface when libusb_open() returns a GC Adapter: Do not attempt to claim_interface when libusb_open() returns a Wiimote: (Re-)Connect a disconnected emulated Wiimote when a mapped button StringUtil: Always use the default C locale for StringFromFormat() instead IniFile: Use a formatting for floats that makes them survive round-trips t DolphinWX: Add options to Load Last Slot 9/10 to menu. DolphinWX: GetCmdForHotkey() should have Load Last Slot 9/10 as well. DolphinWX: ParseHotkeys() should use the State::NUM_STATES constant instea Wiimote: (Re-)Connect a disconnected real Wiimote when a button is pressed DolphinWX: In Host_ConnectWiimote(), instead of calling CFrame::ConnectWii Display a message on screen when the emulated software disconnects a Wiimo Wiimote: Extend emulated Wiimote reconnect-on-button-press to attachments. SaveState/DolphinWX: Display time and date of savestate when a slot is sel SaveState/DolphinWX: Display time and date of savestate next to the load/s State.cpp: Extract the savestate version logic into its own function for c Config: Hotfix to prevent per-game settings from ie. GameINIs being stored BootManager: Slightly clean up the config_cache stuff by pulling the save Linktothepast (38): Gameini update for FINAL FANTASY FABLES: Chocobo's Dungeon. Gameini updates. Remove the extra parameters field from the PH. Gameini updates. Gameini updates. More updates. Gameini updates. Gameini updates. More gameini updates. Gameini updates. More ini updates. Gameini updates. Gameini cleanup. Gameini updates. Gameini updates. Remove some missing references to tlbhack. Gameini update. Update. Gameini updates. Additional gameini changes. Gameini database update. Additional gameini updates. Additional gameini updates. More gameini changes. More updates. Gameini updates. Gameini database update. Fix issues. Gameini updates Gameini updates. More gameini updates. Gameini updates. Address pr comments. Merge remote-tracking branch 'dolphin-emu/master' into gameinis Merge branch 'master' of https://github.com/Linktothepast/dolphin into gam Gameini updates. Gameini updates. More gameini updates. Chris Burgener (36): Append Disc 2 to Titles for Multi-Disc Games Fix wxWidgets Error in About Window Fix Frame Advance Hold Delay Changes AVIDump Clean Up and Fixes Add ffmpeg externals Use ffmpeg for Windows Video Dumping instead of VFW Force XVID FourCC for MPEG4 output Properly clear JIT cache on save states Rename Direct3D to Direct3D 11 Properly Handle Video Dumping from Power On Add Safe Texture Cache to Gunblade NY & LA Machineguns INI Apply Wii Settings on Movie Recording/Playback Force Slow Depth on Suzumiya Haruhi no Heiretsu Move SetData logic to within SysConf.cpp Fix savestates if a device is changed after a savestate is made Update Installer to delete old Install directory Remove Unused Framestop Functions Change GetStatePtr() Return to const Only copy relevant files for Windows builds Fix Windows build not copying certain files Set Medium Texture Cache for Fantastic Football Fan Party Force Neo Geo games to use LLE Audio Add EnableJIT=True to INI files Force Skip EFB Access from CPU off for Pikmin Wii Re-add deleted Gecko Tag in Smash Netplay INI Prepare Windows Installer for 5.0 Update dolphin-emu.spec for 5.0 Add VC++2015 redistributable Force Virtual XFB for Hollywood Squares Force Real XFB for Story Hour: Adventures Force Real XFB for Story Hour: Fairy Tales Force EFB2RAM for Story Hour: Adventures and Story Hour: Fairy Tales Yuriy O'Donnell (35): JIT: JitBaseBlockCache::valid_block is now std::vector JIT: JitBaseBlockCache::InvalidateICache no longer memsets iCache memory t removed trailing whitespace Render: Implemented simple render target pool D3D: Implemented cache for dynamic render states D3D: Moved render state cache into separate source files. Refactored Stat D3D: State cache now uses BitField to define packed render states D3D: moved render state cache implementation to D3DState.h/cpp D3D: Fixed uninitialized members of gx_state D3D: State cache now reduces number of blend state permutations by collaps Workaround for MSVC not optimizing away Write() in GeneratePixelShader Added __forceinline to AlphaTest::TestResult() to make MSVC inline it D3D: Removed SetBlendOp, SetSrcBlend and SetDestBlend as they are now triv D3D: Fixed anisotropic filtering. D3D: Enabled depth clipping Added projection matrix epsilon that fixes depth clipping issues in some g D3D: Vertex and index data in one buffer D3D: Using start index and base vertex instead of buffer offsets D3D: Use two buffers for VertexManager D3D: RestoreState no longer resets PS resources Moved projection epsilon to a more reasonable place D3D: Replaced shader-based depth range remap with viewport D3D: Removed somewhat mysterious comment Renamed DEPTHPARAMS to PIXELCENTERCORRECTION D3D: Viewport min and max depth is now clamped to [0..1] range Moved projection epsilon back to g_fProjectionMatrix[15], which essentiall D3D: Implemented context state caching D3D: Removed cull mode changes for lines and points D3D: StateManager m_current and m_pending are now value-initialized D3D: Fixed StateManager member function name case D3D: Fixed debug validation error D3D: Fixed D3D validation error during EFB to texture copy D3D: Moved setting texture by slot mask into StateManager D3D: StateManager::Apply no longer iterates through every texture and samp D3D: Replaced explicit _BitScanForward with LeastSignificantSetBit booto (35): numCyclesMinusOne to numCycles in GekkoOPInfo GCPadEmu: stop sticks wrapping at extreme values GCPadStatus: coalescing magic numbers into consts AudioCommon/Mixer: Allow input sample rate changes DTK: Adjustments attempting to increase accuracy DSP: latch dma parameters DSP: copy audio dma samples as early as possible DSP: Fixes behaviour for audio dmas of length 0 DSP: Do updates to DSP interrupt bits asap DSP: Add minor delay to initial AIDMA interrupt DSP: Use completion event for ARAM interrupt DSP: General cleanup. No behaviour change. dsp int timing tweak VideoCommon: loop bug in ShaderGenCommon.h debug Video: respect stride of efb copies to xfb RealXFB sizes don't get scaled by IR Video: stride in bytes rather than pixels Video: Trying to fix D3D/XFB disabled regression VideoCommon: reduce level of debug output VI: derive field timing from VI registers VI: Restore forced-progressive hack with option VI: Adjust forced-progressive hack per magumagu's suggestion FifoPlayer: Use VI derived timing, not hardcoded 60Hz VideoCommon: xfb height calculation adjusted VI: Respect DisplayControlRegister ENB bit VI: Less log spam in Release build AI: reduce overhead of sample counter VI: Fix vert beam position inaccuracy AlsaSound: fix buffer type, clean up macros VI: wait until start of ACV to sample xfb addr VI: set the JP bit of VI's DTV reg when needed SI: Base SI sampling on VSync & horiz lines Comment change to reflect what code does DiscIO: Use specified Wii region for discs Jeffrey Pfau (31): Attempt to beautify About dialog on OS X. Add hack for removing background from text controlers, per comex Only wxMac supports scaleFactor, so only use it on OS X DolphinWX: Fix threading issues with TAS pad updates Tools: Use non-CMake tool for fixing up OS X bundles Tools: Clean up deploy-mac script symlink resolution Tools: Collapse install_name_tool calls in deploy-mac Common: Add null checks when adding and removing breakpoints Android: Allow NDK location to be overridden Android: Allow git and cmake locations to be overridden Update Readme with information about more build.properties Fix FreeBSD build Common: Use more portable invocation of shm_open Fix 64-bit FreeBSD build PowerPC: Fix GDBStub build WiimoteReal: Add IOHIDDevice support for OS X Common: CallLambdaTrampoline can return a value Common: CallLambdaTrampoline can return a value Fix FreeBSD build Common: Use more portable invocation of shm_open Fix 64-bit FreeBSD build DolphinWX: Fix build if libusb is disabled Externals: Update gtest to r733 DolphinWX: Ensure TASInputDlg only gets modified on the main thread DolphinWX: Finish removing bandaid from 704f787 DolphinWX: TAS fixes, take three Externals: Update miniupnpc to API version 14 HW: Fix libusb support for older libusb APIs VideoBackend: Remove extraneous shifts from indirect texture lookups Revert "VideoBackend: Remove extraneous shifts from indirect texture looku VideoCommon: Simplify indirect texture lookup code slightly Augustin Cavalier (30): Fix the ZLib in Externals. The CMakeLists file looked like it was copy-pas Migrate PNGs from DolphinWX to the Data/Sys/Resources directory. WiiSaveCrypted: migrate to Core/HW. PolarSSL: don't install stuff. DolphinQt: initial commit. Migrate global init stuff into UICommon. DolphinQt: Stub Host_* functions & Resource system. Fix the brand/cpu_string reversal. Fixes to the About dialog & add the SystemInfo dialog. Fixes from @comex to add the app bundle and icon on Mac. Some style fixes. Fix image loading on Retina and other HiDPI displays. Move GLInterface to the OGL VideoBackend's directory. DolphinQt: adapt so that it can boot games. Dolphin[Qt|WX]: Miscellaneous cleanup. README: Add info about "Resources" directory. DolphinQt: GameList! Add a notice about licensing to CONTRIBUTING.md Remove note about reusing the render widget. "Gamelist view style" -> "List style" GameGrid: enable uniform item sizes. SystemInfo: various cleanup. Micro-optimize RenderWidgetHasFocus(). Implement the "Rating" column. Cast the result of GetSize() to "unsigned long long". Support HiDPI flags & rating images. Fix HiDPI loading logic. DolphinQt: remove non-render-to-main and add fullscreen. Enet: ensure CMAKE_REQUIRED_LIBRARIES is empty. Make sure we unset the CMAKE_REQUIRED_LIBRARIES variable. Anthony Serna (27): Changed AR Code Window and Patch Window Small changes to description to "Store EFB Copies to Texture Only" Small changes to description to "Store EFB Copies to Texture Only" Added some warning text about fractional IRs. Optimized addx() Removed audio shortcut from toolbar Specified the type of AA in OGL AA settings Changed GC adapter "Direct Connect" to false by default Implemented .elf and .dol support in gamelist Implemented ability to block writes to the SD card Fixed introduced compiler warning in Linux Implemented CLI switch to disable confirm on stop Properly implemented confirm on stop CLI switch Removed fastmem from Android UI Improved D3D and OGL AA option UI [DolphinWX] Added warning to Wii disc compression Blocked netplay users from desyncing by messing with savestates. [UI] Remove DolphinQt [UI] More DQt removals [Netplay] Disable Wiimotes [Config UI] add "normal speed" to speed limit 100% [udev] Added udev rule for GC adapter [UI] Remove browse toolbar button and tweak empty gamelist message [UI] Fix Gamelist encoding bug [OGL] Workaround nvidia being weird with GL_MAX_TEXTURE_SIZE [GameINI] Netplay Smash AR codes [INI] Remove malformed Conduit 2 cheat codes mimimi085181 (27): Update size_in_bytes of texture cache entries when copying efb to ram Fix another small bug with the efb2ram cache Make efb to texture less broken for paletted textures that are efb copies GetCRC32: Fix the hash for the last byte(s) Allow multiple texture cache entries for textures at the same address Search the texture cache for small textures by address and hash Fix line ending bug for downloaded gecko codes Code cleanup for FreeTexture after merging PR #2097 Support partial texture updates via efb copies Quick fix for an invalid iterator Perform garbage collection for efb copies Store the base hash for paletted textures in the texture cache entries Fix performance regression in Sonic the Fighters, introduced by PR#2001 Respect the stride for efb copies when hashing them Do not delete strided efb copies on load Check the hashes of efb copies before applying them as partial texture upd For partial texture updates check the dimensions of the efb copy and the t Copy all layers of textures with CopyRectangleFromTexture Partial texture updates with parts of efb copies new version Minor fixes to the partial updates code Remove the restriction to apply efb copies only once as partial update Partial texture updates: Allow the efb copy to start before the texture Partial updates for paletted textures XInput: Apply Rumble/Motor output only on changes (again) Make integral auto IR(multiple of 640x528) work as expected Netplay: Fix gamecube controller mapping Fix latency regression Fog (19): Add Tick Count to Movie Files Removed unused variable, added tick count check Fixed last tick count not being set on movie load Proper Audio/Video Dumping Added Dump Frames/Audio to Movie Menu Changed Dump Frames References Move bDumpFrames to SConfig (and it's references) Start/Stop Audio Dump During Emulation Flipped Wave File Channels Moved Input Display to Movie Menu Use ffmpeg for Windows Video Dumping instead of VFW Remove un-needed files Update About Dolphin Screen Fix video dumping incorrect lengths for some games Fix adding additional Disc 2 to certain multi-disc games Fix File Extension Search Being Case Sensitive Add UI Support for up to 8x Internal Resolutions Fix random hangs when loading savestates with TAS Input Add Frame Advance Hold Hotkey Functionality LPFaint99 (19): ChooseMemcardPath bugfix: check for a directory separator before convertin Use memory card 251 for games that cannot use large memory cards add setting to game inis to use memory card 251 for games that cannot use fix exporting all saves in memcardmanager GCMemcard: fix edge case of adding to a fragmented memcard. Export wii saves to the "User" directory initial clang format config. UseTab: ForIndentation move memorycard handling to its own class first implementation of memcard from directory, creates a memory card from GCI Folder: correctly identify region of sysmenu GCI Folder fix compatibility with games that relocate the save after first Gcifolder use correct region for fifologs and homebrew GCI Folder: no need to force reload sysmenu to get version GCI Folder: if there are too many files in the folder, try to leave free d GCI Folder: try to leave 10% of the blocks free. only applies if the save Fix endian error. allows loading of current games save even if the memcard GCI folder: flush 1 second after last block is written GCI Folder: Skip 'header-only' writes Gabriel Corona (18): Fix LLVM Profiling: measure time on POSIX systems using clock_gettime Add Linux perf JIT support (/tmp/perf-$pid.map) Move the JIT registration logic in its own file Use CLI argument for Linux perf JIT support Use printf-like format in JitRegister::Register JitRegister: overload Register with a [start,end) variant JitRegister: JitAsmCommon JitRegister: JitAsm JitRegister: TrampolineCache Use the C locale for non-Windows CharArrayFromFormatV() and StringFromForm Do not fail to evaluate an expression if some input is missing Fix linux hotkeys Avoid conflicts between hotkeys and global keybindings for Linux Fix build without UPnP GDB stub over UNIX socket Tool to transform JIT_PPC_${address} to JIT_PPC_${symbol} Stable device identifier for evdev archshift (18): Changed toolbar to be static, increasing UI integration Switch play/pause button icons when necessary Allow toggling the toolbar in the menu Included toolbar headers, preventing forward-decl errors Removed AuiTB, moved functions to menubar (Debug->Perspectives) Removed TBDebug, using TBMain instead. Fixed debugger assert. Fixed assertion when creating new perspective. Re-ordered initialization of m_ToolBar and m_SavedPerspectives Removed unused Tracer.h/cpp Removed Tracer.h/cpp from VS files Hide toolbar upon going fullscreen, rendering to main window. Disable toolbar toggle in main window fullscreen FrameTools.cpp: Alignment of long lists Fixed toolbar's disabled button color. Wx: further cleanup to toolbar creation process Fixed black screen on game start for X11 contexts. ConfigManager.cpp: Removed three elements from platform-ifdef Added IDEA/Clion project dir to .gitignore spxtr (17): GC controller input using named pipes Fix some bugs in Pipe input parsing. DolphinQt2 Use a proxy model for the GameList. Refactor proxy models and toolbar. Repackage the unique_ptr in GameFile into a QSharedPointer. Move the menu bar into its own file. Use a separate INI file for UI settings. Use const reference, explicit, final, and override in DQt2. Add support for sending game memory changes to outside processes DQt2: Implement Paths config dialog Allow MemoryWatcher to follow pointers DQt2: Add a message if the game list is empty. Make paths dialog modeless. Stop parenting RenderWidget. Replace TableProxyModel with TableDelegate. Use CoreTiming for MemoryWatcher. waddlesplash (17): DolphinQt: Rewrite About dialog to match the new DolphinWX one. DolphinQt: Make use of the C++11 signal/slot connection syntax. DolphinQt: Add some sanity to the VS projects. DolphinQt: Simplify action setup. QtCompile.props: Update for Qt 5.5. DolphinQt: Properly handle quit events. DolphinQt: Indentation fixes. DolphinQt: Add 'Screenshot' button. DolphinQt: Remove '&' on closures where it isn't needed. DolphinQt: Set the SUBSYSTEM in Release mode to 'Windows' to hide the cons DolphinQt: Use C++11 'final' keyword where applicable. DolphinQt: Updates to the SystemInfo dialog. DolphinQt: Handle the Host_UpdateTitle callback. FileSearch: Don't use RegExs, just do string comparisons. OGL: Use SplitPath() instead of std::regex. Externals/Qt: Update to Qt 5.5.0. DolphinQt: Get rid of unneeded abbreviation macros. Benjamin Przybocki (16): Fix consistency of cannot throughout the project Nunchuck -> Nunchuk http -> https Remove RunningGamecube Update Outdated Google Code References Readme Fixes and Improvements Use Consistent Spelling of "license" Remove DVDXDV Fix Default Freelook Hotkey to Match Description (For Real This Time) Change Order of Some Hotkeys Clean Up Web Site -> Website Change Wording Replace Country Names With No-Intro Names Capitalize Dolphin in Game INI Files Change Wording in Help Menu Simon McFarlane (16): Set minimum size on config window To prevent tabs from getting a scrollbar Use wxStaticText::Wrap rather than manually inserting newlines Add size to CPU clock override slider Fixes slider having 0 width on wxGTK Make OC slider match enabled state on window load Change about page branch info to wxStaticText Make revision text wxStaticText Remove BanishBackground function No longer needed Ignore vim swapfiles QT: add exit function QT: Add ISO folder browser QT: Add Play/Pause to Emulation menu QT: Add reset button Qt: Prevent crash when closed by the window manager Qt: resize main window to fit render Qt: Make 'About Qt' action actually open the about box Qt: add proper keyboard shortcuts from wx EmptyChaos (14): D3D12: Cleanup DX12::Renderer::SetSamplerState WXGUI: Fix disabled play button not being faded. VideoBackends: Do not use Anisotropy on Point filtered textures. VideoCommon: Refactor TexMode0 mipmaps disabled test into a helper functio DSP: Fix integer promotion spill VideoInterface: Fix registers not being initialized CFrame: Fix Confirm Close DriveReader: Fix View > Show Drives Core: Threadsafety Synchronization Fixes (Frame Advance / FifoPlayer) Movie: Threadsafety Audit Core/Movie: Add ability to run code in Host context ActionReplay: Fix ISOProperties corrupting active code set ActionReplay: UI Consistency and Cleanup ISOProperties/GameListCtrl: Use Global INI Change event. Unknown W. Brackets (14): DolphinWX: Allow cancelling gcz compression. DiscIO: Decompress to file using a larger buffer. DiscIO: Avoid zeroing buffer when compressing gcz. DiscIO: Change a memset() to zero initialization. Android: Ignore some generated files. Android: also ignore the libs left on the root. OGL: Use a fixed VAO for attributeless rendering. OGL: Properly reset the attributeless VAO. OGL: Bind the attributeless VAO before EFB copies. OGL: Move attributeless VAO creation to Init. OGL: Ensure a VAO is bound for all attributeless. OGL: Correctly define attrib 0 in attributeless. OGL: Attempt a larger buffer to workaround 7946. DiscIO: On decompress to file, write last blocks. Jordan Woyak (13): Fix some emulated wiimote turntable stupidness (DJ Hero controller). Happy Revert "Reading shake force from calibration rather than a constant" It di Eliminate some Wiimote acceleration logic redundancy. Yeah, I eliminated a Fixed issue 6245. (ISO Path's "Remove" button not being disabled when it s Fixed issue 7020. CISO >4GB failure. Caused by integer overflow. Kill auto usage in CISOBlob.cpp per request. Disable SDL input on Windows. Remove SDL from Externals. Possibly an OSX buildfix. Fix game list size display. Fix InputConfigDiag crash on Windows. (GCode issue 7384) Store ini sections in a std::list (rather than vector) to prevent unexpect Fix ISO Directory extraction. Sean Maas (13): Android: Allow finger movement while pressing button Release button after touch leaves boundaries Clarify code with comments Add braces Android: Fix Scaled EFB Copy setting ARM: Fix Wii games on JIT Make the Android UI more like the desktop UI Add a comment about game list color Add japanese strings Android: add multitouch support [Android] Onscreen controls better resemble GC and user configurable scali [Android] Enable filtering onscreen buttons [Android] Return to game list instead of exiting app Sepalani (13): Fixed: NULL remotehost in IOCTL_SO_INETATON Cleanup IOCTL_SO_INETATON Merge remote-tracking branch 'upstream/master' Fix a possible null pointer dereference Merge remote-tracking branch 'upstream/master' Removed: Unnecessary ternaries in IOCTL_SO_INETATON mbedTLS: fix blocking read WSAGetLastError: fix return value MemoryCheckDlg: Fix event buttons WSAPoll: Fixed - invalid argument was supplied DebuggerViews: Fixed nullptr dereferences RegisterView: View code menu added Debug Builds: Fixed vector assertion CarlKenner (12): Fix error message when D3D11 HResults fail. Prevents showing the wrong fun Fix many bugs with the Symbols menu (when run with -d argument). The Symbo Add "Load bad map file" option for map files on disc that don't quite matc Convert spaces to tabs in IDA Pro script. Apparently c_str doesn't return a C str. Merge bad map file loading into the original function. Load 4 column map files like in American Mensa Academy. Unfortunately the Remove white space at ends of lines. Rename menu items, stop using PanicAlertT, remove -d when running from vis This fixes stereoscopic 3D with XFB enabled, for example in the intro in A Skip zeroes that sometimes pad function to 16 byte boundary (eg. Donkey Ko Fix horribly broken accelerometer emulation. It now emulates the least sig crudelios (12): Rewrote bounding box algotithm. Fixes issues 5967, 6154, 6196, 6211. BBox: read from the proper world matrix index when transforming vertexes t Merge branch 'master' of https://code.google.com/p/dolphin-emu BBox: fix for a small rounding issue. BBox: Changed the rounding again, the old one fixed Paper Mario but had bu Reimplement Bounding Box calculation using the software renderer. Fix linux build and various warnings. Get buildbot to compile. Several small optimizations. Fixed a small bug. Fix compile errors after rebase. Remove setting to enable or disable Bounding Box calculation. Christian Widmer (11): Include cstring in Hash.cpp to fix building without PCH Include unistd.h in memtools.cpp to fix nopch DolphinQt: Install binary for systems not matching APPLE Use CRC32 for IPL checks and update hashes DolphinWX: Add items to visible columns only DolphinWX: Add a filename column Fix OProfile discovery and drop bfd dependency VideoCommon: Add includes for generic build DolphinWX: Fix label change for the play/pause button Core: Fix build with portaudio enabled and pch disabled DolphinWX: Fix items vanishing from toolbar kostamarino@hotmail.com (11): Gameini database update of Metroid: Other M. The game actually needed emul Gameini update for Skies of Arcadia and Call of duty Black Ops. Both games Gameini database update. Fixes issue 6662. Fixes most of the games in issu Gameini database update. Enforce LLE recompiler in Wind Waker to prevent a Big gameini database update. Remove most projection hacks enabled by defau Gameini database update. "RESIDENT EVIL CODE VERONICA X" added, "The Incre Gameini database update. Carmen Sandiego(gc), Ed, Edd n Eddy (gc), Ice Age Gameini database update. Beyond Good and Evil (gc), Hunter: The Reckoning Gameini database update. Update for WarioWare, Inc. Mega Party Games (gc) Gameini database update for Mega Man Anniversary Collection (gc), Tony Haw Gameini database update for Crash Tag Team Racing (gc), Baten Kaitos Etern Pringo (10): Update Readme.md Update CMakeLists.txt http -> https for Wiki Seach Update Readme.md Update Error Log to Remove Old Issue Tracker URL Update Issue Tracker Link in Comment Remove Google Code Reference and Fix Grammar Replace low-res bitmaps in Dolphin.ico Update CPack Package Description Adam Moss (9): SDL Input: Support more types of force feedback for controllers through SD Audio: Fix subwoofer output in software 5.1 decoding Audio: Fuller subwoofer processing for software 5.1 decode OpenAL: Fix volume of sample conversion Video: Distinguish between interlace and non-interlace X11 XRANDR modes Video: Remove debug spew in XRANDR mode code Video: Remove more debug spew in XRANDR mode code Audio: Fix warning in DPL2 subwoofer change PulseAudio: Support 5.1 surround, optional in UI James Cowgill (9): Rename unittest targets to Test_* Update Externals/SFML to 2.1 Port dolphin to SFML 2.1 Replace gamecube fonts with free alternatives HW: Fix spelling mistake Remove uses of __DATE__ and __TIME__ Remove the shebang from the desktop file Fix some very minor spelling mistakes Replace the XPM desktop icon with an SVG Jordan Cristiano (9): Changed thread barrier and event to use a lamba wait predicate instead of warnings and code formatting more warning fixes build fix More warning fixes, OSX build fix. Fixed ZComploc and Zfreeze values being incorrectly saved. Fixed console commands not registering. Code cleanup. Fixed dsp lle thread never starting because of dspjit initialization happe Made cycle count atomic to avoid using a mutex Sintendo (9): Change fres/frsqrte jumps Minor DSP JIT optimizations Merge Update_SR_Register64_Carry functions Correct clobber comments More minor DSP JIT optimizations Add function to emit CMP, or TEST when possible Eliminate branch in GenFres Fix a few typos VideoInterface: Fix comment typo BhaaL (8): fix registry paths for portable mode/userdir in Readme.md Add a sample snippet to illustrate indentation/alignment fix some style inconsistencies that drove me nuts get rid of the cached pointer inside ES remove all accesses to m_pContent hide the distinction between WAD and File from ES properly open/close the file to avoid rapid open/close cycles clear the NAND data cache on ES_LAUNCH to avoid leaving files open Charles Rozhon (8): Placed ampersands and asterisks against type name Changed GCPadStatus struct to use cstdint types instead of char, short etc Removed warnings by explicitly casting to `u8` for controllers Removed warning caused by calling std::min with size_t values Removed warnings by assigning to bool Changed unsigned ints and chars to cstdint counterparts Removed the typedefs for Elf32 word types Fixed bug introduced in PR#803 caused by casting Jens Nyberg (8): Remove superfluous bit shift OGL/VertexManager: Minor cleanup of if case OGL/VertexManager: Do not check if g_nativeVertexFmt is zero VideoCommon/VertexLoader: Remove NRM enum VideoCommon/VertexLoader: Remove duplicate point min and max calculation VideoCommon/VertexLoader: Add more use of std::min and std::max OGL/VertexManager: Remove unnused m_CurrentVertexFmt VideoCommon: Remove unused pow functions Rukai (8): DolphinQt2: No longer crashes when loading gameini without an EmulationSta Gamelist viewed as a table has a properly spaced row height About dialog displays version numbers and handy links DQT2: Added context menu to gamelist Fully remove wii remote netplay UI code and remove reference to WiimoteRea Implements Emulation MenuBar DolphinWX: Disable 'maker' column hiding Brings visual studio build files up to date with recent Qt changes Ziek (8): Adding enet library for future replacement of tcp Switched tcp over to enet Moved Traversal Client code over from old netplay Moved over gui code for Change netplay initial gctime to be determined by the hosts initial time Fixed issue where players were not disconnecting correctly Added Gui elements in Netplay Setup Diag so a person can choose a traversa Added all of enet lib, changed Cmake files accordingly Added TraversalServer.cpp to Core/Common NanoByte011 (7): Lighting Attenuation Fixes Cleaned up whitespace Fixed Directional Attenuation (assumed, data was lig Initial port of zfreeze branch (3.5-1729) Cleanup and refactor of zfreeze port Fixes Mario Tennis Gimmick Courts and adds support for FastDepthCalc VideoSW: rewrite lighting attenuation VideoSW: refactor shared lighting attenuation function Tyler Dunn (7): [Android] Remove CPUHelper class [Android] Fix possible leak of fileCursor [Android] Don't hardcode SD card path [Android] Drop commit() for apply() [Android] Reduce code redundancy [Android] Bump gradle plugin to 2.1.0 [Android] Fix extra character in screenshot folder path Zhuowei Zhang (7): Add Change Disc option to the right-click menu in the game list. For issue Downgrade the ERROR log printed when twi is executed in interpreter to DEB Update debugger button states at startup to disable non-functional JIT men for tw/twi instructions, force propagated constant into a register to avoi When loading the map file for a DOL/ELF file, extract only the filename fr Fix twi/tw instructions being switched in Jit64 and JitArm; downgrade the Parse input as hex instead of decimal to match display values in the debug rukai (7): OpenGL exclusive fullscreen OSD notification is made consistent with the o Fixes translation on Linux and potentially Mac OSX, by specifying location Swapped out spaces for tabs Added namespace to GetBundleDirectory to compile on Mac OSX Enter key opens selected game in the game list. DolphinQt Builds on Visual Studio [Qt] VS build no longer adds all of Data to Binary Julian Löhr (6): Fix Wiimote Index LED Fix Prepare (Set LEDs and Rumble) on Connect and Refresh Remove explicit Wait on Overlap Event Add Methods to check for Toshiba Stack Fix "-TR" Wiimotes on Windows 8/8.1/10, by using WriteFile for sending Run system native CScript Michael Ehrenreich (6): Improve error handling in DiscIO::CompressFileToBlob and DecompressBlobToF Don't destroy the libusb context before freeing the device list. Prevent nullptr dereference on a crash with no JIT present Block WX input when detecting controls Shut down HW in reverse initialization order Fixes a race condition betwee JIT x64: Recalculate flags on add/sub Rodolfo Bogado (6): Add HW bounding Box support to d3d backend Added support test for bbox and some naming corrections small spacing fixes use SAFE_RELEASE to make code cleaner spaces cleanup Implement scaled partial texture updates mr.greywater (6): Fix warning message when loading german discs D3D: Fixed crash rendering EFB textures with MSAA D3D: Add break on error in debug build D3D: Added GetDebugObjectName and parameter checking in SetDebugObjectName D3D: Add debug object name for efb encoder pixel shader D3D: replace memset, fix warning Adam D. Moss (5): SDL: Refactor the SDL haptic effects a little. SDL Input: More minor refactoring of SDL haptic effects SDL input: unhardcode a few values. & change effect length to half a secon SDL haptic: minor style change based on review feedback Audio: Drop the LFE/subwoofer channel from the decoded surround Justin Chadwick (5): Place pinned memory as top priority Change the comments to be more detailed. Remove AtBreakpoint() from ReadIdle. Fixes Rogue Squadron 2 without Break Add documentation for Wii network files Disables assert messages that seem to be invalid. Matt Mastracci (5): MemoryWatcher: Initialize m_running to false to prevent crashes on OSX in DolphinWX: Fix window growing on every relaunch [DVD] Signedness fix in realistic timing path [INI] Arc Rise Fantasia no longer needs the 'fast disk speed' setting [DVD] Ignore buffer when seeking backwards Unfortunately this fix re-break Phatcat (5): Wiimote + Extensions for Android Android: Revision of PR 3253 (Wiimote controls) Android: Added categories to input controls Android: More analog input configurations Android: 4k Internal Resolution support SMarioMan (5): Add stereoscopic options to SF8.ini Add stereoscopic options to RSB.ini Update RSB.ini Update SF8.ini Add StereoConvergence settings to various gameini files. Scott Moreau (5): wayland: Add bits required to run as a wayland client. Merge Platform.h into GLInterface.h Move GLInterface.h into GLInterface directory EGL: Properly set parent window. EGL: Fix android build broken by last commit hdcmeta (5): Set g_vertex_manager to nullptr on DX11 backend shutdown.. OGL backend alr Add missing include, this was previously masked by PCH usage D3D12: Add d3dx12.h helper library to Externals D3D12: Additions to VideoCommon to support D3D12 backend. D3D12: Initial commit for D3D12 backend implementation. zeroZshadow (5): Properly scan for OpenVPN TAP adapters Handle errors correctly in SendFram Added for loop end condition Improve TAP_Win32 error logging Ignore all writes to BBA_TXFIFOCNT Rewrite RecvStart error checking as suggested by shuffle2 Gerik Kubiak (4): Added the ability to pause the emulator by moving the mouse outside the wi Change behavior so emulation is paused when window focus is lost. Added checkbox under Config > Interface. Changed screen to window. Moved UpdateGUI to a more general scope. Henrik Rydgård (4): x64 emitter: Add a few missing instructions x64 emitter: Add some more missing ops (MOVDQA, MOVDQU, PSHUFHW) Be consistent with braces. KAMiKAZOW (4): Create dolphin-emu.spec Update dolphin-emu.spec Update dolphin-emu.spec Fix specfile for nogui executable Mateus B. Cassiano (4): Game INI updates Update GameINI for Donkey Kong Country Returns Always load system fonts from IPL dump, if available Game INI updates: flag some Wii titles without widescreen support Paul Olszewski (4): Clean up and add info to .gitignore; also re-add the QtCreator CMakeLists. Fix the capitalization of "GameCube" throughout the project. Make the common "Failed to enumerate outputs" message much more useful. Improve and/or arbitrarily change the descriptions of various settings in kamiyo (4): updated frametools Added condition so that function to mix wiimote-speaker data into the mast Fix wiimote speaker divisor. High Quality Resampler, using FIR filter rabbott99 (4): CheatSearchTab: Use an enum for filter masks rather than ints Movie: Reset wiimotes at at start of recording/playback, to prevent desync Movie: Fix "Pause at End of Movie" for wii games. InputUpdate() is never c .gitignore: ignore emacs temp files Corwin Mcknight (3): DolphinQt: Disable Display Sleep on Windows. [UI] Make NetPlay UI bigger and neater Fix regression for .elf files in Netplay Game Selector Emmanuel Gil Peyrot (3): NoGUI: Don’t segfault when the DISPLAY environment variable isn’t set UICommon: Respect XDG Base Directory Specification on POSIX systems. FileUtil: Move ShaderCache to the Cache directory. FL.dolphinemu (3): Issue 7968: Added keybinds for increasing, decreasing, and muting audio. Update pull request 1782. Reordered header and corrected text case. Vertical aligned all members of g_HKData struct. Moncef Mechri (3): Use dummy audio backend if the selected backend fails to start Initialize ALSA before starting the audio thread Don't busy wait in the audio thread (ALSA) Mystro256 (3): Add option to use shared gtest library if available Polarssl should be mbedtls in dolphin-emu.spec Add manpages for Linux and include them in spec file Oussama Danba (3): Update references of Google Code to GitHub and update copyright year. Update framelimit tooltip text because the Audio option has been removed. Allow minimum volume to be set to 0% in the interface. Ryan Hitchman (3): WiimoteReal: fix Linux Bluetooth connectivity on Linux >= 3.5 WiimoteReal: retry failed connections quickly WiimoteReal/Linux: log connect failures at WARNING level Toad King (3): make IOCTL_SO_GETHOSTID more accurate on Windows changed IOCTL_SO_GETHOSTID to remove malloc()/free() calls account for Get remove trailing whitespace Tony Drake (3): Added missing Mega Man 5 INI file Add missing INI file for SMB: The Lost Levels Added info for Rodea The Sky Soldier TotalNerd (3): Emulate GameCube memory card speeds Redo timing in DMAWrite/DMARead Revised channel access from EXI_DeviceMemoryCard Tres Walsh (3): Reduce number of allocations in CFileSystemGCWii::BuildFilenames Fix variable name ambiguity Fix compiler error for win64 (SFileInfo doesn't get used much so a copy wo TurboK234 (3): Remove "EFB Copies Disabled" option from hotkey toggling cycle. Added OSD comment if EFB Copies are disabled. Added hotkeys for toggling different stereoscopy modes ghost (3): VideoBackend: Video config filename is now exposed in VideoBackends. VideoConfig/LocalConfig/HotkeyManager: Added hotkeys for switching stereo- SaveState: Fix for race condition ("wait" didn't actually waited for file i418c (3): Fix Freelook on Linux and add speed reset. Update freelook description. Changed the hotkeys to 1 and 2. Message in GUI changed to reflect this. Alcaro (2): Run pngout and zopflipng on every single PNG in this repo. Use optipng too. Carl Kenner (2): Add values for the Size, Location, and Comments columns of the Programs an This fixes the issue where the installer deletes the User folder, possibly CastellaFactory (2): [Netplay:Traversal] Add "Force Netplay Listen Port" feature that was in ol [Netplay] Show error dialog if failed to connect to netplay server when Tr Chanwoong Kim (2): Fixed a bug that incorrectly recognized as 'GameCube'. when you open the K fixed issue 6852. Corwin McKnight (2): [Qt]: Enable Qt on Mac OSX. [Qt] Settings Window for Qt Dwayne Slater (2): Fix OpenGLES 3.0 on Qualcomm's crappy driver, it can't bitshift sometimes. Fix invalid enums on OpenGLES FenrisulfrX (2): AR: Fix Memory Copy Without Pointer Support AR: BugFix to Memory Copy Without Pointer Glenn Rice (2): Update translation files to reflect recent changes in the code. Ensure (Get|Set)ColumnWidth is not called on a non existant column. Ilia Mirkin (2): VideoCommon: fix variable types fed to Write() function VideoCommon: teach gcc to type-check the arguments fed to Write() Jonathan Dieter (2): Avoid deadlock when adding Wiimotes Avoid deadlock when adding Wiimotes (attempt #2) Karol Herbst (2): SDL: more global memset EGL: specify version first Kristian Buchman (2): Renamed all Core/DPS/Dsp* files to Core/DSP/DSP* Updated the Cmake and VCX project files Mathieu Comandon (2): Implement relocatable builds on Linux Make LINUX_LOCAL_DEV a CMake option Matthew Brennan Jones (2): Fixed issue with DSP Dump not closing files. Changed lingering header include guards to pragma once. MikeRavenelle (2): Auto iterate through configuration inputs Checkbox for iteration Mullin (2): Fix signed/unsigned stores Use clock_gettime instead of gettimeofday, it's more effiency on low power OatmealDome (2): CoreAudioSound: Only include AudioUnit CoreAudioSound: Replace deprecated parameters The kAudioUnitParameterFlag_ Patrick A. Ferry (2): Fix stretching with Virtual XFB in D3D Scale the offset to the IR scale RolandMunsil (2): Fix "bad wxCheckListBox index" warning when trying to create AR Code Update ISOProperties.cpp Trace Bullet (2): DiscIO: Check if m_Disc is null in ParsePartitionData() DiscIO: Check if m_Disc is null in ParsePartitionData() YL (2): Add Global Brawl Netplay Settings Update cheats for GALE01r2.ini Yuri Kunde Schlesner (2): Common: Fix mask generation in BitField Common: Remove redundant masking in BitField galop1n (2): Fix an invalid foreach loop over an unordered_map with deletion in WiiSock D3D: Depth range inversion. jefflongo (2): Update NetPlayServer.cpp Update GALE01r2.ini yerejm (2): Reset faked CPU extension support at test end to ensure test isolation. Reinstate format string. Aestek (1): Fix: segfault in NetPlayServer::GetInterfaceListInternal for ifa_addr-less Andrew Tolvstad (1): Correct Linux uninstall instructions Andrew Wickham (1): Make cast from int to float explicit in shader Anti-Ultimate (1): Fix OpenGL VSync Bartosz Kaszubowski (1): minor General Config GUI improvements Bartosz Telesiński (1): VideoCommon: Allow more Ram for HiresTexture if system memory is over 4GB Blackbird88 (1): Spelling mistake Bracket- (1): DSPSpy: Fix build failures Brian Bowman (1): Fix typo in anti-aliasing dropdown description Catarax (1): Tony Hawk's American Wasteland (European Version) Crash Fix Chris Ballinger (1): Fix OpenGL linker error on OS X Danbsky (1): Gameini: Add ZTP Hyrule Field Speed Hack to GC NTSC-J version Daniel Stuart Baxter (1): Properly disable or enable Configure buttons for GC controllers Darius Goad (1): Add various loads and stores to JitIL Dmitry Marakasov (1): Place bundled SFML include paths before others Dominic Chen (1): Fix some compilation warnings ExtremeDude2 (1): Rename "JITIL experimental recompiler" Felk (1): fixed disabling auto reporting for emulated wiimotes not working properly Fredrik Ehnbom (1): PPCAnalyst now detects internal branches better Ganael Laplanche (1): Add missing header for sprintf() Guilherme Espada (1): Fix building on mac without a c/c++ compiler set. Ingve Skåra (1): Fix dead link Jack Frost (1): fix windows build Jeremy Newton (1): Move linux files to Data John Chadwick (1): Increase AsmCommon code space to fix crashes on Linux systems. John Peterson (1): Fix the input zone drawing in input settings KScorp (1): Fixed depth matrix shaders in OpenGL and Direct3D to be more precise. Fixe Kim Johnsson (1): StartupHandler.java: Finish main activity if AutoStartFile is specified in LAGonauta (1): Added X-Fi check and convert surround FLOAT to SHORT when it is detected F Leandro Pereira (1): Jit64: Use variadic templates for RegCache locking Léo Lam (1): GameINI: Force EFB to RAM for OoT Master Quest (D43) MaJoR1 (1): Clean Theme R2 Changelog MaJoRoesch (1): Adding new flag icons. MarioManTAW (1): Added recommended settings Marisa Kirisame (1): miniupnpc API version 14 changed the upnpDiscover functions, adding an arg Maxime Gauduin (1): Include the FindX11 module Moshe Kaplan (1): Prevent potential buffer overflow in sscanf Nick Tiberi (1): normalize and check upper/lower bounds of hats input on OS X Pal Lockheart (1): fix El Capitan WiimoteReal pairing problem and refresh crash problem Papermanzero (1): Update WiimoteEmu.cpp RGamma (1): Fix TASInput Crash When Stick Bitmap Is Null Raziel23x (1): Updated and added new Action replay Codes Rukario (1): Updated terms in Netplay window. Shane Nelson (1): Audio: new dsp_coef.bin with windowed sinc filter coefficients Silvan Jegen (1): AVIDump: coded_frame is deprecated SlEePlEs5 (1): Added BBA TAP backend for OS X. Spanti Nicola (RyDroid) (1): Minor improvement of the desktop file Streetwalrus Einstein (1): DSPSpy: support dumping to SD Gecko in slot B on GameCube Summate (1): Piping the wxMsgAlert through netplay window during netplay instead of run Sylvain Gadrat (1): Fix timing of AVI files dumped on Linux Tanis (1): In hope of speeding up ```IsCPUThread()``` got rid of id checking and inst TheCow (1): D3D11: Set proper border color for Real XFB YUY2 texture. Fixes issue 6483 Tijmen Wildervanck (1): add shaders for anaglyph Amber-Blue and Green-Magenta Zakk (1): Implement SwapInterval for AGL interface aerisarn (1): MainNoGUI: support real Wiimotes aroulin (1): x64Emitter: add RCPPS and RCPSS SSE instructions blendmaster345 (1): Relabel hotkey option for toggle frame limit to better reflect function catzilla4 (1): Added some headers to allow Dolphin to compile in my environment. degasus (1): Fifo: Replace busy loop with condition variable dibas (1): Show the cursor in os x fullscreen by default. Fixes issue 8376. fkane (1): Make expansion interface interrupt updates thread-safe (fixes loss of audi greyrogue (1): Add save commands for SRAM/FRAM. Improve EEPROM. hthh (1): JIT: Reuse trampolines when possible jake8 (1): Added hotkey for toggling the crop setting jimbo1qaz (1): Fix D3D Real XFB texture sampling. joewestcott (1): Reverts pull request #2362, fixes issue 8542. mirrorbender (1): Changed the aspect ratio settings to account for NTSC/PAL pixel aspect rat orbea (1): mandir added pf packet (1): Fix compilation error of Wayland_Util.h pinumbernumber (1): Add support for the guide button to XInput revel8n (1): - Fix for alignment of 0-length files when volume directory is created fro riking (1): Reword "Boot from DVD Drive" -> "Backup" menu option slx7R4GDZM (1): Fix XFB scaling in D3D unknown (1): Fix code to comply with coding style yourgamesbeover (1): added option for selecting which column are displayed in the game list, ad İsmail Dönmez (1): Fix build with MINIUPNPC_API_VERSION >= 16