Mary
2e5bc0cb14
feat: crypto: Add basic AES keyslot manager
...
We loads keys from AppData/Alber/sysdata/aes_keys.txt.
NOTE: We do differ from other emulators by not hardcoding the generator key, it's the user responsibility to provide it in aes_keys.txt.
2023-06-22 17:37:21 +02:00
wheremyfoodat
bf85b405af
Merge pull request #48 from Wunkolo/gl-object-label
...
Add OpenGL object-naming and scoping
2023-06-21 13:48:49 +03:00
wheremyfoodat
b3332aba70
Merge pull request #49 from Wunkolo/texture-env-reg
...
Add TexEnv PICA register offsets
2023-06-21 00:58:47 +03:00
Wunkolo
9746dd5eb2
Add TexEnv PICA register offsets
2023-06-20 14:55:12 -07:00
Wunkolo
62fdb29646
Add GPU_DEBUG_INFO
CMake-Option
...
Adds a project-wide setting for allowing renderer code to add additional
diagnostic data. Currently used to allow `opengl.hpp` to conditionally
implement debug-labeling and scopes.
2023-06-20 11:04:52 -07:00
Wunkolo
dbf0597bd8
Add DebugScope
utility-class for RAII-based OpenGL debug-scopes
...
Simply define this object in a C++ scope like:
```cpp
OpenGL::DebugScope glScope("Renderer::display");
```
and it will associate all functions within the current scope within a
named group. Supports `printf` formatting.
2023-06-20 10:10:11 -07:00
wheremyfoodat
dbe293bb52
Merge pull request #43 from Wunkolo/pica-types
...
Add PICA texel-format and topology types
2023-06-20 13:26:58 +03:00
Wunkolo
1251cecc88
Add setObjectLabel
for naming OpenGL functions
...
Add `OPENGL_PRINTF_FORMAT` and `OPENGL_PRINTF_FORMAT_ATTR` macros for providing
printf diagnostic information across platforms.
2023-06-19 23:48:16 -07:00
wheremyfoodat
c042dbc293
Merge pull request #44 from skylersaleh/macos_fixes
...
Work around compilation errors on macOS
2023-06-19 00:06:10 +03:00
wheremyfoodat
88e3eb1558
Add std::bit_cast fallback for Helpers::bit_cast and run clang-format
2023-06-18 23:33:10 +03:00
Sky
e9b3b7c2a2
Add workaround helper for bit_cast and missing #include <bit>
...
Allows compilation on native macOS build system.
2023-06-18 12:33:34 -07:00
Wunkolo
6ee3f73335
Bisect TextureFmt
and ColorFmt
...
Makes framebuffer-formats unrepresentable from texture formats while
allowing them to alias each other. Add utility functions as well that
just re-use the `TextureFmt` ones.
2023-06-18 08:22:14 -07:00
Wunkolo
134e16d8ea
Replace Texture::Formats
with PICA::ColorFmt
...
This enum was a duplicate of the PICA one. Now the PICA one is more
complete. Migrate `textureFormatToString` to be next to the enums
definition.
2023-06-18 00:10:04 -07:00
Wunkolo
5f07f77c94
Move hasStencil
to regs.hpp
2023-06-17 23:27:19 -07:00
Wunkolo
838d3f27f9
Migrate PICA-types into PICA
namespace
...
Rather than prefixing these types with `PICA`, a namespace is used instead.
2023-06-17 18:23:47 -07:00
Wunkolo
78a3f9fa23
Add PICA texel-format and topology types
...
Slowly stepping the codebase towards having renderer-agnostic types and keeping the translation of PICA-types to OpenGL/VK/DX/Software/etc to the renderer-backend.
2023-06-17 12:26:41 -07:00
wheremyfoodat
d0ae5f0546
Merge pull request #37 from marysaka/feat/proper-hle-result
...
hle: Add proper type for result code
2023-06-17 18:39:36 +03:00
wheremyfoodat
0bd77856e5
Merge pull request #42 from marysaka/misc/glad
...
misc: Switch from gl3w to glad
2023-06-17 12:53:33 +03:00
Mary
f3010f0909
misc: Switch from gl3w to glad
...
Also add more checks on window and context creation.
2023-06-17 11:26:18 +02:00
wheremyfoodat
6c29e3e0be
Merge pull request #41 from marysaka/fix/linux-cstdint-helper
...
fix: fix build on Linux with gcc
2023-06-17 11:45:59 +03:00
Mary
a799da1ec5
fix: fix build on Linux with gcc
...
Tested on Fedora 38, helpers.hpp was missing an import.
2023-06-17 10:11:35 +02:00
wheremyfoodat
1aab10bec7
Merge pull request #35 from Wunkolo/span-cpu-state
...
Use `std::span` for CPU register-state
2023-06-17 01:39:33 +03:00
wheremyfoodat
dafa919e1b
Merge pull request #33 from Wunkolo/span-vertex
...
Use `std::span` to pass vertex data
2023-06-17 01:38:40 +03:00
wheremyfoodat
2f3bc5d38e
[CPU] fprs() should return std::span<u32, 32> (Fixes memory corruption bug in threads.cpp)
2023-06-16 22:20:59 +03:00
wheremyfoodat
936302da2a
Raise clang-format column size, make std::span support in opengl.hpp version-dependent
2023-06-16 22:06:59 +03:00
Mary
122b1b2727
hle: Add proper type for result code
...
This should clean up all HLE errorcode in the codebase.
I didn't removed Rust::Result as this should be a cleanup for another
iteration.
2023-06-16 20:09:37 +02:00
Wunkolo
553d23974a
Use std::span
to pass vertex data
...
Starts utilizing
[std::span](https://en.cppreference.com/w/cpp/container/span ) to
indicate a non-owning view of a contiguous array of elements rather than
`T* data, usize count`.
2023-06-16 07:28:35 -07:00
Wunkolo
fde93381a5
Use std::span
for CPU register-state
...
Following the trend of #33 : `std::span` provides some useful utility
functions like `size_bytes()` and `as_bytes()` and serves as a better
non-owning "chunk of data"-type over just passing around an
`std::array&`.
2023-06-16 07:24:37 -07:00
wheremyfoodat
c6f5d19983
Merge pull request #34 from Wunkolo/pica-regs-helpers
...
Add missing header for regs.hpp
2023-06-16 16:05:07 +03:00
Wunkolo
0199918cd2
Add missing header for regs.hpp
...
This enum was using the `u32` type without including `helpers.hpp`, causing weird intermediate compiler errors when making incremental builds.
2023-06-16 05:48:33 -07:00
wheremyfoodat
f8e89f4db1
Merge pull request #31 from wheremyfoodat/discord-for-real
...
Add a Discord link that actually links to the discord
2023-06-15 19:42:57 +03:00
wheremyfoodat
d4e2e78556
Fix Discord link
2023-06-15 19:42:20 +03:00
wheremyfoodat
cd77acdd28
Merge pull request #29 from Wunkolo/clang-format
...
Add `.clang-format`
2023-06-15 12:00:38 +03:00
wheremyfoodat
9095bf4445
Update .clang-format
2023-06-15 11:44:49 +03:00
Wunkolo
dd0831361d
Add .clang-format
...
Use the command `clang-format -i tests/**/*.c src/**/*.cpp include/**/*.hpp`
to process all of the project's files.
Using the one from [pcsx-redux](https://github.com/grumpycoders/pcsx-redux/blob/main/src/.clang-format )
as a basis and then made additional edits to be the _least_ disruptive
to the pre-existing formatting patterns.
2023-06-15 00:37:49 -07:00
wheremyfoodat
2e4ae1328a
Add Discord badge for real
2023-06-15 04:02:44 +03:00
wheremyfoodat
b378287f79
Merge pull request #28 from wheremyfoodat/discord-badge
...
Add Discord link
2023-06-15 03:56:23 +03:00
wheremyfoodat
e55a4ab04b
Add discord badge in readme
2023-06-15 03:55:33 +03:00
wheremyfoodat
1aa59f5e51
Add CI stickers
2023-06-14 12:38:30 +03:00
wheremyfoodat
194b1ce9c2
Merge pull request #25 from wheremyfoodat/Windows-CI
...
Create Windows_Build.yml
2023-06-14 12:35:56 +03:00
wheremyfoodat
bef2593ed2
Update Windows_Build.yml
2023-06-14 12:13:24 +03:00
wheremyfoodat
fea1bbf3ac
Create Windows_Build.yml
2023-06-14 12:12:39 +03:00
wheremyfoodat
d32de77671
Update OoT_Title.png
2023-06-13 20:39:09 +03:00
wheremyfoodat
2520b2cb46
[GPU] Disable blend when rendering output texture
2023-06-13 20:38:17 +03:00
wheremyfoodat
4f619086e9
[HID] Add touchscreen
2023-06-13 15:44:55 +03:00
wheremyfoodat
5200c10b27
[Emulator] Handle left click
2023-06-13 15:41:02 +03:00
wheremyfoodat
f9f34d564f
Merge pull request #23 from wheremyfoodat/flush-file
...
[FS] Actually add FlushFile
2023-06-11 23:38:36 +03:00
wheremyfoodat
0c213900bc
[FS] Actually add FlushFile
2023-06-11 23:24:12 +03:00
wheremyfoodat
64ee82d892
Merge pull request #22 from wheremyfoodat/dont_explode_on_vram
...
Implement more DSP pipe stuff, stub APT::PreloadLibraryApplet for Picross 3D
2023-06-11 14:43:20 +03:00
wheremyfoodat
378258ed0b
[DSP] Fix up warnings/logs
2023-06-11 14:20:13 +03:00