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
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
Younes
0fa7d5d02c
- sceKernelUuidCreate, sceAppContentAppParamGetInt, sceAppContentTemporaryDataMount2 ( #199 )
...
- PlayGo
- stub libusbd
-added /temp0 and /data mounts at emu start.
(Ghost Files: Memory of a Crime, Abyss: The Wraiths of Eden)
- some posix functions
2024-06-15 17:51:51 +03:00
TheTurtle
c5d1d579b1
core: Many things ( #194 )
...
* video_core: Add a few missed things
* libkernel: More proper memory mapped files
* memory: Fix tessellation buffer mapping
* Cuphead work
* sceKernelPollSema fix
* clang format
* fixed ngs2 lle loading and rtc lib
* draft pthreads keys implementation
* fixed return codes
* return error code if sceKernelLoadStartModule module is invalid
* re-enabled system modules and disable debug in libs.h
* Improve linux support
* fix windows build
* kernel: Rework keys
---------
Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2024-06-15 14:36:07 +03:00
Xphalnos
edf6724e74
Merge branch 'main' of https://github.com/Xphalnos/shadPS4
2024-06-14 14:33:08 +02:00
Xphalnos
eb22704771
More screenshots for README
2024-06-14 14:32:41 +02:00
raziel1000
080ec3e23e
Added LibPngDec
...
(tested with Metal Slug 3, Risk of Rain, Deadbolt and Nidhogg)
2024-06-14 01:37:26 -06:00
psucien
e89b2d1cdd
Added Tracy profiler
2024-06-11 11:17:46 +02:00
raziel1000
0f27e0edf2
- Added trophy decryption when extracting a fpkg. trp icons and xmls are dumped to game_data/<title> (can be restored if deleted by accident by opening the trophy viewer)
...
- Added a trophy viewer (right click on game ==> trophy viewer)
- Enabled Run button.
- Switched gui settings to toml.
- Added recent files (6 max)
- Applied @raphaelthegreat suggestions and corrections (Thanks a lot).
- Fixed several bugs and crashes.
- Full screen should disabled by default.
- Added region in list mode.
- Added a simple temp elf list widget.
- Added messages when extracting pkg (ex: installing a patch before the game...etc)
2024-06-10 20:42:21 -06:00
TheTurtle
7b1a317b09
video_core: Preliminary storage image support and more ( #188 )
...
* vk_rasterizer: Clear depth buffer when DB_RENDER_CONTROL says so
* video_core: Preliminary storage image support, more opcodes
* renderer_vulkan: a fix for vertex buffers merging
* renderer_vulkan: a heuristic for blend override when alpha out is masked
---------
Co-authored-by: psucien <bad_cast@protonmail.com>
2024-06-10 22:35:14 +03:00
georgemoralis
d89e4463e7
moved main code , to emulator,cpp , emulator.h class
2024-06-10 15:18:42 +03:00
georgemoralis
ac192134e8
Merge pull request #175 from shadps4-emu/missing_gnm_calls
...
Additional GnmDriver functions
2024-06-09 00:58:45 +03:00
georgemoralis
a1efcd9832
added rtc and disc_map modules
2024-06-08 22:41:25 +03:00
psucien
9230d04a0a
common: slot_vector moved into common
2024-06-08 01:19:51 +02:00
georgemoralis
5d24a961cb
RWLocks implementation ( #171 )
...
* added dummy rwlock
* implemented part of rwlock functions (WIP)
* implemented the most important functions for rwlocks
2024-06-07 21:30:26 +03:00
TheTurtle
998d046210
video_core: Add depth buffer support and fix some bugs ( #172 )
...
* memory: Avoid crash when alignment is zero
* Also remove unused file
* shader_recompiler: Add more instructions
* Also fix some minor issues with a few existing instructions
* control_flow: Don't emit discard for null exports
* renderer_vulkan: Add depth buffer support
* liverpool: Fix wrong color buffer number type and viewport zscale
* Also add some more formats
2024-06-07 16:26:43 +03:00
TheTurtle
728249f58d
core: Properly implement TLS ( #164 )
...
* core: Split module code from linker
* linker: Properly implement thread local storage
* kernel: Fix a few memory functions
* kernel: Implement module loading
* Now it's easy to do anyway with new module rework
2024-06-05 22:08:18 +03:00
psucien
184b7b7fc2
video_core: added shader header files generator from Citra
2024-06-05 14:31:50 +02:00
georgemoralis
323e66f765
added app_content module
2024-05-31 15:03:05 +03:00
raphaelthegreat
58de7ff55a
video_core: Implement basic compute shaders and more instructions
2024-05-30 01:39:24 +03:00
georgemoralis
1dfa91b638
event flag implementation from previous pr
2024-05-28 14:29:53 +03:00
raphaelthegreat
d59b102b6f
video_core: Add image support
2024-05-27 18:25:45 +03:00
TheTurtle
3c90b8ac00
video_core: Bringup some basic functionality ( #145 )
...
* video_core: Remove hack in rasterizer
* The hack was to skip the first draw as the display buffer had not been created yet and the texture cache couldn't create one itself. With this patch it now can, using the color buffer parameters from registers
* shader_recompiler: Implement attribute loads/stores
* video_core: Add basic vertex, index buffer handling and pipeline caching
* externals: Make xxhash lowercase
2024-05-25 15:33:15 +03:00
TheTurtle
8730968385
video: Import new shader recompiler + display a triangle ( #142 )
2024-05-22 01:35:12 +03:00
Xphalnos
8cf64a33b2
Migrating from third-party to externals ( #138 )
...
* third-party migration to externals
* Fix
* Lower case for Linux
2024-05-18 20:05:18 +03:00
georgemoralis
c9b5b5e963
show title splash while the game is loading
2024-05-16 16:58:14 +03:00
TheTurtle
55855b4195
core: Implement new memory manager ( #133 )
...
* core: Implement new memory manager
* ci: Attempt to fix linux build
* code: Fix a few build errors
2024-05-16 15:55:50 +03:00
georgemoralis
f1883870fd
Initial LibcInternal
2024-05-13 16:13:33 +03:00
georgemoralis
b00b849d3f
use winpthreads from mingw64
2024-05-09 23:45:09 +03:00
georgemoralis
277e16c7ba
sceSaveDataMount2,sceSaveDataUmount some implementation
2024-05-04 22:08:04 +03:00
georgemoralis
2b9b3e76bf
moved savedata to proper folder
2024-05-04 19:08:46 +03:00
georgemoralis
e4d43f8e07
added dummy np* modules and screenshot module
2024-05-02 18:16:10 +03:00
georgemoralis
90e3e47c4d
added stubbed mostly version of flexible memory - it allows sonic mania to go further
2024-05-02 17:13:51 +03:00
georgemoralis
2308d7f1d6
better way for compiler option
2024-05-02 15:48:48 +03:00
georgemoralis
6f1e488b37
fixed stack allocation issue
2024-05-02 10:57:24 +03:00
TheTurtle
1b9bf924ca
core: Rewrite thread local storage implementation ( #118 )
2024-05-01 13:38:41 +03:00
TheTurtle
b94efcba5a
video_core: Add basic command list processing ( #117 )
2024-04-30 01:23:28 +03:00
psucien
2696733cad
video_core: prefer discrete gpu if available ( #116 )
...
* video_core: prefer discrete gpu if available
* ci: Upgrade to clang format 17
* rewrite w\o std::zip usage
---------
Co-authored-by: raphaelthegreat <47210458+raphaelthegreat@users.noreply.github.com>
2024-04-30 00:19:12 +03:00
raphaelthegreat
25c04ad42f
texture_cache: Fix linear image uploads
...
* Also fixed build for clang-cl with libc
2024-04-29 18:22:04 +03:00
georgemoralis
7b5d8e5ff9
trying to fix actions (again)
2024-04-15 20:35:49 +03:00
georgemoralis
096316619a
fixing qt builds
2024-04-15 20:20:00 +03:00
GPUCode
c01b6f8397
video_core: Rewrite vulkan and videoout
2024-04-14 17:10:40 +03:00
GPUCode
0a94899c86
src: Move control to input directory
2024-04-14 01:18:25 +03:00
GPUCode
5e2ac6c72b
src: Reorganize and cleanup libraries
2024-04-14 00:37:17 +03:00
georgemoralis
e99129d72f
several fixes ( #112 )
...
* updated fmt
* submodules updated
* fixed _TIMESPEC_DEFINED for winpthreads under windows
* fixed sdl3 under qt
* virtual_memory: Ensure mapped addresses stay inside the user area
* Fixes LLE Libc crashing on linux
---------
Co-authored-by: GPUCode <geoster3d@gmail.com>
2024-04-13 22:37:21 +03:00
georgemoralis
bb8a400b7b
dummy libscesavedatadialog
2024-04-08 19:03:51 +03:00
georgemoralis
598a6a88e0
Merge pull request #107 from shadps4-emu/modules4
...
More module work focused on undertale
2024-04-05 20:41:26 +03:00
georgemoralis
935842291d
dummy sceAudioIn lib
2024-04-04 20:04:18 +03:00
georgemoralis
33209a77f1
Merge pull request #102 from shadps4-emu/gui-rewrite
...
Gui rewrite.
2024-04-02 23:51:13 +03:00
georgemoralis
0525481a9b
partial implementation of _write function , which is used as debug ouput from lle libc
2024-03-31 13:33:38 +03:00
georgemoralis
8fa5874fb1
dummy libkernel module
2024-03-31 11:30:43 +03:00
georgemoralis
94cd3be814
dummy sysmodule module
2024-03-30 15:34:01 +02:00
georgemoralis
b36df1383a
added more dummy modules
2024-03-29 23:25:52 +02:00
raziel1000
ca6f582ea8
- Gui rewrite.
...
- Gui: Bug fixes and cleanup.
- Gui: Performance improvement (loading, resizing...etc)
- Added a simple PKG Viewer(Settings-> Utils -> PKG Viewer), added pkg folders will be saved.
- PKG Viewer: Shows game info(name, id, region...etc)
- PKG Viewer: Right click -> Install PKG to install/extract a game. Patch installation is also possible.
- Added option to dump game list (Settings -> Utils -> Dump Game List), will be dumped to emu folder GameList.txt
2024-03-28 23:43:46 -06:00
georgemoralis
2e931c9f72
More modules ( #99 )
...
* added dummy sceAudio lib
* added lseek in file_system
* updated sdl3
* forgot sdl3 in cmake
* cmake is case sensitive in linux
* fixed SDL_CreateWindowWithPosition
* fixed vulkan issues with latest sdl3
* some progress in sceAudio
* improvements in audio
* more sound improvements
* first working sound output , from openorbis sound demo
* updated sdl3 , zlib-ng can now be build with msvc+clangci
* fixed cmake
* fix for audio buffering
* clang format fix
* format fix
* better error handling for sceAudioOutput
2024-03-22 18:12:37 +02:00
georgemoralis
2a03b4d03b
Autogen system,user,dialog modules ( #98 )
...
* some rework on system_service, user_service
* fixed clang format
* more clang fix
* more clang fix
* added error codes in system service
* some libc functions
* fixed fprintf
* small fix
* linux fix
* error handling in user service
* error codes reorganized
2024-03-14 14:18:16 +02:00
georgemoralis
02dcf4d45c
LLE libc + other fixes part1 ( #97 )
...
* app0 folder is absolute
* some improvements on symbols types
* clang format
* missing libs.h
* improved symbols_resolver
* moved config to config folder
* functions to dump import functions
* improved logging output
* option for debugdump and improvements
* Apply suggestions from code review
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* clang format
---------
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
2024-03-11 13:26:33 +02:00
qurious-pixel
58ae9c3ade
add window icons ( #92 )
2024-03-02 18:39:46 +02:00
Younes
f2691d83b8
- Added Play, Pause, Stop and several other UI icons. ( #91 )
...
* - Added Play, Pause, Stop and several other UI icons.
- Added a screenshot :3
* update reuse
* reuse again
* screenshot
2024-03-01 10:47:28 +02:00
georgemoralis
02cbebbf78
file formats and qt ( #88 )
...
* added psf file format
* clang format fix
* crypto functions for pkg decryption
* pkg decryption
* initial add of qt gui , not yet usable
* renamed ini for qt gui settings into shadps4qt.ini
* file detection and loader support
* option to build QT qui
* clang format fix
* fixed reuse
* Update src/core/file_format/pkg.cpp
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* Update src/core/file_format/pkg.cpp
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* Update src/core/file_format/pkg.cpp
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* Update src/core/file_format/pkg.cpp
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* Update src/core/loader.h
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* Update src/core/loader.cpp
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* uppercase fix
* clang format fix
* small fixes
* let's try windows qt build ci
* some more fixes for ci
* Update src/core/file_format/pkg.cpp
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* Update src/core/file_format/pkg.cpp
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* Update src/core/file_format/pkg.cpp
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* Update src/core/file_format/pkg.cpp
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* Update .github/workflows/windows-qt.yml
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* Update src/core/loader.cpp
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* Update src/core/file_format/psf.cpp
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* loader namespace
* Update src/core/loader.cpp
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
* constexpr magic
* linux qt ci by qurious
* fix for linux qt
* Make script executable
* ci fix?
---------
Co-authored-by: raziel1000 <ckraziel@gmail.com>
Co-authored-by: GPUCode <47210458+GPUCode@users.noreply.github.com>
Co-authored-by: GPUCode <geoster3d@gmail.com>
2024-03-01 00:00:35 +02:00
GPUCode
79d6c8a377
common: Rewrite logging based on cut down citra logger ( #86 )
...
* common: Rewrite logging based on cut down Citra logger
* code: Misc fixes
* core: Bring back tls handler
* linker: Cleanup
* config: Remove log level
* logging: Enable console output by default
* core: Fix windows build
2024-02-28 00:10:34 +02:00
georgemoralis
b3084646a8
submodules fixes ( #87 )
...
* update discord-rpc
* ignore gitmodules on reuse
* imgui not used atm removed
2024-02-27 20:24:47 +02:00
georgemoralis
08aba86ca1
Modules generation tool ( #81 )
...
* Modules generation tool
* apply clang format to generator
* @whereismyfoodat suggestions
* added reuse headers
* reuse part2
* reuse part3
* reuse part3
* replace with hex_id the unknown functions to avoid compile errors with unknown characters from encode_id
* fixes in generation
* some sample module code from autogen tool
* clang format fix
2024-02-24 22:39:29 +02:00
GPUCode
584b7d2b15
chore: Make shadps4 REUSE compliant
2024-02-23 23:33:43 +02:00
GPUCode
6f4c6ae0bb
code: Add clang-format target and CI workflow ( #82 )
...
* code: Add clang format target, rules and CI workflow
* code: Run clang format on sources
2024-02-23 22:57:57 +02:00
georgemoralis
552d2da17a
should work without lib
2024-02-23 14:33:01 +02:00
georgemoralis
b62c44c914
ugly workaround :D
2024-02-23 14:10:44 +02:00
GPUCode
fe43558779
common: Rework timekeeping with native RDTSC and port to linux
2024-02-23 11:30:06 +02:00
georgemoralis
ff43fec76a
some fs work for openorbis (WIP)
2024-01-26 18:01:27 +02:00
georgemoralis
093ebb568c
initial fs implementation (mounting /app0/)
2023-11-19 10:22:46 +02:00
georgemoralis
86bc2d427f
moved thread_management to proper package
2023-11-10 17:31:56 +02:00
GPUCode
79c9d9ebd1
kernel: To snake case
2023-11-06 01:19:57 +02:00
GPUCode
099d01f96c
common: Move timer to common
2023-11-06 01:17:28 +02:00
GPUCode
369d92fa56
core: Reorganize
2023-11-06 01:11:54 +02:00
GPUCode
1cf032eeb1
cmake: Add directory groups
2023-11-05 17:08:47 +02:00
GPUCode
a0b80893db
cmake: Update CMakeLists.txt
2023-11-05 14:21:20 +02:00
GPUCode
6e28ac711f
cmake: Refactor library management
2023-11-05 13:22:32 +02:00
georgemoralis
6fba3a4380
finished libc refactoring
2023-10-31 19:08:33 +02:00
georgemoralis
fd535bae6b
libc separate stdlib functions to libc_stdlib
2023-10-31 18:12:05 +02:00
georgemoralis
f5526977d3
libc separated string functions to libc_string
2023-10-31 17:32:56 +02:00
georgemoralis
bb578ae377
cleanup libc (wip) and separated it to several files
2023-10-31 15:53:46 +02:00
georgemoralis
28a5277e2b
reorganized libc package
2023-10-31 15:37:24 +02:00
georgemoralis
11c0d79045
refactoring system service
2023-10-31 14:04:35 +02:00
georgemoralis
7391f7708a
user service refactoring
2023-10-31 13:35:52 +02:00
georgemoralis
c488b7132d
refactored libpad to new package
2023-10-31 09:01:20 +02:00
georgemoralis
93e75481c7
refactoring Core folder to core
2023-10-31 08:47:58 +02:00
georgemoralis
cfdc45dfcb
file_system reorganized (dummy)
2023-10-30 23:04:57 +02:00
georgemoralis
758ef332f2
implemented sceKernelGetProcessTime
2023-10-30 08:48:52 +02:00
georgemoralis
ce2c7a7d01
restored previous timer class
2023-10-29 23:46:18 +02:00
georgemoralis
eb67c847a7
removed obsolute fs
2023-10-27 11:07:19 +03:00
GPUCode
ba299c4c00
core: Remove Timer in favour of std::chrono
2023-10-22 17:17:43 +03:00
GPUCode
e2b1b059ed
core: Switch to std threading primitives
2023-10-22 17:10:25 +03:00
georgemoralis
e9d2d37aae
moved controller to host
2023-10-20 07:25:52 +03:00
georgemoralis
08b0057754
Merge pull request #58 from georgemoralis/fs
...
filesystem work
2023-10-20 07:07:59 +03:00
wheremyfoodat
077b254a4f
Add Result<T, E> type
2023-10-19 18:39:20 +03:00
georgemoralis
eb307b9cd9
draft fs design
2023-10-19 17:02:49 +03:00
georgemoralis
84393e6acc
initial fs work (logging mostly)
2023-10-19 12:13:09 +03:00