From cd2be5a939268631fe38aaef0ddd1210bbfcee77 Mon Sep 17 00:00:00 2001 From: qurious-pixel <62252937+qurious-pixel@users.noreply.github.com> Date: Mon, 8 Feb 2021 19:39:34 -0800 Subject: [PATCH] v1.11 (#1) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * add assets to ubuntu build artifact This enables us to run PPSSPPSDL in the ubuntu artifact zip as normal release. Can be uploaded to the automated ppsspp download pake. After downloading the artiact zip just chmod +x PPSSPPSDL and install libsdl2-dev libgl1-mesa-dev libglu1-mesa-dev. Then everything works fine :) * Add more error checking in SD storage detection See #13827 * Add 3 games to ForceMax60FPS * Add game ID for russian version of Tron Evolution * Prevent access violation when running out of userMemory due to piling up AdhocMatching events. * Send AdhocMatching Data from within HLE whenever possible instead of through matchingEvent Thread. * Reducing AdhocMatching events delay to prevent matchingEvents from piling up on Lord of Arcana. * Try another method for getting SD card storage paths (env vars). See #13827 * Add a fullscreen toggle button to the main screen (Windows-only for now) * Manually tighten up the layout a bit in the top right corner * Use the same logic of game setting for main menu full screen, add other system * Add a file picker (WIP) * Enable using the folder browser on Android to select SD card through a gross hack. Should help #13827 Not yet using storage framework properly, just stealing the URI. * Improve some i18n things - reuse some translations - move some strings to a more suitable category I will adapt the lang .ini files accordingly. * jit: Fix conditional disable flags. * irjit: Correct flags for SetCtrlVFPUReg. Fixes #13897. Caused the reg to be optimized out. * irjit: Fix mtv for INF4. * Windows: Handle fullscreen message consistently. This handles it the same way as SDL, etc. so that the new button on the main screen works again. * http: Prevent Windows header leak from HTTPClient. * UI: Cleanup Windows header in MainScreen.cpp. Better to have this come from System, probably. It's mainly for Windows anyway, to alert people their save data isn't permanent. * FixPGF for Euro Characters.(Balance emphasis) * GPU: Correct shader gen with weights as floats. For now, this supports the option. We should probably just move to everything being floats, but we already prefer software skinning. Fixes #13903. * Fix copy/paste typo causing crash getting tempdirs if an env var had no value * Android: Fix headless and unittest build. * Build: Validate unittest/headless on Android. * Android: Add NEON/SSE funcs into Headless/UnitTest. * irjit: Add disable flag for simplify passes. * irjit: Update clobber flag on inst swap. Fixes IR in Persona 3. * PGF Re-Fixed Euro Characters * Enable BlockTransferAllowCreateFB for Gradius Collection * Update Template * Make sure we don't try to set a negative viewport size. Should help #13921. * VK: Re-apply the old Adreno driver bug workaround. Fixes #13910. Should likely fix issue #13923 too. * Fix Stuck issue on some games (Dissidia 012, Full Auto 2, etc) when Failed to connect to Adhoc Server (faked success) * Module: Reverse a single HI16/LO16 pair correctly. If there is only one imported variable as a HI16/LO16, unloading the module wasn't properly reversing the link. See #13104. * Module: Keep HI16/LO16 in a temp state object. This doesn't need to live any longer than the link or unlink, so let's just make that abundantly clear. * Remove re-test each month * Compat: Note that Gradius requires block transfer. Of course, there are many more that do, but might as well add since we're tracking it here. * Headless: Allow connecting the web debugger. * Module: Keep the state for each import. On exports, we iterate modules then imports. But on imports, we iterate the exports to find the module, so we need to keep the state around higher up. * SoftGPU: Fix sprite provoking vertex in fast path. It was right everywhere else. * Vulkan: Delete only created swapchain images. We do other null checks here, same reason. Create may have failed. * There's little reason to build at O3, so let's just not. Changing to O2. See #13920 for a breakage report. * CMake fixes and new --ios-xcode ./b.sh command. Also enables stencil for the iOS backbuffer. Fixes the GPU test and will doubtlessly fix problems with running non-buffered (which you shouldn't do anyway though). Slim alternative to #13766 with less risk to buildbots. * Adds two new tests to GPU driver test screen: Adreno shader logic test and flat shading The adreno test tests for the bug mentioned in #13910. Very clear repro on Adreno 630, Pocophone F1. The flat shading test is an untested attempt at a repro of (will test that tomomorrow). * Add texture to flat shaded test. * Compat: Note that 3 LEGO games those are require Buffered rendering * More GPU test improvements * Fix the flat test. Unfortunately doesn't repro the bug :( * GL FB readback: Only use "inout" if we actually want to read from the fb. * Headless: Allow screenshot compare without backend. This makes not just graphics-enabled tests work in headless on softgpu, but also screenshot comparison ones. * Headless: Read expected file as a FileLoader. This makes it possible to run tests from network locations. * Headless: Allow PNGs and http:// for screenshot. * Headless: Disable http disk cache. * Headless: Simplify executing a ppdmp via headless. * Headless: Default to PNG for ppdmp tests. * GPU: Fix safe size checks when rect offscreen. * Vulkan: Prevent scaling shader leak. No need to recreate if they haven't changed. * Compat: Enable reinterpret for Kingdom Hearts. See #11223. Should enable it for everything at some point. * Debugger: Add API to trigger buttons. * Debugger: Broadcast ctrl input events. This can be useful to trigger debugging functionality on button press. * Debugger: Include all press states for convenience. In case of a multi-button shortcut, which might be common for debugging. * Kernel: Adjust sceKernelGetThreadExitStatus timing. See #13703. * PGF Fixed Bold & Italic property and camouflage the Font name. * Oops! I misstook uploading jpn0.pgf. * Resample all mp3 Fix #5213 * Fix Russian (Cyrillic alphabet) on jpn0.pgf. * Some marks position fixed on jpn0.pgf * build fix * PPGe: Scale down by worst of window/internal res. See #13958. * compat.ini: Add Split/Second to [ReinterpretFramebuffers]. See #13957 * Plugins: Enable by default. * Resample only in 32000Hz * Fix Greek characters & Roman numbers & all balance on jpn0.pgf * Do PtpConnect internally during PtpOpen, since some games (ie. The Warriors) seems to do PtpSend immediately after PtpOpen without trying to PtpConnect first. * Fix returned error code on PtpSend and PtpRecv when socket is not connected yet. * OpenGL fragment shader gen: Fix precision inconsistency for v_color0/1. Probably won't fix anything, just want this in for, well, consistency. Noticed it debugging the iOS flat shading issues, but doesn't fix that. * Fix duplicate shader version in the flat shader test Unbreaks the flat shading test on Adreno (ended up in trying to link a #version 300 and a #version 320 shader together which it didn't like) * Io: Don't allow async close while async busy. See #6582. * GE: Better naming of render passes for color reinterpret * GPU: Respect stencil write mask for 5551 buffers. If the mask is 0x7F on 5551, that's equivalent to allowing the clear entirely. See #13391. * D3D9: Don't allow separate alpha clears. Doesn't seem like the color mask applies to clears. * Reporting: Expose CRC queue methods for other uses. This way UI can expose the CRC if needed. * Don't allow ForcedFirstConnect hack when using PtpConnect within PtpOpen to prevent returning result from blocking PtpConnect instead of result of PtpOpen. * sceMp3Init:Add layerBits and versionBits information * Add header information * GLES: Remove direct khrplatform.h header include. Shouldn't be needed anymore, was a hack for Nokia. See #13978. * Mp3: Correct error handling for newer sdk versions. The 6.xx behavior might be important if a game relies on it to add data. * Mp3: Allow decode without pcm pointer. Just like other audio decoding, you're allowed to skip audio. Also prevents a crash if the mp3 is not yet inited. * Add back XCode TARGETED_DEVICE_FAMILY config line xcode warns that the value is deprecated or something, but maybe it still does something. Appears iPad support is broken right now. * Mp3: Always keep sample rate from original mp3. Our codec context is updated with the source sample rate, so this makes us not resample at all. Converting to stereo still seems correct. * Updated GameMode initial data sync, in case remote players aren't listening yet when sending initial data (fix Pocket Pool) * Mp3: Correct logging for init. * Remove duplicates from ThreadManForKernel * Vulkan: Add MMPX upscaling texture shader. See https://casual-effects.com/research/McGuire2021PixelArt/index.html * Vulkan: Allow tex shaders to specify a max scale. * Specify MaxScale=2 for the new MMPX texture scaling shader * Fix Greek characters ltn0~7.pgf * gitlab ci change requested by m4xw * FindFFmpeg: Fix a few issues 1. postproc now looks for postprocess.h (there is no postproc.h header). 2. pkg-config fallback condition now works (find_path/library set the variable to ${var}-NOTFOUND but it was checking for an empty string). * (.gitlab-ci.yml) Add windows-x64 target * Mpeg:Only allow firmware >= 3 for warmup Fix #13996 * Try to build fix on non-windows * CMake: Add USE_UBSAN * CMake: Rename USE_ADDRESS_SANITIZER to USE_ASAN For consistency with USE_UBSAN * CMake: Fix UBSAN link error * Fix Russian characters ltn8~15.pgf * Fix alignment issues in ISOFileSystem Fixes #14002 * jit: Make branch shift more obvious. And also not technically undefined behavior. * Fix connection issue on Dynasty Warriors (Shin Sangoku Musou) games when playing with more than 2 players. * Minimize the Adreno shader compiler bug repro test * Fix left shift of negative value in MIPSCodeUtils Fixes a benign UBSAN error to improve the signal-to-noise ratio of UBSAN errors. Fixes #14015 * x64Emitter: Fix unaligned store UBSAN errors This compiles to the same assembly as before even without optimizations and avoids UB. https://godbolt.org/z/4G5edM While the UB here is benign, this improves signal-to-noise ratio of UBSAN errors. Fixes #14005 * Fix logging flags 1. The logging flags were being ignored (-v, -d) 2. Adds a `--loglevel` argument. Useful when using the debug build for ASAN/UBSAN to hide extremely noisy debug messages. * Attempt to fix #14022 * Fix Apple gpu detection * Core: Correct branch analysis truncation. * jit: Be very clear on sign extension. * Only force the log level if it set via an argv Follow-up to #14019 * Io: Consistently use LE values of ISO entries. Better to be consistent across big endian and little endian, in case something was mastered wrong. * Vulkan: Fix image layout issues after compute shader uploads. We're already in GENERAL so probably not worth to transfer to DST just to do even more transfers due to the silliness of GenerateMip. I'm planning to rework the whole texture upload thing to be far more optimal with some kind of TextureUploadManager Fixes #13987 * Mpeg:Only allow firmware >= 6 for warmup Fix blue screen in #13146 * Ge: Improve some logging and memchecks. Explicitly trigger memchecks on readback. * Ge: Restore saved context when ending a list. Otherwise another list queued by a Head push could use the wrong context data. See #13346. * Framedump test screen. Downloads a list of framedumps. * Add a new command in developer tools to list and load framedumps from framedump.ppsspp.org/repro/ Useful to make it easy to test GPU driver bugs etc, without having to use real games or copying files around. * Add checkbox to enable/disable driver bug workarounds. * Fix minor rendering glitch in PPSSPP's menus on iOS * Have the flat shading workaround obey the driver workarounds checkbox * Loaders: Prevent errors on 0 byte reads. Was happening when opening an http:// GE frame dump. * Core: Maintain frame dump disc ID in SFO. This way we won't generate a fake one later and use it for anything else. * vertexjit: Correct saved registers on x64. * Core: Assert debug stats remain positive. * vertexjit: Only save extra regs on x64. * Updated PdpStat and PtpStat * Update README.md for 1.11 * Address initial feedback by iota97 * List fixed games. Thanks sum2012 * More from unknown and sum2012 * More stuff in README.md * (.gitlab-ci.yml) Add linux-i686 and windows-i686 targets (+ prevent creation of 'null' file when building Windows libretro cores) * Fix possible lock issue during AdhocMatchingStart * Updated PdpStat to prevent rcv_sb_cc from exceeding the buffer size arg (since we use larger buffer size to prevent micro stutters or disconnection issue due to too many dropped packets with small buffer size). TODO: May need to improve it to be able to calculate the correct size if there are multiple datagram messages * UI: Correct developer tools test run. * Make a couple of UI animations refresh rate independent * Core: Reset state properly on CPU init failure. * Windows: Prevent crash on null symbol map. Happened during a double error scenario, but might as well check. * We don't really need to allocate a buffer when using MSG_TRUNC on recvfrom * Minor renaming * Moving hleDelayResult from internal function of SetSocketAlert to prevent waking up HLE-blocked thread * Fix possible race condition issue. * Fix jpn0.pgf characters position. * Debugger: Populate funcs if disassembly open early. * PPGe: Fallback to atlas text on alloc fail. * PPGe: Clear text allocations on shutdown. * Updated some Logs to help finding the location of the call to debug. * Removing hleDelayResult from internal adhoc functions to prevent waking up thread that supposed to be blocked by the outer HLE. * Run the link script * Run the link script, fixups * Update lang,pspautotests submodules * Do the title screen animation by accumulator instead, to avoid a long first frame breaking it. * Update version to 1.11 * PPGe: Decimate text images properly. Co-authored-by: kaiomatico Co-authored-by: Henrik RydgĂ„rd Co-authored-by: Panderner <37503397+Panderner@users.noreply.github.com> Co-authored-by: ANR2ME Co-authored-by: iota97 Co-authored-by: vnctdj <3978690+vnctdj@users.noreply.github.com> Co-authored-by: Unknown W. Brackets Co-authored-by: nassau-tk Co-authored-by: sum2012 Co-authored-by: AdamN Co-authored-by: Florin9doi Co-authored-by: Gleb Mazovetskiy Co-authored-by: jdgleaver --- .editorconfig | 2 +- .github/ISSUE_TEMPLATE | 4 +- .github/workflows/build.yml | 279 +++++++ .gitignore | 3 - .gitlab-ci.yml | 33 +- .travis.sh | 142 ---- .travis.yml | 117 --- CMakeLists.txt | 127 ++- Common/Arm64Emitter.cpp | 11 +- Common/ArmCPUDetect.cpp | 24 +- Common/Buffer.cpp | 6 +- Common/CPUDetect.cpp | 12 +- Common/CodeBlock.h | 3 + Common/Data/Encoding/Base64.cpp | 48 +- Common/Data/Encoding/Base64.h | 3 + Common/Data/Format/PNGLoad.cpp | 7 +- Common/File/PathBrowser.cpp | 69 +- Common/File/PathBrowser.h | 17 +- Common/GPU/D3D11/thin3d_d3d11.cpp | 60 +- Common/GPU/D3D9/D3D9StateCache.cpp | 9 - Common/GPU/D3D9/thin3d_d3d9.cpp | 7 +- Common/GPU/OpenGL/GLCommon.h | 3 - Common/GPU/OpenGL/GLFeatures.cpp | 67 +- Common/GPU/OpenGL/GLFeatures.h | 3 + Common/GPU/OpenGL/GLQueueRunner.cpp | 6 +- Common/GPU/OpenGL/thin3d_gl.cpp | 89 +-- Common/GPU/Shader.cpp | 22 + Common/GPU/Shader.h | 6 + Common/GPU/ShaderTranslation.cpp | 51 +- Common/GPU/ShaderTranslation.h | 2 +- Common/GPU/ShaderWriter.cpp | 38 +- Common/GPU/ShaderWriter.h | 5 + Common/GPU/Vulkan/VulkanDebug.cpp | 5 + Common/GPU/Vulkan/VulkanImage.cpp | 15 +- Common/GPU/Vulkan/VulkanImage.h | 2 +- Common/GPU/Vulkan/VulkanLoader.cpp | 6 +- Common/GPU/Vulkan/VulkanQueueRunner.cpp | 24 +- Common/GPU/Vulkan/VulkanRenderManager.cpp | 34 +- Common/GPU/Vulkan/thin3d_vulkan.cpp | 14 +- Common/GPU/thin3d.h | 3 + Common/LogManager.cpp | 8 +- Common/LogManager.h | 1 + Common/Math/expression_parser.cpp | 10 +- Common/MemArenaPosix.cpp | 9 +- Common/MemoryUtil.cpp | 2 + Common/MipsCPUDetect.cpp | 11 +- Common/Net/HTTPClient.cpp | 24 +- Common/Net/HTTPClient.h | 13 - Common/Net/HTTPHeaders.cpp | 10 +- Common/Net/HTTPServer.cpp | 16 +- Common/Net/Sinks.cpp | 24 +- Common/Net/Sinks.h | 1 + Common/Net/URL.cpp | 2 +- Common/Render/DrawBuffer.cpp | 26 + Common/Render/DrawBuffer.h | 4 + Common/System/System.h | 8 + Common/UI/Context.cpp | 7 +- Common/UI/Context.h | 1 + Common/UI/View.cpp | 12 +- Common/UI/View.h | 3 + Common/UI/ViewGroup.cpp | 6 +- Common/UI/ViewGroup.h | 5 +- Common/x64Analyzer.cpp | 7 +- Common/x64Emitter.cpp | 3 +- Common/x64Emitter.h | 7 +- Core/Compatibility.cpp | 4 + Core/Compatibility.h | 4 + Core/Config.cpp | 13 +- Core/Config.h | 2 + Core/Core.vcxproj | 4 + Core/Core.vcxproj.filters | 12 + Core/CoreParameter.h | 1 - Core/Debugger/WebSocket.cpp | 8 +- Core/Debugger/WebSocket/DisasmSubscriber.cpp | 2 +- Core/Debugger/WebSocket/InputBroadcaster.cpp | 102 +++ Core/Debugger/WebSocket/InputBroadcaster.h | 48 ++ Core/Debugger/WebSocket/InputSubscriber.cpp | 261 +++++++ Core/Debugger/WebSocket/InputSubscriber.h | 25 + Core/Debugger/WebSocket/MemorySubscriber.cpp | 156 +++- Core/Debugger/WebSocket/MemorySubscriber.h | 3 + Core/Dialog/PSPDialog.cpp | 6 + Core/Dialog/PSPDialog.h | 1 + Core/Dialog/PSPMsgDialog.cpp | 12 +- Core/Dialog/PSPNetconfDialog.cpp | 7 +- Core/Dialog/PSPSaveDialog.cpp | 19 +- Core/Dialog/SavedataParam.cpp | 109 ++- Core/Dialog/SavedataParam.h | 1 + Core/ELF/ParamSFO.h | 6 +- Core/FileLoaders/DiskCachingFileLoader.cpp | 7 + Core/FileLoaders/LocalFileLoader.cpp | 3 + Core/FileSystems/FileSystem.h | 1 + Core/FileSystems/ISOFileSystem.cpp | 101 +-- Core/Font/PGF.cpp | 6 +- Core/HLE/HLE.cpp | 1 + Core/HLE/HLETables.cpp | 1 + Core/HLE/proAdhoc.cpp | 94 ++- Core/HLE/proAdhoc.h | 22 +- Core/HLE/sceAudio.cpp | 31 +- Core/HLE/sceGe.cpp | 7 +- Core/HLE/sceIo.cpp | 22 +- Core/HLE/sceKernel.cpp | 22 +- Core/HLE/sceKernelModule.cpp | 97 ++- Core/HLE/sceKernelThread.cpp | 33 +- Core/HLE/sceKernelThread.h | 1 + Core/HLE/sceMp3.cpp | 63 +- Core/HLE/sceMpeg.cpp | 131 ++-- Core/HLE/sceNet.cpp | 2 +- Core/HLE/sceNetAdhoc.cpp | 187 +++-- Core/HLE/sceOpenPSID.cpp | 71 +- Core/HLE/sceOpenPSID.h | 13 +- Core/HLE/scePsmf.cpp | 37 +- Core/HLE/sceUsbCam.cpp | 24 +- Core/HLE/sceUsbMic.cpp | 245 +++--- Core/HLE/sceUsbMic.h | 22 +- Core/HLE/sceUtility.cpp | 58 +- Core/HW/MediaEngine.cpp | 55 +- Core/HW/MediaEngine.h | 2 + Core/HW/MemoryStick.cpp | 4 + Core/HW/MpegDemux.cpp | 1 + Core/HW/SimpleAudioDec.cpp | 8 +- Core/Instance.cpp | 2 +- Core/KeyMap.cpp | 2 +- Core/Loaders.cpp | 10 +- Core/MIPS/ARM/ArmCompALU.cpp | 2 +- Core/MIPS/ARM/ArmCompBranch.cpp | 12 +- Core/MIPS/ARM/ArmCompFPU.cpp | 2 +- Core/MIPS/ARM/ArmCompLoadStore.cpp | 2 +- Core/MIPS/ARM64/Arm64CompBranch.cpp | 12 +- Core/MIPS/IR/IRCompALU.cpp | 2 +- Core/MIPS/IR/IRCompBranch.cpp | 12 +- Core/MIPS/IR/IRCompFPU.cpp | 2 +- Core/MIPS/IR/IRCompLoadStore.cpp | 2 +- Core/MIPS/IR/IRCompVFPU.cpp | 4 +- Core/MIPS/IR/IRInst.cpp | 4 +- Core/MIPS/IR/IRPassSimplify.cpp | 20 + Core/MIPS/MIPSCodeUtils.cpp | 69 +- Core/MIPS/MIPSVFPUUtils.cpp | 83 ++ Core/MIPS/MIPSVFPUUtils.h | 38 +- Core/MIPS/x86/CompBranch.cpp | 12 +- Core/MIPS/x86/CompFPU.cpp | 2 +- Core/MIPS/x86/CompLoadStore.cpp | 2 +- Core/MemFault.cpp | 32 +- Core/MemFault.h | 8 + Core/MemMap.h | 2 +- Core/PSPLoaders.cpp | 2 +- Core/Reporting.cpp | 17 +- Core/Reporting.h | 7 + Core/SaveState.cpp | 6 +- Core/System.cpp | 32 +- Core/System.h | 3 +- Core/Util/GameManager.cpp | 3 + Core/Util/PPGeDraw.cpp | 70 +- Core/Util/PPGeDraw.h | 21 +- Core/WebServer.cpp | 21 +- GPU/Common/FragmentShaderGenerator.cpp | 88 ++- GPU/Common/FragmentShaderGenerator.h | 3 +- GPU/Common/FramebufferManagerCommon.cpp | 133 ++-- GPU/Common/FramebufferManagerCommon.h | 16 +- GPU/Common/GPUStateUtils.cpp | 34 +- GPU/Common/PostShader.cpp | 1 + GPU/Common/PostShader.h | 1 + GPU/Common/PresentationCommon.cpp | 16 +- GPU/Common/ReinterpretFramebuffer.cpp | 4 +- GPU/Common/ShaderId.cpp | 14 +- GPU/Common/ShaderId.h | 4 +- GPU/Common/ShaderUniforms.cpp | 2 +- GPU/Common/ShaderUniforms.h | 2 +- GPU/Common/SoftwareTransformCommon.cpp | 4 +- GPU/Common/TextureCacheCommon.cpp | 13 +- GPU/Common/VertexDecoderCommon.cpp | 10 +- GPU/Common/VertexDecoderX86.cpp | 26 +- GPU/Common/VertexShaderGenerator.cpp | 32 +- GPU/Common/VertexShaderGenerator.h | 3 +- GPU/D3D11/DrawEngineD3D11.cpp | 6 +- GPU/D3D11/FramebufferManagerD3D11.cpp | 13 +- GPU/D3D11/FramebufferManagerD3D11.h | 4 +- GPU/D3D11/GPU_D3D11.cpp | 5 +- GPU/D3D11/ShaderManagerD3D11.cpp | 8 +- GPU/D3D11/ShaderManagerD3D11.h | 2 +- GPU/D3D11/StateMappingD3D11.cpp | 10 +- GPU/D3D11/TextureCacheD3D11.cpp | 6 +- GPU/D3D11/TextureCacheD3D11.h | 2 +- GPU/Directx9/DrawEngineDX9.cpp | 9 +- GPU/Directx9/FramebufferManagerDX9.cpp | 15 +- GPU/Directx9/FramebufferManagerDX9.h | 4 +- GPU/Directx9/GPU_DX9.cpp | 4 +- GPU/Directx9/ShaderManagerDX9.cpp | 14 +- GPU/Directx9/ShaderManagerDX9.h | 2 +- GPU/Directx9/StateMappingDX9.cpp | 8 +- GPU/Directx9/TextureCacheDX9.h | 2 +- GPU/GLES/DrawEngineGLES.cpp | 4 +- GPU/GLES/FramebufferManagerGLES.cpp | 10 +- GPU/GLES/FramebufferManagerGLES.h | 2 +- GPU/GLES/GPU_GLES.cpp | 7 +- GPU/GLES/ShaderManagerGLES.cpp | 14 +- GPU/GLES/ShaderManagerGLES.h | 2 +- GPU/GLES/StateMappingGLES.cpp | 7 +- GPU/GLES/StencilBufferGLES.cpp | 1 + GPU/GLES/TextureCacheGLES.cpp | 5 +- GPU/GLES/TextureCacheGLES.h | 2 +- GPU/GPU.cpp | 15 +- GPU/GPU.vcxproj | 2 - GPU/GPU.vcxproj.filters | 9 - GPU/GPUCommon.cpp | 43 +- GPU/GPUState.h | 18 +- GPU/Null/NullGpu.cpp | 730 ------------------ GPU/Null/NullGpu.h | 61 -- GPU/Software/RasterizerRectangle.cpp | 18 +- GPU/Software/Sampler.cpp | 8 +- GPU/Software/SoftGpu.cpp | 67 +- GPU/Vulkan/DrawEngineVulkan.cpp | 13 +- GPU/Vulkan/FramebufferManagerVulkan.cpp | 18 +- GPU/Vulkan/FramebufferManagerVulkan.h | 5 +- GPU/Vulkan/GPU_Vulkan.cpp | 5 +- GPU/Vulkan/ShaderManagerVulkan.cpp | 12 +- GPU/Vulkan/ShaderManagerVulkan.h | 2 +- GPU/Vulkan/StateMappingVulkan.cpp | 8 +- GPU/Vulkan/TextureCacheVulkan.cpp | 12 +- GPU/Vulkan/TextureCacheVulkan.h | 3 +- MoltenVK/iOS/Frameworks/libMoltenVK.dylib | Bin 0 -> 24467264 bytes MoltenVK/macOS/Frameworks/libMoltenVK.dylib | Bin 0 -> 6714496 bytes ...vulkan-1.2.154.0-macos-license-summary.txt | 535 +++++++++++++ Qt/QtMain.cpp | 26 +- README.md | 279 ++++--- SDL/SDLMain.cpp | 18 + UI/CwCheatScreen.cpp | 6 +- UI/DevScreens.cpp | 106 ++- UI/DevScreens.h | 17 + UI/DisplayLayoutScreen.cpp | 2 +- UI/EmuScreen.cpp | 105 ++- UI/EmuScreen.h | 8 +- UI/GPUDriverTestScreen.cpp | 330 +++++++- UI/GPUDriverTestScreen.h | 19 +- UI/GameSettingsScreen.cpp | 49 +- UI/GameSettingsScreen.h | 2 + UI/GamepadEmu.cpp | 4 + UI/InstallZipScreen.cpp | 8 +- UI/MainScreen.cpp | 202 +++-- UI/MainScreen.h | 7 + UI/MiscScreens.cpp | 34 +- UI/MiscScreens.h | 7 +- UI/NativeApp.cpp | 48 +- UI/SavedataScreen.cpp | 20 +- UI/UI.vcxproj.filters | 10 +- UWP/App.cpp | 19 +- UWP/CoreUWP/CoreUWP.vcxproj | 4 + UWP/CoreUWP/CoreUWP.vcxproj.filters | 12 + UWP/PPSSPP_UWPMain.cpp | 40 +- UWP/StorageFileLoader.cpp | 96 +-- UWP/XAudioSoundStream.cpp | 259 +++---- Windows/CaptureDevice.cpp | 40 +- Windows/CaptureDevice.h | 8 +- Windows/Debugger/Debugger_Disasm.cpp | 10 +- Windows/DinputDevice.cpp | 31 +- Windows/DinputDevice.h | 12 +- Windows/GPU/D3D11Context.cpp | 21 +- Windows/MainWindow.cpp | 6 + Windows/MainWindow.h | 1 + Windows/PPSSPP.sln | 21 +- Windows/WindowsHost.cpp | 11 +- Windows/main.cpp | 32 +- android/AndroidManifest.xml | 4 +- android/android-ndk-profiler/Android.mk | 15 - android/android-ndk-profiler/COPYING | 674 ---------------- android/android-ndk-profiler/README.mkd | 5 - .../armeabi-v7a/libandroid-ndk-profiler.a | Bin 38806 -> 0 bytes .../armeabi/libandroid-ndk-profiler.a | Bin 38106 -> 0 bytes android/android-ndk-profiler/prof.h | 22 - android/assets/ui_atlas.meta | Bin 1087712 -> 1087936 bytes android/assets/ui_atlas.zim | Bin 1677878 -> 1684105 bytes android/jni/Android.mk | 26 +- android/jni/Locals.mk | 6 - android/jni/OpenSLContext.cpp | 4 +- android/jni/TestRunner.cpp | 8 +- android/jni/app-android.cpp | 50 +- android/res/values-v21/styles.xml | 2 +- android/res/values-v28/styles.xml | 2 +- .../src/org/ppsspp/ppsspp/NativeActivity.java | 181 ++++- android/src/org/ppsspp/ppsspp/NativeApp.java | 2 +- assets/compat.ini | 256 +++++- assets/flash0/font/jpn0.pgf | Bin 1307436 -> 4094900 bytes assets/flash0/font/kr0.pgf | Bin 883164 -> 1641624 bytes assets/flash0/font/ltn0.pgf | Bin 67660 -> 37968 bytes assets/flash0/font/ltn1.pgf | Bin 63504 -> 38124 bytes assets/flash0/font/ltn10.pgf | Bin 55788 -> 31316 bytes assets/flash0/font/ltn11.pgf | Bin 54572 -> 29072 bytes assets/flash0/font/ltn12.pgf | Bin 58352 -> 29756 bytes assets/flash0/font/ltn13.pgf | Bin 57660 -> 29072 bytes assets/flash0/font/ltn14.pgf | Bin 63388 -> 31516 bytes assets/flash0/font/ltn15.pgf | Bin 62364 -> 30232 bytes assets/flash0/font/ltn2.pgf | Bin 76692 -> 40860 bytes assets/flash0/font/ltn3.pgf | Bin 71900 -> 40760 bytes assets/flash0/font/ltn4.pgf | Bin 78920 -> 39272 bytes assets/flash0/font/ltn5.pgf | Bin 76216 -> 39236 bytes assets/flash0/font/ltn6.pgf | Bin 88716 -> 41892 bytes assets/flash0/font/ltn7.pgf | Bin 84860 -> 41696 bytes assets/flash0/font/ltn8.pgf | Bin 51432 -> 29976 bytes assets/flash0/font/ltn9.pgf | Bin 50116 -> 27664 bytes assets/gamecontrollerdb.txt | 2 + assets/lang | 2 +- assets/shaders/defaultshaders.ini | 11 + assets/shaders/psp_color.fsh | 2 +- assets/shaders/psp_color.ini | 6 - assets/shaders/psp_color.vsh | 23 - assets/shaders/tex_mmpx.csh | 117 +++ assets/ui_atlas.meta | Bin 1087712 -> 1087936 bytes assets/ui_atlas.zim | Bin 1677878 -> 1684105 bytes atlasscript.txt | 4 + b.sh | 5 +- cmake/Modules/FindFFmpeg.cmake | 17 +- .../{FindLibZip.cmake => FindLIBZIP.cmake} | 1 - cmake/{Modules => sdl}/FindSDL2.cmake | 0 ext/miniupnpc.vcxproj | 93 +++ ffmpeg | 2 +- headless/Compare.cpp | 175 +++-- headless/Compare.h | 5 +- headless/Headless.cpp | 89 +-- headless/Headless.vcxproj | 16 +- headless/StubHost.cpp | 32 +- headless/WindowsHeadlessHost.cpp | 1 - history.md | 82 +- ios/ViewController.mm | 33 + ios/main.mm | 8 + libretro/LibretroGLContext.cpp | 30 +- libretro/LibretroGraphicsContext.cpp | 11 +- libretro/LibretroGraphicsContext.h | 14 +- libretro/Makefile | 4 +- libretro/Makefile.common | 4 +- libretro/README_WINDOWS.txt | 2 +- libretro/libretro.cpp | 5 + link_readme.py | 24 +- ppsspp.desktop.in | 7 + pspautotests | 2 +- source_assets/image/buttons.svg | 308 ++++++-- source_assets/image/fullscreen.png | Bin 0 -> 710 bytes source_assets/image/home.png | Bin 0 -> 1006 bytes source_assets/image/restore.png | Bin 0 -> 667 bytes source_assets/image/sdcard.png | Bin 0 -> 1683 bytes source_assets/image/umd256.png | Bin 88696 -> 0 bytes source_assets/image/umd48.png | Bin 5378 -> 0 bytes test.py | 13 +- unittest/TestShaderGenerators.cpp | 41 +- unittest/UnitTest.cpp | 12 +- 343 files changed, 6677 insertions(+), 4167 deletions(-) create mode 100644 .github/workflows/build.yml delete mode 100644 .travis.sh delete mode 100644 .travis.yml create mode 100644 Core/Debugger/WebSocket/InputBroadcaster.cpp create mode 100644 Core/Debugger/WebSocket/InputBroadcaster.h create mode 100644 Core/Debugger/WebSocket/InputSubscriber.cpp create mode 100644 Core/Debugger/WebSocket/InputSubscriber.h delete mode 100644 GPU/Null/NullGpu.cpp delete mode 100644 GPU/Null/NullGpu.h create mode 100755 MoltenVK/iOS/Frameworks/libMoltenVK.dylib create mode 100755 MoltenVK/macOS/Frameworks/libMoltenVK.dylib create mode 100644 MoltenVK/vulkan-1.2.154.0-macos-license-summary.txt delete mode 100644 android/android-ndk-profiler/Android.mk delete mode 100644 android/android-ndk-profiler/COPYING delete mode 100644 android/android-ndk-profiler/README.mkd delete mode 100644 android/android-ndk-profiler/armeabi-v7a/libandroid-ndk-profiler.a delete mode 100644 android/android-ndk-profiler/armeabi/libandroid-ndk-profiler.a delete mode 100644 android/android-ndk-profiler/prof.h delete mode 100644 assets/shaders/psp_color.ini delete mode 100644 assets/shaders/psp_color.vsh create mode 100644 assets/shaders/tex_mmpx.csh rename cmake/Modules/{FindLibZip.cmake => FindLIBZIP.cmake} (99%) rename cmake/{Modules => sdl}/FindSDL2.cmake (100%) create mode 100644 ppsspp.desktop.in create mode 100644 source_assets/image/fullscreen.png create mode 100644 source_assets/image/home.png create mode 100644 source_assets/image/restore.png create mode 100644 source_assets/image/sdcard.png delete mode 100644 source_assets/image/umd256.png delete mode 100644 source_assets/image/umd48.png diff --git a/.editorconfig b/.editorconfig index 332927531ac1..48cd05a99ea9 100644 --- a/.editorconfig +++ b/.editorconfig @@ -8,7 +8,7 @@ insert_final_newline = true # Would be nice, but don't want to change files unnecessarily. #trim_trailing_whitespace = true -[*.py] +[*.{py,yml}] indent_style = space indent_size = 2 diff --git a/.github/ISSUE_TEMPLATE b/.github/ISSUE_TEMPLATE index f4f8d876a6b7..a3083633a54e 100644 --- a/.github/ISSUE_TEMPLATE +++ b/.github/ISSUE_TEMPLATE @@ -9,6 +9,6 @@ You can remove this stuff - just don't forget to answer the questions. They're ### What *should* happen? -### What hardware, operating system, and PPSSPP version? On desktop, GPU matters for graphical issues. - +### What hardware, operating system, and PPSSPP version? On desktop and mobile phone, GPU matters for graphical issues. +### Please test newest version in https://buildbot.orphis.net/ppsspp/ diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 000000000000..b8fddd1a76d6 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,279 @@ +name: Build + +on: + push: + branches: + - master + paths-ignore: + - '*.{txt,md}' + - 'Tools/**' + - '.{editorconfig,gitattributes,gitignore}' + - 'appveyor.yml' + pull_request: + branches: + - master + paths-ignore: + - '*.{txt,md}' + - 'Tools/**' + - '.{editorconfig,gitattributes,gitignore}' + - 'appveyor.yml' + +env: + BUILD_CONFIGURATION: Release + +jobs: + build-windows: + strategy: + fail-fast: false + matrix: + platform: [x64, ARM64] + + runs-on: windows-latest + steps: + - uses: actions/checkout@v2 + with: + submodules: recursive + + - name: Add MSBuild to PATH + uses: microsoft/setup-msbuild@v1 + + - name: Build Windows + working-directory: ${{ env.GITHUB_WORKSPACE }} + run: msbuild /m /p:TrackFileAccess=false /p:Configuration=${{ env.BUILD_CONFIGURATION }} /p:Platform=${{ matrix.platform }} Windows/PPSSPP.sln + + - name: Package build + working-directory: ${{ env.GITHUB_WORKSPACE }} + run: | + mkdir ppsspp + cp PPSSPP*.exe ppsspp/ + cp *.pdb ppsspp/ + cp Windows/*.bat ppsspp/ + cp -r assets ppsspp/assets + + - name: Package headless (non-Win32) + if: matrix.platform != 'Win32' + run: cp Windows/${{ matrix.platform }}/Release/*.exe ppsspp/ + + - name: Package headless (Win32) + if: matrix.platform == 'Win32' + run: cp Windows/Release/*.exe ppsspp/ + + - name: Upload build + uses: actions/upload-artifact@v1 + with: + name: Windows ${{ matrix.platform }} build + path: ppsspp/ + + build-uwp: + runs-on: windows-latest + steps: + - uses: actions/checkout@v2 + with: + submodules: recursive + + - name: Add MSBuild to PATH + uses: microsoft/setup-msbuild@v1 + + - name: Build UWP + working-directory: ${{ env.GITHUB_WORKSPACE }} + run: msbuild /m /p:TrackFileAccess=false /p:Configuration=${{ env.BUILD_CONFIGURATION }} /p:Platform=x64 /p:AppxPackageSigningEnabled=false UWP/PPSSPP_UWP.sln + + test-windows: + runs-on: windows-latest + needs: build-windows + timeout-minutes: 30 + steps: + - uses: actions/checkout@v2 + with: + submodules: false + + - name: Fetch tests + working-directory: ${{ env.GITHUB_WORKSPACE }} + # Doing this to avoid ffmpeg and other large submodules. + run: git submodule update --init pspautotests assets/lang + + - name: Download build + uses: actions/download-artifact@v2 + with: + name: Windows x64 build + path: ppsspp/ + + - name: Execute tests + working-directory: ${{ env.GITHUB_WORKSPACE }} + run: python test.py --graphics=software + + build: + strategy: + fail-fast: false + matrix: + include: + - os: ubuntu-latest + extra: test + cc: clang + cxx: clang++ + args: ./b.sh --headless + - os: ubuntu-latest + cc: gcc + cxx: g++ + args: ./b.sh --headless + + - os: ubuntu-latest + extra: android + cc: clang + cxx: clang++ + args: cd android && ./ab.sh -j2 APP_ABI=arm64-v8a UNITTEST=1 HEADLESS=1 + - os: ubuntu-latest + extra: android + cc: clang + cxx: clang++ + args: cd android && ./ab.sh -j2 APP_ABI=armeabi-v7a UNITTEST=1 HEADLESS=1 + - os: ubuntu-latest + extra: android + cc: clang + cxx: clang++ + args: cd android && ./ab.sh -j2 APP_ABI=x86 UNITTEST=1 HEADLESS=1 + - os: ubuntu-latest + extra: android + cc: clang + cxx: clang++ + args: cd android && ./ab.sh -j2 APP_ABI=x86_64 UNITTEST=1 HEADLESS=1 + - os: ubuntu-latest + extra: android + cc: clang + cxx: clang++ + args: ./b.sh --libretro_android ppsspp_libretro + + - os: ubuntu-latest + extra: qt + cc: gcc + cxx: g++ + args: ./b.sh --qt + - os: ubuntu-latest + extra: libretro + cc: gcc + cxx: g++ + args: ./b.sh --libretro + - os: ubuntu-latest + extra: libretro + cc: clang + cxx: clang++ + args: ./b.sh --libretro + + - os: macos-latest + extra: test + cc: clang + cxx: clang++ + args: ./b.sh --headless + - os: macos-latest + extra: ios + cc: clang + cxx: clang++ + args: ./b.sh --ios + + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v2 + with: + submodules: recursive + + - name: Install Qt + uses: jurplel/install-qt-action@v2 + if: matrix.extra == 'qt' + + - uses: nttld/setup-ndk@v1 + if: matrix.extra == 'android' + id: setup-ndk + with: + ndk-version: r21d + + - name: Install Linux dependencies + if: runner.os == 'Linux' && matrix.extra != 'android' + run: | + sudo add-apt-repository -y "deb http://archive.ubuntu.com/ubuntu `lsb_release -sc` main universe restricted multiverse" + sudo apt-get update -y -qq + sudo apt-get install libsdl2-dev libgl1-mesa-dev libglu1-mesa-dev + + - name: Install macOS dependencies + if: runner.os == 'macOS' && matrix.extra != 'ios' + run: | + brew install sdl2 + + - name: Execute build + env: + CC: ${{ matrix.cc }} + CXX: ${{ matrix.cxx }} + NDK: ${{ steps.setup-ndk.outputs.ndk-path }} + run: ${{ matrix.args }} + + - name: Package build + if: matrix.extra == 'test' + run: | + mkdir ppsspp + if [ -e build*/$BUILD_CONFIGURATION/PPSSPPSDL ]; then + cp build*/$BUILD_CONFIGURATION/PPSSPPSDL ppsspp/ + elif [ -e build*/PPSSPPSDL.app ]; then + cp -r build*/PPSSPPSDL.app ppsspp/ + elif [ -e build*/PPSSPPSDL ]; then + cp build*/PPSSPPSDL ppsspp/ + cp -r assets ppsspp/assets + fi + if [ -e build*/$BUILD_CONFIGURATION/PPSSPPHeadless ]; then + cp build*/$BUILD_CONFIGURATION/PPSSPPHeadless ppsspp/ + elif [ -e build*/PPSSPPHeadless ]; then + cp build*/PPSSPPHeadless ppsspp/ + fi + + - name: Upload build + uses: actions/upload-artifact@v1 + if: matrix.extra == 'test' + with: + name: ${{ matrix.os }} build + path: ppsspp/ + + test: + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest] + + runs-on: ${{ matrix.os }} + needs: build + timeout-minutes: 30 + steps: + - uses: actions/checkout@v2 + with: + submodules: false + + - name: Fetch tests + working-directory: ${{ env.GITHUB_WORKSPACE }} + # Doing this to avoid ffmpeg and other large submodules. + run: git submodule update --init pspautotests assets/lang + + - name: Install Linux dependencies + if: runner.os == 'Linux' + run: | + sudo add-apt-repository -y "deb http://archive.ubuntu.com/ubuntu `lsb_release -sc` main universe restricted multiverse" + sudo apt-get update -y -qq + sudo apt-get install libsdl2-dev libgl1-mesa-dev libglu1-mesa-dev + + - name: Install macOS dependencies + if: runner.os == 'macOS' + run: | + brew install sdl2 + + - name: Download build + uses: actions/download-artifact@v2 + with: + name: ${{ matrix.os }} build + path: ppsspp/ + + # Not sure where it's ending up, but test.py can't find it... + - name: Fix headless permissions + working-directory: ${{ env.GITHUB_WORKSPACE }} + run: | + cp `find . -name PPSSPPHeadless` . + chmod +x PPSSPPHeadless + + - name: Execute tests + working-directory: ${{ env.GITHUB_WORKSPACE }} + run: python test.py --graphics=software diff --git a/.gitignore b/.gitignore index 818e0a459a41..07b897f32866 100644 --- a/.gitignore +++ b/.gitignore @@ -116,6 +116,3 @@ debian/ppsspp/ # RenderDoc *.rdc - -# bad output from libretro. don't want to accidentally add it -nul diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f1af20d66540..981f938ebc9d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,26 +11,49 @@ variables: variables: EXTRA_PATH: lib +.windows-defs: + variables: + MAKEFILE_PATH: libretro + include: - - template: Jobs/Code-Quality.gitlab-ci.yml - project: 'libretro-infrastructure/ci-templates' file: '/android-cmake.yml' - project: 'libretro-infrastructure/ci-templates' file: '/linux-cmake.yml' + - project: 'libretro-infrastructure/ci-templates' + file: '/windows-x64-msvc19-msys2.yml' + - project: 'libretro-infrastructure/ci-templates' + file: '/windows-i686-msvc19-msys2.yml' stages: - build-prepare - build-shared - - build-static - - test -#Desktop -libretro-build-linux-x86_64: +# Desktop +libretro-build-linux-x64: extends: - .libretro-linux-cmake-x86_64 - .core-defs - .linux-defs +libretro-build-linux-i686: + extends: + - .libretro-linux-cmake-x86 + - .core-defs + - .linux-defs + +libretro-build-windows-x64: + extends: + - .libretro-windows-x64-msvc19-msys2-make-default + - .core-defs + - .windows-defs + +libretro-build-windows-i686: + extends: + - .libretro-windows-i686-msvc19-msys2-make-default + - .core-defs + - .windows-defs + # Android libretro-build-android-armeabi-v7a: extends: diff --git a/.travis.sh b/.travis.sh deleted file mode 100644 index bdd4baa01c94..000000000000 --- a/.travis.sh +++ /dev/null @@ -1,142 +0,0 @@ -#/bin/bash - -export USE_CCACHE=1 -export NDK_CCACHE=ccache -export HOMEBREW_NO_INSTALL_CLEANUP=1 -export HOMEBREW_NO_AUTO_UPDATE=1 -export HOMEBREW_NO_ANALYTICS=1 -NDK_VER=android-ndk-r18b - -download_extract() { - aria2c -x 16 $1 -o $2 - tar -xf $2 -} - -# This is used for the Android NDK. -download_extract_zip() { - aria2c --file-allocation=none --timeout=120 --retry-wait=5 --max-tries=20 -Z -c $1 -o $2 - # This resumes the download, in case it failed. - aria2c --file-allocation=none --timeout=120 --retry-wait=5 --max-tries=20 -Z -c $1 -o $2 - - unzip $2 2>&1 | pv > /dev/null -} - -travis_before_install() { - git submodule update --init --recursive -} - -travis_install() { - # Ubuntu Linux + GCC 4.8 - if [ "$PPSSPP_BUILD_TYPE" = "Linux" ]; then - if [ "$CXX" = "g++" ]; then - sudo apt-get install -qq g++-4.8 - fi - - if [ "$QT" = "TRUE" ]; then - sudo apt-get install -qq qt5-qmake qtmultimedia5-dev qtsystems5-dev qtbase5-dev qtdeclarative5-dev qttools5-dev-tools libqt5webkit5-dev libqt5opengl5-dev libsqlite3-dev qt5-default - fi - - download_extract "https://cmake.org/files/v3.6/cmake-3.6.2-Linux-x86_64.tar.gz" cmake-3.6.2-Linux-x86_64.tar.gz - fi - - # Android NDK + GCC 4.8 - if [ "$PPSSPP_BUILD_TYPE" = "Android" ]; then - download_extract_zip http://dl.google.com/android/repository/${NDK_VER}-linux-x86_64.zip ${NDK_VER}-linux-x86_64.zip - fi - - if [ "$PPSSPP_BUILD_TYPE" = "Windows" ]; then - curl -L https://github.com/frerich/clcache/releases/download/v4.2.0/clcache.4.2.0.nupkg --output clcache.4.2.0.nupkg - choco install clcache --source=. - fi - - # Ensure we're using ccache - if [[ "$CXX" = "clang" && "$CC" == "clang" ]]; then - export CXX="ccache clang" CC="ccache clang" - fi - if [[ "$PPSSPP_BUILD_TYPE" == "Linux" && "$CXX" == "g++" ]]; then - # Also use gcc 4.8, instead of whatever default version. - export CXX="ccache g++-4.8" CC="ccache gcc-4.8" - fi - if [[ "$CXX" != *ccache* ]]; then - export CXX="ccache $CXX" - fi - if [[ "$CC" != *ccache* ]]; then - export CC="ccache $CC" - fi -} - -travis_script() { - # Compile PPSSPP - if [ "$PPSSPP_BUILD_TYPE" = "Linux" ]; then - if [ -d cmake-3.6.2-Linux-x86_64 ]; then - export PATH=$(pwd)/cmake-3.6.2-Linux-x86_64/bin:$PATH - fi - - if [ "$QT" = "TRUE" ]; then - ./b.sh --qt - elif [ "$LIBRETRO" = "TRUE" ]; then - ./b.sh --libretro - else - ./b.sh --headless - fi - fi - if [ "$PPSSPP_BUILD_TYPE" = "Android" ]; then - export ANDROID_HOME=$(pwd)/${NDK_VER} NDK=$(pwd)/${NDK_VER} - if [[ "$CXX" = *clang* ]]; then - export NDK_TOOLCHAIN_VERSION=clang - fi - - if [ "$LIBRETRO" = "TRUE" ]; then - ./b.sh --libretro_android ppsspp_libretro - else - pushd android - ./ab.sh -j2 APP_ABI=$APP_ABI - popd - fi - -# When we can get this to work... -# chmod +x gradlew -# ./gradlew assembleRelease - fi - if [ "$PPSSPP_BUILD_TYPE" = "iOS" ]; then - ./b.sh --ios - fi - if [ "$PPSSPP_BUILD_TYPE" = "macOS" ]; then - ./b.sh --headless - fi - if [ "$PPSSPP_BUILD_TYPE" = "Windows" ]; then - export "MSBUILD_PATH=/c/Program Files (x86)/Microsoft Visual Studio/2017/BuildTools/MSBuild/15.0/Bin" - export "PATH=$MSBUILD_PATH:$PATH" - export CLCACHE_OBJECT_CACHE_TIMEOUT_MS=120000 - - # Set DebugInformationFormat to nothing, the default is ProgramDatabase which breaks clcache. - # Turns out it's not possible to pass this on the msbuild command line. - for f in `find . -name *.vcxproj`; do - sed -i 's/>ProgramDatabase<\/DebugInformationFormat>/><\/DebugInformationFormat>/g' $f - done - - if [ "$UWP" == "TRUE" ]; then - msbuild.exe UWP\\PPSSPP_UWP.sln -m -p:CLToolExe=clcache.exe -p:Configuration=Release -p:Platform=x64 -p:TrackFileAccess=false -p:AppxPackageSigningEnabled=false - else - msbuild.exe Windows\\PPSSPP.sln -m -p:CLToolExe=clcache.exe -p:Configuration=Release -p:Platform=x64 -p:TrackFileAccess=false - fi - fi -} - -travis_after_success() { - if [ "$PPSSPP_BUILD_TYPE" != "Windows" ]; then - ccache -s - else - clcache -s - clcache -z - fi - - if [ "$PPSSPP_BUILD_TYPE" = "Linux" ]; then - ./test.py - fi -} - -set -e -set -x - -$1; diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index fccd90b7bb47..000000000000 --- a/.travis.yml +++ /dev/null @@ -1,117 +0,0 @@ -# https://travis-ci.org - -language: cpp - -os: linux -dist: xenial - -addons: - apt: - update: true - packages: - - ant - - aria2 - - build-essential - - cmake - - libgl1-mesa-dev - - libglu1-mesa-dev - - libsdl2-dev - - pv - - software-properties-common - sources: - - sourceline: 'ppa:zoogie/sdl2-snapshots' - - sourceline: 'ppa:ubuntu-toolchain-r/test' - - sourceline: 'ppa:ubuntu-sdk-team/ppa' - homebrew: - update: true - packages: - - ccache - - sdl2 - -cache: - apt: true - ccache: true - directories: - - $HOME/Library/Caches/Homebrew - - $HOME/clcache - -# By encrypting the channel name, we disable notifications from forks by default. -# It's not actually a big secret. -notifications: - irc: - channels: - - secure: "anmDihJ1uPnDSNDsEe3WQ5o4BsPApJbw6NupsAebt6kBxJm7WYKrSyUVmu/9GXgFvy756HBDVA6eikPtcak1+jLFfyOZqGw3ei69ZNnA+R7aoAzfiXilFqf53Yy2tzydEnF2nBYhJjQZgMBZUVWUD6pdKSXtVg/VZRhVqiDlb+A=" - on_success: change - on_failure: always - skip_join: true - template: - - "%{repository_slug}:%{branch} - %{message} %{build_url}" - -jobs: - include: - - os: linux - compiler: "gcc" - env: PPSSPP_BUILD_TYPE=Linux - - os: linux - compiler: "gcc" - env: PPSSPP_BUILD_TYPE=Android - APP_ABI=arm64-v8a - - os: linux - compiler: "gcc" - env: PPSSPP_BUILD_TYPE=Android - APP_ABI=armeabi-v7a - - os: linux - compiler: "gcc" - env: PPSSPP_BUILD_TYPE=Android - APP_ABI=x86 - - os: linux - compiler: "gcc" - env: PPSSPP_BUILD_TYPE=Android - APP_ABI=x86_64 - - os: linux - compiler: "gcc" - env: PPSSPP_BUILD_TYPE=Android - APP_ABI=arm64-v8a - LIBRETRO=TRUE - - os: linux - compiler: "clang" - env: PPSSPP_BUILD_TYPE=Linux - - os: linux - compiler: "gcc" - env: PPSSPP_BUILD_TYPE=Linux - QT=TRUE - - os: linux - compiler: "gcc" - env: PPSSPP_BUILD_TYPE=Linux - LIBRETRO=TRUE - - os: linux - compiler: "clang" - env: PPSSPP_BUILD_TYPE=Linux - LIBRETRO=TRUE - - os: osx - osx_image: xcode9.4 - compiler: "clang" - env: PPSSPP_BUILD_TYPE=macOS - - os: osx - osx_image: xcode9.4 - compiler: "clang" - env: PPSSPP_BUILD_TYPE=iOS - - os: windows - compiler: "msvc2017" - env: PPSSPP_BUILD_TYPE=Windows - - os: windows - compiler: "msvc2017" - env: PPSSPP_BUILD_TYPE=Windows - UWP=TRUE - -before_install: - - travis_retry bash .travis.sh travis_before_install - -install: - - travis_retry bash .travis.sh travis_install - -script: - - bash .travis.sh travis_script - -after_success: - - bash .travis.sh travis_after_success diff --git a/CMakeLists.txt b/CMakeLists.txt index 516bc256ad94..f71e066314c5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,7 +9,6 @@ if(NOT ANDROID) endif() enable_language(ASM) -list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/Modules) add_definitions(-D__STDC_CONSTANT_MACROS) @@ -25,7 +24,13 @@ endif() # Detect CPU from CMAKE configuration. Toolchains should set this up if(CMAKE_SYSTEM_PROCESSOR) - if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "^arm") + if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "^aarch64") + set(ARM64 ON) + elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "^arm64") + # M1 Mac + set(ARM64 ON) + elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "^arm") + message("ARM_DEVICE is a go") set(ARM_DEVICE ON) if(UNIX AND NOT APPLE) execute_process(COMMAND cat /proc/cpuinfo OUTPUT_VARIABLE OUTSTR) @@ -43,8 +48,6 @@ if(CMAKE_SYSTEM_PROCESSOR) set(CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} -target armv7a-none-linux-android") endif() endif() - elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "^aarch64") - set(ARM64 ON) elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "^amd64" OR ${CMAKE_SYSTEM_PROCESSOR} MATCHES "^x86_64" OR ${CMAKE_SYSTEM_PROCESSOR} MATCHES "^AMD64") set(X86_DEVICE ON) set(X86_64_DEVICE ON) @@ -57,8 +60,6 @@ if(CMAKE_SYSTEM_PROCESSOR) endif() endif() -include(ccache) - # the libraries in the ffmpeg/ directory are not compatible with mingw if(MINGW AND NOT DEFINED USE_SYSTEM_FFMPEG) set(USE_SYSTEM_FFMPEG ON) @@ -77,6 +78,7 @@ endif() if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") set(MACOSX ON) + set(USING_EGL OFF) endif() if(${CMAKE_SYSTEM_NAME} MATCHES "Android") @@ -88,6 +90,16 @@ if(ANDROID OR WIN32 OR (UNIX AND NOT ARM_NO_VULKAN)) set(VULKAN ON) endif() +list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/Modules) +if(NOT ((ARM64 AND MACOSX) OR IOS)) + list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/sdl) +endif() + +include(ccache) +include(GNUInstallDirs) + +add_definitions(-DASSETS_DIR="${CMAKE_INSTALL_FULL_DATADIR}/ppsspp/assets/") + if(GOLD) add_definitions(-DGOLD) message("Gold Build") @@ -122,7 +134,8 @@ option(USE_MINIUPNPC "Build with miniUPnPc support" ON) option(USE_SYSTEM_SNAPPY "Dynamically link against system snappy" ${USE_SYSTEM_SNAPPY}) option(USE_SYSTEM_FFMPEG "Dynamically link against system FFMPEG" ${USE_SYSTEM_FFMPEG}) option(USE_SYSTEM_LIBZIP "Dynamically link against system libzip" ${USE_SYSTEM_LIBZIP}) -option(USE_ADDRESS_SANITIZER "Use Clang memory sanitizer" ${USE_ADDRESS_SANITIZER}) +option(USE_ASAN "Use address sanitizer" OFF) +option(USE_UBSAN "Use undefined behaviour sanitizer" OFF) if(UNIX AND NOT (APPLE OR ANDROID) AND VULKAN) if(USING_X11_VULKAN) @@ -186,7 +199,7 @@ if(USING_EGL) set(OPENGL_LIBRARIES ${OPENGL_LIBRARIES} ${EGL_LIBRARIES}) endif() -if(NOT LIBRETRO) +if(NOT LIBRETRO AND NOT IOS) find_package(SDL2) endif() include(FindThreads) @@ -260,20 +273,33 @@ if(NOT MSVC) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-switch -Wno-uninitialized") endif() - if(USE_ADDRESS_SANITIZER) + if(USE_ASAN) message("Address sanitizer enabled (DEBUG only)") - set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS} -fsanitize=address") + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fsanitize=address") set(CMAKE_LINKER_FLAGS_DEBUG "${CMAKE_LINKER_FLAGS_DEBUG} -fsanitize=address") - add_definitions(-DUSE_ADDRESS_SANITIZER) + add_definitions(-DUSE_ASAN) + endif() + if(USE_UBSAN) + message("Undefined behaviour sanitizer enabled (DEBUG only)") + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fsanitize=undefined") + set(CMAKE_LINKER_FLAGS_DEBUG "${CMAKE_LINKER_FLAGS_DEBUG} -fsanitize=undefined") + + # UBSAN is a collection of sanitizers, including vtpr, which reqiuires RTTI. + # ext/glslang disables RTTI by default using the `ENABLE_RTTI` option. + # If RTTI is disabled, we must also disable the vtpr sanitizer. + if(NOT ENABLE_RTTI) + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fno-sanitize=vptr") + set(CMAKE_LINKER_FLAGS_DEBUG "${CMAKE_LINKER_FLAGS_DEBUG} -fno-sanitize=vptr") + endif() endif() set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g -D_DEBUG") set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} -Os -D_NDEBUG") - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 -D_NDEBUG") + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2 -D_NDEBUG") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -O2 -g -D_NDEBUG") set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -g -D_DEBUG") set(CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL} -Os -D_NDEBUG") - set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3 -D_NDEBUG") + set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O2 -D_NDEBUG") set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -O2 -g -D_NDEBUG") #TODO: Remove this and include the file properly everywhere it makes sense # First step is too use the macros everywhere @@ -675,7 +701,7 @@ if(USE_FFMPEG) elseif(IOS) set(PLATFORM_ARCH "ios/universal") elseif(MACOSX) - set(PLATFORM_ARCH "macosx/x86_64") + set(PLATFORM_ARCH "macosx/universal") elseif(LINUX) if(ARMV7) set(PLATFORM_ARCH "linux/armv7") @@ -755,15 +781,15 @@ include_directories(ext/cityhash) if(NOT MSVC) # These can be fast even for debug. - set_target_properties(udis86 PROPERTIES COMPILE_FLAGS "-O3") - set_target_properties(cityhash PROPERTIES COMPILE_FLAGS "-O3") + set_target_properties(udis86 PROPERTIES COMPILE_FLAGS "-O2") + set_target_properties(cityhash PROPERTIES COMPILE_FLAGS "-O2") if(NOT ZLIB_FOUND) - set_target_properties(zlib PROPERTIES COMPILE_FLAGS "-O3") + set_target_properties(zlib PROPERTIES COMPILE_FLAGS "-O2") endif() endif() -find_package(LibZip) +find_package(LIBZIP) if(LIBZIP_FOUND AND USE_SYSTEM_LIBZIP) add_definitions(-DSHARED_LIBZIP) else() @@ -846,6 +872,11 @@ else() ext/libpng17/arm/filter_neon.S ext/libpng17/arm/filter_neon_intrinsics.c ) + elseif(ARM64) + set(PNG_ARM_INCLUDES + ext/libpng17/arm/arm_init.c + ext/libpng17/arm/filter_neon_intrinsics.c + ) endif() add_library(png17 STATIC ext/libpng17/pngconf.h @@ -1005,7 +1036,6 @@ elseif(TARGET SDL2::SDL2) elseif(USING_EGL) set(nativeExtraLibs ${nativeExtraLibs} pthread) endif() - set(TargetBin PPSSPPSDL) elseif(NOT LIBRETRO) message(FATAL_ERROR "Could not find SDL2. Failing.") endif() @@ -1021,7 +1051,7 @@ if(WIN32) target_link_libraries(Common winmm d3d9 dsound) endif() -if(TARGET SDL2::SDL2) +if(TARGET SDL2::SDL2 AND NOT IOS) target_link_libraries(Common SDL2::SDL2) endif() @@ -1409,8 +1439,6 @@ set(GPU_SOURCES GPU/GPUState.h GPU/Math3D.cpp GPU/Math3D.h - GPU/Null/NullGpu.cpp - GPU/Null/NullGpu.h GPU/Software/Clipper.cpp GPU/Software/Clipper.h GPU/Software/Lighting.cpp @@ -1478,6 +1506,10 @@ add_library(${CoreLibName} ${CoreLinkType} Core/Debugger/WebSocket/GPURecordSubscriber.h Core/Debugger/WebSocket/HLESubscriber.cpp Core/Debugger/WebSocket/HLESubscriber.h + Core/Debugger/WebSocket/InputBroadcaster.cpp + Core/Debugger/WebSocket/InputBroadcaster.h + Core/Debugger/WebSocket/InputSubscriber.cpp + Core/Debugger/WebSocket/InputSubscriber.h Core/Debugger/WebSocket/LogBroadcaster.cpp Core/Debugger/WebSocket/LogBroadcaster.h Core/Debugger/WebSocket/MemorySubscriber.cpp @@ -2086,8 +2118,8 @@ if(LIBRETRO) endif() if(TargetBin) - if(IOS OR APPLE) - if(APPLE AND NOT IOS) + if(APPLE) + if(NOT IOS) set(ICON_PATH_ABS ${CMAKE_CURRENT_SOURCE_DIR}/icons/ppsspp.icns) set(MACOSX_BUNDLE_ICON_FILE ppsspp.icns) set_source_files_properties(${ICON_PATH_ABS} PROPERTIES MACOSX_PACKAGE_LOCATION "Resources") @@ -2100,7 +2132,7 @@ if(TargetBin) file(GLOB_RECURSE LANG_FILES assets/lang/*) file(GLOB_RECURSE SHADER_FILES assets/shaders/*) - if(APPLE AND NOT IOS) + if(NOT IOS) set_source_files_properties(${NativeAssets} PROPERTIES MACOSX_PACKAGE_LOCATION "MacOS/assets") set_source_files_properties(${FLASH0_FILES} PROPERTIES MACOSX_PACKAGE_LOCATION "MacOS/assets/flash0/font") set_source_files_properties(${LANG_FILES} PROPERTIES MACOSX_PACKAGE_LOCATION "MacOS/assets/lang") @@ -2108,10 +2140,10 @@ if(TargetBin) endif() if(IOS) - list(APPEND NativeAssets ios/Settings.bundle) - add_executable(${TargetBin} MACOSX_BUNDLE ${ICON_PATH_ABS} ${NativeAssets} ${SHADER_FILES} ${FLASH0_FILES} ${LANG_FILES} ${NativeAppSource} "ios/Launch Screen.storyboard") + add_executable(${TargetBin} MACOSX_BUNDLE ${ICON_PATH_ABS} ${NativeAssets} ${SHADER_FILES} ${FLASH0_FILES} ${LANG_FILES} ${NativeAppSource} "ios/Settings.bundle" "ios/Launch Screen.storyboard" "MoltenVK/iOS/Frameworks") else() add_executable(${TargetBin} MACOSX_BUNDLE ${ICON_PATH_ABS} ${NativeAssets} ${SHADER_FILES} ${FLASH0_FILES} ${LANG_FILES} ${NativeAppSource}) + file(INSTALL "${CMAKE_SOURCE_DIR}/MoltenVK/macOS/Frameworks/libMoltenVK.dylib" DESTINATION "${CMAKE_BINARY_DIR}/PPSSPPSDL.app/Contents/Frameworks/") if(TARGET SDL2::SDL2 AND NOT USING_QT_UI) add_custom_command(TARGET ${TargetBin} POST_BUILD COMMAND /bin/bash "${CMAKE_SOURCE_DIR}/SDL/macbundle.sh" "${CMAKE_BINARY_DIR}/PPSSPPSDL.app") elseif(USING_QT_UI) @@ -2154,11 +2186,12 @@ if(IOS) set_source_files_properties(${RSRC_XIB_FILES} PROPERTIES MACOSX_PACKAGE_LOCATION Resources ) - if(CMAKE_GENERATOR STREQUAL "Xcode") - set(APP_DIR_NAME "$(TARGET_BUILD_DIR)/$(FULL_PRODUCT_NAME)") - else() + #This breaks in modern XCode. Not sure when it worked... + #if(CMAKE_GENERATOR STREQUAL "Xcode") + # set(APP_DIR_NAME "$(TARGET_BUILD_DIR)/$(FULL_PRODUCT_NAME)") + #else() set(APP_DIR_NAME "$") - endif() + #endif() add_custom_command(TARGET PPSSPP POST_BUILD COMMAND mkdir -p \"${APP_DIR_NAME}\" COMMAND tar -c -C ${CMAKE_CURRENT_BINARY_DIR} --exclude .DS_Store --exclude .git assets *.png | tar -x -C \"${APP_DIR_NAME}\" @@ -2169,6 +2202,7 @@ if(IOS) MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/ios/PPSSPP-Info.plist" RESOURCE "ios/Launch Screen.storyboard" RESOURCE "ios/Settings.bundle" + RESOURCE "MoltenVK/iOS/Frameworks" XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET ${DEPLOYMENT_TARGET} XCODE_ATTRIBUTE_TARGETED_DEVICE_FAMILY "iPhone/iPad" XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC YES @@ -2176,3 +2210,34 @@ if(IOS) XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "-" ) endif() + +if(UNIX AND NOT ANDROID AND NOT APPLE) + configure_file( + "${CMAKE_SOURCE_DIR}/ppsspp.desktop.in" + "${CMAKE_BINARY_DIR}/ppsspp.desktop" + @ONLY + ) + install( + TARGETS ${TargetBin} + DESTINATION "${CMAKE_INSTALL_BINDIR}" + ) + install( + DIRECTORY "${CMAKE_BINARY_DIR}/assets" + DESTINATION "${CMAKE_INSTALL_DATADIR}/ppsspp" + PATTERN ".git*" EXCLUDE + ) + install( + FILES "${CMAKE_BINARY_DIR}/ppsspp.desktop" + DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications" + RENAME ${TargetBin}.desktop + ) + install( + DIRECTORY "${CMAKE_SOURCE_DIR}/icons/hicolor" + DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons" + ) + install( + FILES "${CMAKE_SOURCE_DIR}/icons/icon-512.svg" + DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/pixmaps" + RENAME ppsspp.svg + ) +endif() diff --git a/Common/Arm64Emitter.cpp b/Common/Arm64Emitter.cpp index 467dd6d8eea6..520112658445 100644 --- a/Common/Arm64Emitter.cpp +++ b/Common/Arm64Emitter.cpp @@ -19,7 +19,7 @@ #include "Common/CPUDetect.h" #include "Common/Log.h" -#ifdef IOS +#if PPSSPP_PLATFORM(IOS) || PPSSPP_PLATFORM(MAC) #include #endif @@ -323,7 +323,7 @@ void ARM64XEmitter::FlushIcache() void ARM64XEmitter::FlushIcacheSection(const u8 *start, const u8 *end) { -#if defined(IOS) +#if PPSSPP_PLATFORM(IOS) || PPSSPP_PLATFORM(MAC) // Header file says this is equivalent to: sys_icache_invalidate(start, end - start); sys_cache_control(kCacheFunctionPrepareForExecution, (void *)start, end - start); #elif PPSSPP_PLATFORM(WINDOWS) @@ -331,12 +331,11 @@ void ARM64XEmitter::FlushIcacheSection(const u8 *start, const u8 *end) #elif PPSSPP_ARCH(ARM64) // Code from Dolphin, contributed by the Mono project. - // Don't rely on GCC's __clear_cache implementation, as it caches - // icache/dcache cache line sizes, that can vary between cores on - // big.LITTLE architectures. size_t isize, dsize; - if (cpu_info.sQuirks.bExynos8890DifferingCachelineSizes) { + // Don't rely on GCC's __clear_cache implementation, as it caches + // icache/dcache cache line sizes, that can vary between cores on + // very buggy big.LITTLE architectures like Exynos8890D. // Enforce the minimum cache line size to be completely safe on these CPUs. isize = 64; dsize = 64; diff --git a/Common/ArmCPUDetect.cpp b/Common/ArmCPUDetect.cpp index 540f7d7b0c6d..0dd85591cc93 100644 --- a/Common/ArmCPUDetect.cpp +++ b/Common/ArmCPUDetect.cpp @@ -19,6 +19,11 @@ #include +#if PPSSPP_PLATFORM(IOS) || PPSSPP_PLATFORM(MAC) +#include +#endif + + #if PPSSPP_ARCH(ARM) || PPSSPP_ARCH(ARM64) #include @@ -238,14 +243,27 @@ void CPUInfo::Detect() #if !PPSSPP_PLATFORM(LINUX) bool isVFP3 = false; bool isVFP4 = false; +#if PPSSPP_PLATFORM(IOS) || PPSSPP_PLATFORM(MAC) #if PPSSPP_PLATFORM(IOS) isVFP3 = true; // Check for swift arch (VFP4) #ifdef __ARM_ARCH_7S__ isVFP4 = true; #endif - strcpy(brand_string, "Apple A"); - num_cores = 2; +#endif // PPSSPP_PLATFORM(IOS) + size_t sz = 0x41; // char brand_string[0x41] + if (sysctlbyname("machdep.cpu.brand_string", brand_string, &sz, nullptr, 0) != 0) { + strcpy(brand_string, "Unknown"); + } + int num = 0; + sz = sizeof(num); + if (sysctlbyname("hw.physicalcpu_max", &num, &sz, nullptr, 0) == 0) { + num_cores = num; + sz = sizeof(num); + if (sysctlbyname("hw.logicalcpu_max", &num, &sz, nullptr, 0) == 0) { + logical_cpu_count = num / num_cores; + } + } #elif PPSSPP_PLATFORM(WINDOWS) truncate_cpy(brand_string, GetCPUBrandString().c_str()); isVFP3 = true; @@ -253,7 +271,7 @@ void CPUInfo::Detect() SYSTEM_INFO sysInfo; GetSystemInfo(&sysInfo); num_cores = sysInfo.dwNumberOfProcessors; -#else // !PPSSPP_PLATFORM(IOS) +#else // !PPSSPP_PLATFORM(IOS) && !PPSSPP_PLATFORM(MAC) && !PPSSPP_PLATFORM(WINDOWS) strcpy(brand_string, "Unknown"); num_cores = 1; #endif diff --git a/Common/Buffer.cpp b/Common/Buffer.cpp index 423c2cfb3c5c..68c7e7682e2c 100644 --- a/Common/Buffer.cpp +++ b/Common/Buffer.cpp @@ -196,7 +196,7 @@ bool Buffer::ReadAll(int fd, int hintSize) { } while (true) { - int retval = recv(fd, &buf[0], (int)buf.size(), 0); + int retval = recv(fd, &buf[0], (int)buf.size(), MSG_NOSIGNAL); if (retval == 0) { break; } else if (retval < 0) { @@ -228,7 +228,7 @@ bool Buffer::ReadAllWithProgress(int fd, int knownSize, float *progress, bool *c return false; ready = fd_util::WaitUntilReady(fd, CANCEL_INTERVAL, false); } - int retval = recv(fd, &buf[0], (int)buf.size(), 0); + int retval = recv(fd, &buf[0], (int)buf.size(), MSG_NOSIGNAL); if (retval == 0) { return true; } else if (retval < 0) { @@ -248,7 +248,7 @@ int Buffer::Read(int fd, size_t sz) { char buf[1024]; int retval; size_t received = 0; - while ((retval = recv(fd, buf, (int)std::min(sz, sizeof(buf)), 0)) > 0) { + while ((retval = recv(fd, buf, (int)std::min(sz, sizeof(buf)), MSG_NOSIGNAL)) > 0) { if (retval < 0) { return retval; } diff --git a/Common/CPUDetect.cpp b/Common/CPUDetect.cpp index 9910f651ccd1..70c640eee742 100644 --- a/Common/CPUDetect.cpp +++ b/Common/CPUDetect.cpp @@ -35,6 +35,7 @@ #include "Common/StringUtils.h" #if defined(_WIN32) && !defined(__MINGW32__) + #define WIN32_LEAN_AND_MEAN #include #define _interlockedbittestandset workaround_ms_header_bug_platform_sdk6_set @@ -53,7 +54,8 @@ void do_cpuidex(u32 regs[4], u32 cpuid_leaf, u32 ecxval) { void do_cpuid(u32 regs[4], u32 cpuid_leaf) { __cpuid((int *)regs, cpuid_leaf); } -#else + +#else // _WIN32 #ifdef _M_SSE #include @@ -68,7 +70,7 @@ static unsigned long long _xgetbv(unsigned int index) #else #define _XCR_XFEATURE_ENABLED_MASK 0 -#endif +#endif // _M_SSE #if !defined(MIPS) @@ -92,8 +94,10 @@ void do_cpuid(u32 regs[4], u32 cpuid_leaf) do_cpuidex(regs, cpuid_leaf, 0); } -#endif -#endif +#endif // !defined(MIPS) + +#endif // !win32 + CPUInfo cpu_info; diff --git a/Common/CodeBlock.h b/Common/CodeBlock.h index 9aad2440d7fa..0369c66893c3 100644 --- a/Common/CodeBlock.h +++ b/Common/CodeBlock.h @@ -71,6 +71,9 @@ template class CodeBlock : public CodeBlockCommon, public T { // Always clear code space with breakpoints, so that if someone accidentally executes // uninitialized, it just breaks into the debugger. void ClearCodeSpace(int offset) { + if (!region) { + return; + } if (PlatformIsWXExclusive()) { ProtectMemoryPages(region, region_size, MEM_PROT_READ | MEM_PROT_WRITE); } diff --git a/Common/Data/Encoding/Base64.cpp b/Common/Data/Encoding/Base64.cpp index 50dbc465a5fc..fbd77c0fac83 100644 --- a/Common/Data/Encoding/Base64.cpp +++ b/Common/Data/Encoding/Base64.cpp @@ -2,7 +2,7 @@ // TODO: This is a simple but not very efficient implementation. std::string Base64Encode(const uint8_t *p, size_t sz) { - const char digits[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; + static const char digits[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; size_t unpaddedLength = (4 * sz + 2) / 3; std::string result; @@ -33,3 +33,49 @@ std::string Base64Encode(const uint8_t *p, size_t sz) { return result; } + +std::vector Base64Decode(const char *s, size_t sz) { + static const uint8_t lookup[256] = { + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 62, 63, 62, 255, 63, + // '0' starts here. + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 255, 255, 255, 255, 255, 255, + // 'A' after an invalid. + 255, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 255, 255, 255, 255, 63, + // 'a' after an invalid. + 255, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 255, 255, 255, 255, 255, + }; + + const uint8_t *p = (const uint8_t *)s; + std::vector result; + result.reserve(3 * sz / 4); + + for (size_t i = 0; i < sz; i += 4) { + uint8_t quad[4] = { + lookup[p[i]], + i + 1 < sz ? lookup[p[i + 1]] : (uint8_t)255, + i + 2 < sz ? lookup[p[i + 2]] : (uint8_t)255, + i + 3 < sz ? lookup[p[i + 3]] : (uint8_t)255, + }; + + // First: ABCDEF GHXXXX XXXXXX XXXXXX. Neither 6-bit value should be invalid. + result.push_back((quad[0] << 2) | ((quad[1] & 0x30) >> 4)); + + // Next: XXXXXX XXABCD EFGHXX XXXXXX. Invalid if quad[2] is invalid. + if (quad[2] == 255) { + continue; + } + result.push_back(((quad[1] & 0x0F) << 4) | ((quad[2] & 0x3C) >> 2)); + + // Last: XXXXXX XXXXXX XXXXAB CDEFGH. Invalid only if quad[3] is. + if (quad[3] == 255) { + continue; + } + result.push_back(((quad[2] & 0x03) << 6) | (quad[3] & 0x3F)); + } + + return result; +} diff --git a/Common/Data/Encoding/Base64.h b/Common/Data/Encoding/Base64.h index b963bfb391dd..dedd07906e1a 100644 --- a/Common/Data/Encoding/Base64.h +++ b/Common/Data/Encoding/Base64.h @@ -1,5 +1,8 @@ #pragma once +#include #include +#include std::string Base64Encode(const uint8_t *p, size_t sz); +std::vector Base64Decode(const char *s, size_t sz); diff --git a/Common/Data/Format/PNGLoad.cpp b/Common/Data/Format/PNGLoad.cpp index 7c5baf0e752c..0174b156fea5 100644 --- a/Common/Data/Format/PNGLoad.cpp +++ b/Common/Data/Format/PNGLoad.cpp @@ -17,7 +17,8 @@ int pngLoad(const char *file, int *pwidth, int *pheight, unsigned char **image_d if (PNG_IMAGE_FAILED(png)) { - ERROR_LOG(IO, "pngLoad: %s", png.message); + WARN_LOG(IO, "pngLoad: %s (%s)", png.message, file); + *image_data_ptr = nullptr; return 0; } *pwidth = png.width; @@ -37,7 +38,8 @@ int pngLoadPtr(const unsigned char *input_ptr, size_t input_len, int *pwidth, in png_image_begin_read_from_memory(&png, input_ptr, input_len); if (PNG_IMAGE_FAILED(png)) { - ERROR_LOG(IO, "pngLoad: %s", png.message); + WARN_LOG(IO, "pngLoad: %s", png.message); + *image_data_ptr = nullptr; return 0; } *pwidth = png.width; @@ -49,6 +51,7 @@ int pngLoadPtr(const unsigned char *input_ptr, size_t input_len, int *pwidth, in size_t size = PNG_IMAGE_SIZE(png); if (!size) { ERROR_LOG(IO, "pngLoad: empty image"); + *image_data_ptr = nullptr; return 0; } diff --git a/Common/File/PathBrowser.cpp b/Common/File/PathBrowser.cpp index 712e5a95e647..7bd70e206377 100644 --- a/Common/File/PathBrowser.cpp +++ b/Common/File/PathBrowser.cpp @@ -2,6 +2,8 @@ #include #include +#include "ppsspp_config.h" + #include "Common/Net/HTTPClient.h" #include "Common/Net/URL.h" @@ -11,6 +13,8 @@ #include "Common/Log.h" #include "Common/Thread/ThreadUtil.h" +#include "Core/System.h" + bool LoadRemoteFileList(const std::string &url, bool *cancel, std::vector &files) { http::Client http; Buffer result; @@ -201,6 +205,28 @@ bool PathBrowser::IsListingReady() { return ready_; } +std::string PathBrowser::GetFriendlyPath() const { + std::string str = GetPath(); + // Show relative to memstick root if there. + std::string root = GetSysDirectory(DIRECTORY_MEMSTICK_ROOT); + for (size_t i = 0; i < root.size(); i++) { + if (root[i] == '\\') + root[i] = '/'; + } + + if (startsWith(str, root)) { + return std::string("ms:/") + str.substr(root.size()); + } + +#if PPSSPP_PLATFORM(LINUX) || PPSSPP_PLATFORM(MAC) + char *home = getenv("HOME"); + if (home != nullptr && !strncmp(str.c_str(), home, strlen(home))) { + str = std::string("~") + str.substr(strlen(home)); + } +#endif + return str; +} + bool PathBrowser::GetListing(std::vector &fileInfo, const char *filter, bool *cancel) { std::unique_lock guard(pendingLock_); while (!IsListingReady() && (!cancel || !*cancel)) { @@ -238,20 +264,45 @@ bool PathBrowser::GetListing(std::vector &fileInfo, const char *filter } } +bool PathBrowser::CanNavigateUp() { +/* Leaving this commented out, not sure if there's a use in UWP for navigating up from the user data folder. +#if PPSSPP_PLATFORM(UWP) + // Can't navigate up from memstick folder :( + if (path_ == GetSysDirectory(DIRECTORY_MEMSTICK_ROOT)) { + return false; + } +#endif +*/ + if (path_ == "/" || path_ == "") { + return false; + } + return true; +} + +void PathBrowser::NavigateUp() { + // Upwards. + // Check for windows drives. + if (path_.size() == 3 && path_[1] == ':') { + path_ = "/"; + } else if (startsWith(path_, "http://") || startsWith(path_, "https://")) { + // You can actually pin "remote disc streaming" (which I didn't even realize until recently). + // This prevents you from getting the path browser into very weird states: + path_ = "/"; + // It's ok to just go directly to root without more checking since remote disc streaming + // does not yet support folders. + } else { + size_t slash = path_.rfind('/', path_.size() - 2); + if (slash != std::string::npos) + path_ = path_.substr(0, slash + 1); + } +} + // TODO: Support paths like "../../hello" void PathBrowser::Navigate(const std::string &path) { if (path == ".") return; if (path == "..") { - // Upwards. - // Check for windows drives. - if (path_.size() == 3 && path_[1] == ':') { - path_ = "/"; - } else { - size_t slash = path_.rfind('/', path_.size() - 2); - if (slash != std::string::npos) - path_ = path_.substr(0, slash + 1); - } + NavigateUp(); } else { if (path.size() > 2 && path[1] == ':' && path_ == "/") path_ = path; diff --git a/Common/File/PathBrowser.h b/Common/File/PathBrowser.h index 01da52e89fc2..83e5e2f900e2 100644 --- a/Common/File/PathBrowser.h +++ b/Common/File/PathBrowser.h @@ -22,6 +22,9 @@ class PathBrowser { void SetPath(const std::string &path); bool IsListingReady(); bool GetListing(std::vector &fileInfo, const char *filter = nullptr, bool *cancel = nullptr); + + bool CanNavigateUp(); + void NavigateUp(); void Navigate(const std::string &path); std::string GetPath() const { @@ -30,19 +33,7 @@ class PathBrowser { else return ""; } - std::string GetFriendlyPath() const { - std::string str = GetPath(); -#if defined(__ANDROID__) - // Do nothing -#elif defined(__linux) - char *home = getenv("HOME"); - if (home != nullptr && !strncmp(str.c_str(), home, strlen(home))) { - str = str.substr(strlen(home)); - str.insert(0, 1, '~'); - } -#endif - return str; - } + std::string GetFriendlyPath() const; private: void HandlePath(); diff --git a/Common/GPU/D3D11/thin3d_d3d11.cpp b/Common/GPU/D3D11/thin3d_d3d11.cpp index 608baeb38b69..9403f1cadad9 100644 --- a/Common/GPU/D3D11/thin3d_d3d11.cpp +++ b/Common/GPU/D3D11/thin3d_d3d11.cpp @@ -35,6 +35,7 @@ class D3D11BlendState; class D3D11DepthStencilState; class D3D11SamplerState; class D3D11RasterState; +class D3D11Framebuffer; class D3D11DrawContext : public DrawContext { public: @@ -71,7 +72,9 @@ class D3D11DrawContext : public DrawContext { // These functions should be self explanatory. void BindFramebufferAsRenderTarget(Framebuffer *fbo, const RenderPassInfo &rp, const char *tag) override; - // color must be 0, for now. + Framebuffer *GetCurrentRenderTarget() override { + return curRenderTarget_; + } void BindFramebufferAsTexture(Framebuffer *fbo, int binding, FBChannel channelBit, int attachment) override; uintptr_t GetFramebufferAPITexture(Framebuffer *fbo, int channelBit, int attachment) override; @@ -182,6 +185,7 @@ class D3D11DrawContext : public DrawContext { ID3D11Texture2D *bbDepthStencilTex_ = nullptr; ID3D11DepthStencilView *bbDepthStencilView_ = nullptr; + Framebuffer *curRenderTarget_ = nullptr; ID3D11RenderTargetView *curRenderTargetView_ = nullptr; ID3D11DepthStencilView *curDepthStencilView_ = nullptr; // Needed to rotate stencil/viewport rectangles properly @@ -271,6 +275,8 @@ D3D11DrawContext::D3D11DrawContext(ID3D11Device *device, ID3D11DeviceContext *de case 0x163C: case 0x8086: case 0x8087: caps_.vendor = GPUVendor::VENDOR_INTEL; break; + // TODO: There are Windows ARM devices that could have Qualcomm here too. + // Not sure where I'll find the vendor codes for those though... default: caps_.vendor = GPUVendor::VENDOR_UNKNOWN; } @@ -664,7 +670,28 @@ InputLayout *D3D11DrawContext::CreateInputLayout(const InputLayoutDesc &desc) { return inputLayout; } -class D3D11ShaderModule; +class D3D11ShaderModule : public ShaderModule { +public: + D3D11ShaderModule(const std::string &tag) : tag_(tag) { + } + ~D3D11ShaderModule() { + if (vs) + vs->Release(); + if (ps) + ps->Release(); + if (gs) + gs->Release(); + } + ShaderStage GetStage() const override { return stage; } + + std::vector byteCode_; + ShaderStage stage; + std::string tag_; + + ID3D11VertexShader *vs = nullptr; + ID3D11PixelShader *ps = nullptr; + ID3D11GeometryShader *gs = nullptr; +}; class D3D11Pipeline : public Pipeline { public: @@ -681,6 +708,9 @@ class D3D11Pipeline : public Pipeline { il->Release(); if (dynamicUniforms) dynamicUniforms->Release(); + for (D3D11ShaderModule *shaderModule : shaderModules) { + shaderModule->Release(); + } } bool RequiresBuffer() override { return true; @@ -856,29 +886,6 @@ Texture *D3D11DrawContext::CreateTexture(const TextureDesc &desc) { return tex; } -class D3D11ShaderModule : public ShaderModule { -public: - D3D11ShaderModule(const std::string &tag) : tag_(tag) { - } - ~D3D11ShaderModule() { - if (vs) - vs->Release(); - if (ps) - ps->Release(); - if (gs) - gs->Release(); - } - ShaderStage GetStage() const override { return stage; } - - std::vector byteCode_; - ShaderStage stage; - std::string tag_; - - ID3D11VertexShader *vs = nullptr; - ID3D11PixelShader *ps = nullptr; - ID3D11GeometryShader *gs = nullptr; -}; - ShaderModule *D3D11DrawContext::CreateShaderModule(ShaderStage stage, ShaderLanguage language, const uint8_t *data, size_t dataSize, const std::string &tag) { if (language != ShaderLanguage::HLSL_D3D11) { ERROR_LOG(G3D, "Unsupported shader language"); @@ -1584,6 +1591,7 @@ void D3D11DrawContext::BindFramebufferAsRenderTarget(Framebuffer *fbo, const Ren curRTWidth_ = fb->Width(); curRTHeight_ = fb->Height(); } + curRenderTarget_ = fb; } else { if (curRenderTargetView_ == bbRenderTargetView_ && curDepthStencilView_ == bbDepthStencilView_) { // No need to switch, but let's fallthrough to clear! @@ -1594,6 +1602,7 @@ void D3D11DrawContext::BindFramebufferAsRenderTarget(Framebuffer *fbo, const Ren curRTWidth_ = bbWidth_; curRTHeight_ = bbHeight_; } + curRenderTarget_ = nullptr; } if (rp.color == RPAction::CLEAR && curRenderTargetView_) { float cv[4]{}; @@ -1615,7 +1624,6 @@ void D3D11DrawContext::BindFramebufferAsRenderTarget(Framebuffer *fbo, const Ren stepId_++; } -// color must be 0, for now. void D3D11DrawContext::BindFramebufferAsTexture(Framebuffer *fbo, int binding, FBChannel channelBit, int attachment) { D3D11Framebuffer *fb = (D3D11Framebuffer *)fbo; switch (channelBit) { diff --git a/Common/GPU/D3D9/D3D9StateCache.cpp b/Common/GPU/D3D9/D3D9StateCache.cpp index ed0bbdeff4ba..a799713c9543 100644 --- a/Common/GPU/D3D9/D3D9StateCache.cpp +++ b/Common/GPU/D3D9/D3D9StateCache.cpp @@ -5,7 +5,6 @@ namespace DX9 { DirectXState dxstate; -GLExtensions gl_extensions; LPDIRECT3DDEVICE9 pD3Ddevice = nullptr; LPDIRECT3DDEVICE9EX pD3DdeviceEx = nullptr; @@ -64,14 +63,6 @@ void DirectXState::Restore() { texAddressV.restore(); count++; } -void CheckGLExtensions() { - static bool done = false; - if (done) - return; - done = true; - memset(&gl_extensions, 0, sizeof(gl_extensions)); -} - } // namespace DX9 #endif // _MSC_VER diff --git a/Common/GPU/D3D9/thin3d_d3d9.cpp b/Common/GPU/D3D9/thin3d_d3d9.cpp index 44a559ee508a..83a1ca2bdfb0 100644 --- a/Common/GPU/D3D9/thin3d_d3d9.cpp +++ b/Common/GPU/D3D9/thin3d_d3d9.cpp @@ -520,7 +520,9 @@ class D3D9Context : public DrawContext { // These functions should be self explanatory. void BindFramebufferAsRenderTarget(Framebuffer *fbo, const RenderPassInfo &rp, const char *tag) override; - // color must be 0, for now. + Framebuffer *GetCurrentRenderTarget() override { + return curRenderTarget_; + } void BindFramebufferAsTexture(Framebuffer *fbo, int binding, FBChannel channelBit, int attachment) override; uintptr_t GetFramebufferAPITexture(Framebuffer *fbo, int channelBits, int attachment) override; @@ -615,6 +617,7 @@ class D3D9Context : public DrawContext { int curVBufferOffsets_[4]{}; D3D9Buffer *curIBuffer_ = nullptr; int curIBufferOffset_ = 0; + Framebuffer *curRenderTarget_ = nullptr; // Framebuffer state LPDIRECT3DSURFACE9 deviceRTsurf = 0; @@ -1139,9 +1142,11 @@ void D3D9Context::BindFramebufferAsRenderTarget(Framebuffer *fbo, const RenderPa D3D9Framebuffer *fb = (D3D9Framebuffer *)fbo; device_->SetRenderTarget(0, fb->surf); device_->SetDepthStencilSurface(fb->depthstencil); + curRenderTarget_ = fb; } else { device_->SetRenderTarget(0, deviceRTsurf); device_->SetDepthStencilSurface(deviceDSsurf); + curRenderTarget_ = nullptr; } int clearFlags = 0; diff --git a/Common/GPU/OpenGL/GLCommon.h b/Common/GPU/OpenGL/GLCommon.h index b9fbb3e41390..dd7bdeaa1cdc 100644 --- a/Common/GPU/OpenGL/GLCommon.h +++ b/Common/GPU/OpenGL/GLCommon.h @@ -8,9 +8,6 @@ #elif defined(USING_GLES2) #include #include -// At least Nokia platforms need the three below -#include -typedef char GLchar; #define GL_BGRA_EXT 0x80E1 #else // OpenGL #include "GL/glew.h" diff --git a/Common/GPU/OpenGL/GLFeatures.cpp b/Common/GPU/OpenGL/GLFeatures.cpp index 2f5f9fd0cfeb..5902ed649274 100644 --- a/Common/GPU/OpenGL/GLFeatures.cpp +++ b/Common/GPU/OpenGL/GLFeatures.cpp @@ -77,19 +77,28 @@ bool GLExtensions::VersionGEThan(int major, int minor, int sub) { } int GLExtensions::GLSLVersion() { - // Used for shader translation and core contexts (Apple drives fail without an exact match.) - if (gl_extensions.VersionGEThan(3, 3)) { - return gl_extensions.ver[0] * 100 + gl_extensions.ver[1] * 10; - } else if (gl_extensions.VersionGEThan(3, 2)) { - return 150; - } else if (gl_extensions.VersionGEThan(3, 1)) { - return 140; - } else if (gl_extensions.VersionGEThan(3, 0)) { - return 130; - } else if (gl_extensions.VersionGEThan(2, 1)) { - return 120; + if (gl_extensions.IsGLES) { + if (gl_extensions.GLES3) { + // GLSL version matches ES version. + return gl_extensions.ver[0] * 100 + gl_extensions.ver[1] * 10; + } else { + return 100; + } } else { - return 110; + // Used for shader translation and core contexts (Apple drives fail without an exact match.) + if (gl_extensions.VersionGEThan(3, 3)) { + return gl_extensions.ver[0] * 100 + gl_extensions.ver[1] * 10; + } else if (gl_extensions.VersionGEThan(3, 2)) { + return 150; + } else if (gl_extensions.VersionGEThan(3, 1)) { + return 140; + } else if (gl_extensions.VersionGEThan(3, 0)) { + return 130; + } else if (gl_extensions.VersionGEThan(2, 1)) { + return 120; + } else { + return 110; + } } } @@ -129,14 +138,20 @@ void CheckGLExtensions() { memset(&gl_extensions, 0, sizeof(gl_extensions)); gl_extensions.IsCoreContext = useCoreContext; -#ifdef USING_GLES2 - gl_extensions.IsGLES = !useCoreContext; -#endif - const char *renderer = (const char *)glGetString(GL_RENDERER); const char *versionStr = (const char *)glGetString(GL_VERSION); const char *glslVersionStr = (const char *)glGetString(GL_SHADING_LANGUAGE_VERSION); + +#ifdef USING_GLES2 + gl_extensions.IsGLES = !useCoreContext; +#else + if (strstr(versionStr, "OpenGL ES") == versionStr) { + // For desktops running GLES. + gl_extensions.IsGLES = true; + } +#endif + // Check vendor string to try and guess GPU const char *cvendor = (char *)glGetString(GL_VENDOR); // TODO: move this stuff to gpu_features.cpp @@ -160,12 +175,16 @@ void CheckGLExtensions() { gl_extensions.gpuVendor = GPU_VENDOR_IMGTEC; } else if (vendor == "Qualcomm") { gl_extensions.gpuVendor = GPU_VENDOR_QUALCOMM; + sscanf(renderer, "Adreno (TM) %d", &gl_extensions.modelNumber); } else if (vendor == "Broadcom") { gl_extensions.gpuVendor = GPU_VENDOR_BROADCOM; // Just for reference: Galaxy Y has renderer == "VideoCore IV HW" } else if (vendor == "Vivante Corporation") { gl_extensions.gpuVendor = GPU_VENDOR_VIVANTE; + } else if (vendor == "Apple Inc." || vendor == "Apple") { + gl_extensions.gpuVendor = GPU_VENDOR_APPLE; } else { + WARN_LOG(G3D, "Unknown GL vendor: '%s'", vendor.c_str()); gl_extensions.gpuVendor = GPU_VENDOR_UNKNOWN; } } else { @@ -208,12 +227,6 @@ void CheckGLExtensions() { } } -#ifndef USING_GLES2 - if (strstr(versionStr, "OpenGL ES") == versionStr) { - // For desktops running GLES. - gl_extensions.IsGLES = true; - } -#endif if (!gl_extensions.IsGLES) { // For desktop GL gl_extensions.ver[0] = parsed[0]; @@ -473,9 +486,11 @@ void CheckGLExtensions() { } } - // Now, Adreno lies. So let's override it. - if (gl_extensions.gpuVendor == GPU_VENDOR_QUALCOMM) { - WARN_LOG(G3D, "Detected Adreno - lowering int precision"); + // Now, old Adreno lies about supporting full precision integers. So let's override it. + // The model number comparison should probably be 400 or 500. This causes us to avoid depal-in-shader. + // It seems though that this caused large perf regressions on Adreno 5xx, so I've bumped it up to 600. + if (gl_extensions.gpuVendor == GPU_VENDOR_QUALCOMM && gl_extensions.modelNumber < 600) { + WARN_LOG(G3D, "Detected old Adreno - lowering reported int precision for safety"); gl_extensions.range[1][5][0] = 15; gl_extensions.range[1][5][1] = 15; } @@ -579,6 +594,8 @@ std::string ApplyGLSLPrelude(const std::string &source, uint32_t stage) { if (!gl_extensions.IsGLES && gl_extensions.IsCoreContext) { // We need to add a corresponding #version. Apple drivers fail without an exact match. version = StringFromFormat("#version %d\n", gl_extensions.GLSLVersion()); + } else if (gl_extensions.IsGLES && gl_extensions.GLES3) { + version = StringFromFormat("#version %d es\n", gl_extensions.GLSLVersion()); } if (stage == GL_FRAGMENT_SHADER) { temp = version + glsl_fragment_prelude + source; diff --git a/Common/GPU/OpenGL/GLFeatures.h b/Common/GPU/OpenGL/GLFeatures.h index bb1f5054a2a7..6a8f15beb00d 100644 --- a/Common/GPU/OpenGL/GLFeatures.h +++ b/Common/GPU/OpenGL/GLFeatures.h @@ -6,6 +6,7 @@ #include +// TODO: Replace with thin3d's vendor enum. enum { GPU_VENDOR_NVIDIA = 1, GPU_VENDOR_AMD = 2, @@ -15,6 +16,7 @@ enum { GPU_VENDOR_QUALCOMM = 6, // Adreno GPU_VENDOR_BROADCOM = 7, // Raspberry PI etc GPU_VENDOR_VIVANTE = 8, + GPU_VENDOR_APPLE = 9, GPU_VENDOR_UNKNOWN = 0, }; @@ -34,6 +36,7 @@ struct GLExtensions { int ver[3]; int gpuVendor; char model[128]; + int modelNumber; bool IsGLES; bool IsCoreContext; diff --git a/Common/GPU/OpenGL/GLQueueRunner.cpp b/Common/GPU/OpenGL/GLQueueRunner.cpp index d81688189a29..44e0a2da27e1 100644 --- a/Common/GPU/OpenGL/GLQueueRunner.cpp +++ b/Common/GPU/OpenGL/GLQueueRunner.cpp @@ -43,7 +43,8 @@ void GLQueueRunner::CreateDeviceObjects() { // An eternal optimist. sawOutOfMemory_ = false; - // Populate some strings from the GL thread. + // Populate some strings from the GL thread so they can be queried from thin3d. + // TODO: Merge with GLFeatures.cpp/h auto populate = [&](int name) { const GLubyte *value = glGetString(name); if (!value) @@ -55,9 +56,6 @@ void GLQueueRunner::CreateDeviceObjects() { populate(GL_RENDERER); populate(GL_VERSION); populate(GL_SHADING_LANGUAGE_VERSION); - if (!gl_extensions.IsCoreContext) { // Not OK to query this in core profile! - populate(GL_EXTENSIONS); - } CHECK_GL_ERROR_IF_DEBUG(); useDebugGroups_ = !gl_extensions.IsGLES && gl_extensions.VersionGEThan(4, 3); diff --git a/Common/GPU/OpenGL/thin3d_gl.cpp b/Common/GPU/OpenGL/thin3d_gl.cpp index 6695ae7728c6..fcce3aabbdc9 100644 --- a/Common/GPU/OpenGL/thin3d_gl.cpp +++ b/Common/GPU/OpenGL/thin3d_gl.cpp @@ -4,6 +4,8 @@ #include #include +#include "ppsspp_config.h" + #include "Common/Data/Convert/SmallDataConvert.h" #include "Common/Math/math_util.h" #include "Common/Math/lin/matrix4x4.h" @@ -134,25 +136,6 @@ static const unsigned short primToGL[] = { GL_TRIANGLES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, -#if !defined(USING_GLES2) // TODO: Remove when we have better headers - GL_PATCHES, - GL_LINES_ADJACENCY, - GL_LINE_STRIP_ADJACENCY, - GL_TRIANGLES_ADJACENCY, - GL_TRIANGLE_STRIP_ADJACENCY, -#elif !defined(IOS) - GL_POINTS, - GL_POINTS, - GL_POINTS, - GL_POINTS, - GL_POINTS, -#else - GL_POINTS, - GL_POINTS, - GL_POINTS, - GL_POINTS, - GL_POINTS, -#endif }; class OpenGLBuffer; @@ -380,7 +363,9 @@ class OpenGLContext : public DrawContext { // These functions should be self explanatory. void BindFramebufferAsRenderTarget(Framebuffer *fbo, const RenderPassInfo &rp, const char *tag) override; - // color must be 0, for now. + Framebuffer *GetCurrentRenderTarget() override { + return curRenderTarget_; + } void BindFramebufferAsTexture(Framebuffer *fbo, int binding, FBChannel channelBit, int attachment) override; void GetFramebufferDimensions(Framebuffer *fbo, int *w, int *h) override; @@ -459,6 +444,7 @@ class OpenGLContext : public DrawContext { case GPUVendor::VENDOR_ARM: return "VENDOR_ARM"; case GPUVendor::VENDOR_BROADCOM: return "VENDOR_BROADCOM"; case GPUVendor::VENDOR_VIVANTE: return "VENDOR_VIVANTE"; + case GPUVendor::VENDOR_APPLE: return "VENDOR_APPLE"; case GPUVendor::VENDOR_UNKNOWN: default: return "VENDOR_UNKNOWN"; @@ -506,6 +492,7 @@ class OpenGLContext : public DrawContext { int curVBufferOffsets_[4]{}; OpenGLBuffer *curIBuffer_ = nullptr; int curIBufferOffset_ = 0; + Framebuffer *curRenderTarget_ = nullptr; uint8_t stencilRef_ = 0; @@ -560,6 +547,7 @@ OpenGLContext::OpenGLContext() { case GPU_VENDOR_INTEL: caps_.vendor = GPUVendor::VENDOR_INTEL; break; case GPU_VENDOR_IMGTEC: caps_.vendor = GPUVendor::VENDOR_IMGTEC; break; case GPU_VENDOR_VIVANTE: caps_.vendor = GPUVendor::VENDOR_VIVANTE; break; + case GPU_VENDOR_APPLE: caps_.vendor = GPUVendor::VENDOR_APPLE; break; case GPU_VENDOR_UNKNOWN: default: caps_.vendor = GPUVendor::VENDOR_UNKNOWN; @@ -605,14 +593,24 @@ OpenGLContext::OpenGLContext() { bugs_.Infest(Bugs::PVR_GENMIPMAP_HEIGHT_GREATER); } +#if PPSSPP_PLATFORM(IOS) + // For some reason, this bug does not appear on M1. + if (caps_.vendor == GPUVendor::VENDOR_APPLE) { + bugs_.Infest(Bugs::BROKEN_FLAT_IN_SHADER); + } +#endif + shaderLanguageDesc_.Init(GLSL_1xx); + shaderLanguageDesc_.glslVersionNumber = gl_extensions.GLSLVersion(); + + snprintf(shaderLanguageDesc_.driverInfo, sizeof(shaderLanguageDesc_.driverInfo), + "%s - GLSL %d", gl_extensions.model, gl_extensions.GLSLVersion()); // Detect shader language features. if (gl_extensions.IsGLES) { shaderLanguageDesc_.gles = true; if (gl_extensions.GLES3) { shaderLanguageDesc_.shaderLanguage = ShaderLanguage::GLSL_3xx; - shaderLanguageDesc_.glslVersionNumber = 300; // GLSL ES 3.0 shaderLanguageDesc_.fragColor0 = "fragColor0"; shaderLanguageDesc_.texture = "texture"; shaderLanguageDesc_.glslES30 = true; @@ -623,7 +621,6 @@ OpenGLContext::OpenGLContext() { shaderLanguageDesc_.attribute = "in"; } else { shaderLanguageDesc_.shaderLanguage = ShaderLanguage::GLSL_1xx; - shaderLanguageDesc_.glslVersionNumber = 100; // GLSL ES 1.0 if (gl_extensions.EXT_gpu_shader4) { shaderLanguageDesc_.bitwiseOps = true; shaderLanguageDesc_.texelFetch = "texelFetch2D"; @@ -634,33 +631,28 @@ OpenGLContext::OpenGLContext() { } } } else { - if (gl_extensions.IsCoreContext) { - if (gl_extensions.VersionGEThan(3, 3, 0)) { - shaderLanguageDesc_.shaderLanguage = ShaderLanguage::GLSL_3xx; - shaderLanguageDesc_.glslVersionNumber = 330; - shaderLanguageDesc_.fragColor0 = "fragColor0"; - shaderLanguageDesc_.texture = "texture"; - shaderLanguageDesc_.glslES30 = true; - shaderLanguageDesc_.bitwiseOps = true; - shaderLanguageDesc_.texelFetch = "texelFetch"; - shaderLanguageDesc_.varying_vs = "out"; - shaderLanguageDesc_.varying_fs = "in"; - shaderLanguageDesc_.attribute = "in"; - } else if (gl_extensions.VersionGEThan(3, 0, 0)) { - // Hm, I think this is wrong. This should be outside "if (gl_extensions.IsCoreContext)". - shaderLanguageDesc_.shaderLanguage = ShaderLanguage::GLSL_1xx; - shaderLanguageDesc_.glslVersionNumber = 130; - shaderLanguageDesc_.fragColor0 = "fragColor0"; + // I don't know why we were checking for IsCoreContext here before. + if (gl_extensions.VersionGEThan(3, 3, 0)) { + shaderLanguageDesc_.shaderLanguage = ShaderLanguage::GLSL_3xx; + shaderLanguageDesc_.fragColor0 = "fragColor0"; + shaderLanguageDesc_.texture = "texture"; + shaderLanguageDesc_.glslES30 = true; + shaderLanguageDesc_.bitwiseOps = true; + shaderLanguageDesc_.texelFetch = "texelFetch"; + shaderLanguageDesc_.varying_vs = "out"; + shaderLanguageDesc_.varying_fs = "in"; + shaderLanguageDesc_.attribute = "in"; + } else if (gl_extensions.VersionGEThan(3, 0, 0)) { + shaderLanguageDesc_.shaderLanguage = ShaderLanguage::GLSL_1xx; + shaderLanguageDesc_.fragColor0 = "fragColor0"; + shaderLanguageDesc_.bitwiseOps = true; + shaderLanguageDesc_.texelFetch = "texelFetch"; + } else { + // This too... + shaderLanguageDesc_.shaderLanguage = ShaderLanguage::GLSL_1xx; + if (gl_extensions.EXT_gpu_shader4) { shaderLanguageDesc_.bitwiseOps = true; - shaderLanguageDesc_.texelFetch = "texelFetch"; - } else { - // This too... - shaderLanguageDesc_.shaderLanguage = ShaderLanguage::GLSL_1xx; - shaderLanguageDesc_.glslVersionNumber = 110; - if (gl_extensions.EXT_gpu_shader4) { - shaderLanguageDesc_.bitwiseOps = true; - shaderLanguageDesc_.texelFetch = "texelFetch2D"; - } + shaderLanguageDesc_.texelFetch = "texelFetch2D"; } } } @@ -1340,6 +1332,7 @@ void OpenGLContext::BindFramebufferAsRenderTarget(Framebuffer *fbo, const Render GLRRenderPassAction stencil = (GLRRenderPassAction)rp.stencil; renderManager_.BindFramebufferAsRenderTarget(fb ? fb->framebuffer_ : nullptr, color, depth, stencil, rp.clearColor, rp.clearDepth, rp.clearStencil, tag); + curRenderTarget_ = fb; } void OpenGLContext::CopyFramebufferImage(Framebuffer *fbsrc, int srcLevel, int srcX, int srcY, int srcZ, Framebuffer *fbdst, int dstLevel, int dstX, int dstY, int dstZ, int width, int height, int depth, int channelBits, const char *tag) { diff --git a/Common/GPU/Shader.cpp b/Common/GPU/Shader.cpp index 35fd9fa0351a..14b703f5449f 100644 --- a/Common/GPU/Shader.cpp +++ b/Common/GPU/Shader.cpp @@ -6,6 +6,27 @@ #include "ext/glslang/SPIRV/GlslangToSpv.h" +const char *ShaderLanguageAsString(ShaderLanguage lang) { + switch (lang) { + case GLSL_1xx: return "GLSL 1.x"; + case GLSL_3xx: return "GLSL 3.x"; + case GLSL_VULKAN: return "GLSL-VK"; + case HLSL_D3D9: return "HLSL-D3D9"; + case HLSL_D3D11: return "HLSL-D3D11"; + default: return "(combination)"; + } +} + +const char *ShaderStageAsString(ShaderStage stage) { + switch (stage) { + case ShaderStage::Fragment: return "Fragment"; + case ShaderStage::Vertex: return "Vertex"; + case ShaderStage::Geometry: return "Geometry"; + case ShaderStage::Compute: return "Compute"; + default: return "(unknown)"; + } +} + ShaderLanguageDesc::ShaderLanguageDesc(ShaderLanguage lang) { Init(lang); } @@ -15,6 +36,7 @@ void ShaderLanguageDesc::Init(ShaderLanguage lang) { switch (lang) { case GLSL_1xx: // Just used in the shader test, and as a basis for the others in DetectShaderLanguage. + // The real OpenGL initialization happens in thin3d_gl.cpp. glslVersionNumber = 110; attribute = "attribute"; varying_vs = "varying"; diff --git a/Common/GPU/Shader.h b/Common/GPU/Shader.h index 8a863f3c7f40..4fc5ba4f0a3e 100644 --- a/Common/GPU/Shader.h +++ b/Common/GPU/Shader.h @@ -19,6 +19,8 @@ inline bool ShaderLanguageIsOpenGL(ShaderLanguage lang) { return lang == GLSL_1xx || lang == GLSL_3xx; } +const char *ShaderLanguageAsString(ShaderLanguage lang); + enum class ShaderStage { Vertex, Fragment, @@ -26,6 +28,9 @@ enum class ShaderStage { Compute, }; +const char *ShaderStageAsString(ShaderStage lang); + + struct ShaderLanguageDesc { ShaderLanguageDesc() {} explicit ShaderLanguageDesc(ShaderLanguage lang); @@ -50,6 +55,7 @@ struct ShaderLanguageDesc { bool bitwiseOps = false; bool forceMatrix4x4 = false; bool coefsFromBuffers = false; + char driverInfo[128]; // Really only GL uses this. }; enum class UniformType : int8_t { diff --git a/Common/GPU/ShaderTranslation.cpp b/Common/GPU/ShaderTranslation.cpp index 229f0e29e596..5d92d2fd7d19 100644 --- a/Common/GPU/ShaderTranslation.cpp +++ b/Common/GPU/ShaderTranslation.cpp @@ -53,7 +53,7 @@ extern void init_resources(TBuiltInResource &Resources); -static EShLanguage GetLanguage(const ShaderStage stage) { +static EShLanguage GetShLanguageFromStage(const ShaderStage stage) { switch (stage) { case ShaderStage::Vertex: return EShLangVertex; case ShaderStage::Geometry: return EShLangGeometry; @@ -75,11 +75,6 @@ void ShaderTranslationShutdown() { #endif } -std::string Preprocess(std::string code, ShaderLanguage lang, ShaderStage stage) { - // This takes GL up to the version we need. - return code; -} - struct Builtin { const char *needle; const char *replacement; @@ -96,7 +91,7 @@ cbuffer data : register(b0) { )"; static const char *vulkanPrologue = -R"(#version 430 +R"(#version 450 #extension GL_ARB_separate_shader_objects : enable #extension GL_ARB_shading_language_420pack : enable )"; @@ -217,46 +212,46 @@ bool ConvertToVulkanGLSL(std::string *dest, TranslatedShaderMetadata *destMetada return true; } -bool TranslateShader(std::string *dest, ShaderLanguage destLang, TranslatedShaderMetadata *destMetadata, std::string src, ShaderLanguage srcLang, ShaderStage stage, std::string *errorMessage) { - if (srcLang != GLSL_3xx && srcLang != GLSL_1xx) +bool TranslateShader(std::string *dest, ShaderLanguage destLang, const ShaderLanguageDesc &desc, TranslatedShaderMetadata *destMetadata, std::string src, ShaderLanguage srcLang, ShaderStage stage, std::string *errorMessage) { + _assert_(errorMessage != nullptr); + + if (srcLang != GLSL_3xx && srcLang != GLSL_1xx) { + *errorMessage = StringFromFormat("Bad src shader language: %s", ShaderLanguageAsString(srcLang)); return false; + } if ((srcLang == GLSL_1xx || srcLang == GLSL_3xx) && destLang == GLSL_VULKAN) { // Let's just mess about at the string level, no need to recompile. bool result = ConvertToVulkanGLSL(dest, destMetadata, src, stage, errorMessage); return result; } - if (errorMessage) { - *errorMessage = ""; - } #if PPSSPP_PLATFORM(UWP) + *errorMessage = "No shader translation available (UWP)"; return false; #endif + *errorMessage = ""; + glslang::TProgram program; - const char *shaderStrings[1]; + const char *shaderStrings[1]{}; - TBuiltInResource Resources; + TBuiltInResource Resources{}; init_resources(Resources); // Don't enable SPIR-V and Vulkan rules when parsing GLSL. Our postshaders are written in oldschool GLES 2.0. EShMessages messages = EShMessages::EShMsgDefault; - EShLanguage shaderStage = GetLanguage(stage); - glslang::TShader shader(shaderStage); + EShLanguage shaderStage = GetShLanguageFromStage(stage); - std::string preprocessed = Preprocess(src, srcLang, stage); + glslang::TShader shader(shaderStage); shaderStrings[0] = src.c_str(); shader.setStrings(shaderStrings, 1); + + // TODO: Should set settings here based on srcLang. if (!shader.parse(&Resources, 100, EProfile::ECompatibilityProfile, false, false, messages)) { - ERROR_LOG(G3D, "%s", shader.getInfoLog()); - ERROR_LOG(G3D, "%s", shader.getInfoDebugLog()); - if (errorMessage) { - *errorMessage = shader.getInfoLog(); - (*errorMessage) += shader.getInfoDebugLog(); - } + *errorMessage = StringFromFormat("%s parser failure: %s\n%s", ShaderStageAsString(stage), shader.getInfoLog(), shader.getInfoDebugLog()); return false; // something didn't work } @@ -264,12 +259,7 @@ bool TranslateShader(std::string *dest, ShaderLanguage destLang, TranslatedShade program.addShader(&shader); if (!program.link(messages)) { - ERROR_LOG(G3D, "%s", shader.getInfoLog()); - ERROR_LOG(G3D, "%s", shader.getInfoDebugLog()); - if (errorMessage) { - *errorMessage = shader.getInfoLog(); - (*errorMessage) += shader.getInfoDebugLog(); - } + *errorMessage = StringFromFormat("%s linker failure: %s\n%s", ShaderStageAsString(stage), shader.getInfoLog(), shader.getInfoDebugLog()); return false; } @@ -285,7 +275,6 @@ bool TranslateShader(std::string *dest, ShaderLanguage destLang, TranslatedShade // Patch it up so spirv-cross accepts it. spirv[1] = glslang::EShTargetSpv_1_0; - // Alright, step 1 done. Now let's take this SPIR-V shader and output in our desired format. switch (destLang) { @@ -357,6 +346,7 @@ bool TranslateShader(std::string *dest, ShaderLanguage destLang, TranslatedShade spirv_cross::ShaderResources resources = glsl.get_shader_resources(); // Set some options. spirv_cross::CompilerGLSL::Options options; + options.es = desc.gles; options.version = gl_extensions.GLSLVersion(); // macOS OpenGL 4.1 implementation does not support GL_ARB_shading_language_420pack. // Prevent explicit binding location emission enabled in SPIRV-Cross by default. @@ -367,6 +357,7 @@ bool TranslateShader(std::string *dest, ShaderLanguage destLang, TranslatedShade return true; } default: + *errorMessage = StringFromFormat("Unsupported destination language: %s", ShaderLanguageAsString(destLang)); return false; } } diff --git a/Common/GPU/ShaderTranslation.h b/Common/GPU/ShaderTranslation.h index 3f1a80d3d6ac..cf6adcc6e985 100644 --- a/Common/GPU/ShaderTranslation.h +++ b/Common/GPU/ShaderTranslation.h @@ -29,4 +29,4 @@ struct TranslatedShaderMetadata { void ShaderTranslationInit(); void ShaderTranslationShutdown(); -bool TranslateShader(std::string *dst, ShaderLanguage destLang, TranslatedShaderMetadata *destMetadata, std::string src, ShaderLanguage srcLang, ShaderStage stage, std::string *errorMessage); +bool TranslateShader(std::string *dst, ShaderLanguage destLang, const ShaderLanguageDesc &desc, TranslatedShaderMetadata *destMetadata, std::string src, ShaderLanguage srcLang, ShaderStage stage, std::string *errorMessage); diff --git a/Common/GPU/ShaderWriter.cpp b/Common/GPU/ShaderWriter.cpp index 8494a905b507..8d8c27c49db5 100644 --- a/Common/GPU/ShaderWriter.cpp +++ b/Common/GPU/ShaderWriter.cpp @@ -12,10 +12,9 @@ const char *vulkan_glsl_preamble_fs = "#extension GL_ARB_conservative_depth : enable\n" "#extension GL_ARB_shader_image_load_store : enable\n" "#define splat3(x) vec3(x)\n" -"#define lowp\n" -"#define mediump\n" -"#define highp\n" "#define DISCARD discard\n" +"precision lowp float;\n" +"precision highp int;\n" "\n"; const char *hlsl_preamble_fs = @@ -48,9 +47,7 @@ const char *vulkan_glsl_preamble_vs = "#extension GL_ARB_shading_language_420pack : enable\n" "#define mul(x, y) ((x) * (y))\n" "#define splat3(x) vec3(x)\n" -"#define lowp\n" -"#define mediump\n" -"#define highp\n" +"precision highp float;\n" "\n"; const char *hlsl_preamble_vs = @@ -86,6 +83,8 @@ void ShaderWriter::Preamble(const char **gl_extensions, size_t num_gl_extensions case ShaderStage::Fragment: W(vulkan_glsl_preamble_fs); break; + default: + break; } break; case HLSL_D3D11: @@ -102,6 +101,8 @@ void ShaderWriter::Preamble(const char **gl_extensions, size_t num_gl_extensions W(hlsl_d3d11_preamble_fs); } break; + default: + break; } break; default: // OpenGL @@ -110,6 +111,8 @@ void ShaderWriter::Preamble(const char **gl_extensions, size_t num_gl_extensions for (size_t i = 0; i < num_gl_extensions; i++) { F("%s\n", gl_extensions[i]); } + // Print some system info - useful to gather information directly from screenshots. + F("// %s\n", lang_.driverInfo); switch (stage_) { case ShaderStage::Fragment: C("#define DISCARD discard\n"); @@ -126,6 +129,8 @@ void ShaderWriter::Preamble(const char **gl_extensions, size_t num_gl_extensions } C("#define gl_VertexIndex gl_VertexID\n"); break; + default: + break; } if (!lang_.gles) { C("#define lowp\n"); @@ -165,13 +170,14 @@ void ShaderWriter::BeginVSMain(Slice inputs, Slice uniform } case GLSL_VULKAN: for (auto &varying : varyings) { - F("layout(location = %d) out %s %s; // %s\n", varying.index, varying.type, varying.name, varying.semantic); + F("layout(location = %d) %s out %s %s; // %s\n", + varying.index, varying.precision ? varying.precision : "", varying.type, varying.name, varying.semantic); } C("void main() {\n"); break; default: // OpenGL for (auto &varying : varyings) { - F("%s %s %s; // %s (%d)\n", lang_.varying_vs, varying.type, varying.name, varying.semantic, varying.index); + F("%s %s %s %s; // %s (%d)\n", lang_.varying_vs, varying.precision ? varying.precision : "", varying.type, varying.name, varying.semantic, varying.index); } C("void main() {\n"); break; @@ -199,7 +205,7 @@ void ShaderWriter::BeginFSMain(Slice uniforms, Slice var break; case HLSL_D3D9: for (auto &uniform : uniforms) { - F(" %s %s : %s;\n", uniform.type, uniform.name, uniform.index); + F(" %s %s : register(c%d);\n", uniform.type, uniform.name, uniform.index); } // Let's do the varyings as parameters to main, no struct. C("vec4 main("); @@ -213,14 +219,14 @@ void ShaderWriter::BeginFSMain(Slice uniforms, Slice var break; case GLSL_VULKAN: for (auto &varying : varyings) { - F("layout(location = %d) in %s %s; // %s\n", varying.index, varying.type, varying.name, varying.semantic); + F("layout(location = %d) %s in %s %s; // %s\n", varying.index, varying.precision ? varying.precision : "", varying.type, varying.name, varying.semantic); } - C("layout (location = 0, index = 0) out vec4 fragColor0;\n"); + C("layout(location = 0, index = 0) out vec4 fragColor0;\n"); C("\nvoid main() {\n"); break; default: for (auto &varying : varyings) { - F("%s %s %s; // %s\n", lang_.varying_fs, varying.type, varying.name, varying.semantic); + F("%s %s %s %s; // %s\n", lang_.varying_fs, varying.precision ? varying.precision : "", varying.type, varying.name, varying.semantic); } if (!strcmp(lang_.fragColor0, "fragColor0")) { C("out vec4 fragColor0;\n"); @@ -264,6 +270,12 @@ void ShaderWriter::EndFSMain(const char *vec4_color_variable) { C("}\n"); } +void ShaderWriter::HighPrecisionFloat() { + if ((ShaderLanguageIsOpenGL(lang_.shaderLanguage) && lang_.gles) || lang_.shaderLanguage == GLSL_VULKAN) { + C("precision highp float;\n"); + } +} + void ShaderWriter::DeclareTexture2D(const char *name, int binding) { switch (lang_.shaderLanguage) { case HLSL_D3D11: @@ -287,6 +299,8 @@ void ShaderWriter::DeclareSampler2D(const char *name, int binding) { case HLSL_D3D11: F("SamplerState %s : register(s%d);\n", name, binding); break; + default: + break; } } diff --git a/Common/GPU/ShaderWriter.h b/Common/GPU/ShaderWriter.h index cbb2b34aea4e..3aa1a4df2915 100644 --- a/Common/GPU/ShaderWriter.h +++ b/Common/GPU/ShaderWriter.h @@ -33,6 +33,7 @@ struct VaryingDef { const char *name; const char *semantic; int index; + const char *precision; }; class ShaderWriter { @@ -63,6 +64,10 @@ class ShaderWriter { // F: Formats into the buffer. ShaderWriter &F(const char *format, ...); + // Useful for fragment shaders in GLES. + // We always default integers to high precision. + void HighPrecisionFloat(); + // Several of the shader languages ignore samplers, beware of that. void DeclareSampler2D(const char *name, int binding); void DeclareTexture2D(const char *name, int binding); diff --git a/Common/GPU/Vulkan/VulkanDebug.cpp b/Common/GPU/Vulkan/VulkanDebug.cpp index f165d736095c..acfd81b1d545 100644 --- a/Common/GPU/Vulkan/VulkanDebug.cpp +++ b/Common/GPU/Vulkan/VulkanDebug.cpp @@ -37,6 +37,11 @@ VKAPI_ATTR VkBool32 VKAPI_CALL VulkanDebugUtilsCallback( // UNASSIGNED-CoreValidation-Shader-OutputNotConsumed - benign perf warning return false; } + if (messageCode == 1303270965) { + // Benign perf warning, image blit using GENERAL layout. + // UNASSIGNED + return false; + } const char *pLayerPrefix = ""; if (messageSeverity & VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT) { diff --git a/Common/GPU/Vulkan/VulkanImage.cpp b/Common/GPU/Vulkan/VulkanImage.cpp index 5301a47803c9..c6b99f28d98a 100644 --- a/Common/GPU/Vulkan/VulkanImage.cpp +++ b/Common/GPU/Vulkan/VulkanImage.cpp @@ -196,7 +196,8 @@ void VulkanTexture::ClearMip(VkCommandBuffer cmd, int mip, uint32_t value) { vkCmdClearColorImage(cmd, image_, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, &clearVal, 1, &range); } -void VulkanTexture::GenerateMip(VkCommandBuffer cmd, int mip) { +// Low-quality mipmap generation by bilinear blit, but works okay. +void VulkanTexture::GenerateMip(VkCommandBuffer cmd, int mip, VkImageLayout imageLayout) { _assert_msg_(mip != 0, "Cannot generate the first level"); _assert_msg_(mip < numMips_, "Cannot generate mipmaps past the maximum created (%d vs %d)", mip, numMips_); VkImageBlit blit{}; @@ -214,16 +215,20 @@ void VulkanTexture::GenerateMip(VkCommandBuffer cmd, int mip) { blit.dstOffsets[1].y = height_ >> mip; blit.dstOffsets[1].z = 1; + // TODO: We could do better with the image transitions - would be enough with one per level + // for the memory barrier, then one final one for the whole stack when done. This function + // currently doesn't have a global enough view, though. + // We should also coalesce barriers across multiple texture uploads in a frame and all kinds of other stuff, but... + TransitionImageLayout2(cmd, image_, mip - 1, 1, VK_IMAGE_ASPECT_COLOR_BIT, - VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, + imageLayout, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT); - // Low-quality mipmap generation, but works okay. - vkCmdBlitImage(cmd, image_, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, image_, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, &blit, VK_FILTER_LINEAR); + vkCmdBlitImage(cmd, image_, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, image_, imageLayout, 1, &blit, VK_FILTER_LINEAR); TransitionImageLayout2(cmd, image_, mip - 1, 1, VK_IMAGE_ASPECT_COLOR_BIT, - VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, + VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, imageLayout, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_ACCESS_TRANSFER_READ_BIT, VK_ACCESS_TRANSFER_WRITE_BIT); } diff --git a/Common/GPU/Vulkan/VulkanImage.h b/Common/GPU/Vulkan/VulkanImage.h index 0745e0e3523f..be0367aee083 100644 --- a/Common/GPU/Vulkan/VulkanImage.h +++ b/Common/GPU/Vulkan/VulkanImage.h @@ -21,7 +21,7 @@ class VulkanTexture { bool CreateDirect(VkCommandBuffer cmd, VulkanDeviceAllocator *allocator, int w, int h, int numMips, VkFormat format, VkImageLayout initialLayout, VkImageUsageFlags usage = VK_IMAGE_USAGE_TRANSFER_DST_BIT | VK_IMAGE_USAGE_SAMPLED_BIT, const VkComponentMapping *mapping = nullptr); void ClearMip(VkCommandBuffer cmd, int mip, uint32_t value); void UploadMip(VkCommandBuffer cmd, int mip, int mipWidth, int mipHeight, VkBuffer buffer, uint32_t offset, size_t rowLength); // rowLength is in pixels - void GenerateMip(VkCommandBuffer cmd, int mip); + void GenerateMip(VkCommandBuffer cmd, int mip, VkImageLayout imageLayout); void EndCreate(VkCommandBuffer cmd, bool vertexTexture = false, VkImageLayout layout = VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL); // When loading mips from compute shaders, you need to pass VK_IMAGE_LAYOUT_GENERAL to the above function. diff --git a/Common/GPU/Vulkan/VulkanLoader.cpp b/Common/GPU/Vulkan/VulkanLoader.cpp index f319979c8ad1..ad446062725c 100644 --- a/Common/GPU/Vulkan/VulkanLoader.cpp +++ b/Common/GPU/Vulkan/VulkanLoader.cpp @@ -236,8 +236,10 @@ static const char *device_name_blacklist[] = { }; static const char *so_names[] = { -#if defined(__APPLE__) - "libMoltenVK.dylib", +#ifdef IOS + "@executable_path/Frameworks/libMoltenVK.dylib", +#elif defined(PPSSPP_PLATFORM_MAC) + "@executable_path/../Frameworks/libMoltenVK.dylib", #else "libvulkan.so", #if !defined(__ANDROID__) diff --git a/Common/GPU/Vulkan/VulkanQueueRunner.cpp b/Common/GPU/Vulkan/VulkanQueueRunner.cpp index 2140824ab70a..56fb09dea2cc 100644 --- a/Common/GPU/Vulkan/VulkanQueueRunner.cpp +++ b/Common/GPU/Vulkan/VulkanQueueRunner.cpp @@ -8,6 +8,23 @@ // Debug help: adb logcat -s DEBUG PPSSPPNativeActivity PPSSPP NativeGLView NativeRenderer NativeSurfaceView PowerSaveModeReceiver InputDeviceState +static void MergeRenderAreaRectInto(VkRect2D *dest, VkRect2D &src) { + if (dest->offset.x > src.offset.x) { + dest->extent.width += (dest->offset.x - src.offset.x); + dest->offset.x = src.offset.x; + } + if (dest->offset.y > src.offset.y) { + dest->extent.height += (dest->offset.y - src.offset.y); + dest->offset.y = src.offset.y; + } + if (dest->extent.width < src.extent.width) { + dest->extent.width = src.extent.width; + } + if (dest->extent.height < src.extent.height) { + dest->extent.height = src.extent.height; + } +} + void VulkanQueueRunner::CreateDeviceObjects() { INFO_LOG(G3D, "VulkanQueueRunner::CreateDeviceObjects"); InitBackbufferRenderPass(); @@ -304,6 +321,8 @@ void VulkanQueueRunner::PreprocessSteps(std::vector &steps) { steps[i]->render.stencil = VKRRenderPassAction::CLEAR; steps[i]->render.clearStencil = steps[j]->render.clearStencil; } + MergeRenderAreaRectInto(&steps[i]->render.renderArea, steps[j]->render.renderArea); + // Cheaply skip the first step. steps[j]->stepType = VKRStepType::RENDER_SKIP; break; @@ -678,6 +697,7 @@ void VulkanQueueRunner::ApplyRenderPassMerge(std::vector &steps) { // Also slurp up any pretransitions. dst->preTransitions.insert(dst->preTransitions.end(), src->preTransitions.begin(), src->preTransitions.end()); dst->commands.insert(dst->commands.end(), src->commands.begin(), src->commands.end()); + MergeRenderAreaRectInto(&dst->render.renderArea, src->render.renderArea); // So we don't consider it for other things, maybe doesn't matter. src->dependencies.clear(); src->stepType = VKRStepType::RENDER_SKIP; @@ -1214,12 +1234,12 @@ void VulkanQueueRunner::PerformRenderPass(const VKRStep &step, VkCommandBuffer c VKRFramebuffer *fb = step.render.framebuffer; - VkPipeline lastPipeline = VK_NULL_HANDLE; - auto &commands = step.commands; // We can do a little bit of state tracking here to eliminate some calls into the driver. // The stencil ones are very commonly mostly redundant so let's eliminate them where possible. + // Might also want to consider scissor and viewport. + VkPipeline lastPipeline = VK_NULL_HANDLE; int lastStencilWriteMask = -1; int lastStencilCompareMask = -1; int lastStencilReference = -1; diff --git a/Common/GPU/Vulkan/VulkanRenderManager.cpp b/Common/GPU/Vulkan/VulkanRenderManager.cpp index b70848cb2837..5ef997df44e9 100644 --- a/Common/GPU/Vulkan/VulkanRenderManager.cpp +++ b/Common/GPU/Vulkan/VulkanRenderManager.cpp @@ -346,20 +346,28 @@ void VulkanRenderManager::DestroyBackbuffers() { StopThread(); vulkan_->WaitUntilQueueIdle(); - for (uint32_t i = 0; i < swapchainImageCount_; i++) { - vulkan_->Delete().QueueDeleteImageView(swapchainImages_[i].view); + for (auto &image : swapchainImages_) { + vulkan_->Delete().QueueDeleteImageView(image.view); + } + swapchainImages_.clear(); + + if (depth_.view) { + vulkan_->Delete().QueueDeleteImageView(depth_.view); + } + if (depth_.image) { + vulkan_->Delete().QueueDeleteImage(depth_.image); + } + if (depth_.mem) { + vulkan_->Delete().QueueDeleteDeviceMemory(depth_.mem); } - vulkan_->Delete().QueueDeleteImageView(depth_.view); - vulkan_->Delete().QueueDeleteImage(depth_.image); - vulkan_->Delete().QueueDeleteDeviceMemory(depth_.mem); + depth_ = {}; for (uint32_t i = 0; i < framebuffers_.size(); i++) { _dbg_assert_(framebuffers_[i] != VK_NULL_HANDLE); vulkan_->Delete().QueueDeleteFramebuffer(framebuffers_[i]); } framebuffers_.clear(); - swapchainImages_.clear(); - VLOG("Backbuffers Destroyed"); + INFO_LOG(G3D, "Backbuffers destroyed"); } VulkanRenderManager::~VulkanRenderManager() { @@ -434,7 +442,6 @@ void VulkanRenderManager::BeginFrame(bool enableProfiling) { int curFrame = vulkan_->GetCurFrame(); FrameData &frameData = frameData_[curFrame]; - frameData.profilingEnabled_ = enableProfiling; // Make sure the very last command buffer from the frame before the previous has been fully executed. if (useThread_) { @@ -447,9 +454,12 @@ void VulkanRenderManager::BeginFrame(bool enableProfiling) { } VLOG("PUSH: Fencing %d", curFrame); + vkWaitForFences(device, 1, &frameData.fence, true, UINT64_MAX); vkResetFences(device, 1, &frameData.fence); + // Can't set this until after the fence. + frameData.profilingEnabled_ = enableProfiling; frameData.readbackFenceUsed = false; uint64_t queryResults[MAX_TIMESTAMP_QUERIES]; @@ -502,6 +512,7 @@ void VulkanRenderManager::BeginFrame(bool enableProfiling) { if (frameData.profilingEnabled_) { // For various reasons, we need to always use an init cmd buffer in this case to perform the vkCmdResetQueryPool, // unless we want to limit ourselves to only measure the main cmd buffer. + // Later versions of Vulkan have support for clearing queries on the CPU timeline, but we don't want to rely on that. // Reserve the first two queries for initCmd. frameData.profile.timestampDescriptions.push_back("initCmd Begin"); frameData.profile.timestampDescriptions.push_back("initCmd"); @@ -551,7 +562,7 @@ void VulkanRenderManager::EndCurRenderStep() { void VulkanRenderManager::BindFramebufferAsRenderTarget(VKRFramebuffer *fb, VKRRenderPassAction color, VKRRenderPassAction depth, VKRRenderPassAction stencil, uint32_t clearColor, float clearDepth, uint8_t clearStencil, const char *tag) { _dbg_assert_(insideFrame_); - // Eliminate dupes, instantly convert to a clear if possible. + // Eliminate dupes (bind of the framebuffer we already are rendering to), instantly convert to a clear if possible. if (!steps_.empty() && steps_.back()->stepType == VKRStepType::RENDER && steps_.back()->render.framebuffer == fb) { u32 clearMask = 0; if (color == VKRRenderPassAction::CLEAR) { @@ -587,6 +598,7 @@ void VulkanRenderManager::BindFramebufferAsRenderTarget(VKRFramebuffer *fb, VKRR data.clear.clearStencil = clearStencil; data.clear.clearMask = clearMask; curRenderStep_->commands.push_back(data); + curRenderArea_.SetRect(0, 0, curWidth_, curHeight_); } return; } @@ -667,6 +679,10 @@ void VulkanRenderManager::BindFramebufferAsRenderTarget(VKRFramebuffer *fb, VKRR } } + if (color == VKRRenderPassAction::CLEAR || depth == VKRRenderPassAction::CLEAR || stencil == VKRRenderPassAction::CLEAR) { + curRenderArea_.SetRect(0, 0, curWidth_, curHeight_); + } + // See above - we add a clear afterward if only one side for depth/stencil CLEAR/KEEP. if (lateClearMask != 0) { VkRenderData data{ VKRRenderCommand::CLEAR }; diff --git a/Common/GPU/Vulkan/thin3d_vulkan.cpp b/Common/GPU/Vulkan/thin3d_vulkan.cpp index b5ac0fb8c155..e0ffa8f644b2 100644 --- a/Common/GPU/Vulkan/thin3d_vulkan.cpp +++ b/Common/GPU/Vulkan/thin3d_vulkan.cpp @@ -215,7 +215,7 @@ bool VKShaderModule::Compile(VulkanContext *vulkan, ShaderLanguage language, con std::vector spirv; std::string errorMessage; if (!GLSLtoSPV(vkstage_, source_.c_str(), GLSLVariant::VULKAN, spirv, &errorMessage)) { - INFO_LOG(G3D, "Shader compile to module failed: %s", errorMessage.c_str()); + WARN_LOG(G3D, "Shader compile to module failed: %s", errorMessage.c_str()); return false; } @@ -231,6 +231,7 @@ bool VKShaderModule::Compile(VulkanContext *vulkan, ShaderLanguage language, con if (vulkan->CreateShaderModule(spirv, &module_)) { ok_ = true; } else { + WARN_LOG(G3D, "vkCreateShaderModule failed"); ok_ = false; } return ok_; @@ -392,7 +393,9 @@ class VKContext : public DrawContext { // These functions should be self explanatory. void BindFramebufferAsRenderTarget(Framebuffer *fbo, const RenderPassInfo &rp, const char *tag) override; - // color must be 0, for now. + Framebuffer *GetCurrentRenderTarget() override { + return curFramebuffer_; + } void BindFramebufferAsTexture(Framebuffer *fbo, int binding, FBChannel channelBit, int attachment) override; uintptr_t GetFramebufferAPITexture(Framebuffer *fbo, int channelBit, int attachment) override; @@ -517,7 +520,7 @@ class VKContext : public DrawContext { VkDescriptorSetLayout descriptorSetLayout_ = VK_NULL_HANDLE; VkPipelineLayout pipelineLayout_ = VK_NULL_HANDLE; VkPipelineCache pipelineCache_ = VK_NULL_HANDLE; - VKFramebuffer *curFramebuffer_ = nullptr; + Framebuffer *curFramebuffer_ = nullptr; VkDevice device_; VkQueue queue_; @@ -752,7 +755,7 @@ bool VKTexture::Create(VkCommandBuffer cmd, VulkanPushBuffer *push, const Textur } // Generate the rest of the mips automatically. for (; i < mipLevels_; i++) { - vkTex_->GenerateMip(cmd, i); + vkTex_->GenerateMip(cmd, i, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL); } } vkTex_->EndCreate(cmd, false); @@ -1279,7 +1282,7 @@ ShaderModule *VKContext::CreateShaderModule(ShaderStage stage, ShaderLanguage la if (shader->Compile(vulkan_, language, data, size)) { return shader; } else { - ERROR_LOG(G3D, "Failed to compile shader: %s", (const char *)data); + ERROR_LOG(G3D, "Failed to compile shader:\n%s", (const char *)data); shader->Release(); return nullptr; } @@ -1539,7 +1542,6 @@ void VKContext::BindFramebufferAsRenderTarget(Framebuffer *fbo, const RenderPass curFramebuffer_ = fb; } -// color must be 0, for now. void VKContext::BindFramebufferAsTexture(Framebuffer *fbo, int binding, FBChannel channelBit, int attachment) { VKFramebuffer *fb = (VKFramebuffer *)fbo; diff --git a/Common/GPU/thin3d.h b/Common/GPU/thin3d.h index d29ac9184226..40442c8f48cc 100644 --- a/Common/GPU/thin3d.h +++ b/Common/GPU/thin3d.h @@ -222,6 +222,7 @@ enum class GPUVendor { VENDOR_IMGTEC, // PowerVR VENDOR_BROADCOM, // Raspberry VENDOR_VIVANTE, + VENDOR_APPLE, }; enum class NativeObject { @@ -314,6 +315,7 @@ class Bugs { PVR_GENMIPMAP_HEIGHT_GREATER = 3, BROKEN_NAN_IN_CONDITIONAL = 4, COLORWRITEMASK_BROKEN_WITH_DEPTHTEST = 5, + BROKEN_FLAT_IN_SHADER = 6, }; protected: @@ -578,6 +580,7 @@ class DrawContext { // These functions should be self explanatory. // Binding a zero render target means binding the backbuffer. virtual void BindFramebufferAsRenderTarget(Framebuffer *fbo, const RenderPassInfo &rp, const char *tag) = 0; + virtual Framebuffer *GetCurrentRenderTarget() = 0; // binding must be < MAX_TEXTURE_SLOTS (0, 1 are okay if it's 2). virtual void BindFramebufferAsTexture(Framebuffer *fbo, int binding, FBChannel channelBit, int attachment) = 0; diff --git a/Common/LogManager.cpp b/Common/LogManager.cpp index d518df7a99ae..113dc8200a62 100644 --- a/Common/LogManager.cpp +++ b/Common/LogManager.cpp @@ -156,6 +156,9 @@ LogManager::~LogManager() { #endif } + // Make sure we don't shutdown while logging. RemoveListener locks too, but there are gaps. + std::lock_guard listeners_lock(listeners_lock_); + if (fileLog_) delete fileLog_; #if !defined(MOBILE_DEVICE) || defined(_DEBUG) @@ -262,6 +265,7 @@ bool LogManager::IsEnabled(LogTypes::LOG_LEVELS level, LogTypes::LOG_TYPE type) } void LogManager::Init(bool *enabledSetting) { + _assert_(logManager_ == nullptr); logManager_ = new LogManager(enabledSetting); } @@ -304,8 +308,10 @@ void FileLogListener::Log(const LogMessage &message) { } void OutputDebugStringLogListener::Log(const LogMessage &message) { + char buffer[4096]; + snprintf(buffer, sizeof(buffer), "%s %s %s", message.timestamp, message.header, message.msg.c_str()); #if _MSC_VER - OutputDebugStringUTF8(message.msg.c_str()); + OutputDebugStringUTF8(buffer); #endif } diff --git a/Common/LogManager.h b/Common/LogManager.h index 9fcff28d8002..f5d4c61f12d0 100644 --- a/Common/LogManager.h +++ b/Common/LogManager.h @@ -22,6 +22,7 @@ #include #include #include +#include #include "Common/Data/Format/IniFile.h" #include "Common/CommonFuncs.h" diff --git a/Common/Math/expression_parser.cpp b/Common/Math/expression_parser.cpp index 9499cce7e0c8..e24c056a07da 100644 --- a/Common/Math/expression_parser.cpp +++ b/Common/Math/expression_parser.cpp @@ -462,7 +462,7 @@ bool parsePostfixExpression(PostfixExpression& exp, IExpressionFunctions* funcs, break; case EXOP_SIGNMINUS: // -0 if (useFloat) - valueStack.push_back(0.0 - fArg[0]); + valueStack.push_back((uint32_t)(0.0f - fArg[0])); else valueStack.push_back(0-arg[0]); break; @@ -474,7 +474,7 @@ bool parsePostfixExpression(PostfixExpression& exp, IExpressionFunctions* funcs, break; case EXOP_MUL: // a*b if (useFloat) - valueStack.push_back(fArg[1]*fArg[0]); + valueStack.push_back((uint32_t)(fArg[1] * fArg[0])); else valueStack.push_back(arg[1]*arg[0]); break; @@ -485,7 +485,7 @@ bool parsePostfixExpression(PostfixExpression& exp, IExpressionFunctions* funcs, return false; } if (useFloat) - valueStack.push_back(fArg[1]/fArg[0]); + valueStack.push_back((uint32_t)(fArg[1] / fArg[0])); else valueStack.push_back(arg[1]/arg[0]); break; @@ -499,13 +499,13 @@ bool parsePostfixExpression(PostfixExpression& exp, IExpressionFunctions* funcs, break; case EXOP_ADD: // a+b if (useFloat) - valueStack.push_back(fArg[1]+fArg[0]); + valueStack.push_back((uint32_t)(fArg[1] + fArg[0])); else valueStack.push_back(arg[1]+arg[0]); break; case EXOP_SUB: // a-b if (useFloat) - valueStack.push_back(fArg[1]-fArg[0]); + valueStack.push_back((uint32_t)(fArg[1] - fArg[0])); else valueStack.push_back(arg[1]-arg[0]); break; diff --git a/Common/MemArenaPosix.cpp b/Common/MemArenaPosix.cpp index 65a812001b29..7df84ab35c19 100644 --- a/Common/MemArenaPosix.cpp +++ b/Common/MemArenaPosix.cpp @@ -26,6 +26,11 @@ #include #include +#ifndef MAP_NORESERVE +// Not implemented on BSDs +#define MAP_NORESERVE 0 +#endif + #include "Common/Log.h" #include "Common/File/FileUtil.h" #include "Common/MemoryUtil.h" @@ -102,13 +107,13 @@ void MemArena::ReleaseView(void* view, size_t size) { u8* MemArena::Find4GBBase() { // Now, create views in high memory where there's plenty of space. -#if PPSSPP_ARCH(64BIT) && !defined(USE_ADDRESS_SANITIZER) +#if PPSSPP_ARCH(64BIT) && !defined(USE_ASAN) // We should probably just go look in /proc/self/maps for some free space. // But let's try the anonymous mmap trick, just like on 32-bit, but bigger and // aligned to 4GB for the movk trick. We can ensure that we get an aligned 4GB // address by grabbing 8GB and aligning the pointer. const uint64_t EIGHT_GIGS = 0x200000000ULL; - void *base = mmap(0, EIGHT_GIGS, PROT_READ | PROT_WRITE, MAP_ANON | MAP_SHARED | MAP_NORESERVE, -1, 0); + void *base = mmap(0, EIGHT_GIGS, PROT_NONE, MAP_ANON | MAP_PRIVATE | MAP_NORESERVE, -1, 0); if (base && base != MAP_FAILED) { INFO_LOG(MEMMAP, "base: %p", base); uint64_t aligned_base = ((uint64_t)base + 0xFFFFFFFF) & ~0xFFFFFFFFULL; diff --git a/Common/MemoryUtil.cpp b/Common/MemoryUtil.cpp index 7076da2fc998..d99bebe95626 100644 --- a/Common/MemoryUtil.cpp +++ b/Common/MemoryUtil.cpp @@ -281,6 +281,8 @@ bool PlatformIsWXExclusive() { // This might also come in useful for UWP (Universal Windows Platform) if I'm understanding things correctly. #if defined(IOS) || PPSSPP_PLATFORM(UWP) || defined(__OpenBSD__) return true; +#elif PPSSPP_PLATFORM(MAC) && PPSSPP_ARCH(ARM64) + return true; #else // Returning true here lets you test the W^X path on Windows and other non-W^X platforms. return false; diff --git a/Common/MipsCPUDetect.cpp b/Common/MipsCPUDetect.cpp index 5edb3ebe7876..eb35259d3abc 100644 --- a/Common/MipsCPUDetect.cpp +++ b/Common/MipsCPUDetect.cpp @@ -17,10 +17,13 @@ #ifdef __mips__ -#include "Common.h" -#include "CPUDetect.h" -#include "StringUtils.h" -#include "FileUtil.h" +#include "Common/Common.h" +#include "Common/CPUDetect.h" +#include "Common/StringUtils.h" +#include "Common/File/FileUtil.h" +#include "Common/Data/Encoding/Utf8.h" +#include +#include // Only Linux platforms have /proc/cpuinfo #if defined(__linux__) diff --git a/Common/Net/HTTPClient.cpp b/Common/Net/HTTPClient.cpp index 41cf3506253a..1c13d95f901f 100644 --- a/Common/Net/HTTPClient.cpp +++ b/Common/Net/HTTPClient.cpp @@ -4,13 +4,18 @@ #include "Common/StringUtils.h" #ifndef _WIN32 +#include #include #include #include #include +#include #include #define closesocket close #else +#ifndef NOMINMAX +#define NOMINMAX +#endif #include #include #include @@ -48,6 +53,19 @@ inline unsigned short myhtons(unsigned short x) { return (x >> 8) | (x << 8); } +const char *DNSTypeAsString(DNSType type) { + switch (type) { + case DNSType::IPV4: + return "IPV4"; + case DNSType::IPV6: + return "IPV6"; + case DNSType::ANY: + return "ANY"; + default: + return "N/A"; + } +} + bool Connection::Resolve(const char *host, int port, DNSType type) { if ((intptr_t)sock_ != -1) { ERROR_LOG(IO, "Resolve: Already have a socket"); @@ -66,8 +84,8 @@ bool Connection::Resolve(const char *host, int port, DNSType type) { std::string err; if (!net::DNSResolve(host, port_str, &resolved_, err, type)) { - ERROR_LOG(IO, "Failed to resolve host %s: %s", host, err.c_str()); - // So that future calls fail. + WARN_LOG(IO, "Failed to resolve host '%s': '%s' (%s)", host, err.c_str(), DNSTypeAsString(type)); + // Zero port so that future calls fail. port_ = 0; return false; } @@ -353,6 +371,7 @@ int Client::ReadResponseHeaders(Buffer *readbuf, std::vector &respo if (code_pos != line.npos) { code = atoi(&line[code_pos]); } else { + ERROR_LOG(IO, "Code not parse HTTP status code"); return -1; } @@ -364,6 +383,7 @@ int Client::ReadResponseHeaders(Buffer *readbuf, std::vector &respo } if (responseHeaders.size() == 0) { + ERROR_LOG(IO, "No HTTP response headers"); return -1; } diff --git a/Common/Net/HTTPClient.h b/Common/Net/HTTPClient.h index 731ff75dd543..d76e57d1b9a4 100644 --- a/Common/Net/HTTPClient.h +++ b/Common/Net/HTTPClient.h @@ -7,19 +7,6 @@ #include "Common/Net/Resolve.h" -#ifdef _WIN32 -#ifndef NOMINMAX -#define NOMINMAX -#endif -#include -#include -#else -#include -#include -#include -#include -#endif - #include "Common/Buffer.h" namespace net { diff --git a/Common/Net/HTTPHeaders.cpp b/Common/Net/HTTPHeaders.cpp index acb554ee7011..ef19d3bc9d9b 100644 --- a/Common/Net/HTTPHeaders.cpp +++ b/Common/Net/HTTPHeaders.cpp @@ -33,7 +33,7 @@ bool RequestHeader::GetParamValue(const char *param_name, std::string *value) co for (size_t i = 0; i < v.size(); i++) { std::vector parts; SplitString(v[i], '=', parts); - INFO_LOG(IO, "Param: %s Value: %s", parts[0].c_str(), parts[1].c_str()); + DEBUG_LOG(IO, "Param: %s Value: %s", parts[0].c_str(), parts[1].c_str()); if (parts[0] == param_name) { *value = parts[1]; return true; @@ -121,13 +121,13 @@ int RequestHeader::ParseHttpHeader(const char *buffer) { if (!strncasecmp(key, "User-Agent", key_len)) { user_agent = new char[value_len + 1]; memcpy(user_agent, buffer, value_len + 1); - INFO_LOG(IO, "user-agent: %s", user_agent); + VERBOSE_LOG(IO, "user-agent: %s", user_agent); } else if (!strncasecmp(key, "Referer", key_len)) { referer = new char[value_len + 1]; memcpy(referer, buffer, value_len + 1); } else if (!strncasecmp(key, "Content-Length", key_len)) { content_length = atoi(buffer); - INFO_LOG(IO, "Content-Length: %i", (int)content_length); + VERBOSE_LOG(IO, "Content-Length: %i", (int)content_length); } else { std::string key_str(key, key_len); std::transform(key_str.begin(), key_str.end(), key_str.begin(), tolower); @@ -150,12 +150,12 @@ void RequestHeader::ParseHeaders(net::InputSink *sink) { line_count++; if (type == SIMPLE) { // Done! - INFO_LOG(IO, "Simple: Done parsing http request."); + VERBOSE_LOG(IO, "Simple: Done parsing http request."); break; } } - INFO_LOG(IO, "finished parsing request."); + VERBOSE_LOG(IO, "finished parsing request."); ok = line_count > 1; } diff --git a/Common/Net/HTTPServer.cpp b/Common/Net/HTTPServer.cpp index da114da85aa2..1deb45f72cd8 100644 --- a/Common/Net/HTTPServer.cpp +++ b/Common/Net/HTTPServer.cpp @@ -54,7 +54,7 @@ Request::Request(int fd) header_.ParseHeaders(in_); if (header_.ok) { - INFO_LOG(IO, "The request carried with it %i bytes", (int)header_.content_length); + VERBOSE_LOG(IO, "The request carried with it %i bytes", (int)header_.content_length); } else { Close(); } @@ -171,8 +171,13 @@ bool Server::Listen4(int port) { setsockopt(listener_, SOL_SOCKET, SO_REUSEADDR, (const char *)&opt, sizeof(opt)); if (bind(listener_, (struct sockaddr *)&server_addr, sizeof(server_addr)) < 0) { +#if PPSSPP_PLATFORM(WINDOWS) + int err = WSAGetLastError(); +#else + int err = errno; +#endif + ERROR_LOG(IO, "Failed to bind to port %d, error=%d - Bailing (ipv4)", port, err); closesocket(listener_); - ERROR_LOG(IO, "Failed to bind to port %d. Bailing.", port); return false; } @@ -216,8 +221,13 @@ bool Server::Listen6(int port, bool ipv6_only) { setsockopt(listener_, IPPROTO_IPV6, IPV6_V6ONLY, (const char *)&opt, sizeof(opt)); if (bind(listener_, (struct sockaddr *)&server_addr, sizeof(server_addr)) < 0) { +#if PPSSPP_PLATFORM(WINDOWS) + int err = WSAGetLastError(); +#else + int err = errno; +#endif + ERROR_LOG(IO, "Failed to bind to port %d, error=%d - Bailing (ipv6)", port, err); closesocket(listener_); - ERROR_LOG(IO, "Failed to bind to port %d. Bailing.", port); return false; } diff --git a/Common/Net/Sinks.cpp b/Common/Net/Sinks.cpp index 2d15de15cfd1..86f3841e2695 100644 --- a/Common/Net/Sinks.cpp +++ b/Common/Net/Sinks.cpp @@ -164,13 +164,19 @@ bool InputSink::Skip(size_t bytes) { return true; } +void InputSink::Discard() { + read_ = 0; + write_ = 0; + valid_ = 0; +} + void InputSink::Fill() { // Avoid small reads if possible. if (BUFFER_SIZE - valid_ > PRESSURE) { // Whatever isn't valid and follows write_ is what's available. size_t avail = BUFFER_SIZE - std::max(write_, valid_); - int bytes = recv(fd_, buf_ + write_, (int)avail, 0); + int bytes = recv(fd_, buf_ + write_, (int)avail, MSG_NOSIGNAL); AccountFill(bytes); } } @@ -343,6 +349,10 @@ bool OutputSink::Flush(bool allowBlock) { size_t avail = std::min(BUFFER_SIZE - read_, valid_); int bytes = send(fd_, buf_ + read_, (int)avail, MSG_NOSIGNAL); +#if !PPSSPP_PLATFORM(WINDOWS) + if (bytes == -1 && (errno == EAGAIN || errno == EWOULDBLOCK)) + bytes = 0; +#endif AccountDrain(bytes); if (bytes == 0) { @@ -371,6 +381,10 @@ void OutputSink::Drain() { size_t avail = std::min(BUFFER_SIZE - read_, valid_); int bytes = send(fd_, buf_ + read_, (int)avail, MSG_NOSIGNAL); +#if !PPSSPP_PLATFORM(WINDOWS) + if (bytes == -1 && (errno == EAGAIN || errno == EWOULDBLOCK)) + bytes = 0; +#endif AccountDrain(bytes); } } @@ -385,6 +399,14 @@ void OutputSink::AccountPush(size_t bytes) { void OutputSink::AccountDrain(int bytes) { if (bytes < 0) { +#if PPSSPP_PLATFORM(WINDOWS) + int err = WSAGetLastError(); + if (err == WSAEWOULDBLOCK) + return; +#else + if (errno == EWOULDBLOCK || errno == EAGAIN) + return; +#endif ERROR_LOG(IO, "Error writing to socket"); return; } diff --git a/Common/Net/Sinks.h b/Common/Net/Sinks.h index fa5546c91736..e49630f57f11 100644 --- a/Common/Net/Sinks.h +++ b/Common/Net/Sinks.h @@ -19,6 +19,7 @@ class InputSink { size_t TakeAtMost(char *buf, size_t bytes); // Skip exactly this number of bytes, or fail. bool Skip(size_t bytes); + void Discard(); bool Empty(); bool TryFill(); diff --git a/Common/Net/URL.cpp b/Common/Net/URL.cpp index 681fc45ff21b..1183022ed7c8 100644 --- a/Common/Net/URL.cpp +++ b/Common/Net/URL.cpp @@ -126,7 +126,7 @@ std::string UriDecode(const std::string & sSrc) const unsigned char * const SRC_END = pSrc + SRC_LEN; const unsigned char * const SRC_LAST_DEC = SRC_END - 2; // last decodable '%' - char * const pStart = new char[SRC_LEN]; + char * const pStart = new char[SRC_LEN]; // Output will be shorter. char * pEnd = pStart; while (pSrc < SRC_LAST_DEC) diff --git a/Common/Render/DrawBuffer.cpp b/Common/Render/DrawBuffer.cpp index f23c753726b6..b29513d72512 100644 --- a/Common/Render/DrawBuffer.cpp +++ b/Common/Render/DrawBuffer.cpp @@ -224,6 +224,20 @@ void DrawBuffer::DrawImage(ImageID atlas_image, float x, float y, float scale, C DrawImageStretch(atlas_image, x, y, x + w, y + h, color); } +void DrawBuffer::DrawImageCenterTexel(ImageID atlas_image, float x1, float y1, float x2, float y2, Color color) { + const AtlasImage *image = atlas->getImage(atlas_image); + if (!image) + return; + float centerU = (image->u1 + image->u2) * 0.5f; + float centerV = (image->v1 + image->v2) * 0.5f; + V(x1, y1, color, centerU, centerV); + V(x2, y1, color, centerU, centerV); + V(x2, y2, color, centerU, centerV); + V(x1, y1, color, centerU, centerV); + V(x2, y2, color, centerU, centerV); + V(x1, y2, color, centerU, centerV); +} + void DrawBuffer::DrawImageStretch(ImageID atlas_image, float x1, float y1, float x2, float y2, Color color) { const AtlasImage *image = atlas->getImage(atlas_image); if (!image) @@ -236,6 +250,18 @@ void DrawBuffer::DrawImageStretch(ImageID atlas_image, float x1, float y1, float V(x1, y2, color, image->u1, image->v2); } +void DrawBuffer::DrawImageStretchVGradient(ImageID atlas_image, float x1, float y1, float x2, float y2, Color color1, Color color2) { + const AtlasImage *image = atlas->getImage(atlas_image); + if (!image) + return; + V(x1, y1, color1, image->u1, image->v1); + V(x2, y1, color1, image->u2, image->v1); + V(x2, y2, color2, image->u2, image->v2); + V(x1, y1, color1, image->u1, image->v1); + V(x2, y2, color2, image->u2, image->v2); + V(x1, y2, color2, image->u1, image->v2); +} + inline void rot(float *v, float angle, float xc, float yc) { const float x = v[0] - xc; const float y = v[1] - yc; diff --git a/Common/Render/DrawBuffer.h b/Common/Render/DrawBuffer.h index 40d482ef8343..f88308cf9786 100644 --- a/Common/Render/DrawBuffer.h +++ b/Common/Render/DrawBuffer.h @@ -107,7 +107,11 @@ class DrawBuffer { const Atlas *GetAtlas() const { return atlas; } bool MeasureImage(ImageID atlas_image, float *w, float *h); void DrawImage(ImageID atlas_image, float x, float y, float scale, Color color = COLOR(0xFFFFFF), int align = ALIGN_TOPLEFT); + + // Good for stretching out a white image without edge artifacts that I'm getting on iOS. + void DrawImageCenterTexel(ImageID atlas_image, float x1, float y1, float x2, float y2, Color color = COLOR(0xFFFFFF)); void DrawImageStretch(ImageID atlas_image, float x1, float y1, float x2, float y2, Color color = COLOR(0xFFFFFF)); + void DrawImageStretchVGradient(ImageID atlas_image, float x1, float y1, float x2, float y2, Color color1, Color color2); void DrawImageStretch(ImageID atlas_image, const Bounds &bounds, Color color = COLOR(0xFFFFFF)) { DrawImageStretch(atlas_image, bounds.x, bounds.y, bounds.x2(), bounds.y2(), color); } diff --git a/Common/System/System.h b/Common/System/System.h index a95736f4fcfe..a713616a1095 100644 --- a/Common/System/System.h +++ b/Common/System/System.h @@ -55,7 +55,14 @@ enum SystemProperty { SYSPROP_CLIPBOARD_TEXT, SYSPROP_GPUDRIVER_VERSION, + // Separate SD cards or similar. + // Need hacky solutions to get at this. + SYSPROP_HAS_ADDITIONAL_STORAGE, + SYSPROP_ADDITIONAL_STORAGE_DIRS, + SYSPROP_TEMP_DIRS, + SYSPROP_HAS_FILE_BROWSER, + SYSPROP_HAS_FOLDER_BROWSER, SYSPROP_HAS_IMAGE_BROWSER, SYSPROP_HAS_BACK_BUTTON, @@ -94,6 +101,7 @@ enum SystemProperty { }; std::string System_GetProperty(SystemProperty prop); +std::vector System_GetPropertyStringVec(SystemProperty prop); int System_GetPropertyInt(SystemProperty prop); float System_GetPropertyFloat(SystemProperty prop); bool System_GetPropertyBool(SystemProperty prop); diff --git a/Common/UI/Context.cpp b/Common/UI/Context.cpp index adfa7d89d0bc..365f7ea4ebcc 100644 --- a/Common/UI/Context.cpp +++ b/Common/UI/Context.cpp @@ -55,6 +55,7 @@ void UIContext::BeginNoTex() { } void UIContext::BeginPipeline(Draw::Pipeline *pipeline, Draw::SamplerState *samplerState) { + _assert_(pipeline != nullptr); draw_->BindSamplerStates(0, 1, &samplerState); RebindTexture(); UIBegin(pipeline); @@ -223,7 +224,7 @@ void UIContext::FillRect(const UI::Drawable &drawable, const Bounds &bounds) { switch (drawable.type) { case UI::DRAW_SOLID_COLOR: - uidrawbuffer_->DrawImageStretch(theme->whiteImage, bounds.x, bounds.y, bounds.x2(), bounds.y2(), drawable.color); + uidrawbuffer_->DrawImageCenterTexel(theme->whiteImage, bounds.x, bounds.y, bounds.x2(), bounds.y2(), drawable.color); break; case UI::DRAW_4GRID: uidrawbuffer_->DrawImage4Grid(drawable.image, bounds.x, bounds.y, bounds.x2(), bounds.y2(), drawable.color); @@ -236,6 +237,10 @@ void UIContext::FillRect(const UI::Drawable &drawable, const Bounds &bounds) { } } +void UIContext::DrawImageVGradient(ImageID image, uint32_t color1, uint32_t color2, const Bounds &bounds) { + uidrawbuffer_->DrawImageStretchVGradient(image, bounds.x, bounds.y, bounds.x2(), bounds.y2(), color1, color2); +} + void UIContext::PushTransform(const UITransform &transform) { Flush(); diff --git a/Common/UI/Context.h b/Common/UI/Context.h index 18f18bd515e0..944d31e4d8f8 100644 --- a/Common/UI/Context.h +++ b/Common/UI/Context.h @@ -85,6 +85,7 @@ class UIContext { void DrawTextShadow(const char *str, float x, float y, uint32_t color, int align = 0); void DrawTextRect(const char *str, const Bounds &bounds, uint32_t color, int align = 0); void FillRect(const UI::Drawable &drawable, const Bounds &bounds); + void DrawImageVGradient(ImageID image, uint32_t color1, uint32_t color2, const Bounds &bounds); // in dps, like dp_xres and dp_yres void SetBounds(const Bounds &b) { bounds_ = b; } diff --git a/Common/UI/View.cpp b/Common/UI/View.cpp index ebd0e993e790..2c25198db2bd 100644 --- a/Common/UI/View.cpp +++ b/Common/UI/View.cpp @@ -544,7 +544,7 @@ void InfoItem::Draw(UIContext &dc) { dc.SetFontStyle(dc.theme->uiFont); dc.DrawText(text_.c_str(), bounds_.x + paddingX, bounds_.centerY(), style.fgColor, ALIGN_VCENTER); dc.DrawText(rightText_.c_str(), bounds_.x2() - paddingX, bounds_.centerY(), style.fgColor, ALIGN_VCENTER | ALIGN_RIGHT); -// dc.Draw()->DrawImageStretch(dc.theme->whiteImage, bounds_.x, bounds_.y, bounds_.x2(), bounds_.y + 2, dc.theme->itemDownStyle.bgColor); +// dc.Draw()->DrawImageCenterTexel(dc.theme->whiteImage, bounds_.x, bounds_.y, bounds_.x2(), bounds_.y + 2, dc.theme->itemDownStyle.bgColor); } ItemHeader::ItemHeader(const std::string &text, LayoutParams *layoutParams) @@ -556,7 +556,7 @@ ItemHeader::ItemHeader(const std::string &text, LayoutParams *layoutParams) void ItemHeader::Draw(UIContext &dc) { dc.SetFontStyle(dc.theme->uiFontSmall); dc.DrawText(text_.c_str(), bounds_.x + 4, bounds_.centerY(), dc.theme->headerStyle.fgColor, ALIGN_LEFT | ALIGN_VCENTER); - dc.Draw()->DrawImageStretch(dc.theme->whiteImage, bounds_.x, bounds_.y2()-2, bounds_.x2(), bounds_.y2(), dc.theme->headerStyle.fgColor); + dc.Draw()->DrawImageCenterTexel(dc.theme->whiteImage, bounds_.x, bounds_.y2()-2, bounds_.x2(), bounds_.y2(), dc.theme->headerStyle.fgColor); } void ItemHeader::GetContentDimensionsBySpec(const UIContext &dc, MeasureSpec horiz, MeasureSpec vert, float &w, float &h) const { @@ -593,7 +593,7 @@ void PopupHeader::Draw(UIContext &dc) { } dc.DrawText(text_.c_str(), bounds_.x + tx, bounds_.centerY(), dc.theme->popupTitle.fgColor, ALIGN_LEFT | ALIGN_VCENTER); - dc.Draw()->DrawImageStretch(dc.theme->whiteImage, bounds_.x, bounds_.y2()-2, bounds_.x2(), bounds_.y2(), dc.theme->popupTitle.fgColor); + dc.Draw()->DrawImageCenterTexel(dc.theme->whiteImage, bounds_.x, bounds_.y2()-2, bounds_.x2(), bounds_.y2(), dc.theme->popupTitle.fgColor); if (availableWidth < tw) { dc.PopScissor(); @@ -803,6 +803,10 @@ void TextView::Draw(UIContext &dc) { dc.DrawTextRect(text_.c_str(), bounds_.Offset(1.0f, 1.0f), shadowColor, textAlign_); } dc.DrawTextRect(text_.c_str(), bounds_, textColor, textAlign_); + if (small_) { + // If we changed font style, reset it. + dc.SetFontStyle(dc.theme->uiFont); + } if (clip) { dc.PopScissor(); } @@ -1028,7 +1032,7 @@ void ProgressBar::GetContentDimensions(const UIContext &dc, float &w, float &h) void ProgressBar::Draw(UIContext &dc) { char temp[32]; sprintf(temp, "%i%%", (int)(progress_ * 100.0f)); - dc.Draw()->DrawImageStretch(dc.theme->whiteImage, bounds_.x, bounds_.y, bounds_.x + bounds_.w * progress_, bounds_.y2(), 0xc0c0c0c0); + dc.Draw()->DrawImageCenterTexel(dc.theme->whiteImage, bounds_.x, bounds_.y, bounds_.x + bounds_.w * progress_, bounds_.y2(), 0xc0c0c0c0); dc.SetFontStyle(dc.theme->uiFont); dc.DrawTextRect(temp, bounds_, 0xFFFFFFFF, ALIGN_CENTER); } diff --git a/Common/UI/View.h b/Common/UI/View.h index 97c5c105138e..4f779fa1f495 100644 --- a/Common/UI/View.h +++ b/Common/UI/View.h @@ -527,6 +527,9 @@ class Button : public Clickable { paddingW_ = w; paddingH_ = h; } + void SetImageID(ImageID imageID) { + imageID_ = imageID; + } // Needed an extra small button... void SetScale(float f) { diff --git a/Common/UI/ViewGroup.cpp b/Common/UI/ViewGroup.cpp index 4c21baeb5e47..f022b6b137eb 100644 --- a/Common/UI/ViewGroup.cpp +++ b/Common/UI/ViewGroup.cpp @@ -860,7 +860,7 @@ void ScrollView::PersistData(PersistStatus status, std::string anonId, PersistMa void ScrollView::SetVisibility(Visibility visibility) { ViewGroup::SetVisibility(visibility); - if (visibility == V_GONE) { + if (visibility == V_GONE && !rememberPosition_) { // Since this is no longer shown, forget the scroll position. // For example, this happens when switching tabs. ScrollTo(0.0f); @@ -1348,9 +1348,9 @@ void ChoiceStrip::Draw(UIContext &dc) { ViewGroup::Draw(dc); if (topTabs_) { if (orientation_ == ORIENT_HORIZONTAL) - dc.Draw()->DrawImageStretch(dc.theme->whiteImage, bounds_.x, bounds_.y2() - 4, bounds_.x2(), bounds_.y2(), dc.theme->itemDownStyle.background.color ); + dc.Draw()->DrawImageCenterTexel(dc.theme->whiteImage, bounds_.x, bounds_.y2() - 4, bounds_.x2(), bounds_.y2(), dc.theme->itemDownStyle.background.color ); else if (orientation_ == ORIENT_VERTICAL) - dc.Draw()->DrawImageStretch(dc.theme->whiteImage, bounds_.x2() - 4, bounds_.y, bounds_.x2(), bounds_.y2(), dc.theme->itemDownStyle.background.color ); + dc.Draw()->DrawImageCenterTexel(dc.theme->whiteImage, bounds_.x2() - 4, bounds_.y, bounds_.x2(), bounds_.y2(), dc.theme->itemDownStyle.background.color ); } } diff --git a/Common/UI/ViewGroup.h b/Common/UI/ViewGroup.h index 0d176426179d..7e093d775bae 100644 --- a/Common/UI/ViewGroup.h +++ b/Common/UI/ViewGroup.h @@ -222,8 +222,8 @@ class GridLayout : public ViewGroup { // A scrollview usually contains just a single child - a linear layout or similar. class ScrollView : public ViewGroup { public: - ScrollView(Orientation orientation, LayoutParams *layoutParams = 0) - : ViewGroup(layoutParams), orientation_(orientation) {} + ScrollView(Orientation orientation, LayoutParams *layoutParams = 0, bool rememberPosition = false) + : ViewGroup(layoutParams), orientation_(orientation), rememberPosition_(rememberPosition) {} void Measure(const UIContext &dc, MeasureSpec horiz, MeasureSpec vert) override; void Layout() override; @@ -262,6 +262,7 @@ class ScrollView : public ViewGroup { float pull_ = 0.0f; float lastViewSize_ = 0.0f; bool scrollToTopOnSizeChange_ = false; + bool rememberPosition_; }; class ViewPager : public ScrollView { diff --git a/Common/x64Analyzer.cpp b/Common/x64Analyzer.cpp index 1a9d236db69f..b0bc65403f64 100644 --- a/Common/x64Analyzer.cpp +++ b/Common/x64Analyzer.cpp @@ -145,10 +145,8 @@ bool X86AnalyzeMOV(const unsigned char *codePtr, LSInstructionInfo &info) info.displacement = *((s32 *)codePtr); codePtr += displacementSize; - if (accessType == 1) + if (accessType == 1) // reg/mem { - info.isMemoryWrite = true; - //Write access switch (codeByte) { case MOVE_8BIT: //move 8-bit immediate @@ -182,9 +180,11 @@ bool X86AnalyzeMOV(const unsigned char *codePtr, LSInstructionInfo &info) } break; case MOVE_REG_TO_MEM: //move reg to memory + info.isMemoryWrite = true; break; case MOVE_MEM_TO_REG: + info.isMemoryWrite = false; break; default: @@ -195,6 +195,7 @@ bool X86AnalyzeMOV(const unsigned char *codePtr, LSInstructionInfo &info) else { // Memory read + info.isMemoryWrite = false; //mov eax, dword ptr [rax] == 8b 00 switch (codeByte) diff --git a/Common/x64Emitter.cpp b/Common/x64Emitter.cpp index 82c790c36f77..1b59a79aeee8 100644 --- a/Common/x64Emitter.cpp +++ b/Common/x64Emitter.cpp @@ -501,7 +501,8 @@ void XEmitter::SetJumpTarget(const FixupBranch &branch) { s64 distance = (s64)(code - branch.ptr); _assert_msg_(distance >= -0x80000000LL && distance < 0x80000000LL, "Jump target too far away, needs indirect register"); - ((s32*)branch.ptr)[-1] = (s32)distance; + const s32 distance32 = static_cast(distance); + std::memcpy(branch.ptr - sizeof(s32), &distance32, sizeof(s32)); } } diff --git a/Common/x64Emitter.h b/Common/x64Emitter.h index fe32fa0d6d92..59e8e4b0388e 100644 --- a/Common/x64Emitter.h +++ b/Common/x64Emitter.h @@ -20,6 +20,7 @@ #include "ppsspp_config.h" #include +#include #include "Common/Common.h" #include "Common/Log.h" @@ -361,9 +362,9 @@ class XEmitter protected: inline void Write8(u8 value) {*code++ = value;} - inline void Write16(u16 value) {*(u16*)code = (value); code += 2;} - inline void Write32(u32 value) {*(u32*)code = (value); code += 4;} - inline void Write64(u64 value) {*(u64*)code = (value); code += 8;} + inline void Write16(u16 value) {std::memcpy(code, &value, sizeof(u16)); code += 2;} + inline void Write32(u32 value) {std::memcpy(code, &value, sizeof(u32)); code += 4;} + inline void Write64(u64 value) {std::memcpy(code, &value, sizeof(u64)); code += 8;} public: XEmitter() { code = nullptr; flags_locked = false; } diff --git a/Core/Compatibility.cpp b/Core/Compatibility.cpp index 10b2c42896cc..dbd8a804f5ab 100644 --- a/Core/Compatibility.cpp +++ b/Core/Compatibility.cpp @@ -75,6 +75,10 @@ void Compatibility::CheckSettings(IniFile &iniFile, const std::string &gameID) { CheckSetting(iniFile, gameID, "MemstickFixedFree", &flags_.MemstickFixedFree); CheckSetting(iniFile, gameID, "DateLimited", &flags_.DateLimited); CheckSetting(iniFile, gameID, "ReinterpretFramebuffers", &flags_.ReinterpretFramebuffers); + CheckSetting(iniFile, gameID, "DoublePrecisionSinCos", &flags_.DoublePrecisionSinCos); + CheckSetting(iniFile, gameID, "ShaderColorBitmask", &flags_.ShaderColorBitmask); + CheckSetting(iniFile, gameID, "DisableFirstFrameReadback", &flags_.DisableFirstFrameReadback); + CheckSetting(iniFile, gameID, "DisableRangeCulling", &flags_.DisableRangeCulling); } void Compatibility::CheckSetting(IniFile &iniFile, const std::string &gameID, const char *option, bool *flag) { diff --git a/Core/Compatibility.h b/Core/Compatibility.h index e390e28f424f..d5cee15879ba 100644 --- a/Core/Compatibility.h +++ b/Core/Compatibility.h @@ -73,6 +73,10 @@ struct CompatFlags { bool MemstickFixedFree; bool DateLimited; bool ReinterpretFramebuffers; + bool DoublePrecisionSinCos; + bool ShaderColorBitmask; + bool DisableFirstFrameReadback; + bool DisableRangeCulling; }; class IniFile; diff --git a/Core/Config.cpp b/Core/Config.cpp index 2ef04d1cb8e2..1c53e8e571e2 100644 --- a/Core/Config.cpp +++ b/Core/Config.cpp @@ -450,6 +450,7 @@ static ConfigSetting generalSettings[] = { ReportedConfigSetting("EnableCheats", &g_Config.bEnableCheats, false, true, true), ConfigSetting("CwCheatRefreshRate", &g_Config.iCwCheatRefreshRate, 77, true, true), ConfigSetting("CwCheatScrollPosition", &g_Config.fCwCheatScrollPosition, 0.0f, true, true), + ConfigSetting("GameListScrollPosition", &g_Config.fGameListScrollPosition, 0.0f), ConfigSetting("ScreenshotsAsPNG", &g_Config.bScreenshotsAsPNG, false, true, true), ConfigSetting("UseFFV1", &g_Config.bUseFFV1, false), @@ -461,6 +462,7 @@ static ConfigSetting generalSettings[] = { ConfigSetting("EnableStateUndo", &g_Config.bEnableStateUndo, &DefaultEnableStateUndo, true, true), ConfigSetting("RewindFlipFrequency", &g_Config.iRewindFlipFrequency, 0, true, true), + ConfigSetting("ShowOnScreenMessage", &g_Config.bShowOnScreenMessages, true, true, false), ConfigSetting("ShowRegionOnGameIcon", &g_Config.bShowRegionOnGameIcon, false), ConfigSetting("ShowIDOnGameIcon", &g_Config.bShowIDOnGameIcon, false), ConfigSetting("GameGridScale", &g_Config.fGameGridScale, 1.0), @@ -505,7 +507,7 @@ static ConfigSetting generalSettings[] = { ConfigSetting("FullscreenOnDoubleclick", &g_Config.bFullscreenOnDoubleclick, true, false, false), ReportedConfigSetting("MemStickInserted", &g_Config.bMemStickInserted, true, true, true), - ConfigSetting("LoadPlugins", &g_Config.bLoadPlugins, false, true, true), + ConfigSetting("EnablePlugins", &g_Config.bLoadPlugins, true, true, true), ConfigSetting(false), }; @@ -667,10 +669,7 @@ bool Config::IsBackendEnabled(GPUBackend backend, bool validate) { return false; } -#if PPSSPP_PLATFORM(IOS) - if (backend != GPUBackend::OPENGL) - return false; -#elif PPSSPP_PLATFORM(UWP) +#if PPSSPP_PLATFORM(UWP) if (backend != GPUBackend::DIRECT3D11) return false; #elif PPSSPP_PLATFORM(WINDOWS) @@ -687,12 +686,10 @@ bool Config::IsBackendEnabled(GPUBackend backend, bool validate) { if (backend == GPUBackend::OPENGL) return false; #endif -#if !PPSSPP_PLATFORM(IOS) if (validate) { if (backend == GPUBackend::VULKAN && !VulkanMayBeAvailable()) return false; } -#endif return true; } @@ -791,7 +788,7 @@ static ConfigSetting graphicsSettings[] = { ConfigSetting("SmallDisplayOffsetX", &g_Config.fSmallDisplayOffsetX, 0.5f, true, true), ConfigSetting("SmallDisplayOffsetY", &g_Config.fSmallDisplayOffsetY, 0.5f, true, true), ConfigSetting("SmallDisplayZoomLevel", &g_Config.fSmallDisplayZoomLevel, 1.0f, true, true), - ConfigSetting("ImmersiveMode", &g_Config.bImmersiveMode, false, true, true), + ConfigSetting("ImmersiveMode", &g_Config.bImmersiveMode, true, true, true), ConfigSetting("SustainedPerformanceMode", &g_Config.bSustainedPerformanceMode, false, true, true), ConfigSetting("IgnoreScreenInsets", &g_Config.bIgnoreScreenInsets, true, true, false), diff --git a/Core/Config.h b/Core/Config.h index 8a1f7bd7a05f..13bce8a366b3 100644 --- a/Core/Config.h +++ b/Core/Config.h @@ -207,6 +207,7 @@ struct Config { bool bReloadCheats; int iCwCheatRefreshRate; float fCwCheatScrollPosition; + float fGameListScrollPosition; int iBloomHack; //0 = off, 1 = safe, 2 = balanced, 3 = aggressive bool bBlockTransferGPU; bool bDisableSlowFramebufEffects; @@ -238,6 +239,7 @@ struct Config { bool bShowRegionOnGameIcon; bool bShowIDOnGameIcon; float fGameGridScale; + bool bShowOnScreenMessages; // TODO: Maybe move to a separate theme system. uint32_t uItemStyleFg; diff --git a/Core/Core.vcxproj b/Core/Core.vcxproj index e91c514383a6..060eeb4ddbb4 100644 --- a/Core/Core.vcxproj +++ b/Core/Core.vcxproj @@ -437,6 +437,8 @@ + + @@ -981,6 +983,8 @@ + + diff --git a/Core/Core.vcxproj.filters b/Core/Core.vcxproj.filters index 76fac1fe8871..93b6b137effd 100644 --- a/Core/Core.vcxproj.filters +++ b/Core/Core.vcxproj.filters @@ -965,6 +965,12 @@ Core + + Debugger\WebSocket + + + Debugger\WebSocket + @@ -1649,6 +1655,12 @@ Core + + Debugger\WebSocket + + + Debugger\WebSocket + diff --git a/Core/CoreParameter.h b/Core/CoreParameter.h index abfb9e40e604..b45384a00276 100644 --- a/Core/CoreParameter.h +++ b/Core/CoreParameter.h @@ -23,7 +23,6 @@ #include "Core/Config.h" enum GPUCore { - GPUCORE_NULL, GPUCORE_GLES, GPUCORE_SOFTWARE, GPUCORE_DIRECTX9, diff --git a/Core/Debugger/WebSocket.cpp b/Core/Debugger/WebSocket.cpp index 418c81188d02..c609e08698ef 100644 --- a/Core/Debugger/WebSocket.cpp +++ b/Core/Debugger/WebSocket.cpp @@ -45,6 +45,7 @@ // For other events, look inside Core/Debugger/WebSocket/ for details on each event. #include "Core/Debugger/WebSocket/GameBroadcaster.h" +#include "Core/Debugger/WebSocket/InputBroadcaster.h" #include "Core/Debugger/WebSocket/LogBroadcaster.h" #include "Core/Debugger/WebSocket/SteppingBroadcaster.h" @@ -55,6 +56,7 @@ #include "Core/Debugger/WebSocket/GPUBufferSubscriber.h" #include "Core/Debugger/WebSocket/GPURecordSubscriber.h" #include "Core/Debugger/WebSocket/HLESubscriber.h" +#include "Core/Debugger/WebSocket/InputSubscriber.h" #include "Core/Debugger/WebSocket/MemorySubscriber.h" #include "Core/Debugger/WebSocket/SteppingSubscriber.h" @@ -67,6 +69,7 @@ static const std::vector subscribers({ &WebSocketGPUBufferInit, &WebSocketGPURecordInit, &WebSocketHLEInit, + &WebSocketInputInit, &WebSocketMemoryInit, &WebSocketSteppingInit, }); @@ -125,8 +128,9 @@ void HandleDebuggerRequest(const http::Request &request) { UpdateConnected(1); SetupDebuggerLock(); - LogBroadcaster logger; GameBroadcaster game; + LogBroadcaster logger; + InputBroadcaster input; SteppingBroadcaster stepping; std::unordered_map eventHandlers; @@ -175,6 +179,7 @@ void HandleDebuggerRequest(const http::Request &request) { logger.Broadcast(ws); game.Broadcast(ws); stepping.Broadcast(ws); + input.Broadcast(ws); for (size_t i = 0; i < subscribers.size(); ++i) { if (subscriberData[i]) { @@ -196,6 +201,7 @@ void HandleDebuggerRequest(const http::Request &request) { } delete ws; + request.In()->Discard(); UpdateConnected(-1); } diff --git a/Core/Debugger/WebSocket/DisasmSubscriber.cpp b/Core/Debugger/WebSocket/DisasmSubscriber.cpp index 172abf5f570b..f8820cee48e5 100644 --- a/Core/Debugger/WebSocket/DisasmSubscriber.cpp +++ b/Core/Debugger/WebSocket/DisasmSubscriber.cpp @@ -262,7 +262,7 @@ uint32_t WebSocketDisasmState::RoundAddressUp(uint32_t addr) { // - addressHex: string indicating base address in hexadecimal (may be 64 bit.) void WebSocketDisasmState::Base(DebuggerRequest &req) { JsonWriter &json = req.Respond(); - json.writeString("addressHex", StringFromFormat("%016llx", Memory::base)); + json.writeString("addressHex", StringFromFormat("%016llx", (uintptr_t)Memory::base)); } // Disassemble a range of memory as CPU instructions (memory.disasm) diff --git a/Core/Debugger/WebSocket/InputBroadcaster.cpp b/Core/Debugger/WebSocket/InputBroadcaster.cpp new file mode 100644 index 000000000000..388000dbbc7a --- /dev/null +++ b/Core/Debugger/WebSocket/InputBroadcaster.cpp @@ -0,0 +1,102 @@ +// Copyright (c) 2018- PPSSPP Project. + +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, version 2.0 or later versions. + +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License 2.0 for more details. + +// A copy of the GPL 2.0 should have been included with the program. +// If not, see http://www.gnu.org/licenses/ + +// Official git repository and contact information can be found at +// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/. + +#include +#include "Core/Debugger/WebSocket/InputBroadcaster.h" +#include "Core/Debugger/WebSocket/InputSubscriber.h" +#include "Core/Debugger/WebSocket/WebSocketUtils.h" +#include "Core/HLE/sceCtrl.h" +#include "Core/HLE/sceDisplay.h" + +// Button press state change (input.buttons) +// +// Sent unexpectedly with these properties: +// - buttons: an object with button names as keys and bool press state as values. +// - changed: same as buttons, but only including changed states. +// +// See input.buttons.send in InputSubscriber for button names. + +// Analog position change (input.analog) +// +// Sent unexpectedly with these properties: +// - stick: "left" or "right". +// - x: number between -1.0 and 1.0, representing horizontal position in a square. +// - y: number between -1.0 and 1.0, representing vertical position in a square. + +std::string InputBroadcaster::Analog::Event(const char *stick) { + JsonWriter j; + j.begin(); + j.writeString("event", "input.analog"); + j.writeString("stick", stick); + j.writeFloat("x", x); + j.writeFloat("y", y); + j.end(); + return j.str(); +} + +static std::string ButtonsEvent(uint32_t lastButtons, uint32_t newButtons) { + uint32_t pressed = newButtons & ~lastButtons; + uint32_t released = ~newButtons & lastButtons; + + JsonWriter j; + j.begin(); + j.writeString("event", "input.buttons"); + j.pushDict("buttons"); + for (auto it : WebSocketInputButtonLookup()) { + j.writeBool(it.first, (newButtons & it.second) != 0); + } + j.pop(); + j.pushDict("changed"); + for (auto it : WebSocketInputButtonLookup()) { + if (pressed & it.second) { + j.writeBool(it.first, true); + } else if (released & it.second) { + j.writeBool(it.first, false); + } + } + j.pop(); + j.end(); + return j.str(); +} + +void InputBroadcaster::Broadcast(net::WebSocketServer *ws) { + int counter = __DisplayGetNumVblanks(); + if (lastCounter_ == counter) + return; + lastCounter_ = counter; + + uint32_t newButtons = __CtrlPeekButtons(); + if (newButtons != lastButtons_) { + ws->Send(ButtonsEvent(lastButtons_, newButtons)); + lastButtons_ = newButtons; + } + + Analog newAnalog; + __CtrlPeekAnalog(CTRL_STICK_LEFT, &newAnalog.x, &newAnalog.y); + if (!lastAnalog_[0].Equals(newAnalog)) { + ws->Send(newAnalog.Event("left")); + lastAnalog_[0].x = newAnalog.x; + lastAnalog_[0].y = newAnalog.y; + } + + __CtrlPeekAnalog(CTRL_STICK_RIGHT, &newAnalog.x, &newAnalog.y); + if (!lastAnalog_[1].Equals(newAnalog)) { + ws->Send(newAnalog.Event("right")); + lastAnalog_[1].x = newAnalog.x; + lastAnalog_[1].y = newAnalog.y; + } +} diff --git a/Core/Debugger/WebSocket/InputBroadcaster.h b/Core/Debugger/WebSocket/InputBroadcaster.h new file mode 100644 index 000000000000..dd8031d90249 --- /dev/null +++ b/Core/Debugger/WebSocket/InputBroadcaster.h @@ -0,0 +1,48 @@ +// Copyright (c) 2018- PPSSPP Project. + +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, version 2.0 or later versions. + +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License 2.0 for more details. + +// A copy of the GPL 2.0 should have been included with the program. +// If not, see http://www.gnu.org/licenses/ + +// Official git repository and contact information can be found at +// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/. + +#pragma once + +#include +#include + +namespace net { +class WebSocketServer; +} + +struct InputBroadcaster { +public: + InputBroadcaster() { + } + + void Broadcast(net::WebSocketServer *ws); + +private: + struct Analog { + float x = 0.0f; + float y = 0.0f; + + bool Equals(const Analog &other) const { + return x == other.x && y == other.y; + } + std::string Event(const char *stick); + }; + + int lastCounter_ = -1; + uint32_t lastButtons_ = 0; + Analog lastAnalog_[2]; +}; diff --git a/Core/Debugger/WebSocket/InputSubscriber.cpp b/Core/Debugger/WebSocket/InputSubscriber.cpp new file mode 100644 index 000000000000..b35c8413e7ef --- /dev/null +++ b/Core/Debugger/WebSocket/InputSubscriber.cpp @@ -0,0 +1,261 @@ +// Copyright (c) 2021- PPSSPP Project. + +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, version 2.0 or later versions. + +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License 2.0 for more details. + +// A copy of the GPL 2.0 should have been included with the program. +// If not, see http://www.gnu.org/licenses/ + +// Official git repository and contact information can be found at +// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/. + +#include +#include +#include "Common/StringUtils.h" +#include "Core/Debugger/WebSocket/InputSubscriber.h" +#include "Core/Debugger/WebSocket/WebSocketUtils.h" +#include "Core/HLE/sceCtrl.h" +#include "Core/HLE/sceDisplay.h" + +// This is also used in InputBroadcaster. +const std::unordered_map buttonLookup = { + { "cross", CTRL_CROSS }, + { "circle", CTRL_CIRCLE }, + { "triangle", CTRL_TRIANGLE }, + { "square", CTRL_SQUARE }, + { "up", CTRL_UP }, + { "down", CTRL_DOWN }, + { "left", CTRL_LEFT }, + { "right", CTRL_RIGHT }, + { "start", CTRL_START }, + { "select", CTRL_SELECT }, + { "home", CTRL_HOME }, + { "screen", CTRL_SCREEN }, + { "note", CTRL_NOTE }, + { "ltrigger", CTRL_LTRIGGER }, + { "rtrigger", CTRL_RTRIGGER }, + { "hold", CTRL_HOLD }, + { "wlan", CTRL_WLAN }, + { "remote_hold", CTRL_REMOTE_HOLD }, + { "vol_up", CTRL_VOL_UP }, + { "vol_down", CTRL_VOL_DOWN }, + { "disc", CTRL_DISC }, + { "memstick", CTRL_MEMSTICK }, + { "forward", CTRL_FORWARD }, + { "back", CTRL_BACK }, + { "playpause", CTRL_PLAYPAUSE }, +}; + +struct WebSocketInputState : public DebuggerSubscriber { + void ButtonsSend(DebuggerRequest &req); + void ButtonsPress(DebuggerRequest &req); + void AnalogSend(DebuggerRequest &req); + + void Broadcast(net::WebSocketServer *ws) override; + +protected: + struct PressInfo { + std::string ticket; + uint32_t button; + uint32_t duration; + + std::string Event(); + }; + + std::vector pressTickets_; + int lastCounter_ = -1; +}; + +std::string WebSocketInputState::PressInfo::Event() { + JsonWriter j; + j.begin(); + j.writeString("event", "input.buttons.press"); + if (!ticket.empty()) { + j.writeRaw("ticket", ticket); + } + j.end(); + return j.str(); +} + +const std::unordered_map &WebSocketInputButtonLookup() { + return buttonLookup; +} + +DebuggerSubscriber *WebSocketInputInit(DebuggerEventHandlerMap &map) { + auto p = new WebSocketInputState(); + map["input.buttons.send"] = std::bind(&WebSocketInputState::ButtonsSend, p, std::placeholders::_1); + map["input.buttons.press"] = std::bind(&WebSocketInputState::ButtonsPress, p, std::placeholders::_1); + map["input.analog.send"] = std::bind(&WebSocketInputState::AnalogSend, p, std::placeholders::_1); + + return p; +} + +// Alter PSP button press flags (input.buttons.send) +// +// Parameters: +// - buttons: object containing button names as string keys, boolean press state as value. +// +// Button names (some are not respected by PPSSPP): +// - cross: button on bottom side of right pad. +// - circle: button on right side of right pad. +// - triangle: button on top side of right pad. +// - square: button on left side of right pad. +// - up: d-pad up button. +// - down: d-pad down button. +// - left: d-pad left button. +// - right: d-pad right button. +// - start: rightmost button at bottom of device. +// - select: second to the right at bottom of device. +// - home: leftmost button at bottom of device. +// - screen: brightness control button at bottom of device. +// - note: mute control button at bottom of device. +// - ltrigger: left shoulder trigger button. +// - rtrigger: right shoulder trigger button. +// - hold: hold setting of power switch. +// - wlan: wireless networking switch. +// - remote_hold: hold switch on headset. +// - vol_up: volume up button next to home at bottom of device. +// - vol_down: volume down button next to home at bottom of device. +// - disc: UMD disc sensor. +// - memstick: memory stick sensor. +// - forward: forward button on headset. +// - back: back button on headset. +// - playpause: play/pause button on headset. +// +// Empty response. +void WebSocketInputState::ButtonsSend(DebuggerRequest &req) { + const JsonNode *jsonButtons = req.data.get("buttons"); + if (!jsonButtons) { + return req.Fail("Missing 'buttons' parameter"); + } + if (jsonButtons->value.getTag() != JSON_OBJECT) { + return req.Fail("Invalid 'buttons' parameter type"); + } + + uint32_t downFlags = 0; + uint32_t upFlags = 0; + + for (const JsonNode *button : jsonButtons->value) { + auto info = buttonLookup.find(button->key); + if (info == buttonLookup.end()) { + return req.Fail(StringFromFormat("Unsupported 'buttons' object key '%s'", button->key)); + } + if (button->value.getTag() == JSON_TRUE) { + downFlags |= info->second; + } else if (button->value.getTag() == JSON_FALSE) { + upFlags |= info->second; + } else if (button->value.getTag() != JSON_NULL) { + return req.Fail(StringFromFormat("Unsupported 'buttons' object type for key '%s'", button->key)); + } + } + + if (downFlags) { + __CtrlButtonDown(downFlags); + } + if (upFlags) { + __CtrlButtonUp(upFlags); + } + + req.Respond(); +} + +// Press and release a button (input.buttons.press) +// +// Parameters: +// - button: required string indicating button name (see input.buttons.send.) +// - duration: optional integer indicating frames to press for, defaults to 1. +// +// Empty response once released. +void WebSocketInputState::ButtonsPress(DebuggerRequest &req) { + std::string button; + if (!req.ParamString("button", &button)) + return; + + PressInfo press; + press.duration = 1; + if (!req.ParamU32("duration", &press.duration, false, DebuggerParamType::OPTIONAL)) + return; + if (press.duration < 0) + return req.Fail("Parameter 'duration' must not be negative"); + const JsonNode *value = req.data.get("ticket"); + press.ticket = value ? json_stringify(value) : ""; + + auto info = buttonLookup.find(button); + if (info == buttonLookup.end()) { + return req.Fail(StringFromFormat("Unsupported button value '%s'", button.c_str())); + } + press.button = info->second; + + __CtrlButtonDown(press.button); + pressTickets_.push_back(press); +} + +void WebSocketInputState::Broadcast(net::WebSocketServer *ws) { + int counter = __DisplayGetNumVblanks(); + if (pressTickets_.empty() || lastCounter_ == counter) + return; + lastCounter_ = counter; + + for (PressInfo &press : pressTickets_) { + press.duration--; + if (press.duration == -1) { + __CtrlButtonUp(press.button); + ws->Send(press.Event()); + } + } + auto negative = [](const PressInfo &press) -> bool { + return press.duration < 0; + }; + pressTickets_.erase(std::remove_if(pressTickets_.begin(), pressTickets_.end(), negative), pressTickets_.end()); +} + +static bool AnalogValue(DebuggerRequest &req, float *value, const char *name) { + const JsonNode *node = req.data.get(name); + if (!node) { + req.Fail(StringFromFormat("Missing '%s' parameter", name)); + return false; + } + if (node->value.getTag() != JSON_NUMBER) { + req.Fail(StringFromFormat("Invalid '%s' parameter type", name)); + return false; + } + + double val = node->value.toNumber(); + if (val < 1.0 || val > 1.0) { + req.Fail(StringFromFormat("Parameter '%s' must be between -1.0 and 1.0", name)); + return false; + } + + *value = (float)val; + return true; +} + +// Set coordinates of analog stick (input.analog.send) +// +// Parameters: +// - x: required number from -1.0 to 1.0. +// - y: required number from -1.0 to 1.0. +// - stick: optional string, either "left" (default) or "right". +// +// Empty response. +void WebSocketInputState::AnalogSend(DebuggerRequest &req) { + std::string stick = "left"; + if (!req.ParamString("stick", &stick, DebuggerParamType::OPTIONAL)) + return; + if (stick != "left" && stick != "right") + return req.Fail(StringFromFormat("Parameter 'stick' must be 'left' or 'right', not '%s'", stick.c_str())); + float x, y; + if (!AnalogValue(req, &x, "x") || !AnalogValue(req, &y, "y")) + return; + + __CtrlSetAnalogX(x, stick == "left" ? CTRL_STICK_LEFT : CTRL_STICK_RIGHT); + __CtrlSetAnalogY(y, stick == "left" ? CTRL_STICK_LEFT : CTRL_STICK_RIGHT); + + req.Respond(); +} diff --git a/Core/Debugger/WebSocket/InputSubscriber.h b/Core/Debugger/WebSocket/InputSubscriber.h new file mode 100644 index 000000000000..65acbe9efe2b --- /dev/null +++ b/Core/Debugger/WebSocket/InputSubscriber.h @@ -0,0 +1,25 @@ +// Copyright (c) 2021- PPSSPP Project. + +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, version 2.0 or later versions. + +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License 2.0 for more details. + +// A copy of the GPL 2.0 should have been included with the program. +// If not, see http://www.gnu.org/licenses/ + +// Official git repository and contact information can be found at +// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/. + +#pragma once + +#include +#include +#include "Core/Debugger/WebSocket/WebSocketUtils.h" + +DebuggerSubscriber *WebSocketInputInit(DebuggerEventHandlerMap &map); +const std::unordered_map &WebSocketInputButtonLookup(); diff --git a/Core/Debugger/WebSocket/MemorySubscriber.cpp b/Core/Debugger/WebSocket/MemorySubscriber.cpp index 6710b7492c3e..8adc6fec5bf3 100644 --- a/Core/Debugger/WebSocket/MemorySubscriber.cpp +++ b/Core/Debugger/WebSocket/MemorySubscriber.cpp @@ -15,8 +15,12 @@ // Official git repository and contact information can be found at // https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/. +#include +#include +#include "Common/Data/Encoding/Base64.h" #include "Common/StringUtils.h" #include "Core/MemMap.h" +#include "Core/MIPS/MIPSDebugInterface.h" #include "Core/System.h" #include "Core/Debugger/WebSocket/MemorySubscriber.h" #include "Core/Debugger/WebSocket/WebSocketUtils.h" @@ -26,9 +30,12 @@ DebuggerSubscriber *WebSocketMemoryInit(DebuggerEventHandlerMap &map) { map["memory.read_u8"] = &WebSocketMemoryReadU8; map["memory.read_u16"] = &WebSocketMemoryReadU16; map["memory.read_u32"] = &WebSocketMemoryReadU32; + map["memory.read"] = &WebSocketMemoryRead; + map["memory.readString"] = &WebSocketMemoryReadString; map["memory.write_u8"] = &WebSocketMemoryWriteU8; map["memory.write_u16"] = &WebSocketMemoryWriteU16; map["memory.write_u32"] = &WebSocketMemoryWriteU32; + map["memory.write"] = &WebSocketMemoryWrite; return nullptr; } @@ -42,10 +49,11 @@ DebuggerSubscriber *WebSocketMemoryInit(DebuggerEventHandlerMap &map) { // - value: unsigned integer void WebSocketMemoryReadU8(DebuggerRequest &req) { auto memLock = Memory::Lock(); - uint32_t addr; + if (!currentDebugMIPS->isAlive() || !Memory::IsActive()) + return req.Fail("CPU not started"); + uint32_t addr; if (!req.ParamU32("address", &addr, false)) { - req.Fail("No address given"); return; } @@ -67,10 +75,11 @@ void WebSocketMemoryReadU8(DebuggerRequest &req) { // - value: unsigned integer void WebSocketMemoryReadU16(DebuggerRequest &req) { auto memLock = Memory::Lock(); - uint32_t addr; + if (!currentDebugMIPS->isAlive() || !Memory::IsActive()) + return req.Fail("CPU not started"); + uint32_t addr; if (!req.ParamU32("address", &addr, false)) { - req.Fail("No address given"); return; } @@ -92,10 +101,11 @@ void WebSocketMemoryReadU16(DebuggerRequest &req) { // - value: unsigned integer void WebSocketMemoryReadU32(DebuggerRequest &req) { auto memLock = Memory::Lock(); - uint32_t addr; + if (!currentDebugMIPS->isAlive() || !Memory::IsActive()) + return req.Fail("CPU not started"); + uint32_t addr; if (!req.ParamU32("address", &addr, false)) { - req.Fail("No address given"); return; } @@ -108,6 +118,88 @@ void WebSocketMemoryReadU32(DebuggerRequest &req) { json.writeUint("value", Memory::Read_U32(addr)); } +// Read bytes from memory (memory.read) +// +// Parameters: +// - address: unsigned integer address for the start of the memory range. +// - size: unsigned integer specifying size of memory range. +// +// Response (same event name): +// - base64: base64 encode of binary data. +void WebSocketMemoryRead(DebuggerRequest &req) { + auto memLock = Memory::Lock(); + if (!currentDebugMIPS->isAlive() || !Memory::IsActive()) + return req.Fail("CPU not started"); + + uint32_t addr; + if (!req.ParamU32("address", &addr)) + return; + uint32_t size; + if (!req.ParamU32("size", &size)) + return; + + if (!Memory::IsValidAddress(addr)) + return req.Fail("Invalid address"); + else if (!Memory::IsValidRange(addr, size)) + return req.Fail("Invalid size"); + + JsonWriter &json = req.Respond(); + // Start a value without any actual data yet... + json.writeRaw("base64", ""); + req.Flush(); + + // Now we'll write it directly to the stream. + req.ws->AddFragment(false, "\""); + // 65535 is an "even" number of base64 characters. + static const size_t CHUNK_SIZE = 65535; + for (size_t i = 0; i < size; i += CHUNK_SIZE) { + size_t left = std::min(size - i, CHUNK_SIZE); + req.ws->AddFragment(false, Base64Encode(Memory::GetPointerUnchecked(addr) + i, left)); + } + req.ws->AddFragment(false, "\""); +} + +// Read a NUL terminated string from memory (memory.readString) +// +// Parameters: +// - address: unsigned integer address for the start of the memory range. +// - type: optional, 'utf-8' (default) or 'base64'. +// +// Response (same event name) for 'utf8': +// - value: string value read. +// +// Response (same event name) for 'base64': +// - base64: base64 encode of binary data, not including NUL. +void WebSocketMemoryReadString(DebuggerRequest &req) { + auto memLock = Memory::Lock(); + if (!currentDebugMIPS->isAlive() || !Memory::IsActive()) + return req.Fail("CPU not started"); + + uint32_t addr; + if (!req.ParamU32("address", &addr)) + return; + std::string type = "utf-8"; + if (!req.ParamString("type", &type, DebuggerParamType::OPTIONAL)) + return; + if (type != "utf-8" && type != "base64") + return req.Fail("Invalid type, must be either utf-8 or base64"); + + if (!Memory::IsValidAddress(addr)) + return req.Fail("Invalid address"); + + // Let's try to avoid crashing and get a safe length. + const uint8_t *p = Memory::GetPointerUnchecked(addr); + size_t longest = Memory::ValidSize(addr, Memory::g_MemorySize); + size_t len = strnlen((const char *)p, longest); + + JsonWriter &json = req.Respond(); + if (type == "utf-8") { + json.writeString("value", std::string((const char *)p, len)); + } else if (type == "base64") { + json.writeString("base64", Base64Encode(p, len)); + } +} + // Write a byte to memory (memory.write_u8) // // Parameters: @@ -118,15 +210,14 @@ void WebSocketMemoryReadU32(DebuggerRequest &req) { // - value: new value, unsigned integer void WebSocketMemoryWriteU8(DebuggerRequest &req) { auto memLock = Memory::Lock(); - uint32_t addr, val; + if (!currentDebugMIPS->isAlive() || !Memory::IsActive()) + return req.Fail("CPU not started"); + uint32_t addr, val; if (!req.ParamU32("address", &addr, false)) { - req.Fail("No address given"); return; } - if (!req.ParamU32("value", &val, false)) { - req.Fail("No value given"); return; } @@ -150,15 +241,14 @@ void WebSocketMemoryWriteU8(DebuggerRequest &req) { // - value: new value, unsigned integer void WebSocketMemoryWriteU16(DebuggerRequest &req) { auto memLock = Memory::Lock(); - uint32_t addr, val; + if (!currentDebugMIPS->isAlive() || !Memory::IsActive()) + return req.Fail("CPU not started"); + uint32_t addr, val; if (!req.ParamU32("address", &addr, false)) { - req.Fail("No address given"); return; } - if (!req.ParamU32("value", &val, false)) { - req.Fail("No value given"); return; } @@ -182,15 +272,14 @@ void WebSocketMemoryWriteU16(DebuggerRequest &req) { // - value: new value, unsigned integer void WebSocketMemoryWriteU32(DebuggerRequest &req) { auto memLock = Memory::Lock(); - uint32_t addr, val; + if (!currentDebugMIPS->isAlive() || !Memory::IsActive()) + return req.Fail("CPU not started"); + uint32_t addr, val; if (!req.ParamU32("address", &addr, false)) { - req.Fail("No address given"); return; } - if (!req.ParamU32("value", &val, false)) { - req.Fail("No value given"); return; } @@ -203,3 +292,34 @@ void WebSocketMemoryWriteU32(DebuggerRequest &req) { JsonWriter &json = req.Respond(); json.writeUint("value", Memory::Read_U32(addr)); } + +// Write bytes to memory (memory.write) +// +// Parameters: +// - address: unsigned integer address for the start of the memory range. +// - base64: data to write, encoded as base64 string +// +// Response (same event name) with no extra data. +void WebSocketMemoryWrite(DebuggerRequest &req) { + auto memLock = Memory::Lock(); + if (!currentDebugMIPS->isAlive() || !Memory::IsActive()) + return req.Fail("CPU not started"); + + uint32_t addr; + if (!req.ParamU32("address", &addr)) + return; + std::string encoded; + if (!req.ParamString("base64", &encoded)) + return; + + std::vector value = Base64Decode(&encoded[0], encoded.size()); + uint32_t size = (uint32_t)value.size(); + + if (!Memory::IsValidAddress(addr)) + return req.Fail("Invalid address"); + else if (value.size() != (size_t)size || !Memory::IsValidRange(addr, size)) + return req.Fail("Invalid size"); + + Memory::MemcpyUnchecked(addr, &value[0], size); + req.Respond(); +} diff --git a/Core/Debugger/WebSocket/MemorySubscriber.h b/Core/Debugger/WebSocket/MemorySubscriber.h index 32e8e898c027..8dfb2ade7ad6 100644 --- a/Core/Debugger/WebSocket/MemorySubscriber.h +++ b/Core/Debugger/WebSocket/MemorySubscriber.h @@ -24,6 +24,9 @@ DebuggerSubscriber *WebSocketMemoryInit(DebuggerEventHandlerMap &map); void WebSocketMemoryReadU8(DebuggerRequest &req); void WebSocketMemoryReadU16(DebuggerRequest &req); void WebSocketMemoryReadU32(DebuggerRequest &req); +void WebSocketMemoryRead(DebuggerRequest &req); +void WebSocketMemoryReadString(DebuggerRequest &req); void WebSocketMemoryWriteU8(DebuggerRequest &req); void WebSocketMemoryWriteU16(DebuggerRequest &req); void WebSocketMemoryWriteU32(DebuggerRequest &req); +void WebSocketMemoryWrite(DebuggerRequest &req); diff --git a/Core/Dialog/PSPDialog.cpp b/Core/Dialog/PSPDialog.cpp index 2a65cb03a73f..561b8186846b 100644 --- a/Core/Dialog/PSPDialog.cpp +++ b/Core/Dialog/PSPDialog.cpp @@ -209,6 +209,12 @@ PPGeStyle PSPDialog::FadedStyle(PPGeAlign align, float scale) { return textStyle; } +PPGeImageStyle PSPDialog::FadedImageStyle() { + PPGeImageStyle style; + style.color = CalcFadedColor(style.color); + return style; +} + void PSPDialog::DisplayButtons(int flags, const char *caption) { bool useCaption = false; diff --git a/Core/Dialog/PSPDialog.h b/Core/Dialog/PSPDialog.h index abf652f18c09..5aaeea0dcc2b 100644 --- a/Core/Dialog/PSPDialog.h +++ b/Core/Dialog/PSPDialog.h @@ -85,6 +85,7 @@ class PSPDialog void EndDraw(); protected: PPGeStyle FadedStyle(PPGeAlign align, float scale); + PPGeImageStyle FadedImageStyle(); void UpdateButtons(); bool IsButtonPressed(int checkButton); bool IsButtonHeld(int checkButton, int &framesHeld, int framesHeldThreshold = 30, int framesHeldRepeatRate = 10); diff --git a/Core/Dialog/PSPMsgDialog.cpp b/Core/Dialog/PSPMsgDialog.cpp index d68abaa9b522..8361adbc3e9e 100755 --- a/Core/Dialog/PSPMsgDialog.cpp +++ b/Core/Dialog/PSPMsgDialog.cpp @@ -149,11 +149,11 @@ int PSPMsgDialog::Init(unsigned int paramAddr) { void PSPMsgDialog::FormatErrorCode(uint32_t code) { - auto di = GetI18NCategory("Dialog"); + auto err = GetI18NCategory("Dialog"); switch (code) { case SCE_UTILITY_SAVEDATA_ERROR_LOAD_DATA_BROKEN: - snprintf(msgText, 512, "%s (%08x)", di->T("MsgErrorSavedataDataBroken", "Save data was corrupt."), code); + snprintf(msgText, 512, "%s (%08x)", err->T("MsgErrorSavedataDataBroken", "Save data was corrupt."), code); break; case SCE_UTILITY_SAVEDATA_ERROR_LOAD_NO_MS: @@ -161,23 +161,23 @@ void PSPMsgDialog::FormatErrorCode(uint32_t code) { case SCE_UTILITY_SAVEDATA_ERROR_SAVE_NO_MS: case SCE_UTILITY_SAVEDATA_ERROR_DELETE_NO_MS: case SCE_UTILITY_SAVEDATA_ERROR_SIZES_NO_MS: - snprintf(msgText, 512, "%s (%08x)", di->T("MsgErrorSavedataNoMS", "Memory stick not inserted."), code); + snprintf(msgText, 512, "%s (%08x)", err->T("MsgErrorSavedataNoMS", "Memory stick not inserted."), code); break; case SCE_UTILITY_SAVEDATA_ERROR_LOAD_NO_DATA: case SCE_UTILITY_SAVEDATA_ERROR_RW_NO_DATA: case SCE_UTILITY_SAVEDATA_ERROR_DELETE_NO_DATA: case SCE_UTILITY_SAVEDATA_ERROR_SIZES_NO_DATA: - snprintf(msgText, 512, "%s (%08x)", di->T("MsgErrorSavedataNoData", "Warning: no save data was found."), code); + snprintf(msgText, 512, "%s (%08x)", err->T("MsgErrorSavedataNoData", "Warning: no save data was found."), code); break; case SCE_UTILITY_SAVEDATA_ERROR_RW_MEMSTICK_FULL: case SCE_UTILITY_SAVEDATA_ERROR_SAVE_MS_NOSPACE: - snprintf(msgText, 512, "%s (%08x)", di->T("MsgErrorSavedataMSFull", "Memory stick full. Check your storage space."), code); + snprintf(msgText, 512, "%s (%08x)", err->T("MsgErrorSavedataMSFull", "Memory stick full. Check your storage space."), code); break; default: - snprintf(msgText, 512, "%s %08x", di->T("MsgErrorCode", "Error code:"), code); + snprintf(msgText, 512, "%s %08x", err->T("MsgErrorCode", "Error code:"), code); } } diff --git a/Core/Dialog/PSPNetconfDialog.cpp b/Core/Dialog/PSPNetconfDialog.cpp index 1de5deb3d062..b7126d334881 100644 --- a/Core/Dialog/PSPNetconfDialog.cpp +++ b/Core/Dialog/PSPNetconfDialog.cpp @@ -104,15 +104,14 @@ void PSPNetconfDialog::DrawBanner() { textStyle.hasShadow = false; // TODO: Draw a hexagon icon - PPGeDrawImage(10, 5, 11.0f, 10.0f, 1, 10, 1, 10, 10, 10, CalcFadedColor(0xFFFFFFFF)); + PPGeDrawImage(10, 5, 11.0f, 10.0f, 1, 10, 1, 10, 10, 10, FadedImageStyle()); auto di = GetI18NCategory("Dialog"); PPGeDrawText(di->T("Network Connection"), 31, 10, textStyle); } void PSPNetconfDialog::DrawIndicator() { - // TODO: Draw animated circle as processing indicator - PPGeDrawImage(456, 248, 20.0f, 20.0f, 1, 10, 1, 10, 10, 10, CalcFadedColor(0xFFFFFFFF)); + PPGeDrawImage(456, 248, 20.0f, 20.0f, 1, 10, 1, 10, 10, 10, FadedImageStyle()); } void PSPNetconfDialog::DisplayMessage(std::string text1, std::string text2a, std::string text2b, std::string text3a, std::string text3b, bool hasYesNo, bool hasOK) { @@ -348,7 +347,7 @@ int PSPNetconfDialog::Update(int animSpeed) { if (g_Config.iWlanAdhocChannel == PSP_SYSTEMPARAM_ADHOC_CHANNEL_AUTOMATIC) channel = "Automatic"; - DisplayMessage(di->T("ConnectingPleaseWait", "Connecting.\nPlease wait..."), di->T("Channel") + std::string(" ") + di->T(channel)); + DisplayMessage(di->T("ConnectingPleaseWait", "Connecting.\nPlease wait..."), di->T("Channel:") + std::string(" ") + di->T(channel)); // Only Join mode is showing Cancel button on KHBBS and the button will fade out before the dialog is fading out, probably because it's already connected thus can't be canceled anymore if (request.netAction == NETCONF_JOIN_ADHOC) diff --git a/Core/Dialog/PSPSaveDialog.cpp b/Core/Dialog/PSPSaveDialog.cpp index 0266cd0d4acf..ee584cd6986e 100755 --- a/Core/Dialog/PSPSaveDialog.cpp +++ b/Core/Dialog/PSPSaveDialog.cpp @@ -331,7 +331,7 @@ void PSPSaveDialog::DisplayBanner(int which) break; } // TODO: Draw a hexagon icon - PPGeDrawImage(10, 6, 12.0f, 12.0f, 1, 10, 1, 10, 10, 10, textStyle.color); + PPGeDrawImage(10, 6, 12.0f, 12.0f, 1, 10, 1, 10, 10, 10, FadedImageStyle()); PPGeDrawText(title, 30, 11, textStyle); } @@ -340,13 +340,12 @@ void PSPSaveDialog::DisplaySaveList(bool canMove) { static int upFramesHeld = 0; static int downFramesHeld = 0; - for (int displayCount = 0; displayCount < param.GetFilenameCount(); displayCount++) - { - int textureColor = 0xFFFFFFFF; + for (int displayCount = 0; displayCount < param.GetFilenameCount(); displayCount++) { + PPGeImageStyle imageStyle = FadedImageStyle(); auto fileInfo = param.GetFileInfo(displayCount); if (fileInfo.size == 0 && fileInfo.texture != NULL) - textureColor = 0xFF777777; + imageStyle.color = CalcFadedColor(0xFF777777); // Calc save image position on screen float w, h , x, b; @@ -380,7 +379,7 @@ void PSPSaveDialog::DisplaySaveList(bool canMove) { fileInfo.texture->SetTexture(); tw = fileInfo.texture->Width(); th = fileInfo.texture->Height(); - PPGeDrawImage(x, y, w, h, 0, 0, 1, 1, tw, th, textureColor); + PPGeDrawImage(x, y, w, h, 0, 0, 1, 1, tw, th, imageStyle); } PPGeSetDefaultTexture(); } @@ -397,11 +396,11 @@ void PSPSaveDialog::DisplaySaveList(bool canMove) { void PSPSaveDialog::DisplaySaveIcon(bool checkExists) { std::lock_guard guard(paramLock); - int textureColor = CalcFadedColor(0xFFFFFFFF); + PPGeImageStyle imageStyle = FadedImageStyle(); auto curSave = param.GetFileInfo(currentSelectedSave); if (curSave.size == 0 && checkExists) - textureColor = CalcFadedColor(0xFF777777); + imageStyle.color = CalcFadedColor(0xFF777777); // Calc save image position on screen float w = 144; @@ -418,7 +417,7 @@ void PSPSaveDialog::DisplaySaveIcon(bool checkExists) } else { PPGeDisableTexture(); } - PPGeDrawImage(x, y, w, h, 0, 0, 1, 1, tw, th, textureColor); + PPGeDrawImage(x, y, w, h, 0, 0, 1, 1, tw, th, imageStyle); PPGeSetDefaultTexture(); } @@ -739,7 +738,7 @@ int PSPSaveDialog::Update(int animSpeed) StartDraw(); DisplaySaveIcon(true); - DisplaySaveDataInfo2(true); + DisplaySaveDataInfo2(); DisplayMessage(di->T("Save completed")); diff --git a/Core/Dialog/SavedataParam.cpp b/Core/Dialog/SavedataParam.cpp index 5c3fc8e2c465..354fd3b82348 100644 --- a/Core/Dialog/SavedataParam.cpp +++ b/Core/Dialog/SavedataParam.cpp @@ -1404,8 +1404,7 @@ void SavedataParam::Clear() int SavedataParam::SetPspParam(SceUtilitySavedataParam *param) { pspParam = param; - if (!pspParam) - { + if (!pspParam) { Clear(); return 0; } @@ -1420,17 +1419,7 @@ int SavedataParam::SetPspParam(SceUtilitySavedataParam *param) if (save.type != FILETYPE_DIRECTORY || save.name == "." || save.name == "..") continue; std::string fileDataDir = savePath + save.name; - PSPFileInfo info = pspFileSystem.GetFileInfo(fileDataDir); - auto allFiles = pspFileSystem.GetDirListing(fileDataDir); - bool firstFile = true; - for (auto file : allFiles) { - if (firstFile) { - // Use a file in save directory to determine the directory info. - info = file; - firstFile = false; - } else - info.size += file.size; - } + PSPFileInfo info = GetSaveInfo(fileDataDir); SetFileInfo(realCount, info, "", save.name); realCount++; } @@ -1439,29 +1428,24 @@ int SavedataParam::SetPspParam(SceUtilitySavedataParam *param) } bool listEmptyFile = true; - if (param->mode == SCE_UTILITY_SAVEDATA_TYPE_LISTLOAD || - param->mode == SCE_UTILITY_SAVEDATA_TYPE_LISTDELETE) - { + if (param->mode == SCE_UTILITY_SAVEDATA_TYPE_LISTLOAD || param->mode == SCE_UTILITY_SAVEDATA_TYPE_LISTDELETE) { listEmptyFile = false; } SceUtilitySavedataSaveName *saveNameListData; bool hasMultipleFileName = false; - if (param->saveNameList.IsValid()) - { + if (param->saveNameList.IsValid()) { Clear(); saveNameListData = param->saveNameList; // Get number of fileName in array saveDataListCount = 0; - while (saveNameListData[saveDataListCount][0] != 0) - { + while (saveNameListData[saveDataListCount][0] != 0) { saveDataListCount++; } - if (saveDataListCount > 0 && wouldHasMultiSaveName(param)) - { + if (saveDataListCount > 0 && wouldHasMultiSaveName(param)) { hasMultipleFileName = true; saveDataList = new SaveFileInfo[saveDataListCount]; @@ -1482,7 +1466,7 @@ int SavedataParam::SetPspParam(SceUtilitySavedataParam *param) if(IsInSaveDataList(saveName, realCount)) // Already in SaveDataList, skip... continue; - fileDataPath = savePath + it->name + "/" + GetFileName(param); + fileDataPath = savePath + it->name; PSPFileInfo info = pspFileSystem.GetFileInfo(fileDataPath); if (info.exists) { SetFileInfo(realCount, info, saveName); @@ -1501,38 +1485,28 @@ int SavedataParam::SetPspParam(SceUtilitySavedataParam *param) } const std::string thisSaveName = FixedToString(saveNameListData[i], ARRAY_SIZE(saveNameListData[i])); - DEBUG_LOG(SCEUTILITY, "Name : %s", thisSaveName.c_str()); std::string fileDataDir = savePath + GetGameName(param) + thisSaveName; - PSPFileInfo info = pspFileSystem.GetFileInfo(fileDataDir); + PSPFileInfo info = GetSaveInfo(fileDataDir); if (info.exists) { - auto allFiles = pspFileSystem.GetDirListing(fileDataDir); - bool firstFile = true; - for (auto file : allFiles) { - if (firstFile) { - // Use a file in save directory to determine the directory info. - info = file; - firstFile = false; - } else - info.size += file.size; - } SetFileInfo(realCount, info, thisSaveName); - - DEBUG_LOG(SCEUTILITY,"%s Exist",fileDataDir.c_str()); + DEBUG_LOG(SCEUTILITY, "Save data exists: %s = %s", thisSaveName.c_str(), fileDataDir.c_str()); realCount++; } else { if (listEmptyFile) { ClearFileInfo(saveDataList[realCount], thisSaveName); - DEBUG_LOG(SCEUTILITY,"Don't Exist"); + DEBUG_LOG(SCEUTILITY, "Listing missing save data: %s = %s", thisSaveName.c_str(), fileDataDir.c_str()); realCount++; + } else { + DEBUG_LOG(SCEUTILITY, "Save data not found: %s = %s", thisSaveName.c_str(), fileDataDir.c_str()); } } } saveNameListDataCount = realCount; } } - if (!hasMultipleFileName) // Load info on only save - { + // Load info on only save + if (!hasMultipleFileName) { saveNameListData = 0; Clear(); @@ -1540,33 +1514,18 @@ int SavedataParam::SetPspParam(SceUtilitySavedataParam *param) saveDataListCount = 1; // get and stock file info for each file - DEBUG_LOG(SCEUTILITY,"Name : %s",GetSaveName(param).c_str()); - std::string fileDataDir = savePath + GetGameName(param) + GetSaveName(param); - PSPFileInfo info = pspFileSystem.GetFileInfo(fileDataDir); - if (info.exists) - { - auto allFiles = pspFileSystem.GetDirListing(fileDataDir); - bool firstFile = true; - for (auto file : allFiles) { - if (firstFile) { - // Use a file in save directory to determine the directory info. - info = file; - firstFile = false; - } else - info.size += file.size; - } + PSPFileInfo info = GetSaveInfo(fileDataDir); + if (info.exists) { SetFileInfo(0, info, GetSaveName(param)); - - DEBUG_LOG(SCEUTILITY,"%s Exist",fileDataDir.c_str()); + DEBUG_LOG(SCEUTILITY, "Save data exists: %s = %s", GetSaveName(param).c_str(), fileDataDir.c_str()); saveNameListDataCount = 1; - } - else - { - if (listEmptyFile) - { + } else { + if (listEmptyFile) { ClearFileInfo(saveDataList[0], GetSaveName(param)); - DEBUG_LOG(SCEUTILITY,"Don't Exist"); + DEBUG_LOG(SCEUTILITY, "Listing missing save data: %s = %s", GetSaveName(param).c_str(), fileDataDir.c_str()); + } else { + DEBUG_LOG(SCEUTILITY, "Save data not found: %s = %s", GetSaveName(param).c_str(), fileDataDir.c_str()); } saveNameListDataCount = 0; return 0; @@ -1652,6 +1611,30 @@ void SavedataParam::ClearFileInfo(SaveFileInfo &saveInfo, const std::string &sav } } +PSPFileInfo SavedataParam::GetSaveInfo(std::string saveDir) { + PSPFileInfo info = pspFileSystem.GetFileInfo(saveDir); + if (info.exists) { + info.access = 0777; + auto allFiles = pspFileSystem.GetDirListing(saveDir); + bool firstFile = true; + for (auto file : allFiles) { + if (file.type == FILETYPE_DIRECTORY || file.name == "." || file.name == "..") + continue; + // Use a file to determine save date. + if (firstFile) { + info.ctime = file.ctime; + info.mtime = file.mtime; + info.atime = file.atime; + info.size += file.size; + firstFile = false; + } else { + info.size += file.size; + } + } + } + return info; +} + SceUtilitySavedataParam *SavedataParam::GetPspParam() { return pspParam; diff --git a/Core/Dialog/SavedataParam.h b/Core/Dialog/SavedataParam.h index 6e39fd30e19b..dea8140c3386 100644 --- a/Core/Dialog/SavedataParam.h +++ b/Core/Dialog/SavedataParam.h @@ -366,6 +366,7 @@ class SavedataParam void SetFileInfo(int idx, PSPFileInfo &info, std::string saveName, std::string saveDir = ""); void SetFileInfo(SaveFileInfo &saveInfo, PSPFileInfo &info, std::string saveName, std::string saveDir = ""); void ClearFileInfo(SaveFileInfo &saveInfo, const std::string &saveName); + PSPFileInfo GetSaveInfo(std::string saveDir); int LoadSaveData(SceUtilitySavedataParam *param, const std::string &saveDirName, const std::string& dirPath, bool secureMode); void LoadCryptedSave(SceUtilitySavedataParam *param, u8 *data, const u8 *saveData, int &saveSize, int prevCryptMode, const u8 *expectedHash, bool &saveDone); diff --git a/Core/ELF/ParamSFO.h b/Core/ELF/ParamSFO.h index aac91f12e73c..b0fee3cece95 100644 --- a/Core/ELF/ParamSFO.h +++ b/Core/ELF/ParamSFO.h @@ -42,7 +42,11 @@ class ParamSFOData const std::string discID = GetValueString("DISC_ID"); if (discID.empty()) { std::string fakeID = GenerateFakeID(); - WARN_LOG(LOADER, "No DiscID found - generating a fake one: %s", fakeID.c_str()); + WARN_LOG(LOADER, "No DiscID found - generating a fake one: '%s'", fakeID.c_str()); + ValueData data; + data.type = VT_UTF8; + data.s_value = fakeID; + values["DISC_ID"] = data; return fakeID; } return discID; diff --git a/Core/FileLoaders/DiskCachingFileLoader.cpp b/Core/FileLoaders/DiskCachingFileLoader.cpp index 412f409a8454..93b2bebd383e 100644 --- a/Core/FileLoaders/DiskCachingFileLoader.cpp +++ b/Core/FileLoaders/DiskCachingFileLoader.cpp @@ -98,6 +98,10 @@ size_t DiskCachingFileLoader::ReadAt(s64 absolutePos, size_t bytes, void *data, // While in case the cache size is too small for the entire read. while (readSize < bytes) { readSize += cache_->SaveIntoCache(backend_, absolutePos + readSize, bytes - readSize, (u8 *)data + readSize, flags); + // We're done, nothing more to read. + if (readSize == bytes) { + break; + } // If there are already-cached blocks afterward, we have to read them. size_t bytesFromCache = cache_->ReadFromCache(absolutePos + readSize, bytes - readSize, (u8 *)data + readSize); readSize += bytesFromCache; @@ -441,6 +445,9 @@ bool DiskCachingFileLoaderCache::ReadBlockData(u8 *dest, BlockInfo &info, size_t if (!f_) { return false; } + if (size == 0) { + return true; + } s64 blockOffset = GetBlockOffset(info.block); // Before we read, make sure the buffers are flushed. diff --git a/Core/FileLoaders/LocalFileLoader.cpp b/Core/FileLoaders/LocalFileLoader.cpp index 1a6205bfab1b..232f3764a899 100644 --- a/Core/FileLoaders/LocalFileLoader.cpp +++ b/Core/FileLoaders/LocalFileLoader.cpp @@ -119,6 +119,9 @@ std::string LocalFileLoader::Path() const { } size_t LocalFileLoader::ReadAt(s64 absolutePos, size_t bytes, size_t count, void *data, Flags flags) { + if (bytes == 0) + return 0; + #if PPSSPP_PLATFORM(SWITCH) // Toolchain has no fancy IO API. We must lock. std::lock_guard guard(readLock_); diff --git a/Core/FileSystems/FileSystem.h b/Core/FileSystems/FileSystem.h index 46cd7a6dbc8e..acb38523280e 100644 --- a/Core/FileSystems/FileSystem.h +++ b/Core/FileSystems/FileSystem.h @@ -20,6 +20,7 @@ #include #include #include +#include #include "Common.h" #include "Core/HLE/sceKernel.h" diff --git a/Core/FileSystems/ISOFileSystem.cpp b/Core/FileSystems/ISOFileSystem.cpp index 4484ac811024..8f6b84bd7c7c 100644 --- a/Core/FileSystems/ISOFileSystem.cpp +++ b/Core/FileSystems/ISOFileSystem.cpp @@ -63,13 +63,27 @@ bool parseLBN(std::string filename, u32 *sectorStart, u32 *readSize) { #pragma pack(push) #pragma pack(1) +struct u32_le_be_pair { + u8 valueLE[4]; + u8 valueBE[4]; + operator u32() const { + return valueLE[0] + (valueLE[1] << 8) + (valueLE[2] << 16) + (valueLE[3] << 24); + } +}; + +struct u16_le_be_pair { + u8 valueLE[2]; + u8 valueBE[2]; + operator u16() const { + return valueLE[0] + (valueLE[1] << 8); + } +}; + struct DirectoryEntry { u8 size; u8 sectorsInExtendedRecord; - u32_le firstDataSectorLE; // LBA - u32_be firstDataSectorBE; - u32_le dataLengthLE; // Size - u32_be dataLengthBE; + u32_le_be_pair firstDataSector; // LBA + u32_le_be_pair dataLength; // Size u8 years; u8 month; u8 day; @@ -80,38 +94,9 @@ struct DirectoryEntry { u8 flags; // 2 = directory u8 fileUnitSize; u8 interleaveGap; - u16_le volSeqNumberLE; - u16_be volSeqNumberBE; + u16_le_be_pair volSeqNumber; u8 identifierLength; //identifier comes right after u8 firstIdChar; - -#if COMMON_LITTLE_ENDIAN - u32 firstDataSector() const - { - return firstDataSectorLE; - } - u32 dataLength() const - { - return dataLengthLE; - } - u32 volSeqNumber() const - { - return volSeqNumberLE; - } -#else - u32 firstDataSector() const - { - return firstDataSectorBE; - } - u32 dataLength() const - { - return dataLengthBE; - } - u32 volSeqNumber() const - { - return volSeqNumberBE; - } -#endif }; struct DirectorySector { @@ -126,25 +111,16 @@ struct VolDescriptor { char sysid[32]; char volid[32]; char zeros[8]; - u32_le numSectorsLE; - u32_be numSectoreBE; + u32_le_be_pair numSectors; char morezeros[32]; - u16_le volSetSizeLE; - u16_be volSetSizeBE; - u16_le volSeqNumLE; - u16_be volSeqNumBE; - u16_le sectorSizeLE; - u16_be sectorSizeBE; - u32_le pathTableLengthLE; - u32_be pathTableLengthBE; - u16_le firstLETableSectorLE; - u16_be firstLETableSectorBE; - u16_le secondLETableSectorLE; - u16_be secondLETableSectorBE; - u16_le firstBETableSectorLE; - u16_be firstBETableSectorBE; - u16_le secondBETableSectorLE; - u16_be secondBETableSectorBE; + u16_le_be_pair volSetSize; + u16_le_be_pair volSeqNum; + u16_le_be_pair sectorSize; + u32_le_be_pair pathTableLength; + u16_le_be_pair firstLETableSector; + u16_le_be_pair secondLETableSector; + u16_le_be_pair firstBETableSector; + u16_le_be_pair secondBETableSector; DirectoryEntry root; char volumeSetIdentifier[128]; char publisherIdentifier[128]; @@ -192,8 +168,8 @@ ISOFileSystem::ISOFileSystem(IHandleAllocator *_hAlloc, BlockDevice *_blockDevic return; } - treeroot->startsector = desc.root.firstDataSector(); - treeroot->dirsize = desc.root.dataLength(); + treeroot->startsector = desc.root.firstDataSector; + treeroot->dirsize = desc.root.dataLength; } ISOFileSystem::~ISOFileSystem() { @@ -244,16 +220,15 @@ void ISOFileSystem::ReadDirectory(TreeEntry *root) { relative = false; } - entry->size = dir.dataLength(); - entry->startingPosition = dir.firstDataSector() * 2048; + entry->size = dir.dataLength; + entry->startingPosition = dir.firstDataSector * 2048; entry->isDirectory = !isFile; entry->flags = dir.flags; entry->parent = root; - entry->startsector = dir.firstDataSector(); - entry->dirsize = dir.dataLength(); + entry->startsector = dir.firstDataSector; + entry->dirsize = dir.dataLength; entry->valid = isFile; // Can pre-mark as valid if file, as we don't recurse into those. - // Let's not excessively spam the log - I commented this line out. - //DEBUG_LOG(FILESYS, "%s: %s %08x %08x %i", entry->isDirectory?"D":"F", entry->name.c_str(), dir.firstDataSectorLE, entry->startingPosition, entry->startingPosition); + VERBOSE_LOG(FILESYS, "%s: %s %08x %08x %i", entry->isDirectory ? "D" : "F", entry->name.c_str(), (u32)dir.firstDataSector, entry->startingPosition, entry->startingPosition); if (entry->isDirectory && !relative) { if (entry->startsector == root->startsector) { @@ -438,11 +413,11 @@ int ISOFileSystem::Ioctl(u32 handle, u32 cmd, u32 indataPtr, u32 inlen, u32 outd VolDescriptor desc; blockDevice->ReadBlock(16, (u8 *)&desc); - if (outlen < (u32)desc.pathTableLengthLE) { + if (outlen < (u32)desc.pathTableLength) { return SCE_KERNEL_ERROR_ERRNO_INVALID_ARGUMENT; } else { - int block = (u16)desc.firstLETableSectorLE; - u32 size = (u32)desc.pathTableLengthLE; + int block = (u16)desc.firstLETableSector; + u32 size = (u32)desc.pathTableLength; u8 *out = Memory::GetPointer(outdataPtr); int blocks = size / blockDevice->GetBlockSize(); diff --git a/Core/Font/PGF.cpp b/Core/Font/PGF.cpp index ae3afa57b848..deec9d589eff 100644 --- a/Core/Font/PGF.cpp +++ b/Core/Font/PGF.cpp @@ -53,8 +53,10 @@ static int getBits(int numBits, const u8 *buf, size_t pos) { const u8 done = 32 - bitoff; const u8 remaining = numBits - done; - const u32 mask = (1 << remaining) - 1; - v |= (wordbuf[wordpos + 1] & mask) << done; + if (remaining > 0) { + const u32 mask = (1 << remaining) - 1; + v |= (wordbuf[wordpos + 1] & mask) << done; + } return v; } } diff --git a/Core/HLE/HLE.cpp b/Core/HLE/HLE.cpp index eb4575fea6ba..e57afafe6627 100644 --- a/Core/HLE/HLE.cpp +++ b/Core/HLE/HLE.cpp @@ -732,6 +732,7 @@ void CallSyscall(MIPSOpcode op) int funcnum = callno & 0xFFF; int modulenum = (callno & 0xFF000) >> 12; double total = time_now_d() - start - hleSteppingTime; + _dbg_assert_msg_(total >= 0.0, "Time spent in syscall became negative"); hleSteppingTime = 0.0; updateSyscallStats(modulenum, funcnum, total); } diff --git a/Core/HLE/HLETables.cpp b/Core/HLE/HLETables.cpp index 562fdbf931fe..cb775c7ebf20 100644 --- a/Core/HLE/HLETables.cpp +++ b/Core/HLE/HLETables.cpp @@ -304,6 +304,7 @@ void RegisterAllModules() { Register_sceUsbMic(); Register_sceOpenPSID_driver(); Register_semaphore(); + Register_sceDdrdb(); // add new modules here. } diff --git a/Core/HLE/proAdhoc.cpp b/Core/HLE/proAdhoc.cpp index 416716561a1c..0e2b957f5867 100644 --- a/Core/HLE/proAdhoc.cpp +++ b/Core/HLE/proAdhoc.cpp @@ -128,16 +128,19 @@ bool isPDPPortInUse(uint16_t port) { return false; } -bool isPTPPortInUse(uint16_t port, bool forListen) { +bool isPTPPortInUse(uint16_t port, bool forListen, SceNetEtherAddr* dstmac, uint16_t dstport) { // Iterate Sockets for (int i = 0; i < MAX_SOCKET; i++) { auto sock = adhocSockets[i]; if (sock != NULL && sock->type == SOCK_PTP) - // It's allowed to Listen and Open the same PTP port, But it's not allowed to Listen or Open the same PTP port twice. - if (sock->data.ptp.lport == port && - ((forListen && sock->data.ptp.state == ADHOC_PTP_STATE_LISTEN) || - (!forListen && sock->data.ptp.state != ADHOC_PTP_STATE_LISTEN))) + // It's allowed to Listen and Open the same PTP port, But it's not allowed to Listen or Open the same PTP port twice (unless destination mac or port are different). + if (sock->data.ptp.lport == port && + ((forListen && sock->data.ptp.state == ADHOC_PTP_STATE_LISTEN) || + (!forListen && sock->data.ptp.state != ADHOC_PTP_STATE_LISTEN && + sock->data.ptp.pport == dstport && dstmac != nullptr && isMacMatch(&sock->data.ptp.paddr, dstmac)))) + { return true; + } } // Unused Port return false; @@ -1136,18 +1139,18 @@ void AfterMatchingMipsCall::SetData(int ContextID, int eventId, u32_le BufAddr) bool SetMatchingInCallback(SceNetAdhocMatchingContext* context, bool IsInCB) { if (context == NULL) return false; - context->eventlock->lock(); //peerlock.lock(); + peerlock.lock(); context->IsMatchingInCB = IsInCB; - context->eventlock->unlock(); //peerlock.unlock(); + peerlock.unlock(); return IsInCB; } bool IsMatchingInCallback(SceNetAdhocMatchingContext* context) { bool inCB = false; if (context == NULL) return inCB; - context->eventlock->lock(); //peerlock.lock(); + peerlock.lock(); inCB = (context->IsMatchingInCB); - context->eventlock->unlock(); //peerlock.unlock(); + peerlock.unlock(); return inCB; } @@ -1203,18 +1206,24 @@ void notifyAdhocctlHandlers(u32 flag, u32 error) { // Note: Must not lock peerlock within this function to prevent race-condition with other thread whos owning peerlock and trying to lock context->eventlock owned by this thread void notifyMatchingHandler(SceNetAdhocMatchingContext * context, ThreadMessage * msg, void * opt, u32_le &bufAddr, u32_le &bufLen, u32_le * args) { // Don't share buffer address space with other mipscall in the queue since mipscalls aren't immediately executed - MatchingArgs argsNew; + MatchingArgs argsNew = { 0 }; u32_le dataBufLen = msg->optlen + 8; //max(bufLen, msg->optlen + 8); u32_le dataBufAddr = userMemory.Alloc(dataBufLen); // We will free this memory after returning from mipscall uint8_t * dataPtr = Memory::GetPointer(dataBufAddr); - memcpy(dataPtr, &msg->mac, sizeof(msg->mac)); - if (msg->optlen > 0) - memcpy(dataPtr + 8, opt, msg->optlen); - argsNew.data[0] = context->id; - argsNew.data[1] = msg->opcode; - argsNew.data[2] = dataBufAddr; - argsNew.data[3] = msg->optlen; - argsNew.data[4] = dataBufAddr + 8; // OptData Addr + if (dataPtr) { + memcpy(dataPtr, &msg->mac, sizeof(msg->mac)); + if (msg->optlen > 0) + memcpy(dataPtr + 8, opt, msg->optlen); + + argsNew.data[1] = msg->opcode; + argsNew.data[2] = dataBufAddr; + argsNew.data[3] = msg->optlen; + argsNew.data[4] = dataBufAddr + 8; // OptData Addr + } + else { + argsNew.data[1] = PSP_ADHOC_MATCHING_EVENT_ERROR; // not sure where to put the error code for EVENT_ERROR tho + } + argsNew.data[0] = context->id; argsNew.data[5] = context->handler.entryPoint; //not part of callback argument, just borrowing a space to store callback address so i don't need to search the context first later // ScheduleEvent_Threadsafe_Immediate seems to get mixed up with interrupt (returning from mipscall inside an interrupt) and getting invalid address before returning from interrupt @@ -1887,13 +1896,25 @@ uint16_t getLocalPort(int sock) { return ntohs(localAddr.sin_port); } -u_long getAvailToRecv(int sock) { +u_long getAvailToRecv(int sock, int udpBufferSize) { u_long n = 0; // Typical MTU size is 1500 + int err = -1; #if defined(_WIN32) // May not be available on all platform - ioctlsocket(sock, FIONREAD, &n); + err = ioctlsocket(sock, FIONREAD, &n); #else - ioctl(sock, FIONREAD, &n); + err = ioctl(sock, FIONREAD, &n); #endif + if (err < 0) + return 0; + + if (udpBufferSize > 0 && n > 0) { + // TODO: Cap number of bytes of full DGRAM message(s) up to buffer size + char buf[8]; + // Each recv can only received one message, not sure how to read the next pending msg without actually receiving the first one + err = recvfrom(sock, buf, sizeof(buf), MSG_PEEK | MSG_NOSIGNAL | MSG_TRUNC, NULL, NULL); + if (err >= 0) + return (u_long)err; + } return n; } @@ -1918,6 +1939,11 @@ int setSockBufferSize(int sock, int opt, int size) { // opt = SO_RCVBUF/SO_SNDBU return setsockopt(sock, SOL_SOCKET, opt, (char *)&n, sizeof(n)); } +int setSockMSS(int sock, int size) { + int mss = size; // 1460; + return setsockopt(sock, IPPROTO_TCP, TCP_MAXSEG, (char*)&mss, sizeof(mss)); +} + int setSockTimeout(int sock, int opt, unsigned long timeout_usec) { // opt = SO_SNDTIMEO/SO_RCVTIMEO if (timeout_usec > 0 && timeout_usec < minSocketTimeoutUS) timeout_usec = minSocketTimeoutUS; // Override timeout for high latency multiplayer #if defined(_WIN32) @@ -1940,8 +1966,21 @@ int getSockNoDelay(int tcpsock) { return opt; } +//#define TCP_QUICKACK 0x0c int setSockNoDelay(int tcpsock, int flag) { int opt = flag; + // Disable ACK Delay when supported +#if defined(TCP_QUICKACK) + setsockopt(tcpsock, IPPROTO_TCP, TCP_QUICKACK, (char*)&opt, sizeof(opt)); +#elif defined(_WIN32) +#if !defined(SIO_TCP_SET_ACK_FREQUENCY) + #define SIO_TCP_SET_ACK_FREQUENCY _WSAIOW(IOC_VENDOR,23) +#endif + int freq = flag? 1:2; // can be 1..255, default is 2 (delayed 200ms) + DWORD retbytes = 0; + WSAIoctl(tcpsock, SIO_TCP_SET_ACK_FREQUENCY, &freq, sizeof(freq), NULL, 0, &retbytes, NULL, NULL); +#endif + // Disable Nagle Algo return setsockopt(tcpsock, IPPROTO_TCP, TCP_NODELAY, (char*)&opt, sizeof(opt)); } @@ -1964,6 +2003,19 @@ int setSockReuseAddrPort(int sock) { return setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, (const char*)&opt, sizeof(opt)); } +int setUDPConnReset(int udpsock, bool enabled) { + // On Windows: Connection Reset error on UDP could cause a strange behavior https://stackoverflow.com/questions/34242622/windows-udp-sockets-recvfrom-fails-with-error-10054 +#if defined(_WIN32) +#if !defined(SIO_UDP_CONNRESET) +#define SIO_UDP_CONNRESET _WSAIOW(IOC_VENDOR, 12) +#endif + BOOL bNewBehavior = enabled; + DWORD dwBytesReturned = 0; + return WSAIoctl(udpsock, SIO_UDP_CONNRESET, &bNewBehavior, sizeof bNewBehavior, NULL, 0, &dwBytesReturned, NULL, NULL); +#endif + return -1; +} + #if !defined(TCP_KEEPIDLE) #define TCP_KEEPIDLE TCP_KEEPALIVE //TCP_KEEPIDLE on Linux is equivalent to TCP_KEEPALIVE on macOS #endif diff --git a/Core/HLE/proAdhoc.h b/Core/HLE/proAdhoc.h index c90a3f9eeac9..ad2b1a626c40 100644 --- a/Core/HLE/proAdhoc.h +++ b/Core/HLE/proAdhoc.h @@ -356,8 +356,8 @@ typedef struct SceNetAdhocPtpStat { SceNetEtherAddr paddr; u16_le lport; u16_le pport; - s32_le snd_sb_cc; // Number of bytes existed in buffer to be sent/flushed? - s32_le rcv_sb_cc; // Number of bytes available in buffer to be received? + u32_le snd_sb_cc; // Number of bytes existed in sendBuffer to be sent/flushed + u32_le rcv_sb_cc; // Number of bytes available in recvBuffer to be received s32_le state; } PACK SceNetAdhocPtpStat; @@ -972,9 +972,11 @@ bool isPDPPortInUse(uint16_t port); * Check whether PTP Port is in use or not (only sockets with non-Listening state will be considered as in use) * @param port To-be-checked Port Number * @param forListen to check for listening or non-listening port + * @param dstmac destination address (non-listening only) + * @param dstport destination port (non-listening only) * @return 1 if in use or... 0 */ -bool isPTPPortInUse(uint16_t port, bool forListen); +bool isPTPPortInUse(uint16_t port, bool forListen, SceNetEtherAddr* dstmac = nullptr, uint16_t dstport = 0); // Convert MAC address to string std::string mac2str(SceNetEtherAddr* mac); @@ -1269,8 +1271,10 @@ bool isPrivateIP(uint32_t ip); /* * Get Number of bytes available in buffer to be Received + * @param sock fd + * @param udpBufferSize (UDP only) */ -u_long getAvailToRecv(int sock); +u_long getAvailToRecv(int sock, int udpBufferSize = 0); /* * Get UDP Socket Max Message Size @@ -1287,6 +1291,11 @@ int getSockBufferSize(int sock, int opt); */ int setSockBufferSize(int sock, int opt, int size); +/* +* Set TCP Socket Maximum Segment Size (default is 1460 on 1500 MTU) +*/ +int setSockMSS(int sock, int size); + /* * Set Socket TimeOut (opt = SO_SNDTIMEO/SO_RCVTIMEO) */ @@ -1312,6 +1321,11 @@ int setSockNoSIGPIPE(int sock, int flag); */ int setSockReuseAddrPort(int sock); +/* +* Set Socket Connection Reset on UDP (which could cause a strange behavior) +*/ +int setUDPConnReset(int udpsock, bool enabled); + /* * Set Socket KeepAlive (opt = SO_KEEPALIVE) */ diff --git a/Core/HLE/sceAudio.cpp b/Core/HLE/sceAudio.cpp index aa247385d491..06996a820532 100644 --- a/Core/HLE/sceAudio.cpp +++ b/Core/HLE/sceAudio.cpp @@ -473,8 +473,29 @@ static u32 sceAudioSRCOutputBlocking(u32 vol, u32 buf) { } static int sceAudioInputBlocking(u32 maxSamples, u32 sampleRate, u32 bufAddr) { - ERROR_LOG(HLE, "UNIMPL sceAudioInputBlocking: maxSamples: %d, samplerate: %d, bufAddr: %08x", maxSamples, sampleRate, bufAddr); - return __MicInputBlocking(maxSamples, sampleRate, bufAddr); + if (!Memory::IsValidAddress(bufAddr)) { + ERROR_LOG(HLE, "sceAudioInputBlocking(%d, %d, %08x): invalid addresses", maxSamples, sampleRate, bufAddr); + return -1; + } + + INFO_LOG(HLE, "sceAudioInputBlocking: maxSamples: %d, samplerate: %d, bufAddr: %08x", maxSamples, sampleRate, bufAddr); + return __MicInput(maxSamples, sampleRate, bufAddr, AUDIOINPUT); +} + +static int sceAudioInput(u32 maxSamples, u32 sampleRate, u32 bufAddr) { + if (!Memory::IsValidAddress(bufAddr)) { + ERROR_LOG(HLE, "sceAudioInput(%d, %d, %08x): invalid addresses", maxSamples, sampleRate, bufAddr); + return -1; + } + + ERROR_LOG(HLE, "UNTEST sceAudioInput: maxSamples: %d, samplerate: %d, bufAddr: %08x", maxSamples, sampleRate, bufAddr); + return __MicInput(maxSamples, sampleRate, bufAddr, AUDIOINPUT, false); +} + +static int sceAudioGetInputLength() { + int ret = Microphone::getReadMicDataLength() / 2; + ERROR_LOG(HLE, "UNTEST sceAudioGetInputLength(ret: %d)", ret); + return ret; } static u32 sceAudioRoutingSetMode(u32 mode) { @@ -540,9 +561,9 @@ const HLEFunction sceAudio[] = // Microphone interface {0X7DE61688, nullptr, "sceAudioInputInit", '?', "" }, {0XE926D3FB, nullptr, "sceAudioInputInitEx", '?', "" }, - {0X6D4BEC68, nullptr, "sceAudioInput", '?', "" }, - {0X086E5895, &WrapI_UUU, "sceAudioInputBlocking", 'i', "xxx" }, - {0XA708C6A6, nullptr, "sceAudioGetInputLength", '?', "" }, + {0X6D4BEC68, &WrapI_UUU, "sceAudioInput", 'i', "xxx" }, + {0X086E5895, &WrapI_UUU, "sceAudioInputBlocking", 'i', "xxx" }, + {0XA708C6A6, &WrapI_V, "sceAudioGetInputLength", 'i', "" }, {0XA633048E, nullptr, "sceAudioPollInputEnd", '?', "" }, {0X87B2E651, nullptr, "sceAudioWaitInputEnd", '?', "" }, diff --git a/Core/HLE/sceGe.cpp b/Core/HLE/sceGe.cpp index 8c27ed16c62b..04b2e40831bc 100644 --- a/Core/HLE/sceGe.cpp +++ b/Core/HLE/sceGe.cpp @@ -563,12 +563,11 @@ static int sceGeGetMtx(int type, u32 matrixPtr) { } static u32 sceGeGetCmd(int cmd) { - INFO_LOG(SCEGE, "sceGeGetCmd(%i)", cmd); if (cmd >= 0 && cmd < (int)ARRAY_SIZE(gstate.cmdmem)) { - return gstate.cmdmem[cmd]; // Does not mask away the high bits. - } else { - return SCE_KERNEL_ERROR_INVALID_INDEX; + // Does not mask away the high bits. + return hleLogSuccessInfoX(SCEGE, gstate.cmdmem[cmd]); } + return hleLogError(SCEGE, SCE_KERNEL_ERROR_INVALID_INDEX); } static int sceGeGetStack(int index, u32 stackPtr) { diff --git a/Core/HLE/sceIo.cpp b/Core/HLE/sceIo.cpp index 43e0700b98ca..5ec060c43687 100644 --- a/Core/HLE/sceIo.cpp +++ b/Core/HLE/sceIo.cpp @@ -2017,20 +2017,22 @@ static int sceIoChangeAsyncPriority(int id, int priority) { return hleLogSuccessI(SCEIO, 0); } -static int sceIoCloseAsync(int id) -{ +static int sceIoCloseAsync(int id) { u32 error; FileNode *f = __IoGetFd(id, error); - if (f) { - f->closePending = true; - - auto ¶ms = asyncParams[id]; - params.op = IoAsyncOp::CLOSE; - IoStartAsyncThread(id, f); - return hleLogSuccessI(SCEIO, 0); - } else { + if (!f) { return hleLogError(SCEIO, error, "bad file descriptor"); } + if (f->asyncBusy()) { + return hleLogWarning(SCEIO, SCE_KERNEL_ERROR_ASYNC_BUSY, "async busy"); + } + + f->closePending = true; + + auto ¶ms = asyncParams[id]; + params.op = IoAsyncOp::CLOSE; + IoStartAsyncThread(id, f); + return hleLogSuccessI(SCEIO, 0); } static u32 sceIoSetAsyncCallback(int id, u32 clbckId, u32 clbckArg) diff --git a/Core/HLE/sceKernel.cpp b/Core/HLE/sceKernel.cpp index 971a9c728bab..5907848036e2 100644 --- a/Core/HLE/sceKernel.cpp +++ b/Core/HLE/sceKernel.cpp @@ -85,6 +85,7 @@ #include "sceHeap.h" #include "sceDmac.h" #include "sceMp4.h" +#include "sceOpenPSID.h" #include "../Util/PPGeDraw.h" @@ -150,6 +151,7 @@ void __KernelInit() __UsbGpsInit(); __UsbCamInit(); __UsbMicInit(); + __OpenPSIDInit(); SaveState::Init(); // Must be after IO, as it may create a directory Reporting::Init(); @@ -173,6 +175,7 @@ void __KernelShutdown() hleCurrentThreadName = NULL; kernelObjects.Clear(); + __OpenPSIDShutdown(); __UsbCamShutdown(); __UsbMicShutdown(); __UsbGpsShutdown(); @@ -893,8 +896,23 @@ const HLEFunction ThreadManForKernel[] = {0X9944F31F, &WrapI_I, "sceKernelSuspendThread", 'i', "i", HLE_KERNEL_SYSCALL }, {0X75156E8F, &WrapI_I, "sceKernelResumeThread", 'i', "i", HLE_KERNEL_SYSCALL }, {0X94416130, &WrapU_UUUU, "sceKernelGetThreadmanIdList", 'x', "xxxx", HLE_KERNEL_SYSCALL }, - {0X28B6489C, &WrapI_I, "sceKernelDeleteSema", 'i', "i", HLE_KERNEL_SYSCALL }, - {0XEF9E4C70, &WrapU_I, "sceKernelDeleteEventFlag", 'x', "i", HLE_KERNEL_SYSCALL }, + {0x278c0df5, &WrapI_IU, "sceKernelWaitThreadEnd", 'i', "ix", HLE_KERNEL_SYSCALL }, + {0xd6da4ba1, &WrapI_CUIIU, "sceKernelCreateSema", 'i', "sxiix", HLE_KERNEL_SYSCALL }, + {0x28b6489c, &WrapI_I, "sceKernelDeleteSema", 'i', "i", HLE_KERNEL_SYSCALL }, + {0x3f53e640, &WrapI_II, "sceKernelSignalSema", 'i', "ii", HLE_KERNEL_SYSCALL }, + {0x4e3a1105, &WrapI_IIU, "sceKernelWaitSema", 'i', "iix", HLE_NOT_IN_INTERRUPT | HLE_NOT_DISPATCH_SUSPENDED | HLE_KERNEL_SYSCALL}, + {0x58b1f937, &WrapI_II, "sceKernelPollSema", 'i', "ii", HLE_KERNEL_SYSCALL }, + {0x55c20a00, &WrapI_CUUU, "sceKernelCreateEventFlag", 'i', "sxxx", HLE_KERNEL_SYSCALL }, + {0xef9e4c70, &WrapU_I, "sceKernelDeleteEventFlag", 'x', "i", HLE_KERNEL_SYSCALL }, + {0x1fb15a32, &WrapU_IU, "sceKernelSetEventFlag", 'x', "ix", HLE_KERNEL_SYSCALL }, + {0x812346e4, &WrapU_IU, "sceKernelClearEventFlag", 'x', "ix", HLE_KERNEL_SYSCALL }, + {0x402fcf22, &WrapI_IUUUU, "sceKernelWaitEventFlag", 'i', "ixxpp", HLE_NOT_IN_INTERRUPT | HLE_KERNEL_SYSCALL}, + {0xc07bb470, &WrapI_CUUUUU, "sceKernelCreateFpl", 'i', "sxxxxx" ,HLE_KERNEL_SYSCALL }, + {0xed1410e0, &WrapI_I, "sceKernelDeleteFpl", 'i', "i" ,HLE_KERNEL_SYSCALL }, + {0x623ae665, &WrapI_IU, "sceKernelTryAllocateFpl", 'i', "ix" ,HLE_KERNEL_SYSCALL }, + {0x616403ba, &WrapI_I, "sceKernelTerminateThread", 'i', "i" ,HLE_KERNEL_SYSCALL }, + {0x383f7bcc, &WrapI_I, "sceKernelTerminateDeleteThread", 'i', "i" ,HLE_KERNEL_SYSCALL }, + {0x57cf62dd, &WrapU_U, "sceKernelGetThreadmanIdType", 'x', "x" ,HLE_KERNEL_SYSCALL }, }; void Register_ThreadManForUser() diff --git a/Core/HLE/sceKernelModule.cpp b/Core/HLE/sceKernelModule.cpp index a59c545bab39..a60b07e71f88 100644 --- a/Core/HLE/sceKernelModule.cpp +++ b/Core/HLE/sceKernelModule.cpp @@ -33,6 +33,7 @@ #include "Core/HLE/HLETables.h" #include "Core/HLE/Plugins.h" #include "Core/HLE/ReplaceTables.h" +#include "Core/HLE/sceDisplay.h" #include "Core/Reporting.h" #include "Core/Host.h" #include "Core/Loaders.h" @@ -117,6 +118,8 @@ static const char * const blacklistedModules[] = { "sceMD5_Library", }; +struct WriteVarSymbolState; + struct VarSymbolImport { char moduleName[KERNELOBJECT_MAX_NAME_LENGTH + 1]; u32 nid; @@ -150,7 +153,7 @@ struct FuncSymbolExport { u32 nid; }; -void ImportVarSymbol(const VarSymbolImport &var); +void ImportVarSymbol(WriteVarSymbolState &state, const VarSymbolImport &var); void ExportVarSymbol(const VarSymbolExport &var); void UnexportVarSymbol(const VarSymbolExport &var); @@ -378,11 +381,11 @@ class PSPModule : public KernelObject { ImportFuncSymbol(func, reimporting, GetName()); } - void ImportVar(const VarSymbolImport &var) { + void ImportVar(WriteVarSymbolState &state, const VarSymbolImport &var) { // Keep track and actually hook it up if possible. importedVars.push_back(var); impExpModuleNames.insert(var.moduleName); - ImportVarSymbol(var); + ImportVarSymbol(state, var); } void ExportFunc(const FuncSymbolExport &func) { @@ -557,22 +560,22 @@ void __KernelModuleShutdown() // Sometimes there are multiple LO16's or HI16's per pair, even though the ABI says nothing of this. // For multiple LO16's, we need the original (unrelocated) instruction data of the HI16. // For multiple HI16's, we just need to set each one. -struct HI16RelocInfo -{ +struct HI16RelocInfo { u32 addr; u32 data; }; -static void WriteVarSymbol(u32 exportAddress, u32 relocAddress, u8 type, bool reverse = false) -{ - // We have to post-process the HI16 part, since it might be +1 or not depending on the LO16 value. - static u32 lastHI16ExportAddress = 0; - static std::vector lastHI16Relocs; - static bool lastHI16Processed = true; +// We have to post-process the HI16 part, since it might be +1 or not depending on the LO16 value. +// For that purpose, we use this state to track HI16s to adjust. +struct WriteVarSymbolState { + u32 lastHI16ExportAddress = 0; + std::vector lastHI16Relocs; + bool lastHI16Processed = true; +}; +static void WriteVarSymbol(WriteVarSymbolState &state, u32 exportAddress, u32 relocAddress, u8 type, bool reverse = false) { u32 relocData = Memory::Read_Instruction(relocAddress, true).encoding; - switch (type) - { + switch (type) { case R_MIPS_NONE: WARN_LOG_REPORT(LOADER, "Var relocation type NONE - %08x => %08x", exportAddress, relocAddress); break; @@ -601,13 +604,13 @@ static void WriteVarSymbol(u32 exportAddress, u32 relocAddress, u8 type, bool re */ case R_MIPS_HI16: - if (lastHI16ExportAddress != exportAddress) { - if (!lastHI16Processed && lastHI16Relocs.size() >= 1) { - WARN_LOG_REPORT(LOADER, "Unsafe unpaired HI16 variable relocation @ %08x / %08x", lastHI16Relocs[lastHI16Relocs.size() - 1].addr, relocAddress); + if (state.lastHI16ExportAddress != exportAddress) { + if (!state.lastHI16Processed && !state.lastHI16Relocs.empty()) { + WARN_LOG_REPORT(LOADER, "Unsafe unpaired HI16 variable relocation @ %08x / %08x", state.lastHI16Relocs[state.lastHI16Relocs.size() - 1].addr, relocAddress); } - lastHI16ExportAddress = exportAddress; - lastHI16Relocs.clear(); + state.lastHI16ExportAddress = exportAddress; + state.lastHI16Relocs.clear(); } // After this will be an R_MIPS_LO16. If that addition overflows, we need to account for it in HI16. @@ -615,8 +618,8 @@ static void WriteVarSymbol(u32 exportAddress, u32 relocAddress, u8 type, bool re HI16RelocInfo reloc; reloc.addr = relocAddress; reloc.data = Memory::Read_Instruction(relocAddress, true).encoding; - lastHI16Relocs.push_back(reloc); - lastHI16Processed = false; + state.lastHI16Relocs.push_back(reloc); + state.lastHI16Processed = false; break; case R_MIPS_LO16: @@ -632,27 +635,26 @@ static void WriteVarSymbol(u32 exportAddress, u32 relocAddress, u8 type, bool re } // The ABI requires that these come in pairs, at least. - if (lastHI16Relocs.empty()) { + if (state.lastHI16Relocs.empty()) { ERROR_LOG_REPORT(LOADER, "LO16 without any HI16 variable import at %08x for %08x", relocAddress, exportAddress); // Try to process at least the low relocation... - } else if (lastHI16ExportAddress != exportAddress) { - ERROR_LOG_REPORT(LOADER, "HI16 and LO16 imports do not match at %08x for %08x (should be %08x)", relocAddress, lastHI16ExportAddress, exportAddress); + } else if (state.lastHI16ExportAddress != exportAddress) { + ERROR_LOG_REPORT(LOADER, "HI16 and LO16 imports do not match at %08x for %08x (should be %08x)", relocAddress, state.lastHI16ExportAddress, exportAddress); } else { // Process each of the HI16. Usually there's only one. - for (auto it = lastHI16Relocs.begin(), end = lastHI16Relocs.end(); it != end; ++it) - { + for (auto &reloc : state.lastHI16Relocs) { if (!reverse) { - full = (it->data << 16) + offsetLo + exportAddress; + full = (reloc.data << 16) + offsetLo + exportAddress; } else { - full = (it->data << 16) + offsetLo - exportAddress; + full = (reloc.data << 16) + offsetLo - exportAddress; } // The low instruction will be a signed add, which means (full & 0x8000) will subtract. // We add 1 in that case so that it ends up the right value. u16 high = (full >> 16) + ((full & 0x8000) ? 1 : 0); - Memory::Write_U32((it->data & ~0xFFFF) | high, it->addr); - currentMIPS->InvalidateICache(it->addr, 4); + Memory::Write_U32((reloc.data & ~0xFFFF) | high, reloc.addr); + currentMIPS->InvalidateICache(reloc.addr, 4); } - lastHI16Processed = true; + state.lastHI16Processed = true; } // With full set above (hopefully), now we just need to correct the low instruction. @@ -668,7 +670,7 @@ static void WriteVarSymbol(u32 exportAddress, u32 relocAddress, u8 type, bool re currentMIPS->InvalidateICache(relocAddress, 4); } -void ImportVarSymbol(const VarSymbolImport &var) { +void ImportVarSymbol(WriteVarSymbolState &state, const VarSymbolImport &var) { if (var.nid == 0) { // TODO: What's the right thing for this? ERROR_LOG_REPORT(LOADER, "Var import with nid = 0, type = %d", var.type); @@ -688,9 +690,9 @@ void ImportVarSymbol(const VarSymbolImport &var) { } // Look for exports currently loaded modules already have. Maybe it's available? - for (auto it = module->exportedVars.begin(), end = module->exportedVars.end(); it != end; ++it) { - if (it->Matches(var)) { - WriteVarSymbol(it->symAddr, var.stubAddr, var.type); + for (const auto &exported : module->exportedVars) { + if (exported.Matches(var)) { + WriteVarSymbol(state, exported.symAddr, var.stubAddr, var.type); return; } } @@ -709,10 +711,11 @@ void ExportVarSymbol(const VarSymbolExport &var) { } // Look for imports currently loaded modules already have, hook it up right away. - for (auto it = module->importedVars.begin(), end = module->importedVars.end(); it != end; ++it) { - if (var.Matches(*it)) { + WriteVarSymbolState state; + for (auto &imported : module->importedVars) { + if (var.Matches(imported)) { INFO_LOG(LOADER, "Resolving var %s/%08x", var.moduleName, var.nid); - WriteVarSymbol(var.symAddr, it->stubAddr, it->type); + WriteVarSymbol(state, var.symAddr, imported.stubAddr, imported.type); } } } @@ -727,10 +730,11 @@ void UnexportVarSymbol(const VarSymbolExport &var) { } // Look for imports modules that are *still* loaded have, and reverse them. - for (auto it = module->importedVars.begin(), end = module->importedVars.end(); it != end; ++it) { - if (var.Matches(*it)) { + WriteVarSymbolState state; + for (auto &imported : module->importedVars) { + if (var.Matches(imported)) { INFO_LOG(LOADER, "Unresolving var %s/%08x", var.moduleName, var.nid); - WriteVarSymbol(var.symAddr, it->stubAddr, it->type, true); + WriteVarSymbol(state, var.symAddr, imported.stubAddr, imported.type, true); } } } @@ -1051,12 +1055,13 @@ static bool KernelImportModuleFuncs(PSPModule *module, u32 *firstImportStubAddr, continue; } + WriteVarSymbolState state; u32_le *varRef = (u32_le *)Memory::GetPointer(varRefsPtr); for (; *varRef != 0; ++varRef) { var.nid = nid; var.stubAddr = (*varRef & 0x03FFFFFF) << 2; var.type = *varRef >> 26; - module->ImportVar(var); + module->ImportVar(state, var); } } } else if (entry->numVars > 0 && !reimporting) { @@ -1876,6 +1881,14 @@ void __KernelGPUReplay() { if (!GPURecord::RunMountedReplay(filename)) { Core_Stop(); } + + if (PSP_CoreParameter().headLess && !PSP_CoreParameter().startBreak) { + PSPPointer topaddr; + u32 linesize = 512; + __DisplayGetFramebuf(&topaddr, &linesize, nullptr, 0); + host->SendDebugScreenshot(topaddr, linesize, 272); + Core_Stop(); + } } int sceKernelLoadExec(const char *filename, u32 paramPtr) @@ -2335,7 +2348,7 @@ void __KernelReturnFromModuleFunc() SceUID leftModuleID = __KernelGetCurThreadModuleId(); SceUID leftThreadID = __KernelGetCurThread(); - int exitStatus = sceKernelGetThreadExitStatus(leftThreadID); + int exitStatus = __KernelGetThreadExitStatus(leftThreadID); // Reschedule immediately (to leave the thread) and delete it and its stack. __KernelReSchedule("returned from module"); diff --git a/Core/HLE/sceKernelThread.cpp b/Core/HLE/sceKernelThread.cpp index da89ff34bbca..92c5fee535e2 100644 --- a/Core/HLE/sceKernelThread.cpp +++ b/Core/HLE/sceKernelThread.cpp @@ -1333,28 +1333,25 @@ u32 sceKernelReferThreadRunStatus(u32 threadID, u32 statusPtr) return 0; } -int sceKernelGetThreadExitStatus(SceUID threadID) -{ +int __KernelGetThreadExitStatus(SceUID threadID) { u32 error; PSPThread *t = kernelObjects.Get(threadID, error); - if (t) - { - if (t->nt.status == THREADSTATUS_DORMANT) // TODO: can be dormant before starting, too, need to avoid that - { - DEBUG_LOG(SCEKERNEL,"sceKernelGetThreadExitStatus(%i)", threadID); - return t->nt.exitStatus; - } - else - { - DEBUG_LOG(SCEKERNEL,"sceKernelGetThreadExitStatus(%i): not dormant", threadID); - return SCE_KERNEL_ERROR_NOT_DORMANT; - } + if (!t) { + return hleLogError(SCEKERNEL, error); } - else - { - ERROR_LOG(SCEKERNEL,"sceKernelGetThreadExitStatus Error %08x", error); - return SCE_KERNEL_ERROR_UNKNOWN_THID; + + // __KernelResetThread and __KernelCreateThread set exitStatus in case it's DORMANT. + if (t->nt.status == THREADSTATUS_DORMANT) { + return hleLogSuccessI(SCEKERNEL, t->nt.exitStatus); } + return hleLogDebug(SCEKERNEL, SCE_KERNEL_ERROR_NOT_DORMANT, "not dormant"); +} + +int sceKernelGetThreadExitStatus(SceUID threadID) { + u32 status = __KernelGetThreadExitStatus(threadID); + // Seems this is called in a tight-ish loop, maybe awaiting an interrupt - issue #13698 + hleEatCycles(330); + return status; } u32 sceKernelGetThreadmanIdType(u32 uid) { diff --git a/Core/HLE/sceKernelThread.h b/Core/HLE/sceKernelThread.h index 65dce5ff54f4..3df1d70fc034 100644 --- a/Core/HLE/sceKernelThread.h +++ b/Core/HLE/sceKernelThread.h @@ -48,6 +48,7 @@ int sceKernelGetThreadCurrentPriority(); // Warning: will alter v0 in current MIPS state. int __KernelStartThread(SceUID threadToStartID, int argSize, u32 argBlockPtr, bool forceArgs = false); int __KernelStartThreadValidate(SceUID threadToStartID, int argSize, u32 argBlockPtr, bool forceArgs = false); +int __KernelGetThreadExitStatus(SceUID threadID); int sceKernelStartThread(SceUID threadToStartID, int argSize, u32 argBlockPtr); u32 sceKernelSuspendDispatchThread(); u32 sceKernelResumeDispatchThread(u32 suspended); diff --git a/Core/HLE/sceMp3.cpp b/Core/HLE/sceMp3.cpp index b3bdcb9b1860..9b1056e943b3 100644 --- a/Core/HLE/sceMp3.cpp +++ b/Core/HLE/sceMp3.cpp @@ -23,6 +23,7 @@ #include "Core/Config.h" #include "Core/HLE/HLE.h" #include "Core/HLE/FunctionWrappers.h" +#include "Core/HLE/sceKernelMemory.h" #include "Core/HLE/sceMp3.h" #include "Core/HW/MediaEngine.h" #include "Core/MemMap.h" @@ -33,6 +34,7 @@ static const u32 ERROR_MP3_INVALID_HANDLE = 0x80671001; static const u32 ERROR_MP3_UNRESERVED_HANDLE = 0x80671102; static const u32 ERROR_MP3_NOT_YET_INIT_HANDLE = 0x80671103; static const u32 ERROR_MP3_NO_RESOURCE_AVAIL = 0x80671201; +static const u32 ERROR_MP3_BAD_SAMPLE_RATE = 0x80671302; static const u32 ERROR_MP3_BAD_RESET_FRAME = 0x80671501; static const u32 ERROR_MP3_BAD_ADDR = 0x80671002; static const u32 ERROR_MP3_BAD_SIZE = 0x80671003; @@ -157,19 +159,21 @@ void __Mp3DoState(PointerWrap &p) { } static int sceMp3Decode(u32 mp3, u32 outPcmPtr) { - DEBUG_LOG(ME, "sceMp3Decode(%08x,%08x)", mp3, outPcmPtr); - AuCtx *ctx = getMp3Ctx(mp3); if (!ctx) { - ERROR_LOG(ME, "%s: bad mp3 handle %08x", __FUNCTION__, mp3); - return -1; + if (mp3 >= MP3_MAX_HANDLES) + return hleLogError(ME, ERROR_MP3_INVALID_HANDLE, "invalid handle"); + return hleLogError(ME, ERROR_MP3_NOT_YET_INIT_HANDLE, "unreserved handle"); + } else if (ctx->Version < 0 || ctx->AuBuf == 0) { + return hleLogError(ME, ERROR_MP3_NOT_YET_INIT_HANDLE, "not yet init"); } int pcmBytes = ctx->AuDecode(outPcmPtr); if (pcmBytes > 0) { // decode data successfully, delay thread - return hleDelayResult(pcmBytes, "mp3 decode", mp3DecodeDelay); + return hleDelayResult(hleLogSuccessI(ME, pcmBytes), "mp3 decode", mp3DecodeDelay); } + // Should already have logged. return pcmBytes; } @@ -377,6 +381,7 @@ static int FindMp3Header(AuCtx *ctx, int &header, int end) { } static int sceMp3Init(u32 mp3) { + int sdkver = sceKernelGetCompiledSdkVersion(); AuCtx *ctx = getMp3Ctx(mp3); if (!ctx) { if (mp3 >= MP3_MAX_HANDLES) @@ -397,30 +402,41 @@ static int sceMp3Init(u32 mp3) { // Parse the Mp3 header int layerBits = (header >> 17) & 0x3; int versionBits = (header >> 19) & 0x3; - ctx->SamplingRate = __CalculateMp3SampleRates((header >> 10) & 0x3, versionBits); - ctx->Channels = __CalculateMp3Channels((header >> 6) & 0x3); - ctx->BitRate = __CalculateMp3Bitrates((header >> 12) & 0xF, versionBits, layerBits); - ctx->MaxOutputSample = CalculateMp3SamplesPerFrame(versionBits, layerBits); - ctx->freq = ctx->SamplingRate; + int bitrate = __CalculateMp3Bitrates((header >> 12) & 0xF, versionBits, layerBits); + int samplerate = __CalculateMp3SampleRates((header >> 10) & 0x3, versionBits);; + int channels = __CalculateMp3Channels((header >> 6) & 0x3); - DEBUG_LOG(ME, "sceMp3Init(): channels=%i, samplerate=%iHz, bitrate=%ikbps", ctx->Channels, ctx->SamplingRate, ctx->BitRate); + DEBUG_LOG(ME, "sceMp3Init(): channels=%i, samplerate=%iHz, bitrate=%ikbps, layerBits=%d ,versionBits=%d,HEADER: %08x", channels, samplerate, bitrate, layerBits, versionBits, header); if (layerBits != 1) { // TODO: Should return ERROR_AVCODEC_INVALID_DATA. WARN_LOG_REPORT(ME, "sceMp3Init: invalid data: not layer 3"); } + if (bitrate == 0 || bitrate == -1) { + return hleDelayResult(hleReportError(ME, ERROR_AVCODEC_INVALID_DATA, "invalid bitrate v%d l%d rate %04x", versionBits, layerBits, (header >> 12) & 0xF), "mp3 init", PARSE_DELAY_MS); + } + if (samplerate == -1) { + return hleDelayResult(hleReportError(ME, ERROR_AVCODEC_INVALID_DATA, "invalid sample rate v%d l%d rate %02x", versionBits, layerBits, (header >> 10) & 0x3), "mp3 init", PARSE_DELAY_MS); + } + + // Before we allow init, newer SDK versions next require at least 156 bytes. + // That happens to be the size of the first frame header for VBR. + if (sdkver >= 0x06000000 && ctx->readPos < 156) { + return hleDelayResult(hleLogError(ME, SCE_KERNEL_ERROR_INVALID_VALUE, "insufficient mp3 data for init"), "mp3 init", PARSE_DELAY_MS); + } + + ctx->SamplingRate = samplerate; + ctx->Channels = channels; + ctx->BitRate = bitrate; + ctx->MaxOutputSample = CalculateMp3SamplesPerFrame(versionBits, layerBits); + ctx->freq = ctx->SamplingRate; + if (versionBits != 3) { // TODO: Should return 0x80671301 (unsupported version?) WARN_LOG_REPORT(ME, "sceMp3Init: invalid data: not MPEG v1"); } - if (ctx->BitRate == 0 || ctx->BitRate == -1) { - return hleDelayResult(hleReportError(ME, ERROR_AVCODEC_INVALID_DATA, "invalid bitrate v%d l%d rate %04x", versionBits, layerBits, (header >> 12) & 0xF), "mp3 init", PARSE_DELAY_MS); - } - if (ctx->SamplingRate == -1) { - return hleDelayResult(hleReportError(ME, ERROR_AVCODEC_INVALID_DATA, "invalid sample rate v%d l%d rate %02x", versionBits, layerBits, (header >> 10) & 0x3), "mp3 init", PARSE_DELAY_MS); - } else if (ctx->SamplingRate != 44100) { - // TODO: Should return 0x80671302 (unsupported sample rate?) - WARN_LOG_REPORT(ME, "sceMp3Init: invalid data: not 44.1kHz"); + if (samplerate != 44100 && sdkver < 3090500) { + return hleDelayResult(hleLogError(ME, ERROR_MP3_BAD_SAMPLE_RATE, "invalid data: not 44.1kHz"), "mp3 init", PARSE_DELAY_MS); } // Based on bitrate, we can calculate the frame size in bytes. @@ -432,11 +448,8 @@ static int sceMp3Init(u32 mp3) { ctx->Version = versionBits; - // for mp3, if required freq is 48000, reset resampling Frequency to 48000 seems get better sound quality (e.g. Miku Custom BGM) - // TODO: Isn't this backwards? Woudln't we want to read as 48kHz and resample to 44.1kHz? - if (ctx->freq == 48000) { - ctx->decoder->SetResampleFrequency(ctx->freq); - } + // This tells us to resample to the same frequency it decodes to. + ctx->decoder->SetResampleFrequency(ctx->freq); return hleDelayResult(hleLogSuccessI(ME, 0), "mp3 init", PARSE_DELAY_MS); } @@ -707,7 +720,7 @@ const HLEFunction sceMp3[] = { {0X8AB81558, &WrapU_V, "sceMp3StartEntry", 'x', "" }, {0X8F450998, &WrapI_U, "sceMp3GetSamplingRate", 'i', "x" }, {0XA703FE0F, &WrapI_UUUU, "sceMp3GetInfoToAddStreamData", 'i', "xppp" }, - {0XD021C0FB, &WrapI_UU, "sceMp3Decode", 'i', "xx" }, + {0XD021C0FB, &WrapI_UU, "sceMp3Decode", 'i', "xp" }, {0XD0A56296, &WrapI_U, "sceMp3CheckStreamDataNeeded", 'i', "x" }, {0XD8F54A51, &WrapI_U, "sceMp3GetLoopNum", 'i', "x" }, {0XF5478233, &WrapI_U, "sceMp3ReleaseMp3Handle", 'i', "x" }, diff --git a/Core/HLE/sceMpeg.cpp b/Core/HLE/sceMpeg.cpp index 67d7222cba37..77888188a4d8 100644 --- a/Core/HLE/sceMpeg.cpp +++ b/Core/HLE/sceMpeg.cpp @@ -34,6 +34,7 @@ #include "Core/Reporting.h" #include "GPU/GPUInterface.h" #include "GPU/GPUState.h" +#include "Core/HLE/sceKernelMemory.h" // MPEG AVC elementary stream. static const int MPEG_AVC_ES_SIZE = 2048; // MPEG packet size. @@ -74,6 +75,7 @@ static const int MPEG_AU_MODE_SKIP = 1; static const u32 MPEG_MEMSIZE_0104 = 0x0b3DB; static const u32 MPEG_MEMSIZE_0105 = 0x10000; // 64k. static const int MPEG_AVC_DECODE_SUCCESS = 1; // Internal value. +static const int MPEG_WARMUP_FRAMES = 1; static const int atracDecodeDelayMs = 3000; static const int avcFirstDelayMs = 3600; @@ -98,6 +100,10 @@ static std::list pmp_queue; //list of pmp video frames have been decod static std::list pmp_ContextList; //list of pmp media contexts static bool pmp_oldStateLoaded = false; // for dostate +// Calculate the number of total packets added to the ringbuffer by calling the sceMpegRingbufferPut() once. +static int ringbufferPutPacketsAdded = 0; +static bool useRingbufferPutCallbackMulti = true; + #ifdef USE_FFMPEG extern "C" { @@ -174,10 +180,13 @@ struct MpegContext { } void DoState(PointerWrap &p) { - auto s = p.Section("MpegContext", 1, 2); + auto s = p.Section("MpegContext", 1, 3); if (!s) return; - + if (s >= 3) + Do(p, mpegwarmUp); + else + mpegwarmUp = 1000; DoArray(p, mpegheader, 2048); Do(p, defaultFrameWidth); Do(p, videoFrameCount); @@ -227,6 +236,7 @@ struct MpegContext { u32 mpegFirstDate; u32 mpegLastDate; u32 mpegRingbufferAddr; + int mpegwarmUp; bool esBuffers[MPEG_DATA_ES_BUFFERS]; AvcContext avc; @@ -312,6 +322,7 @@ static void AnalyzeMpeg(u8 *buffer, u32 validSize, MpegContext *ctx) { ctx->mpegLastTimestamp = getMpegTimeStamp(buffer + PSMF_LAST_TIMESTAMP_OFFSET); ctx->mpegFirstDate = convertTimestampToDate(ctx->mpegFirstTimestamp); ctx->mpegLastDate = convertTimestampToDate(ctx->mpegLastTimestamp); + ctx->mpegwarmUp = 0; ctx->avc.avcDetailFrameWidth = (*(u8*)(buffer + 142)) * 0x10; ctx->avc.avcDetailFrameHeight = (*(u8*)(buffer + 143)) * 0x10; ctx->avc.avcDecodeResult = MPEG_AVC_DECODE_SUCCESS; @@ -387,7 +398,7 @@ void __MpegInit() { } void __MpegDoState(PointerWrap &p) { - auto s = p.Section("sceMpeg", 1, 2); + auto s = p.Section("sceMpeg", 1, 3); if (!s) return; @@ -400,6 +411,12 @@ void __MpegDoState(PointerWrap &p) { // Let's assume the oldest version. mpegLibVersion = 0x0101; } else { + if (s < 3) { + useRingbufferPutCallbackMulti = false; + ringbufferPutPacketsAdded = 0; + } else { + Do(p, ringbufferPutPacketsAdded); + } Do(p, streamIdGen); Do(p, mpegLibVersion); } @@ -667,6 +684,7 @@ static int sceMpegRegistStream(u32 mpeg, u32 streamType, u32 streamNum) switch (streamType) { case MPEG_AVC_STREAM: ctx->avcRegistered = true; + ctx->mediaengine->addVideoStream(streamNum); // TODO: Probably incorrect? ctx->mediaengine->setVideoStream(streamNum); break; @@ -1437,16 +1455,19 @@ void PostPutAction::run(MipsCall &call) { int writeOffset = ringbuffer->packetsWritePos % (s32)ringbuffer->packets; const u8 *data = Memory::GetPointer(ringbuffer->data + writeOffset * 2048); - int packetsAdded = currentMIPS->r[MIPS_REG_V0]; + int packetsAddedThisRound = currentMIPS->r[MIPS_REG_V0]; + if (packetsAddedThisRound > 0) { + ringbufferPutPacketsAdded += packetsAddedThisRound; + } // It seems validation is done only by older mpeg libs. - if (mpegLibVersion < 0x0105 && packetsAdded > 0) { + if (mpegLibVersion < 0x0105 && packetsAddedThisRound > 0) { // TODO: Faster / less wasteful validation. - std::unique_ptr demuxer(new MpegDemux(packetsAdded * 2048, 0)); + std::unique_ptr demuxer(new MpegDemux(packetsAddedThisRound * 2048, 0)); int readOffset = ringbuffer->packetsRead % (s32)ringbuffer->packets; const u8 *buf = Memory::GetPointer(ringbuffer->data + readOffset * 2048); bool invalid = false; - for (int i = 0; i < packetsAdded; ++i) { + for (int i = 0; i < packetsAddedThisRound; ++i) { demuxer->addStreamData(buf, 2048); buf += 2048; @@ -1461,46 +1482,45 @@ void PostPutAction::run(MipsCall &call) { if (mpegLibVersion <= 0x0103) { // Act like they were actually added, but don't increment read pos. - ringbuffer->packetsWritePos += packetsAdded; - ringbuffer->packetsAvail += packetsAdded; + ringbuffer->packetsWritePos += packetsAddedThisRound; + ringbuffer->packetsAvail += packetsAddedThisRound; } return; } } - if (ringbuffer->packetsRead == 0 && ctx->mediaengine && packetsAdded > 0) { + if (ringbuffer->packetsRead == 0 && ctx->mediaengine && packetsAddedThisRound > 0) { // init mediaEngine AnalyzeMpeg(ctx->mpegheader, 2048, ctx); ctx->mediaengine->loadStream(ctx->mpegheader, 2048, ringbuffer->packets * ringbuffer->packetSize); } - if (packetsAdded > 0) { - if (packetsAdded > ringbuffer->packets - ringbuffer->packetsAvail) { - WARN_LOG(ME, "sceMpegRingbufferPut clamping packetsAdded old=%i new=%i", packetsAdded, ringbuffer->packets - ringbuffer->packetsAvail); - packetsAdded = ringbuffer->packets - ringbuffer->packetsAvail; + if (packetsAddedThisRound > 0) { + if (packetsAddedThisRound > ringbuffer->packets - ringbuffer->packetsAvail) { + WARN_LOG(ME, "sceMpegRingbufferPut clamping packetsAdded old=%i new=%i", packetsAddedThisRound, ringbuffer->packets - ringbuffer->packetsAvail); + packetsAddedThisRound = ringbuffer->packets - ringbuffer->packetsAvail; } - int actuallyAdded = ctx->mediaengine == NULL ? 8 : ctx->mediaengine->addStreamData(data, packetsAdded * 2048) / 2048; - if (actuallyAdded != packetsAdded) { + int actuallyAdded = ctx->mediaengine == NULL ? 8 : ctx->mediaengine->addStreamData(data, packetsAddedThisRound * 2048) / 2048; + if (actuallyAdded != packetsAddedThisRound) { WARN_LOG_REPORT(ME, "sceMpegRingbufferPut(): unable to enqueue all added packets, going to overwrite some frames."); } - ringbuffer->packetsRead += packetsAdded; - ringbuffer->packetsWritePos += packetsAdded; - ringbuffer->packetsAvail += packetsAdded; + ringbuffer->packetsRead += packetsAddedThisRound; + ringbuffer->packetsWritePos += packetsAddedThisRound; + ringbuffer->packetsAvail += packetsAddedThisRound; } - DEBUG_LOG(ME, "packetAdded: %i packetsRead: %i packetsTotal: %i", packetsAdded, ringbuffer->packetsRead, ringbuffer->packets); + DEBUG_LOG(ME, "packetAdded: %i packetsRead: %i packetsTotal: %i", packetsAddedThisRound, ringbuffer->packetsRead, ringbuffer->packets); - call.setReturnValue(packetsAdded); + if (packetsAddedThisRound < 0 && ringbufferPutPacketsAdded == 0) { + // Return an error. + call.setReturnValue(packetsAddedThisRound); + } else { + call.setReturnValue(ringbufferPutPacketsAdded); + } } // Program signals that it has written data to the ringbuffer and gets a callback ? static u32 sceMpegRingbufferPut(u32 ringbufferAddr, int numPackets, int available) { - numPackets = std::min(numPackets, available); - if (numPackets <= 0) { - DEBUG_LOG(ME, "sceMpegRingbufferPut(%08x, %i, %i): no packets to enqueue", ringbufferAddr, numPackets, available); - return 0; - } - auto ringbuffer = PSPPointer::Create(ringbufferAddr); if (!ringbuffer.IsValid()) { // Would have crashed before, TODO test behavior. @@ -1508,25 +1528,43 @@ static u32 sceMpegRingbufferPut(u32 ringbufferAddr, int numPackets, int availabl return -1; } + numPackets = std::min(numPackets, available); + // Generally, program will call sceMpegRingbufferAvailableSize() before this func. + // Seems still need to check actual available, Patapon 3 for example. + numPackets = std::min(numPackets, ringbuffer->packets - ringbuffer->packetsAvail); + if (numPackets <= 0) { + DEBUG_LOG(ME, "sceMpegRingbufferPut(%08x, %i, %i): no packets to enqueue", ringbufferAddr, numPackets, available); + return 0; + } + MpegContext *ctx = getMpegCtx(ringbuffer->mpeg); if (!ctx) { WARN_LOG(ME, "sceMpegRingbufferPut(%08x, %i, %i): bad mpeg handle %08x", ringbufferAddr, numPackets, available, ringbuffer->mpeg); return -1; } - + ringbufferPutPacketsAdded = 0; // Execute callback function as a direct MipsCall, no blocking here so no messing around with wait states etc if (ringbuffer->callback_addr != 0) { DEBUG_LOG(ME, "sceMpegRingbufferPut(%08x, %i, %i)", ringbufferAddr, numPackets, available); - PostPutAction *action = (PostPutAction *)__KernelCreateAction(actionPostPut); - action->setRingAddr(ringbufferAddr); - // TODO: Should call this multiple times until we get numPackets. + // Call this multiple times until we get numPackets. // Normally this would be if it did not read enough, but also if available > packets. // Should ultimately return the TOTAL number of returned packets. int writeOffset = ringbuffer->packetsWritePos % (s32)ringbuffer->packets; - u32 packetsThisRound = std::min(numPackets, (s32)ringbuffer->packets - writeOffset); - u32 args[3] = {(u32)ringbuffer->data + (u32)writeOffset * 2048, packetsThisRound, (u32)ringbuffer->callback_args}; - hleEnqueueCall(ringbuffer->callback_addr, 3, args, action); + u32 packetsThisRound = 0; + while (numPackets) { + PostPutAction *action = (PostPutAction *)__KernelCreateAction(actionPostPut); + action->setRingAddr(ringbufferAddr); + + packetsThisRound = std::min(numPackets, (s32)ringbuffer->packets - writeOffset); + numPackets -= packetsThisRound; + u32 args[3] = { (u32)ringbuffer->data + (u32)writeOffset * 2048, packetsThisRound, (u32)ringbuffer->callback_args }; + hleEnqueueCall(ringbuffer->callback_addr, 3, args, action); + writeOffset = (writeOffset + packetsThisRound) % (s32)ringbuffer->packets; + // Old savestate don't use this feature, just for compatibility. + if (!useRingbufferPutCallbackMulti) + break; + } } else { ERROR_LOG_REPORT(ME, "sceMpegRingbufferPut: callback_addr zero"); } @@ -1547,6 +1585,13 @@ static int sceMpegGetAvcAu(u32 mpeg, u32 streamId, u32 auAddr, u32 attrAddr) ERROR_LOG_REPORT(ME, "sceMpegGetAvcAu(%08x, %08x, %08x, %08x): invalid ringbuffer address", mpeg, streamId, auAddr, attrAddr); return -1; } + + int sdkver = sceKernelGetCompiledSdkVersion(); + if ((sdkver >= 0x06000000) && (ctx->mpegwarmUp < MPEG_WARMUP_FRAMES)) { + DEBUG_LOG(ME, "sceMpegGetAvcAu(%08x, %08x, %08x, %08x): warming up", mpeg, streamId, auAddr, attrAddr); + ctx->mpegwarmUp++; + return ERROR_MPEG_NO_DATA; + } SceMpegAu avcAu; avcAu.read(auAddr); @@ -2265,21 +2310,21 @@ const HLEFunction sceMpeg[] = { {0XE1CE83A7, &WrapI_UUUU, "sceMpegGetAtracAu", 'i', "xxxx" }, {0XFE246728, &WrapI_UUUU, "sceMpegGetAvcAu", 'i', "xxxx" }, - {0XD8C5F121, &WrapU_UUUUUUU, "sceMpegCreate", 'x', "xxxxxxx"}, + {0XD8C5F121, &WrapU_UUUUUUU, "sceMpegCreate", 'x', "xxxxxxx" ,HLE_CLEAR_STACK_BYTES, 0xA8}, {0XF8DCB679, &WrapI_UUU, "sceMpegQueryAtracEsSize", 'i', "xxx" }, - {0XC132E22F, &WrapU_V, "sceMpegQueryMemSize", 'x', "" }, - {0X21FF80E4, &WrapI_UUU, "sceMpegQueryStreamOffset", 'i', "xxx" }, - {0X611E9E11, &WrapU_UU, "sceMpegQueryStreamSize", 'x', "xx" }, - {0X42560F23, &WrapI_UUU, "sceMpegRegistStream", 'i', "xxx" }, - {0X591A4AA2, &WrapU_UI, "sceMpegUnRegistStream", 'x', "xi" }, + {0XC132E22F, &WrapU_V, "sceMpegQueryMemSize", 'x', "" ,HLE_CLEAR_STACK_BYTES, 0x18}, + {0X21FF80E4, &WrapI_UUU, "sceMpegQueryStreamOffset", 'i', "xxx",HLE_CLEAR_STACK_BYTES, 0x18}, + {0X611E9E11, &WrapU_UU, "sceMpegQueryStreamSize", 'x', "xx",HLE_CLEAR_STACK_BYTES, 0x8}, + {0X42560F23, &WrapI_UUU, "sceMpegRegistStream", 'i', "xxx" ,HLE_CLEAR_STACK_BYTES, 0x48}, + {0X591A4AA2, &WrapU_UI, "sceMpegUnRegistStream", 'x', "xi" ,HLE_CLEAR_STACK_BYTES, 0x18 }, {0X707B7629, &WrapU_U, "sceMpegFlushAllStream", 'x', "x" }, {0X500F0429, &WrapU_UI, "sceMpegFlushStream", 'x', "xi" }, {0XA780CF7E, &WrapI_U, "sceMpegMallocAvcEsBuf", 'i', "x" }, {0XCEB870B1, &WrapI_UI, "sceMpegFreeAvcEsBuf", 'i', "xi" }, {0X167AFD9E, &WrapI_UUU, "sceMpegInitAu", 'i', "xxx" }, - {0X682A619B, &WrapU_V, "sceMpegInit", 'x', "" }, - {0X606A4649, &WrapI_U, "sceMpegDelete", 'i', "x" }, - {0X874624D6, &WrapU_V, "sceMpegFinish", 'x', "" }, + {0X682A619B, &WrapU_V, "sceMpegInit", 'x', "" ,HLE_CLEAR_STACK_BYTES, 0x48}, + {0X606A4649, &WrapI_U, "sceMpegDelete", 'i', "x",HLE_CLEAR_STACK_BYTES, 0x18}, + {0X874624D6, &WrapU_V, "sceMpegFinish", 'x', "" ,HLE_CLEAR_STACK_BYTES, 0x18}, {0X800C44DF, &WrapU_UUUI, "sceMpegAtracDecode", 'x', "xxxi" }, {0X0E3C2E9D, &WrapU_UUUUU, "sceMpegAvcDecode", 'x', "xxxxx" }, {0X740FCCD1, &WrapU_UUUU, "sceMpegAvcDecodeStop", 'x', "xxxx" }, diff --git a/Core/HLE/sceNet.cpp b/Core/HLE/sceNet.cpp index 448b0ba66e19..b13aad410cfe 100644 --- a/Core/HLE/sceNet.cpp +++ b/Core/HLE/sceNet.cpp @@ -591,7 +591,7 @@ u32 Net_Term() { } static u32 sceNetTerm() { - WARN_LOG(SCENET, "sceNetTerm()"); + WARN_LOG(SCENET, "sceNetTerm() at %08x", currentMIPS->pc); int retval = Net_Term(); // Give time to make sure everything are cleaned up diff --git a/Core/HLE/sceNetAdhoc.cpp b/Core/HLE/sceNetAdhoc.cpp index 16afedebdd9f..ad2ab98096de 100644 --- a/Core/HLE/sceNetAdhoc.cpp +++ b/Core/HLE/sceNetAdhoc.cpp @@ -103,11 +103,13 @@ u32_le matchingThreadCode[3]; int matchingEventThread(int matchingId); int matchingInputThread(int matchingId); +void sendBulkDataPacket(SceNetAdhocMatchingContext* context, SceNetEtherAddr* mac, int datalen, void* data); int AcceptPtpSocket(int ptpId, int newsocket, sockaddr_in& peeraddr, SceNetEtherAddr* addr, u16_le* port); int PollAdhocSocket(SceNetAdhocPollSd* sds, int count, int timeout, int nonblock); int FlushPtpSocket(int socketId); int NetAdhocGameMode_DeleteMaster(); int NetAdhocctl_ExitGameMode(); +int NetAdhocPtp_Connect(int id, int timeout, int flag, bool allowForcedConnect = true); static int sceNetAdhocPdpSend(int id, const char* mac, u32 port, void* data, int len, int timeout, int flag); static int sceNetAdhocPdpRecv(int id, void* addr, void* port, void* buf, void* dataLength, u32 timeout, int flag); @@ -179,8 +181,13 @@ static void __GameModeNotify(u64 userdata, int cyclesLate) { int recvd = 0; for (auto& gma : replicaGameModeAreas) { // Either replicas new data has been received or that player has been disconnected - if (gma.dataUpdated || gma.updateTimestamp == 0) + if (gma.dataUpdated || gma.updateTimestamp == 0) { recvd++; + // Since we're able to receive data, now we're certain that remote player is listening and ready to receive data, so we send initial data one more time in case they're not listening yet on previous attempt (ie. Pocket Pool) + if (gma.dataUpdated) { + sceNetAdhocPdpSend(gameModeSocket, (const char*)&gma.mac, ADHOC_GAMEMODE_PORT, masterGameModeArea.data, masterGameModeArea.size, 0, ADHOC_F_NONBLOCK); + } + } } // Resume blocked thread u64 now = CoreTiming::GetGlobalTimeUsScaled(); @@ -299,15 +306,16 @@ static void __AdhocctlNotify(u64 userdata, int cyclesLate) { CoreTiming::ScheduleEvent(usToCycles(500) - cyclesLate, adhocctlNotifyEvent, userdata); return; } - else + else if (req.opcode != OPCODE_LOGIN) result = ERROR_NET_ADHOCCTL_BUSY; } } else result = ERROR_NET_ADHOCCTL_WLAN_SWITCH_OFF; + u32 waitVal = __KernelGetWaitValue(threadID, error); __KernelResumeThreadFromWait(threadID, result); - DEBUG_LOG(SCENET, "Returning (WaitID: %d, error: %d) Result (%08x) of sceNetAdhocctl - State: %d", waitID, error, (int)result, adhocctlState); + DEBUG_LOG(SCENET, "Returning (WaitID: %d, error: %d) Result (%08x) of sceNetAdhocctl - Opcode: %d, State: %d", waitID, error, (int)result, waitVal, adhocctlState); // We are done with this request adhocctlRequests.erase(uid); @@ -404,7 +412,7 @@ int DoBlockingPdpRecv(int uid, AdhocSocketRequest& req, s64& result) { memset(&sin, 0, sizeof(sin)); socklen_t sinlen = sizeof(sin); - int ret = recvfrom(uid, (char*)req.buffer, *req.length, MSG_PEEK | MSG_NOSIGNAL, (sockaddr*)&sin, &sinlen); + int ret = recvfrom(uid, (char*)req.buffer, *req.length, MSG_PEEK | MSG_NOSIGNAL | MSG_TRUNC, (sockaddr*)&sin, &sinlen); int sockerr = errno; // Note: UDP must not be received partially, otherwise leftover data in socket's buffer will be discarded @@ -553,6 +561,10 @@ int DoBlockingPtpSend(int uid, AdhocSocketRequest& req, s64& result) { DEBUG_LOG(SCENET, "sceNetAdhocPtpSend[%i:%u]: Sent %u bytes to %s:%u\n", req.id, ptpsocket.lport, ret, mac2str(&ptpsocket.paddr).c_str(), ptpsocket.pport); + // Set to Established on successful Send when an attempt to Connect was initiated + if (ptpsocket.state == ADHOC_PTP_STATE_SYN_SENT) + ptpsocket.state = ADHOC_PTP_STATE_ESTABLISHED; + // Return Success result = 0; } @@ -602,6 +614,10 @@ int DoBlockingPtpRecv(int uid, AdhocSocketRequest& req, s64& result) { if (peer != NULL) peer->last_recv = CoreTiming::GetGlobalTimeUsScaled(); peerlock.unlock(); + // Set to Established on successful Recv when an attempt to Connect was initiated + if (ptpsocket.state == ADHOC_PTP_STATE_SYN_SENT) + ptpsocket.state = ADHOC_PTP_STATE_ESTABLISHED; + result = 0; } else if (ret == SOCKET_ERROR && (sockerr == EAGAIN || sockerr == EWOULDBLOCK)) { @@ -1230,7 +1246,7 @@ static int sceNetAdhocPdpCreate(const char *mac, int port, int bufferSize, u32 f if (usocket != INVALID_SOCKET) { // Change socket buffer size to be consistent on all platforms. // Send Buffer should be smaller than Recv Buffer to prevent faster device from flooding slower device too much. - setSockBufferSize(usocket, SO_SNDBUF, bufferSize*2); //PSP_ADHOC_PDP_MFS + setSockBufferSize(usocket, SO_SNDBUF, bufferSize*5); //PSP_ADHOC_PDP_MFS // Recv Buffer should be equal or larger than Send Buffer. Using larger Recv Buffer might helped reduces dropped packets during a slowdown, but too large may cause slow performance on Warriors Orochi 2. setSockBufferSize(usocket, SO_RCVBUF, bufferSize*10); //PSP_ADHOC_PDP_MFS*10 @@ -1240,6 +1256,9 @@ static int sceNetAdhocPdpCreate(const char *mac, int port, int bufferSize, u32 f // Enable Port Re-use, this will allow binding to an already used port, but only one of them can read the data (shared receive buffer?) setSockReuseAddrPort(usocket); + // Disable Connection Reset error on UDP to avoid strange behavior https://stackoverflow.com/questions/34242622/windows-udp-sockets-recvfrom-fails-with-error-10054 + setUDPConnReset(usocket, false); + // Binding Information for local Port sockaddr_in addr; addr.sin_family = AF_INET; @@ -1670,7 +1689,7 @@ static int sceNetAdhocPdpRecv(int id, void *addr, void * port, void *buf, void * // Receive Data. PDP always sent in full size or nothing(failed), recvfrom will always receive in full size as requested (blocking) or failed (non-blocking). If available UDP data is larger than buffer, excess data is lost. // Should peek first for the available data size if it's more than len return ERROR_NET_ADHOC_NOT_ENOUGH_SPACE along with required size in len to prevent losing excess data - received = recvfrom(pdpsocket.id, (char*)buf, *len, MSG_PEEK | MSG_NOSIGNAL, (sockaddr*)&sin, &sinlen); + received = recvfrom(pdpsocket.id, (char*)buf, *len, MSG_PEEK | MSG_NOSIGNAL | MSG_TRUNC, (sockaddr*)&sin, &sinlen); if (received != SOCKET_ERROR && *len < received) { WARN_LOG(SCENET, "sceNetAdhocPdpRecv[%i:%u]: Peeked %u/%u bytes from %s:%u\n", id, getLocalPort(pdpsocket.id), received, *len, inet_ntoa(sin.sin_addr), ntohs(sin.sin_port)); *len = received; @@ -1789,14 +1808,16 @@ int NetAdhoc_SetSocketAlert(int id, s32_le flag) { adhocSockets[id - 1]->flags = flg; adhocSockets[id - 1]->alerted_flags = 0; - return hleDelayResult(0, "set socket alert delay", 1000); + return 0; } // Flags seems to be bitmasks of ADHOC_F_ALERT... (need more games to test this) int sceNetAdhocSetSocketAlert(int id, int flag) { WARN_LOG_REPORT_ONCE(sceNetAdhocSetSocketAlert, SCENET, "UNTESTED sceNetAdhocSetSocketAlert(%d, %08x) at %08x", id, flag, currentMIPS->pc); - return hleLogDebug(SCENET, NetAdhoc_SetSocketAlert(id, flag), ""); + int retval = NetAdhoc_SetSocketAlert(id, flag); + hleDelayResult(retval, "set socket alert delay", 1000); + return hleLogDebug(SCENET, retval, ""); } int PollAdhocSocket(SceNetAdhocPollSd* sds, int count, int timeout, int nonblock) { @@ -1978,6 +1999,10 @@ int NetAdhocPdp_Delete(int id, int unknown) { // Valid Socket if (sock != NULL && sock->type == SOCK_PDP) { // Close Connection + struct linger sl; + sl.l_onoff = 1; // non-zero value enables linger option in kernel + sl.l_linger = 0; // timeout interval in seconds + setsockopt(sock->data.pdp.id, SOL_SOCKET, SO_LINGER, (const char*)&sl, sizeof(sl)); shutdown(sock->data.pdp.id, SD_BOTH); closesocket(sock->data.pdp.id); @@ -2338,7 +2363,7 @@ u32 NetAdhocctl_Disconnect() { } // Return Success, some games might ignore returned value and always treat it as success, otherwise repeatedly calling this function - return hleDelayResult(0, "disconnect delay", us); + return 0; } // Library uninitialized @@ -2361,7 +2386,7 @@ static u32 sceNetAdhocctlDelHandler(u32 handlerID) { if (adhocctlHandlers.find(handlerID) != adhocctlHandlers.end()) { adhocctlHandlers.erase(handlerID); - INFO_LOG(SCENET, "sceNetAdhocctlDelHandler(%d)", handlerID); + INFO_LOG(SCENET, "sceNetAdhocctlDelHandler(%d) at %08x", handlerID, currentMIPS->pc); } else { WARN_LOG(SCENET, "sceNetAdhocctlDelHandler(%d): Invalid Handler ID", handlerID); } @@ -2372,6 +2397,7 @@ static u32 sceNetAdhocctlDelHandler(u32 handlerID) { int NetAdhocctl_Term() { if (netAdhocctlInited) { if (adhocctlState != ADHOCCTL_STATE_DISCONNECTED) { + // Note: This might block current thread if the first attempt to send OPCODE_DISCONNECT to AdhocServer failed with EAGAIN error if (netAdhocGameModeEntered) NetAdhocctl_ExitGameMode(); else @@ -2384,6 +2410,8 @@ int NetAdhocctl_Term() { friendFinderThread.join(); } + // TODO: May need to block current thread to make sure all Adhocctl callbacks have been fully executed before terminating Adhoc PSPThread (ie. threadAdhocID). + // Clear GameMode resources NetAdhocGameMode_DeleteMaster(); deleteAllGMB(); @@ -2418,7 +2446,7 @@ int NetAdhocctl_Term() { int sceNetAdhocctlTerm() { // WLAN might be disabled in the middle of successfull multiplayer, but we still need to cleanup right? - INFO_LOG(SCENET, "sceNetAdhocctlTerm()"); + INFO_LOG(SCENET, "sceNetAdhocctlTerm() at %08x", currentMIPS->pc); //if (netAdhocMatchingInited) NetAdhocMatching_Term(); int retval = NetAdhocctl_Term(); @@ -2636,7 +2664,7 @@ int NetAdhocctl_Create(const char* groupName) { hleEatMicro(us); // Return Success // FIXME: When tested using JPCSP + official prx files it seems sceNetAdhocctlCreate switching to a different thread for at least 100ms after returning success and before executing the next line. - return hleDelayResult(0, "create/connect/join delay", adhocEventPollDelay); + return 0; } // Connected State @@ -2919,8 +2947,10 @@ static int sceNetAdhocGetPdpStat(u32 structSize, u32 structAddr) { // Valid Socket Entry auto sock = adhocSockets[j]; if (sock != NULL && sock->type == SOCK_PDP) { - // Set available bytes to be received. With FIOREAD There might be lingering 1 byte in recv buffer when remote peer's socket got closed (ie. Warriors Orochi 2) - sock->data.pdp.rcv_sb_cc = getAvailToRecv(sock->data.pdp.id); + // Set available bytes to be received. With FIONREAD There might be ghosting 1 byte in recv buffer when remote peer's socket got closed (ie. Warriors Orochi 2) Attempting to recv this ghost 1 byte will result to socket error 10054 (may need to disable SIO_UDP_CONNRESET error) + // It seems real PSP respecting the socket buffer size arg, so we may need to cap the value up to the buffer size arg since we use larger buffer, for PDP/UDP the total size must not contains partial/truncated message to avoid data loss. + // TODO: We may need to manage PDP messages ourself by reading each msg 1-by-1 and moving it to our internal buffer(msg array) in order to calculate the correct messages size that can fit into buffer size when there are more than 1 messages in the recv buffer (simulate FIONREAD) + sock->data.pdp.rcv_sb_cc = getAvailToRecv(sock->data.pdp.id, sock->buffer_size); // Copy Socket Data from Internal Memory memcpy(&buf[i], &sock->data.pdp, sizeof(SceNetAdhocPdpStat)); @@ -3013,6 +3043,8 @@ static int sceNetAdhocGetPtpStat(u32 structSize, u32 structAddr) { // Set available bytes to be received sock->data.ptp.rcv_sb_cc = getAvailToRecv(sock->data.ptp.id); + // It seems real PSP respecting the socket buffer size arg, so we may need to cap the value to the buffer size arg since we use larger buffer + sock->data.ptp.rcv_sb_cc = std::min(sock->data.ptp.rcv_sb_cc, (u32_le)sock->buffer_size); // Copy Socket Data from internal Memory memcpy(&buf[i], &sock->data.ptp, sizeof(SceNetAdhocPtpStat)); @@ -3080,7 +3112,7 @@ static int sceNetAdhocPtpOpen(const char *srcmac, int sport, const char *dstmac, // Valid Addresses. FIXME: MAC only valid after successful attempt to Create/Connect/Join a Group? (ie. adhocctlCurrentMode != ADHOCCTL_MODE_NONE) if ((adhocctlCurrentMode != ADHOCCTL_MODE_NONE) && saddr != NULL && isLocalMAC(saddr) && daddr != NULL && !isBroadcastMAC(daddr) && !isZeroMAC(daddr)) { // Dissidia 012 will try to reOpen the port without Closing the old one first when PtpConnect failed to try again. - if (isPTPPortInUse(sport, false)) { + if (isPTPPortInUse(sport, false, daddr, dport)) { // FIXME: When PORT_IN_USE error occured it seems the index to the socket id also increased, which means it tries to create & bind the socket first and then closes it due to failed to bind return hleLogDebug(SCENET, ERROR_NET_ADHOC_PORT_IN_USE, "port in use"); } @@ -3099,9 +3131,12 @@ static int sceNetAdhocPtpOpen(const char *srcmac, int sport, const char *dstmac, // Valid Socket produced if (tcpsocket > 0) { + // Change socket MSS + setSockMSS(tcpsocket, PSP_ADHOC_PTP_MSS); + // Change socket buffer size to be consistent on all platforms. - setSockBufferSize(tcpsocket, SO_SNDBUF, bufsize*2); //PSP_ADHOC_PTP_MFS - setSockBufferSize(tcpsocket, SO_RCVBUF, bufsize*10); //PSP_ADHOC_PTP_MFS*10 + setSockBufferSize(tcpsocket, SO_SNDBUF, bufsize*5); //PSP_ADHOC_PTP_MSS + setSockBufferSize(tcpsocket, SO_RCVBUF, bufsize*10); //PSP_ADHOC_PTP_MSS*10 // Enable KeepAlive setSockKeepAlive(tcpsocket, true, rexmt_int / 1000000L, rexmt_cnt); @@ -3179,6 +3214,9 @@ static int sceNetAdhocPtpOpen(const char *srcmac, int sport, const char *dstmac, // Switch to non-blocking for futher usage changeBlockingMode(tcpsocket, 1); + // Initiate PtpConnect (ie. The Warrior seems to try to PtpSend right after PtpOpen without trying to PtpConnect first) + NetAdhocPtp_Connect(i + 1, rexmt_int, 1, false); + // Return PTP Socket Pointer return hleLogDebug(SCENET, i + 1, "success"); } @@ -3269,9 +3307,12 @@ int AcceptPtpSocket(int ptpId, int newsocket, sockaddr_in& peeraddr, SceNetEther // Copy Socket Descriptor to Structure internal->data.ptp.id = newsocket; + // Change socket MSS + setSockMSS(newsocket, PSP_ADHOC_PTP_MSS); + // Set Default Buffer Size or inherit the size? internal->buffer_size = socket->buffer_size; - setSockBufferSize(newsocket, SO_SNDBUF, internal->buffer_size*2); //PSP_ADHOC_PTP_MSS + setSockBufferSize(newsocket, SO_SNDBUF, internal->buffer_size*5); //PSP_ADHOC_PTP_MSS setSockBufferSize(newsocket, SO_RCVBUF, internal->buffer_size*10); //PSP_ADHOC_PTP_MSS*10 // Copy Local Address Data to Structure @@ -3423,19 +3464,7 @@ static int sceNetAdhocPtpAccept(int id, u32 peerMacAddrPtr, u32 peerPortPtr, int return hleLogSuccessVerboseI(SCENET, ERROR_NET_ADHOC_NOT_INITIALIZED, "not initialized"); } -/** - * Adhoc Emulator PTP Connection Opener - * @param id Socket File Descriptor - * @param timeout Connect Timeout (in Microseconds) - * @param flag Nonblocking Flag - * @return 0 on success or... ADHOC_NOT_INITIALIZED, ADHOC_INVALID_ARG, ADHOC_INVALID_SOCKET_ID, ADHOC_SOCKET_DELETED, ADHOC_CONNECTION_REFUSED, ADHOC_SOCKET_ALERTED, ADHOC_WOULD_BLOCK, ADHOC_TIMEOUT, ADHOC_NOT_OPENED, ADHOC_THREAD_ABORTED, NET_INTERNAL - */ -static int sceNetAdhocPtpConnect(int id, int timeout, int flag) { - INFO_LOG(SCENET, "sceNetAdhocPtpConnect(%i, %i, %i) at %08x", id, timeout, flag, currentMIPS->pc); - if (!g_Config.bEnableWlan) { - return -1; - } - +int NetAdhocPtp_Connect(int id, int timeout, int flag, bool allowForcedConnect) { // Library is initialized if (netAdhocInited) { @@ -3462,21 +3491,21 @@ static int sceNetAdhocPtpConnect(int id, int timeout, int flag) { // Target Address sockaddr_in sin; memset(&sin, 0, sizeof(sin)); - + // Setup Target Address // sin.sin_len = sizeof(sin); sin.sin_family = AF_INET; sin.sin_port = htons(ptpsocket.pport + portOffset); - + // Grab Peer IP - if (resolveMAC(&ptpsocket.paddr, (uint32_t *)&sin.sin_addr.s_addr)) { + if (resolveMAC(&ptpsocket.paddr, (uint32_t*)&sin.sin_addr.s_addr)) { // Some games (ie. PSP2) might try to talk to it's self, not sure if they talked through WAN or LAN when using public Adhoc Server tho sin.sin_port = htons(ptpsocket.pport + ((isOriPort && !isPrivateIP(sin.sin_addr.s_addr)) ? 0 : portOffset)); // Connect Socket to Peer // NOTE: Based on what i read at stackoverflow, The First Non-blocking POSIX connect will always returns EAGAIN/EWOULDBLOCK because it returns without waiting for ACK/handshake, But GvG Next Plus is treating non-blocking PtpConnect just like blocking connect, May be on a real PSP the first non-blocking sceNetAdhocPtpConnect can be successfull? - int connectresult = connect(ptpsocket.id, (sockaddr *)&sin, sizeof(sin)); - + int connectresult = connect(ptpsocket.id, (sockaddr*)&sin, sizeof(sin)); + // Grab Error Code int errorcode = errno; @@ -3493,12 +3522,12 @@ static int sceNetAdhocPtpConnect(int id, int timeout, int flag) { socket->lastAttempt = CoreTiming::GetGlobalTimeUsScaled(); // Set Connected State ptpsocket.state = ADHOC_PTP_STATE_ESTABLISHED; - + INFO_LOG(SCENET, "sceNetAdhocPtpConnect[%i:%u]: Already Connected to %s:%u", id, ptpsocket.lport, inet_ntoa(sin.sin_addr), ptpsocket.pport); // Success return 0; } - + // Error handling else if (connectresult == SOCKET_ERROR) { // Connection in Progress @@ -3508,7 +3537,7 @@ static int sceNetAdhocPtpConnect(int id, int timeout, int flag) { socket->lastAttempt = CoreTiming::GetGlobalTimeUsScaled(); // Blocking Mode // Workaround: Forcing first attempt to be blocking to prevent issue related to lobby or high latency networks. (can be useful for GvG Next Plus, Dissidia 012, and Fate Unlimited Codes) - if (!flag || (g_Config.bForcedFirstConnect && socket->attemptCount == 1)) { + if (!flag || (allowForcedConnect && g_Config.bForcedFirstConnect && socket->attemptCount == 1)) { // Simulate blocking behaviour with non-blocking socket u64 threadSocketId = ((u64)__KernelGetCurThread()) << 32 | ptpsocket.id; return WaitBlockingAdhocSocket(threadSocketId, PTP_CONNECT, id, nullptr, nullptr, (flag) ? std::max((int)socket->retry_interval, timeout) : timeout, nullptr, nullptr, "ptp connect"); @@ -3524,23 +3553,39 @@ static int sceNetAdhocPtpConnect(int id, int timeout, int flag) { } } } - + // Peer not found return hleLogDebug(SCENET, ERROR_NET_ADHOC_INVALID_ADDR, "invalid address"); // ERROR_NET_ADHOC_WOULD_BLOCK / ERROR_NET_ADHOC_TIMEOUT } - + // Not a valid Client Socket return hleLogDebug(SCENET, ERROR_NET_ADHOC_NOT_OPENED, "not opened"); } - + // Invalid Socket return hleLogDebug(SCENET, ERROR_NET_ADHOC_INVALID_SOCKET_ID, "invalid socket id"); } - + // Library is uninitialized return hleLogDebug(SCENET, ERROR_NET_ADHOC_NOT_INITIALIZED, "not initialized"); } +/** + * Adhoc Emulator PTP Connection Opener + * @param id Socket File Descriptor + * @param timeout Connect Timeout (in Microseconds) + * @param flag Nonblocking Flag + * @return 0 on success or... ADHOC_NOT_INITIALIZED, ADHOC_INVALID_ARG, ADHOC_INVALID_SOCKET_ID, ADHOC_SOCKET_DELETED, ADHOC_CONNECTION_REFUSED, ADHOC_SOCKET_ALERTED, ADHOC_WOULD_BLOCK, ADHOC_TIMEOUT, ADHOC_NOT_OPENED, ADHOC_THREAD_ABORTED, NET_INTERNAL + */ +static int sceNetAdhocPtpConnect(int id, int timeout, int flag) { + INFO_LOG(SCENET, "sceNetAdhocPtpConnect(%i, %i, %i) at %08x", id, timeout, flag, currentMIPS->pc); + if (!g_Config.bEnableWlan) { + return -1; + } + + return NetAdhocPtp_Connect(id, timeout, flag); +} + int NetAdhocPtp_Close(int id, int unknown) { // Library is initialized if (netAdhocInited) { @@ -3552,6 +3597,10 @@ int NetAdhocPtp_Close(int id, int unknown) { // Valid Socket if (socket != NULL && socket->type == SOCK_PTP) { // Close Connection + struct linger sl; + sl.l_onoff = 1; // non-zero value enables linger option in kernel + sl.l_linger = 0; // timeout interval in seconds + setsockopt(socket->data.ptp.id, SOL_SOCKET, SO_LINGER, (const char*)&sl, sizeof(sl)); shutdown(socket->data.ptp.id, SD_BOTH); closesocket(socket->data.ptp.id); @@ -3641,9 +3690,12 @@ static int sceNetAdhocPtpListen(const char *srcmac, int sport, int bufsize, int // Valid Socket produced if (tcpsocket > 0) { + // Change socket MSS + setSockMSS(tcpsocket, PSP_ADHOC_PTP_MSS); + // Change socket buffer size to be consistent on all platforms. - setSockBufferSize(tcpsocket, SO_SNDBUF, bufsize*2); //PSP_ADHOC_PTP_MFS - setSockBufferSize(tcpsocket, SO_RCVBUF, bufsize*10); //PSP_ADHOC_PTP_MFS*10 + setSockBufferSize(tcpsocket, SO_SNDBUF, bufsize*5); //PSP_ADHOC_PTP_MSS + setSockBufferSize(tcpsocket, SO_RCVBUF, bufsize*10); //PSP_ADHOC_PTP_MSS*10 // Enable KeepAlive setSockKeepAlive(tcpsocket, true, rexmt_int / 1000000L, rexmt_cnt); @@ -3788,7 +3840,7 @@ static int sceNetAdhocPtpSend(int id, u32 dataAddr, u32 dataSizeAddr, int timeou socket->nonblocking = flag; // Connected Socket - if (ptpsocket.state == ADHOC_PTP_STATE_ESTABLISHED) { + if (ptpsocket.state == ADHOC_PTP_STATE_ESTABLISHED || ptpsocket.state == ADHOC_PTP_STATE_SYN_SENT) { // Valid Arguments if (data != NULL && len != NULL && *len > 0) { // Schedule Timeout Removal @@ -3822,6 +3874,10 @@ static int sceNetAdhocPtpSend(int id, u32 dataAddr, u32 dataSizeAddr, int timeou DEBUG_LOG(SCENET, "sceNetAdhocPtpSend[%i:%u]: Sent %u bytes to %s:%u\n", id, ptpsocket.lport, sent, mac2str(&ptpsocket.paddr).c_str(), ptpsocket.pport); + // Set to Established on successful Send when an attempt to Connect was initiated + if (ptpsocket.state == ADHOC_PTP_STATE_SYN_SENT) + ptpsocket.state = ADHOC_PTP_STATE_ESTABLISHED; + // Return Success return 0; } @@ -3842,16 +3898,16 @@ static int sceNetAdhocPtpSend(int id, u32 dataAddr, u32 dataSizeAddr, int timeou // Change Socket State ptpsocket.state = ADHOC_PTP_STATE_CLOSED; - // Disconnected - return hleLogError(SCENET, ERROR_NET_ADHOC_DISCONNECTED, "disconnected"); + // Disconnected or Not connected? + return hleLogError(SCENET, ERROR_NET_ADHOC_DISCONNECTED, "disconnected?"); } // Invalid Arguments return hleLogError(SCENET, ERROR_NET_ADHOC_INVALID_ARG, "invalid arg"); } - // Not connected - return hleLogError(SCENET, ERROR_NET_ADHOC_NOT_CONNECTED, "not connected"); + // Disconnected + return hleLogError(SCENET, ERROR_NET_ADHOC_DISCONNECTED, "disconnected"); } // Invalid Socket @@ -3887,7 +3943,7 @@ static int sceNetAdhocPtpRecv(int id, u32 dataAddr, u32 dataSizeAddr, int timeou auto& ptpsocket = socket->data.ptp; socket->nonblocking = flag; - if (ptpsocket.state == ADHOC_PTP_STATE_ESTABLISHED) { + if (ptpsocket.state == ADHOC_PTP_STATE_ESTABLISHED || ptpsocket.state == ADHOC_PTP_STATE_SYN_SENT) { // Schedule Timeout Removal //if (flag) timeout = 0; @@ -3940,6 +3996,10 @@ static int sceNetAdhocPtpRecv(int id, u32 dataAddr, u32 dataSizeAddr, int timeou DEBUG_LOG(SCENET, "sceNetAdhocPtpRecv[%i:%u]: Received %u bytes from %s:%u\n", id, ptpsocket.lport, received, mac2str(&ptpsocket.paddr).c_str(), ptpsocket.pport); + // Set to Established on successful Recv when an attempt to Connect was initiated + if (ptpsocket.state == ADHOC_PTP_STATE_SYN_SENT) + ptpsocket.state = ADHOC_PTP_STATE_ESTABLISHED; + // Return Success return 0; } @@ -3952,11 +4012,11 @@ static int sceNetAdhocPtpRecv(int id, u32 dataAddr, u32 dataSizeAddr, int timeou // Change Socket State ptpsocket.state = ADHOC_PTP_STATE_CLOSED; - // Disconnected - return hleLogError(SCENET, ERROR_NET_ADHOC_DISCONNECTED, "disconnected"); + // Disconnected or Not connected? + return hleLogError(SCENET, ERROR_NET_ADHOC_DISCONNECTED, "disconnected?"); } - return hleLogError(SCENET, ERROR_NET_ADHOC_NOT_CONNECTED, "not connected"); + return hleLogError(SCENET, ERROR_NET_ADHOC_DISCONNECTED, "disconnected"); } // Invalid Socket @@ -4605,8 +4665,10 @@ int NetAdhocMatching_Start(int matchingId, int evthPri, int evthPartitionId, int // Create PDP Socket int sock = sceNetAdhocPdpCreate((const char*)&item->mac, static_cast(item->port), item->rxbuflen, 0); item->socket = sock; - if (sock < 1) + if (sock < 1) { + peerlock.unlock(); return hleLogError(SCENET, ERROR_NET_ADHOC_MATCHING_PORT_IN_USE, "adhoc matching port in use"); + } // Create & Start the Fake PSP Thread ("matching_ev%d" and "matching_io%d") netAdhocValidateLoopMemory(); @@ -4636,8 +4698,7 @@ int NetAdhocMatching_Start(int matchingId, int evthPri, int evthPartitionId, int // Multithreading Unlock peerlock.unlock(); - // Give a little time to make sure matching Threads are ready before the game use the next sceNet functions, should've checked for status instead of guessing the time? - return hleDelayResult(0, "give some time", adhocMatchingEventDelay); + return 0; } #define KERNEL_PARTITION_ID 1 @@ -4649,7 +4710,9 @@ static int sceNetAdhocMatchingStart(int matchingId, int evthPri, int evthStack, if (!g_Config.bEnableWlan) return -1; - return NetAdhocMatching_Start(matchingId, evthPri, USER_PARTITION_ID, evthStack, inthPri, USER_PARTITION_ID, inthStack, optLen, optDataAddr); + int retval = NetAdhocMatching_Start(matchingId, evthPri, USER_PARTITION_ID, evthStack, inthPri, USER_PARTITION_ID, inthStack, optLen, optDataAddr); + // Give a little time to make sure matching Threads are ready before the game use the next sceNet functions, should've checked for status instead of guessing the time? + return hleDelayResult(retval, "give some time", adhocMatchingEventDelay); } // With params for Partition ID for the event & input handler stack @@ -4658,7 +4721,9 @@ static int sceNetAdhocMatchingStart2(int matchingId, int evthPri, int evthPartit if (!g_Config.bEnableWlan) return -1; - return NetAdhocMatching_Start(matchingId, evthPri, evthPartitionId, evthStack, inthPri, inthPartitionId, inthStack, optLen, optDataAddr); + int retval = NetAdhocMatching_Start(matchingId, evthPri, evthPartitionId, evthStack, inthPri, inthPartitionId, inthStack, optLen, optDataAddr); + // Give a little time to make sure matching Threads are ready before the game use the next sceNet functions, should've checked for status instead of guessing the time? + return hleDelayResult(retval, "give some time", adhocMatchingEventDelay); } @@ -5259,7 +5324,7 @@ int sceNetAdhocMatchingSendData(int matchingId, const char *mac, int dataLen, u3 peer->sending = 1; // Send Data to Peer - sendBulkData(context, peer, dataLen, data); + sendBulkDataPacket(context, &peer->mac, dataLen, data); // Return Success return 0; @@ -5498,7 +5563,7 @@ void __NetMatchingCallbacks() //(int matchingId) after->SetData(args[0], args[1], args[2]); hleEnqueueCall(args[5], 5, args, after); matchingEvents.pop_front(); - delayus = (adhocMatchingEventDelay + adhocExtraDelay); // Added an extra delay to prevent I/O Timing method from causing disconnection + delayus = adhocMatchingEventDelay; // Add extra delay to prevent I/O Timing method from causing disconnection, but delaying too long may cause matchingEvents to pile up } // Must be delayed long enough whenever there is a pending callback. Should it be 10-100ms for Matching Events? or Not Less than the delays on sceNetAdhocMatching HLE? diff --git a/Core/HLE/sceOpenPSID.cpp b/Core/HLE/sceOpenPSID.cpp index d20e34930797..86e35bc4fe68 100644 --- a/Core/HLE/sceOpenPSID.cpp +++ b/Core/HLE/sceOpenPSID.cpp @@ -18,44 +18,69 @@ #include "Core/HLE/HLE.h" #include "Core/HLE/FunctionWrappers.h" #include "Core/HLE/sceOpenPSID.h" -#include "Core/MemMap.h" +#include "Core/MemMapHelpers.h" #include -u8 dummyOpenPSID[16] = { 0x10, 0x02, 0xA3, 0x44, 0x13, 0xF5, 0x93, 0xB0, 0xCC, 0x6E, 0xD1, 0x32, 0x27, 0x85, 0x0F, 0x9D }; +SceOpenPSID dummyOpenPSID = { 0x10, 0x02, 0xA3, 0x44, 0x13, 0xF5, 0x93, 0xB0, 0xCC, 0x6E, 0xD1, 0x32, 0x27, 0x85, 0x0F, 0x9D }; + +void __OpenPSIDInit() { + // Making sure the ID is unique + getLocalMac((SceNetEtherAddr*)&dummyOpenPSID); + return; +} + +void __OpenPSIDShutdown() { + + return; +} static int sceOpenPSIDGetOpenPSID(u32 OpenPSIDPtr) { - WARN_LOG(HLE, "UNTESTED sceOpenPSIDGetOpenPSID(%d)", OpenPSIDPtr); - getLocalMac((SceNetEtherAddr*)&dummyOpenPSID); + WARN_LOG(HLE, "UNTESTED %s(%08x)", __FUNCTION__, OpenPSIDPtr); if (Memory::IsValidAddress(OpenPSIDPtr)) { - for (int i = 0; i < 16; i++) - { - Memory::Write_U8(dummyOpenPSID[i], OpenPSIDPtr+i); - } + Memory::WriteStruct(OpenPSIDPtr, &dummyOpenPSID); } return 0; } -static int sceOpenPSID_driver_0x19D579F0(u32 OpenPSIDPtr,u32 unknown) +static int sceOpenPSIDGetPSID(u32 OpenPSIDPtr,u32 unknown) { - WARN_LOG(HLE, "UNTESTED sceOpenPSID_driver_0x19D579F0(%d,%d)", OpenPSIDPtr,unknown); - getLocalMac((SceNetEtherAddr*)&dummyOpenPSID); + WARN_LOG(HLE, "UNTESTED %s(%08x, %08x)", __FUNCTION__, OpenPSIDPtr, unknown); if (Memory::IsValidAddress(OpenPSIDPtr)) { - for (int i = 0; i < 16; i++) - { - Memory::Write_U8(dummyOpenPSID[i], OpenPSIDPtr + i); - } + Memory::WriteStruct(OpenPSIDPtr, &dummyOpenPSID); } return 0; } +/* +Verify if the provided signature is valid for the specified data. The public key +is provided by the system software. + +Note: + The ECDSA algorithm is used to verify a signature. + +Parameters: + pData Pointer to data the signature has to be verified for. Data length: KIRK_ECDSA_SRC_DATA_LEN. + pSig Pointer to the signature to verify. Signature length: KIRK_ECDSA_SIG_LEN. + +Returns: + 0 on success, otherwise < 0. +*/ +static s32 sceDdrdb_F013F8BF(u32 pDataPtr, u32 pSigPtr) { + ERROR_LOG(HLE, "UNIMPL %s(%08x, %08x)", __FUNCTION__, pDataPtr, pSigPtr); + + return 0; +} + + + const HLEFunction sceOpenPSID[] = { - {0XC69BEBCE, &WrapI_U, "sceOpenPSIDGetOpenPSID", 'i', "x"}, + {0XC69BEBCE, &WrapI_U, "sceOpenPSIDGetOpenPSID", 'i', "x" }, }; void Register_sceOpenPSID() @@ -63,12 +88,24 @@ void Register_sceOpenPSID() RegisterModule("sceOpenPSID", ARRAY_SIZE(sceOpenPSID), sceOpenPSID); } +// According to https://playstationdev.wiki/pspprxlibraries/5.00/kd/openpsid.xml +// sceOpenPSID_driver library seems to contains a duplicate of sceOpenPSIDGetOpenPSID just like sceOpenPSID library, is this allowed here? const HLEFunction sceOpenPSID_driver[] = { - {0x19D579F0, &WrapI_UU, "sceOpenPSID_driver_0x19D579F0", 'i', "xx" }, + {0x19D579F0, &WrapI_UU, "sceOpenPSIDGetPSID", 'i', "xx" }, + {0XC69BEBCE, &WrapI_U, "sceOpenPSIDGetOpenPSID", 'i', "x" }, }; void Register_sceOpenPSID_driver() { RegisterModule("sceOpenPSID_driver", ARRAY_SIZE(sceOpenPSID_driver), sceOpenPSID_driver); } +const HLEFunction sceDdrdb[] = +{ + {0xF013F8BF, &WrapI_UU, "sceDdrdb_F013F8BF", 'i', "xx" }, +}; + +void Register_sceDdrdb() +{ + RegisterModule("sceDdrdb", ARRAY_SIZE(sceDdrdb), sceDdrdb); +} diff --git a/Core/HLE/sceOpenPSID.h b/Core/HLE/sceOpenPSID.h index 24855ef4a471..5ad181500ffe 100644 --- a/Core/HLE/sceOpenPSID.h +++ b/Core/HLE/sceOpenPSID.h @@ -17,7 +17,16 @@ #pragma once -void __sceOpenPSIDInit(); +#define PSP_DNAS_USER_DATA_MAX_LEN 2048 +#define PSP_OPENPSID_SIZE 16 + +typedef struct SceOpenPSID { + u8 data[PSP_OPENPSID_SIZE]; +} SceOpenPSID; + +void __OpenPSIDInit(); +void __OpenPSIDShutdown(); void Register_sceOpenPSID(); -void Register_sceOpenPSID_driver(); \ No newline at end of file +void Register_sceOpenPSID_driver(); +void Register_sceDdrdb(); diff --git a/Core/HLE/scePsmf.cpp b/Core/HLE/scePsmf.cpp index 5805cfe04dd9..847d8b00356b 100644 --- a/Core/HLE/scePsmf.cpp +++ b/Core/HLE/scePsmf.cpp @@ -217,6 +217,7 @@ class PsmfPlayer { } PsmfPlayer(const PsmfPlayerCreateData *data); ~PsmfPlayer() { + AbortFinish(); if (mediaengine) delete mediaengine; pspFileSystem.CloseFile(filehandle); @@ -709,7 +710,9 @@ void __PsmfPlayerDoState(PointerWrap &p) { eventPsmfPlayerStatusChange = -1; } else { Do(p, eventPsmfPlayerStatusChange); - CoreTiming::RestoreRegisterEvent(eventPsmfPlayerStatusChange, "PsmfPlayerStatusChangeEvent", &__PsmfPlayerStatusChange); + if (eventPsmfPlayerStatusChange != -1) { + CoreTiming::RestoreRegisterEvent(eventPsmfPlayerStatusChange, "PsmfPlayerStatusChangeEvent", &__PsmfPlayerStatusChange); + } } if (s < 2) { // Assume the latest, which is what we were emulating before. @@ -2076,29 +2079,29 @@ static int __PsmfPlayerFinish(u32 psmfPlayer) { } const HLEFunction scePsmf[] = { - {0XC22C8327, &WrapU_UU, "scePsmfSetPsmf", 'x', "xx" }, - {0XC7DB3A5B, &WrapU_UUU, "scePsmfGetCurrentStreamType", 'i', "xpp"}, + {0XC22C8327, &WrapU_UU, "scePsmfSetPsmf", 'x', "xx" ,HLE_CLEAR_STACK_BYTES, 0x50}, + {0XC7DB3A5B, &WrapU_UUU, "scePsmfGetCurrentStreamType", 'i', "xpp" ,HLE_CLEAR_STACK_BYTES, 0x50}, {0X28240568, &WrapU_U, "scePsmfGetCurrentStreamNumber", 'i', "x" }, - {0X1E6D9013, &WrapU_UUU, "scePsmfSpecifyStreamWithStreamType", 'i', "xii"}, + {0X1E6D9013, &WrapU_UUU, "scePsmfSpecifyStreamWithStreamType", 'i', "xii" ,HLE_CLEAR_STACK_BYTES, 0x20}, {0X0C120E1D, &WrapU_UUU, "scePsmfSpecifyStreamWithStreamTypeNumber", 'i', "xii"}, - {0X4BC9BDE0, &WrapU_UI, "scePsmfSpecifyStream", 'i', "xi" }, - {0X76D3AEBA, &WrapU_UU, "scePsmfGetPresentationStartTime", 'x', "xx" }, - {0XBD8AE0D8, &WrapU_UU, "scePsmfGetPresentationEndTime", 'x', "xx" }, - {0XEAED89CD, &WrapU_U, "scePsmfGetNumberOfStreams", 'i', "x" }, - {0X7491C438, &WrapU_U, "scePsmfGetNumberOfEPentries", 'x', "x" }, - {0X0BA514E5, &WrapU_UU, "scePsmfGetVideoInfo", 'i', "xp" }, - {0XA83F7113, &WrapU_UU, "scePsmfGetAudioInfo", 'i', "xp" }, - {0X971A3A90, &WrapU_U, "scePsmfCheckEPmap", 'x', "x" }, - {0X68D42328, &WrapU_UI, "scePsmfGetNumberOfSpecificStreams", 'i', "xi" }, + {0X4BC9BDE0, &WrapU_UI, "scePsmfSpecifyStream", 'i', "xi" ,HLE_CLEAR_STACK_BYTES, 0x40}, + {0X76D3AEBA, &WrapU_UU, "scePsmfGetPresentationStartTime", 'x', "xx" ,HLE_CLEAR_STACK_BYTES, 0x10}, + {0XBD8AE0D8, &WrapU_UU, "scePsmfGetPresentationEndTime", 'x', "xx" ,HLE_CLEAR_STACK_BYTES, 0x10}, + {0XEAED89CD, &WrapU_U, "scePsmfGetNumberOfStreams", 'i', "x" ,HLE_CLEAR_STACK_BYTES, 0x10}, + {0X7491C438, &WrapU_U, "scePsmfGetNumberOfEPentries", 'x', "x" ,HLE_CLEAR_STACK_BYTES, 0x10}, + {0X0BA514E5, &WrapU_UU, "scePsmfGetVideoInfo", 'i', "xp" ,HLE_CLEAR_STACK_BYTES, 0x20}, + {0XA83F7113, &WrapU_UU, "scePsmfGetAudioInfo", 'i', "xp" ,HLE_CLEAR_STACK_BYTES, 0x20}, + {0X971A3A90, &WrapU_U, "scePsmfCheckEPmap", 'x', "x" ,HLE_CLEAR_STACK_BYTES, 0x10}, + {0X68D42328, &WrapU_UI, "scePsmfGetNumberOfSpecificStreams", 'i', "xi" ,HLE_CLEAR_STACK_BYTES, 0x20}, {0X5B70FCC1, &WrapU_UU, "scePsmfQueryStreamOffset", 'x', "xx" }, {0X9553CC91, &WrapU_UU, "scePsmfQueryStreamSize", 'x', "xx" }, {0XB78EB9E9, &WrapU_UU, "scePsmfGetHeaderSize", 'x', "xx" }, {0XA5EBFE81, &WrapU_UU, "scePsmfGetStreamSize", 'x', "xx" }, {0XE1283895, &WrapU_U, "scePsmfGetPsmfVersion", 'x', "x" }, - {0X2673646B, &WrapU_U, "scePsmfVerifyPsmf", 'x', "x" }, - {0X4E624A34, &WrapU_UIU, "scePsmfGetEPWithId", 'x', "xix"}, - {0X7C0E7AC3, &WrapU_UUU, "scePsmfGetEPWithTimestamp", 'x', "xxx"}, - {0X5F457515, &WrapU_UU, "scePsmfGetEPidWithTimestamp", 'x', "xx" }, + {0X2673646B, &WrapU_U, "scePsmfVerifyPsmf", 'x', "x" ,HLE_CLEAR_STACK_BYTES, 0x100}, + {0X4E624A34, &WrapU_UIU, "scePsmfGetEPWithId", 'x', "xix" ,HLE_CLEAR_STACK_BYTES, 0x10}, + {0X7C0E7AC3, &WrapU_UUU, "scePsmfGetEPWithTimestamp", 'x', "xxx" ,HLE_CLEAR_STACK_BYTES, 0x10}, + {0X5F457515, &WrapU_UU, "scePsmfGetEPidWithTimestamp", 'x', "xx" ,HLE_CLEAR_STACK_BYTES, 0x20}, {0X43AC7DBB, nullptr, "scePsmfGetPsmfMark", '?', "" }, {0XDE78E9FC, nullptr, "scePsmfGetNumberOfPsmfMarks", '?', "" }, }; diff --git a/Core/HLE/sceUsbCam.cpp b/Core/HLE/sceUsbCam.cpp index c6dccd6796a0..3882e140fb70 100644 --- a/Core/HLE/sceUsbCam.cpp +++ b/Core/HLE/sceUsbCam.cpp @@ -133,13 +133,27 @@ static int sceUsbCamStopMic() { } static int sceUsbCamReadMicBlocking(u32 bufAddr, u32 size) { - INFO_LOG(HLE, "UNIMPL sceUsbCamReadMicBlocking: size: %d", size); - return __MicInputBlocking(size >> 1, config->micParam.frequency, bufAddr); + if (!Memory::IsValidAddress(bufAddr)) { + ERROR_LOG(HLE,"sceUsbCamReadMicBlocking(%08x, %d): invalid addresses", bufAddr, size); + return -1; + } + + INFO_LOG(HLE, "sceUsbCamReadMicBlocking: size: %d", size); + return __MicInput(size >> 1, config->micParam.frequency, bufAddr, CAMERAMIC); } static int sceUsbCamReadMic(u32 bufAddr, u32 size) { - INFO_LOG(HLE, "UNIMPL sceUsbCamReadMic: size: %d", size); - return __MicInputBlocking(size >> 1, config->micParam.frequency, bufAddr); + if (!Memory::IsValidAddress(bufAddr)) { + ERROR_LOG(HLE, "sceUsbCamReadMic(%08x, %d): invalid addresses", bufAddr, size); + return -1; + } + + INFO_LOG(HLE, "sceUsbCamReadMic: size: %d", size); + return __MicInput(size >> 1, config->micParam.frequency, bufAddr, CAMERAMIC, false); +} + +static int sceUsbCamGetMicDataLength() { + return Microphone::getReadMicDataLength(); } static int sceUsbCamSetupVideo(u32 paramAddr, u32 workareaAddr, int wasize) { @@ -251,7 +265,7 @@ const HLEFunction sceUsbCam[] = { 0X3DC0088E, &WrapI_UU, "sceUsbCamReadMic", 'i', "xx" }, { 0XB048A67D, nullptr, "sceUsbCamWaitReadMicEnd", '?', "" }, { 0XF8847F60, nullptr, "sceUsbCamPollReadMicEnd", '?', "" }, - { 0X5778B452, nullptr, "sceUsbCamGetMicDataLength", '?', "" }, + { 0X5778B452, &WrapI_V, "sceUsbCamGetMicDataLength", 'i', "" }, { 0X08AEE98A, nullptr, "sceUsbCamSetMicGain", '?', "" }, { 0X17F7B2FB, &WrapI_UUI, "sceUsbCamSetupVideo", 'i', "xxi" }, diff --git a/Core/HLE/sceUsbMic.cpp b/Core/HLE/sceUsbMic.cpp index 8068471689a1..086b968f4590 100644 --- a/Core/HLE/sceUsbMic.cpp +++ b/Core/HLE/sceUsbMic.cpp @@ -15,6 +15,7 @@ // Official git repository and contact information can be found at // https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/. +#include #include #include "Common/Serialize/Serializer.h" @@ -32,6 +33,7 @@ #endif #ifdef HAVE_WIN32_MICROPHONE +#define NOMINMAX #include "Windows/CaptureDevice.h" #endif @@ -40,44 +42,38 @@ enum { SCE_USBMIC_ERROR_INVALID_SAMPLERATE = 0x8024380A, }; -int eventUsbMicAudioUpdate = -1; +int eventMicBlockingResume = -1; -QueueBuf *audioBuf = nullptr; -u32 numNeedSamples; +static QueueBuf *audioBuf = nullptr; +static u32 numNeedSamples; static std::vector waitingThreads; -std::mutex wtMutex; -bool isNeedInput; -u32 curSampleRate; -u32 curChannels; -int micState; // 0 means stopped, 1 means started, for save state. - -static void __UsbMicAudioUpdate(u64 userdata, int cyclesLate) { +static bool isNeedInput; +static u32 curSampleRate; +static u32 curChannels; +static u32 readMicDataLength; +static u32 curTargetAddr; +static int micState; // 0 means stopped, 1 means started, for save state. + +static void __MicBlockingResume(u64 userdata, int cyclesLate) { SceUID threadID = (SceUID)userdata; u32 error; int count = 0; - std::unique_lock lock(wtMutex); for (auto waitingThread : waitingThreads) { if (waitingThread.threadID == threadID) { SceUID waitID = __KernelGetWaitID(threadID, WAITTYPE_MICINPUT, error); if (waitID == 0) continue; if (Microphone::isHaveDevice()) { - if (Microphone::availableAudioBufSize() >= waitingThread.needSize) { - u8 *tempbuf8 = new u8[waitingThread.needSize]; - Microphone::getAudioData(tempbuf8, waitingThread.needSize); - Memory::Memcpy(waitingThread.addr, tempbuf8, waitingThread.needSize); - delete[] tempbuf8; + if (Microphone::getReadMicDataLength() >= waitingThread.needSize) { u32 ret = __KernelGetWaitValue(threadID, error); DEBUG_LOG(HLE, "sceUsbMic: Waking up thread(%d)", (int)waitingThread.threadID); __KernelResumeThreadFromWait(threadID, ret); waitingThreads.erase(waitingThreads.begin() + count); - if (waitingThreads.size() == 0) - isNeedInput = false; } else { - u64 waitTimeus = (waitingThread.needSize - Microphone::availableAudioBufSize()) * 1000000 / 2 / waitingThread.sampleRate; - if(eventUsbMicAudioUpdate == -1) - eventUsbMicAudioUpdate = CoreTiming::RegisterEvent("UsbMicAudioUpdate", &__UsbMicAudioUpdate); - CoreTiming::ScheduleEvent(usToCycles(waitTimeus), eventUsbMicAudioUpdate, userdata); + u64 waitTimeus = (waitingThread.needSize - Microphone::getReadMicDataLength()) * 1000000 / 2 / waitingThread.sampleRate; + if(eventMicBlockingResume == -1) + eventMicBlockingResume = CoreTiming::RegisterEvent("MicBlockingResume", &__MicBlockingResume); + CoreTiming::ScheduleEvent(usToCycles(waitTimeus), eventMicBlockingResume, userdata); } } else { for (u32 i = 0; i < waitingThread.needSize; i++) { @@ -89,13 +85,11 @@ static void __UsbMicAudioUpdate(u64 userdata, int cyclesLate) { DEBUG_LOG(HLE, "sceUsbMic: Waking up thread(%d)", (int)waitingThread.threadID); __KernelResumeThreadFromWait(threadID, ret); waitingThreads.erase(waitingThreads.begin() + count); - if (waitingThreads.size() == 0) - isNeedInput = false; + readMicDataLength += waitingThread.needSize; } } ++count; } - lock.unlock(); } void __UsbMicInit() { @@ -105,11 +99,13 @@ void __UsbMicInit() { } numNeedSamples = 0; waitingThreads.clear(); - isNeedInput = false; + isNeedInput = true; curSampleRate = 44100; curChannels = 1; + curTargetAddr = 0; + readMicDataLength = 0; micState = 0; - eventUsbMicAudioUpdate = CoreTiming::RegisterEvent("UsbMicAudioUpdate", &__UsbMicAudioUpdate); + eventMicBlockingResume = CoreTiming::RegisterEvent("MicBlockingResume", &__MicBlockingResume); } void __UsbMicShutdown() { @@ -121,10 +117,11 @@ void __UsbMicShutdown() { } void __UsbMicDoState(PointerWrap &p) { - auto s = p.Section("sceUsbMic", 0, 2); + auto s = p.Section("sceUsbMic", 0, 3); if (!s) { return; } + bool isMicStartedNow = Microphone::isMicStarted(); Do(p, numNeedSamples); Do(p, waitingThreads); Do(p, isNeedInput); @@ -132,21 +129,26 @@ void __UsbMicDoState(PointerWrap &p) { Do(p, curChannels); Do(p, micState); if (s > 1) { - Do(p, eventUsbMicAudioUpdate); - CoreTiming::RestoreRegisterEvent(eventUsbMicAudioUpdate, "UsbMicAudioUpdate", &__UsbMicAudioUpdate); + Do(p, eventMicBlockingResume); + if (eventMicBlockingResume != -1) { + CoreTiming::RestoreRegisterEvent(eventMicBlockingResume, "MicBlockingResume", &__MicBlockingResume); + } } else { - eventUsbMicAudioUpdate = -1; + eventMicBlockingResume = -1; + } + if (s > 2) { + Do(p, curTargetAddr); + Do(p, readMicDataLength); } - if (!audioBuf && numNeedSamples > 0) { audioBuf = new QueueBuf(numNeedSamples << 1); } if (micState == 0) { - if (Microphone::isMicStarted()) + if (isMicStartedNow) Microphone::stopMic(); } else if (micState == 1) { - if (Microphone::isMicStarted()) { + if (isMicStartedNow) { // Ok, started. } else { Microphone::startMic(new std::vector({ curSampleRate, curChannels })); @@ -154,7 +156,7 @@ void __UsbMicDoState(PointerWrap &p) { } } -QueueBuf::QueueBuf(u32 size) : start(0), end(0), capacity(size) { +QueueBuf::QueueBuf(u32 size) : available(0), end(0), capacity(size) { buf_ = new u8[size]; } @@ -165,7 +167,7 @@ QueueBuf::~QueueBuf() { QueueBuf::QueueBuf(const QueueBuf &buf) { buf_ = new u8[buf.capacity]; memcpy(buf_, buf.buf_, buf.capacity); - start = buf.start; + available = buf.available; end = buf.end; capacity = buf.capacity; } @@ -176,27 +178,30 @@ QueueBuf& QueueBuf::operator=(const QueueBuf &buf) { } std::unique_lock lock(mutex); memcpy(buf_, buf.buf_, buf.capacity); - start = buf.start; + available = buf.available; end = buf.end; lock.unlock(); return *this; } -void QueueBuf::push(u8 *buf, u32 size) { - if (getRemainingSize() < size) { - resize((capacity + size - getRemainingSize()) * 3 / 2); - } +u32 QueueBuf::push(u8 *buf, u32 size) { + u32 addedSize = 0; + if (size > capacity) + resize(size); + // This will overwrite the old data if the size prepare to add more than remaining size. std::unique_lock lock(mutex); - if (end + size <= capacity) { - memcpy(buf_ + end, buf, size); - end += size; - } else { - memcpy(buf_ + end, buf, capacity - end); + while (end + size > capacity) { + memcpy(buf_ + end, buf + addedSize, capacity - end); + addedSize += capacity - end; size -= capacity - end; - memcpy(buf_, buf + capacity - end, size); - end = size; + end = 0; } + memcpy(buf_ + end, buf + addedSize, size); + addedSize += size; + end = (end + size) % capacity; + available = std::min(capacity, available + addedSize); lock.unlock(); + return addedSize; } u32 QueueBuf::pop(u8 *buf, u32 size) { @@ -206,15 +211,13 @@ u32 QueueBuf::pop(u8 *buf, u32 size) { ret = size; std::unique_lock lock(mutex); - if (start + size <= capacity) { - memcpy(buf, buf_ + start, size); - start += size; + if (getStartPos() + size <= capacity) { + memcpy(buf, buf_ + getStartPos(), size); } else { - memcpy(buf, buf_ + start, capacity - start); - size -= capacity - start; - memcpy(buf + capacity - start, buf_, size); - start = size; + memcpy(buf, buf_ + getStartPos(), capacity - getStartPos()); + memcpy(buf + capacity - getStartPos(), buf_, size - (capacity - getStartPos())); } + available -= size; lock.unlock(); return ret; } @@ -226,48 +229,44 @@ void QueueBuf::resize(u32 newSize) { u32 availableSize = getAvailableSize(); u8 *oldbuf = buf_; - std::unique_lock lock(mutex); buf_ = new u8[newSize]; - if (end >= start) { - memcpy(buf_, oldbuf + start, availableSize); - } else { - memcpy(buf_, oldbuf + start, capacity - start); - memcpy(buf_ + capacity - start, oldbuf, availableSize - (capacity - start)); - } - start = 0; + pop(buf_, availableSize); + available = availableSize; end = availableSize; capacity = newSize; delete[] oldbuf; - lock.unlock(); } void QueueBuf::flush() { std::unique_lock lock(mutex); - start = 0; + available = 0; end = 0; lock.unlock(); } u32 QueueBuf::getAvailableSize() { - u32 availableSize = 0; - if (end >= start) { - availableSize = end - start; - } else { - availableSize = end + capacity - start; - } - return availableSize; + return available; } u32 QueueBuf::getRemainingSize() { return capacity - getAvailableSize(); } +u32 QueueBuf::getStartPos() { + return end >= available ? end - available : capacity - available + end; +} + static int sceUsbMicPollInputEnd() { ERROR_LOG(HLE, "UNIMPL sceUsbMicPollInputEnd"); return 0; } static int sceUsbMicInputBlocking(u32 maxSamples, u32 sampleRate, u32 bufAddr) { + if (!Memory::IsValidAddress(bufAddr)) { + ERROR_LOG(HLE, "sceUsbMicInputBlocking(%d, %d, %08x): invalid addresses", maxSamples, sampleRate, bufAddr); + return -1; + } + INFO_LOG(HLE, "sceUsbMicInputBlocking: maxSamples: %d, samplerate: %d, bufAddr: %08x", maxSamples, sampleRate, bufAddr); if (maxSamples <= 0 || (maxSamples & 0x3F) != 0) { return SCE_USBMIC_ERROR_INVALID_MAX_SAMPLES; @@ -276,9 +275,8 @@ static int sceUsbMicInputBlocking(u32 maxSamples, u32 sampleRate, u32 bufAddr) { if (sampleRate != 44100 && sampleRate != 22050 && sampleRate != 11025) { return SCE_USBMIC_ERROR_INVALID_SAMPLERATE; } - curSampleRate = sampleRate; - curChannels = 1; - return __MicInputBlocking(maxSamples, sampleRate, bufAddr); + + return __MicInput(maxSamples, sampleRate, bufAddr, USBMIC); } static int sceUsbMicInputInitEx(u32 paramAddr) { @@ -286,12 +284,25 @@ static int sceUsbMicInputInitEx(u32 paramAddr) { return 0; } -static int sceUsbMicInput() { - ERROR_LOG(HLE, "UNIMPL sceUsbMicInput"); - return 0; +static int sceUsbMicInput(u32 maxSamples, u32 sampleRate, u32 bufAddr) { + if (!Memory::IsValidAddress(bufAddr)) { + ERROR_LOG(HLE, "sceUsbMicInput(%d, %d, %08x): invalid addresses", maxSamples, sampleRate, bufAddr); + return -1; + } + + ERROR_LOG(HLE, "UNTEST sceUsbMicInput: maxSamples: %d, samplerate: %d, bufAddr: %08x", maxSamples, sampleRate, bufAddr); + if (maxSamples <= 0 || (maxSamples & 0x3F) != 0) { + return SCE_USBMIC_ERROR_INVALID_MAX_SAMPLES; + } + + if (sampleRate != 44100 && sampleRate != 22050 && sampleRate != 11025) { + return SCE_USBMIC_ERROR_INVALID_SAMPLERATE; + } + + return __MicInput(maxSamples, sampleRate, bufAddr, USBMIC, false); } static int sceUsbMicGetInputLength() { - int ret = Microphone::availableAudioBufSize() / 2; + int ret = Microphone::getReadMicDataLength() / 2; ERROR_LOG(HLE, "UNTEST sceUsbMicGetInputLength(ret: %d)", ret); return ret; } @@ -342,15 +353,10 @@ bool Microphone::isHaveDevice() { } bool Microphone::isMicStarted() { -#ifdef HAVE_WIN32_MICROPHONE - if(winMic) - return winMic->isStarted(); -#elif PPSSPP_PLATFORM(ANDROID) - return audioRecording_State(); -#endif - return false; + return micState == 1; } +// Deprecated. bool Microphone::isNeedInput() { return ::isNeedInput; } @@ -363,11 +369,23 @@ u32 Microphone::availableAudioBufSize() { return audioBuf->getAvailableSize(); } +u32 Microphone::getReadMicDataLength() { + return ::readMicDataLength; +} + int Microphone::addAudioData(u8 *buf, u32 size) { if (audioBuf) audioBuf->push(buf, size); else return 0; + if (Memory::IsValidAddress(curTargetAddr)) { + u32 addSize = std::min(audioBuf->getAvailableSize(), numNeedSamples() * 2 - getReadMicDataLength()); + u8 *tempbuf8 = new u8[addSize]; + getAudioData(tempbuf8, addSize); + Memory::Memcpy(curTargetAddr + readMicDataLength, tempbuf8, addSize); + delete[] tempbuf8; + readMicDataLength += addSize; + } return size; } @@ -400,51 +418,60 @@ void Microphone::onMicDeviceChange() { } } -u32 __MicInputBlocking(u32 maxSamples, u32 sampleRate, u32 bufAddr) { +u32 __MicInput(u32 maxSamples, u32 sampleRate, u32 bufAddr, MICTYPE type, bool block) { + curSampleRate = sampleRate; + curChannels = 1; + curTargetAddr = bufAddr; u32 size = maxSamples << 1; - if (size > numNeedSamples << 1) { - if (!audioBuf) { - audioBuf = new QueueBuf(size); - } else { - audioBuf->resize(size); - } + if (!audioBuf) { + audioBuf = new QueueBuf(size); + } else { + audioBuf->resize(size); } if (!audioBuf) return 0; numNeedSamples = maxSamples; - Microphone::flushAudioData(); + readMicDataLength = 0; if (!Microphone::isMicStarted()) { std::vector *param = new std::vector({ sampleRate, 1 }); Microphone::startMic(param); } - u64 waitTimeus = 0; - if (Microphone::availableAudioBufSize() < size) { - waitTimeus = (size - Microphone::availableAudioBufSize()) * 1000000 / 2 / sampleRate; - isNeedInput = true; + + if (Microphone::availableAudioBufSize() > 0) { + u32 addSize = std::min(Microphone::availableAudioBufSize(), size); + u8 *tempbuf8 = new u8[addSize]; + Microphone::getAudioData(tempbuf8, addSize); + Memory::Memcpy(curTargetAddr, tempbuf8, addSize); + delete[] tempbuf8; + readMicDataLength += addSize; + } + + if (!block) { + return type == CAMERAMIC ? size : maxSamples; } - if(eventUsbMicAudioUpdate == -1) - eventUsbMicAudioUpdate = CoreTiming::RegisterEvent("UsbMicAudioUpdate", &__UsbMicAudioUpdate); - CoreTiming::ScheduleEvent(usToCycles(waitTimeus), eventUsbMicAudioUpdate, __KernelGetCurThread()); + + u64 waitTimeus = (size - Microphone::availableAudioBufSize()) * 1000000 / 2 / sampleRate; + if (eventMicBlockingResume == -1) + eventMicBlockingResume = CoreTiming::RegisterEvent("MicBlockingResume", &__MicBlockingResume); + CoreTiming::ScheduleEvent(usToCycles(waitTimeus), eventMicBlockingResume, __KernelGetCurThread()); MicWaitInfo waitInfo = { __KernelGetCurThread(), bufAddr, size, sampleRate }; - std::unique_lock lock(wtMutex); waitingThreads.push_back(waitInfo); - lock.unlock(); DEBUG_LOG(HLE, "MicInputBlocking: blocking thread(%d)", (int)__KernelGetCurThread()); __KernelWaitCurThread(WAITTYPE_MICINPUT, 1, size, 0, false, "blocking microphone"); - return maxSamples; + return type == CAMERAMIC ? size : maxSamples; } const HLEFunction sceUsbMic[] = { - {0x06128E42, &WrapI_V, "sceUsbMicPollInputEnd", 'i', "" }, + {0x06128E42, &WrapI_V, "sceUsbMicPollInputEnd", 'i', "" }, {0x2E6DCDCD, &WrapI_UUU, "sceUsbMicInputBlocking", 'i', "xxx" }, - {0x45310F07, &WrapI_U, "sceUsbMicInputInitEx", 'i', "x" }, - {0x5F7F368D, &WrapI_V, "sceUsbMicInput", 'i', "" }, - {0x63400E20, &WrapI_V, "sceUsbMicGetInputLength", 'i', "" }, + {0x45310F07, &WrapI_U, "sceUsbMicInputInitEx", 'i', "x" }, + {0x5F7F368D, &WrapI_UUU, "sceUsbMicInput", 'i', "xxx" }, + {0x63400E20, &WrapI_V, "sceUsbMicGetInputLength", 'i', "" }, {0xB8E536EB, &WrapI_III, "sceUsbMicInputInit", 'i', "iii" }, - {0xF899001C, &WrapI_V, "sceUsbMicWaitInputEnd", 'i', "" }, + {0xF899001C, &WrapI_V, "sceUsbMicWaitInputEnd", 'i', "" }, }; void Register_sceUsbMic() diff --git a/Core/HLE/sceUsbMic.h b/Core/HLE/sceUsbMic.h index c073d4cf5687..a05d1427094f 100644 --- a/Core/HLE/sceUsbMic.h +++ b/Core/HLE/sceUsbMic.h @@ -26,6 +26,12 @@ void __UsbMicInit(); void __UsbMicShutdown(); void __UsbMicDoState(PointerWrap &p); +enum MICTYPE { + AUDIOINPUT, + USBMIC, + CAMERAMIC +}; + struct MicWaitInfo { SceUID threadID; u32 addr; @@ -41,15 +47,19 @@ class QueueBuf { QueueBuf(const QueueBuf &buf); QueueBuf& operator=(const QueueBuf &buf); - void push(u8 *buf, u32 size); + u32 push(u8 *buf, u32 size); u32 pop(u8 *buf, u32 size); void resize(u32 newSize); void flush(); u32 getAvailableSize(); u32 getRemainingSize(); + u32 getStartPos(); + u32 getCapacity() const { + return capacity; + } private: - u32 start; + u32 available; u32 end; u32 capacity; u8 *buf_; @@ -61,9 +71,10 @@ namespace Microphone { int stopMic(); bool isHaveDevice(); bool isMicStarted(); - bool isNeedInput(); u32 numNeedSamples(); u32 availableAudioBufSize(); + u32 getReadMicDataLength(); + int addAudioData(u8 *buf, u32 size); u32 getAudioData(u8 *buf, u32 size); @@ -71,6 +82,9 @@ namespace Microphone { std::vector getDeviceList(); void onMicDeviceChange(); + + // Deprecated. + bool isNeedInput(); } -u32 __MicInputBlocking(u32 maxSamples, u32 sampleRate, u32 bufAddr); +u32 __MicInput(u32 maxSamples, u32 sampleRate, u32 bufAddr, MICTYPE type, bool block = true); diff --git a/Core/HLE/sceUtility.cpp b/Core/HLE/sceUtility.cpp index 966ed2d6c12f..8e2c27ac09c6 100644 --- a/Core/HLE/sceUtility.cpp +++ b/Core/HLE/sceUtility.cpp @@ -143,9 +143,26 @@ static PSPGamedataInstallDialog gamedataInstallDialog; static std::map currentlyLoadedModules; +static void ActivateDialog(UtilityDialogType type) { + if (!currentDialogActive) { + // TODO: Lock volatile RAM (see https://github.com/hrydgard/ppsspp/issues/8288) + // We don't have a virtual dialog thread unlike JPSCP. Not sure if it's OK to + // just do it on the current thread - it does seem dangerous to assume so... + currentDialogType = type; + currentDialogActive = true; + } +} + +static void DeactivateDialog() { + if (currentDialogActive) { + // TODO: Unlock and zero volatile RAM. + currentDialogActive = false; + } +} + void __UtilityInit() { currentDialogType = UTILITY_DIALOG_NONE; - currentDialogActive = false; + DeactivateDialog(); SavedataParam::Init(); currentlyLoadedModules.clear(); } @@ -200,8 +217,7 @@ static int sceUtilitySavedataInitStart(u32 paramAddr) } oldStatus = 100; - currentDialogType = UTILITY_DIALOG_SAVEDATA; - currentDialogActive = true; + ActivateDialog(UTILITY_DIALOG_SAVEDATA); int ret = saveDialog.Init(paramAddr); DEBUG_LOG(SCEUTILITY,"%08x=sceUtilitySavedataInitStart(%08x)",ret,paramAddr); return ret; @@ -214,8 +230,9 @@ static int sceUtilitySavedataShutdownStart() WARN_LOG(SCEUTILITY, "sceUtilitySavedataShutdownStart(): wrong dialog type"); return SCE_ERROR_UTILITY_WRONG_TYPE; } - - currentDialogActive = false; + + DeactivateDialog(); + DeactivateDialog(); int ret = saveDialog.Shutdown(); DEBUG_LOG(SCEUTILITY,"%08x=sceUtilitySavedataShutdownStart()",ret); return ret; @@ -361,7 +378,7 @@ static int sceUtilityMsgDialogShutdownStart() return SCE_ERROR_UTILITY_WRONG_TYPE; } - currentDialogActive = false; + DeactivateDialog(); int ret = msgDialog.Shutdown(); DEBUG_LOG(SCEUTILITY, "%08x=sceUtilityMsgDialogShutdownStart()", ret); return ret; @@ -422,8 +439,7 @@ static int sceUtilityOskInitStart(u32 oskPtr) } oldStatus = 100; - currentDialogType = UTILITY_DIALOG_OSK; - currentDialogActive = true; + ActivateDialog(UTILITY_DIALOG_OSK); int ret = oskDialog.Init(oskPtr); INFO_LOG(SCEUTILITY, "%08x=sceUtilityOskInitStart(%08x)", ret, oskPtr); return ret; @@ -437,7 +453,7 @@ static int sceUtilityOskShutdownStart() return SCE_ERROR_UTILITY_WRONG_TYPE; } - currentDialogActive = false; + DeactivateDialog(); int ret = oskDialog.Shutdown(); DEBUG_LOG(SCEUTILITY, "%08x=sceUtilityOskShutdownStart()",ret); return ret; @@ -479,8 +495,7 @@ static int sceUtilityNetconfInitStart(u32 paramsAddr) { } oldStatus = 100; - currentDialogType = UTILITY_DIALOG_NET; - currentDialogActive = true; + ActivateDialog(UTILITY_DIALOG_NET); return hleLogSuccessInfoI(SCEUTILITY, netDialog.Init(paramsAddr)); } @@ -489,7 +504,7 @@ static int sceUtilityNetconfShutdownStart() { return hleLogWarning(SCEUTILITY, SCE_ERROR_UTILITY_WRONG_TYPE, "wrong dialog type"); } - currentDialogActive = false; + DeactivateDialog(); return hleLogSuccessI(SCEUTILITY, netDialog.Shutdown()); } @@ -535,8 +550,7 @@ static int sceUtilityScreenshotInitStart(u32 paramAddr) } oldStatus = 100; - currentDialogType = UTILITY_DIALOG_SCREENSHOT; - currentDialogActive = true; + ActivateDialog(UTILITY_DIALOG_SCREENSHOT); u32 retval = screenshotDialog.Init(paramAddr); WARN_LOG_REPORT(SCEUTILITY, "%08x=sceUtilityScreenshotInitStart(%08x)", retval, paramAddr); return retval; @@ -550,7 +564,7 @@ static int sceUtilityScreenshotShutdownStart() return SCE_ERROR_UTILITY_WRONG_TYPE; } - currentDialogActive = false; + DeactivateDialog(); int ret = screenshotDialog.Shutdown(); WARN_LOG(SCEUTILITY, "%08x=sceUtilityScreenshotShutdownStart()", ret); return ret; @@ -605,9 +619,8 @@ static int sceUtilityGamedataInstallInitStart(u32 paramsAddr) WARN_LOG(SCEUTILITY, "sceUtilityGamedataInstallInitStart(%08x): wrong dialog type", paramsAddr); return SCE_ERROR_UTILITY_WRONG_TYPE; } - - currentDialogType = UTILITY_DIALOG_GAMEDATAINSTALL; - currentDialogActive = true; + + ActivateDialog(UTILITY_DIALOG_GAMEDATAINSTALL); int ret = gamedataInstallDialog.Init(paramsAddr); INFO_LOG(SCEUTILITY, "%08x=sceUtilityGamedataInstallInitStart(%08x)",ret,paramsAddr); return ret; @@ -620,7 +633,7 @@ static int sceUtilityGamedataInstallShutdownStart() { return SCE_ERROR_UTILITY_WRONG_TYPE; } - currentDialogActive = false; + DeactivateDialog(); DEBUG_LOG(SCEUTILITY, "sceUtilityGamedataInstallShutdownStart()"); return gamedataInstallDialog.Shutdown(); } @@ -659,7 +672,7 @@ static int sceUtilityGamedataInstallAbort() return SCE_ERROR_UTILITY_WRONG_TYPE; } - currentDialogActive = false; + DeactivateDialog(); int ret = gamedataInstallDialog.Abort(); DEBUG_LOG(SCEUTILITY, "%08x=sceUtilityGamedataInstallDialogAbort",ret); return ret; @@ -824,7 +837,7 @@ static int sceUtilityGameSharingShutdownStart() return SCE_ERROR_UTILITY_WRONG_TYPE; } - currentDialogActive = false; + DeactivateDialog(); ERROR_LOG(SCEUTILITY, "UNIMPL sceUtilityGameSharingShutdownStart()"); return 0; } @@ -837,8 +850,7 @@ static int sceUtilityGameSharingInitStart(u32 paramsPtr) return SCE_ERROR_UTILITY_WRONG_TYPE; } - currentDialogType = UTILITY_DIALOG_GAMESHARING; - currentDialogActive = true; + ActivateDialog(UTILITY_DIALOG_GAMESHARING); ERROR_LOG_REPORT(SCEUTILITY, "UNIMPL sceUtilityGameSharingInitStart(%08x)", paramsPtr); return 0; } diff --git a/Core/HW/MediaEngine.cpp b/Core/HW/MediaEngine.cpp index 6b1d646bd122..0a1e50f52707 100644 --- a/Core/HW/MediaEngine.cpp +++ b/Core/HW/MediaEngine.cpp @@ -132,6 +132,8 @@ MediaEngine::MediaEngine(): m_pdata(0) { m_videoStream = -1; m_audioStream = -1; + m_expectedVideoStreams = 0; + m_desWidth = 0; m_desHeight = 0; m_decodingsize = 0; @@ -169,7 +171,7 @@ void MediaEngine::closeMedia() { } void MediaEngine::DoState(PointerWrap &p) { - auto s = p.Section("MediaEngine", 1, 5); + auto s = p.Section("MediaEngine", 1, 6); if (!s) return; @@ -187,6 +189,11 @@ void MediaEngine::DoState(PointerWrap &p) { } else { m_mpegheaderReadPos = m_mpegheaderSize; } + if (s >= 6) { + Do(p, m_expectedVideoStreams); + } else { + m_expectedVideoStreams = 0; + } Do(p, m_ringbuffersize); @@ -258,20 +265,22 @@ bool MediaEngine::SetupStreams() { } // Looking good. Let's add those streams. - const AVCodec *h264_codec = avcodec_find_decoder(AV_CODEC_ID_H264); + int videoStreamNum = -1; for (int i = 0; i < numStreams; i++) { const u8 *const currentStreamAddr = m_mpegheader + 0x82 + i * 16; int streamId = currentStreamAddr[0]; // We only set video streams. We demux the audio stream separately. if ((streamId & PSMF_VIDEO_STREAM_ID) == PSMF_VIDEO_STREAM_ID) { - AVStream *stream = avformat_new_stream(m_pFormatCtx, h264_codec); - stream->id = 0x00000100 | streamId; - stream->request_probe = 0; - stream->need_parsing = AVSTREAM_PARSE_FULL; - // We could set the width here, but we don't need to. + ++videoStreamNum; + addVideoStream(videoStreamNum, streamId); } } + // Add the streams to meet the expectation. + for (int i = videoStreamNum + 1; i < m_expectedVideoStreams; i++) { + addVideoStream(i); + } + #endif return true; @@ -386,6 +395,38 @@ bool MediaEngine::reloadStream() return loadStream(m_mpegheader, 2048, m_ringbuffersize); } +bool MediaEngine::addVideoStream(int streamNum, int streamId) { +#ifdef USE_FFMPEG + if (m_pFormatCtx) { + // no need to add an existing stream. + if ((u32)streamNum < m_pFormatCtx->nb_streams) + return true; + const AVCodec *h264_codec = avcodec_find_decoder(AV_CODEC_ID_H264); + if (!h264_codec) + return false; + AVStream *stream = avformat_new_stream(m_pFormatCtx, h264_codec); + if (stream) { + // Reference ISO/IEC 13818-1. + if (streamId == -1) + streamId = PSMF_VIDEO_STREAM_ID | streamNum; + + stream->id = 0x00000100 | streamId; + stream->request_probe = 0; + stream->need_parsing = AVSTREAM_PARSE_FULL; + // We could set the width here, but we don't need to. + if (streamNum >= m_expectedVideoStreams) { + ++m_expectedVideoStreams; + } + return true; + } + } +#endif + if (streamNum >= m_expectedVideoStreams) { + ++m_expectedVideoStreams; + } + return false; +} + int MediaEngine::addStreamData(const u8 *buffer, int addSize) { int size = addSize; if (size > 0 && m_pdata) { diff --git a/Core/HW/MediaEngine.h b/Core/HW/MediaEngine.h index ff3a03242440..7e9bc2c585f9 100644 --- a/Core/HW/MediaEngine.h +++ b/Core/HW/MediaEngine.h @@ -59,6 +59,7 @@ class MediaEngine void closeMedia(); bool loadStream(const u8 *buffer, int readSize, int RingbufferSize); bool reloadStream(); + bool addVideoStream(int streamNum, int streamId = -1); // open the mpeg context bool openContext(bool keepReadPos = false); void closeContext(); @@ -114,6 +115,7 @@ class MediaEngine int m_sws_fmt; u8 *m_buffer; int m_videoStream; + int m_expectedVideoStreams; // Used by the demuxer. int m_audioStream; diff --git a/Core/HW/MemoryStick.cpp b/Core/HW/MemoryStick.cpp index 444334a3e3d8..f2520085bda8 100644 --- a/Core/HW/MemoryStick.cpp +++ b/Core/HW/MemoryStick.cpp @@ -88,6 +88,10 @@ u64 MemoryStick_FreeSpace() { u64 simulatedFreeSpace = 0; if (usedSpace < memStickSize) { simulatedFreeSpace = memStickSize - usedSpace; + } else if (flags.ReportSmallMemstick) { + // There's more stuff in the memstick than the size we report. + // This doesn't work, so we'll just have to lie. Not sure what the best way is. + simulatedFreeSpace = smallMemstickSize / 2; // just pick a value. } if (flags.MemstickFixedFree) { // Assassin's Creed: Bloodlines fails to save if free space changes incorrectly during game. diff --git a/Core/HW/MpegDemux.cpp b/Core/HW/MpegDemux.cpp index da121f72e0be..4dce9cff057d 100644 --- a/Core/HW/MpegDemux.cpp +++ b/Core/HW/MpegDemux.cpp @@ -182,6 +182,7 @@ bool MpegDemux::skipPackHeader() { if (read8() != 0xFF) { return false; } + --stuffing; } return true; } diff --git a/Core/HW/SimpleAudioDec.cpp b/Core/HW/SimpleAudioDec.cpp index 10159d7daa6d..2e9ac873d42d 100644 --- a/Core/HW/SimpleAudioDec.cpp +++ b/Core/HW/SimpleAudioDec.cpp @@ -327,9 +327,8 @@ size_t AuCtx::FindNextMp3Sync() { // return output pcm size, <0 error u32 AuCtx::AuDecode(u32 pcmAddr) { - if (!Memory::IsValidAddress(pcmAddr)){ - ERROR_LOG(ME, "%s: output bufferAddress %08x is invalctx", __FUNCTION__, pcmAddr); - return -1; + if (!Memory::GetPointer(PCMBuf)) { + return hleLogError(ME, -1, "ctx output bufferAddress %08x is invalid", PCMBuf); } auto outbuf = Memory::GetPointer(PCMBuf); @@ -376,7 +375,8 @@ u32 AuCtx::AuDecode(u32 pcmAddr) { memset(outbuf + outpcmbufsize, 0, PCMBufSize - outpcmbufsize); } - Memory::Write_U32(PCMBuf, pcmAddr); + if (pcmAddr) + Memory::Write_U32(PCMBuf, pcmAddr); return outpcmbufsize; } diff --git a/Core/Instance.cpp b/Core/Instance.cpp index 8084c2ff257a..43536418e368 100644 --- a/Core/Instance.cpp +++ b/Core/Instance.cpp @@ -17,7 +17,7 @@ #include "Instance.h" -#if __linux__ || __APPLE__ +#if !PPSSPP_PLATFORM(WINDOWS) && !PPSSPP_PLATFORM(ANDROID) && !defined(__LIBRETRO__) #include #include #include diff --git a/Core/KeyMap.cpp b/Core/KeyMap.cpp index 8d940877086a..13f298eaec41 100644 --- a/Core/KeyMap.cpp +++ b/Core/KeyMap.cpp @@ -681,9 +681,9 @@ const KeyMap_IntStrPair psp_button_names[] = { {VIRTKEY_PAUSE, "Pause"}, #ifndef MOBILE_DEVICE {VIRTKEY_FRAME_ADVANCE, "Frame Advance"}, - {VIRTKEY_REWIND, "Rewind"}, {VIRTKEY_RECORD, "Audio/Video Recording" }, #endif + {VIRTKEY_REWIND, "Rewind"}, {VIRTKEY_SAVE_STATE, "Save State"}, {VIRTKEY_LOAD_STATE, "Load State"}, {VIRTKEY_NEXT_SLOT, "Next Slot"}, diff --git a/Core/Loaders.cpp b/Core/Loaders.cpp index 77c2fafae0db..c79faa2149c3 100644 --- a/Core/Loaders.cpp +++ b/Core/Loaders.cpp @@ -40,8 +40,14 @@ void RegisterFileLoaderFactory(std::string prefix, std::unique_ptr>11) & 0x1F) #define _IMM16 (signed short)(op & 0xFFFF) #define _IMM26 (op & 0x03FFFFFF) +#define TARGET16 ((int)((uint32_t)(int)_IMM16 << 2)) +#define TARGET26 (_IMM26 << 2) #define LOOPOPTIMIZATION 0 @@ -69,7 +71,7 @@ void ArmJit::BranchRSRTComp(MIPSOpcode op, CCFlags cc, bool likely) ERROR_LOG_REPORT(JIT, "Branch in RSRTComp delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; MIPSGPReg rt = _RT; MIPSGPReg rs = _RS; u32 targetAddr = GetCompilerPC() + offset + 4; @@ -182,7 +184,7 @@ void ArmJit::BranchRSZeroComp(MIPSOpcode op, CCFlags cc, bool andLink, bool like ERROR_LOG_REPORT(JIT, "Branch in RSZeroComp delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; MIPSGPReg rs = _RS; u32 targetAddr = GetCompilerPC() + offset + 4; @@ -328,7 +330,7 @@ void ArmJit::BranchFPFlag(MIPSOpcode op, CCFlags cc, bool likely) ERROR_LOG_REPORT(JIT, "Branch in FPFlag delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; u32 targetAddr = GetCompilerPC() + offset + 4; MIPSOpcode delaySlotOp = GetOffsetInstruction(1); @@ -386,7 +388,7 @@ void ArmJit::BranchVFPUFlag(MIPSOpcode op, CCFlags cc, bool likely) ERROR_LOG_REPORT(JIT, "Branch in VFPU delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; u32 targetAddr = GetCompilerPC() + offset + 4; MIPSOpcode delaySlotOp = GetOffsetInstruction(1); @@ -456,7 +458,7 @@ void ArmJit::Comp_Jump(MIPSOpcode op) { ERROR_LOG_REPORT(JIT, "Branch in Jump delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - u32 off = _IMM26 << 2; + u32 off = TARGET26; u32 targetAddr = (GetCompilerPC() & 0xF0000000) | off; // Might be a stubbed address or something? diff --git a/Core/MIPS/ARM/ArmCompFPU.cpp b/Core/MIPS/ARM/ArmCompFPU.cpp index cc49148d613c..f2cc37e3b1cc 100644 --- a/Core/MIPS/ARM/ArmCompFPU.cpp +++ b/Core/MIPS/ARM/ArmCompFPU.cpp @@ -43,7 +43,7 @@ // All functions should have CONDITIONAL_DISABLE, so we can narrow things down to a file quickly. // Currently known non working ones should have DISABLE. -// #define CONDITIONAL_DISABLE { Comp_Generic(op); return; } +// #define CONDITIONAL_DISABLE(flag) { Comp_Generic(op); return; } #define CONDITIONAL_DISABLE(flag) if (jo.Disabled(JitDisable::flag)) { Comp_Generic(op); return; } #define DISABLE { Comp_Generic(op); return; } diff --git a/Core/MIPS/ARM/ArmCompLoadStore.cpp b/Core/MIPS/ARM/ArmCompLoadStore.cpp index 96c8f7133b28..667c0ece445f 100644 --- a/Core/MIPS/ARM/ArmCompLoadStore.cpp +++ b/Core/MIPS/ARM/ArmCompLoadStore.cpp @@ -41,7 +41,7 @@ // All functions should have CONDITIONAL_DISABLE, so we can narrow things down to a file quickly. // Currently known non working ones should have DISABLE. -// #define CONDITIONAL_DISABLE { Comp_Generic(op); return; } +// #define CONDITIONAL_DISABLE(flag) { Comp_Generic(op); return; } #define CONDITIONAL_DISABLE(flag) if (jo.Disabled(JitDisable::flag)) { Comp_Generic(op); return; } #define DISABLE { Comp_Generic(op); return; } diff --git a/Core/MIPS/ARM64/Arm64CompBranch.cpp b/Core/MIPS/ARM64/Arm64CompBranch.cpp index ce7bc2d34150..e3914ee1a63e 100644 --- a/Core/MIPS/ARM64/Arm64CompBranch.cpp +++ b/Core/MIPS/ARM64/Arm64CompBranch.cpp @@ -49,6 +49,8 @@ #define _SIZE ((op>>11) & 0x1F) #define _IMM16 (signed short)(op & 0xFFFF) #define _IMM26 (op & 0x03FFFFFF) +#define TARGET16 ((int)((uint32_t)(int)_IMM16 << 2)) +#define TARGET26 (_IMM26 << 2) #define LOOPOPTIMIZATION 0 @@ -69,7 +71,7 @@ void Arm64Jit::BranchRSRTComp(MIPSOpcode op, CCFlags cc, bool likely) ERROR_LOG_REPORT(JIT, "Branch in RSRTComp delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; MIPSGPReg rt = _RT; MIPSGPReg rs = _RS; u32 targetAddr = GetCompilerPC() + offset + 4; @@ -200,7 +202,7 @@ void Arm64Jit::BranchRSZeroComp(MIPSOpcode op, CCFlags cc, bool andLink, bool li ERROR_LOG_REPORT(JIT, "Branch in RSZeroComp delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; MIPSGPReg rs = _RS; u32 targetAddr = GetCompilerPC() + offset + 4; @@ -345,7 +347,7 @@ void Arm64Jit::BranchFPFlag(MIPSOpcode op, CCFlags cc, bool likely) { ERROR_LOG_REPORT(JIT, "Branch in FPFlag delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; u32 targetAddr = GetCompilerPC() + offset + 4; MIPSOpcode delaySlotOp = GetOffsetInstruction(1); @@ -402,7 +404,7 @@ void Arm64Jit::BranchVFPUFlag(MIPSOpcode op, CCFlags cc, bool likely) { ERROR_LOG_REPORT(JIT, "Branch in VFPU delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; u32 targetAddr = GetCompilerPC() + offset + 4; MIPSOpcode delaySlotOp = GetOffsetInstruction(1); @@ -471,7 +473,7 @@ void Arm64Jit::Comp_Jump(MIPSOpcode op) { ERROR_LOG_REPORT(JIT, "Branch in Jump delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - u32 off = _IMM26 << 2; + u32 off = TARGET26; u32 targetAddr = (GetCompilerPC() & 0xF0000000) | off; // Might be a stubbed address or something? diff --git a/Core/MIPS/IR/IRCompALU.cpp b/Core/MIPS/IR/IRCompALU.cpp index 2622ea1b9db7..72f9a1ff42b5 100644 --- a/Core/MIPS/IR/IRCompALU.cpp +++ b/Core/MIPS/IR/IRCompALU.cpp @@ -37,7 +37,7 @@ // All functions should have CONDITIONAL_DISABLE, so we can narrow things down to a file quickly. // Currently known non working ones should have DISABLE. -// #define CONDITIONAL_DISABLE { Comp_Generic(op); return; } +// #define CONDITIONAL_DISABLE(flag) { Comp_Generic(op); return; } #define CONDITIONAL_DISABLE(flag) if (opts.disableFlags & (uint32_t)JitDisable::flag) { Comp_Generic(op); return; } #define DISABLE { Comp_Generic(op); return; } #define INVALIDOP { Comp_Generic(op); return; } diff --git a/Core/MIPS/IR/IRCompBranch.cpp b/Core/MIPS/IR/IRCompBranch.cpp index 2592d6227c6d..16a158b9fe61 100644 --- a/Core/MIPS/IR/IRCompBranch.cpp +++ b/Core/MIPS/IR/IRCompBranch.cpp @@ -42,6 +42,8 @@ #define _SIZE ((op>>11) & 0x1F) #define _IMM16 (signed short)(op & 0xFFFF) #define _IMM26 (op & 0x03FFFFFF) +#define TARGET16 ((int)((uint32_t)(int)_IMM16 << 2)) +#define TARGET26 (_IMM26 << 2) #define LOOPOPTIMIZATION 0 @@ -57,7 +59,7 @@ void IRFrontend::BranchRSRTComp(MIPSOpcode op, IRComparison cc, bool likely) { ERROR_LOG_REPORT(JIT, "Branch in RSRTComp delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; MIPSGPReg rt = _RT; MIPSGPReg rs = _RS; u32 targetAddr = GetCompilerPC() + offset + 4; @@ -114,7 +116,7 @@ void IRFrontend::BranchRSZeroComp(MIPSOpcode op, IRComparison cc, bool andLink, ERROR_LOG_REPORT(JIT, "Branch in RSZeroComp delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; MIPSGPReg rs = _RS; u32 targetAddr = GetCompilerPC() + offset + 4; @@ -192,7 +194,7 @@ void IRFrontend::BranchFPFlag(MIPSOpcode op, IRComparison cc, bool likely) { ERROR_LOG_REPORT(JIT, "Branch in FPFlag delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; u32 targetAddr = GetCompilerPC() + offset + 4; ir.Write(IROp::FpCondToReg, IRTEMP_LHS); @@ -235,7 +237,7 @@ void IRFrontend::BranchVFPUFlag(MIPSOpcode op, IRComparison cc, bool likely) { ERROR_LOG_REPORT(JIT, "Branch in VFPU delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; u32 targetAddr = GetCompilerPC() + offset + 4; MIPSOpcode delaySlotOp = GetOffsetInstruction(1); @@ -290,7 +292,7 @@ void IRFrontend::Comp_Jump(MIPSOpcode op) { return; } - u32 off = _IMM26 << 2; + u32 off = TARGET26; u32 targetAddr = (GetCompilerPC() & 0xF0000000) | off; // Might be a stubbed address or something? diff --git a/Core/MIPS/IR/IRCompFPU.cpp b/Core/MIPS/IR/IRCompFPU.cpp index 0392fb279591..c0aac3f3f1f9 100644 --- a/Core/MIPS/IR/IRCompFPU.cpp +++ b/Core/MIPS/IR/IRCompFPU.cpp @@ -48,7 +48,7 @@ // All functions should have CONDITIONAL_DISABLE, so we can narrow things down to a file quickly. // Currently known non working ones should have DISABLE. -// #define CONDITIONAL_DISABLE { Comp_Generic(op); return; } +// #define CONDITIONAL_DISABLE(flag) { Comp_Generic(op); return; } #define CONDITIONAL_DISABLE(flag) if (opts.disableFlags & (uint32_t)JitDisable::flag) { Comp_Generic(op); return; } #define DISABLE { Comp_Generic(op); return; } #define INVALIDOP { Comp_Generic(op); return; } diff --git a/Core/MIPS/IR/IRCompLoadStore.cpp b/Core/MIPS/IR/IRCompLoadStore.cpp index ec2fc33aaf5b..cb1892d3d23c 100644 --- a/Core/MIPS/IR/IRCompLoadStore.cpp +++ b/Core/MIPS/IR/IRCompLoadStore.cpp @@ -38,7 +38,7 @@ // All functions should have CONDITIONAL_DISABLE, so we can narrow things down to a file quickly. // Currently known non working ones should have DISABLE. -// #define CONDITIONAL_DISABLE { Comp_Generic(op); return; } +// #define CONDITIONAL_DISABLE(flag) { Comp_Generic(op); return; } #define CONDITIONAL_DISABLE(flag) if (opts.disableFlags & (uint32_t)JitDisable::flag) { Comp_Generic(op); return; } #define DISABLE { Comp_Generic(op); return; } #define INVALIDOP { Comp_Generic(op); return; } diff --git a/Core/MIPS/IR/IRCompVFPU.cpp b/Core/MIPS/IR/IRCompVFPU.cpp index 054594f4c59a..5226e57fd136 100644 --- a/Core/MIPS/IR/IRCompVFPU.cpp +++ b/Core/MIPS/IR/IRCompVFPU.cpp @@ -36,7 +36,7 @@ // All functions should have CONDITIONAL_DISABLE, so we can narrow things down to a file quickly. // Currently known non working ones should have DISABLE. -// #define CONDITIONAL_DISABLE { Comp_Generic(op); return; } +// #define CONDITIONAL_DISABLE(flag) { Comp_Generic(op); return; } #define CONDITIONAL_DISABLE(flag) if (opts.disableFlags & (uint32_t)JitDisable::flag) { Comp_Generic(op); return; } #define DISABLE { Comp_Generic(op); return; } #define INVALIDOP { Comp_Generic(op); return; } @@ -993,7 +993,7 @@ namespace MIPSComp { ir.Write(IROp::AndConst, IRTEMP_0, rt, ir.AddConstant(mask)); ir.Write(IROp::SetCtrlVFPUReg, imm - 128, IRTEMP_0); } else { - ir.Write(IROp::SetCtrlVFPU, imm - 128, rt); + ir.Write(IROp::SetCtrlVFPUReg, imm - 128, rt); } } diff --git a/Core/MIPS/IR/IRInst.cpp b/Core/MIPS/IR/IRInst.cpp index 300487e0ba64..b8339896e727 100644 --- a/Core/MIPS/IR/IRInst.cpp +++ b/Core/MIPS/IR/IRInst.cpp @@ -114,11 +114,11 @@ static const IRMeta irMeta[] = { { IROp::FpCondToReg, "FpCondToReg", "G" }, { IROp::VfpuCtrlToReg, "VfpuCtrlToReg", "GI" }, { IROp::SetCtrlVFPU, "SetCtrlVFPU", "TC" }, - { IROp::SetCtrlVFPUReg, "SetCtrlVFPUReg", "TC" }, + { IROp::SetCtrlVFPUReg, "SetCtrlVFPUReg", "TG" }, { IROp::SetCtrlVFPUFReg, "SetCtrlVFPUFReg", "TF" }, { IROp::FCmovVfpuCC, "FCmovVfpuCC", "FFI" }, { IROp::FCmpVfpuBit, "FCmpVfpuBit", "IFF" }, - { IROp::FCmpVfpuAggregate, "FCmpVfpuAggregate", "" }, + { IROp::FCmpVfpuAggregate, "FCmpVfpuAggregate", "I" }, { IROp::Vec4Init, "Vec4Init", "Vv" }, { IROp::Vec4Shuffle, "Vec4Shuffle", "VVs" }, { IROp::Vec4Mov, "Vec4Mov", "VV" }, diff --git a/Core/MIPS/IR/IRPassSimplify.cpp b/Core/MIPS/IR/IRPassSimplify.cpp index d7f8195c98fe..ee65084a6088 100644 --- a/Core/MIPS/IR/IRPassSimplify.cpp +++ b/Core/MIPS/IR/IRPassSimplify.cpp @@ -8,6 +8,10 @@ #include "Core/MIPS/IR/IRPassSimplify.h" #include "Core/MIPS/IR/IRRegCache.h" +// #define CONDITIONAL_DISABLE { for (IRInst inst : in.GetInstructions()) { out.Write(inst); } return false; } +#define CONDITIONAL_DISABLE +#define DISABLE { for (IRInst inst : in.GetInstructions()) { out.Write(inst); } return false; } + u32 Evaluate(u32 a, u32 b, IROp op) { switch (op) { case IROp::Add: case IROp::AddConst: return a + b; @@ -101,8 +105,11 @@ bool IRApplyPasses(const IRPassFunc *passes, size_t c, const IRWriter &in, IRWri } bool OptimizeFPMoves(const IRWriter &in, IRWriter &out, const IROptions &opts) { + CONDITIONAL_DISABLE; + bool logBlocks = false; IRInst prev{ IROp::Nop }; + for (int i = 0; i < (int)in.GetInstructions().size(); i++) { IRInst inst = in.GetInstructions()[i]; switch (inst.op) { @@ -151,6 +158,8 @@ bool OptimizeFPMoves(const IRWriter &in, IRWriter &out, const IROptions &opts) { // Might be useful later on x86. bool ThreeOpToTwoOp(const IRWriter &in, IRWriter &out, const IROptions &opts) { + CONDITIONAL_DISABLE; + bool logBlocks = false; for (int i = 0; i < (int)in.GetInstructions().size(); i++) { IRInst inst = in.GetInstructions()[i]; @@ -201,6 +210,8 @@ bool ThreeOpToTwoOp(const IRWriter &in, IRWriter &out, const IROptions &opts) { } bool RemoveLoadStoreLeftRight(const IRWriter &in, IRWriter &out, const IROptions &opts) { + CONDITIONAL_DISABLE; + bool logBlocks = false; for (int i = 0, n = (int)in.GetInstructions().size(); i < n; ++i) { const IRInst &inst = in.GetInstructions()[i]; @@ -366,6 +377,7 @@ bool RemoveLoadStoreLeftRight(const IRWriter &in, IRWriter &out, const IROptions } bool PropagateConstants(const IRWriter &in, IRWriter &out, const IROptions &opts) { + CONDITIONAL_DISABLE; IRRegCache gpr(&out); bool logBlocks = false; @@ -784,6 +796,7 @@ bool IRMutatesDestGPR(const IRInst &inst, int reg) { } bool PurgeTemps(const IRWriter &in, IRWriter &out, const IROptions &opts) { + CONDITIONAL_DISABLE; std::vector insts; insts.reserve(in.GetInstructions().size()); @@ -822,6 +835,8 @@ bool PurgeTemps(const IRWriter &in, IRWriter &out, const IROptions &opts) { insts[check.index] = IRReplaceDestGPR(insts[check.index], check.reg, inst.dest); lastWrittenTo[inst.dest] = check.index; check.reg = inst.dest; + // Update the read by exit flag to match the new reg. + check.readByExit = inst.dest < IRTEMP_0 || inst.dest > IRTEMP_LR_SHIFT; // And swap the args for this mov, since we changed the other dest. We'll optimize this out later. std::swap(inst.dest, inst.src1); } else { @@ -903,6 +918,7 @@ bool PurgeTemps(const IRWriter &in, IRWriter &out, const IROptions &opts) { } bool ReduceLoads(const IRWriter &in, IRWriter &out, const IROptions &opts) { + CONDITIONAL_DISABLE; // This tells us to skip an AND op that has been optimized out. // Maybe we could skip multiple, but that'd slow things down and is pretty uncommon. int nextSkip = -1; @@ -1039,6 +1055,8 @@ static std::vector ReorderLoadStoreOps(std::vector &ops) { } bool ReorderLoadStore(const IRWriter &in, IRWriter &out, const IROptions &opts) { + CONDITIONAL_DISABLE; + bool logBlocks = false; enum class RegState : u8 { @@ -1234,6 +1252,8 @@ bool ReorderLoadStore(const IRWriter &in, IRWriter &out, const IROptions &opts) } bool MergeLoadStore(const IRWriter &in, IRWriter &out, const IROptions &opts) { + CONDITIONAL_DISABLE; + bool logBlocks = false; auto opsCompatible = [&](const IRInst &a, const IRInst &b, int dist) { diff --git a/Core/MIPS/MIPSCodeUtils.cpp b/Core/MIPS/MIPSCodeUtils.cpp index ce91b2199ce3..5f1253ee0ada 100644 --- a/Core/MIPS/MIPSCodeUtils.cpp +++ b/Core/MIPS/MIPSCodeUtils.cpp @@ -28,72 +28,59 @@ namespace MIPSCodeUtils #define OP_SYSCALL_MASK 0xFC00003F #define _RS ((op>>21) & 0x1F) #define _RT ((op>>16) & 0x1F) +#define _IMM16 (signed short)(op & 0xFFFF) +#define _IMM26 (op & 0x03FFFFFF) +#define TARGET16 ((int)((uint32_t)(int)_IMM16 << 2)) +#define TARGET26 (_IMM26 << 2) - u32 GetJumpTarget(u32 addr) - { + u32 GetJumpTarget(u32 addr) { MIPSOpcode op = Memory::Read_Instruction(addr, true); - if (op != 0) - { + if (op != 0) { MIPSInfo info = MIPSGetInfo(op); if ((info & IS_JUMP) && (info & IN_IMM26)) - { - u32 target = (addr & 0xF0000000) | ((op&0x03FFFFFF) << 2); - return target; - } + return (addr & 0xF0000000) | TARGET26; else return INVALIDTARGET; - } - else + } else { return INVALIDTARGET; + } } - u32 GetBranchTarget(u32 addr) - { + u32 GetBranchTarget(u32 addr) { MIPSOpcode op = Memory::Read_Instruction(addr, true); - if (op != 0) - { + if (op != 0) { MIPSInfo info = MIPSGetInfo(op); if (info & IS_CONDBRANCH) - { - return addr + 4 + ((signed short)(op&0xFFFF)<<2); - } + return addr + 4 + TARGET16; else return INVALIDTARGET; - } - else + } else { return INVALIDTARGET; + } } - u32 GetBranchTargetNoRA(u32 addr) - { + u32 GetBranchTargetNoRA(u32 addr) { MIPSOpcode op = Memory::Read_Instruction(addr, true); return GetBranchTargetNoRA(addr, op); } - u32 GetBranchTargetNoRA(u32 addr, MIPSOpcode op) - { - if (op != 0) - { + u32 GetBranchTargetNoRA(u32 addr, MIPSOpcode op) { + if (op != 0) { MIPSInfo info = MIPSGetInfo(op); if ((info & IS_CONDBRANCH) && !(info & OUT_RA)) - { - return addr + 4 + ((signed short)(op&0xFFFF)<<2); - } + return addr + 4 + TARGET16; else return INVALIDTARGET; - } - else + } else { return INVALIDTARGET; + } } - u32 GetSureBranchTarget(u32 addr) - { + u32 GetSureBranchTarget(u32 addr) { MIPSOpcode op = Memory::Read_Instruction(addr, true); - if (op != 0) - { + if (op != 0) { MIPSInfo info = MIPSGetInfo(op); - if ((info & IS_CONDBRANCH) && !(info & (IN_FPUFLAG | IS_VFPU))) - { + if ((info & IS_CONDBRANCH) && !(info & (IN_FPUFLAG | IS_VFPU))) { bool sure; bool takeBranch; switch (info & CONDTYPE_MASK) @@ -125,17 +112,17 @@ namespace MIPSCodeUtils } if (sure && takeBranch) - return addr + 4 + ((signed short)(op&0xFFFF)<<2); + return addr + 4 + TARGET16; else if (sure && !takeBranch) return addr + 8; else return INVALIDTARGET; - } - else + } else { return INVALIDTARGET; - } - else + } + } else { return INVALIDTARGET; + } } bool IsVFPUBranch(MIPSOpcode op) { diff --git a/Core/MIPS/MIPSVFPUUtils.cpp b/Core/MIPS/MIPSVFPUUtils.cpp index 923faf804dc9..917fa16a042f 100644 --- a/Core/MIPS/MIPSVFPUUtils.cpp +++ b/Core/MIPS/MIPSVFPUUtils.cpp @@ -895,3 +895,86 @@ float vfpu_rsqrt(float a) { return val.f; } + +float vfpu_sin_single(float angle) { + angle -= floorf(angle * 0.25f) * 4.f; + if (angle == 0.0f || angle == 2.0f) { + return 0.0f; + } else if (angle == 1.0f) { + return 1.0f; + } else if (angle == 3.0f) { + return -1.0f; + } + angle *= (float)M_PI_2; + return sinf(angle); +} + +float vfpu_cos_single(float angle) { + angle -= floorf(angle * 0.25f) * 4.f; + if (angle == 1.0f || angle == 3.0f) { + return 0.0f; + } else if (angle == 0.0f) { + return 1.0f; + } else if (angle == 2.0f) { + return -1.0f; + } + angle *= (float)M_PI_2; + return cosf(angle); +} + +void vfpu_sincos_single(float angle, float &sine, float &cosine) { + angle -= floorf(angle * 0.25f) * 4.f; + if (angle == 0.0f) { + sine = 0.0f; + cosine = 1.0f; + } else if (angle == 1.0f) { + sine = 1.0f; + cosine = 0.0f; + } else if (angle == 2.0f) { + sine = 0.0f; + cosine = -1.0f; + } else if (angle == 3.0f) { + sine = -1.0f; + cosine = 0.0f; + } else { + angle *= (float)M_PI_2; +#if defined(__linux__) + sincosf(angle, &sine, &cosine); +#else + sine = sinf(angle); + cosine = cosf(angle); +#endif + } +} + +float vfpu_sin_double(float angle) { + return (float)sin((double)angle * M_PI_2); +} + +float vfpu_cos_double(float angle) { + return (float)cos((double)angle * M_PI_2); +} + +void vfpu_sincos_double(float angle_f, float &sine, float &cosine) { + double angle = (double)angle_f * M_PI_2; +#if defined(__linux__) + double d_sine; + double d_cosine; + sincos(angle, &d_sine, &d_cosine); + sine = (float)d_sine; + cosine = (float)d_cosine; +#else + sine = (float)sin(angle); + cosine = (float)cos(angle); +#endif +} + +float (*vfpu_sin)(float); +float (*vfpu_cos)(float); +void (*vfpu_sincos)(float, float&, float&); + +void InitVFPUSinCos(bool useDoublePrecision) { + vfpu_sin = useDoublePrecision ? vfpu_sin_double : vfpu_sin_single; + vfpu_cos = useDoublePrecision ? vfpu_cos_double : vfpu_cos_single; + vfpu_sincos = useDoublePrecision ? vfpu_sincos_double : vfpu_sincos_single; +} diff --git a/Core/MIPS/MIPSVFPUUtils.h b/Core/MIPS/MIPSVFPUUtils.h index e43c588a4178..b89335a25717 100644 --- a/Core/MIPS/MIPSVFPUUtils.h +++ b/Core/MIPS/MIPSVFPUUtils.h @@ -35,44 +35,29 @@ inline int Xpose(int v) { #endif // The VFPU uses weird angles where 4.0 represents a full circle. This makes it possible to return -// exact 1.0/-1.0 values at certain angles. We get close enough for #2921 and #12900 by computing -// things in double precision, multiplying the input by pi/2. +// exact 1.0/-1.0 values at certain angles. We currently just scale, and special case the cardinal directions. +// +// Stepping down to [0, 2pi) helps, but we also check common exact-result values. +// TODO: cos(1) and sin(2) should be -0.0, but doing that gives wrong results (possibly from floorf.) +// +// We also try an alternative solution, computing things in double precision, multiplying the input by pi/2. +// This fixes #12900 (Hitman Reborn 2) but breaks #13705 (Cho Aniki Zero) and #13671 (Hajime no Ippo). +// #2921 is still fine. So the alt solution (vfpu_sin_double etc) are behind a compat flag. // // A better solution would be to tailor some sine approximation for the 0..90 degrees range, compute // modulo manually and mirror that around the circle. Also correctly special casing for inf/nan inputs // and just trying to match it as closely as possible to the real PSP. // -// Stepping down to [0, 2pi) helps, but we also check common exact-result values. -// TODO: cos(1) and sin(2) should be -0.0, but doing that gives wrong results (possibly from floorf.) - // Messing around with the modulo functions? try https://www.desmos.com/calculator. -inline float vfpu_sin(float angle) { - return (float)sin((double)angle * M_PI_2); -} - -inline float vfpu_cos(float angle) { - return (float)cos((double)angle * M_PI_2); -} +extern float (*vfpu_sin)(float); +extern float (*vfpu_cos)(float); +extern void (*vfpu_sincos)(float, float&, float&); inline float vfpu_asin(float angle) { return asinf(angle) / M_PI_2; } -inline void vfpu_sincos(float angle_f, float &sine, float &cosine) { - double angle = (double)angle_f * M_PI_2; -#if defined(__linux__) - double d_sine; - double d_cosine; - sincos(angle, &d_sine, &d_cosine); - sine = (float)d_sine; - cosine = (float)d_cosine; -#else - sine = (float)sin(angle); - cosine = (float)cos(angle); -#endif -} - inline float vfpu_clamp(float v, float min, float max) { // Note: NAN is preserved, and -0.0 becomes +0.0 if min=+0.0. return v >= max ? max : (v <= min ? min : v); @@ -230,3 +215,4 @@ int GetVectorOverlap(int reg1, VectorSize size1, int reg2, VectorSize size2); bool GetVFPUCtrlMask(int reg, u32 *mask); float Float16ToFloat32(unsigned short l); +void InitVFPUSinCos(bool useDoublePrecision); diff --git a/Core/MIPS/x86/CompBranch.cpp b/Core/MIPS/x86/CompBranch.cpp index 8c8ce8fd3de3..4910e2965536 100644 --- a/Core/MIPS/x86/CompBranch.cpp +++ b/Core/MIPS/x86/CompBranch.cpp @@ -48,6 +48,8 @@ #define _SIZE ((op>>11) & 0x1F) #define _IMM16 (signed short)(op & 0xFFFF) #define _IMM26 (op & 0x03FFFFFF) +#define TARGET16 ((int)((uint32_t)(int)_IMM16 << 2)) +#define TARGET26 (_IMM26 << 2) #define LOOPOPTIMIZATION 0 @@ -319,7 +321,7 @@ void Jit::BranchRSRTComp(MIPSOpcode op, Gen::CCFlags cc, bool likely) ERROR_LOG_REPORT(JIT, "Branch in RSRTComp delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; MIPSGPReg rt = _RT; MIPSGPReg rs = _RS; u32 targetAddr = GetCompilerPC() + offset + 4; @@ -395,7 +397,7 @@ void Jit::BranchRSZeroComp(MIPSOpcode op, Gen::CCFlags cc, bool andLink, bool li ERROR_LOG_REPORT(JIT, "Branch in RSZeroComp delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; MIPSGPReg rs = _RS; u32 targetAddr = GetCompilerPC() + offset + 4; @@ -511,7 +513,7 @@ void Jit::BranchFPFlag(MIPSOpcode op, Gen::CCFlags cc, bool likely) ERROR_LOG_REPORT(JIT, "Branch in FPFlag delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; u32 targetAddr = GetCompilerPC() + offset + 4; MIPSOpcode delaySlotOp = GetOffsetInstruction(1); @@ -551,7 +553,7 @@ void Jit::BranchVFPUFlag(MIPSOpcode op, Gen::CCFlags cc, bool likely) WARN_LOG(JIT, "Branch in VFPU delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - int offset = _IMM16 << 2; + int offset = TARGET16; u32 targetAddr = GetCompilerPC() + offset + 4; MIPSOpcode delaySlotOp = GetOffsetInstruction(1); @@ -602,7 +604,7 @@ void Jit::Comp_Jump(MIPSOpcode op) { ERROR_LOG_REPORT(JIT, "Branch in Jump delay slot at %08x in block starting at %08x", GetCompilerPC(), js.blockStart); return; } - u32 off = _IMM26 << 2; + u32 off = TARGET26; u32 targetAddr = (GetCompilerPC() & 0xF0000000) | off; // Might be a stubbed address or something? diff --git a/Core/MIPS/x86/CompFPU.cpp b/Core/MIPS/x86/CompFPU.cpp index cb1d7be5ed74..135af332a152 100644 --- a/Core/MIPS/x86/CompFPU.cpp +++ b/Core/MIPS/x86/CompFPU.cpp @@ -41,7 +41,7 @@ // All functions should have CONDITIONAL_DISABLE, so we can narrow things down to a file quickly. // Currently known non working ones should have DISABLE. -// #define CONDITIONAL_DISABLE { Comp_Generic(op); return; } +// #define CONDITIONAL_DISABLE(flag) { Comp_Generic(op); return; } #define CONDITIONAL_DISABLE(flag) if (jo.Disabled(JitDisable::flag)) { Comp_Generic(op); return; } #define DISABLE { Comp_Generic(op); return; } diff --git a/Core/MIPS/x86/CompLoadStore.cpp b/Core/MIPS/x86/CompLoadStore.cpp index f094684417d7..403f613f33da 100644 --- a/Core/MIPS/x86/CompLoadStore.cpp +++ b/Core/MIPS/x86/CompLoadStore.cpp @@ -41,7 +41,7 @@ // All functions should have CONDITIONAL_DISABLE, so we can narrow things down to a file quickly. // Currently known non working ones should have DISABLE. -// #define CONDITIONAL_DISABLE { Comp_Generic(op); return; } +// #define CONDITIONAL_DISABLE(flag) { Comp_Generic(op); return; } #define CONDITIONAL_DISABLE(flag) if (jo.Disabled(JitDisable::flag)) { Comp_Generic(op); return; } #define DISABLE { Comp_Generic(op); return; } diff --git a/Core/MemFault.cpp b/Core/MemFault.cpp index a550375161b8..38944bf98ba4 100644 --- a/Core/MemFault.cpp +++ b/Core/MemFault.cpp @@ -17,6 +17,9 @@ #include "ppsspp_config.h" +#include +#include + #include "Common/MachineContext.h" #if PPSSPP_ARCH(AMD64) || PPSSPP_ARCH(X86) @@ -37,9 +40,21 @@ namespace Memory { static int64_t g_numReportedBadAccesses = 0; +const uint8_t *g_lastCrashAddress; +std::unordered_set g_ignoredAddresses; void MemFault_Init() { g_numReportedBadAccesses = 0; + g_lastCrashAddress = nullptr; + g_ignoredAddresses.clear(); +} + +bool MemFault_MayBeResumable() { + return g_lastCrashAddress != nullptr; +} + +void MemFault_IgnoreLastCrash() { + g_ignoredAddresses.insert(g_lastCrashAddress); } #ifdef MACHINE_CONTEXT_SUPPORTED @@ -71,6 +86,9 @@ bool HandleFault(uintptr_t hostAddress, void *ctx) { SContext *context = (SContext *)ctx; const uint8_t *codePtr = (uint8_t *)(context->CTX_PC); + // We set this later if we think it can be resumed from. + g_lastCrashAddress = nullptr; + // TODO: Check that codePtr is within the current JIT space. bool inJitSpace = MIPSComp::jit && MIPSComp::jit->CodeInRange(codePtr); if (!inJitSpace) { @@ -91,6 +109,7 @@ bool HandleFault(uintptr_t hostAddress, void *ctx) { return false; } + // OK, a guest executable did a bad access. Take care of it. uint32_t guestAddress = hostAddress - baseAddress; @@ -113,11 +132,13 @@ bool HandleFault(uintptr_t hostAddress, void *ctx) { int instructionSize = 4; #if PPSSPP_ARCH(AMD64) || PPSSPP_ARCH(X86) // X86, X86-64. Variable instruction size so need to analyze the mov instruction in detail. + instructionSize = 15; // To ignore the access, we need to disassemble the instruction and modify context->CTX_PC LSInstructionInfo info{}; success = X86AnalyzeMOV(codePtr, info); - instructionSize = info.instructionSize; + if (success) + instructionSize = info.instructionSize; #elif PPSSPP_ARCH(ARM64) uint32_t word; memcpy(&word, codePtr, 4); @@ -133,7 +154,7 @@ bool HandleFault(uintptr_t hostAddress, void *ctx) { #endif std::string disassembly; - if (success && DisassembleNativeAt(codePtr, instructionSize, &disassembly)) { + if (DisassembleNativeAt(codePtr, instructionSize, &disassembly)) { infoString += disassembly + "\n"; } @@ -147,7 +168,7 @@ bool HandleFault(uintptr_t hostAddress, void *ctx) { type = MemoryExceptionType::UNKNOWN; } - if (success && g_Config.bIgnoreBadMemAccess) { + if (success && (g_Config.bIgnoreBadMemAccess || g_ignoredAddresses.find(codePtr) != g_ignoredAddresses.end())) { if (!info.isMemoryWrite) { // It was a read. Fill the destination register with 0. // TODO @@ -163,7 +184,10 @@ bool HandleFault(uintptr_t hostAddress, void *ctx) { uint32_t approximatePC = currentMIPS->pc; Core_MemoryExceptionInfo(guestAddress, approximatePC, type, infoString); - // Redirect execution to a crash handler that will exit the game immediately. + // There's a small chance we can resume from this type of crash. + g_lastCrashAddress = codePtr; + + // Redirect execution to a crash handler that will switch to CoreState::CORE_RUNTIME_ERROR immediately. context->CTX_PC = (uintptr_t)MIPSComp::jit->GetCrashHandler(); ERROR_LOG(MEMMAP, "Bad memory access detected! %08x (%p) Stopping emulation. Info:\n%s", guestAddress, (void *)hostAddress, infoString.c_str()); } diff --git a/Core/MemFault.h b/Core/MemFault.h index 40472a50da91..4de4cbdf6b82 100644 --- a/Core/MemFault.h +++ b/Core/MemFault.h @@ -6,6 +6,14 @@ namespace Memory { void MemFault_Init(); +// Used by the hacky "Resume" button. +// +// TODO: Add a way to actually resume to the next instruction, +// rather than just jumping into the dispatcher again and hoping for the best. That will be +// a little tricky though, with per-backend work. +bool MemFault_MayBeResumable(); +void MemFault_IgnoreLastCrash(); + // Called by exception handlers. We simply filter out accesses to PSP RAM and otherwise // just leave it as-is. bool HandleFault(uintptr_t hostAddress, void *context); diff --git a/Core/MemMap.h b/Core/MemMap.h index 1bd6027c22a0..b82e619625de 100644 --- a/Core/MemMap.h +++ b/Core/MemMap.h @@ -84,7 +84,7 @@ extern u32 g_PSPModel; // UWP has such limited memory management that we need to mask // even in 64-bit mode. Also, when using the sanitizer, we need to mask as well. -#if PPSSPP_ARCH(32BIT) || PPSSPP_PLATFORM(UWP) || USE_ADDRESS_SANITIZER || PPSSPP_PLATFORM(IOS) +#if PPSSPP_ARCH(32BIT) || PPSSPP_PLATFORM(UWP) || USE_ASAN || PPSSPP_PLATFORM(IOS) #define MASKED_PSP_MEMORY #endif diff --git a/Core/PSPLoaders.cpp b/Core/PSPLoaders.cpp index 51a8758843ee..69a1b9485518 100644 --- a/Core/PSPLoaders.cpp +++ b/Core/PSPLoaders.cpp @@ -267,7 +267,7 @@ bool Load_PSP_ISO(FileLoader *fileLoader, std::string *error_string) { if (!pspFileSystem.GetFileInfo(bootpath).exists) { // Can't tell for sure if it's PS1 or PS2, but doesn't much matter. if (pspFileSystem.GetFileInfo("disc0:/SYSTEM.CNF;1").exists || pspFileSystem.GetFileInfo("disc0:/PSX.EXE;1").exists) { - *error_string = "PPSSPP plays PSP games, not Playstation 1 or 2 games."; + *error_string = "PPSSPP plays PSP games, not PlayStation 1 or 2 games."; } else if (pspFileSystem.GetFileInfo("disc0:/UMD_VIDEO/PLAYLIST.UMD").exists) { *error_string = "PPSSPP doesn't support UMD Video."; } else if (pspFileSystem.GetFileInfo("disc0:/UMD_AUDIO/PLAYLIST.UMD").exists) { diff --git a/Core/Reporting.cpp b/Core/Reporting.cpp index a5870f87c32f..5e22b7aeb6a7 100644 --- a/Core/Reporting.cpp +++ b/Core/Reporting.cpp @@ -126,10 +126,9 @@ namespace Reporting return 0; } - void QueueCRC() { + void QueueCRC(const std::string &gamePath) { std::lock_guard guard(crcLock); - const std::string &gamePath = PSP_CoreParameter().fileToStart; auto it = crcResults.find(gamePath); if (it != crcResults.end()) { // Nothing to do, we've already calculated it. @@ -146,9 +145,15 @@ namespace Reporting crcThread = std::thread(CalculateCRCThread); } - u32 RetrieveCRC() { - const std::string &gamePath = PSP_CoreParameter().fileToStart; - QueueCRC(); + bool HasCRC(const std::string &gamePath) { + QueueCRC(gamePath); + + std::lock_guard guard(crcLock); + return crcResults.find(gamePath) != crcResults.end(); + } + + uint32_t RetrieveCRC(const std::string &gamePath) { + QueueCRC(gamePath); std::unique_lock guard(crcLock); auto it = crcResults.find(gamePath); @@ -468,7 +473,7 @@ namespace Reporting postdata.Add("graphics", StringFromFormat("%d", payload.int1)); postdata.Add("speed", StringFromFormat("%d", payload.int2)); postdata.Add("gameplay", StringFromFormat("%d", payload.int3)); - postdata.Add("crc", StringFromFormat("%08x", Core_GetPowerSaving() ? 0 : RetrieveCRC())); + postdata.Add("crc", StringFromFormat("%08x", Core_GetPowerSaving() ? 0 : RetrieveCRC(PSP_CoreParameter().fileToStart))); postdata.Add("suggestions", payload.string1 != "perfect" && payload.string1 != "playable" ? "1" : "0"); AddScreenshotData(postdata, payload.string2); payload.string1.clear(); diff --git a/Core/Reporting.h b/Core/Reporting.h index 50b24f93c8bb..87a6d186a45c 100644 --- a/Core/Reporting.h +++ b/Core/Reporting.h @@ -87,6 +87,13 @@ namespace Reporting // Get the latest compatibility result. Only valid when GetStatus() is not BUSY. std::vector CompatibilitySuggestions(); + // Queues game for CRC hash if needed, and returns true if the hash is available. + bool HasCRC(const std::string &gamePath); + + // Blocks until the CRC hash is available for game, and returns it. + // To avoid stalling, call HasCRC() in update() or similar and call this if it returns true. + uint32_t RetrieveCRC(const std::string &gamePath); + // Returns true if that identifier has not been logged yet. bool ShouldLogNTimes(const char *identifier, int n); diff --git a/Core/SaveState.cpp b/Core/SaveState.cpp index d0388bb362bb..5bbfb7d58deb 100644 --- a/Core/SaveState.cpp +++ b/Core/SaveState.cpp @@ -676,7 +676,6 @@ namespace SaveState return false; } -#ifndef MOBILE_DEVICE static inline void CheckRewindState() { if (gpuStats.numFlips % g_Config.iRewindFlipFrequency != 0) @@ -689,10 +688,9 @@ namespace SaveState return; rewindLastTime = now; - DEBUG_LOG(BOOT, "saving rewind state"); + DEBUG_LOG(BOOT, "Saving rewind state"); rewindStates.Save(); } -#endif bool HasLoadedState() { return hasLoadedState; @@ -719,10 +717,8 @@ namespace SaveState void Process() { -#ifndef MOBILE_DEVICE if (g_Config.iRewindFlipFrequency != 0 && gpuStats.numFlips != 0) CheckRewindState(); -#endif if (!needsProcess) return; diff --git a/Core/System.cpp b/Core/System.cpp index 736499a7f4b4..239533b502d0 100644 --- a/Core/System.cpp +++ b/Core/System.cpp @@ -44,6 +44,7 @@ #include "Core/HDRemaster.h" #include "Core/MIPS/MIPS.h" #include "Core/MIPS/MIPSAnalyst.h" +#include "Core/MIPS/MIPSVFPUUtils.h" #include "Core/Debugger/SymbolMap.h" #include "Core/Host.h" #include "Core/System.h" @@ -66,7 +67,6 @@ #include "Common/LogManager.h" #include "Common/ExceptionHandlerSetup.h" #include "Core/HLE/sceAudiocodec.h" - #include "GPU/GPUState.h" #include "GPU/GPUInterface.h" #include "GPU/Debugger/RecordFormat.h" @@ -245,49 +245,48 @@ bool CPU_Init() { MIPSAnalyst::Reset(); Replacement_Init(); - std::string discID; + bool allowPlugins = true; + std::string geDumpDiscID; switch (type) { case IdentifiedFileType::PSP_ISO: case IdentifiedFileType::PSP_ISO_NP: case IdentifiedFileType::PSP_DISC_DIRECTORY: InitMemoryForGameISO(loadedFile); - discID = g_paramSFO.GetDiscID(); break; case IdentifiedFileType::PSP_PBP: case IdentifiedFileType::PSP_PBP_DIRECTORY: // This is normal for homebrew. // ERROR_LOG(LOADER, "PBP directory resolution failed."); InitMemoryForGamePBP(loadedFile); - discID = g_paramSFO.GetDiscID(); break; case IdentifiedFileType::PSP_ELF: if (Memory::g_PSPModel != PSP_MODEL_FAT) { INFO_LOG(LOADER, "ELF, using full PSP-2000 memory access"); Memory::g_MemorySize = Memory::RAM_DOUBLE_SIZE; } - discID = g_paramSFO.GetDiscID(); break; case IdentifiedFileType::PPSSPP_GE_DUMP: - // Try to grab the disc ID from the filename, since unfortunately, we don't store - // it in the GE dump. This should probably be fixed, but as long as you don't rename the dumps, - // this will do the trick. - if (!DiscIDFromGEDumpPath(filename, loadedFile, &discID)) { - // Failed? Let the param SFO autogen a fake disc ID. - discID = g_paramSFO.GetDiscID(); + // Try to grab the disc ID from the filenameor GE dump. + if (DiscIDFromGEDumpPath(filename, loadedFile, &geDumpDiscID)) { + // Store in SFO, otherwise it'll generate a fake disc ID. + g_paramSFO.SetValue("DISC_ID", geDumpDiscID, 16); } + allowPlugins = false; break; default: - discID = g_paramSFO.GetDiscID(); break; } // Here we have read the PARAM.SFO, let's see if we need any compatibility overrides. // Homebrew usually has an empty discID, and even if they do have a disc id, it's not // likely to collide with any commercial ones. - coreParameter.compat.Load(discID); + coreParameter.compat.Load(g_paramSFO.GetDiscID()); + + InitVFPUSinCos(coreParameter.compat.flags().DoublePrecisionSinCos); - HLEPlugins::Init(); + if (allowPlugins) + HLEPlugins::Init(); if (!Memory::Init()) { // We're screwed. return false; @@ -413,6 +412,7 @@ bool PSP_InitStart(const CoreParameter &coreParam, std::string *error_string) { if (!CPU_Init()) { *error_string = "Failed initializing CPU/Memory"; + pspIsIniting = false; return false; } @@ -491,7 +491,7 @@ void PSP_Shutdown() { // Make sure things know right away that PSP memory, etc. is going away. pspIsQuitting = true; if (coreState == CORE_RUNNING) - Core_UpdateState(CORE_POWERDOWN); + Core_Stop(); #ifndef MOBILE_DEVICE if (g_Config.bFuncHashMap) { @@ -606,6 +606,8 @@ std::string GetSysDirectory(PSPDirectories directoryType) { return g_Config.memStickDirectory + "PSP/VIDEO/"; case DIRECTORY_AUDIO: return g_Config.memStickDirectory + "PSP/AUDIO/"; + case DIRECTORY_MEMSTICK_ROOT: + return g_Config.memStickDirectory; // Just return the memory stick root if we run into some sort of problem. default: ERROR_LOG(FILESYS, "Unknown directory type."); diff --git a/Core/System.h b/Core/System.h index fac6b1676712..3a927a676e4e 100644 --- a/Core/System.h +++ b/Core/System.h @@ -49,7 +49,8 @@ enum PSPDirectories { DIRECTORY_PLUGINS, DIRECTORY_APP_CACHE, // Use the OS app cache if available DIRECTORY_VIDEO, - DIRECTORY_AUDIO + DIRECTORY_AUDIO, + DIRECTORY_MEMSTICK_ROOT, }; class GraphicsContext; diff --git a/Core/Util/GameManager.cpp b/Core/Util/GameManager.cpp index 17b2e75751b7..3e0c618b0e77 100644 --- a/Core/Util/GameManager.cpp +++ b/Core/Util/GameManager.cpp @@ -28,6 +28,9 @@ #else #include "ext/libzip/zip.h" #endif +#ifdef _WIN32 +#include "Common/CommonWindows.h" +#endif #include "Common/Data/Encoding/Utf8.h" #include "Common/Data/Format/IniFile.h" #include "Common/Log.h" diff --git a/Core/Util/PPGeDraw.cpp b/Core/Util/PPGeDraw.cpp index f103b8bf15d7..1beff411b8bd 100644 --- a/Core/Util/PPGeDraw.cpp +++ b/Core/Util/PPGeDraw.cpp @@ -42,6 +42,7 @@ #include "Core/System.h" Atlas g_ppge_atlas; +Draw::DrawContext *g_draw = nullptr; static u32 atlasPtr; static int atlasWidth; @@ -80,7 +81,7 @@ static u32 paletteSize = sizeof(u16) * 16; static u32 vertexStart; static u32 vertexCount; -// Used for formating text +// Used for formatting text struct AtlasCharVertex { float x; @@ -124,7 +125,11 @@ struct PPGeTextDrawerImage { TextStringEntry entry; u32 ptr; }; -std::map textDrawerImages; +static std::map textDrawerImages; + +void PPGeSetDrawContext(Draw::DrawContext *draw) { + g_draw = draw; +} // Overwrite the current text lines buffer so it can be drawn later. void PPGePrepareText(const char *text, float x, float y, PPGeAlign align, float scale, float lineHeightScale, @@ -136,6 +141,8 @@ void PPGePrepareText(const char *text, float x, float y, PPGeAlign align, float // Clears the buffer and state when done. void PPGeDrawCurrentText(u32 color = 0xFFFFFFFF); +static void PPGeDecimateTextImages(int age = 97); + void PPGeSetTexture(u32 dataAddr, int width, int height); //only 0xFFFFFF of data is used @@ -214,7 +221,7 @@ void __PPGeSetupListArgs() void __PPGeInit() { // PPGe isn't really important for headless, and LoadZIM takes a long time. - bool skipZIM = PSP_CoreParameter().gpuCore == GPUCORE_NULL || host->ShouldSkipUI(); + bool skipZIM = host->ShouldSkipUI(); u8 *imageData[12]{}; int width[12]{}; @@ -359,6 +366,10 @@ void __PPGeShutdown() delete textDrawer; textDrawer = nullptr; + + for (auto im : textDrawerImages) + kernelMemory.Free(im.second.ptr); + textDrawerImages.clear(); } void PPGeBegin() @@ -705,8 +716,8 @@ static bool HasTextDrawer() { return textDrawer != nullptr; } - // TODO: Should we pass a draw_? - textDrawer = TextDrawer::Create(nullptr); + // TODO: Should we pass a draw_? Yes! UWP requires it. + textDrawer = TextDrawer::Create(g_draw); if (textDrawer) { textDrawer->SetFontScale(1.0f, 1.0f); textDrawer->SetForcedDPIScale(1.0f); @@ -901,6 +912,18 @@ static void PPGeDrawTextImage(PPGeTextDrawerImage im, float x, float y, const PP PPGeSetDefaultTexture(); } +static void PPGeDecimateTextImages(int age) { + // Do this always, in case the platform has no TextDrawer but save state did. + for (auto it = textDrawerImages.begin(); it != textDrawerImages.end(); ) { + if (gpuStats.numFlips - it->second.entry.lastUsedFrame >= age) { + kernelMemory.Free(it->second.ptr); + it = textDrawerImages.erase(it); + } else { + ++it; + } + } +} + void PPGeDrawText(const char *text, float x, float y, const PPGeStyle &style) { if (!text || !strlen(text)) { return; @@ -908,8 +931,10 @@ void PPGeDrawText(const char *text, float x, float y, const PPGeStyle &style) { if (HasTextDrawer()) { PPGeTextDrawerImage im = PPGeGetTextImage(text, style, 480.0f - x, false); - PPGeDrawTextImage(im, x, y, style); - return; + if (im.ptr) { + PPGeDrawTextImage(im, x, y, style); + return; + } } if (style.hasShadow) { @@ -952,6 +977,7 @@ void PPGeDrawTextWrapped(const char *text, float x, float y, float wrapWidth, fl } int zoom = (PSP_CoreParameter().pixelHeight + 479) / 480; + zoom = std::min(zoom, PSP_CoreParameter().renderScaleFactor); float maxScaleDown = zoom == 1 ? 1.3f : 2.0f; if (HasTextDrawer()) { @@ -982,8 +1008,10 @@ void PPGeDrawTextWrapped(const char *text, float x, float y, float wrapWidth, fl } PPGeTextDrawerImage im = PPGeGetTextImage(s.c_str(), adjustedStyle, wrapWidth <= 0 ? 480.0f - x : wrapWidth, true); - PPGeDrawTextImage(im, x, y, adjustedStyle); - return; + if (im.ptr) { + PPGeDrawTextImage(im, x, y, adjustedStyle); + return; + } } int sx = style.hasShadow ? 1 : 0; @@ -1125,13 +1153,12 @@ void PPGeDrawImage(ImageID atlasImage, float x, float y, float w, float h, const EndVertexDataAndDraw(GE_PRIM_RECTANGLES); } -void PPGeDrawImage(float x, float y, float w, float h, float u1, float v1, float u2, float v2, int tw, int th, u32 color) -{ +void PPGeDrawImage(float x, float y, float w, float h, float u1, float v1, float u2, float v2, int tw, int th, const PPGeImageStyle &style) { if (!dlPtr) return; BeginVertexData(); - Vertex(x, y, u1, v1, tw, th, color); - Vertex(x + w, y + h, u2, v2, tw, th, color); + Vertex(x, y, u1, v1, tw, th, style.color); + Vertex(x + w, y + h, u2, v2, tw, th, style.color); EndVertexDataAndDraw(GE_PRIM_RECTANGLES); } @@ -1217,7 +1244,8 @@ bool PPGeImage::Load() { return false; } - u32 texSize = width_ * height_ * 4; + u32 dataSize = width_ * height_ * 4; + u32 texSize = dataSize + width_ * 4; texture_ = __PPGeDoAlloc(texSize, true, "Savedata Icon"); if (texture_ == 0) { free(textureData); @@ -1225,7 +1253,8 @@ bool PPGeImage::Load() { return false; } - Memory::Memcpy(texture_, textureData, texSize); + Memory::Memcpy(texture_, textureData, dataSize); + Memory::Memset(texture_ + dataSize, 0, texSize - dataSize); free(textureData); lastFrame_ = gpuStats.numFlips; @@ -1293,15 +1322,6 @@ void PPGeNotifyFrame() { textDrawer->OncePerFrame(); } - // Do this always, in case the platform has no TextDrawer but save state did. - for (auto it = textDrawerImages.begin(); it != textDrawerImages.end(); ) { - if (it->second.entry.lastUsedFrame - gpuStats.numFlips >= 97) { - kernelMemory.Free(it->second.ptr); - it = textDrawerImages.erase(it); - } else { - ++it; - } - } - + PPGeDecimateTextImages(); PPGeImage::Decimate(); } diff --git a/Core/Util/PPGeDraw.h b/Core/Util/PPGeDraw.h index dbff6bb831b0..564f1e27ec98 100644 --- a/Core/Util/PPGeDraw.h +++ b/Core/Util/PPGeDraw.h @@ -28,8 +28,15 @@ class PointerWrap; ///////////////////////////////////////////////////////////////////////////////////////////// // PPGeDraw: Super simple internal drawing API for 2D overlays like sceUtility messageboxes -// etc. Goes through the Ge emulation so that it's 100% portable - will work -// splendidly on any existing GPU backend, including the future software backend. +// etc. Goes through the Ge emulation so that it doesn't need to care about backends. +// +// It does need a thin3d Draw-context but only for text rendering. + +namespace Draw { +class DrawContext; +} + +void PPGeSetDrawContext(Draw::DrawContext *draw); // Uploads the necessary texture atlas and other data to kernel RAM, and reserves // space for the display list. The PSP must be inited. @@ -58,9 +65,7 @@ enum class PPGeAlign { ANY = 0xFF, }; -inline bool operator &(const PPGeAlign &lhs, const PPGeAlign &rhs) { - return ((int)lhs & (int)rhs) != 0; -} +ENUM_CLASS_BITOPS(PPGeAlign); enum { PPGE_LINE_NONE = 0, @@ -77,6 +82,10 @@ struct PPGeStyle { uint32_t shadowColor = 0x80000000; }; +struct PPGeImageStyle { + uint32_t color = 0xFFFFFFFF; +}; + // Get the metrics of the bounding box of the text without changing the buffer or state. void PPGeMeasureText(float *w, float *h, const char *text, float scale, int WrapType = PPGE_LINE_NONE, int wrapWidth = 0); @@ -91,7 +100,7 @@ void PPGeDraw4Patch(ImageID atlasImage, float x, float y, float w, float h, u32 // Just blits an image to the screen, multiplied with the color. void PPGeDrawImage(ImageID atlasImage, float x, float y, const PPGeStyle &style); void PPGeDrawImage(ImageID atlasImage, float x, float y, float w, float h, const PPGeStyle &style); -void PPGeDrawImage(float x, float y, float w, float h, float u1, float v1, float u2, float v2, int tw, int th, u32 color); +void PPGeDrawImage(float x, float y, float w, float h, float u1, float v1, float u2, float v2, int tw, int th, const PPGeImageStyle &style); // Note: x2/y2 are exclusive. void PPGeScissor(int x1, int y1, int x2, int y2); diff --git a/Core/WebServer.cpp b/Core/WebServer.cpp index 9e96baf9f88f..ade556a56334 100644 --- a/Core/WebServer.cpp +++ b/Core/WebServer.cpp @@ -60,7 +60,8 @@ static ServerStatus RetrieveStatus() { // This reports the local IP address to report.ppsspp.org, which can then // relay that address to a mobile device searching for the server. -static void RegisterServer(int port) { +static bool RegisterServer(int port) { + bool success = false; http::Client http; Buffer theVoid; @@ -70,31 +71,39 @@ static void RegisterServer(int port) { std::string ip = fd_util::GetLocalIP(http.sock()); snprintf(resource4, sizeof(resource4) - 1, "/match/update?local=%s&port=%d", ip.c_str(), port); - http.GET(resource4, &theVoid); + if (http.GET(resource4, &theVoid) > 0) + success = true; theVoid.Skip(theVoid.size()); http.Disconnect(); } } if (http.Resolve(REPORT_HOSTNAME, REPORT_PORT, net::DNSType::IPV6)) { + // If IPv4 was successful, don't give this as much time (it blocks and sometimes IPv6 is broken.) + double timeout = success ? 2.0 : 20.0; + // We register both IPv4 and IPv6 in case the other client is using a different one. - if (resource4[0] != 0 && http.Connect()) { - http.GET(resource4, &theVoid); + if (resource4[0] != 0 && http.Connect(timeout)) { + if (http.GET(resource4, &theVoid) > 0) + success = true; theVoid.Skip(theVoid.size()); http.Disconnect(); } // Currently, we're not using keepalive, so gotta reconnect... - if (http.Connect()) { + if (http.Connect(timeout)) { char resource6[1024] = {}; std::string ip = fd_util::GetLocalIP(http.sock()); snprintf(resource6, sizeof(resource6) - 1, "/match/update?local=%s&port=%d", ip.c_str(), port); - http.GET(resource6, &theVoid); + if (http.GET(resource6, &theVoid) > 0) + success = true; theVoid.Skip(theVoid.size()); http.Disconnect(); } } + + return success; } bool RemoteISOFileSupported(const std::string &filename) { diff --git a/GPU/Common/FragmentShaderGenerator.cpp b/GPU/Common/FragmentShaderGenerator.cpp index dbe352b8a246..9b67600294ed 100644 --- a/GPU/Common/FragmentShaderGenerator.cpp +++ b/GPU/Common/FragmentShaderGenerator.cpp @@ -22,6 +22,7 @@ #include "Common/StringUtils.h" #include "Common/GPU/OpenGL/GLFeatures.h" #include "Common/GPU/ShaderWriter.h" +#include "Common/GPU/thin3d.h" #include "Core/Reporting.h" #include "Core/Config.h" #include "GPU/Common/GPUStateUtils.h" @@ -33,7 +34,7 @@ #define WRITE(p, ...) p.F(__VA_ARGS__) -bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLanguageDesc &compat, uint64_t *uniformMask, std::string *errorString) { +bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLanguageDesc &compat, Draw::Bugs bugs, uint64_t *uniformMask, std::string *errorString) { *uniformMask = 0; errorString->clear(); @@ -77,15 +78,13 @@ bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLangu bool enableColorDoubling = id.Bit(FS_BIT_COLOR_DOUBLE); bool doTextureProjection = id.Bit(FS_BIT_DO_TEXTURE_PROJ); bool doTextureAlpha = id.Bit(FS_BIT_TEXALPHA); - bool doFlatShading = id.Bit(FS_BIT_FLATSHADE); + + bool flatBug = bugs.Has(Draw::Bugs::BROKEN_FLAT_IN_SHADER) && g_Config.bVendorBugChecksEnabled; + + bool doFlatShading = id.Bit(FS_BIT_FLATSHADE) && !flatBug; bool shaderDepal = id.Bit(FS_BIT_SHADER_DEPAL); bool bgraTexture = id.Bit(FS_BIT_BGRA_TEXTURE); - bool colorWriteMask = id.Bit(FS_BIT_COLOR_WRITEMASK); - - if (colorWriteMask && !compat.bitwiseOps) { - *errorString = "Color Write Mask requires bitwise ops"; - return false; - } + bool colorWriteMask = id.Bit(FS_BIT_COLOR_WRITEMASK) && compat.bitwiseOps; GEComparison alphaTestFunc = (GEComparison)id.Bits(FS_BIT_ALPHA_TEST_FUNC, 3); GEComparison colorTestFunc = (GEComparison)id.Bits(FS_BIT_COLOR_TEST_FUNC, 2); @@ -116,6 +115,11 @@ bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLangu bool needFragCoord = readFramebuffer || gstate_c.Supports(GPU_ROUND_FRAGMENT_DEPTH_TO_16BIT); bool writeDepth = gstate_c.Supports(GPU_ROUND_FRAGMENT_DEPTH_TO_16BIT); + if (shaderDepal && !doTexture) { + *errorString = "depal requires a texture"; + return false; + } + if (readFramebuffer && compat.shaderLanguage == HLSL_D3D9) { *errorString = "Framebuffer read not yet supported in HLSL D3D9"; return false; @@ -141,14 +145,15 @@ bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLangu WRITE(p, "layout (binding = 2) uniform sampler2D pal;\n"); } - WRITE(p, "layout (location = 1) %s in vec4 v_color0;\n", shading); + // Note: the precision qualifiers must match the vertex shader! + WRITE(p, "layout (location = 1) %s in lowp vec4 v_color0;\n", shading); if (lmode) - WRITE(p, "layout (location = 2) %s in vec3 v_color1;\n", shading); + WRITE(p, "layout (location = 2) %s in lowp vec3 v_color1;\n", shading); if (enableFog) { - WRITE(p, "layout (location = 3) in float v_fogdepth;\n"); + WRITE(p, "layout (location = 3) in highp float v_fogdepth;\n"); } if (doTexture) { - WRITE(p, "layout (location = 0) in vec3 v_texcoord;\n"); + WRITE(p, "layout (location = 0) in highp vec3 v_texcoord;\n"); } if (enableAlphaTest && !alphaTestAgainstZero) { @@ -292,7 +297,7 @@ bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLangu WRITE(p, "float3 u_fogcolor : register(c%i);\n", CONST_PS_FOGCOLOR); } } else if (ShaderLanguageIsOpenGL(compat.shaderLanguage)) { - if (shaderDepal && gl_extensions.IsGLES) { + if ((shaderDepal || colorWriteMask) && gl_extensions.IsGLES) { WRITE(p, "precision highp int;\n"); } @@ -357,9 +362,9 @@ bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLangu WRITE(p, "uniform vec3 u_texenv;\n"); } - WRITE(p, "%s %s vec4 v_color0;\n", shading, compat.varying_fs); + WRITE(p, "%s %s lowp vec4 v_color0;\n", shading, compat.varying_fs); if (lmode) - WRITE(p, "%s %s vec3 v_color1;\n", shading, compat.varying_fs); + WRITE(p, "%s %s lowp vec3 v_color1;\n", shading, compat.varying_fs); if (enableFog) { *uniformMask |= DIRTY_FOGCOLOR; WRITE(p, "uniform vec3 u_fogcolor;\n"); @@ -392,7 +397,7 @@ bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLangu if (!strcmp(compat.fragColor0, "fragColor0")) { const char *qualifierColor0 = "out"; - if (compat.lastFragData && !strcmp(compat.lastFragData, compat.fragColor0)) { + if (readFramebuffer && compat.lastFragData && !strcmp(compat.lastFragData, compat.fragColor0)) { qualifierColor0 = "inout"; } // Output the output color definitions. @@ -403,20 +408,31 @@ bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLangu WRITE(p, "%s vec4 fragColor0;\n", qualifierColor0); } } + } + bool hasPackUnorm4x8 = false; + if (compat.shaderLanguage == GLSL_VULKAN) { + hasPackUnorm4x8 = true; + } else if (ShaderLanguageIsOpenGL(compat.shaderLanguage)) { + if (compat.gles) { + hasPackUnorm4x8 = compat.glslVersionNumber >= 310; + } else { + hasPackUnorm4x8 = compat.glslVersionNumber >= 400; + } } // Provide implementations of packUnorm4x8 and unpackUnorm4x8 if not available. - if (colorWriteMask && compat.shaderLanguage == HLSL_D3D11 || (compat.shaderLanguage == GLSL_3xx && compat.glslVersionNumber < 400)) { + if (colorWriteMask && !hasPackUnorm4x8) { WRITE(p, "uint packUnorm4x8(vec4 v) {\n"); - WRITE(p, " v = clamp(v, 0.0, 1.0);\n"); - WRITE(p, " uvec4 u = uvec4(255.0 * v);\n"); + WRITE(p, " highp vec4 f = clamp(v, 0.0, 1.0);\n"); + WRITE(p, " uvec4 u = uvec4(255.0 * f);\n"); WRITE(p, " return u.x | (u.y << 8) | (u.z << 16) | (u.w << 24);\n"); WRITE(p, "}\n"); - WRITE(p, "vec4 unpackUnorm4x8(uint x) {\n"); - WRITE(p, " uvec4 u = uvec4(x & 0xFFU, (x >> 8) & 0xFFU, (x >> 16) & 0xFFU, (x >> 24) & 0xFFU);\n"); - WRITE(p, " return vec4(u) * (1.0 / 255.0);\n"); + WRITE(p, "vec4 unpackUnorm4x8(highp uint x) {\n"); + WRITE(p, " highp uvec4 u = uvec4(x & 0xFFU, (x >> 8) & 0xFFU, (x >> 16) & 0xFFU, (x >> 24) & 0xFFU);\n"); + WRITE(p, " highp vec4 f = vec4(u);\n"); + WRITE(p, " return f * (1.0 / 255.0);\n"); WRITE(p, "}\n"); } @@ -564,10 +580,10 @@ bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLangu WRITE(p, " } else {\n"); WRITE(p, " uv_round = uv;\n"); WRITE(p, " }\n"); - WRITE(p, " vec4 t = %s(tex, uv_round);\n", compat.texture); - WRITE(p, " vec4 t1 = %sOffset(tex, uv_round, ivec2(1, 0));\n", compat.texture); - WRITE(p, " vec4 t2 = %sOffset(tex, uv_round, ivec2(0, 1));\n", compat.texture); - WRITE(p, " vec4 t3 = %sOffset(tex, uv_round, ivec2(1, 1));\n", compat.texture); + WRITE(p, " highp vec4 t = %s(tex, uv_round);\n", compat.texture); + WRITE(p, " highp vec4 t1 = %sOffset(tex, uv_round, ivec2(1, 0));\n", compat.texture); + WRITE(p, " highp vec4 t2 = %sOffset(tex, uv_round, ivec2(0, 1));\n", compat.texture); + WRITE(p, " highp vec4 t3 = %sOffset(tex, uv_round, ivec2(1, 1));\n", compat.texture); WRITE(p, " uint depalMask = (u_depal_mask_shift_off_fmt & 0xFFU);\n"); WRITE(p, " uint depalShift = (u_depal_mask_shift_off_fmt >> 8) & 0xFFU;\n"); WRITE(p, " uint depalOffset = ((u_depal_mask_shift_off_fmt >> 16) & 0xFFU) << 4;\n"); @@ -765,10 +781,21 @@ bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLangu // When testing against 0 (common), we can avoid some math. // 0.002 is approximately half of 1.0 / 255.0. if (colorTestFunc == GE_COMP_NOTEQUAL) { - WRITE(p, " if (v.r < 0.002 && v.g < 0.002 && v.b < 0.002) %s\n", discardStatement); + if (compat.shaderLanguage == GLSL_VULKAN) { + // Old workaround for Adreno driver bug. We could make this the main path actually + // since the math is roughly equivalent given the non-negative inputs. + WRITE(p, " if (v.r + v.g + v.b < 0.002) %s\n", discardStatement); + } else { + WRITE(p, " if (v.r < 0.002 && v.g < 0.002 && v.b < 0.002) %s\n", discardStatement); + } } else if (colorTestFunc != GE_COMP_NEVER) { - // Anything else is a test for == 0. - WRITE(p, " if (v.r > 0.002 || v.g > 0.002 || v.b > 0.002) %s\n", discardStatement); + if (compat.shaderLanguage == GLSL_VULKAN) { + // See the GE_COMP_NOTEQUAL case. + WRITE(p, " if (v.r + v.g + v.b > 0.002) %s\n", discardStatement); + } else { + // Anything else is a test for == 0. + WRITE(p, " if (v.r > 0.002 || v.g > 0.002 || v.b > 0.002) %s\n", discardStatement); + } } else { // NEVER has been logged as used by games, although it makes little sense - statically failing. // Maybe we could discard the drawcall, but it's pretty rare. Let's just statically discard here. @@ -802,10 +829,9 @@ bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLangu WRITE(p, " vec3 colortest = roundAndScaleTo255v(v.rgb);\n"); WRITE(p, " if ((colortest.r %s u_alphacolorref.r) && (colortest.g %s u_alphacolorref.g) && (colortest.b %s u_alphacolorref.b)) %s\n", test, test, test, discardStatement); } else if (compat.bitwiseOps) { - // Apparently GLES3 does not support vector bitwise ops. WRITE(p, " ivec3 v_scaled = roundAndScaleTo255iv(v.rgb);\n"); if (compat.shaderLanguage == GLSL_VULKAN) { - // TODO: Use this for GL as well? + // Apparently GLES3 does not support vector bitwise ops, but Vulkan does? WRITE(p, " if ((v_scaled & u_alphacolormask.rgb) %s (u_alphacolorref.rgb & u_alphacolormask.rgb)) %s\n", colorTestFuncs[colorTestFunc], discardStatement); } else { const char *maskedFragColor = "ivec3(v_scaled.r & u_alphacolormask.r, v_scaled.g & u_alphacolormask.g, v_scaled.b & u_alphacolormask.b)"; diff --git a/GPU/Common/FragmentShaderGenerator.h b/GPU/Common/FragmentShaderGenerator.h index 2e27d165d01e..b7c48eb355f7 100644 --- a/GPU/Common/FragmentShaderGenerator.h +++ b/GPU/Common/FragmentShaderGenerator.h @@ -18,6 +18,7 @@ #pragma once #include "Common/GPU/Shader.h" +#include "Common/GPU/thin3d.h" struct FShaderID; @@ -37,4 +38,4 @@ struct FShaderID; // For stencil upload #define CONST_PS_STENCILVALUE 10 -bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLanguageDesc &compat, uint64_t *uniformMask, std::string *errorString); +bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLanguageDesc &compat, Draw::Bugs bugs, uint64_t *uniformMask, std::string *errorString); diff --git a/GPU/Common/FramebufferManagerCommon.cpp b/GPU/Common/FramebufferManagerCommon.cpp index 3a5fa2e21e2b..76b94ccbb1db 100644 --- a/GPU/Common/FramebufferManagerCommon.cpp +++ b/GPU/Common/FramebufferManagerCommon.cpp @@ -28,7 +28,9 @@ #include "Core/ConfigValues.h" #include "Core/Core.h" #include "Core/CoreParameter.h" +#include "Core/Debugger/Breakpoints.h" #include "Core/Host.h" +#include "Core/MIPS/MIPS.h" #include "Core/Reporting.h" #include "GPU/Common/DrawEngineCommon.h" #include "GPU/Common/FramebufferManagerCommon.h" @@ -471,10 +473,10 @@ void FramebufferManagerCommon::BlitFramebufferDepth(VirtualFramebuffer *src, Vir // Note: We prefer Blit ahead of Copy here, since at least on GL, Copy will always also copy stencil which we don't want. See #9740. if (gstate_c.Supports(GPU_SUPPORTS_FRAMEBUFFER_BLIT_TO_DEPTH)) { draw_->BlitFramebuffer(src->fbo, 0, 0, w, h, dst->fbo, 0, 0, w, h, Draw::FB_DEPTH_BIT, Draw::FB_BLIT_NEAREST, "BlitFramebufferDepth"); - RebindFramebuffer("BlitFramebufferDepth"); + RebindFramebuffer("After BlitFramebufferDepth"); } else if (gstate_c.Supports(GPU_SUPPORTS_COPY_IMAGE)) { draw_->CopyFramebufferImage(src->fbo, 0, 0, 0, 0, dst->fbo, 0, 0, 0, 0, w, h, 1, Draw::FB_DEPTH_BIT, "BlitFramebufferDepth"); - RebindFramebuffer("BlitFramebufferDepth"); + RebindFramebuffer("After BlitFramebufferDepth"); } dst->last_frame_depth_updated = gpuStats.numFlips; } @@ -503,7 +505,7 @@ void FramebufferManagerCommon::NotifyRenderFramebufferUpdated(VirtualFramebuffer if (vfbFormatChanged) { textureCache_->NotifyFramebuffer(vfb, NOTIFY_FB_UPDATED); if (vfb->drawnFormat != vfb->format) { - ReinterpretFramebufferFrom(vfb, vfb->drawnFormat); + ReinterpretFramebuffer(vfb, vfb->drawnFormat, vfb->format); } } @@ -517,11 +519,34 @@ void FramebufferManagerCommon::NotifyRenderFramebufferUpdated(VirtualFramebuffer } } -void FramebufferManagerCommon::ReinterpretFramebufferFrom(VirtualFramebuffer *vfb, GEBufferFormat oldFormat) { +// Can't easily dynamically create these strings, we just pass along the pointer. +static const char *reinterpretStrings[3][3] = { + { + "self_reinterpret_565", + "reinterpret_565_to_5551", + "reinterpret_565_to_4444", + }, + { + "reinterpret_5551_to_565", + "self_reinterpret_5551", + "reinterpret_5551_to_4444", + }, + { + "reinterpret_4444_to_565", + "reinterpret_4444_to_5551", + "self_reinterpret_4444", + }, +}; + +void FramebufferManagerCommon::ReinterpretFramebuffer(VirtualFramebuffer *vfb, GEBufferFormat oldFormat, GEBufferFormat newFormat) { if (!useBufferedRendering_ || !vfb->fbo) { return; } + _assert_(newFormat != oldFormat); + // The caller is responsible for updating the format. + _assert_(newFormat == vfb->format); + ShaderLanguage lang = draw_->GetShaderLanguageDesc().shaderLanguage; bool doReinterpret = PSP_CoreParameter().compat.flags().ReinterpretFramebuffers && @@ -531,18 +556,24 @@ void FramebufferManagerCommon::ReinterpretFramebufferFrom(VirtualFramebuffer *vf if (oldFormat == GE_FORMAT_565) { // We have to bind here instead of clear, since it can be that no framebuffer is bound. // The backend can sometimes directly optimize it to a clear. - draw_->BindFramebufferAsRenderTarget(vfb->fbo, { Draw::RPAction::CLEAR, Draw::RPAction::KEEP, Draw::RPAction::CLEAR }, "FakeReinterpret"); - // Need to dirty anything that has command buffer dynamic state, in case we started a new pass above. - // Should find a way to feed that information back, maybe... Or simply correct the issue in the rendermanager. - gstate_c.Dirty(DIRTY_DEPTHSTENCIL_STATE | DIRTY_VIEWPORTSCISSOR_STATE | DIRTY_BLEND_STATE); + + // Games that are marked as doing reinterpret just ignore this - better to keep the data than to clear. + // Fixes #13717. + if (!PSP_CoreParameter().compat.flags().ReinterpretFramebuffers) { + draw_->BindFramebufferAsRenderTarget(vfb->fbo, { Draw::RPAction::CLEAR, Draw::RPAction::KEEP, Draw::RPAction::CLEAR }, "FakeReinterpret"); + // Need to dirty anything that has command buffer dynamic state, in case we started a new pass above. + // Should find a way to feed that information back, maybe... Or simply correct the issue in the rendermanager. + gstate_c.Dirty(DIRTY_DEPTHSTENCIL_STATE | DIRTY_VIEWPORTSCISSOR_STATE | DIRTY_BLEND_STATE); + + if (currentRenderVfb_ != vfb) { + // In case ReinterpretFramebuffer was called from the texture manager. + draw_->BindFramebufferAsRenderTarget(currentRenderVfb_->fbo, { Draw::RPAction::KEEP, Draw::RPAction::KEEP, Draw::RPAction::KEEP }, "After FakeReinterpret"); + } + } } return; } - GEBufferFormat newFormat = vfb->format; - - _assert_(newFormat != oldFormat); - // We only reinterpret between 16 - bit formats, for now. if (!IsGeBufferFormat16BitColor(oldFormat) || !IsGeBufferFormat16BitColor(newFormat)) { // 16->32 and 32->16 will require some more specialized shaders. @@ -607,7 +638,7 @@ void FramebufferManagerCommon::ReinterpretFramebufferFrom(VirtualFramebuffer *vf draw_->InvalidateCachedState(); draw_->CopyFramebufferImage(vfb->fbo, 0, 0, 0, 0, temp, 0, 0, 0, 0, vfb->renderWidth, vfb->renderHeight, 1, Draw::FBChannel::FB_COLOR_BIT, "reinterpret_prep"); - draw_->BindFramebufferAsRenderTarget(vfb->fbo, { Draw::RPAction::DONT_CARE, Draw::RPAction::DONT_CARE, Draw::RPAction::DONT_CARE }, "reinterpret"); + draw_->BindFramebufferAsRenderTarget(vfb->fbo, { Draw::RPAction::DONT_CARE, Draw::RPAction::DONT_CARE, Draw::RPAction::DONT_CARE }, reinterpretStrings[(int)oldFormat][(int)newFormat]); draw_->BindPipeline(pipeline); draw_->BindFramebufferAsTexture(temp, 0, Draw::FBChannel::FB_COLOR_BIT, 0); draw_->BindSamplerStates(0, 1, &reinterpretSampler_); @@ -620,13 +651,16 @@ void FramebufferManagerCommon::ReinterpretFramebufferFrom(VirtualFramebuffer *vf // Unbind. draw_->BindTexture(0, nullptr); - RebindFramebuffer("After reinterpret"); shaderManager_->DirtyLastShader(); textureCache_->ForgetLastTexture(); gstate_c.Dirty(DIRTY_BLEND_STATE | DIRTY_DEPTHSTENCIL_STATE | DIRTY_RASTER_STATE | DIRTY_VIEWPORTSCISSOR_STATE | DIRTY_VERTEXSHADER_STATE); + if (currentRenderVfb_ != vfb) { + // In case ReinterpretFramebuffer was called from the texture manager. + draw_->BindFramebufferAsRenderTarget(currentRenderVfb_->fbo, { Draw::RPAction::KEEP, Draw::RPAction::KEEP, Draw::RPAction::KEEP }, "After reinterpret"); + } delete[] vsCode; delete[] fsCode; } @@ -658,8 +692,9 @@ void FramebufferManagerCommon::NotifyRenderFramebufferSwitched(VirtualFramebuffe } } } + if (vfb->drawnFormat != vfb->format) { - ReinterpretFramebufferFrom(vfb, vfb->drawnFormat); + ReinterpretFramebuffer(vfb, vfb->drawnFormat, vfb->format); } if (useBufferedRendering_) { @@ -819,17 +854,15 @@ void FramebufferManagerCommon::DrawPixels(VirtualFramebuffer *vfb, int dstX, int bool FramebufferManagerCommon::BindFramebufferAsColorTexture(int stage, VirtualFramebuffer *framebuffer, int flags) { if (!framebuffer->fbo || !useBufferedRendering_) { - draw_->BindTexture(0, nullptr); + draw_->BindTexture(stage, nullptr); gstate_c.skipDrawReason |= SKIPDRAW_BAD_FB_TEXTURE; return false; } // currentRenderVfb_ will always be set when this is called, except from the GE debugger. // Let's just not bother with the copy in that case. - bool skipCopy = (flags & BINDFBCOLOR_MAY_COPY) == 0; - if (GPUStepping::IsStepping()) { - skipCopy = true; - } + bool skipCopy = !(flags & BINDFBCOLOR_MAY_COPY) || GPUStepping::IsStepping(); + // Currently rendering to this framebuffer. Need to make a copy. if (!skipCopy && framebuffer == currentRenderVfb_) { // TODO: Maybe merge with bvfbs_? Not sure if those could be packing, and they're created at a different size. @@ -853,11 +886,10 @@ bool FramebufferManagerCommon::BindFramebufferAsColorTexture(int stage, VirtualF // Actually if the texture region and render regions don't overlap, this is safe, but we need // to transition to GENERAL image layout which will take some trickery. // Badness on D3D11 to bind the currently rendered-to framebuffer as a texture. - draw_->BindTexture(0, nullptr); + draw_->BindTexture(stage, nullptr); gstate_c.skipDrawReason |= SKIPDRAW_BAD_FB_TEXTURE; return false; } - } void FramebufferManagerCommon::CopyFramebufferForColorTexture(VirtualFramebuffer *dst, VirtualFramebuffer *src, int flags) { @@ -882,7 +914,7 @@ void FramebufferManagerCommon::CopyFramebufferForColorTexture(VirtualFramebuffer } if (x < src->drawnWidth && y < src->drawnHeight && w > 0 && h > 0) { - BlitFramebuffer(dst, x, y, src, x, y, w, h, 0); + BlitFramebuffer(dst, x, y, src, x, y, w, h, 0, "Blit_CopyFramebufferForColorTexture"); } } @@ -983,6 +1015,8 @@ void FramebufferManagerCommon::DrawFramebufferToOutput(const u8 *srcPixels, GEBu // PresentationCommon sets all kinds of state, we can't rely on anything. gstate_c.Dirty(DIRTY_ALL); + + currentRenderVfb_ = nullptr; } void FramebufferManagerCommon::DownloadFramebufferOnSwitch(VirtualFramebuffer *vfb) { @@ -990,7 +1024,7 @@ void FramebufferManagerCommon::DownloadFramebufferOnSwitch(VirtualFramebuffer *v // Some games will draw to some memory once, and use it as a render-to-texture later. // To support this, we save the first frame to memory when we have a safe w/h. // Saving each frame would be slow. - if (!g_Config.bDisableSlowFramebufEffects) { + if (!g_Config.bDisableSlowFramebufEffects && !PSP_CoreParameter().compat.flags().DisableFirstFrameReadback) { ReadFramebufferToMemory(vfb, 0, 0, vfb->safeWidth, vfb->safeHeight); vfb->usageFlags = (vfb->usageFlags | FB_USAGE_DOWNLOAD) & ~FB_USAGE_DOWNLOAD_CLEAR; vfb->firstFrameSaved = true; @@ -1009,7 +1043,7 @@ void FramebufferManagerCommon::CopyDisplayToOutput(bool reallyDirty) { DownloadFramebufferOnSwitch(currentRenderVfb_); shaderManager_->DirtyLastShader(); - currentRenderVfb_ = 0; + currentRenderVfb_ = nullptr; if (displayFramebufPtr_ == 0) { if (Core_IsStepping()) @@ -1146,7 +1180,7 @@ void FramebufferManagerCommon::CopyDisplayToOutput(bool reallyDirty) { } void FramebufferManagerCommon::DecimateFBOs() { - currentRenderVfb_ = 0; + currentRenderVfb_ = nullptr; for (auto iter : fbosToDelete_) { iter->Release(); @@ -1271,9 +1305,10 @@ void FramebufferManagerCommon::ResizeFramebufFBO(VirtualFramebuffer *vfb, int w, if (old.fbo) { INFO_LOG(FRAMEBUF, "Resizing FBO for %08x : %dx%dx%s", vfb->fb_address, w, h, GeBufferFormatToString(vfb->format)); if (vfb->fbo) { + // TODO: Swap the order of the below? That way we can avoid the needGLESRebinds_ check below I think. draw_->BindFramebufferAsRenderTarget(vfb->fbo, { Draw::RPAction::CLEAR, Draw::RPAction::CLEAR, Draw::RPAction::CLEAR }, "ResizeFramebufFBO"); if (!skipCopy) { - BlitFramebuffer(vfb, 0, 0, &old, 0, 0, std::min((u16)oldWidth, std::min(vfb->bufferWidth, vfb->width)), std::min((u16)oldHeight, std::min(vfb->height, vfb->bufferHeight)), 0); + BlitFramebuffer(vfb, 0, 0, &old, 0, 0, std::min((u16)oldWidth, std::min(vfb->bufferWidth, vfb->width)), std::min((u16)oldHeight, std::min(vfb->height, vfb->bufferHeight)), 0, "Blit_ResizeFramebufFBO"); } } fbosToDelete_.push_back(old.fbo); @@ -1377,7 +1412,7 @@ bool FramebufferManagerCommon::NotifyFramebufferCopy(u32 src, u32 dst, int size, } else { WARN_LOG_ONCE(dstnotsrccpy, G3D, "Inter-buffer memcpy %08x -> %08x (size: %x)", src, dst, size); // Just do the blit! - BlitFramebuffer(dstBuffer, 0, dstY, srcBuffer, 0, srcY, srcBuffer->width, srcH, 0); + BlitFramebuffer(dstBuffer, 0, dstY, srcBuffer, 0, srcY, srcBuffer->width, srcH, 0, "Blit_InterBufferMemcpy"); SetColorUpdated(dstBuffer, skipDrawReason); RebindFramebuffer("RebindFramebuffer - Inter-buffer memcpy"); } @@ -1724,27 +1759,28 @@ bool FramebufferManagerCommon::NotifyBlockTransferBefore(u32 dstBasePtr, int dst if (dstBuffer && srcBuffer) { if (srcBuffer == dstBuffer) { if (srcX != dstX || srcY != dstY) { - WARN_LOG_N_TIMES(dstsrc, 100, G3D, "Intra-buffer block transfer %08x (x:%d y:%d stride:%d) -> %08x (x:%d y:%d stride:%d) (%dx%d %dbpp)", + WARN_LOG_N_TIMES(dstsrc, 100, G3D, "Intra-buffer block transfer %dx%d %dbpp from %08x (x:%d y:%d stride:%d) -> %08x (x:%d y:%d stride:%d)", + width, height, bpp, srcBasePtr, srcX, srcY, srcStride, - dstBasePtr, dstX, dstY, dstStride, - width, height, bpp); + dstBasePtr, dstX, dstY, dstStride); FlushBeforeCopy(); - BlitFramebuffer(dstBuffer, dstX, dstY, srcBuffer, srcX, srcY, dstWidth, dstHeight, bpp); + // Some backends can handle blitting within a framebuffer. Others will just have to deal with it or ignore it, apparently. + BlitFramebuffer(dstBuffer, dstX, dstY, srcBuffer, srcX, srcY, dstWidth, dstHeight, bpp, "Blit_IntraBufferBlockTransfer"); RebindFramebuffer("rebind after intra block transfer"); SetColorUpdated(dstBuffer, skipDrawReason); - return true; + return true; // Skip the memory copy. } else { // Ignore, nothing to do. Tales of Phantasia X does this by accident. - return true; + return true; // Skip the memory copy. } } else { - WARN_LOG_N_TIMES(dstnotsrc, 100, G3D, "Inter-buffer block transfer %08x (x:%d y:%d stride:%d) -> %08x (x:%d y:%d stride:%d) (%dx%d %dbpp)", + WARN_LOG_N_TIMES(dstnotsrc, 100, G3D, "Inter-buffer block transfer %dx%d %dbpp from %08x (x:%d y:%d stride:%d) -> %08x (x:%d y:%d stride:%d)", + width, height, bpp, srcBasePtr, srcX, srcY, srcStride, - dstBasePtr, dstX, dstY, dstStride, - width, height, bpp); - // Just do the blit! + dstBasePtr, dstX, dstY, dstStride); + // Straightforward blit between two framebuffers. FlushBeforeCopy(); - BlitFramebuffer(dstBuffer, dstX, dstY, srcBuffer, srcX, srcY, dstWidth, dstHeight, bpp); + BlitFramebuffer(dstBuffer, dstX, dstY, srcBuffer, srcX, srcY, dstWidth, dstHeight, bpp, "Blit_InterBufferBlockTransfer"); RebindFramebuffer("RebindFramebuffer - Inter-buffer block transfer"); SetColorUpdated(dstBuffer, skipDrawReason); return true; // No need to actually do the memory copy behind, probably. @@ -1754,10 +1790,10 @@ bool FramebufferManagerCommon::NotifyBlockTransferBefore(u32 dstBasePtr, int dst // Here we should just draw the pixels into the buffer. Copy first. return false; } else if (srcBuffer) { - WARN_LOG_N_TIMES(btd, 100, G3D, "Block transfer readback %08x (x:%d y:%d stride:%d) -> %08x (x:%d y:%d stride:%d) (%dx%d %dbpp)", + WARN_LOG_N_TIMES(btd, 100, G3D, "Block transfer readback %dx%d %dbpp from %08x (x:%d y:%d stride:%d) -> %08x (x:%d y:%d stride:%d)", + width, height, bpp, srcBasePtr, srcX, srcY, srcStride, - dstBasePtr, dstX, dstY, dstStride, - width, height, bpp); + dstBasePtr, dstX, dstY, dstStride); FlushBeforeCopy(); if (g_Config.bBlockTransferGPU && !srcBuffer->memoryUpdated) { const int srcBpp = srcBuffer->format == GE_FORMAT_8888 ? 4 : 2; @@ -1983,7 +2019,8 @@ bool FramebufferManagerCommon::GetFramebuffer(u32 fb_address, int fb_stride, GEB tempVfb.bufferHeight = vfb->height; tempVfb.renderWidth = w; tempVfb.renderHeight = h; - BlitFramebuffer(&tempVfb, 0, 0, vfb, 0, 0, vfb->width, vfb->height, 0); + tempVfb.renderScaleFactor = (float)maxRes; + BlitFramebuffer(&tempVfb, 0, 0, vfb, 0, 0, vfb->width, vfb->height, 0, "Blit_GetFramebuffer"); bound = tempFBO; } else { @@ -2111,9 +2148,10 @@ void FramebufferManagerCommon::PackFramebufferSync_(VirtualFramebuffer *vfb, int const int dstBpp = (int)DataFormatSizeInBytes(destFormat); const int dstByteOffset = (y * vfb->fb_stride + x) * dstBpp; + const int dstSize = (h * vfb->fb_stride + w - 1) * dstBpp; - if (!Memory::IsValidRange(fb_address + dstByteOffset, ((h - 1) * vfb->fb_stride + w) * dstBpp)) { - ERROR_LOG(G3D, "PackFramebufferSync_ would write outside of memory, ignoring"); + if (!Memory::IsValidRange(fb_address + dstByteOffset, dstSize)) { + ERROR_LOG_REPORT(G3D, "PackFramebufferSync_ would write outside of memory, ignoring"); return; } @@ -2125,6 +2163,7 @@ void FramebufferManagerCommon::PackFramebufferSync_(VirtualFramebuffer *vfb, int if (destPtr) { draw_->CopyFramebufferToMemorySync(vfb->fbo, Draw::FB_COLOR_BIT, x, y, w, h, destFormat, destPtr, vfb->fb_stride, "PackFramebufferSync_"); + CBreakPoints::ExecMemCheck(fb_address + dstByteOffset, true, dstSize, currentMIPS->pc); } else { ERROR_LOG(G3D, "PackFramebufferSync_: Tried to readback to bad address %08x (stride = %d)", fb_address + dstByteOffset, vfb->fb_stride); } @@ -2174,7 +2213,7 @@ void FramebufferManagerCommon::ReadFramebufferToMemory(VirtualFramebuffer *vfb, } else { VirtualFramebuffer *nvfb = FindDownloadTempBuffer(vfb); if (nvfb) { - BlitFramebuffer(nvfb, x, y, vfb, x, y, w, h, 0); + BlitFramebuffer(nvfb, x, y, vfb, x, y, w, h, 0, "Blit_ReadFramebufferToMemory"); PackFramebufferSync_(nvfb, x, y, w, h); } } @@ -2222,7 +2261,7 @@ void FramebufferManagerCommon::DownloadFramebufferForClut(u32 fb_address, u32 lo // We'll pseudo-blit framebuffers here to get a resized version of vfb. VirtualFramebuffer *nvfb = FindDownloadTempBuffer(vfb); if (nvfb) { - BlitFramebuffer(nvfb, x, y, vfb, x, y, w, h, 0); + BlitFramebuffer(nvfb, x, y, vfb, x, y, w, h, 0, "Blit_DownloadFramebufferForClut"); PackFramebufferSync_(nvfb, x, y, w, h); } diff --git a/GPU/Common/FramebufferManagerCommon.h b/GPU/Common/FramebufferManagerCommon.h index 04422c7970db..0b843b5bc4ab 100644 --- a/GPU/Common/FramebufferManagerCommon.h +++ b/GPU/Common/FramebufferManagerCommon.h @@ -15,6 +15,14 @@ // Official git repository and contact information can be found at // https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/. +// TODO: We now have the tools in thin3d to nearly eliminate the backend-specific framebuffer managers. +// Here's a list of functionality to unify into FramebufferManagerCommon: +// * DrawActiveTexture +// * BlitFramebuffer +// * StencilBuffer*.cpp +// +// Also, in TextureCache we should be able to unify texture-based depal. + #pragma once #include @@ -131,7 +139,7 @@ void GetFramebufferHeuristicInputs(FramebufferHeuristicParams *params, const GPU enum BindFramebufferColorFlags { BINDFBCOLOR_SKIP_COPY = 0, BINDFBCOLOR_MAY_COPY = 1, - BINDFBCOLOR_MAY_COPY_WITH_UV = 3, + BINDFBCOLOR_MAY_COPY_WITH_UV = 3, // includes BINDFBCOLOR_MAY_COPY BINDFBCOLOR_APPLY_TEX_OFFSET = 4, // Used when rendering to a temporary surface (e.g. not the current render target.) BINDFBCOLOR_FORCE_SELF = 8, @@ -322,7 +330,7 @@ class FramebufferManagerCommon { const std::vector &Framebuffers() { return vfbs_; } - void ReinterpretFramebufferFrom(VirtualFramebuffer *vfb, GEBufferFormat old); + void ReinterpretFramebuffer(VirtualFramebuffer *vfb, GEBufferFormat oldFormat, GEBufferFormat newFormat); protected: virtual void PackFramebufferSync_(VirtualFramebuffer *vfb, int x, int y, int w, int h); @@ -337,7 +345,7 @@ class FramebufferManagerCommon { virtual void DecimateFBOs(); // keeping it virtual to let D3D do a little extra // Used by ReadFramebufferToMemory and later framebuffer block copies - virtual void BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp) = 0; + virtual void BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp, const char *tag) = 0; void CopyFramebufferForColorTexture(VirtualFramebuffer *dst, VirtualFramebuffer *src, int flags); void EstimateDrawingSize(u32 fb_address, GEBufferFormat fb_format, int viewport_width, int viewport_height, int region_width, int region_height, int scissor_width, int scissor_height, int fb_stride, int &drawing_width, int &drawing_height); @@ -356,7 +364,7 @@ class FramebufferManagerCommon { void DownloadFramebufferOnSwitch(VirtualFramebuffer *vfb); void FindTransferFramebuffers(VirtualFramebuffer *&dstBuffer, VirtualFramebuffer *&srcBuffer, u32 dstBasePtr, int dstStride, int &dstX, int &dstY, u32 srcBasePtr, int srcStride, int &srcX, int &srcY, int &srcWidth, int &srcHeight, int &dstWidth, int &dstHeight, int bpp); VirtualFramebuffer *FindDownloadTempBuffer(VirtualFramebuffer *vfb); - virtual void UpdateDownloadTempBuffer(VirtualFramebuffer *nvfb) = 0; + virtual void UpdateDownloadTempBuffer(VirtualFramebuffer *nvfb) {} VirtualFramebuffer *CreateRAMFramebuffer(uint32_t fbAddress, int width, int height, int stride, GEBufferFormat format); diff --git a/GPU/Common/GPUStateUtils.cpp b/GPU/Common/GPUStateUtils.cpp index fc599c6f3e24..331436b02a8f 100644 --- a/GPU/Common/GPUStateUtils.cpp +++ b/GPU/Common/GPUStateUtils.cpp @@ -575,6 +575,9 @@ void ConvertViewportAndScissor(bool useBufferedRendering, float renderWidth, flo renderHeightFactor = renderHeight / 272.0f; } + _assert_(renderWidthFactor > 0.0); + _assert_(renderHeightFactor > 0.0); + renderX = gstate_c.curRTOffsetX; // Scissor @@ -694,8 +697,11 @@ void ConvertViewportAndScissor(bool useBufferedRendering, float renderWidth, flo out.viewportX = left * renderWidthFactor + displayOffsetX; out.viewportY = top * renderHeightFactor + displayOffsetY; - out.viewportW = (right - left) * renderWidthFactor; - out.viewportH = (bottom - top) * renderHeightFactor; + + // The calculations should end up with zero or positive values, but let's protect against any + // precision issues. See #13921. + out.viewportW = std::max(0.0f, (right - left) * renderWidthFactor); + out.viewportH = std::max(0.0f, (bottom - top) * renderHeightFactor); // The depth viewport parameters are the same, but we handle it a bit differently. // When clipping is enabled, depth is clamped to [0, 65535]. And minz/maxz discard. @@ -958,7 +964,8 @@ void ApplyStencilReplaceAndLogicOpIgnoreBlend(ReplaceAlphaType replaceAlphaWithS bool IsColorWriteMaskComplex(bool allowFramebufferRead) { // Restrict to Outrun temporarily (by uglily reusing the ReinterpretFramebuffers flag) - if (!allowFramebufferRead || !PSP_CoreParameter().compat.flags().ReinterpretFramebuffers) { + // This check must match the one in ConvertMaskState. + if (!allowFramebufferRead || !PSP_CoreParameter().compat.flags().ShaderColorBitmask) { // Don't have a choice - we'll make do but it won't always be right. return false; } @@ -998,7 +1005,9 @@ void ConvertMaskState(GenericMaskState &maskState, bool allowFramebufferRead) { break; default: if (allowFramebufferRead) { - maskState.applyFramebufferRead = true; + // Instead of just 'true', restrict shader bitmasks to Outrun temporarily. + // TODO: This check must match the one in IsColorWriteMaskComplex. + maskState.applyFramebufferRead = PSP_CoreParameter().compat.flags().ShaderColorBitmask; maskState.rgba[i] = true; } else { // Use the old heuristic. @@ -1294,8 +1303,6 @@ void ConvertBlendState(GenericBlendState &blendState, bool allowFramebufferRead) } static void ConvertStencilFunc5551(GenericStencilFuncState &state) { - state.writeMask = state.writeMask >= 0x80 ? 0xff : 0x00; - // Flaws: // - INVERT should convert 1, 5, 0xFF to 0. Currently it won't always. // - INCR twice shouldn't change the value. @@ -1427,13 +1434,19 @@ static void ConvertStencilFunc5551(GenericStencilFuncState &state) { } } +static void ConvertStencilMask5551(GenericStencilFuncState &state) { + state.writeMask = state.writeMask >= 0x80 ? 0xff : 0x00; +} + void ConvertStencilFuncState(GenericStencilFuncState &state) { + // The PSP's mask is reversed (bits not to write.) Ignore enabled, used for clears too. + state.writeMask = (~gstate.getStencilWriteMask()) & 0xFF; state.enabled = gstate.isStencilTestEnabled(); - if (!state.enabled) + if (!state.enabled) { + if (gstate.FrameBufFormat() == GE_FORMAT_5551) + ConvertStencilMask5551(state); return; - - // The PSP's mask is reversed (bits not to write.) - state.writeMask = (~gstate.getStencilWriteMask()) & 0xFF; + } state.sFail = gstate.getStencilOpSFail(); state.zFail = gstate.getStencilOpZFail(); @@ -1449,6 +1462,7 @@ void ConvertStencilFuncState(GenericStencilFuncState &state) { break; case GE_FORMAT_5551: + ConvertStencilMask5551(state); ConvertStencilFunc5551(state); break; diff --git a/GPU/Common/PostShader.cpp b/GPU/Common/PostShader.cpp index 9971650ba53e..e415aa92261f 100644 --- a/GPU/Common/PostShader.cpp +++ b/GPU/Common/PostShader.cpp @@ -161,6 +161,7 @@ void LoadPostShaderInfo(const std::vector &directories) { info.section = section.name(); section.Get("Name", &info.name, section.name().c_str()); section.Get("Compute", &temp, ""); + section.Get("MaxScale", &info.maxScale, 255); info.computeShaderFile = path + "/" + temp; appendTextureShader(info); diff --git a/GPU/Common/PostShader.h b/GPU/Common/PostShader.h index 42aa30d4bc16..b5c1f562f948 100644 --- a/GPU/Common/PostShader.h +++ b/GPU/Common/PostShader.h @@ -70,6 +70,7 @@ struct TextureShaderInfo { std::string name; std::string computeShaderFile; + int maxScale; bool operator == (const std::string &other) { return name == other; diff --git a/GPU/Common/PresentationCommon.cpp b/GPU/Common/PresentationCommon.cpp index 01f698e5b7c9..eb1e8d8cd9a1 100644 --- a/GPU/Common/PresentationCommon.cpp +++ b/GPU/Common/PresentationCommon.cpp @@ -204,7 +204,7 @@ static std::string ReadShaderSrc(const std::string &filename) { return ""; std::string src(data, sz); - free(data); + delete[] data; return src; } @@ -239,14 +239,17 @@ bool PresentationCommon::BuildPostShader(const ShaderInfo *shaderInfo, const Sha return false; } - std::string vsError, fsError; + std::string vsError; + std::string fsError; + + // All post shaders are written in GLSL 1.0 so that's what we pass in here as a "from" language. Draw::ShaderModule *vs = CompileShaderModule(ShaderStage::Vertex, GLSL_1xx, vsSourceGLSL, &vsError); Draw::ShaderModule *fs = CompileShaderModule(ShaderStage::Fragment, GLSL_1xx, fsSourceGLSL, &fsError); // Don't worry, CompileShaderModule makes sure they get freed if one succeeded. if (!fs || !vs) { std::string errorString = vsError + "\n" + fsError; - // DO NOT turn this into a report, as it will pollute our logs with all kinds of + // DO NOT turn this into an ERROR_LOG_REPORT, as it will pollute our logs with all kinds of // user shader experiments. ERROR_LOG(FRAMEBUF, "Failed to build post-processing program from %s and %s!\n%s", shaderInfo->vertexShaderFile.c_str(), shaderInfo->fragmentShaderFile.c_str(), errorString.c_str()); ShowPostShaderError(errorString); @@ -261,6 +264,7 @@ bool PresentationCommon::BuildPostShader(const ShaderInfo *shaderInfo, const Sha { "u_setting", 4, 4, UniformType::FLOAT4, offsetof(PostShaderUniforms, setting) }, { "u_video", 5, 5, UniformType::FLOAT1, offsetof(PostShaderUniforms, video) }, } }; + Draw::Pipeline *pipeline = CreatePipeline({ vs, fs }, true, &postShaderDesc); if (!pipeline) return false; @@ -351,7 +355,7 @@ void PresentationCommon::ShowPostShaderError(const std::string &errorString) { } } if (!firstLine.empty()) { - host->NotifyUserMessage("Post-shader error: " + firstLine + "...", 10.0f, 0xFF3090FF); + host->NotifyUserMessage("Post-shader error: " + firstLine + "...:\n" + errorString, 10.0f, 0xFF3090FF); } else { host->NotifyUserMessage("Post-shader error, see log for details", 10.0f, 0xFF3090FF); } @@ -470,8 +474,8 @@ Draw::ShaderModule *PresentationCommon::CompileShaderModule(ShaderStage stage, S bool translationFailed = false; if (lang != lang_) { // Gonna have to upconvert the shader. - if (!TranslateShader(&translated, lang_, nullptr, src, lang, stage, errorString)) { - ERROR_LOG(FRAMEBUF, "Failed to translate post-shader: %s", errorString->c_str()); + if (!TranslateShader(&translated, lang_, draw_->GetShaderLanguageDesc(), nullptr, src, lang, stage, errorString)) { + ERROR_LOG(FRAMEBUF, "Failed to translate post-shader. Error string: '%s'\nSource code:\n%s\n", errorString->c_str(), src.c_str()); return nullptr; } } diff --git a/GPU/Common/ReinterpretFramebuffer.cpp b/GPU/Common/ReinterpretFramebuffer.cpp index 8c824a9b44ee..4793278f03bd 100644 --- a/GPU/Common/ReinterpretFramebuffer.cpp +++ b/GPU/Common/ReinterpretFramebuffer.cpp @@ -5,7 +5,7 @@ #include "GPU/Common/ReinterpretFramebuffer.h" static const VaryingDef varyings[1] = { - { "vec2", "v_texcoord", "TEXCOORD0" }, + { "vec2", "v_texcoord", "TEXCOORD0", 0, "highp" }, }; // TODO: We could possibly have an option to preserve any extra color precision? But gonna start without it. @@ -18,6 +18,8 @@ bool GenerateReinterpretFragmentShader(char *buffer, GEBufferFormat from, GEBuff ShaderWriter writer(buffer, lang, ShaderStage::Fragment, nullptr, 0); + writer.HighPrecisionFloat(); + writer.DeclareSampler2D("samp", 0); writer.DeclareTexture2D("tex", 0); diff --git a/GPU/Common/ShaderId.cpp b/GPU/Common/ShaderId.cpp index 88ac081cd36e..e1097ff21058 100644 --- a/GPU/Common/ShaderId.cpp +++ b/GPU/Common/ShaderId.cpp @@ -56,11 +56,12 @@ std::string VertexShaderDesc(const VShaderID &id) { if (id.Bit(VS_BIT_HAS_TEXCOORD_TESS)) desc << "TessT "; if (id.Bit(VS_BIT_HAS_NORMAL_TESS)) desc << "TessN "; if (id.Bit(VS_BIT_NORM_REVERSE_TESS)) desc << "TessRevN "; + if (id.Bit(VS_BIT_VERTEX_RANGE_CULLING)) desc << "Cull "; return desc.str(); } -void ComputeVertexShaderID(VShaderID *id_out, u32 vertType, bool useHWTransform, bool useHWTessellation) { +void ComputeVertexShaderID(VShaderID *id_out, u32 vertType, bool useHWTransform, bool useHWTessellation, bool weightsAsFloat) { bool isModeThrough = (vertType & GE_VTYPE_THROUGH) != 0; bool doTexture = gstate.isTextureMapEnabled() && !gstate.isModeClear(); bool doShadeMapping = doTexture && (gstate.getUVGenMode() == GE_TEXMAP_ENVIRONMENT_MAP); @@ -70,17 +71,20 @@ void ComputeVertexShaderID(VShaderID *id_out, u32 vertType, bool useHWTransform, bool hasNormal = (vertType & GE_VTYPE_NRM_MASK) != 0; bool hasTexcoord = (vertType & GE_VTYPE_TC_MASK) != 0; - bool doBezier = gstate_c.bezier; - bool doSpline = gstate_c.spline; + bool doBezier = gstate_c.submitType == SubmitType::HW_BEZIER; + bool doSpline = gstate_c.submitType == SubmitType::HW_SPLINE; bool enableFog = gstate.isFogEnabled() && !isModeThrough && !gstate.isModeClear(); bool lmode = gstate.isUsingSecondaryColor() && gstate.isLightingEnabled() && !isModeThrough; + bool vertexRangeCulling = gstate_c.Supports(GPU_SUPPORTS_VS_RANGE_CULLING) && + !isModeThrough && gstate_c.submitType == SubmitType::DRAW; // neither hw nor sw spline/bezier. See #11692 VShaderID id; id.SetBit(VS_BIT_LMODE, lmode); id.SetBit(VS_BIT_IS_THROUGH, isModeThrough); id.SetBit(VS_BIT_ENABLE_FOG, enableFog); id.SetBit(VS_BIT_HAS_COLOR, hasColor); + id.SetBit(VS_BIT_VERTEX_RANGE_CULLING, vertexRangeCulling); if (doTexture) { id.SetBit(VS_BIT_DO_TEXTURE); @@ -108,7 +112,7 @@ void ComputeVertexShaderID(VShaderID *id_out, u32 vertType, bool useHWTransform, id.SetBits(VS_BIT_BONES, 3, TranslateNumBones(vertTypeGetNumBoneWeights(vertType)) - 1); // 2 bits. We should probably send in the weight scalefactor as a uniform instead, // or simply preconvert all weights to floats. - id.SetBits(VS_BIT_WEIGHT_FMTSCALE, 2, (vertType & GE_VTYPE_WEIGHT_MASK) >> GE_VTYPE_WEIGHT_SHIFT); + id.SetBits(VS_BIT_WEIGHT_FMTSCALE, 2, weightsAsFloat ? 0 : (vertType & GE_VTYPE_WEIGHT_MASK) >> GE_VTYPE_WEIGHT_SHIFT); } if (gstate.isLightingEnabled()) { @@ -265,6 +269,7 @@ void ComputeFragmentShaderID(FShaderID *id_out, const Draw::Bugs &bugs) { id.SetBit(FS_BIT_TEXTURE_AT_OFFSET, textureAtOffset); } id.SetBit(FS_BIT_BGRA_TEXTURE, gstate_c.bgraTexture); + id.SetBit(FS_BIT_SHADER_DEPAL, useShaderDepal); } id.SetBit(FS_BIT_LMODE, lmode); @@ -310,7 +315,6 @@ void ComputeFragmentShaderID(FShaderID *id_out, const Draw::Bugs &bugs) { } id.SetBit(FS_BIT_FLATSHADE, doFlatShading); - id.SetBit(FS_BIT_SHADER_DEPAL, useShaderDepal); id.SetBit(FS_BIT_COLOR_WRITEMASK, colorWriteMask); if (g_Config.bVendorBugChecksEnabled) { diff --git a/GPU/Common/ShaderId.h b/GPU/Common/ShaderId.h index 5ae71487ad5b..d2e49d0e9ecc 100644 --- a/GPU/Common/ShaderId.h +++ b/GPU/Common/ShaderId.h @@ -15,7 +15,7 @@ enum VShaderBit : uint8_t { VS_BIT_ENABLE_FOG = 2, VS_BIT_HAS_COLOR = 3, VS_BIT_DO_TEXTURE = 4, - // 5 is free. + VS_BIT_VERTEX_RANGE_CULLING = 5, // 6 is free, // 7 is free. VS_BIT_USE_HW_TRANSFORM = 8, @@ -225,7 +225,7 @@ class Bugs; } -void ComputeVertexShaderID(VShaderID *id, uint32_t vertexType, bool useHWTransform, bool useHWTessellation); +void ComputeVertexShaderID(VShaderID *id, uint32_t vertexType, bool useHWTransform, bool useHWTessellation, bool weightsAsFloat); // Generates a compact string that describes the shader. Useful in a list to get an overview // of the current flora of shaders. std::string VertexShaderDesc(const VShaderID &id); diff --git a/GPU/Common/ShaderUniforms.cpp b/GPU/Common/ShaderUniforms.cpp index bf2b540db5b8..7860ed9ca838 100644 --- a/GPU/Common/ShaderUniforms.cpp +++ b/GPU/Common/ShaderUniforms.cpp @@ -215,7 +215,7 @@ void BaseUpdateUniforms(UB_VS_FS_Base *ub, uint64_t dirtyUniforms, bool flipView const int h = gstate.getTextureHeight(0); const float widthFactor = (float)w * invW; const float heightFactor = (float)h * invH; - if (gstate_c.bezier || gstate_c.spline) { + if (gstate_c.submitType == SubmitType::HW_BEZIER || gstate_c.submitType == SubmitType::HW_SPLINE) { // When we are generating UV coordinates through the bezier/spline, we need to apply the scaling. // However, this is missing a check that we're not getting our UV:s supplied for us in the vertices. ub->uvScaleOffset[0] = gstate_c.uv.uScale * widthFactor; diff --git a/GPU/Common/ShaderUniforms.h b/GPU/Common/ShaderUniforms.h index 0959be328bbf..5292a1049475 100644 --- a/GPU/Common/ShaderUniforms.h +++ b/GPU/Common/ShaderUniforms.h @@ -66,7 +66,7 @@ R"( mat4 u_proj; vec3 u_texenv; ivec4 u_alphacolorref; ivec4 u_alphacolormask; - vec3 u_blendFixA; uint colorWriteMask; + vec3 u_blendFixA; vec3 u_blendFixB; vec4 u_texclamp; vec2 u_texclampoff; diff --git a/GPU/Common/SoftwareTransformCommon.cpp b/GPU/Common/SoftwareTransformCommon.cpp index 0a369204b92a..89a4606450c7 100644 --- a/GPU/Common/SoftwareTransformCommon.cpp +++ b/GPU/Common/SoftwareTransformCommon.cpp @@ -471,8 +471,8 @@ void SoftwareTransform::Decode(int prim, u32 vertType, const DecVtxFormat &decVt if (!result->setSafeSize && prim == GE_PRIM_RECTANGLES && maxIndex == 2) { bool clearingColor = gstate.isModeClear() && (gstate.isClearModeColorMask() || gstate.isClearModeAlphaMask()); bool writingColor = gstate.getColorMask() != 0xFFFFFFFF; - bool startsZeroX = transformed[0].x <= 0.0f && transformed[1].x > transformed[0].x; - bool startsZeroY = transformed[0].y <= 0.0f && transformed[1].y > transformed[0].y; + bool startsZeroX = transformed[0].x <= 0.0f && transformed[1].x > 0.0f && transformed[1].x > transformed[0].x; + bool startsZeroY = transformed[0].y <= 0.0f && transformed[1].y > 0.0f && transformed[1].y > transformed[0].y; if (startsZeroX && startsZeroY && (clearingColor || writingColor)) { int scissorX2 = gstate.getScissorX2() + 1; diff --git a/GPU/Common/TextureCacheCommon.cpp b/GPU/Common/TextureCacheCommon.cpp index dd67d94ab186..91f54c06ff8a 100644 --- a/GPU/Common/TextureCacheCommon.cpp +++ b/GPU/Common/TextureCacheCommon.cpp @@ -569,6 +569,10 @@ std::vector TextureCacheCommon::GetFramebufferCandidates(const std::vector candidates; FramebufferNotificationChannel channel = Memory::IsDepthTexVRAMAddress(entry.addr) ? FramebufferNotificationChannel::NOTIFY_FB_DEPTH : FramebufferNotificationChannel::NOTIFY_FB_COLOR; + if (channel == FramebufferNotificationChannel::NOTIFY_FB_DEPTH && !gstate_c.Supports(GPU_SUPPORTS_DEPTH_TEXTURE)) { + // Depth texture not supported. Don't try to match it, fall back to the memory behind.. + return std::vector(); + } const std::vector &framebuffers = framebufferManager_->Framebuffers(); @@ -612,6 +616,8 @@ int TextureCacheCommon::GetBestCandidateIndex(const std::vector case FramebufferMatch::VALID: relevancy += 1000; break; + default: + break; } // Bonus point for matching stride. @@ -787,6 +793,8 @@ void TextureCacheCommon::NotifyFramebuffer(VirtualFramebuffer *framebuffer, Fram } break; } + default: + break; } } @@ -954,10 +962,9 @@ void TextureCacheCommon::SetTextureFramebuffer(const AttachCandidate &candidate) FramebufferMatchInfo fbInfo = candidate.match; if (candidate.match.reinterpret) { - // TODO: Kinda ugly, maybe switch direction of the call? GEBufferFormat oldFormat = candidate.fb->format; candidate.fb->format = candidate.match.reinterpretTo; - framebufferManager_->ReinterpretFramebufferFrom(candidate.fb, oldFormat); + framebufferManager_->ReinterpretFramebuffer(candidate.fb, oldFormat, candidate.match.reinterpretTo); } _dbg_assert_msg_(framebuffer != nullptr, "Framebuffer must not be null."); @@ -1055,7 +1062,7 @@ void TextureCacheCommon::NotifyConfigChanged() { scaleFactor = g_Config.iTexScalingLevel; } - if (!gstate_c.Supports(GPU_SUPPORTS_OES_TEXTURE_NPOT)) { + if (!gstate_c.Supports(GPU_SUPPORTS_TEXTURE_NPOT)) { // Reduce the scale factor to a power of two (e.g. 2 or 4) if textures must be a power of two. while ((scaleFactor & (scaleFactor - 1)) != 0) { --scaleFactor; diff --git a/GPU/Common/VertexDecoderCommon.cpp b/GPU/Common/VertexDecoderCommon.cpp index d0cdbb5b29ba..0f46ea522c6c 100644 --- a/GPU/Common/VertexDecoderCommon.cpp +++ b/GPU/Common/VertexDecoderCommon.cpp @@ -1350,10 +1350,10 @@ std::string VertexDecoder::GetString(DebugShaderStringType stringType) { lines = DisassembleArm64((const u8 *)jitted_, jittedSize_); #elif PPSSPP_ARCH(ARM) lines = DisassembleArm2((const u8 *)jitted_, jittedSize_); -#elif PPSSPP_ARCH(MIPS) || PPSSPP_ARCH(MIPS64) - // No MIPS disassembler defined -#else +#elif PPSSPP_ARCH(X86) || PPSSPP_ARCH(AMD64) lines = DisassembleX86((const u8 *)jitted_, jittedSize_); +#else + // No disassembler defined #endif std::string buffer; for (auto line : lines) { @@ -1390,5 +1390,7 @@ VertexDecoderJitCache::VertexDecoderJitCache() } void VertexDecoderJitCache::Clear() { - ClearCodeSpace(0); + if (g_Config.iCpuCore == (int)CPUCore::JIT) { + ClearCodeSpace(0); + } } diff --git a/GPU/Common/VertexDecoderX86.cpp b/GPU/Common/VertexDecoderX86.cpp index 6fb69c99dfc7..a3c6f15e4149 100644 --- a/GPU/Common/VertexDecoderX86.cpp +++ b/GPU/Common/VertexDecoderX86.cpp @@ -53,7 +53,7 @@ alignas(16) static const float by16384[4] = { 1.0f / 16384.0f, 1.0f / 16384.0f, 1.0f / 16384.0f, 1.0f / 16384.0f, }; -#ifdef _M_X64 +#if PPSSPP_ARCH(AMD64) #ifdef _WIN32 static const X64Reg tempReg1 = RAX; static const X64Reg tempReg2 = R9; @@ -185,7 +185,7 @@ JittedVertexDecoder VertexDecoderJitCache::Compile(const VertexDecoder &dec, int // Parameters automatically fall into place. // This will align the stack properly to 16 bytes (the call of this function pushed RIP, which is 8 bytes). - const uint8_t STACK_FIXED_ALLOC = 64 + 8; + const uint8_t STACK_FIXED_ALLOC = 96 + 8; #endif // Allocate temporary storage on the stack. @@ -197,6 +197,10 @@ JittedVertexDecoder VertexDecoderJitCache::Compile(const VertexDecoder &dec, int MOVUPS(MDisp(ESP, 16), XMM5); MOVUPS(MDisp(ESP, 32), XMM6); MOVUPS(MDisp(ESP, 48), XMM7); +#if PPSSPP_ARCH(AMD64) + MOVUPS(MDisp(ESP, 64), XMM8); + MOVUPS(MDisp(ESP, 80), XMM9); +#endif bool prescaleStep = false; // Look for prescaled texcoord steps @@ -273,9 +277,13 @@ JittedVertexDecoder VertexDecoderJitCache::Compile(const VertexDecoder &dec, int MOVUPS(XMM5, MDisp(ESP, 16)); MOVUPS(XMM6, MDisp(ESP, 32)); MOVUPS(XMM7, MDisp(ESP, 48)); +#if PPSSPP_ARCH(AMD64) + MOVUPS(XMM8, MDisp(ESP, 64)); + MOVUPS(XMM9, MDisp(ESP, 80)); +#endif ADD(PTRBITS, R(ESP), Imm8(STACK_FIXED_ALLOC)); -#ifdef _M_IX86 +#if PPSSPP_ARCH(X86) // Restore register values POP(EBP); POP(EBX); @@ -462,7 +470,7 @@ void VertexDecoderJitCache::Jit_WeightsFloat() { void VertexDecoderJitCache::Jit_WeightsU8Skin() { MOV(PTRBITS, R(tempReg2), ImmPtr(&bones)); -#ifdef _M_X64 +#if PPSSPP_ARCH(AMD64) if (dec_->nweights > 4) { // This reads 8 bytes, we split the top 4 so we can expand each set of 4. MOVQ_xmm(XMM8, MDisp(srcReg, dec_->weightoff)); @@ -514,7 +522,7 @@ void VertexDecoderJitCache::Jit_WeightsU8Skin() { for (int j = 0; j < dec_->nweights; j++) { X64Reg weight = XMM1; -#ifdef _M_X64 +#if PPSSPP_ARCH(AMD64) X64Reg weightSrc = j < 4 ? XMM8 : XMM9; if (j == 3 || j == dec_->nweights - 1) { // In the previous iteration, we already spread this value to all lanes. @@ -572,7 +580,7 @@ void VertexDecoderJitCache::Jit_WeightsU8Skin() { void VertexDecoderJitCache::Jit_WeightsU16Skin() { MOV(PTRBITS, R(tempReg2), ImmPtr(&bones)); -#ifdef _M_X64 +#if PPSSPP_ARCH(AMD64) if (dec_->nweights > 6) { // Since this is probably not aligned, two MOVQs are better than one MOVDQU. MOVQ_xmm(XMM8, MDisp(srcReg, dec_->weightoff)); @@ -628,7 +636,7 @@ void VertexDecoderJitCache::Jit_WeightsU16Skin() { for (int j = 0; j < dec_->nweights; j++) { X64Reg weight = XMM1; -#ifdef _M_X64 +#if PPSSPP_ARCH(AMD64) X64Reg weightSrc = j < 4 ? XMM8 : XMM9; if (j == 3 || j == dec_->nweights - 1) { // In the previous iteration, we already spread this value to all lanes. @@ -726,7 +734,7 @@ void VertexDecoderJitCache::Jit_TcU16ToFloat() { } void VertexDecoderJitCache::Jit_TcFloat() { -#ifdef _M_X64 +#if PPSSPP_ARCH(AMD64) MOV(64, R(tempReg1), MDisp(srcReg, dec_->tcoff)); MOV(64, MDisp(dstReg, dec_->decFmt.uvoff), R(tempReg1)); #else @@ -907,7 +915,7 @@ void VertexDecoderJitCache::Jit_TcU16ThroughToFloat() { } void VertexDecoderJitCache::Jit_TcFloatThrough() { -#ifdef _M_X64 +#if PPSSPP_ARCH(AMD64) MOV(64, R(tempReg1), MDisp(srcReg, dec_->tcoff)); MOV(64, MDisp(dstReg, dec_->decFmt.uvoff), R(tempReg1)); #else diff --git a/GPU/Common/VertexShaderGenerator.cpp b/GPU/Common/VertexShaderGenerator.cpp index a36259ac55b0..33fccab57b78 100644 --- a/GPU/Common/VertexShaderGenerator.cpp +++ b/GPU/Common/VertexShaderGenerator.cpp @@ -22,6 +22,7 @@ #include "Common/StringUtils.h" #include "Common/GPU/OpenGL/GLFeatures.h" #include "Common/GPU/ShaderWriter.h" +#include "Common/GPU/thin3d.h" #include "Core/Config.h" #include "GPU/ge_constants.h" #include "GPU/GPUState.h" @@ -126,7 +127,7 @@ static const char * const boneWeightDecl[9] = { extern const char *vulkan_glsl_preamble_vs; extern const char *hlsl_preamble_vs; -bool GenerateVertexShader(const VShaderID &id, char *buffer, const ShaderLanguageDesc &compat, uint32_t *attrMask, uint64_t *uniformMask, std::string *errorString) { +bool GenerateVertexShader(const VShaderID &id, char *buffer, const ShaderLanguageDesc &compat, Draw::Bugs bugs, uint32_t *attrMask, uint64_t *uniformMask, std::string *errorString) { *attrMask = 0; *uniformMask = 0; @@ -151,7 +152,9 @@ bool GenerateVertexShader(const VShaderID &id, char *buffer, const ShaderLanguag // this is only valid for some settings of uvGenMode GETexProjMapMode uvProjMode = static_cast(id.Bits(VS_BIT_UVPROJ_MODE, 2)); bool doShadeMapping = uvGenMode == GE_TEXMAP_ENVIRONMENT_MAP; - bool doFlatShading = id.Bit(VS_BIT_FLATSHADE); + + bool flatBug = bugs.Has(Draw::Bugs::BROKEN_FLAT_IN_SHADER) && g_Config.bVendorBugChecksEnabled; + bool doFlatShading = id.Bit(VS_BIT_FLATSHADE) && !flatBug; bool useHWTransform = id.Bit(VS_BIT_USE_HW_TRANSFORM); bool hasColor = id.Bit(VS_BIT_HAS_COLOR) || !useHWTransform; @@ -207,6 +210,8 @@ bool GenerateVertexShader(const VShaderID &id, char *buffer, const ShaderLanguag } bool texCoordInVec3 = false; + bool vertexRangeCulling = id.Bit(VS_BIT_VERTEX_RANGE_CULLING); + if (compat.shaderLanguage == GLSL_VULKAN) { WRITE(p, "\n"); WRITE(p, "layout (std140, set = 0, binding = 3) uniform baseVars {\n%s};\n", ub_baseStr); @@ -241,18 +246,18 @@ bool GenerateVertexShader(const VShaderID &id, char *buffer, const ShaderLanguag WRITE(p, "layout (location = %d) in vec3 color1;\n", (int)PspAttributeLocation::COLOR1); } - WRITE(p, "layout (location = 1) %sout vec4 v_color0;\n", shading); + WRITE(p, "layout (location = 1) %sout lowp vec4 v_color0;\n", shading); if (lmode) { - WRITE(p, "layout (location = 2) %sout vec3 v_color1;\n", shading); + WRITE(p, "layout (location = 2) %sout lowp vec3 v_color1;\n", shading); } if (doTexture) { - WRITE(p, "layout (location = 0) out vec3 v_texcoord;\n"); + WRITE(p, "layout (location = 0) out highp vec3 v_texcoord;\n"); } if (enableFog) { // See the fragment shader generator - WRITE(p, "layout (location = 3) out float v_fogdepth;\n"); + WRITE(p, "layout (location = 3) out highp float v_fogdepth;\n"); } } else if (compat.shaderLanguage == HLSL_D3D11 || compat.shaderLanguage == HLSL_D3D9) { // Note: These two share some code after this hellishly large if/else. @@ -819,9 +824,9 @@ bool GenerateVertexShader(const VShaderID &id, char *buffer, const ShaderLanguag // Uncomment this to screw up bone shaders to check the vertex shader software fallback // WRITE(p, "THIS SHOULD ERROR! #error"); if (numBoneWeights == 1 && ShaderLanguageIsOpenGL(compat.shaderLanguage)) - WRITE(p, " %s skinMatrix = w1 * u_bone0", boneMatrix); + WRITE(p, " %s skinMatrix = mul(w1, u_bone0)", boneMatrix); else - WRITE(p, " %s skinMatrix = w1.x * u_bone0", boneMatrix); + WRITE(p, " %s skinMatrix = mul(w1.x, u_bone0)", boneMatrix); for (int i = 1; i < numBoneWeights; i++) { const char *weightAttr = boneWeightAttr[i]; // workaround for "cant do .x of scalar" issue. @@ -829,7 +834,7 @@ bool GenerateVertexShader(const VShaderID &id, char *buffer, const ShaderLanguag if (numBoneWeights == 1 && i == 0) weightAttr = "w1"; if (numBoneWeights == 5 && i == 4) weightAttr = "w2"; } - WRITE(p, " + %s * u_bone%i", weightAttr, i); + WRITE(p, " + mul(%s, u_bone%i)", weightAttr, i); } WRITE(p, ";\n"); @@ -1086,7 +1091,7 @@ bool GenerateVertexShader(const VShaderID &id, char *buffer, const ShaderLanguag WRITE(p, " %sv_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;\n", compat.vsOutPrefix); } - if (!isModeThrough && gstate_c.Supports(GPU_SUPPORTS_VS_RANGE_CULLING)) { + if (vertexRangeCulling) { WRITE(p, " vec3 projPos = outPos.xyz / outPos.w;\n"); // Vertex range culling doesn't happen when depth is clamped, so only do this if in range. WRITE(p, " if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) {\n"); @@ -1100,6 +1105,13 @@ bool GenerateVertexShader(const VShaderID &id, char *buffer, const ShaderLanguag // We've named the output gl_Position in HLSL as well. WRITE(p, " %sgl_Position = outPos;\n", compat.vsOutPrefix); + + if (gstate_c.Supports(GPU_NEEDS_Z_EQUAL_W_HACK)) { + // See comment in GPU_Vulkan.cpp. + WRITE(p, " if (%sgl_Position.z == %sgl_Position.w) %sgl_Position.z *= 0.999999;\n", + compat.vsOutPrefix, compat.vsOutPrefix, compat.vsOutPrefix); + } + if (compat.shaderLanguage == GLSL_VULKAN) { WRITE(p, " gl_PointSize = 1.0;\n"); } diff --git a/GPU/Common/VertexShaderGenerator.h b/GPU/Common/VertexShaderGenerator.h index df62f76289af..65b151e9f4ef 100644 --- a/GPU/Common/VertexShaderGenerator.h +++ b/GPU/Common/VertexShaderGenerator.h @@ -21,10 +21,11 @@ #include "Common/CommonTypes.h" #include "Common/GPU/Shader.h" +#include "Common/GPU/thin3d.h" struct VShaderID; -bool GenerateVertexShader(const VShaderID &id, char *buffer, const ShaderLanguageDesc &compat, uint32_t *attrMask, uint64_t *uniformMask, std::string *errorString); +bool GenerateVertexShader(const VShaderID &id, char *buffer, const ShaderLanguageDesc &compat, const Draw::Bugs bugs, uint32_t *attrMask, uint64_t *uniformMask, std::string *errorString); // D3D9 constants. enum { diff --git a/GPU/D3D11/DrawEngineD3D11.cpp b/GPU/D3D11/DrawEngineD3D11.cpp index fbfd4f820fea..05537d2eea10 100644 --- a/GPU/D3D11/DrawEngineD3D11.cpp +++ b/GPU/D3D11/DrawEngineD3D11.cpp @@ -341,7 +341,7 @@ void DrawEngineD3D11::DoFlush() { ApplyDrawState(prim); // Always use software for flat shading to fix the provoking index. - bool tess = gstate_c.bezier || gstate_c.spline; + bool tess = gstate_c.submitType == SubmitType::HW_BEZIER || gstate_c.submitType == SubmitType::HW_SPLINE; bool useHWTransform = CanUseHardwareTransform(prim) && (tess || gstate.getShadeMode() != GE_SHADE_FLAT); if (useHWTransform) { @@ -523,7 +523,7 @@ void DrawEngineD3D11::DoFlush() { D3D11VertexShader *vshader; D3D11FragmentShader *fshader; - shaderManager_->GetShaders(prim, lastVType_, &vshader, &fshader, useHWTransform, useHWTessellation_); + shaderManager_->GetShaders(prim, lastVType_, &vshader, &fshader, useHWTransform, useHWTessellation_, decOptions_.expandAllWeightsToFloat); ID3D11InputLayout *inputLayout = SetupDecFmtForDraw(vshader, dec_->GetDecVtxFmt(), dec_->VertexType()); context_->PSSetShader(fshader->GetShader(), nullptr, 0); context_->VSSetShader(vshader->GetShader(), nullptr, 0); @@ -609,7 +609,7 @@ void DrawEngineD3D11::DoFlush() { D3D11VertexShader *vshader; D3D11FragmentShader *fshader; - shaderManager_->GetShaders(prim, lastVType_, &vshader, &fshader, false, false); + shaderManager_->GetShaders(prim, lastVType_, &vshader, &fshader, false, false, decOptions_.expandAllWeightsToFloat); context_->PSSetShader(fshader->GetShader(), nullptr, 0); context_->VSSetShader(vshader->GetShader(), nullptr, 0); shaderManager_->UpdateUniforms(framebufferManager_->UseBufferedRendering()); diff --git a/GPU/D3D11/FramebufferManagerD3D11.cpp b/GPU/D3D11/FramebufferManagerD3D11.cpp index 71234a69c9a3..fbafe0428530 100644 --- a/GPU/D3D11/FramebufferManagerD3D11.cpp +++ b/GPU/D3D11/FramebufferManagerD3D11.cpp @@ -36,7 +36,6 @@ #include "GPU/Debugger/Stepping.h" #include "GPU/Common/FramebufferManagerCommon.h" #include "GPU/Common/PresentationCommon.h" -#include "Common/GPU/ShaderTranslation.h" #include "GPU/Common/TextureDecoder.h" #include "GPU/D3D11/FramebufferManagerD3D11.h" #include "GPU/D3D11/ShaderManagerD3D11.h" @@ -125,15 +124,11 @@ FramebufferManagerD3D11::FramebufferManagerD3D11(Draw::DrawContext *draw) uint32_t nullData[1]{}; context_->UpdateSubresource(nullTexture_, 0, nullptr, nullData, 1, 0); - ShaderTranslationInit(); - presentation_->SetLanguage(HLSL_D3D11); preferredPixelsFormat_ = Draw::DataFormat::B8G8R8A8_UNORM; } FramebufferManagerD3D11::~FramebufferManagerD3D11() { - ShaderTranslationShutdown(); - // Drawing cleanup if (quadVertexShader_) quadVertexShader_->Release(); @@ -277,10 +272,6 @@ static void CopyPixelDepthOnly(u32 *dstp, const u32 *srcp, size_t c) { } } -void FramebufferManagerD3D11::UpdateDownloadTempBuffer(VirtualFramebuffer *nvfb) { - // Nothing to do here. -} - void FramebufferManagerD3D11::SimpleBlit( Draw::Framebuffer *dest, float destX1, float destY1, float destX2, float destY2, Draw::Framebuffer *src, float srcX1, float srcY1, float srcX2, float srcY2, bool linearFilter) { @@ -335,7 +326,7 @@ void FramebufferManagerD3D11::SimpleBlit( gstate_c.Dirty(DIRTY_BLEND_STATE | DIRTY_DEPTHSTENCIL_STATE | DIRTY_RASTER_STATE | DIRTY_VIEWPORTSCISSOR_STATE | DIRTY_VERTEXSHADER_STATE); } -void FramebufferManagerD3D11::BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp) { +void FramebufferManagerD3D11::BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp, const char *tag) { if (!dst->fbo || !src->fbo || !useBufferedRendering_) { // This can happen if they recently switched from non-buffered. if (useBufferedRendering_) { @@ -377,6 +368,8 @@ void FramebufferManagerD3D11::BlitFramebuffer(VirtualFramebuffer *dst, int dstX, dst->fbo, dstX1, dstY1, dstX2, dstY2, srcFBO, srcX1, srcY1, srcX2, srcY2, false); + + draw_->BindTexture(0, nullptr); } // Nobody calls this yet. diff --git a/GPU/D3D11/FramebufferManagerD3D11.h b/GPU/D3D11/FramebufferManagerD3D11.h index dc2bc15e944c..9f0f3e0ef8b3 100644 --- a/GPU/D3D11/FramebufferManagerD3D11.h +++ b/GPU/D3D11/FramebufferManagerD3D11.h @@ -52,9 +52,7 @@ class FramebufferManagerD3D11 : public FramebufferManagerCommon { protected: // Used by ReadFramebufferToMemory and later framebuffer block copies - void BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp) override; - - void UpdateDownloadTempBuffer(VirtualFramebuffer *nvfb) override; + void BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp, const char *tag) override; private: void Bind2DShader() override; diff --git a/GPU/D3D11/GPU_D3D11.cpp b/GPU/D3D11/GPU_D3D11.cpp index 6207358c73ca..136f81d188ef 100644 --- a/GPU/D3D11/GPU_D3D11.cpp +++ b/GPU/D3D11/GPU_D3D11.cpp @@ -125,7 +125,7 @@ GPU_D3D11::~GPU_D3D11() { void GPU_D3D11::CheckGPUFeatures() { u32 features = 0; - if (!PSP_CoreParameter().compat.flags().DepthRangeHack) { + if (!PSP_CoreParameter().compat.flags().DisableRangeCulling) { features |= GPU_SUPPORTS_VS_RANGE_CULLING; } features |= GPU_SUPPORTS_BLEND_MINMAX; @@ -140,7 +140,8 @@ void GPU_D3D11::CheckGPUFeatures() { features |= GPU_SUPPORTS_ANISOTROPY; #endif - features |= GPU_SUPPORTS_OES_TEXTURE_NPOT; + features |= GPU_SUPPORTS_DEPTH_TEXTURE; + features |= GPU_SUPPORTS_TEXTURE_NPOT; if (draw_->GetDeviceCaps().dualSourceBlend) features |= GPU_SUPPORTS_DUALSOURCE_BLEND; if (draw_->GetDeviceCaps().depthClampSupported) diff --git a/GPU/D3D11/ShaderManagerD3D11.cpp b/GPU/D3D11/ShaderManagerD3D11.cpp index 255c547ee99f..8d612e2fc96a 100644 --- a/GPU/D3D11/ShaderManagerD3D11.cpp +++ b/GPU/D3D11/ShaderManagerD3D11.cpp @@ -177,13 +177,13 @@ void ShaderManagerD3D11::BindUniforms() { context_->PSSetConstantBuffers(0, 1, ps_cbs); } -void ShaderManagerD3D11::GetShaders(int prim, u32 vertType, D3D11VertexShader **vshader, D3D11FragmentShader **fshader, bool useHWTransform, bool useHWTessellation) { +void ShaderManagerD3D11::GetShaders(int prim, u32 vertType, D3D11VertexShader **vshader, D3D11FragmentShader **fshader, bool useHWTransform, bool useHWTessellation, bool weightsAsFloat) { VShaderID VSID; FShaderID FSID; if (gstate_c.IsDirty(DIRTY_VERTEXSHADER_STATE)) { gstate_c.Clean(DIRTY_VERTEXSHADER_STATE); - ComputeVertexShaderID(&VSID, vertType, useHWTransform, useHWTessellation); + ComputeVertexShaderID(&VSID, vertType, useHWTransform, useHWTessellation, weightsAsFloat); } else { VSID = lastVSID_; } @@ -210,7 +210,7 @@ void ShaderManagerD3D11::GetShaders(int prim, u32 vertType, D3D11VertexShader ** std::string genErrorString; uint32_t attrMask; uint64_t uniformMask; - GenerateVertexShader(VSID, codeBuffer_, draw_->GetShaderLanguageDesc(), &attrMask, &uniformMask, &genErrorString); + GenerateVertexShader(VSID, codeBuffer_, draw_->GetShaderLanguageDesc(), draw_->GetBugs(), &attrMask, &uniformMask, &genErrorString); vs = new D3D11VertexShader(device_, featureLevel_, VSID, codeBuffer_, vertType, useHWTransform); vsCache_[VSID] = vs; } else { @@ -224,7 +224,7 @@ void ShaderManagerD3D11::GetShaders(int prim, u32 vertType, D3D11VertexShader ** // Fragment shader not in cache. Let's compile it. std::string genErrorString; uint64_t uniformMask; - GenerateFragmentShader(FSID, codeBuffer_, draw_->GetShaderLanguageDesc(), &uniformMask, &genErrorString); + GenerateFragmentShader(FSID, codeBuffer_, draw_->GetShaderLanguageDesc(), draw_->GetBugs(), &uniformMask, &genErrorString); fs = new D3D11FragmentShader(device_, featureLevel_, FSID, codeBuffer_, useHWTransform); fsCache_[FSID] = fs; } else { diff --git a/GPU/D3D11/ShaderManagerD3D11.h b/GPU/D3D11/ShaderManagerD3D11.h index fe21710ad929..e0ac25728361 100644 --- a/GPU/D3D11/ShaderManagerD3D11.h +++ b/GPU/D3D11/ShaderManagerD3D11.h @@ -85,7 +85,7 @@ class ShaderManagerD3D11 : public ShaderManagerCommon { ShaderManagerD3D11(Draw::DrawContext *draw, ID3D11Device *device, ID3D11DeviceContext *context, D3D_FEATURE_LEVEL featureLevel); ~ShaderManagerD3D11(); - void GetShaders(int prim, u32 vertType, D3D11VertexShader **vshader, D3D11FragmentShader **fshader, bool useHWTransform, bool useHWTessellation); + void GetShaders(int prim, u32 vertType, D3D11VertexShader **vshader, D3D11FragmentShader **fshader, bool useHWTransform, bool useHWTessellation, bool weightsAsFloat); void ClearShaders(); void DirtyLastShader() override; diff --git a/GPU/D3D11/StateMappingD3D11.cpp b/GPU/D3D11/StateMappingD3D11.cpp index a6ca5025da4a..5e5d8877b917 100644 --- a/GPU/D3D11/StateMappingD3D11.cpp +++ b/GPU/D3D11/StateMappingD3D11.cpp @@ -162,7 +162,7 @@ void DrawEngineD3D11::ApplyDrawState(int prim) { GenericMaskState maskState; ConvertMaskState(maskState, gstate_c.allowFramebufferRead); - if (blendState.applyFramebufferRead) { + if (blendState.applyFramebufferRead || maskState.applyFramebufferRead) { if (ApplyFramebufferRead(&fboTexNeedsBind_)) { // The shader takes over the responsibility for blending, so recompute. ApplyStencilReplaceAndLogicOpIgnoreBlend(blendState.replaceAlphaWithStencil, blendState); @@ -284,6 +284,9 @@ void DrawEngineD3D11::ApplyDrawState(int prim) { } if (gstate_c.IsDirty(DIRTY_DEPTHSTENCIL_STATE)) { + GenericStencilFuncState stencilState; + ConvertStencilFuncState(stencilState); + if (gstate.isModeClear()) { keys_.depthStencil.value = 0; keys_.depthStencil.depthTestEnable = true; @@ -307,7 +310,7 @@ void DrawEngineD3D11::ApplyDrawState(int prim) { // We override this value in the pipeline from software transform for clear rectangles. dynState_.stencilRef = 0xFF; // But we still apply the stencil write mask. - keys_.depthStencil.stencilWriteMask = (~gstate.getStencilWriteMask()) & 0xFF; + keys_.depthStencil.stencilWriteMask = stencilState.writeMask; } else { keys_.depthStencil.stencilTestEnable = false; dynState_.useStencil = false; @@ -329,9 +332,6 @@ void DrawEngineD3D11::ApplyDrawState(int prim) { keys_.depthStencil.depthCompareOp = D3D11_COMPARISON_ALWAYS; } - GenericStencilFuncState stencilState; - ConvertStencilFuncState(stencilState); - // Stencil Test if (stencilState.enabled) { keys_.depthStencil.stencilTestEnable = true; diff --git a/GPU/D3D11/TextureCacheD3D11.cpp b/GPU/D3D11/TextureCacheD3D11.cpp index 044f5113c301..8e4aadfc0aca 100644 --- a/GPU/D3D11/TextureCacheD3D11.cpp +++ b/GPU/D3D11/TextureCacheD3D11.cpp @@ -412,7 +412,7 @@ void TextureCacheD3D11::ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer, shaderApply.Shade(); context_->PSSetShaderResources(0, 1, &nullTexture); // Make D3D11 validation happy. Really of no consequence since we rebind anyway. - framebufferManagerD3D11_->RebindFramebuffer("RebindFramebuffer - ApplyTextureFramebuffer"); + framebufferManager_->RebindFramebuffer("RebindFramebuffer - ApplyTextureFramebuffer"); draw_->BindFramebufferAsTexture(depalFBO, 0, Draw::FB_COLOR_BIT, 0); const u32 bytesPerColor = clutFormat == GE_CMODE_32BIT_ABGR8888 ? sizeof(u32) : sizeof(u16); @@ -422,8 +422,8 @@ void TextureCacheD3D11::ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer, gstate_c.SetTextureFullAlpha(alphaStatus == TexCacheEntry::STATUS_ALPHA_FULL); } else { gstate_c.SetTextureFullAlpha(gstate.getTextureFormat() == GE_TFMT_5650); - framebufferManagerD3D11_->RebindFramebuffer("RebindFramebuffer - ApplyTextureFramebuffer"); - framebufferManagerD3D11_->BindFramebufferAsColorTexture(0, framebuffer, BINDFBCOLOR_MAY_COPY_WITH_UV | BINDFBCOLOR_APPLY_TEX_OFFSET); + framebufferManager_->RebindFramebuffer("RebindFramebuffer - ApplyTextureFramebuffer"); + framebufferManager_->BindFramebufferAsColorTexture(0, framebuffer, BINDFBCOLOR_MAY_COPY_WITH_UV | BINDFBCOLOR_APPLY_TEX_OFFSET); } SamplerCacheKey samplerKey = GetFramebufferSamplingParams(framebuffer->bufferWidth, framebuffer->bufferHeight); diff --git a/GPU/D3D11/TextureCacheD3D11.h b/GPU/D3D11/TextureCacheD3D11.h index d29bf8fd16be..b1611936a5fa 100644 --- a/GPU/D3D11/TextureCacheD3D11.h +++ b/GPU/D3D11/TextureCacheD3D11.h @@ -70,7 +70,7 @@ class TextureCacheD3D11 : public TextureCacheCommon { private: void LoadTextureLevel(TexCacheEntry &entry, ReplacedTexture &replaced, int level, int maxLevel, int scaleFactor, DXGI_FORMAT dstFmt); DXGI_FORMAT GetDestFormat(GETextureFormat format, GEPaletteFormat clutFormat) const; - TexCacheEntry::TexStatus CheckAlpha(const u32 *pixelData, u32 dstFmt, int stride, int w, int h); + static TexCacheEntry::TexStatus CheckAlpha(const u32 *pixelData, u32 dstFmt, int stride, int w, int h); void UpdateCurrentClut(GEPaletteFormat clutFormat, u32 clutBase, bool clutIndexIsSimple) override; void ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer, GETextureFormat texFormat, FramebufferNotificationChannel channel) override; diff --git a/GPU/Directx9/DrawEngineDX9.cpp b/GPU/Directx9/DrawEngineDX9.cpp index c46465231881..338701689a7f 100644 --- a/GPU/Directx9/DrawEngineDX9.cpp +++ b/GPU/Directx9/DrawEngineDX9.cpp @@ -324,7 +324,7 @@ void DrawEngineDX9::DoFlush() { GEPrimitiveType prim = prevPrim_; ApplyDrawState(prim); - VSShader *vshader = shaderManager_->ApplyShader(CanUseHardwareTransform(prim), useHWTessellation_, lastVType_); + VSShader *vshader = shaderManager_->ApplyShader(CanUseHardwareTransform(prim), useHWTessellation_, lastVType_, decOptions_.expandAllWeightsToFloat); if (vshader->UseHWTransform()) { LPDIRECT3DVERTEXBUFFER9 vb_ = NULL; @@ -505,7 +505,7 @@ void DrawEngineDX9::DoFlush() { } ApplyDrawStateLate(); - vshader = shaderManager_->ApplyShader(CanUseHardwareTransform(prim), useHWTessellation_, lastVType_); + vshader = shaderManager_->ApplyShader(CanUseHardwareTransform(prim), useHWTessellation_, lastVType_, decOptions_.expandAllWeightsToFloat); IDirect3DVertexDeclaration9 *pHardwareVertexDecl = SetupDecFmtForDraw(vshader, dec_->GetDecVtxFmt(), dec_->VertexType()); if (pHardwareVertexDecl) { @@ -553,7 +553,7 @@ void DrawEngineDX9::DoFlush() { params.fbman = framebufferManager_; params.texCache = textureCache_; params.allowClear = true; - params.allowSeparateAlphaClear = true; + params.allowSeparateAlphaClear = false; params.provokeFlatFirst = true; int maxIndex = indexGen.MaxIndex(); @@ -568,7 +568,7 @@ void DrawEngineDX9::DoFlush() { framebufferManager_->SetSafeSize(result.safeWidth, result.safeHeight); ApplyDrawStateLate(); - vshader = shaderManager_->ApplyShader(false, false, lastVType_); + vshader = shaderManager_->ApplyShader(false, false, lastVType_, decOptions_.expandAllWeightsToFloat); if (result.action == SW_DRAW_PRIMITIVES) { if (result.setStencil) { @@ -602,7 +602,6 @@ void DrawEngineDX9::DoFlush() { framebufferManager_->SetColorUpdated(gstate_c.skipDrawReason); } - dxstate.colorMask.set((mask & D3DCLEAR_TARGET) != 0, (mask & D3DCLEAR_TARGET) != 0, (mask & D3DCLEAR_TARGET) != 0, (mask & D3DCLEAR_STENCIL) != 0); device_->Clear(0, NULL, mask, SwapRB(clearColor), clearDepth, clearColor >> 24); if ((gstate_c.featureFlags & GPU_USE_CLEAR_RAM_HACK) && gstate.isClearModeColorMask() && (gstate.isClearModeAlphaMask() || gstate.FrameBufFormat() == GE_FORMAT_565)) { diff --git a/GPU/Directx9/FramebufferManagerDX9.cpp b/GPU/Directx9/FramebufferManagerDX9.cpp index 9d3b631e1098..f47678456c8e 100644 --- a/GPU/Directx9/FramebufferManagerDX9.cpp +++ b/GPU/Directx9/FramebufferManagerDX9.cpp @@ -31,7 +31,6 @@ #include "Common/GPU/D3D9/D3D9StateCache.h" #include "GPU/Common/FramebufferManagerCommon.h" #include "GPU/Common/PresentationCommon.h" -#include "Common/GPU/ShaderTranslation.h" #include "GPU/Common/TextureDecoder.h" #include "GPU/Directx9/FramebufferManagerDX9.h" #include "GPU/Directx9/ShaderManagerDX9.h" @@ -114,15 +113,11 @@ static const D3DVERTEXELEMENT9 g_FramebufferVertexElements[] = { memset(rect.pBits, 0, 4); nullTex_->UnlockRect(0); - ShaderTranslationInit(); - presentation_->SetLanguage(HLSL_D3D9); preferredPixelsFormat_ = Draw::DataFormat::B8G8R8A8_UNORM; } FramebufferManagerDX9::~FramebufferManagerDX9() { - ShaderTranslationShutdown(); - if (pFramebufferVertexShader) { pFramebufferVertexShader->Release(); pFramebufferVertexShader = nullptr; @@ -259,11 +254,7 @@ static const D3DVERTEXELEMENT9 g_FramebufferVertexElements[] = { return offscreen; } - void FramebufferManagerDX9::UpdateDownloadTempBuffer(VirtualFramebuffer *nvfb) { - // Nothing to do here. - } - - void FramebufferManagerDX9::BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp) { + void FramebufferManagerDX9::BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp, const char *tag) { if (!dst->fbo || !src->fbo || !useBufferedRendering_) { // This can happen if we recently switched from non-buffered. if (useBufferedRendering_) @@ -300,7 +291,7 @@ static const D3DVERTEXELEMENT9 g_FramebufferVertexElements[] = { bool result = draw_->BlitFramebuffer( src->fbo, srcX1, srcY1, srcX2, srcY2, tempFBO, dstX1, dstY1, dstX2, dstY2, - Draw::FB_COLOR_BIT, Draw::FB_BLIT_NEAREST, "BlitFramebuffer"); + Draw::FB_COLOR_BIT, Draw::FB_BLIT_NEAREST, tag); if (result) { srcFBO = tempFBO; } @@ -308,7 +299,7 @@ static const D3DVERTEXELEMENT9 g_FramebufferVertexElements[] = { bool result = draw_->BlitFramebuffer( srcFBO, srcX1, srcY1, srcX2, srcY2, dst->fbo, dstX1, dstY1, dstX2, dstY2, - Draw::FB_COLOR_BIT, Draw::FB_BLIT_NEAREST, "BlitFramebuffer"); + Draw::FB_COLOR_BIT, Draw::FB_BLIT_NEAREST, tag); if (!result) { ERROR_LOG_REPORT(G3D, "fbo_blit_color failed in blit (%08x -> %08x)", src->fb_address, dst->fb_address); } diff --git a/GPU/Directx9/FramebufferManagerDX9.h b/GPU/Directx9/FramebufferManagerDX9.h index ac1dbaa484c7..385caf47c03c 100644 --- a/GPU/Directx9/FramebufferManagerDX9.h +++ b/GPU/Directx9/FramebufferManagerDX9.h @@ -63,9 +63,7 @@ class FramebufferManagerDX9 : public FramebufferManagerCommon { void DecimateFBOs() override; // Used by ReadFramebufferToMemory and later framebuffer block copies - void BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp) override; - - void UpdateDownloadTempBuffer(VirtualFramebuffer *nvfb) override; + void BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp, const char *tag) override; private: void PackFramebufferSync_(VirtualFramebuffer *vfb, int x, int y, int w, int h) override; diff --git a/GPU/Directx9/GPU_DX9.cpp b/GPU/Directx9/GPU_DX9.cpp index ec9cf2038515..f773e2c46f03 100644 --- a/GPU/Directx9/GPU_DX9.cpp +++ b/GPU/Directx9/GPU_DX9.cpp @@ -171,7 +171,7 @@ void GPU_DX9::CheckGPUFeatures() { features |= GPU_SUPPORTS_ACCURATE_DEPTH; auto vendor = draw_->GetDeviceCaps().vendor; - if (!PSP_CoreParameter().compat.flags().DepthRangeHack) { + if (!PSP_CoreParameter().compat.flags().DisableRangeCulling) { // VS range culling (killing triangles in the vertex shader using NaN) causes problems on Intel. // Also causes problems on old NVIDIA. switch (vendor) { @@ -204,7 +204,7 @@ void GPU_DX9::CheckGPUFeatures() { if ((caps.RasterCaps & D3DPRASTERCAPS_ANISOTROPY) != 0 && caps.MaxAnisotropy > 1) features |= GPU_SUPPORTS_ANISOTROPY; if ((caps.TextureCaps & (D3DPTEXTURECAPS_NONPOW2CONDITIONAL | D3DPTEXTURECAPS_POW2)) == 0) - features |= GPU_SUPPORTS_OES_TEXTURE_NPOT; + features |= GPU_SUPPORTS_TEXTURE_NPOT; } if (!g_Config.bHighQualityDepth) { diff --git a/GPU/Directx9/ShaderManagerDX9.cpp b/GPU/Directx9/ShaderManagerDX9.cpp index bb423ca23354..3aa52d2b7236 100644 --- a/GPU/Directx9/ShaderManagerDX9.cpp +++ b/GPU/Directx9/ShaderManagerDX9.cpp @@ -541,15 +541,15 @@ void ShaderManagerDX9::DirtyLastShader() { // disables vertex arrays lastPShader_ = nullptr; } -VSShader *ShaderManagerDX9::ApplyShader(bool useHWTransform, bool useHWTessellation, u32 vertType) { +VSShader *ShaderManagerDX9::ApplyShader(bool useHWTransform, bool useHWTessellation, u32 vertType, bool weightsAsFloat) { // Always use software for flat shading to fix the provoking index. - bool tess = gstate_c.bezier || gstate_c.spline; + bool tess = gstate_c.submitType == SubmitType::HW_BEZIER || gstate_c.submitType == SubmitType::HW_SPLINE; useHWTransform = useHWTransform && (tess || gstate.getShadeMode() != GE_SHADE_FLAT); VShaderID VSID; if (gstate_c.IsDirty(DIRTY_VERTEXSHADER_STATE)) { gstate_c.Clean(DIRTY_VERTEXSHADER_STATE); - ComputeVertexShaderID(&VSID, vertType, useHWTransform, useHWTessellation); + ComputeVertexShaderID(&VSID, vertType, useHWTransform, useHWTessellation, weightsAsFloat); } else { VSID = lastVSID_; } @@ -582,7 +582,7 @@ VSShader *ShaderManagerDX9::ApplyShader(bool useHWTransform, bool useHWTessellat std::string genErrorString; uint32_t attrMask; uint64_t uniformMask; - if (GenerateVertexShader(VSID, codeBuffer_, draw_->GetShaderLanguageDesc(), &attrMask, &uniformMask, &genErrorString)) { + if (GenerateVertexShader(VSID, codeBuffer_, draw_->GetShaderLanguageDesc(), draw_->GetBugs(), &attrMask, &uniformMask, &genErrorString)) { vs = new VSShader(device_, VSID, codeBuffer_, useHWTransform); } if (!vs || vs->Failed()) { @@ -598,7 +598,7 @@ VSShader *ShaderManagerDX9::ApplyShader(bool useHWTransform, bool useHWTessellat } delete vs; - ComputeVertexShaderID(&VSID, vertType, false, false); + ComputeVertexShaderID(&VSID, vertType, false, false, weightsAsFloat); // TODO: Look for existing shader with the appropriate ID, use that instead of generating a new one - however, need to make sure // that that shader ID is not used when computing the linked shader ID below, because then IDs won't match @@ -607,7 +607,7 @@ VSShader *ShaderManagerDX9::ApplyShader(bool useHWTransform, bool useHWTessellat // Can still work with software transform. uint32_t attrMask; uint64_t uniformMask; - bool success = GenerateVertexShader(VSID, codeBuffer_, draw_->GetShaderLanguageDesc(), &attrMask, &uniformMask, &genErrorString); + bool success = GenerateVertexShader(VSID, codeBuffer_, draw_->GetShaderLanguageDesc(), draw_->GetBugs(), &attrMask, &uniformMask, &genErrorString); _assert_(success); vs = new VSShader(device_, VSID, codeBuffer_, false); } @@ -624,7 +624,7 @@ VSShader *ShaderManagerDX9::ApplyShader(bool useHWTransform, bool useHWTessellat // Fragment shader not in cache. Let's compile it. std::string errorString; uint64_t uniformMask; - bool success = GenerateFragmentShader(FSID, codeBuffer_, draw_->GetShaderLanguageDesc(), &uniformMask, &errorString); + bool success = GenerateFragmentShader(FSID, codeBuffer_, draw_->GetShaderLanguageDesc(), draw_->GetBugs(), &uniformMask, &errorString); // We're supposed to handle all possible cases. _assert_(success); fs = new PSShader(device_, FSID, codeBuffer_); diff --git a/GPU/Directx9/ShaderManagerDX9.h b/GPU/Directx9/ShaderManagerDX9.h index d8062ef881fa..a524912d5098 100644 --- a/GPU/Directx9/ShaderManagerDX9.h +++ b/GPU/Directx9/ShaderManagerDX9.h @@ -80,7 +80,7 @@ class ShaderManagerDX9 : public ShaderManagerCommon { ~ShaderManagerDX9(); void ClearCache(bool deleteThem); // TODO: deleteThem currently not respected - VSShader *ApplyShader(bool useHWTransform, bool useHWTessellation, u32 vertType); + VSShader *ApplyShader(bool useHWTransform, bool useHWTessellation, u32 vertType, bool weightsAsFloat); void DirtyShader(); void DirtyLastShader() override; diff --git a/GPU/Directx9/StateMappingDX9.cpp b/GPU/Directx9/StateMappingDX9.cpp index dfb5c5a754ee..b4fc44aa1d78 100644 --- a/GPU/Directx9/StateMappingDX9.cpp +++ b/GPU/Directx9/StateMappingDX9.cpp @@ -187,6 +187,9 @@ void DrawEngineDX9::ApplyDrawState(int prim) { if (gstate_c.IsDirty(DIRTY_DEPTHSTENCIL_STATE)) { gstate_c.Clean(DIRTY_DEPTHSTENCIL_STATE); + GenericStencilFuncState stencilState; + ConvertStencilFuncState(stencilState); + // Set Stencil/Depth if (gstate.isModeClear()) { // Depth Test @@ -203,7 +206,7 @@ void DrawEngineDX9::ApplyDrawState(int prim) { dxstate.stencilTest.enable(); dxstate.stencilOp.set(D3DSTENCILOP_REPLACE, D3DSTENCILOP_REPLACE, D3DSTENCILOP_REPLACE); dxstate.stencilFunc.set(D3DCMP_ALWAYS, 255, 0xFF); - dxstate.stencilMask.set((~gstate.getStencilWriteMask()) & 0xFF); + dxstate.stencilMask.set(stencilState.writeMask); } else { dxstate.stencilTest.disable(); } @@ -221,9 +224,6 @@ void DrawEngineDX9::ApplyDrawState(int prim) { dxstate.depthTest.disable(); } - GenericStencilFuncState stencilState; - ConvertStencilFuncState(stencilState); - // Stencil Test if (stencilState.enabled) { dxstate.stencilTest.enable(); diff --git a/GPU/Directx9/TextureCacheDX9.h b/GPU/Directx9/TextureCacheDX9.h index aa57dcba4baa..7f27019bfa17 100644 --- a/GPU/Directx9/TextureCacheDX9.h +++ b/GPU/Directx9/TextureCacheDX9.h @@ -66,7 +66,7 @@ class TextureCacheDX9 : public TextureCacheCommon { void LoadTextureLevel(TexCacheEntry &entry, ReplacedTexture &replaced, int level, int maxLevel, int scaleFactor, u32 dstFmt); D3DFORMAT GetDestFormat(GETextureFormat format, GEPaletteFormat clutFormat) const; - TexCacheEntry::TexStatus CheckAlpha(const u32 *pixelData, u32 dstFmt, int stride, int w, int h); + static TexCacheEntry::TexStatus CheckAlpha(const u32 *pixelData, u32 dstFmt, int stride, int w, int h); void UpdateCurrentClut(GEPaletteFormat clutFormat, u32 clutBase, bool clutIndexIsSimple) override; void ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer, GETextureFormat texFormat, FramebufferNotificationChannel channel) override; diff --git a/GPU/GLES/DrawEngineGLES.cpp b/GPU/GLES/DrawEngineGLES.cpp index 18731568060c..a15a17924459 100644 --- a/GPU/GLES/DrawEngineGLES.cpp +++ b/GPU/GLES/DrawEngineGLES.cpp @@ -333,7 +333,7 @@ void DrawEngineGLES::DoFlush() { GEPrimitiveType prim = prevPrim_; VShaderID vsid; - Shader *vshader = shaderManager_->ApplyVertexShader(CanUseHardwareTransform(prim), useHWTessellation_, lastVType_, &vsid); + Shader *vshader = shaderManager_->ApplyVertexShader(CanUseHardwareTransform(prim), useHWTessellation_, lastVType_, decOptions_.expandAllWeightsToFloat, &vsid); GLRBuffer *vertexBuffer = nullptr; GLRBuffer *indexBuffer = nullptr; @@ -672,7 +672,7 @@ bool DrawEngineGLES::IsCodePtrVertexDecoder(const u8 *ptr) const { bool DrawEngineGLES::SupportsHWTessellation() const { bool hasTexelFetch = gl_extensions.GLES3 || (!gl_extensions.IsGLES && gl_extensions.VersionGEThan(3, 3, 0)) || gl_extensions.EXT_gpu_shader4; - return hasTexelFetch && gstate_c.SupportsAll(GPU_SUPPORTS_VERTEX_TEXTURE_FETCH | GPU_SUPPORTS_TEXTURE_FLOAT); + return hasTexelFetch && gstate_c.SupportsAll(GPU_SUPPORTS_VERTEX_TEXTURE_FETCH | GPU_SUPPORTS_TEXTURE_FLOAT | GPU_SUPPORTS_INSTANCE_RENDERING); } bool DrawEngineGLES::UpdateUseHWTessellation(bool enable) { diff --git a/GPU/GLES/FramebufferManagerGLES.cpp b/GPU/GLES/FramebufferManagerGLES.cpp index a659377d6687..ecd9ce5a53bd 100644 --- a/GPU/GLES/FramebufferManagerGLES.cpp +++ b/GPU/GLES/FramebufferManagerGLES.cpp @@ -105,7 +105,7 @@ FramebufferManagerGLES::FramebufferManagerGLES(Draw::DrawContext *draw, GLRender needGLESRebinds_ = true; CreateDeviceObjects(); render_ = (GLRenderManager *)draw_->GetNativeObject(Draw::NativeObject::RENDER_MANAGER); - presentation_->SetLanguage(gl_extensions.IsCoreContext ? GLSL_3xx : GLSL_1xx); + presentation_->SetLanguage(draw_->GetShaderLanguageDesc().shaderLanguage); } void FramebufferManagerGLES::Init() { @@ -254,7 +254,7 @@ void FramebufferManagerGLES::UpdateDownloadTempBuffer(VirtualFramebuffer *nvfb) } } -void FramebufferManagerGLES::BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp) { +void FramebufferManagerGLES::BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp, const char *tag) { if (!dst->fbo || !src->fbo || !useBufferedRendering_) { // This can happen if they recently switched from non-buffered. if (useBufferedRendering_) @@ -301,17 +301,17 @@ void FramebufferManagerGLES::BlitFramebuffer(VirtualFramebuffer *dst, int dstX, const bool xOverlap = src == dst && srcX2 > dstX1 && srcX1 < dstX2; const bool yOverlap = src == dst && srcY2 > dstY1 && srcY1 < dstY2; if (sameSize && srcInsideBounds && dstInsideBounds && !(xOverlap && yOverlap)) { - draw_->CopyFramebufferImage(src->fbo, 0, srcX1, srcY1, 0, dst->fbo, 0, dstX1, dstY1, 0, dstX2 - dstX1, dstY2 - dstY1, 1, Draw::FB_COLOR_BIT, "BlitFramebuffer"); + draw_->CopyFramebufferImage(src->fbo, 0, srcX1, srcY1, 0, dst->fbo, 0, dstX1, dstY1, 0, dstX2 - dstX1, dstY2 - dstY1, 1, Draw::FB_COLOR_BIT, tag); return; } } if (useBlit) { - draw_->BlitFramebuffer(src->fbo, srcX1, srcY1, srcX2, srcY2, dst->fbo, dstX1, dstY1, dstX2, dstY2, Draw::FB_COLOR_BIT, Draw::FB_BLIT_NEAREST, "BlitFramebuffer"); + draw_->BlitFramebuffer(src->fbo, srcX1, srcY1, srcX2, srcY2, dst->fbo, dstX1, dstY1, dstX2, dstY2, Draw::FB_COLOR_BIT, Draw::FB_BLIT_NEAREST, tag); } else { // TODO: Move this workaround out into thin3d, instead of dirtying up the code here. - draw_->BindFramebufferAsRenderTarget(dst->fbo, { Draw::RPAction::KEEP, Draw::RPAction::KEEP, Draw::RPAction::KEEP }, "BlitFramebuffer"); + draw_->BindFramebufferAsRenderTarget(dst->fbo, { Draw::RPAction::KEEP, Draw::RPAction::KEEP, Draw::RPAction::KEEP }, tag); draw_->BindFramebufferAsTexture(src->fbo, 0, Draw::FB_COLOR_BIT, 0); // Make sure our 2D drawing program is ready. Compiles only if not already compiled. diff --git a/GPU/GLES/FramebufferManagerGLES.h b/GPU/GLES/FramebufferManagerGLES.h index 72c91f4b9ba0..394f6e3d3833 100644 --- a/GPU/GLES/FramebufferManagerGLES.h +++ b/GPU/GLES/FramebufferManagerGLES.h @@ -56,7 +56,7 @@ class FramebufferManagerGLES : public FramebufferManagerCommon { protected: // Used by ReadFramebufferToMemory and later framebuffer block copies - void BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp) override; + void BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp, const char *tag) override; void UpdateDownloadTempBuffer(VirtualFramebuffer *nvfb) override; diff --git a/GPU/GLES/GPU_GLES.cpp b/GPU/GLES/GPU_GLES.cpp index 192c7f832bfb..136701027d18 100644 --- a/GPU/GLES/GPU_GLES.cpp +++ b/GPU/GLES/GPU_GLES.cpp @@ -149,7 +149,7 @@ void GPU_GLES::CheckGPUFeatures() { features |= GPU_SUPPORTS_16BIT_FORMATS; if (!draw_->GetBugs().Has(Draw::Bugs::BROKEN_NAN_IN_CONDITIONAL)) { - if (!PSP_CoreParameter().compat.flags().DepthRangeHack) { + if (!PSP_CoreParameter().compat.flags().DisableRangeCulling) { features |= GPU_SUPPORTS_VS_RANGE_CULLING; } } @@ -185,15 +185,12 @@ void GPU_GLES::CheckGPUFeatures() { if (gl_extensions.ARB_framebuffer_object || gl_extensions.NV_framebuffer_blit || gl_extensions.GLES3) { features |= GPU_SUPPORTS_FRAMEBUFFER_BLIT | GPU_SUPPORTS_FRAMEBUFFER_BLIT_TO_DEPTH; } - if (gl_extensions.ARB_vertex_array_object && gl_extensions.IsCoreContext) { - features |= GPU_SUPPORTS_VAO; - } if ((gl_extensions.gpuVendor == GPU_VENDOR_NVIDIA) || (gl_extensions.gpuVendor == GPU_VENDOR_AMD)) features |= GPU_PREFER_REVERSE_COLOR_ORDER; if (gl_extensions.OES_texture_npot) - features |= GPU_SUPPORTS_OES_TEXTURE_NPOT; + features |= GPU_SUPPORTS_TEXTURE_NPOT; if (gl_extensions.EXT_blend_minmax) features |= GPU_SUPPORTS_BLEND_MINMAX; diff --git a/GPU/GLES/ShaderManagerGLES.cpp b/GPU/GLES/ShaderManagerGLES.cpp index 159f0261a7b4..f6914aecc4e4 100644 --- a/GPU/GLES/ShaderManagerGLES.cpp +++ b/GPU/GLES/ShaderManagerGLES.cpp @@ -300,7 +300,7 @@ void LinkedShader::UpdateUniforms(u32 vertType, const ShaderID &vsid, bool useBu uint32_t val = BytesToUint32(indexMask, indexShift, indexOffset, format); // Poke in a bilinear filter flag in the top bit. val |= gstate.isMagnifyFilteringEnabled() << 31; - render_->SetUniformI1(&u_depal_mask_shift_off_fmt, val); + render_->SetUniformUI1(&u_depal_mask_shift_off_fmt, val); } // Update any dirty uniforms before we draw @@ -409,7 +409,7 @@ void LinkedShader::UpdateUniforms(u32 vertType, const ShaderID &vsid, bool useBu const float widthFactor = (float)w * invW; const float heightFactor = (float)h * invH; float uvscaleoff[4]; - if (gstate_c.bezier || gstate_c.spline) { + if (gstate_c.submitType == SubmitType::HW_BEZIER || gstate_c.submitType == SubmitType::HW_SPLINE) { // When we are generating UV coordinates through the bezier/spline, we need to apply the scaling. // However, this is missing a check that we're not getting our UV:s supplied for us in the vertices. uvscaleoff[0] = gstate_c.uv.uScale * widthFactor; @@ -635,7 +635,7 @@ void ShaderManagerGLES::DirtyLastShader() { Shader *ShaderManagerGLES::CompileFragmentShader(FShaderID FSID) { uint64_t uniformMask; std::string errorString; - if (!GenerateFragmentShader(FSID, codeBuffer_, draw_->GetShaderLanguageDesc(), &uniformMask, &errorString)) { + if (!GenerateFragmentShader(FSID, codeBuffer_, draw_->GetShaderLanguageDesc(), draw_->GetBugs(), &uniformMask, &errorString)) { ERROR_LOG(G3D, "Shader gen error: %s", errorString.c_str()); return nullptr; } @@ -648,7 +648,7 @@ Shader *ShaderManagerGLES::CompileVertexShader(VShaderID VSID) { uint32_t attrMask; uint64_t uniformMask; std::string errorString; - if (!GenerateVertexShader(VSID, codeBuffer_, draw_->GetShaderLanguageDesc(), &attrMask, &uniformMask, &errorString)) { + if (!GenerateVertexShader(VSID, codeBuffer_, draw_->GetShaderLanguageDesc(), draw_->GetBugs(), &attrMask, &uniformMask, &errorString)) { ERROR_LOG(G3D, "Shader gen error: %s", errorString.c_str()); return nullptr; } @@ -656,10 +656,10 @@ Shader *ShaderManagerGLES::CompileVertexShader(VShaderID VSID) { return new Shader(render_, codeBuffer_, desc, GL_VERTEX_SHADER, useHWTransform, attrMask, uniformMask); } -Shader *ShaderManagerGLES::ApplyVertexShader(bool useHWTransform, bool useHWTessellation, u32 vertType, VShaderID *VSID) { +Shader *ShaderManagerGLES::ApplyVertexShader(bool useHWTransform, bool useHWTessellation, u32 vertType, bool weightsAsFloat, VShaderID *VSID) { if (gstate_c.IsDirty(DIRTY_VERTEXSHADER_STATE)) { gstate_c.Clean(DIRTY_VERTEXSHADER_STATE); - ComputeVertexShaderID(VSID, vertType, useHWTransform, useHWTessellation); + ComputeVertexShaderID(VSID, vertType, useHWTransform, useHWTessellation, weightsAsFloat); } else { *VSID = lastVSID_; } @@ -690,7 +690,7 @@ Shader *ShaderManagerGLES::ApplyVertexShader(bool useHWTransform, bool useHWTess // Can still work with software transform. VShaderID vsidTemp; - ComputeVertexShaderID(&vsidTemp, vertType, false, false); + ComputeVertexShaderID(&vsidTemp, vertType, false, false, weightsAsFloat); vs = CompileVertexShader(vsidTemp); } diff --git a/GPU/GLES/ShaderManagerGLES.h b/GPU/GLES/ShaderManagerGLES.h index f93c9a4d24e5..bdaf73a367cc 100644 --- a/GPU/GLES/ShaderManagerGLES.h +++ b/GPU/GLES/ShaderManagerGLES.h @@ -146,7 +146,7 @@ class ShaderManagerGLES : public ShaderManagerCommon { // This is the old ApplyShader split into two parts, because of annoying information dependencies. // If you call ApplyVertexShader, you MUST call ApplyFragmentShader soon afterwards. - Shader *ApplyVertexShader(bool useHWTransform, bool useHWTessellation, u32 vertType, VShaderID *VSID); + Shader *ApplyVertexShader(bool useHWTransform, bool useHWTessellation, u32 vertType, bool weightsAsFloat, VShaderID *VSID); LinkedShader *ApplyFragmentShader(VShaderID VSID, Shader *vs, u32 vertType, bool useBufferedRendering); void DeviceLost(); diff --git a/GPU/GLES/StateMappingGLES.cpp b/GPU/GLES/StateMappingGLES.cpp index cc89eda9b7d3..d72386d2299c 100644 --- a/GPU/GLES/StateMappingGLES.cpp +++ b/GPU/GLES/StateMappingGLES.cpp @@ -235,13 +235,16 @@ void DrawEngineGLES::ApplyDrawState(int prim) { if (gstate_c.IsDirty(DIRTY_DEPTHSTENCIL_STATE)) { gstate_c.Clean(DIRTY_DEPTHSTENCIL_STATE); + GenericStencilFuncState stencilState; + ConvertStencilFuncState(stencilState); + if (gstate.isModeClear()) { // Depth Test if (gstate.isClearModeDepthMask()) { framebufferManager_->SetDepthUpdated(); } renderManager->SetStencilFunc(gstate.isClearModeAlphaMask(), GL_ALWAYS, 0xFF, 0xFF); - renderManager->SetStencilOp((~gstate.getStencilWriteMask()) & 0xFF, GL_REPLACE, GL_REPLACE, GL_REPLACE); + renderManager->SetStencilOp(stencilState.writeMask, GL_REPLACE, GL_REPLACE, GL_REPLACE); renderManager->SetDepth(true, gstate.isClearModeDepthMask() ? true : false, GL_ALWAYS); } else { // Depth Test @@ -250,8 +253,6 @@ void DrawEngineGLES::ApplyDrawState(int prim) { framebufferManager_->SetDepthUpdated(); } - GenericStencilFuncState stencilState; - ConvertStencilFuncState(stencilState); // Stencil Test if (stencilState.enabled) { renderManager->SetStencilFunc(stencilState.enabled, compareOps[stencilState.testFunc], stencilState.testRef, stencilState.testMask); diff --git a/GPU/GLES/StencilBufferGLES.cpp b/GPU/GLES/StencilBufferGLES.cpp index 566671d1d3ce..df9cd0619337 100644 --- a/GPU/GLES/StencilBufferGLES.cpp +++ b/GPU/GLES/StencilBufferGLES.cpp @@ -214,6 +214,7 @@ bool FramebufferManagerGLES::NotifyStencilUpload(u32 addr, int size, StencilUplo } if (useBlit) { + render_->SetScissor({ 0, 0, dstBuffer->renderWidth, dstBuffer->renderHeight }); draw_->BlitFramebuffer(blitFBO, 0, 0, w, h, dstBuffer->fbo, 0, 0, dstBuffer->renderWidth, dstBuffer->renderHeight, Draw::FB_STENCIL_BIT, Draw::FB_BLIT_NEAREST, "NotifyStencilUpload_Blit"); } diff --git a/GPU/GLES/TextureCacheGLES.cpp b/GPU/GLES/TextureCacheGLES.cpp index 93a26232816d..895bd27efd5b 100644 --- a/GPU/GLES/TextureCacheGLES.cpp +++ b/GPU/GLES/TextureCacheGLES.cpp @@ -347,10 +347,11 @@ void TextureCacheGLES::ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer, uint32_t clutMode = gstate.clutformat & 0xFFFFFF; bool need_depalettize = IsClutFormat(texFormat); - bool useShaderDepal = framebufferManager_->GetCurrentRenderVFB() != framebuffer && gstate_c.Supports(GPU_SUPPORTS_GLSL_ES_300); + bool useShaderDepal = framebufferManager_->GetCurrentRenderVFB() != framebuffer && (gstate_c.Supports(GPU_SUPPORTS_GLSL_ES_300) || gstate_c.Supports(GPU_SUPPORTS_GLSL_330)); if (!gstate_c.Supports(GPU_SUPPORTS_32BIT_INT_FSHADER)) { useShaderDepal = false; } + if (need_depalettize && !g_Config.bDisableSlowFramebufEffects) { if (useShaderDepal) { const GEPaletteFormat clutFormat = gstate.getClutPaletteFormat(); @@ -376,6 +377,7 @@ void TextureCacheGLES::ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer, return; } + gstate_c.SetUseShaderDepal(false); depal = depalShaderCache_->GetDepalettizeShader(clutMode, framebuffer->drawnFormat); } if (depal) { @@ -408,6 +410,7 @@ void TextureCacheGLES::ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer, } else { framebufferManagerGL_->BindFramebufferAsColorTexture(0, framebuffer, BINDFBCOLOR_MAY_COPY_WITH_UV | BINDFBCOLOR_APPLY_TEX_OFFSET); + gstate_c.SetUseShaderDepal(false); gstate_c.SetTextureFullAlpha(gstate.getTextureFormat() == GE_TFMT_5650); } diff --git a/GPU/GLES/TextureCacheGLES.h b/GPU/GLES/TextureCacheGLES.h index 1b3ba422e32c..674db91b8a49 100644 --- a/GPU/GLES/TextureCacheGLES.h +++ b/GPU/GLES/TextureCacheGLES.h @@ -75,7 +75,7 @@ class TextureCacheGLES : public TextureCacheCommon { void LoadTextureLevel(TexCacheEntry &entry, ReplacedTexture &replaced, int level, int scaleFactor, Draw::DataFormat dstFmt); Draw::DataFormat GetDestFormat(GETextureFormat format, GEPaletteFormat clutFormat) const; - TexCacheEntry::TexStatus CheckAlpha(const uint8_t *pixelData, Draw::DataFormat dstFmt, int stride, int w, int h); + static TexCacheEntry::TexStatus CheckAlpha(const uint8_t *pixelData, Draw::DataFormat dstFmt, int stride, int w, int h); void UpdateCurrentClut(GEPaletteFormat clutFormat, u32 clutBase, bool clutIndexIsSimple) override; void ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer, GETextureFormat texFormat, FramebufferNotificationChannel channel) override; diff --git a/GPU/GPU.cpp b/GPU/GPU.cpp index f731ee6cbb00..02ef795fb7c0 100644 --- a/GPU/GPU.cpp +++ b/GPU/GPU.cpp @@ -28,7 +28,6 @@ #include "GPU/GLES/GPU_GLES.h" #endif #include "GPU/Vulkan/GPU_Vulkan.h" -#include "GPU/Null/NullGpu.h" #include "GPU/Software/SoftGpu.h" #if PPSSPP_API(D3D9) @@ -60,15 +59,17 @@ bool GPU_IsReady() { } bool GPU_Init(GraphicsContext *ctx, Draw::DrawContext *draw) { - _assert_(draw || PSP_CoreParameter().gpuCore == GPUCORE_NULL); + const auto &gpuCore = PSP_CoreParameter().gpuCore; + _assert_(draw || gpuCore == GPUCORE_SOFTWARE); #if PPSSPP_PLATFORM(UWP) - SetGPU(new GPU_D3D11(ctx, draw)); + if (gpuCore == GPUCORE_SOFTWARE) { + SetGPU(new SoftGPU(ctx, draw)); + } else { + SetGPU(new GPU_D3D11(ctx, draw)); + } return true; #else - switch (PSP_CoreParameter().gpuCore) { - case GPUCORE_NULL: - SetGPU(new NullGPU()); - break; + switch (gpuCore) { case GPUCORE_GLES: // Disable GLES on ARM Windows (but leave it enabled on other ARM platforms). #if PPSSPP_API(ANY_GL) diff --git a/GPU/GPU.vcxproj b/GPU/GPU.vcxproj index 8f9e2404b661..ddaaa6e7efd9 100644 --- a/GPU/GPU.vcxproj +++ b/GPU/GPU.vcxproj @@ -452,7 +452,6 @@ - @@ -628,7 +627,6 @@ - diff --git a/GPU/GPU.vcxproj.filters b/GPU/GPU.vcxproj.filters index fff4ea4a5138..ba8b72b87196 100644 --- a/GPU/GPU.vcxproj.filters +++ b/GPU/GPU.vcxproj.filters @@ -10,9 +10,6 @@ {21783292-4dd7-447b-af93-356cd2eaa4d6} - - {b31aa5a1-da08-47e6-9467-ab1d547b6ff3} - {88629970-4774-4122-b031-2128244b795c} @@ -36,9 +33,6 @@ Common - - Null - Common @@ -278,9 +272,6 @@ Common - - Null - Common diff --git a/GPU/GPUCommon.cpp b/GPU/GPUCommon.cpp index a86f7b99634b..c722d0a081ed 100644 --- a/GPU/GPUCommon.cpp +++ b/GPU/GPUCommon.cpp @@ -27,6 +27,7 @@ #include "Core/HLE/sceGe.h" #include "Core/Debugger/Breakpoints.h" #include "Core/MemMapHelpers.h" +#include "Core/Util/PPGeDraw.h" #include "GPU/Common/DrawEngineCommon.h" #include "GPU/Common/FramebufferManagerCommon.h" #include "GPU/Common/SplineCommon.h" @@ -412,9 +413,13 @@ GPUCommon::GPUCommon(GraphicsContext *gfxCtx, Draw::DrawContext *draw) : UpdateCmdInfo(); UpdateVsyncInterval(true); + + PPGeSetDrawContext(draw); } GPUCommon::~GPUCommon() { + // Probably not necessary. + PPGeSetDrawContext(nullptr); } void GPUCommon::UpdateCmdInfo() { @@ -478,6 +483,7 @@ void GPUCommon::DeviceLost() { void GPUCommon::DeviceRestore() { draw_ = (Draw::DrawContext *)PSP_CoreParameter().graphicsContext->GetDrawContext(); framebufferManager_->DeviceRestore(draw_); + PPGeSetDrawContext(draw_); } void GPUCommon::UpdateVsyncInterval(bool force) { @@ -948,7 +954,9 @@ void GPUCommon::NotifySteppingExit() { if (timeSteppingStarted_ <= 0.0) { ERROR_LOG(G3D, "Mismatched stepping enter/exit."); } - timeSpentStepping_ += time_now_d() - timeSteppingStarted_; + double total = time_now_d() - timeSteppingStarted_; + _dbg_assert_msg_(total >= 0.0, "Time spent stepping became negative"); + timeSpentStepping_ += total; timeSteppingStarted_ = 0.0; } } @@ -1022,6 +1030,7 @@ bool GPUCommon::InterpretList(DisplayList &list) { if (coreCollectDebugStats) { double total = time_now_d() - start - timeSpentStepping_; + _dbg_assert_msg_(total >= 0.0, "Time spent DL processing became negative"); hleSetSteppingTime(timeSpentStepping_); timeSpentStepping_ = 0.0; gpuStats.msProcessingDisplayLists += total; @@ -1474,6 +1483,14 @@ void GPUCommon::Execute_End(u32 op, u32 diff) { default: currentList->subIntrToken = prev & 0xFFFF; UpdateState(GPUSTATE_DONE); + // Since we marked done, we have to restore the context now before the next list runs. + if (currentList->started && currentList->context.IsValid()) { + gstate.Restore(currentList->context); + ReapplyGfxState(); + // Don't restore the context again. + currentList->started = false; + } + if (currentList->interruptsEnabled && __GeTriggerInterrupt(currentList->id, currentList->pc, startingTicks + cyclesExecuted)) { currentList->pendingInterrupt = true; } else { @@ -1481,10 +1498,6 @@ void GPUCommon::Execute_End(u32 op, u32 diff) { currentList->waitTicks = startingTicks + cyclesExecuted; busyTicks = std::max(busyTicks, currentList->waitTicks); __GeTriggerSync(GPU_SYNC_LIST, currentList->id, currentList->waitTicks); - if (currentList->started && currentList->context.IsValid()) { - gstate.Restore(currentList->context); - ReapplyGfxState(); - } } break; } @@ -1830,20 +1843,21 @@ void GPUCommon::Execute_Bezier(u32 op, u32 diff) { if (drawEngineCommon_->CanUseHardwareTessellation(surface.primType)) { gstate_c.Dirty(DIRTY_VERTEXSHADER_STATE); - gstate_c.bezier = true; + gstate_c.submitType = SubmitType::HW_BEZIER; if (gstate_c.spline_num_points_u != surface.num_points_u) { gstate_c.Dirty(DIRTY_BEZIERSPLINE); gstate_c.spline_num_points_u = surface.num_points_u; } + } else { + gstate_c.submitType = SubmitType::BEZIER; } int bytesRead = 0; UpdateUVScaleOffset(); drawEngineCommon_->SubmitCurve(control_points, indices, surface, gstate.vertType, &bytesRead, "bezier"); - if (gstate_c.bezier) - gstate_c.Dirty(DIRTY_VERTEXSHADER_STATE); - gstate_c.bezier = false; + gstate_c.Dirty(DIRTY_VERTEXSHADER_STATE); + gstate_c.submitType = SubmitType::DRAW; // After drawing, we advance pointers - see SubmitPrim which does the same. int count = surface.num_points_u * surface.num_points_v; @@ -1896,20 +1910,21 @@ void GPUCommon::Execute_Spline(u32 op, u32 diff) { if (drawEngineCommon_->CanUseHardwareTessellation(surface.primType)) { gstate_c.Dirty(DIRTY_VERTEXSHADER_STATE); - gstate_c.spline = true; + gstate_c.submitType = SubmitType::HW_SPLINE; if (gstate_c.spline_num_points_u != surface.num_points_u) { gstate_c.Dirty(DIRTY_BEZIERSPLINE); gstate_c.spline_num_points_u = surface.num_points_u; } + } else { + gstate_c.submitType = SubmitType::SPLINE; } int bytesRead = 0; UpdateUVScaleOffset(); drawEngineCommon_->SubmitCurve(control_points, indices, surface, gstate.vertType, &bytesRead, "spline"); - if (gstate_c.spline) - gstate_c.Dirty(DIRTY_VERTEXSHADER_STATE); - gstate_c.spline = false; + gstate_c.Dirty(DIRTY_VERTEXSHADER_STATE); + gstate_c.submitType = SubmitType::DRAW; // After drawing, we advance pointers - see SubmitPrim which does the same. int count = surface.num_points_u * surface.num_points_v; @@ -2721,6 +2736,8 @@ bool GPUCommon::PerformMemoryCopy(u32 dest, u32 src, int size) { // Track stray copies of a framebuffer in RAM. MotoGP does this. if (framebufferManager_->MayIntersectFramebuffer(src) || framebufferManager_->MayIntersectFramebuffer(dest)) { if (!framebufferManager_->NotifyFramebufferCopy(src, dest, size, false, gstate_c.skipDrawReason)) { + // TODO: What? Why would a game copy between the mirrors? This check seems entirely + // superfluous. // We use a little hack for Download/Upload using a VRAM mirror. // Since they're identical we don't need to copy. if (!Memory::IsVRAMAddress(dest) || (dest ^ 0x00400000) != src) { diff --git a/GPU/GPUState.h b/GPU/GPUState.h index 25402a3b76ae..5b11b37b7317 100644 --- a/GPU/GPUState.h +++ b/GPU/GPUState.h @@ -480,9 +480,9 @@ enum { GPU_SUPPORTS_16BIT_FORMATS = FLAG_BIT(13), GPU_SUPPORTS_DEPTH_CLAMP = FLAG_BIT(14), GPU_SUPPORTS_32BIT_INT_FSHADER = FLAG_BIT(15), - // Free bit: 16 + GPU_SUPPORTS_DEPTH_TEXTURE = FLAG_BIT(16), GPU_SUPPORTS_ACCURATE_DEPTH = FLAG_BIT(17), - GPU_SUPPORTS_VAO = FLAG_BIT(18), + // Free bit: 18, GPU_SUPPORTS_COPY_IMAGE = FLAG_BIT(19), GPU_SUPPORTS_ANY_FRAMEBUFFER_FETCH = FLAG_BIT(20), GPU_SCALE_DEPTH_FROM_24BIT_TO_16BIT = FLAG_BIT(21), @@ -491,7 +491,7 @@ enum { GPU_SUPPORTS_TEXTURE_LOD_CONTROL = FLAG_BIT(24), GPU_SUPPORTS_FRAMEBUFFER_BLIT = FLAG_BIT(26), GPU_SUPPORTS_FRAMEBUFFER_BLIT_TO_DEPTH = FLAG_BIT(27), - GPU_SUPPORTS_OES_TEXTURE_NPOT = FLAG_BIT(28), + GPU_SUPPORTS_TEXTURE_NPOT = FLAG_BIT(28), GPU_NEEDS_Z_EQUAL_W_HACK = FLAG_BIT(29), // Free bit: 30 GPU_PREFER_REVERSE_COLOR_ORDER = FLAG_BIT(31), @@ -504,6 +504,14 @@ struct KnownVertexBounds { u16 maxV; }; +enum class SubmitType { + DRAW, + BEZIER, + SPLINE, + HW_BEZIER, + HW_SPLINE, +}; + struct GPUStateCache { bool Supports(u32 flags) { return (featureFlags & flags) != 0; } // Return true if ANY of flags are true. bool SupportsAll(u32 flags) { return (featureFlags & flags) == flags; } // Return true if ALL flags are true. @@ -602,8 +610,8 @@ struct GPUStateCache { } u32 curRTOffsetX; - bool bezier; - bool spline; + // Set if we are doing hardware bezier/spline. + SubmitType submitType; int spline_num_points_u; bool useShaderDepal; diff --git a/GPU/Null/NullGpu.cpp b/GPU/Null/NullGpu.cpp deleted file mode 100644 index 34f6b1d77dce..000000000000 --- a/GPU/Null/NullGpu.cpp +++ /dev/null @@ -1,730 +0,0 @@ -// Copyright (c) 2012- PPSSPP Project. - -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, version 2.0 or later versions. - -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License 2.0 for more details. - -// A copy of the GPL 2.0 should have been included with the program. -// If not, see http://www.gnu.org/licenses/ - -// Official git repository and contact information can be found at -// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/. - -#include "GPU/Common/DrawEngineCommon.h" -#include "GPU/Null/NullGpu.h" -#include "GPU/GPUState.h" -#include "GPU/ge_constants.h" -#include "Core/Debugger/Breakpoints.h" -#include "Core/MemMap.h" -#include "Core/MIPS/MIPS.h" -#include "Core/HLE/sceKernelInterrupt.h" -#include "Core/HLE/sceGe.h" - -class NullDrawEngine : public DrawEngineCommon { -public: - void DispatchFlush() override { - } - void DispatchSubmitPrim(void *verts, void *inds, GEPrimitiveType prim, int vertexCount, u32 vertTypeID, int cullMode, int *bytesRead) override { - } -}; - -NullGPU::NullGPU() : GPUCommon(nullptr, nullptr) { - drawEngineCommon_ = new NullDrawEngine(); -} -NullGPU::~NullGPU() { } - -void NullGPU::FastRunLoop(DisplayList &list) { - for (; downcount > 0; --downcount) { - u32 op = Memory::ReadUnchecked_U32(list.pc); - u32 cmd = op >> 24; - - u32 diff = op ^ gstate.cmdmem[cmd]; - gstate.cmdmem[cmd] = op; - ExecuteOp(op, diff); - - list.pc += 4; - } -} - -void NullGPU::ExecuteOp(u32 op, u32 diff) { - u32 cmd = op >> 24; - u32 data = op & 0xFFFFFF; - - // Handle control and drawing commands here directly. The others we delegate. - switch (cmd) - { - case GE_CMD_BASE: - DEBUG_LOG(G3D,"DL BASE: %06x", data); - break; - - case GE_CMD_VADDR: - gstate_c.vertexAddr = gstate_c.getRelativeAddress(data); - break; - - case GE_CMD_IADDR: - gstate_c.indexAddr = gstate_c.getRelativeAddress(data); - break; - - case GE_CMD_PRIM: - { - u32 count = data & 0xFFFF; - u32 type = data >> 16; - static const char* types[7] = { - "POINTS=0,", - "LINES=1,", - "LINE_STRIP=2,", - "TRIANGLES=3,", - "TRIANGLE_STRIP=4,", - "TRIANGLE_FAN=5,", - "RECTANGLES=6,", - }; - DEBUG_LOG(G3D, "DL DrawPrim type: %s count: %i vaddr= %08x, iaddr= %08x", type<7 ? types[type] : "INVALID", count, gstate_c.vertexAddr, gstate_c.indexAddr); - } - break; - - case GE_CMD_BEZIER: - { - int bz_ucount = data & 0xFF; - int bz_vcount = (data >> 8) & 0xFF; - DEBUG_LOG(G3D,"DL DRAW BEZIER: %i x %i", bz_ucount, bz_vcount); - } - break; - - case GE_CMD_SPLINE: - { - int sp_ucount = data & 0xFF; - int sp_vcount = (data >> 8) & 0xFF; - int sp_utype = (data >> 16) & 0x3; - int sp_vtype = (data >> 18) & 0x3; - DEBUG_LOG(G3D,"DL DRAW SPLINE: %i x %i, %i x %i", sp_ucount, sp_vcount, sp_utype, sp_vtype); - } - break; - - case GE_CMD_BOUNDINGBOX: - if (data != 0) { - DEBUG_LOG(G3D, "Unsupported bounding box: %06x", data); - // Bounding box test. Let's assume the box was within the drawing region. - currentList->bboxResult = true; - } else { - currentList->bboxResult = false; - } - break; - - case GE_CMD_VERTEXTYPE: - DEBUG_LOG(G3D,"DL SetVertexType: %06x", data); - // This sets through-mode or not, as well. - break; - - case GE_CMD_REGION1: - { - int x1 = data & 0x3ff; - int y1 = data >> 10; - //topleft - DEBUG_LOG(G3D,"DL Region TL: %d %d", x1, y1); - } - break; - - case GE_CMD_REGION2: - { - int x2 = data & 0x3ff; - int y2 = data >> 10; - DEBUG_LOG(G3D,"DL Region BR: %d %d", x2, y2); - } - break; - - case GE_CMD_DEPTHCLAMPENABLE: - DEBUG_LOG(G3D, "DL Depth Clamp Enable: %i (ignoring)", data); - //we always clip, this is opengl - break; - - case GE_CMD_CULLFACEENABLE: - DEBUG_LOG(G3D, "DL CullFace Enable: %i (ignoring)", data); - break; - - case GE_CMD_TEXTUREMAPENABLE: - DEBUG_LOG(G3D, "DL Texture map enable: %i", data); - break; - - case GE_CMD_LIGHTINGENABLE: - DEBUG_LOG(G3D, "DL Lighting enable: %i", data); - data += 1; - //We don't use OpenGL lighting - break; - - case GE_CMD_FOGENABLE: - DEBUG_LOG(G3D, "DL Fog Enable: %i", gstate.fogEnable); - break; - - case GE_CMD_DITHERENABLE: - DEBUG_LOG(G3D, "DL Dither Enable: %i", gstate.ditherEnable); - break; - - case GE_CMD_OFFSETX: - DEBUG_LOG(G3D, "DL Offset X: %i", gstate.offsetx); - break; - - case GE_CMD_OFFSETY: - DEBUG_LOG(G3D, "DL Offset Y: %i", gstate.offsety); - break; - - case GE_CMD_TEXSCALEU: - gstate_c.uv.uScale = getFloat24(data); - DEBUG_LOG(G3D, "DL Texture U Scale: %f", gstate_c.uv.uScale); - break; - - case GE_CMD_TEXSCALEV: - gstate_c.uv.vScale = getFloat24(data); - DEBUG_LOG(G3D, "DL Texture V Scale: %f", gstate_c.uv.vScale); - break; - - case GE_CMD_TEXOFFSETU: - gstate_c.uv.uOff = getFloat24(data); - DEBUG_LOG(G3D, "DL Texture U Offset: %f", gstate_c.uv.uOff); - break; - - case GE_CMD_TEXOFFSETV: - gstate_c.uv.vOff = getFloat24(data); - DEBUG_LOG(G3D, "DL Texture V Offset: %f", gstate_c.uv.vOff); - break; - - case GE_CMD_SCISSOR1: - { - int x1 = data & 0x3ff; - int y1 = data >> 10; - DEBUG_LOG(G3D, "DL Scissor TL: %i, %i", x1,y1); - } - break; - case GE_CMD_SCISSOR2: - { - int x2 = data & 0x3ff; - int y2 = data >> 10; - DEBUG_LOG(G3D, "DL Scissor BR: %i, %i", x2, y2); - } - break; - - case GE_CMD_MINZ: - DEBUG_LOG(G3D, "DL MinZ: %i", data); - break; - - case GE_CMD_MAXZ: - DEBUG_LOG(G3D, "DL MaxZ: %i", data); - break; - - case GE_CMD_FRAMEBUFPTR: - DEBUG_LOG(G3D, "DL FramebufPtr: %08x", data); - break; - - case GE_CMD_FRAMEBUFWIDTH: - DEBUG_LOG(G3D, "DL FramebufWidth: %i", data); - break; - - case GE_CMD_FRAMEBUFPIXFORMAT: - break; - - case GE_CMD_TEXADDR0: - gstate_c.Dirty(DIRTY_TEXTURE_IMAGE); - case GE_CMD_TEXADDR1: - case GE_CMD_TEXADDR2: - case GE_CMD_TEXADDR3: - case GE_CMD_TEXADDR4: - case GE_CMD_TEXADDR5: - case GE_CMD_TEXADDR6: - case GE_CMD_TEXADDR7: - DEBUG_LOG(G3D,"DL Texture address %i: %06x", cmd-GE_CMD_TEXADDR0, data); - break; - - case GE_CMD_TEXBUFWIDTH0: - gstate_c.Dirty(DIRTY_TEXTURE_IMAGE); - case GE_CMD_TEXBUFWIDTH1: - case GE_CMD_TEXBUFWIDTH2: - case GE_CMD_TEXBUFWIDTH3: - case GE_CMD_TEXBUFWIDTH4: - case GE_CMD_TEXBUFWIDTH5: - case GE_CMD_TEXBUFWIDTH6: - case GE_CMD_TEXBUFWIDTH7: - DEBUG_LOG(G3D,"DL Texture BUFWIDTH %i: %06x", cmd-GE_CMD_TEXBUFWIDTH0, data); - break; - - case GE_CMD_CLUTADDR: - //DEBUG_LOG(G3D,"CLUT base addr: %06x", data); - break; - - case GE_CMD_CLUTADDRUPPER: - DEBUG_LOG(G3D,"DL CLUT addr: %08x", ((gstate.clutaddrupper & 0xFF0000)<<8) | (gstate.clutaddr & 0xFFFFFF)); - break; - - case GE_CMD_LOADCLUT: - // This could be used to "dirty" textures with clut. - { - u32 clutAddr = gstate.getClutAddress(); - if (clutAddr) - { - DEBUG_LOG(G3D,"DL Clut load: %08x", clutAddr); - } - else - { - DEBUG_LOG(G3D,"DL Empty Clut load"); - } - // Should hash and invalidate all paletted textures on use - } - break; - -//case GE_CMD_TRANSFERSRC: - - case GE_CMD_TRANSFERSRCW: - { - u32 xferSrc = (gstate.transfersrc & 0x00FFFFFF) | ((data & 0xFF0000) << 8); - u32 xferSrcW = data & 0x3FF; - DEBUG_LOG(G3D,"Block Transfer Src: %08x W: %i", xferSrc, xferSrcW); - break; - } -// case GE_CMD_TRANSFERDST: - - case GE_CMD_TRANSFERDSTW: - { - u32 xferDst = (gstate.transferdst & 0x00FFFFFF) | ((data & 0xFF0000) << 8); - u32 xferDstW = data & 0x3FF; - DEBUG_LOG(G3D,"Block Transfer Dest: %08x W: %i", xferDst, xferDstW); - break; - } - - case GE_CMD_TRANSFERSRCPOS: - { - u32 x = (data & 1023)+1; - u32 y = ((data>>10) & 1023)+1; - DEBUG_LOG(G3D, "DL Block Transfer Src Rect TL: %i, %i", x, y); - break; - } - - case GE_CMD_TRANSFERDSTPOS: - { - u32 x = (data & 1023)+1; - u32 y = ((data>>10) & 1023)+1; - DEBUG_LOG(G3D, "DL Block Transfer Dest Rect TL: %i, %i", x, y); - break; - } - - case GE_CMD_TRANSFERSIZE: - { - u32 w = (data & 1023)+1; - u32 h = ((data>>10) & 1023)+1; - DEBUG_LOG(G3D, "DL Block Transfer Rect Size: %i x %i", w, h); - break; - } - - case GE_CMD_TRANSFERSTART: - { - u32 srcBasePtr = gstate.getTransferSrcAddress(); - u32 srcStride = gstate.getTransferSrcStride(); - - u32 dstBasePtr = gstate.getTransferDstAddress(); - u32 dstStride = gstate.getTransferDstStride(); - - int srcX = gstate.getTransferSrcX(); - int srcY = gstate.getTransferSrcY(); - - int dstX = gstate.getTransferDstX(); - int dstY = gstate.getTransferDstY(); - - int width = gstate.getTransferWidth(); - int height = gstate.getTransferHeight(); - - int bpp = gstate.getTransferBpp(); - - DEBUG_LOG(G3D, "Block transfer: %08x/%x -> %08x/%x, %ix%ix%i (%i,%i)->(%i,%i)", srcBasePtr, srcStride, dstBasePtr, dstStride, width, height, bpp, srcX, srcY, dstX, dstY); - - for (int y = 0; y < height; y++) { - const u8 *src = Memory::GetPointer(srcBasePtr + ((y + srcY) * srcStride + srcX) * bpp); - u8 *dst = Memory::GetPointer(dstBasePtr + ((y + dstY) * dstStride + dstX) * bpp); - memcpy(dst, src, width * bpp); - } - - CBreakPoints::ExecMemCheck(srcBasePtr + (srcY * srcStride + srcX) * bpp, false, height * srcStride * bpp, currentMIPS->pc); - CBreakPoints::ExecMemCheck(dstBasePtr + (srcY * dstStride + srcX) * bpp, true, height * dstStride * bpp, currentMIPS->pc); - - // TODO: Correct timing appears to be 1.9, but erring a bit low since some of our other timing is inaccurate. - cyclesExecuted += ((height * width * bpp) * 16) / 10; - break; - } - - case GE_CMD_TEXSIZE0: - gstate_c.Dirty(DIRTY_TEXTURE_IMAGE); - gstate_c.curTextureWidth = 1 << (gstate.texsize[0] & 0xf); - gstate_c.curTextureHeight = 1 << ((gstate.texsize[0]>>8) & 0xf); - //fall thru - ignoring the mipmap sizes for now - case GE_CMD_TEXSIZE1: - case GE_CMD_TEXSIZE2: - case GE_CMD_TEXSIZE3: - case GE_CMD_TEXSIZE4: - case GE_CMD_TEXSIZE5: - case GE_CMD_TEXSIZE6: - case GE_CMD_TEXSIZE7: - DEBUG_LOG(G3D,"DL Texture Size: %06x", data); - break; - - case GE_CMD_ZBUFPTR: - DEBUG_LOG(G3D,"Zbuf Ptr: %06x", data); - break; - - case GE_CMD_ZBUFWIDTH: - DEBUG_LOG(G3D,"Zbuf Width: %i", data); - break; - - case GE_CMD_AMBIENTCOLOR: - DEBUG_LOG(G3D,"DL Ambient Color: %06x", data); - break; - - case GE_CMD_AMBIENTALPHA: - DEBUG_LOG(G3D,"DL Ambient Alpha: %06x", data); - break; - - case GE_CMD_MATERIALAMBIENT: - DEBUG_LOG(G3D,"DL Material Ambient Color: %06x", data); - break; - - case GE_CMD_MATERIALDIFFUSE: - DEBUG_LOG(G3D,"DL Material Diffuse Color: %06x", data); - break; - - case GE_CMD_MATERIALEMISSIVE: - DEBUG_LOG(G3D,"DL Material Emissive Color: %06x", data); - break; - - case GE_CMD_MATERIALSPECULAR: - DEBUG_LOG(G3D,"DL Material Specular Color: %06x", data); - break; - - case GE_CMD_MATERIALALPHA: - DEBUG_LOG(G3D,"DL Material Alpha Color: %06x", data); - break; - - case GE_CMD_MATERIALSPECULARCOEF: - DEBUG_LOG(G3D,"DL Material specular coef: %f", getFloat24(data)); - break; - - case GE_CMD_LIGHTTYPE0: - case GE_CMD_LIGHTTYPE1: - case GE_CMD_LIGHTTYPE2: - case GE_CMD_LIGHTTYPE3: - DEBUG_LOG(G3D,"DL Light %i type: %06x", cmd-GE_CMD_LIGHTTYPE0, data); - break; - - case GE_CMD_LX0:case GE_CMD_LY0:case GE_CMD_LZ0: - case GE_CMD_LX1:case GE_CMD_LY1:case GE_CMD_LZ1: - case GE_CMD_LX2:case GE_CMD_LY2:case GE_CMD_LZ2: - case GE_CMD_LX3:case GE_CMD_LY3:case GE_CMD_LZ3: - { - int n = cmd - GE_CMD_LX0; - int l = n / 3; - int c = n % 3; - float val = getFloat24(data); - DEBUG_LOG(G3D,"DL Light %i %c pos: %f", l, c+'X', val); - } - break; - - case GE_CMD_LDX0:case GE_CMD_LDY0:case GE_CMD_LDZ0: - case GE_CMD_LDX1:case GE_CMD_LDY1:case GE_CMD_LDZ1: - case GE_CMD_LDX2:case GE_CMD_LDY2:case GE_CMD_LDZ2: - case GE_CMD_LDX3:case GE_CMD_LDY3:case GE_CMD_LDZ3: - { - int n = cmd - GE_CMD_LDX0; - int l = n / 3; - int c = n % 3; - float val = getFloat24(data); - DEBUG_LOG(G3D,"DL Light %i %c dir: %f", l, c+'X', val); - } - break; - - case GE_CMD_LKA0:case GE_CMD_LKB0:case GE_CMD_LKC0: - case GE_CMD_LKA1:case GE_CMD_LKB1:case GE_CMD_LKC1: - case GE_CMD_LKA2:case GE_CMD_LKB2:case GE_CMD_LKC2: - case GE_CMD_LKA3:case GE_CMD_LKB3:case GE_CMD_LKC3: - { - int n = cmd - GE_CMD_LKA0; - int l = n / 3; - int c = n % 3; - float val = getFloat24(data); - DEBUG_LOG(G3D,"DL Light %i %c att: %f", l, c+'X', val); - } - break; - - - case GE_CMD_LAC0:case GE_CMD_LAC1:case GE_CMD_LAC2:case GE_CMD_LAC3: - case GE_CMD_LDC0:case GE_CMD_LDC1:case GE_CMD_LDC2:case GE_CMD_LDC3: - case GE_CMD_LSC0:case GE_CMD_LSC1:case GE_CMD_LSC2:case GE_CMD_LSC3: - { - float r = (float)(data>>16)/255.0f; - float g = (float)((data>>8) & 0xff)/255.0f; - float b = (float)(data & 0xff)/255.0f; - - int l = (cmd - GE_CMD_LAC0) / 3; - int t = (cmd - GE_CMD_LAC0) % 3; - // DEBUG_LOG(G3D, "DL Light color %i %c att: %f", l, c + 'X', val); - } - break; - - case GE_CMD_VIEWPORTXSCALE: - case GE_CMD_VIEWPORTYSCALE: - case GE_CMD_VIEWPORTZSCALE: - case GE_CMD_VIEWPORTXCENTER: - case GE_CMD_VIEWPORTYCENTER: - case GE_CMD_VIEWPORTZCENTER: - DEBUG_LOG(G3D,"DL Viewport param %i: %f", cmd-GE_CMD_VIEWPORTXSCALE, getFloat24(data)); - break; - case GE_CMD_LIGHTENABLE0: - case GE_CMD_LIGHTENABLE1: - case GE_CMD_LIGHTENABLE2: - case GE_CMD_LIGHTENABLE3: - DEBUG_LOG(G3D,"DL Light %i enable: %d", cmd-GE_CMD_LIGHTENABLE0, data); - break; - case GE_CMD_CULL: - DEBUG_LOG(G3D,"DL cull: %06x", data); - break; - - case GE_CMD_LIGHTMODE: - DEBUG_LOG(G3D,"DL Shade mode: %06x", data); - break; - - case GE_CMD_PATCHDIVISION: - break; - - case GE_CMD_MATERIALUPDATE: - DEBUG_LOG(G3D,"DL Material Update: %d", data); - break; - - - ////////////////////////////////////////////////////////////////// - // CLEARING - ////////////////////////////////////////////////////////////////// - case GE_CMD_CLEARMODE: - // If it becomes a performance problem, check diff&1 - DEBUG_LOG(G3D,"DL Clear mode: %06x", data); - break; - - - ////////////////////////////////////////////////////////////////// - // ALPHA BLENDING - ////////////////////////////////////////////////////////////////// - case GE_CMD_ALPHABLENDENABLE: - DEBUG_LOG(G3D,"DL Alpha blend enable: %d", data); - break; - - case GE_CMD_BLENDMODE: - DEBUG_LOG(G3D,"DL Blend mode: %06x", data); - break; - - case GE_CMD_BLENDFIXEDA: - DEBUG_LOG(G3D,"DL Blend fix A: %06x", data); - break; - - case GE_CMD_BLENDFIXEDB: - DEBUG_LOG(G3D,"DL Blend fix B: %06x", data); - break; - - case GE_CMD_ALPHATESTENABLE: - DEBUG_LOG(G3D,"DL Alpha test enable: %d", data); - // This is done in the shader. - break; - - case GE_CMD_ALPHATEST: - DEBUG_LOG(G3D,"DL Alpha test settings"); - break; - - case GE_CMD_TEXFUNC: - { - DEBUG_LOG(G3D,"DL TexFunc %i", data&7); - /* - int m=GL_MODULATE; - switch (data & 7) - { - case 0: m=GL_MODULATE; break; - case 1: m=GL_DECAL; break; - case 2: m=GL_BLEND; break; - case 3: m=GL_REPLACE; break; - case 4: m=GL_ADD; break; - }*/ - - /* - glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE); - glTexEnvi(GL_TEXTURE_ENV, GL_COMBINE_RGB, GL_MODULATE); - glTexEnvi(GL_TEXTURE_ENV, GL_SOURCE0_RGB, GL_CONSTANT); - glTexEnvi(GL_TEXTURE_ENV, GL_OPERAND0_RGB, GL_SRC_COLOR); - glTexEnvi(GL_TEXTURE_ENV, GL_SOURCE1_RGB, GL_TEXTURE); - glTexEnvi(GL_TEXTURE_ENV, GL_OPERAND1_RGB, GL_SRC_COLOR); - glTexEnvi(GL_TEXTURE_ENV, GL_RGB_SCALE, 1); - - glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, m); - glTexEnvi(GL_TEXTURE_ENV, GL_COMBINE_ALPHA, GL_MODULATE);*/ - break; - } - case GE_CMD_TEXFILTER: - { - int min = data & 7; - int mag = (data >> 8) & 1; - DEBUG_LOG(G3D,"DL TexFilter min: %i mag: %i", min, mag); - } - - break; - ////////////////////////////////////////////////////////////////// - // Z/STENCIL TESTING - ////////////////////////////////////////////////////////////////// - - case GE_CMD_ZTESTENABLE: - DEBUG_LOG(G3D,"DL Z test enable: %d", data & 1); - break; - - case GE_CMD_STENCILTESTENABLE: - DEBUG_LOG(G3D,"DL Stencil test enable: %d", data); - break; - - case GE_CMD_ZTEST: - { - DEBUG_LOG(G3D,"DL Z test mode: %i", data); - } - break; - - case GE_CMD_MORPHWEIGHT0: - case GE_CMD_MORPHWEIGHT1: - case GE_CMD_MORPHWEIGHT2: - case GE_CMD_MORPHWEIGHT3: - case GE_CMD_MORPHWEIGHT4: - case GE_CMD_MORPHWEIGHT5: - case GE_CMD_MORPHWEIGHT6: - case GE_CMD_MORPHWEIGHT7: - { - int index = cmd - GE_CMD_MORPHWEIGHT0; - float weight = getFloat24(data); - DEBUG_LOG(G3D,"DL MorphWeight %i = %f", index, weight); - gstate_c.morphWeights[index] = weight; - } - break; - - case GE_CMD_DITH0: - case GE_CMD_DITH1: - case GE_CMD_DITH2: - case GE_CMD_DITH3: - DEBUG_LOG(G3D,"DL DitherMatrix %i = %06x",cmd-GE_CMD_DITH0,data); - break; - - case GE_CMD_WORLDMATRIXNUMBER: - gstate.worldmtxnum = data&0xF; - break; - - case GE_CMD_WORLDMATRIXDATA: - { - int num = gstate.worldmtxnum & 0xF; - if (num < 12) { - gstate.worldMatrix[num] = getFloat24(data); - } - gstate.worldmtxnum = (++num) & 0xF; - } - break; - - case GE_CMD_VIEWMATRIXNUMBER: - gstate.viewmtxnum = data&0xF; - break; - - case GE_CMD_VIEWMATRIXDATA: - { - int num = gstate.viewmtxnum & 0xF; - if (num < 12) { - gstate.viewMatrix[num] = getFloat24(data); - } - gstate.viewmtxnum = (++num) & 0xF; - } - break; - - case GE_CMD_PROJMATRIXNUMBER: - gstate.projmtxnum = data&0xF; - break; - - case GE_CMD_PROJMATRIXDATA: - { - int num = gstate.projmtxnum & 0xF; - gstate.projMatrix[num] = getFloat24(data); - gstate.projmtxnum = (++num) & 0xF; - } - break; - - case GE_CMD_TGENMATRIXNUMBER: - gstate.texmtxnum = data&0xF; - break; - - case GE_CMD_TGENMATRIXDATA: - { - int num = gstate.texmtxnum & 0xF; - if (num < 12) { - gstate.tgenMatrix[num] = getFloat24(data); - } - gstate.texmtxnum = (++num) & 0xF; - } - break; - - case GE_CMD_BONEMATRIXNUMBER: - gstate.boneMatrixNumber = data & 0x7F; - break; - - case GE_CMD_BONEMATRIXDATA: - { - int num = gstate.boneMatrixNumber & 0x7F; - if (num < 96) { - gstate.boneMatrix[num] = getFloat24(data); - } - gstate.boneMatrixNumber = (++num) & 0x7F; - } - break; - - default: - GPUCommon::ExecuteOp(op, diff); - break; - } -} - -void NullGPU::GetStats(char *buffer, size_t bufsize) { - snprintf(buffer, bufsize, "NullGPU: (N/A)"); -} - -void NullGPU::InvalidateCache(u32 addr, int size, GPUInvalidationType type) { - // Nothing to invalidate. -} - -void NullGPU::NotifyVideoUpload(u32 addr, int size, int width, int format) { - // Nothing to do. -} - -bool NullGPU::PerformMemoryCopy(u32 dest, u32 src, int size) { - // Nothing to update. - InvalidateCache(dest, size, GPU_INVALIDATE_HINT); - return false; -} - -bool NullGPU::PerformMemorySet(u32 dest, u8 v, int size) { - // Nothing to update. - InvalidateCache(dest, size, GPU_INVALIDATE_HINT); - return false; -} - -bool NullGPU::PerformMemoryDownload(u32 dest, int size) { - // Nothing to update. - InvalidateCache(dest, size, GPU_INVALIDATE_HINT); - return false; -} - -bool NullGPU::PerformMemoryUpload(u32 dest, int size) { - // Nothing to update. - InvalidateCache(dest, size, GPU_INVALIDATE_HINT); - return false; -} - -bool NullGPU::PerformStencilUpload(u32 dest, int size) { - return false; -} - -bool NullGPU::FramebufferReallyDirty() { - return !(gstate_c.skipDrawReason & SKIPDRAW_SKIPFRAME); -} diff --git a/GPU/Null/NullGpu.h b/GPU/Null/NullGpu.h deleted file mode 100644 index 5969dcfc8fc5..000000000000 --- a/GPU/Null/NullGpu.h +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (c) 2012- PPSSPP Project. - -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, version 2.0 or later versions. - -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License 2.0 for more details. - -// A copy of the GPL 2.0 should have been included with the program. -// If not, see http://www.gnu.org/licenses/ - -// Official git repository and contact information can be found at -// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/. - -#pragma once - -#include "GPU/GPUState.h" -#include "GPU/GPUCommon.h" - -class ShaderManagerGLES; - -class NullGPU : public GPUCommon { -public: - NullGPU(); - ~NullGPU(); - - void CheckGPUFeatures() override {} - void InitClear() override {} - void ExecuteOp(u32 op, u32 diff) override; - - void SetDisplayFramebuffer(u32 framebuf, u32 stride, GEBufferFormat format) override {} - void CopyDisplayToOutput(bool reallyDirty) override {} - void GetStats(char *buffer, size_t bufsize) override; - void InvalidateCache(u32 addr, int size, GPUInvalidationType type) override; - void NotifyVideoUpload(u32 addr, int size, int width, int format) override; - bool PerformMemoryCopy(u32 dest, u32 src, int size) override; - bool PerformMemorySet(u32 dest, u8 v, int size) override; - bool PerformMemoryDownload(u32 dest, int size) override; - bool PerformMemoryUpload(u32 dest, int size) override; - bool PerformStencilUpload(u32 dest, int size) override; - void ClearCacheNextFrame() override {} - bool FramebufferDirty() override { return true; } - - void DeviceLost() override {} - void DeviceRestore() override {} - void DumpNextFrame() override {} - - void Resized() override {} - void GetReportingInfo(std::string &primaryInfo, std::string &fullInfo) override { - primaryInfo = "NULL"; - fullInfo = "NULL"; - } - - bool FramebufferReallyDirty() override; - -protected: - void FastRunLoop(DisplayList &list) override; -}; diff --git a/GPU/Software/RasterizerRectangle.cpp b/GPU/Software/RasterizerRectangle.cpp index 668a9476e3d6..828a7d622b83 100644 --- a/GPU/Software/RasterizerRectangle.cpp +++ b/GPU/Software/RasterizerRectangle.cpp @@ -96,7 +96,7 @@ void DrawSprite(const VertexData& v0, const VertexData& v1) { int z = pos0.z; float fog = 1.0f; - bool isWhite = v0.color0 == Vec4(255, 255, 255, 255); + bool isWhite = v1.color0 == Vec4(255, 255, 255, 255); if (gstate.isTextureMapEnabled()) { // 1:1 (but with mirror support) texture mapping! @@ -153,7 +153,7 @@ void DrawSprite(const VertexData& v0, const VertexData& v1) { } } else { for (int x = pos0.x; x < pos1.x; x++) { - Vec4 prim_color = v0.color0; + Vec4 prim_color = v1.color0; Vec4 tex_color = Vec4::FromRGBA(nearestFunc(s, t, texptr, texbufw, 0)); prim_color = ModulateRGBA(prim_color, tex_color); if (prim_color.a() > 0) { @@ -171,7 +171,7 @@ void DrawSprite(const VertexData& v0, const VertexData& v1) { int s = s_start; // Not really that fast but faster than triangle. for (int x = pos0.x; x < pos1.x; x++) { - Vec4 prim_color = v0.color0; + Vec4 prim_color = v1.color0; Vec4 tex_color = Vec4::FromRGBA(nearestFunc(s, t, texptr, texbufw, 0)); prim_color = GetTextureFunctionOutput(prim_color, tex_color); DrawingCoords pos(x, y, z); @@ -199,13 +199,13 @@ void DrawSprite(const VertexData& v0, const VertexData& v1) { gstate.getTextureFunction() == GE_TEXFUNC_MODULATE && gstate.getColorMask() == 0x000000 && gstate.FrameBufFormat() == GE_FORMAT_5551) { - if (v0.color0.a() == 0) + if (v1.color0.a() == 0) return; for (int y = pos0.y; y < pos1.y; y++) { u16 *pixel = fb.Get16Ptr(pos0.x, y, gstate.FrameBufStride()); for (int x = pos0.x; x < pos1.x; x++) { - Vec4 prim_color = v0.color0; + Vec4 prim_color = v1.color0; DrawSinglePixel5551(pixel, prim_color.ToRGBA()); pixel++; } @@ -213,7 +213,7 @@ void DrawSprite(const VertexData& v0, const VertexData& v1) { } else { for (int y = pos0.y; y < pos1.y; y++) { for (int x = pos0.x; x < pos1.x; x++) { - Vec4 prim_color = v0.color0; + Vec4 prim_color = v1.color0; DrawingCoords pos(x, y, z); DrawSinglePixelNonClear(pos, (u16)z, fog, prim_color); } @@ -259,9 +259,9 @@ bool RectangleFastPath(const VertexData &v0, const VertexData &v1) { g_needsClearAfterDialog = false; // Afterwards, we also need to clear the actual destination. Can do a fast rectfill. gstate.textureMapEnable &= ~1; - VertexData newV0 = v0; - newV0.color0 = Vec4(0, 0, 0, 255); - Rasterizer::DrawSprite(newV0, v1); + VertexData newV1 = v1; + newV1.color0 = Vec4(0, 0, 0, 255); + Rasterizer::DrawSprite(v0, newV1); gstate.textureMapEnable |= 1; } return true; diff --git a/GPU/Software/Sampler.cpp b/GPU/Software/Sampler.cpp index 0442cde30d93..63a0f79b0d24 100644 --- a/GPU/Software/Sampler.cpp +++ b/GPU/Software/Sampler.cpp @@ -15,6 +15,7 @@ // Official git repository and contact information can be found at // https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/. +#include "ppsspp_config.h" #include #include #include "Common/ColorConv.h" @@ -88,7 +89,7 @@ SamplerJitCache::SamplerJitCache() AllocCodeSpace(1024 * 64 * 4); // Add some random code to "help" MSVC's buggy disassembler :( -#if defined(_WIN32) && (defined(_M_IX86) || defined(_M_X64)) +#if defined(_WIN32) && (defined(_M_IX86) || defined(_M_X64)) && !PPSSPP_PLATFORM(UWP) using namespace Gen; for (int i = 0; i < 100; i++) { MOV(32, R(EAX), R(EBX)); @@ -214,8 +215,7 @@ NearestFunc SamplerJitCache::GetNearest(const SamplerID &id) { Clear(); } - // TODO -#ifdef _M_X64 +#if defined(_M_X64) && !PPSSPP_PLATFORM(UWP) addresses_[id] = GetCodePointer(); NearestFunc func = Compile(id); cache_[id] = func; @@ -239,7 +239,7 @@ LinearFunc SamplerJitCache::GetLinear(const SamplerID &id) { } // TODO -#ifdef _M_X64 +#if defined(_M_X64) && !PPSSPP_PLATFORM(UWP) addresses_[id] = GetCodePointer(); LinearFunc func = CompileLinear(id); cache_[id] = (NearestFunc)func; diff --git a/GPU/Software/SoftGpu.cpp b/GPU/Software/SoftGpu.cpp index 7f3547c401a1..bff4f56be6ca 100644 --- a/GPU/Software/SoftGpu.cpp +++ b/GPU/Software/SoftGpu.cpp @@ -25,13 +25,14 @@ #include "Common/GraphicsContext.h" #include "Core/Config.h" #include "Core/ConfigValues.h" +#include "Core/Core.h" #include "Core/Debugger/Breakpoints.h" #include "Core/MemMap.h" #include "Core/HLE/sceKernelInterrupt.h" #include "Core/HLE/sceGe.h" #include "Core/MIPS/MIPS.h" #include "Core/Reporting.h" -#include "Core/Core.h" +#include "Core/Util/PPGeDraw.h" #include "Common/Profiler/Profiler.h" #include "Common/GPU/thin3d.h" @@ -68,29 +69,31 @@ SoftGPU::SoftGPU(GraphicsContext *gfxCtx, Draw::DrawContext *draw) Sampler::Init(); drawEngine_ = new SoftwareDrawEngine(); drawEngineCommon_ = drawEngine_; - presentation_ = new PresentationCommon(draw_); - switch (GetGPUBackend()) { - case GPUBackend::OPENGL: - presentation_->SetLanguage(gl_extensions.IsCoreContext ? GLSL_3xx : GLSL_1xx); - break; - case GPUBackend::DIRECT3D9: - ShaderTranslationInit(); - presentation_->SetLanguage(HLSL_D3D9); - break; - case GPUBackend::DIRECT3D11: - ShaderTranslationInit(); - presentation_->SetLanguage(HLSL_D3D11); - break; - case GPUBackend::VULKAN: - presentation_->SetLanguage(GLSL_VULKAN); - break; + if (gfxCtx && draw) { + presentation_ = new PresentationCommon(draw_); + + switch (GetGPUBackend()) { + case GPUBackend::OPENGL: + presentation_->SetLanguage(draw_->GetShaderLanguageDesc().shaderLanguage); + break; + case GPUBackend::DIRECT3D9: + presentation_->SetLanguage(HLSL_D3D9); + break; + case GPUBackend::DIRECT3D11: + presentation_->SetLanguage(HLSL_D3D11); + break; + case GPUBackend::VULKAN: + presentation_->SetLanguage(GLSL_VULKAN); + break; + } } Resized(); } void SoftGPU::DeviceLost() { - presentation_->DeviceLost(); + if (presentation_) + presentation_->DeviceLost(); draw_ = nullptr; if (fbTex) { fbTex->Release(); @@ -99,8 +102,11 @@ void SoftGPU::DeviceLost() { } void SoftGPU::DeviceRestore() { - draw_ = (Draw::DrawContext *)PSP_CoreParameter().graphicsContext->GetDrawContext(); - presentation_->DeviceRestore(draw_); + if (PSP_CoreParameter().graphicsContext) + draw_ = (Draw::DrawContext *)PSP_CoreParameter().graphicsContext->GetDrawContext(); + if (presentation_) + presentation_->DeviceRestore(draw_); + PPGeSetDrawContext(draw_); } SoftGPU::~SoftGPU() { @@ -109,15 +115,8 @@ SoftGPU::~SoftGPU() { fbTex = nullptr; } - delete presentation_; - switch (GetGPUBackend()) { - case GPUBackend::DIRECT3D9: - case GPUBackend::DIRECT3D11: - ShaderTranslationShutdown(); - break; - case GPUBackend::OPENGL: - case GPUBackend::VULKAN: - break; + if (presentation_) { + delete presentation_; } Sampler::Shutdown(); @@ -169,7 +168,7 @@ void SoftGPU::ConvertTextureDescFrom16(Draw::TextureDesc &desc, int srcwidth, in // Copies RGBA8 data from RAM to the currently bound render target. void SoftGPU::CopyToCurrentFboFromDisplayRam(int srcwidth, int srcheight) { - if (!draw_) + if (!draw_ || !presentation_) return; float u0 = 0.0f; float u1; @@ -198,7 +197,7 @@ void SoftGPU::CopyToCurrentFboFromDisplayRam(int srcwidth, int srcheight) { bool hasImage = true; OutputFlags outputFlags = g_Config.iBufFilter == SCALE_NEAREST ? OutputFlags::NEAREST : OutputFlags::LINEAR; - bool hasPostShader = presentation_->HasPostShader(); + bool hasPostShader = presentation_ && presentation_->HasPostShader(); if (PSP_CoreParameter().compat.flags().DarkStalkersPresentHack && displayFormat_ == GE_FORMAT_5551 && g_DarkStalkerStretch != DSStretch::Off) { u8 *data = Memory::GetPointer(0x04088000); @@ -298,8 +297,10 @@ void SoftGPU::Resized() { PSP_CoreParameter().renderHeight = 272; } - presentation_->UpdateSize(PSP_CoreParameter().pixelWidth, PSP_CoreParameter().pixelHeight, PSP_CoreParameter().renderWidth, PSP_CoreParameter().renderHeight); - presentation_->UpdatePostShader(); + if (presentation_) { + presentation_->UpdateSize(PSP_CoreParameter().pixelWidth, PSP_CoreParameter().pixelHeight, PSP_CoreParameter().renderWidth, PSP_CoreParameter().renderHeight); + presentation_->UpdatePostShader(); + } } void SoftGPU::FastRunLoop(DisplayList &list) { diff --git a/GPU/Vulkan/DrawEngineVulkan.cpp b/GPU/Vulkan/DrawEngineVulkan.cpp index b2f86d23fd8a..12897153a96a 100644 --- a/GPU/Vulkan/DrawEngineVulkan.cpp +++ b/GPU/Vulkan/DrawEngineVulkan.cpp @@ -598,7 +598,7 @@ void DrawEngineVulkan::DoFlush() { FrameData *frame = &frame_[vulkan_->GetCurFrame()]; - bool tess = gstate_c.bezier || gstate_c.spline; + bool tess = gstate_c.submitType == SubmitType::HW_BEZIER || gstate_c.submitType == SubmitType::HW_SPLINE; bool textureNeedsApply = false; if (gstate_c.IsDirty(DIRTY_TEXTURE_IMAGE | DIRTY_TEXTURE_PARAMS) && !gstate.isModeClear() && gstate.isTextureMapEnabled()) { @@ -803,6 +803,7 @@ void DrawEngineVulkan::DoFlush() { } PROFILE_THIS_SCOPE("updatestate"); + if (textureNeedsApply) { textureCache_->ApplyTexture(); textureCache_->GetVulkanHandles(imageView, sampler); @@ -817,7 +818,7 @@ void DrawEngineVulkan::DoFlush() { ConvertStateToVulkanKey(*framebufferManager_, shaderManager_, prim, pipelineKey_, dynState_); } - shaderManager_->GetShaders(prim, lastVType_, &vshader, &fshader, true, useHWTessellation_); // usehwtransform + shaderManager_->GetShaders(prim, lastVType_, &vshader, &fshader, true, useHWTessellation_, decOptions_.expandAllWeightsToFloat); // usehwtransform _dbg_assert_msg_(vshader->UseHWTransform(), "Bad vshader"); Draw::NativeObject object = framebufferManager_->UseBufferedRendering() ? Draw::NativeObject::FRAMEBUFFER_RENDERPASS : Draw::NativeObject::BACKBUFFER_RENDERPASS; @@ -860,8 +861,6 @@ void DrawEngineVulkan::DoFlush() { UpdateUBOs(frame); VkDescriptorSet ds = GetOrCreateDescriptorSet(imageView, sampler, baseBuf, lightBuf, boneBuf, tess); - { - PROFILE_THIS_SCOPE("renderman_q"); const uint32_t dynamicUBOOffsets[3] = { baseUBOOffset, lightUBOOffset, boneUBOOffset, @@ -870,13 +869,13 @@ void DrawEngineVulkan::DoFlush() { int stride = dec_->GetDecVtxFmt().stride; if (useElements) { - if (!ibuf) + if (!ibuf) { ibOffset = (uint32_t)frame->pushIndex->Push(decIndex, sizeof(uint16_t) * indexGen.VertexCount(), &ibuf); + } renderManager->DrawIndexed(pipelineLayout_, ds, ARRAY_SIZE(dynamicUBOOffsets), dynamicUBOOffsets, vbuf, vbOffset, ibuf, ibOffset, vertexCount, 1, VK_INDEX_TYPE_UINT16); } else { renderManager->Draw(pipelineLayout_, ds, ARRAY_SIZE(dynamicUBOOffsets), dynamicUBOOffsets, vbuf, vbOffset, vertexCount); } - } } else { PROFILE_THIS_SCOPE("soft"); // Decode to "decoded" @@ -940,7 +939,7 @@ void DrawEngineVulkan::DoFlush() { sampler = nullSampler_; } if (!lastPipeline_ || gstate_c.IsDirty(DIRTY_BLEND_STATE | DIRTY_VIEWPORTSCISSOR_STATE | DIRTY_RASTER_STATE | DIRTY_DEPTHSTENCIL_STATE | DIRTY_VERTEXSHADER_STATE | DIRTY_FRAGMENTSHADER_STATE) || prim != lastPrim_) { - shaderManager_->GetShaders(prim, lastVType_, &vshader, &fshader, false, false); // usehwtransform + shaderManager_->GetShaders(prim, lastVType_, &vshader, &fshader, false, false, decOptions_.expandAllWeightsToFloat); // usehwtransform _dbg_assert_msg_(!vshader->UseHWTransform(), "Bad vshader"); if (prim != lastPrim_ || gstate_c.IsDirty(DIRTY_BLEND_STATE | DIRTY_VIEWPORTSCISSOR_STATE | DIRTY_RASTER_STATE | DIRTY_DEPTHSTENCIL_STATE)) { ConvertStateToVulkanKey(*framebufferManager_, shaderManager_, prim, pipelineKey_, dynState_); diff --git a/GPU/Vulkan/FramebufferManagerVulkan.cpp b/GPU/Vulkan/FramebufferManagerVulkan.cpp index c293c1b5b9a8..a9e2fb230bdf 100644 --- a/GPU/Vulkan/FramebufferManagerVulkan.cpp +++ b/GPU/Vulkan/FramebufferManagerVulkan.cpp @@ -234,19 +234,7 @@ void FramebufferManagerVulkan::Bind2DShader() { cur2DPipeline_ = vulkan2D_->GetPipeline(rp, vsBasicTex_, fsBasicTex_); } -int FramebufferManagerVulkan::GetLineWidth() { - if (g_Config.iInternalResolution == 0) { - return std::max(1, (int)(renderWidth_ / 480)); - } else { - return g_Config.iInternalResolution; - } -} - -void FramebufferManagerVulkan::UpdateDownloadTempBuffer(VirtualFramebuffer *nvfb) { - // Nothing to do here. -} - -void FramebufferManagerVulkan::BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp) { +void FramebufferManagerVulkan::BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp, const char *tag) { if (!dst->fbo || !src->fbo || !useBufferedRendering_) { // This can happen if they recently switched from non-buffered. if (useBufferedRendering_) { @@ -312,9 +300,9 @@ void FramebufferManagerVulkan::BlitFramebuffer(VirtualFramebuffer *dst, int dstX const bool xOverlap = src == dst && srcX2 > dstX1 && srcX1 < dstX2; const bool yOverlap = src == dst && srcY2 > dstY1 && srcY1 < dstY2; if (sameSize && srcInsideBounds && dstInsideBounds && !(xOverlap && yOverlap)) { - draw_->CopyFramebufferImage(src->fbo, 0, srcX1, srcY1, 0, dst->fbo, 0, dstX1, dstY1, 0, dstX2 - dstX1, dstY2 - dstY1, 1, Draw::FB_COLOR_BIT, "BlitFramebuffer_Copy"); + draw_->CopyFramebufferImage(src->fbo, 0, srcX1, srcY1, 0, dst->fbo, 0, dstX1, dstY1, 0, dstX2 - dstX1, dstY2 - dstY1, 1, Draw::FB_COLOR_BIT, tag); } else { - draw_->BlitFramebuffer(src->fbo, srcX1, srcY1, srcX2, srcY2, dst->fbo, dstX1, dstY1, dstX2, dstY2, Draw::FB_COLOR_BIT, Draw::FB_BLIT_NEAREST, "BlitFramebuffer_Blit"); + draw_->BlitFramebuffer(src->fbo, srcX1, srcY1, srcX2, srcY2, dst->fbo, dstX1, dstY1, dstX2, dstY2, Draw::FB_COLOR_BIT, Draw::FB_BLIT_NEAREST, tag); } } diff --git a/GPU/Vulkan/FramebufferManagerVulkan.h b/GPU/Vulkan/FramebufferManagerVulkan.h index d8b20e3826b3..0aed7973618f 100644 --- a/GPU/Vulkan/FramebufferManagerVulkan.h +++ b/GPU/Vulkan/FramebufferManagerVulkan.h @@ -52,8 +52,6 @@ class FramebufferManagerVulkan : public FramebufferManagerCommon { void DeviceLost() override; void DeviceRestore(Draw::DrawContext *draw) override; - int GetLineWidth(); - bool NotifyStencilUpload(u32 addr, int size, StencilUpload flags = StencilUpload::NEEDS_CLEAR) override; // If within a render pass, this will just issue a regular clear. If beginning a new render pass, @@ -64,8 +62,7 @@ class FramebufferManagerVulkan : public FramebufferManagerCommon { void Bind2DShader() override; // Used by ReadFramebufferToMemory and later framebuffer block copies - void BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp) override; - void UpdateDownloadTempBuffer(VirtualFramebuffer *nvfb) override; + void BlitFramebuffer(VirtualFramebuffer *dst, int dstX, int dstY, VirtualFramebuffer *src, int srcX, int srcY, int w, int h, int bpp, const char *tag) override; private: void InitDeviceObjects(); diff --git a/GPU/Vulkan/GPU_Vulkan.cpp b/GPU/Vulkan/GPU_Vulkan.cpp index afdebeef058c..2858224f05bb 100644 --- a/GPU/Vulkan/GPU_Vulkan.cpp +++ b/GPU/Vulkan/GPU_Vulkan.cpp @@ -184,7 +184,7 @@ GPU_Vulkan::~GPU_Vulkan() { void GPU_Vulkan::CheckGPUFeatures() { uint32_t features = 0; - if (!PSP_CoreParameter().compat.flags().DepthRangeHack) { + if (!PSP_CoreParameter().compat.flags().DisableRangeCulling) { features |= GPU_SUPPORTS_VS_RANGE_CULLING; } @@ -227,10 +227,11 @@ void GPU_Vulkan::CheckGPUFeatures() { features |= GPU_SUPPORTS_FRAMEBUFFER_BLIT; features |= GPU_SUPPORTS_BLEND_MINMAX; features |= GPU_SUPPORTS_COPY_IMAGE; - features |= GPU_SUPPORTS_OES_TEXTURE_NPOT; + features |= GPU_SUPPORTS_TEXTURE_NPOT; features |= GPU_SUPPORTS_INSTANCE_RENDERING; features |= GPU_SUPPORTS_VERTEX_TEXTURE_FETCH; features |= GPU_SUPPORTS_TEXTURE_FLOAT; + features |= GPU_SUPPORTS_DEPTH_TEXTURE; if (vulkan_->GetDeviceInfo().canBlitToPreferredDepthStencilFormat) { features |= GPU_SUPPORTS_FRAMEBUFFER_BLIT_TO_DEPTH; diff --git a/GPU/Vulkan/ShaderManagerVulkan.cpp b/GPU/Vulkan/ShaderManagerVulkan.cpp index 4b54a77d83a0..9151e9299b33 100644 --- a/GPU/Vulkan/ShaderManagerVulkan.cpp +++ b/GPU/Vulkan/ShaderManagerVulkan.cpp @@ -228,11 +228,11 @@ uint64_t ShaderManagerVulkan::UpdateUniforms(bool useBufferedRendering) { return dirty; } -void ShaderManagerVulkan::GetShaders(int prim, u32 vertType, VulkanVertexShader **vshader, VulkanFragmentShader **fshader, bool useHWTransform, bool useHWTessellation) { +void ShaderManagerVulkan::GetShaders(int prim, u32 vertType, VulkanVertexShader **vshader, VulkanFragmentShader **fshader, bool useHWTransform, bool useHWTessellation, bool weightsAsFloat) { VShaderID VSID; if (gstate_c.IsDirty(DIRTY_VERTEXSHADER_STATE)) { gstate_c.Clean(DIRTY_VERTEXSHADER_STATE); - ComputeVertexShaderID(&VSID, vertType, useHWTransform, useHWTessellation); + ComputeVertexShaderID(&VSID, vertType, useHWTransform, useHWTessellation, weightsAsFloat); } else { VSID = lastVSID_; } @@ -265,7 +265,7 @@ void ShaderManagerVulkan::GetShaders(int prim, u32 vertType, VulkanVertexShader std::string genErrorString; uint64_t uniformMask = 0; // Not used uint32_t attributeMask = 0; // Not used - bool success = GenerateVertexShader(VSID, codeBuffer_, compat_, &attributeMask, &uniformMask, &genErrorString); + bool success = GenerateVertexShader(VSID, codeBuffer_, compat_, draw_->GetBugs(), &attributeMask, &uniformMask, &genErrorString); _assert_(success); vs = new VulkanVertexShader(vulkan_, VSID, codeBuffer_, useHWTransform); vsCache_.Insert(VSID, vs); @@ -278,7 +278,7 @@ void ShaderManagerVulkan::GetShaders(int prim, u32 vertType, VulkanVertexShader // Fragment shader not in cache. Let's compile it. std::string genErrorString; uint64_t uniformMask = 0; // Not used - bool success = GenerateFragmentShader(FSID, codeBuffer_, compat_, &uniformMask, &genErrorString); + bool success = GenerateFragmentShader(FSID, codeBuffer_, compat_, draw_->GetBugs(), &uniformMask, &genErrorString); _assert_(success); fs = new VulkanFragmentShader(vulkan_, FSID, codeBuffer_); fsCache_.Insert(FSID, fs); @@ -398,7 +398,7 @@ bool ShaderManagerVulkan::LoadCache(FILE *f) { std::string genErrorString; uint32_t attributeMask = 0; uint64_t uniformMask = 0; - if (!GenerateVertexShader(id, codeBuffer_, compat_, &attributeMask, &uniformMask, &genErrorString)) { + if (!GenerateVertexShader(id, codeBuffer_, compat_, draw_->GetBugs(), &attributeMask, &uniformMask, &genErrorString)) { return false; } VulkanVertexShader *vs = new VulkanVertexShader(vulkan_, id, codeBuffer_, useHWTransform); @@ -414,7 +414,7 @@ bool ShaderManagerVulkan::LoadCache(FILE *f) { } std::string genErrorString; uint64_t uniformMask = 0; - if (!GenerateFragmentShader(id, codeBuffer_, compat_, &uniformMask, &genErrorString)) { + if (!GenerateFragmentShader(id, codeBuffer_, compat_, draw_->GetBugs(), &uniformMask, &genErrorString)) { return false; } VulkanFragmentShader *fs = new VulkanFragmentShader(vulkan_, id, codeBuffer_); diff --git a/GPU/Vulkan/ShaderManagerVulkan.h b/GPU/Vulkan/ShaderManagerVulkan.h index e35a07a103a5..c7d036ce2110 100644 --- a/GPU/Vulkan/ShaderManagerVulkan.h +++ b/GPU/Vulkan/ShaderManagerVulkan.h @@ -88,7 +88,7 @@ class ShaderManagerVulkan : public ShaderManagerCommon { void DeviceRestore(VulkanContext *vulkan, Draw::DrawContext *draw); - void GetShaders(int prim, u32 vertType, VulkanVertexShader **vshader, VulkanFragmentShader **fshader, bool useHWTransform, bool useHWTessellation); + void GetShaders(int prim, u32 vertType, VulkanVertexShader **vshader, VulkanFragmentShader **fshader, bool useHWTransform, bool useHWTessellation, bool weightsAsFloat); void ClearShaders(); void DirtyShader(); void DirtyLastShader() override; diff --git a/GPU/Vulkan/StateMappingVulkan.cpp b/GPU/Vulkan/StateMappingVulkan.cpp index a636531e53db..0ae5f0305b00 100644 --- a/GPU/Vulkan/StateMappingVulkan.cpp +++ b/GPU/Vulkan/StateMappingVulkan.cpp @@ -253,6 +253,9 @@ void DrawEngineVulkan::ConvertStateToVulkanKey(FramebufferManagerVulkan &fbManag } if (gstate_c.IsDirty(DIRTY_DEPTHSTENCIL_STATE)) { + GenericStencilFuncState stencilState; + ConvertStencilFuncState(stencilState); + if (gstate.isModeClear()) { key.depthTestEnable = true; key.depthCompareOp = VK_COMPARE_OP_ALWAYS; @@ -275,7 +278,7 @@ void DrawEngineVulkan::ConvertStateToVulkanKey(FramebufferManagerVulkan &fbManag // We override this value in the pipeline from software transform for clear rectangles. dynState.stencilRef = 0xFF; // But we still apply the stencil write mask. - dynState.stencilWriteMask = (~gstate.getStencilWriteMask()) & 0xFF; + dynState.stencilWriteMask = stencilState.writeMask; } else { key.stencilTestEnable = false; key.stencilCompareOp = VK_COMPARE_OP_ALWAYS; @@ -299,9 +302,6 @@ void DrawEngineVulkan::ConvertStateToVulkanKey(FramebufferManagerVulkan &fbManag key.depthCompareOp = VK_COMPARE_OP_ALWAYS; } - GenericStencilFuncState stencilState; - ConvertStencilFuncState(stencilState); - // Stencil Test if (stencilState.enabled) { key.stencilTestEnable = true; diff --git a/GPU/Vulkan/TextureCacheVulkan.cpp b/GPU/Vulkan/TextureCacheVulkan.cpp index cf3f6d1758f4..e0977a45123e 100644 --- a/GPU/Vulkan/TextureCacheVulkan.cpp +++ b/GPU/Vulkan/TextureCacheVulkan.cpp @@ -383,7 +383,7 @@ static std::string ReadShaderSrc(const std::string &filename) { return ""; std::string src(data, sz); - free(data); + delete[] data; return src; } @@ -394,6 +394,10 @@ void TextureCacheVulkan::CompileScalingShader() { if (copyCS_ != VK_NULL_HANDLE) vulkan_->Delete().QueueDeleteShaderModule(copyCS_); textureShader_.clear(); + maxScaleFactor_ = 255; + } else if (uploadCS_ || copyCS_) { + // No need to recreate. + return; } if (!g_Config.bTexHardwareScaling) return; @@ -414,6 +418,7 @@ void TextureCacheVulkan::CompileScalingShader() { _dbg_assert_msg_(copyCS_ != VK_NULL_HANDLE, "failed to compile copy shader"); textureShader_ = g_Config.sTextureShaderName; + maxScaleFactor_ = shaderInfo->maxScale; } void TextureCacheVulkan::ReleaseTexture(TexCacheEntry *entry, bool delete_them) { @@ -759,6 +764,8 @@ void TextureCacheVulkan::BuildTexture(TexCacheEntry *const entry) { VkFormat dstFmt = GetDestFormat(GETextureFormat(entry->format), gstate.getClutPaletteFormat()); int scaleFactor = standardScaleFactor_; + if (scaleFactor > maxScaleFactor_) + scaleFactor = maxScaleFactor_; // Rachet down scale factor in low-memory mode. if (lowMemoryMode_) { @@ -923,6 +930,7 @@ void TextureCacheVulkan::BuildTexture(TexCacheEntry *const entry) { void *data; bool dataScaled = true; if (replaced.Valid()) { + // Directly load the replaced image. data = drawEngine_->GetPushBufferForTextureData()->PushAligned(size, &bufferOffset, &texBuf, pushAlignment); replaced.Load(i, data, stride); entry->vkTex->UploadMip(cmdInit, i, mipWidth, mipHeight, texBuf, bufferOffset, stride / bpp); @@ -1003,7 +1011,7 @@ void TextureCacheVulkan::BuildTexture(TexCacheEntry *const entry) { // Generate any additional mipmap levels. for (int level = maxLevel + 1; level <= maxLevelToGenerate; level++) { - entry->vkTex->GenerateMip(cmdInit, level); + entry->vkTex->GenerateMip(cmdInit, level, computeUpload ? VK_IMAGE_LAYOUT_GENERAL : VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL); } if (maxLevel == 0) { diff --git a/GPU/Vulkan/TextureCacheVulkan.h b/GPU/Vulkan/TextureCacheVulkan.h index a61ba47d20fe..7f8ae32d25ba 100644 --- a/GPU/Vulkan/TextureCacheVulkan.h +++ b/GPU/Vulkan/TextureCacheVulkan.h @@ -110,7 +110,7 @@ class TextureCacheVulkan : public TextureCacheCommon { private: void LoadTextureLevel(TexCacheEntry &entry, uint8_t *writePtr, int rowPitch, int level, int scaleFactor, VkFormat dstFmt); VkFormat GetDestFormat(GETextureFormat format, GEPaletteFormat clutFormat) const; - TexCacheEntry::TexStatus CheckAlpha(const u32 *pixelData, VkFormat dstFmt, int stride, int w, int h); + static TexCacheEntry::TexStatus CheckAlpha(const u32 *pixelData, VkFormat dstFmt, int stride, int w, int h); void UpdateCurrentClut(GEPaletteFormat clutFormat, u32 clutBase, bool clutIndexIsSimple) override; void ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer, GETextureFormat texFormat, FramebufferNotificationChannel channel) override; @@ -139,6 +139,7 @@ class TextureCacheVulkan : public TextureCacheCommon { Vulkan2D *vulkan2D_; std::string textureShader_; + int maxScaleFactor_ = 255; VkShaderModule uploadCS_ = VK_NULL_HANDLE; VkShaderModule copyCS_ = VK_NULL_HANDLE; diff --git a/MoltenVK/iOS/Frameworks/libMoltenVK.dylib b/MoltenVK/iOS/Frameworks/libMoltenVK.dylib new file mode 100755 index 0000000000000000000000000000000000000000..59a25a10993703d39c0bf77b0a94355e618c2b7c GIT binary patch literal 24467264 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 D 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 rP{1j2?|f%dSWcS&c-GxliI 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μ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�%JQNIw2TZ! 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%0DZoTdloJ8HE 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 q7kEN-!F;LN=E~3<&zx+nv8?yBbw}{Q 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 c7i(=XZJY9d z)i0!xeA6%Foz0>H^km;pV&6~Zj35PGmkQ5IV_!+f|EQ<7uds%qcf$RSjF9L9D*Axj zv0k=RfB)7avg(H-t0o47Ui`-Sqs)B}UCC+F&(fT8IZJyZZu(?+w3HoxkJ9PvQh2xZ ze74*u_m)Sgkv3V2HxjpHy2nV*zK^pN+J~;WN2d(a{->`Ne6gkdNzDH<6-rH(T^a5_ zP*mWZuMB&cb|f#Gym{33RNqq |;`I1*GzP_CG6g{QGDCK5S&a5YGK4jEm&k#A6 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 z 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£sJ1M|UP8* z1YO0m2mWX_bffE&Git=Fs8RW_i`%kR2j?P_)6^Yed(DPcVxLOPf?&LE%@3S)yW|`c zb?*Wml~2{J^L26NH95_$JAiHV4C>zKp?}EyUHBQe&QJ7Dc!=~b#MnyAgeLM)pWgR8 z?10~Gt-mTwx9cMh3?S9dlAGi$O1`VY2)u9&`n2U^p`Yz}| z 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 LnGu!*nxI>#083+q*SNtwUT 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ț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

    S%6kJs%Rrgf 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¨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∓J=q(qT_j0j0 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�bZw-j_w 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

    6ce2P#jrcCC52yT{3_ao*k+o-&&c^^b}y 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