Commit Graph

58 Commits (dd9788262e19a4da74ff037c7dada1bdb07dbcbf)

Author SHA1 Message Date
Stenzek 5c03e1d940
Misc: Fix alignment errors on ARM32 12 months ago
Stenzek 86a28d5dc0
ImGuiOverlays: Move debug state to auxiliary windows 1 year ago
Stenzek c439de6364
Common: SSE2 backsupport for vector classes
shuffle8() sucks, the rest aren't _too_ bad.
1 year ago
Stenzek 3dca598063
Log: Switch to enum class
Need to change the channel to a bitset too.. the string lookups are
horribly slow, and conflict when one is a prefix of another.
1 year ago
Stenzek 6a3b1a2725
MDEC: Vectorize 16 and 24-bit copy-out
Speedup of 15% and 6% in FMV playback respectively.
1 year ago
Stenzek 7f4e5d55db
Misc: Update copyright headers 1 year ago
Stenzek cdba1fe25a
Common: Rename iNN -> sNN 1 year ago
Stenzek 2c27b20090
ImGuiManager: Remove unused function 1 year ago
Stenzek 460acce561
MDEC: Ensure alignment of inputs 1 year ago
Stenzek a2f98541b3
Misc: Slim down some header includes 1 year ago
Stenzek 4f7ddfaae6
TimingEvents: Remove pointer indirection
Probably should move this to one big array for locality.
1 year ago
Stenzek 9be7a37416
GSVector: SIMD-ify YUVToRGB
Almost 10x speedup on the function alone, 15% in practice ingame.
1 year ago
Stenzek f5cae1957b
MDEC: Pack state in struct 1 year ago
Stenzek b094c9cd87
MDEC: Vectorize IDCT 1 year ago
Stenzek e1f90e6baf
MDEC: Store scale/IDCT matrix transposed 1 year ago
Stenzek 6d6659c85e
MDEC: Increase intermediate IDCT precision 1 year ago
Stenzek 4e922a34a7
Log: Simplify macros 2 years ago
Stenzek b6d019db66
Misc: Replace log printf calls with fmt 2 years ago
Stenzek f5ddd7ba32
DMA: Template transfer functions
~20% speedup in FMV playback on a Ryzen 9 7950X3D. CPUs hate branches.
2 years ago
Stenzek cce7be4723
Misc: Make struct member functions file-local 2 years ago
Stenzek 60aca2fc4d Misc: Swap LIKELY/UNLIKELY macros for attributes 2 years ago
Stenzek e23c9875d5 Misc: Split core and util Host 2 years ago
Connor McLaughlin af5d49649c MDEC: Add option to use old conversion routines
That way texture packs for games which use MDEC for decoding
backgrounds will still be compatible.
3 years ago
Connor McLaughlin 3e0be0a577 MDEC: Tweak block timing further
Improves frame rate during animated backgrounds in Final Fantasy VII.
3 years ago
Connor McLaughlin 3acf569d67 DMA: Convert to namespace 3 years ago
Connor McLaughlin 1bb321c41f MDEC: Don't round when texture replacements are enabled
This changes texture hashes, and people got annoyed :/
3 years ago
Connor McLaughlin 928dd0e665 MDEC: Fix Linux compiling 3 years ago
Connor McLaughlin 1c8ef86f12 MDEC: Convert to namespace 3 years ago
Connor McLaughlin 8ab46d0713 MDEC: Redo IDCT and conversion
RE2 backgrounds look better now (mainly due to the 24bpp->16bpp
conversion). Also implements signed output (untested).
3 years ago
Connor McLaughlin 8c7a192128 Misc: Add copyright/license statement to applicable files
Should've did this in the beginning.
3 years ago
Connor McLaughlin b42b5501f6 UI: Massive revamp, new features and improvements 3 years ago
Connor McLaughlin b7fbde31a7 Move utility classes from common to own static lib 3 years ago
Connor McLaughlin fd76f437b3 Core: Purge WITH_IMGUI define 4 years ago
Albert Liu 1f07ea6ecc MDEC: EOB is optional for complete blocks 4 years ago
Connor McLaughlin 48e55ab87b MDEC: Fix warnings in gcc debug build 4 years ago
Connor McLaughlin c6c67b7b27 ImGui: Remove close button from debug windows
They can be closed by unchecking the setting instead, and it stays in
sync with the config this way.
5 years ago
Connor McLaughlin 11992bde4e TimingEvents: Use function pointers instead of std::function 5 years ago
Connor McLaughlin 7c7145d1c5 MDEC: Handle invalid commands
Fixes panic in Formula 1.
5 years ago
Connor McLaughlin 50bcdc0abb MDEC: Adjust 16bpp timing
Fixes jittery movement in Parasite Eve II opening.
5 years ago
Connor McLaughlin d39c9f5d1c Clean up some compiler warnings 5 years ago
Connor McLaughlin 13e3095801 Core: Don't link to imgui for libretro core 5 years ago
Connor McLaughlin b6f871d2b9
JIT optimizations and refactoring (#675)
* CPU/Recompiler: Use rel32 call where possible for no-args

* JitCodeBuffer: Support using preallocated buffer

* CPU/Recompiler/AArch64: Use bl instead of blr for short branches

* CPU/CodeCache: Allocate recompiler buffer in program space

This means we don't need 64-bit moves for every call out of the
recompiler.

* GTE: Don't store as u16 and load as u32

* CPU/Recompiler: Add methods to emit global load/stores

* GTE: Convert class to namespace

* CPU/Recompiler: Call GTE functions directly

* Settings: Turn into a global variable

* GPU: Replace local pointers with global

* InterruptController: Turn into a global pointer

* System: Replace local pointers with global

* Timers: Turn into a global instance

* DMA: Turn into a global instance

* SPU: Turn into a global instance

* CDROM: Turn into a global instance

* MDEC: Turn into a global instance

* Pad: Turn into a global instance

* SIO: Turn into a global instance

* CDROM: Move audio FIFO to the heap

* CPU/Recompiler: Drop ASMFunctions

No longer needed since we have code in the same 4GB window.

* CPUCodeCache: Turn class into namespace

* Bus: Local pointer -> global pointers

* CPU: Turn class into namespace

* Bus: Turn into namespace

* GTE: Store registers in CPU state struct

Allows relative addressing on ARM.

* CPU/Recompiler: Align code storage to page size

* CPU/Recompiler: Fix relative branches on A64

* HostInterface: Local references to global

* System: Turn into a namespace, move events out

* Add guard pages

* Android: Fix build
5 years ago
Connor McLaughlin e5f56fcd33 MDEC: Slightly reduce block timing
Fixes FMVs in Disney's Treasure Planet.

Probably needs sub-block timing emulated at some point.
5 years ago
Connor McLaughlin d4ae0f13fe MDEC: Refactoring and fixes 6 years ago
Connor McLaughlin 82eb14efb1 Core: Apply DPI scaling to debug windows 6 years ago
Connor McLaughlin 1b9609ef61 Implement event-based scheduler instead of lock-step components 6 years ago
Connor McLaughlin 71c1e243fe Remove YBaseLib dependency 6 years ago
Connor McLaughlin 6f4cf7d5e3 System: Support changing BIOS path 6 years ago
Connor McLaughlin ed6d0e34de MDEC: Fix broken stats window 6 years ago
Connor McLaughlin a76ec6fc19 Compile fixes for GCC 6 years ago