Commit graph

734 commits

Author SHA1 Message Date
wheremyfoodat
3d47bc5f87
Try to fix old clang build v2 2023-09-05 15:09:05 +03:00
wheremyfoodat
4a532e173d
Merge pull request #256 from wheremyfoodat/wheremyfoodat-patch-1
Try to fix old Clang build
2023-09-05 14:49:37 +03:00
wheremyfoodat
d3213f3eca
Try to fix old Clang build 2023-09-05 14:33:32 +03:00
wheremyfoodat
e67dc65118 Add ExtSaveData::CreateDirectory and stub srv::unsubscribe 2023-09-05 14:28:52 +03:00
wheremyfoodat
5733b46772 Use panda icon as placeholder mii face 2023-09-03 22:41:16 +03:00
wheremyfoodat
bdfdc5af62 Revert 3DSX NCCH changes
Co-Authored-By: Théo B. <16072534+LiquidFenrir@users.noreply.github.com>
2023-09-03 16:45:23 +03:00
wheremyfoodat
a380aa83f0 Add 3DSX RomFS reads via NCCH archive 2023-09-03 11:14:24 +03:00
wheremyfoodat
38be95fffa Gently bonk 3DSX 2023-09-03 10:36:54 +03:00
Théo B
29352d223b feat: 3dsx loading
romFS works too, pretty neat
2023-09-03 00:31:03 +02:00
wheremyfoodat
909c5e9d14 Reordering 2023-09-01 17:59:39 +03:00
georgemoralis
2e40d7a59c added some y2r service calls 2023-09-01 11:58:38 +03:00
wheremyfoodat
cb3f7fa134 Remove hacky timer hacks 2023-08-31 22:47:43 +03:00
wheremyfoodat
ce58b9cc2f Merge branch 'master' into timerz 2023-08-31 22:11:50 +03:00
wheremyfoodat
92a1f18af7 [MIC] Add GetPower 2023-08-28 18:56:12 +03:00
wheremyfoodat
c41b4b465a Stub SetThisSaveDataSecureValue 2023-08-27 22:14:25 +03:00
wheremyfoodat
5f52a1bec4 [FS] AbnegateAccessRight, SetArchivePriority, GetArchiveResource 2023-08-27 17:41:32 +03:00
wheremyfoodat
7bf97ab840 Stub FS functions 2023-08-27 16:38:21 +03:00
wheremyfoodat
80cdf0354f
Merge pull request #142 from Wunkolo/vulkan-framebuffer
[Vulkan] Implement framebuffer management
2023-08-27 13:41:43 +03:00
Wunkolo
085d7d5568 Add clear-buffer support for Depth/Stencil 2023-08-26 22:06:46 -07:00
wheremyfoodat
00e553a120 [NFC] Add more functions 2023-08-26 18:52:41 +03:00
Wunkolo
e4195d4d4d Implement color-buffer clears 2023-08-24 11:27:49 -07:00
Wunkolo
d781802eb0 Fix render-texture cache lookups
`[32bit loc | 32bit attributes]`
Use `std::map::lower_bound(loc << 32)` to find the first address that matches the key in O(logn) time, finer grained searchs can happen after the fact in O(n) time.

Fixes render-texture cache lookups
2023-08-24 10:40:02 -07:00
wheremyfoodat
46ce2c14cd Initial UserSaveData impl 2023-08-24 17:58:16 +03:00
wheremyfoodat
52304763bb Merge branch 'master' into mii_selector 2023-08-24 15:45:38 +03:00
wheremyfoodat
f3042672fb More FRD stuffs 2023-08-24 15:35:44 +03:00
wheremyfoodat
3908900bca
Merge pull request #158 from wheremyfoodat/mii_selector
Initial work on HLE applets
2023-08-24 01:54:21 +03:00
wheremyfoodat
b3443623f5 Add more applet types 2023-08-23 18:44:01 +03:00
wheremyfoodat
74f7aeedbb Proper applet manager class 2023-08-23 18:07:24 +03:00
wheremyfoodat
7fb3cf1236 Implement more of AC 2023-08-23 17:20:51 +03:00
wheremyfoodat
f099cc12fa Add swkbd applet 2023-08-23 01:16:27 +03:00
wheremyfoodat
865e8e299f Add FRD::GetFriendProfile and FRD::GetFriendAttributeFlags 2023-08-22 23:43:56 +03:00
wheremyfoodat
0bd3729417 Stub APT::PrepareLibraryApplet 2023-08-22 23:11:14 +03:00
wheremyfoodat
21658c6b32 More microphone stuff 2023-08-22 17:28:09 +03:00
wheremyfoodat
1d601e41ba Merge branch 'master' into timerz 2023-08-21 18:57:18 +03:00
wheremyfoodat
3b22f15e67 Merge branch 'master' into mii_selector 2023-08-21 18:53:36 +03:00
wheremyfoodat
d3d426985a Add news:u 2023-08-21 16:45:35 +03:00
wheremyfoodat
3f2a546915 NFC stuffs 2023-08-21 15:39:55 +03:00
wheremyfoodat
5abfe5255f Add NFC::StartCommunication 2023-08-21 15:11:32 +03:00
wheremyfoodat
dd6508eb26 Migrate shared font to cmrc 2023-08-21 14:53:50 +03:00
Wunkolo
0258640da9 Add cached sampler creation
Using the sampler cache we can maintain a pool of reusable samplers. The
`sampler2D` utility function can help make some trivial samplers.
2023-08-20 23:40:51 -07:00
Wunkolo
7a86595a1b Add vulkan sampler cache 2023-08-20 23:35:52 -07:00
Wunkolo
14b1d7d8a8 Add display-shader presentation
Uses the graphics pipeline to both blit and transpose the 3ds-formatted
textures. Does not read from the actual texture just yet since we dont
write to the descriptor just yet. Some other patterns need to line up
before then.
2023-08-20 23:01:43 -07:00
Wunkolo
4b7bd9df3d Add Vulkan Descriptor-Update batching
Allows multiple descriptor operations to be batched up and dispatched in
one API call rather than scattered through out the code base.
2023-08-20 23:01:43 -07:00
Wunkolo
72c77e41b4 Draft Vulkan DescriptorHeap
A utility class from a personal project for managing a heap of
descriptors of a particular layout.

Allows the display graphics pipeline to be successfully created,
satisfying its descriptor layout issues.
2023-08-20 23:01:43 -07:00
Wunkolo
6ebbd80286 Add Display-pipeline as member variables 2023-08-20 23:01:43 -07:00
Wunkolo
4b193c8d6b Add general purpose vulkan render cache
Takes in a general `vk::Format` rather than PICA-types
2023-08-20 23:01:43 -07:00
Wunkolo
d4b75deaf8 Remove separate presentation/graphics command buffers
Now there is just one primary command buffer where all work is enqueued
into. At the end of the frame, the next frame's CPU-side fence is waited
on before resetting and beginning its command buffer again for
recording. This command buffer must always be in the RECORDING state.
2023-08-20 23:01:43 -07:00
Wunkolo
52ddaae221 Add getCurrentCommandBuffer for all frame workloads
Rather than allocating new command buffers for each small task, schedule
all work onto the frame's main command buffer to be dispatched at
display-time. Fixes all layout transition and synchronization issues.
2023-08-20 23:01:43 -07:00
Wunkolo
9e2781e874 Refactor render-texture cache
Implement `displayTransfer` in parity with the OpenGL renderer. Allow
arguments to `get{Color,Depth}RenderTexture`.
2023-08-20 23:01:43 -07:00
Wunkolo
c778c34433 Separate present/graphics workloads
Separate the "Display" texture from the cache of framebuffer textures,
move present/graphics into separate command buffers.
2023-08-20 23:01:43 -07:00