Commit graph

73 commits

Author SHA1 Message Date
baggins183 3c0255b953
DebugPrintf in shaders (#1252)
* Add shader debug print opcode that uses NonSemantic DebugPrintf extension

* small correction for flags in Inst

* Fix IR Debug Print. Add StringLiteral op

* add missing microinstruction changes for debugprint

* cleanup. delete vaarg stuff. Smuggle format string in Info and flags

* more cleanup

* more

* (dont merge??) update sirit submodule

* fix num args 4 -> 5

* add notes about DebugPrint IR op

* use NumArgsOf again

* copyright

* update sirit submodule

* fix clangformat

* add new Value variant for string literal. Use arg0 for fmt string

* remove string pool changes

* Update src/shader_recompiler/ir/value.cpp

Co-authored-by: TheTurtle <47210458+raphaelthegreat@users.noreply.github.com>

---------

Co-authored-by: TheTurtle <47210458+raphaelthegreat@users.noreply.github.com>
2024-10-06 22:34:40 +03:00
Vinicius Rangel af398e3684
Devtools: PM4 Explorer (#1094)
* Devtools: Pause system

* Devtools: pm4 viewer

- new menu bar
- refactored video_info layer
- dump & inspect pm4 packets
- removed dumpPM4 config
- renamed System to DebugState
- add docking space
- simple video info constrained to window size

* Devtools: pm4 viewer - add combo to select the queue

* Devtools: pm4 viewer - add hex editor

* Devtools: pm4 viewer - dump current cmd

* add monospaced font to devtools

* Devtools: pm4 viewer - use spec op name

avoid some allocations
2024-10-03 22:43:23 +02:00
¥IGA bc6c0de76d
Better screenshots for 0.3.0 + misc changes (#1122)
* Better screenshots for 0.3.0 + misc changes

* Update BloodBorne screenshot
2024-09-28 16:17:11 +03:00
CrazyBloo 74c2888aaa
support for unlocking trophies (#854)
* add pugixml

* trophy_viewer: support for trophy unlocking

* nptrophy: UnlockTrophy(), DestroyContext()

* initial imgui popup

* queue to handle multiple trophies at once

* extract trophy info on game start + various fixes

* platinum trophy support + extract trophy data on startup

* format

* nptrophy: GetTrophyUnlockState

* implement vinicius' reviews
2024-09-11 06:50:55 +03:00
squidbus 411449cd51
Initial support for compiling on ARM64. (#788)
Some checks are pending
Reuse / reuse (push) Waiting to run
Clang Format / clang-format (push) Waiting to run
Linux-Qt / build (push) Waiting to run
Linux / build (push) Waiting to run
macOS-Qt / build (push) Waiting to run
macOS / build (push) Waiting to run
Windows-Qt / build (push) Waiting to run
Windows / build (push) Waiting to run
2024-09-09 13:23:16 +03:00
Vinicius Rangel 035cb3eeaa
Dear ImGui Implementation (#598)
* added imgui as dependency

* imgui renderer/basic input implementation

* imgui: add layers system

Add video info layer to show fps. Press F10 to toggle it.

* imgui: add custom imgui config

* imgui: gamepad capture, stopping propagation

* imgui: changed config & log file path to use portable dir

* videoout: render blank frame when video output is closed

required to render imgui even when game has no video output

- fixed merge compile-error
2024-09-08 22:50:32 +03:00
Xphalnos 7886761476 Reorganization of includes (Part 2) 2024-08-30 15:48:21 +02:00
squidbus a17150960f Add patches for F16C instructions under Rosetta 2. 2024-08-29 17:31:25 -07:00
Xphalnos d4be3dbb31 Lot of small fixes 2024-08-22 18:01:30 +02:00
Xphalnos 70576035b0 Misc changes 2024-08-18 17:56:29 +02:00
Alexandre Bouvier ad60ae1d40
cmake: prefer system ffmpeg library (#451) 2024-08-16 18:56:47 +03:00
Vladislav Mikhalin b5c69189e5 avplayer WIP 2024-08-15 22:00:51 +03:00
TheTurtle 1fb0da9b89
video_core: Crucial buffer cache fixes + proper GPU clears (#414)
* translator: Use templates for stronger type guarantees

* spirv: Define buffer offsets upfront

* Saves a lot of shader instructions

* buffer_cache: Use dynamic vertex input when available

* Fixes issues when games like dark souls rebind vertex buffers with different stride

* externals: Update boost

* spirv: Use runtime array for ssbos

* ssbos can be large and typically their size will vary, especially in generic copy/clear cs shaders

* fs: Lock when doing case insensitive search

* Dark Souls does fs lookups from different threads

* texture_cache: More precise invalidation from compute

* Fixes unrelated render targets being cleared

* texture_cache: Use hashes for protect gpu modified images from reupload

* translator: Treat V_CNDMASK as float

* Sometimes it can have input modifiers. Worst this will cause is some extra calls to uintBitsToFloat and opposite. But most often this is used as float anyway

* translator: Small optimization for V_SAD_U32

* Fix review

* clang format
2024-08-13 09:21:48 +03:00
georgemoralis 54b20e2938 update submodules for some neccesary sdl addons 2024-08-09 13:04:00 +03:00
georgemoralis 6a2e09a1df update submodules (possible mac fix?) 2024-08-09 00:02:25 +03:00
georgemoralis 5a68224a13 update submodules , fixed sdl update , rewrote config with new toml11 v4 2024-08-09 00:02:24 +03:00
georgemoralis e5087877ae revert some sdl switches 2024-08-08 22:31:14 +03:00
Xphalnos 254b9ffb50
Workflows cleanup + misc fixes (#371)
* Workflows cleanup

* clang-format

* SDL3: Disabling unnecessary options

* Revert CMakeLists.txt changes
2024-08-08 18:19:44 +03:00
georgemoralis 62e501f31f print git info in windows title 2024-08-01 00:56:10 +03:00
TheTurtle 0d6edaa0a0
Move presentation to separate thread/improve sync (#303)
* video_out: Move presentation to separate thread

* liverpool: Better sync for CPU flips

* driver: Make flip blocking

* videoout: Proper flip rate and vblank management

* config: Add vblank divider option

* clang format

* videoout: added `sceVideoOutWaitVblank`

* clang format

* vk_scheduler: Silly merge conflict

* externals: Add renderdoc API

* clang format

* reuse

* rdoc: manual capture trigger

* clang fmt

---------

Co-authored-by: psucien <168137814+psucien@users.noreply.github.com>
2024-07-28 15:54:09 +02:00
squidbus 426d82d07b Only use date library on macOS. 2024-07-21 22:36:12 +03:00
squidbus 66fa29059c Add initial macOS support. 2024-07-21 22:36:12 +03:00
psucien 2b52a17845 externals: Tracy updated to 0.11 2024-07-20 11:30:55 +02:00
georgemoralis fcc931956e submodules updated 2024-07-19 09:02:36 +03:00
georgemoralis d00a2465d5 update fixes for winpthreads 2024-07-19 08:50:55 +03:00
IndecisiveTurtle 432defd992 externals: Disable sdl pipewire
* Fixes audio problems in certain games
2024-07-15 01:29:16 +03:00
georgemoralis 63795ddb3a fixed CMakeLists 2024-07-11 13:14:42 +03:00
georgemoralis 18f922b28b changed path to boost so it doesn't conflict with previous 2024-07-11 13:14:42 +03:00
psucien d3e8e95334 boost: submodule update 2024-07-11 13:14:42 +03:00
psucien bad51953ac boost: latest updates 2024-07-11 13:14:42 +03:00
psucien 034b76eb33 boost submodule added 2024-07-11 13:14:42 +03:00
psucien d6d2ed6e33 boost submodule removed 2024-07-11 13:14:42 +03:00
georgemoralis d4d7e9f5f6 removed hardware info seems make perfomance issues , will test something more lightweight 2024-07-06 10:27:57 +03:00
georgemoralis 134541bdcd submodules updates 2024-07-05 15:08:33 +03:00
Younes 8ce6ed4b59
Merge branch 'main' into miscFixes2 2024-07-04 20:51:04 -06:00
TheTurtle 6ceab6dfac
shader_recompiler: Implement most integer image atomics, workgroup barriers and shared memory load/store (#231)
* shader_recompiler: Add LDEXP

* shader_recompiler: Add most image integer atomic ops

* shader_recompiler: Implement shared memory load/store

* shader_recompiler: More image atomics

* externals: Update sirit

* clang format

* cmake: Add missing files

* shader_recompiler: Fix some atomic bugs

* shader_recompiler: Vs outputs

* shader_recompiler: Shared mem has side-effects, fix format component order

* shader_recompiler: Inline constant buffer impl

* video_core: Fix regressions

* Work

* Fixup a few things
2024-07-05 00:15:44 +03:00
georgemoralis a91c049754 added library to print system info to be able to debug user files better 2024-07-04 14:30:34 +03:00
Xphalnos d424c65e8d Update externals 2024-07-01 18:39:12 +02:00
georgemoralis 0a33f8f799 updated sdl to fix keyboard issue 2024-06-30 00:32:42 +03:00
georgemoralis 0ada442cbc
Stabilization8 (#218)
* disable configured flexible memory size (caused issues in some games)

* fixed case S_OR_B64 for blazing chrome

* submodules updates and fixes for latest SDL

* stubbed _sigprocmask (not handled and spams too much)

* added ReplaceOp case in Stencilop

* dummy ajm module added
2024-06-27 16:37:17 +03:00
Alexandre Bouvier f5541e3c3d
cmake: prefer system libraries (#216) 2024-06-27 13:46:55 +03:00
Alexandre Bouvier a2224a9b6b fix system include paths 2024-06-25 18:17:16 +02:00
Xphalnos 7fe5f12f29 Screenshots fix 2024-06-23 09:04:16 +02:00
psucien abe2771c73 switch to the org's sirit submodule 2024-06-17 00:33:12 +02:00
Xphalnos d1f409f373 Screenshots 2024-06-14 14:59:22 +02:00
Xphalnos eb22704771 More screenshots for README 2024-06-14 14:32:41 +02:00
georgemoralis 400d910743
Merge pull request #184 from shadps4-emu/externals/tracy
Tracy profiler
2024-06-12 17:19:44 +03:00
psucien 955752a24b tracy: submodule update 2024-06-11 21:58:35 +02:00
Xphalnos 7c7b617852 Minor fixes 2024-06-11 18:15:36 +02:00
psucien e89b2d1cdd Added Tracy profiler 2024-06-11 11:17:46 +02:00