georgemoralis
191d2d0b91
Merge pull request #175 from shadps4-emu/missing_gnm_calls
...
Additional GnmDriver functions
2024-06-09 00:58:45 +03:00
georgemoralis
50186055d3
added rtc and disc_map modules
2024-06-08 22:41:25 +03:00
psucien
f3636b77b8
common: slot_vector moved into common
2024-06-08 01:19:51 +02:00
georgemoralis
c09c2da147
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
718ade970f
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
4779381eec
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
a2eb813bee
video_core: added shader header files generator from Citra
2024-06-05 14:31:50 +02:00
georgemoralis
088971f5b9
added app_content module
2024-05-31 15:03:05 +03:00
raphaelthegreat
99d20d4119
video_core: Implement basic compute shaders and more instructions
2024-05-30 01:39:24 +03:00
georgemoralis
b8ced0db35
event flag implementation from previous pr
2024-05-28 14:29:53 +03:00
raphaelthegreat
8bd9bf1a7d
video_core: Add image support
2024-05-27 18:25:45 +03:00
TheTurtle
0aa04c60cb
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
4380066a90
video: Import new shader recompiler + display a triangle ( #142 )
2024-05-22 01:35:12 +03:00
Xphalnos
80a9e3865b
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
521fc0401f
show title splash while the game is loading
2024-05-16 16:58:14 +03:00
TheTurtle
94caa0336e
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
9ea9a9efec
Initial LibcInternal
2024-05-13 16:13:33 +03:00
georgemoralis
e55fbee0aa
use winpthreads from mingw64
2024-05-09 23:45:09 +03:00
georgemoralis
ccf81110b0
sceSaveDataMount2,sceSaveDataUmount some implementation
2024-05-04 22:08:04 +03:00
georgemoralis
45cbbec0b6
moved savedata to proper folder
2024-05-04 19:08:46 +03:00
georgemoralis
95a42f5b29
added dummy np* modules and screenshot module
2024-05-02 18:16:10 +03:00
georgemoralis
2b59361b7f
added stubbed mostly version of flexible memory - it allows sonic mania to go further
2024-05-02 17:13:51 +03:00
georgemoralis
e60cb3c745
better way for compiler option
2024-05-02 15:48:48 +03:00
georgemoralis
b2ce6f274f
fixed stack allocation issue
2024-05-02 10:57:24 +03:00
TheTurtle
49e65be25b
core: Rewrite thread local storage implementation ( #118 )
2024-05-01 13:38:41 +03:00
TheTurtle
13fe78f0f5
video_core: Add basic command list processing ( #117 )
2024-04-30 01:23:28 +03:00
psucien
87f3724675
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
733956c39b
texture_cache: Fix linear image uploads
...
* Also fixed build for clang-cl with libc
2024-04-29 18:22:04 +03:00
georgemoralis
c7115fc8fb
trying to fix actions (again)
2024-04-15 20:35:49 +03:00
georgemoralis
f4552c631e
fixing qt builds
2024-04-15 20:20:00 +03:00
GPUCode
23b2eeba9b
video_core: Rewrite vulkan and videoout
2024-04-14 17:10:40 +03:00
GPUCode
55eb16d09d
src: Move control to input directory
2024-04-14 01:18:25 +03:00
GPUCode
661b4d0e74
src: Reorganize and cleanup libraries
2024-04-14 00:37:17 +03:00
georgemoralis
7d3985f88e
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
c4b4cb5acf
dummy libscesavedatadialog
2024-04-08 19:03:51 +03:00
georgemoralis
93118a3cd4
Merge pull request #107 from shadps4-emu/modules4
...
More module work focused on undertale
2024-04-05 20:41:26 +03:00
georgemoralis
0141781429
dummy sceAudioIn lib
2024-04-04 20:04:18 +03:00
georgemoralis
efe50c8819
Merge pull request #102 from shadps4-emu/gui-rewrite
...
Gui rewrite.
2024-04-02 23:51:13 +03:00
georgemoralis
916a5adfd1
partial implementation of _write function , which is used as debug ouput from lle libc
2024-03-31 13:33:38 +03:00
georgemoralis
ca810916b5
dummy libkernel module
2024-03-31 11:30:43 +03:00
georgemoralis
221b5c6c88
dummy sysmodule module
2024-03-30 15:34:01 +02:00
georgemoralis
1c029b0c98
added more dummy modules
2024-03-29 23:25:52 +02:00
raziel1000
88d737c358
- 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
b4cb5ad233
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
02ba353401
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
af1e3c02ad
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
0645dbb610
add window icons ( #92 )
2024-03-02 18:39:46 +02:00
Younes
c8e79b34a1
- 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
a967d891d6
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
367350e989
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
c9dce45e4c
submodules fixes ( #87 )
...
* update discord-rpc
* ignore gitmodules on reuse
* imgui not used atm removed
2024-02-27 20:24:47 +02:00
georgemoralis
de0d824fce
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
7e5b7a7ffa
chore: Make shadps4 REUSE compliant
2024-02-23 23:33:43 +02:00
GPUCode
d9e30405ba
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
9b47a4e72d
should work without lib
2024-02-23 14:33:01 +02:00
georgemoralis
3fa14ae739
ugly workaround :D
2024-02-23 14:10:44 +02:00
GPUCode
7faf2d0ee8
common: Rework timekeeping with native RDTSC and port to linux
2024-02-23 11:30:06 +02:00
georgemoralis
8e31542122
some fs work for openorbis (WIP)
2024-01-26 18:01:27 +02:00
georgemoralis
efc542bdb8
initial fs implementation (mounting /app0/)
2023-11-19 10:22:46 +02:00
georgemoralis
5c8a34609d
moved thread_management to proper package
2023-11-10 17:31:56 +02:00
GPUCode
3b69d5aaaa
kernel: To snake case
2023-11-06 01:19:57 +02:00
GPUCode
0150a3e9eb
common: Move timer to common
2023-11-06 01:17:28 +02:00
GPUCode
477b4fb07f
core: Reorganize
2023-11-06 01:11:54 +02:00
GPUCode
7cdcfb6f98
cmake: Add directory groups
2023-11-05 17:08:47 +02:00
GPUCode
0765017b4f
cmake: Update CMakeLists.txt
2023-11-05 14:21:20 +02:00
GPUCode
963f665b6f
cmake: Refactor library management
2023-11-05 13:22:32 +02:00
georgemoralis
34846e8b1b
finished libc refactoring
2023-10-31 19:08:33 +02:00
georgemoralis
90efe48b27
libc separate stdlib functions to libc_stdlib
2023-10-31 18:12:05 +02:00
georgemoralis
e07cfa1d0f
libc separated string functions to libc_string
2023-10-31 17:32:56 +02:00
georgemoralis
13b8a74a43
cleanup libc (wip) and separated it to several files
2023-10-31 15:53:46 +02:00
georgemoralis
6e63d783e5
reorganized libc package
2023-10-31 15:37:24 +02:00
georgemoralis
a8cd1ac26d
refactoring system service
2023-10-31 14:04:35 +02:00
georgemoralis
0eef2a0fba
user service refactoring
2023-10-31 13:35:52 +02:00
georgemoralis
35e632a2f0
refactored libpad to new package
2023-10-31 09:01:20 +02:00
georgemoralis
5d90022f6a
refactoring Core folder to core
2023-10-31 08:47:58 +02:00
georgemoralis
5499d1c81c
file_system reorganized (dummy)
2023-10-30 23:04:57 +02:00
georgemoralis
eb783a1d70
implemented sceKernelGetProcessTime
2023-10-30 08:48:52 +02:00
georgemoralis
2b9fecf6d0
restored previous timer class
2023-10-29 23:46:18 +02:00
georgemoralis
1ca3d68f59
removed obsolute fs
2023-10-27 11:07:19 +03:00
GPUCode
eef2973a46
core: Remove Timer in favour of std::chrono
2023-10-22 17:17:43 +03:00
GPUCode
7b6a127051
core: Switch to std threading primitives
2023-10-22 17:10:25 +03:00
georgemoralis
a805718d6c
moved controller to host
2023-10-20 07:25:52 +03:00
georgemoralis
22b8c3568b
Merge pull request #58 from georgemoralis/fs
...
filesystem work
2023-10-20 07:07:59 +03:00
wheremyfoodat
271993b38c
Add Result<T, E> type
2023-10-19 18:39:20 +03:00
georgemoralis
bf16dbee34
draft fs design
2023-10-19 17:02:49 +03:00
georgemoralis
d40728f023
initial fs work (logging mostly)
2023-10-19 12:13:09 +03:00
georgemoralis
e78b470668
rewrote libc_cxa
2023-10-16 20:49:52 +03:00
georgemoralis
fd2bfc869b
refactoring singleton class
2023-10-15 10:03:26 +03:00
georgemoralis
661e2e13f9
Merge pull request #53 from georgemoralis/pad
...
pad implementation
2023-10-13 20:42:15 +03:00
georgemoralis
70487a4fed
some work on pad emulation (WIP)
2023-10-13 09:40:59 +03:00
Stefanos Kornilios Mitsis Poiitidis
a239ac10f3
Add auto stubs, static init
...
- Adds a python script to generate the tables, to avoid std::map init
- Generates stub "slots" to provide runtime information when a stub is called
- Provides fallback for unknown stubs
2023-10-11 11:50:02 +03:00
georgemoralis
e748468ab1
implemented some dummy pad, system_service, user_service calls
2023-10-07 12:03:03 +03:00
georgemoralis
59ec120563
some more HLE functions
2023-10-06 21:49:53 +03:00
georgemoralis
dc72fae8c6
printf implementation
2023-10-06 14:19:09 +03:00
georgemoralis
c0b3b433b1
v0.0.1 release files
2023-09-29 08:40:30 +03:00
georgemoralis
6612de9fcd
WIP tilemanager
2023-09-28 18:17:39 +03:00
georgemoralis
e77e97fb98
added XXH3_64bits and calculate memory obj hashes
2023-09-26 16:00:13 +03:00
georgemoralis
5590ffdb55
more gpu memory work
2023-09-25 15:08:36 +03:00
georgemoralis
3ca9569acd
some video buffer work
2023-09-22 10:38:21 +03:00
georgemoralis
4420d80548
added vulkan extension initialize
2023-09-17 20:01:29 +03:00
georgemoralis
ecddc5f0da
fixed vulkan compile
2023-09-16 10:51:09 +03:00
georgemoralis
2382619cba
basic sdl window init
2023-09-12 19:39:08 +03:00
georgemoralis
2a9e3b4d75
cleanup VideoOut library code
2023-08-23 23:20:43 +03:00
georgemoralis
bb70b7af53
initial video out context object
2023-08-22 00:54:44 +03:00
georgemoralis
b473d6e3e6
sceKernelCreateEqueue implemented
2023-08-17 10:10:13 +03:00
georgemoralis
5a6ceb04a5
reorganize function call to proper file
2023-08-15 23:10:45 +03:00
wheremyfoodat
c016e7ac12
added configuration class
2023-08-14 20:17:01 +03:00
georgemoralis
c37067641d
refactoring log class
2023-08-13 16:54:56 +03:00
wheremyfoodat
f6d3ea4253
Add discord RPC
2023-08-11 20:22:26 +03:00
georgemoralis
27df587d7f
sceVideoOutSetBufferAttribute implementation
2023-08-10 20:14:44 +03:00
georgemoralis
e1693e28c5
threading part 1
2023-08-09 10:31:18 +03:00
georgemoralis
a703392cbd
implemented sceKernelMapDirectMemory
2023-08-08 22:24:17 +03:00
georgemoralis
297e4d9afc
aligned memory allocation using VirtualAlloc2
2023-08-07 18:16:26 +03:00
georgemoralis
e26cabb181
refactoring virtual_memory
2023-08-06 22:52:20 +03:00
georgemoralis
89abe5cc28
refactoring
2023-08-04 11:33:00 +03:00
georgemoralis
23944ce2d7
forgot cmake
2023-08-03 13:05:36 +03:00
wheremyfoodat
582e27b729
general refactoring and coding format fixes
2023-08-03 12:25:25 +03:00
georgemoralis
018e0d37c7
more refactoring
2023-08-02 15:16:00 +03:00
georgemoralis
17fc6b63a7
refactoring
2023-08-02 13:51:10 +03:00
georgemoralis
4d87ac2143
Refactoring PhysicalMemory
2023-08-02 08:41:41 +03:00
georgemoralis
6bfdf17a03
sceKernelAllocateDirectMemory should be ok for now
2023-08-01 17:59:08 +03:00
georgemoralis
bd541da90a
ugly PhysicalMemory
2023-08-01 17:02:26 +03:00
georgemoralis
cc8c7eb648
Added Thread class
2023-08-01 12:49:57 +03:00
georgemoralis
8a3eb1574a
improved StringUtil algo + some PhysicalMemory work
2023-08-01 00:42:49 +03:00
georgemoralis
ccd86c929e
some memory functions (videoout_basic now reaches sceKernelAllocateDirectMemory which is WIP)
2023-07-27 13:36:47 +03:00
georgemoralis
936d255e63
portable debugbreak
...
ευχαριστώ ροδάκινε
Co-Authored-By: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2023-07-24 13:05:57 +03:00
georgemoralis
8acd636a13
some pthread work nothing exciting
2023-07-18 18:54:46 +03:00
georgemoralis
9d24671994
initial thread management files
2023-07-17 23:46:25 +03:00
georgemoralis
3bbd34aba1
updates submodules to latest
2023-07-17 23:19:33 +03:00
georgemoralis
152c581dc5
patching more dummy functions
2023-07-13 12:56:36 +03:00
georgemoralis
09909f86ae
dummy timer class
2023-06-29 13:17:05 +03:00
georgemoralis
8140f11be3
sample hle function loading (libc)
2023-06-28 20:15:19 +03:00
georgemoralis
e7801019d8
started work on libraries linking
2023-06-26 20:45:16 +03:00
georgemoralis
d6f8f839ea
Symbol resolver added
2023-06-26 18:12:19 +03:00
Esdras Tarsis
85c805972d
Add initial Linux support.
2023-06-22 22:48:55 -03:00
georgemoralis
998bc7e3a8
nid names resolver
2023-06-21 18:14:52 +03:00
georgemoralis
d1ae8fb199
more symbols work and refactoring
2023-06-19 07:51:56 +03:00
georgemoralis
dc2eba1713
more progress on symbols decoding
2023-06-18 17:54:22 +03:00
georgemoralis
5b6df9042b
initial disasm class using zydis
2023-05-30 13:33:52 +03:00
georgemoralis
61e7d65490
initial work on linker
2023-05-23 07:48:25 +03:00
georgemoralis
6a246feebe
draft work on memory allocation
2023-05-17 19:29:05 +03:00
georgemoralis
58ad071e69
initial work on loggin class
2023-05-16 19:31:53 +03:00
georgemoralis
ae25888c78
cmake : copy sdl3.dll to directory where exe exists (since sdl3 is shared library)
2023-05-10 22:22:46 +03:00
georgemoralis
0109b28b93
imgui elfviewer window . first draft
2023-05-03 19:40:47 +03:00
georgemoralis
e6101bea7a
we can now load elf and imgui.
2023-05-02 22:10:49 +03:00
georgemoralis
3e17a9f9a5
added spdlog library
2023-05-02 22:10:49 +03:00
georgemoralis
d1e8e696cf
added fmt library
2023-05-02 22:10:49 +03:00
georgemoralis
bbf71dfbd3
first try with cmake and imgui
2023-05-02 22:10:49 +03:00