Commit graph

2072 commits

Author SHA1 Message Date
wheremyfoodat
37f9f5d894 HLE DSP: Track voice status better 2024-04-06 00:54:15 +03:00
wheremyfoodat
43a1c89478 HLE DSP: Init/deinit sources better 2024-04-05 20:53:17 +03:00
wheremyfoodat
5da93d17bd HLE DSP: More of it 2024-04-05 19:42:18 +03:00
wheremyfoodat
2548bde538 HLE DSP: Add frame types 2024-04-05 01:50:27 +03:00
wheremyfoodat
4070bea697 HLE DSP: Add region handling 2024-04-05 01:31:56 +03:00
wheremyfoodat
a85ca0459a HLE DSP: Proper audio pipe responses 2024-04-05 01:13:02 +03:00
wheremyfoodat
2e696deccf Add HLE DSP files 2024-04-05 00:44:31 +03:00
Paris Oplopoios
428401870b
Merge pull request #488 from wheremyfoodat/dsp_shared_mem
Add DSP shared memory definitions
2024-04-03 23:10:45 +03:00
wheremyfoodat
2b76f89b7b Add DSP shared memory definitions 2024-04-03 21:56:21 +03:00
wheremyfoodat
df3200a465
Add Dolphin bitfield class (#487)
* Add Dolphin bitfield class

* Remove bitfield test
2024-04-03 19:54:26 +03:00
Auxy6858
35b15fdd48
Jelly + ice cream theme (#486)
* Update config_window.cpp

* Update config_window.hpp

* Rename theme to Cream

* Rename theme to cream harder

---------

Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2024-04-02 01:21:36 +03:00
wheremyfoodat
3b9490e633
Add controller support to Qt (#475)
* Add controllers to Qt

Co-Authored-By: Nadia Holmquist Pedersen <893884+nadiaholmquist@users.noreply.github.com>

* Remove debug logs

* Bonk

---------

Co-authored-by: Nadia Holmquist Pedersen <893884+nadiaholmquist@users.noreply.github.com>
2024-03-27 21:11:47 +02:00
Auxy6858
429dc2a944
Added rom path (#474)
* Added app icon to the window

* Added Roms path

Added an option to the config to set a folder that opens when selecting a game instead of having to navigate to the folder manually every time.

* Clear up PR

* Clear up PR

---------

Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2024-03-26 18:40:10 +02:00
Wunk
5284109fd4
Implement shader-interpreter relative MOVA addressing (#471)
* Add shader uniform-read unit test

* Add unit test f24 vector formatter

* Add Address Register Offset shader unit test

* Implement float-uniform out-of-bound return value

In the case that the resulting float-uniform index is greater than the 96 slots that it has, a result of `{1,1,1,1}` is to be returned.

* Implement shader relative addressing

Fails on the negative unit tests at the moment but passes all of the
others.

* Fix `MOVA` source register indexing
2024-03-22 18:48:03 +02:00
Paris Oplopoios
3270cfe602
First step towards configurable keyboard mappings (#464)
* Configurable keyboard mappings

* Cleanup

* Cleanup

* Biggest mistake of my career

* format

* Fix naming convention

---------

Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2024-03-21 15:54:18 +02:00
wheremyfoodat
5488e9ca7c
Merge pull request #470 from Wunkolo/shader-log-exp
Implement arm64 `LG2`/`EX2`
2024-03-20 07:46:52 +00:00
Wunkolo
40e2774b7f Implement arm64 LG2/EX2 2024-03-19 21:26:13 -07:00
Wunkolo
dcd64802a3 Refactor ShaderJITTest into a specialization of ShaderInterpreterTest 2024-03-19 11:17:05 -07:00
Paris Oplopoios
27ad7b01f3
Rename Emulator::run to FrontendSDL::run (#466)
* Rename Emulator::run to FrontendSDL::run

* Update frontend_sdl.cpp

---------

Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2024-03-16 23:20:37 +02:00
wheremyfoodat
a00a5e0f8f
Merge pull request #462 from OFFTKP/cmake
More CMake cleanups
2024-03-15 10:28:54 +00:00
wheremyfoodat
5a1263194e
Merge pull request #463 from Wunkolo/shader-a64-mul
arm64 shader JIT: Implement PICA200 compliant `MUL`
2024-03-14 20:14:34 +00:00
Wunkolo
2b34ef4a89 Implement PICA200 compliant arm64 MUL
Adds `emitSafeMUL` to implement a PICA200 compliant multiplication that
handles the special `0 * inf = 0` case.
2024-03-14 12:30:42 -07:00
offtkp
cda4aa9ee6 Merge most ENABLE_QT_GUIs 2024-03-14 14:55:29 +02:00
Paris Oplopoios
e13fe49bbb
Remove duplicate checks in CMakeLists (#461)
* Remove duplicate checks in CMakeLists

* Bonk

---------

Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2024-03-13 22:11:01 +02:00
Wunk
c89fe05b8a
Fix shader-interpreter non-IEEE outputs (#459)
* Re-enable non-IEEE shader test

* Fix shader-interpreter RCP/RSQ output

Handle the `-0.0` special-case

* Fix shader-interpreter MIN/MAX output

Takes advantage of min/max's properties regarding non-finites to return
NaN depending on its input position:
```
max(NaN, 2.f) -> NaN
max(2.f, NaN) -> 2
min(NaN, 2.f) -> NaN
min(2.f, NaN) -> 2
```

* Fix shader-interpreter FLR indexing bug

`3 - 1` should be `3 - i`
2024-03-12 08:34:02 +02:00
Wunk
fe9939689d
Add shader-jit unit-tests (#458)
* Rename `dynapica` TU to `shader`

These unit-tests in particular only actually test
the shader-interpreter and not any of the JITs.

* Conditionally test the shader-jit

In the case that the host supports the shader-jit, the interpreter and the shader-jit will both be tested with the same unit-tests. Allowing for even more coverage.

* Remove weird git submodule
2024-03-12 02:29:58 +02:00
Wunk
18df066463
Add shader unit-testing (#457)
* Initialize catch-2 based unit tests

* Add nihstro submodule

Enabled only during testing to help with assembling shaders in-code.

* Implement `ADD` instruction unit-test

* Add arithmetic/logical instruction unit tests

* Add embedded catch2 submodule

Will use the host catch2 if available.
2024-03-12 00:53:49 +02:00
Wunk
929019e76b
Refactor build targets into AlberCore (#455)
* Ignore `.cache` folder

* Add `AlberCore` build-target

Separate the AlberCore from its frontends. Allowing two front-ends to interface
with the same core implementation.  This also allows for the core to interface
better with unit-testing.

* Modularize SDL/Qt frontend

Separates all QT/SDL build files and options into the frontend-build-target

* Fix optional OpenGL enablement

Software renderer requires OpenGL, so AlberCore requries OpenGL.

The QT frontend currently requires OpenGL due to `ScreenWidget`

* Fix Android build

* Fix LTO linking

* Fix windows build

`LoadLibrary` is a preprocessor that will use either `LoadLibraryW` or
`LoadLibraryA` depending on if `UNICODE` is defined or not.
In this case we are using an ASCII string literal and and can explicitly
specify the usage of `LoadLibraryA` with an ASCII literal.

* Bonk

* Bonk

---------

Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2024-03-11 19:51:17 +02:00
SpikeHD
57193e7944
Stub ALL getNsDataIdList functions (#452)
* fix: stub ALL getNsDataIdList functions

* fix: spaces -> tabs
2024-03-09 13:45:38 +02:00
Ada
ff1eaed0a4
peeve: guarantee toml order (#451) 2024-03-08 18:08:41 +02:00
Ishan09811
498d19fa51
keep screen on in `gameactivity` (#450) 2024-03-08 15:27:06 +02:00
wheremyfoodat
e71a8bec9c
Update discord-rpc again (#449) 2024-03-07 22:21:31 +02:00
wheremyfoodat
daf621dbe1
Merge pull request #448 from wheremyfoodat/fix-discord-rpc
Update discord RPC module to fix AUR build
2024-03-07 19:09:39 +00:00
wheremyfoodat
844d954a26 Update discord RPC module to fix AUR build 2024-03-07 20:46:11 +02:00
wheremyfoodat
048eca557e
Merge pull request #439 from wheremyfoodat/y2r-stubs
Y2R: Stub IsFinishedSending/Receiving functions
2024-03-07 18:17:56 +00:00
wheremyfoodat
d68b81c037
Merge pull request #444 from wheremyfoodat/gsp_read_hw_regs
GSP_GPU: Implement ReadHwRegs
2024-03-07 18:03:21 +00:00
wheremyfoodat
823e0def0b
Merge pull request #442 from nl255/master
Add dpad controls to readme.
2024-03-07 17:56:41 +00:00
wheremyfoodat
e4bea43fd6
Implement GetResourceLimitValue for thread count (#438) 2024-03-07 19:48:08 +02:00
wheremyfoodat
25d8e5807f
Fix dynarmic submodule (#446)
* Remove dynarmic submodule

* Add dynarmic mirror

* Update oaknut

* Update shader JIT to work with latest oaknut

* Maybe fix oaknut finally

* hlep

* More arm64 shader derps

* Fixing more shader JIT brokenness

* aaaaaaaaaaaa

* Update shader_rec_emitter_arm64.hpp

* Update shader_rec_emitter_arm64.cpp
2024-03-07 19:47:21 +02:00
wheremyfoodat
361172b4de
GSP_GPU: Implement ReadHwRegs 2024-03-07 00:09:41 +00:00
wheremyfoodat
2c81aa2863
Readme: Merge dpad keys together in controls page 2024-03-06 22:09:32 +02:00
nl255
10504984a2
Add dpad controls to readme. 2024-03-06 13:43:11 -06:00
wheremyfoodat
3505bf0df9
Y2R: Stub IsFinishedSending/Receiving functions 2024-03-06 00:37:12 +00:00
wheremyfoodat
24705fe67e
Fix boost submodule (#429) 2024-03-05 00:28:58 +02:00
wheremyfoodat
5ba773a393 Add GLES detection to fragment shader recompiler 2024-03-03 21:04:12 +02:00
wheremyfoodat
4b07ebed86 Fix shader cache bypassing GL state manager 2024-03-03 01:51:45 +02:00
wheremyfoodat
e5c09a092d Fix specialized shaders on Android 2024-03-02 23:29:22 +02:00
wheremyfoodat
fc83d518e2 Hook up specialized shaders to GL renderer 2024-03-02 22:35:56 +02:00
wheremyfoodat
67fe3214fe Add shader cache 2024-03-02 20:41:23 +02:00
wheremyfoodat
1e1665fea9
Merge pull request #426 from wheremyfoodat/android-stuffz
Android stuff
2024-02-29 22:23:34 +00:00