Commit Graph
355 Commits
Author SHA1 Message Date
fleroviux 9b1ed2084f [GPU] Implement initial support for multi-texturing 2023-06-20 00:01:12 +02:00
fleroviux 927bf9fe32 Merge branch 'GamingProcessingUnit' of github.com:fleroviux/Panda3DS into pica-tev-emulation 2023-06-18 22:27:24 +02:00
wheremyfoodat 952e2d6d22 More accurate VAO implementation 2023-06-18 23:20:28 +03:00
fleroviux 78827886fe Merge branch 'master' of github.com:fleroviux/Panda3DS into pica-tev-emulation 2023-06-17 12:39:48 +02:00
fleroviux 3aeef23b2e Merge branch 'bottom-screen' of github.com:fleroviux/Panda3DS into pica-tev-emulation 2023-06-17 12:38:33 +02: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
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
fleroviux b854367676 [GPU] Move TEV uniforms update into its own method 2023-06-17 01:58:30 +02:00
wheremyfoodat 7b859ad602 Merge branch 'master' into bottom-screen 2023-06-17 02:19:30 +03:00
wheremyfoodat 245f0d2d18 Merge branch 'master' into bottom-screen 2023-06-17 02:11:14 +03:00
wheremyfoodatandGitHub 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 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
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
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
fleroviux 2e85f30c10 [GPU] attempt to emulate the previous TEV color buffer 2023-06-16 01:34:11 +02:00
fleroviux 525890bff7 [GPU] Upload configuration for all texture combiners to the shader program
Upload the configuration register values for the remaining texture combiners to the
shader program's uniforms. This is in preparation for emulating those texture combiners next.
2023-06-15 23:27:33 +02:00
fleroviux 4322ebda2c [GPU] Start texture combiner implementation
This commit first implements experimental and incomplete
texture combiner support. Currently only the first texture combiner
is implemented. Many sources and combine modes are not implemented yet.
2023-06-15 22:45:13 +02:00
wheremyfoodat 8e90b8a103 [GPU] Bottom screen stub 2023-06-13 22:47:01 +03:00
wheremyfoodat 5200c10b27 [Emulator] Handle left click 2023-06-13 15:41:02 +03:00
wheremyfoodat ccd7ef3a23 [DSP] Add other pipes for Picross 3D 2023-06-11 14:11:50 +03:00
wheremyfoodat cf35491fb1 [APT] Stub APT::PreloadLibraryApplet 2023-06-11 13:28:21 +03:00
wheremyfoodat cba1ce8fb8 Implement 8-bit VRAM writes 2023-06-11 13:14:35 +03:00
Wunkolo 2c94d0d683 Add Helpers:{getBits,getBit}
`constexpr` functions for extractint bitfields that lends itself a bit
better to emitting instructions like `bextr` on x86 or `ubfx` on arm64.
And may subjectively make things a bit more readable.
"Extract `5` bits" rather than `& 0x1F`.
2023-06-10 00:48:06 -07:00
wheremyfoodatandGitHub c7e3343974 Merge pull request #13 from wheremyfoodat/HID
HID service make-over
2023-06-06 18:42:53 +03:00
xkevio dee81bc62d Add <type_traits> header for std::integral_constant 2023-06-06 02:11:07 +02:00
xkevio 463c47af4f Fix GCC build error by correctly including <utility> header
This is needed to not rely on implementation defined behavior
regarding transitive header includes, here for std::integer_sequence.
2023-06-06 01:57:07 +02:00
wheremyfoodat dea8b9ec2e [HID] Redo service 2023-06-06 00:57:48 +03:00
wheremyfoodat 629e00251c [HID] Remap keys 2023-06-05 22:43:59 +03:00
wheremyfoodat 0c0e7a4cb9 Clean up srv interface for HID 2023-06-05 15:28:44 +03:00
liuk7071 608bf88c5f Basic input 2023-06-05 13:25:06 +02:00
wheremyfoodat 1b3c17c9a0 Merge branch 'master' into DSP-n-FS-work 2023-06-03 22:51:41 +03:00
wheremyfoodat 7cc7dc09f4 [FS] Implement File::Flush and fix file function headers 2023-06-03 22:25:30 +03:00
wheremyfoodat e9a8c2cb2e ExtSaveData pls 2023-06-03 22:04:26 +03:00
wheremyfoodatandGitHub e831d9f0e5 Update logger.hpp 2023-06-03 01:43:46 +03:00
wheremyfoodat e3fb364d95 Add DLP::SRVR service 2023-06-03 01:25:51 +03:00
wheremyfoodat 62936ddfac [DSP] Annotate pipe 2 addresses 2023-06-03 01:24:52 +03:00
wheremyfoodat 433fcc9b69 [DSP] Add UnloadComponent 2023-06-03 01:24:51 +03:00
wheremyfoodat fdeb45d188 [DSP] HLE DSP state & some of the audio pipe 2023-06-03 01:24:51 +03:00
wheremyfoodat 7034aa27d7 Add DLP::SRVR service 2023-05-27 00:32:43 +03:00
wheremyfoodat 4767a2053b [FS] Better GetFormatInfo 2023-05-20 15:39:31 +03:00
wheremyfoodat 9ec2964695 [FS] Add FormatThisUserSaveData 2023-05-20 01:24:30 +03:00
wheremyfoodat 6369fc8eb0 [DSP] Annotate pipe 2 addresses 2023-05-17 02:34:48 +03:00
wheremyfoodat 35aea21679 [DSP] Add UnloadComponent 2023-05-17 01:33:39 +03:00
wheremyfoodat e7085dd830 [DSP] HLE DSP state & some of the audio pipe 2023-05-17 01:17:10 +03:00
wheremyfoodat 4dc04be350 [FS] Formatting archives v1 2023-05-16 23:37:52 +03:00
wheremyfoodat 2f5bb45d58 [FS] OpenArchiveHandle returns Result<T, E> 2023-05-16 20:49:31 +03:00
wheremyfoodat 0b0d6dcf4b [FS] Archive::OpenArchive returns Result<T, E> now 2023-05-14 19:31:51 +03:00
wheremyfoodat 37fb660c7f [FS] Added error codes 2023-05-14 18:23:54 +03:00