wheremyfoodat
fbc10bf3da
Fix typo
2023-07-29 15:10:06 +03:00
wheremyfoodat
2eb84e053b
[Kernel] Undo enormous, embarassing mistake no one must know about
2023-07-29 15:03:46 +03:00
offtkp
2de35bd39d
Add RomFS directory traversal stuff
2023-07-29 04:02:13 +03:00
offtkp
f3ce29bf2d
Add IVFC parser
2023-07-29 02:08:14 +03:00
wheremyfoodat
9d01ec360f
Merge branch 'master' into panda-kith
2023-07-28 23:16:25 +03:00
wheremyfoodat
0f0a06330c
[FS] Better file flushing
...
Fixes a small memory leak and some filesystem bugs
2023-07-28 22:42:30 +03:00
wheremyfoodat
e082625002
Properly handle current thread in rescheduling
2023-07-28 20:05:26 +03:00
wheremyfoodat
8dd5b990be
Thread bonk part 1: Better rescheduling maybe
2023-07-28 19:49:11 +03:00
wheremyfoodat
c7cad054e2
Update renderer_gl.cpp
2023-07-28 03:12:28 +03:00
wheremyfoodat
73321856c8
Mooore
2023-07-28 03:03:10 +03:00
wheremyfoodat
adb78bf838
[GL] More state stuff
2023-07-28 01:35:49 +03:00
wheremyfoodat
64fa970468
[GL] Actually implement logic ops
2023-07-27 21:57:50 +03:00
wheremyfoodat
1ea0b39a3b
[GL] Fix glClear call
2023-07-27 21:47:39 +03:00
wheremyfoodat
60655febba
[GL] Disable scissor in clearBuffer
2023-07-27 19:39:49 +03:00
wheremyfoodat
79a341a297
[GL] Fix depth mask getting corrupted, remove dead code
2023-07-27 18:17:14 +03:00
wheremyfoodat
1d3b078dfb
Convert warn to log
2023-07-27 18:01:18 +03:00
wheremyfoodat
71898895af
Merge remote-tracking branch 'upstream/master' into stencil-logicop-clear
2023-07-27 17:54:57 +03:00
wheremyfoodat
b4cc743608
[GL] Add stencil enable to state tracker
2023-07-27 15:34:21 +03:00
offtkp
dfde03a344
Remove unused parameter in MyEnvironment
2023-07-27 15:03:50 +03:00
wheremyfoodat
03733569e0
Merge remote-tracking branch 'upstream/master' into stencil-logicop-clear
2023-07-27 14:23:00 +03:00
wheremyfoodat
804e43f8c9
Fix ExeFS offset derp
2023-07-27 12:25:01 +03:00
GPUCode
c6c71bb9b2
renderer_gl: Implement semi proper clears
2023-07-26 22:34:39 +03:00
GPUCode
50bcf3b617
renderer_gl: Respect depth-stencil write flag
2023-07-26 22:13:41 +03:00
GPUCode
6f7874227c
renderer_gl: Implement logic op
2023-07-26 22:08:20 +03:00
wheremyfoodat
95a8917589
renderer_gl: Implement stencil testing
2023-07-26 22:05:30 +03:00
wheremyfoodat
eef87da979
Better cheat interface
2023-07-26 03:27:30 +03:00
wheremyfoodat
6c983b16d3
[AC] Stub GetLastErrorCode
2023-07-24 23:57:17 +03:00
wheremyfoodat
5b90cb7a03
[MIC] Stub SetIIRFilter (Fixes Hatsune Miku)
2023-07-24 23:56:53 +03:00
wheremyfoodat
c87501f86f
Merge pull request #125 from Wunkolo/vulkan-init
...
Initialize Vulkan Context
2023-07-24 21:05:26 +03:00
wheremyfoodat
71bcfbab69
[Vulkan] Respect GPU_DEBUG_INFO
2023-07-24 19:23:47 +03:00
Wunkolo
e2e49b7291
Add in-place swapchain recreation
...
Lots of todos, this should probably just be its own self-contained
object to allow the emulator to render "headlessly" regardless of a
swapchain existing or not.
2023-07-23 21:44:39 -07:00
wheremyfoodat
4a24a331da
Merge pull request #113 from wheremyfoodat/ir
...
Merging despite it still being partially broken because I don't want this to be isolated in a random branch
2023-07-24 01:11:46 +03:00
Wunkolo
c49fd71722
Use numeric_limits
rather than ~0ULL
2023-07-22 19:44:09 -07:00
Wunkolo
af4163de19
Implement simple swapchain image clearing
...
Creates a swapchain, and per-swapchain image data for safe parallelism and synchronization.
2023-07-22 19:41:41 -07:00
Wunkolo
90a4c9cf8d
Initialize command buffer allocationFix SDL_Vulkan_GetDrawableSize
call
2023-07-22 17:13:13 -07:00
Wunkolo
fa804ae4c7
Implement swapchain draw loop
...
Verified on Windows and MacOS(M2)
2023-07-22 16:44:54 -07:00
Wunkolo
26c97eb716
Implement initial swapchain creation
2023-07-22 15:24:41 -07:00
Wunkolo
197e2a4bbd
Allocate present/graphics/compute/transfer queue families
2023-07-22 14:23:37 -07:00
Wunkolo
da6f880128
Disable timeline semaphore features
...
This is an optional feature that can be supported conditionally later
2023-07-22 13:34:10 -07:00
Wunkolo
8ace959d72
Fix RendererSW initGraphicsContext
prototype
2023-07-22 13:20:57 -07:00
Wunkolo
165134ca40
Consider surface-support in device partitions
...
Use a stable_partitioning of the list of devices the driver gave us with
the addition of checking of the physical device supports the
display-surface that SDL gave us as well.
2023-07-22 13:16:23 -07:00
Wunkolo
0ada1f4e38
Include additional vulkan-extensions that SDL requests
...
Required for proper surface creation. This gets the surface-creation
call to pass now.
2023-07-22 13:16:23 -07:00
Wunkolo
c7a93c4f52
Warn on failed surface creation for vulkan
...
Vulkan can technically work just fine without presenting to the user, so
consider these failed window procedures as "warnings" during iteration.
2023-07-22 13:16:23 -07:00
Wunkolo
444d50eaf5
Fix instance extensions on MacOS
...
These preprocessors were combining into a singular string rather than
the name of two individual extensions. Whoops.
2023-07-22 13:16:23 -07:00
Wunkolo
d9afb12daf
Fix MacOS build
2023-07-22 13:16:23 -07:00
Wunkolo
b048d4dd6e
Add SDL_Window
to initGraphicsContext
prototype
...
This value is needed for vulkan to properly allocate a surface, and would benefit OpenGL to move more of its initialization code into here rather than in `emulator.cpp`.
2023-07-22 13:16:23 -07:00
Wunkolo
870b6a21bf
Add initial vulkan instance creation
...
Headlessly creates a new vulkan instance, with conditional MacOS
support, and enables the `VK_EXT_debug_utils` instance-extension with a
debug-messenger to hook onto validation layer messages.
2023-07-22 13:16:23 -07:00
Wunkolo
d2241a25bc
Stub Vulkan backend support
...
A lot of the architecture of the emulator here does not allow for vulkan
to initialize easily since it involves a bit of data to be exchanged
between SDL and Vulkan. This commit just adds the foundational linkage
and library code for vulkan support.
2023-07-22 13:16:23 -07:00
wheremyfoodat
ae4a4dfc29
Hook up sw rendering backend
2023-07-22 20:47:19 +03:00
wheremyfoodat
f328200c65
Add empty sw renderer class
2023-07-22 20:24:49 +03:00