Commit graph

52 commits

Author SHA1 Message Date
wheremyfoodat
082b6216b3
Update home menu branch (#759)
* Fix typo (#680)

Co-authored-by: Noumi <139501014+noumidev@users.noreply.github.com>

* More PTM stuff

Co-Authored-By: Noumi <139501014+noumidev@users.noreply.github.com>

* Make system language configurable

* Fix building crypto++ for x64 target on Apple silicon MacOS

* Attempt to switch to M1 runners again

* Prevent selecting Vulkan renderer in Qt frontend and present a message

* Libretro: Add system language option

* Only enable audio by default on libretro for now

* CMake: Bump version

* Store configuration file in AppData root if not in working directory (#693)

* Store configuration file in AppData root if not in working directory

This fixes MacOS app bundles, as the emulator cannot write the config
file into the app bundle.

* Remove duplicate fs calls

* I'm an idiot sandwich

---------

Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>

* GL: Add usingGLES to driverInfo struct (#694)

* Wayland fixes part 1

* Support GLES on desktop

* Qt: Fix Wayland support

Qt will only create a Wayland surface when show() is called on the main
window and on the ScreenWidget. Thus, call the function before creating
the GL context.

Doesn't cause regressions on XWayland, untested in other platforms.

Fixes #586

* No need to call screen->show() twice

* Fix disabling Wayland & building on some distros (#700)

* GLES: Properly stub out logic ops

* Fix git versioning

* Android_Build: Implement ccache (#703)

* Android_Build: Implement ccache

* Update Android_Build.yml

* Update Android_Build.yml

---------

Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>

* Removed dead Citra link in readme (#706)

* CRO: Lighter icache flushes

* Implement Luma icache SVCs

* Add missing SVC logs

* GPU: Add sw texture copies

* Use vk::detail::DynamicLoader instead of vk::DynamicLoader (#710)

* Use vk::detail::DynamicLoader instead of vk::DynamicLoader

* Update renderer_vk.cpp

* Vk: Fix typo

* Vk: Lock CI runners to SDK version 1.3.301 temporarily

* Vk: Fixing CI pt 2

* Vulkan: Fixing CI pt 3

* Vk: Fix typo

* Temporarily give 80MB to all processes (#715)

* Try to cross-compile Libretro core for arm64 (#717)

* Try to cross-compile Libretro core for arm64

* Bonk

* Update Hydra_Build.yml

* [WIP] Libretro: Add audio support (#714)

* Libretro: Add audio support

* Adding audio interface part 1

* Audio device pt 2

* More audio device

* More audio device

* Morea uudi odevice

* More audio device

* More audio device

* More audio device

---------

Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>

* Libretro audio device: Fix frame count

* Mark audio devices as final

* Add toggle for libretro audio device (#719)

* Very important work (#720)

* Very important work

* Most important fix

* Add more HLE service calls for eshop (#721)

* CI: Fix Vulkan SDK action (#723)

* GPU registers: Fix writes to some registers ignoring the mask (#725)

Co-authored-by: henry <23128103+atem2069@users.noreply.github.com>

* OLED theme

* OLED theme config fix (#736)

Co-authored-by: smiRaphi <neogt404@gmail.com>

* Adding Swedish translation

* Fix Metal renderer compilation on iOS

* [Core] Improve iOS compilation workflow

* [Qt] Hook Swedish to UI

* AppDataDocumentProvider: Typo (#740)

* More iOS work

* More iOS progress

* More iOS work

* AppDataDocumentProvider: Add missing ``COLUMN_FLAGS`` in the default document projectation (#741)

Fixes unable to copy files from device to app's internal storage problem

* More iOS work

* ios: Simplify MTKView interface (still doesn't work though)

* ios: Pass CAMetalLayer instead of void* to Obj-C++ bridging header

* Fix bridging cast

* FINALLY IOS GRAPHICS

* ios: Remove printf spam

* Metal: Reimplement some texture formats on iOS

* metal: implement texture decoder

* metal: check for format support

* metal: implement texture swizzling

* metal: remove unused texture functions

* Shadergen types: Add Metal & MSL

* Format

* Undo submodule changes

* Readme: Add Chonkystation 3

* Metal: Use std::unique_ptr for texture decode

* AppDataDocumentProvider: Allow to remove documents (#744)

* AppDataDocumentProvider: Allow to remove documents

* Typo

* Metal renderer fixes for iOS

* iOS driver: Add doc comments

* iOS: Add frontend & frontend build files (#746)

* iOS: Add SwiftUI part to repo

* Add iOS build script

* Update SDL2 submodule

* Fix iOS build script

* CI: Update xcode tools for iOS

* Update iOS_Build.yml

* Update iOS build

* Lower XCode version

* A

* Update project.pbxproj

* Update iOS_Build.yml

* Update iOS_Build.yml

* Update build.sh

* iOS: Fail on build error

* iOS: Add file picker (#747)

* iOS: Add file picker

* Fix lock placement

* Qt: Add runpog icon (#752)

* Update discord-rpc submodule (#753)

* Remove cryptoppwin submodule (#754)

* Add optional texture hashing

* Fix build on new Vk SDK (#757)

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

* CI: Use new Vulkan SDK

---------

Co-authored-by: Noumi <139501014+noumidev@users.noreply.github.com>
Co-authored-by: Thomas <thomas@thomasw.dev>
Co-authored-by: Thomas <twvd@users.noreply.github.com>
Co-authored-by: Daniel López Guimaraes <danielectra@outlook.com>
Co-authored-by: Jonian Guveli <jonian@hardpixel.eu>
Co-authored-by: Ishan09811 <156402647+Ishan09811@users.noreply.github.com>
Co-authored-by: Auxy6858 <71662994+Auxy6858@users.noreply.github.com>
Co-authored-by: Paris Oplopoios <parisoplop@gmail.com>
Co-authored-by: henry <23128103+atem2069@users.noreply.github.com>
Co-authored-by: smiRaphi <neogt404@gmail.com>
Co-authored-by: smiRaphi <87574679+smiRaphi@users.noreply.github.com>
Co-authored-by: Daniel Nylander <po@danielnylander.se>
Co-authored-by: Samuliak <samuliak77@gmail.com>
Co-authored-by: Albert <45282415+ggrtk@users.noreply.github.com>
Co-authored-by: Nadia Holmquist Pedersen <893884+nadiaholmquist@users.noreply.github.com>
2025-06-23 04:59:22 +03:00
wheremyfoodat
873fca076a Handle lack of an audio device gracefully without hangs 2024-12-05 01:27:12 +02:00
wheremyfoodat
72b4194c95 Remove unused miniaudio resampler 2024-11-28 20:43:26 +02:00
wheremyfoodat
d299081c40 AAC decoder: Audio should be enabled by default 2024-11-28 19:17:10 +02:00
wheremyfoodat
3b6190b69a Add volume slider & mute audio settings 2024-11-28 19:10:55 +02:00
wheremyfoodat
b251f84ab1 DSP: Add option to enable/disable AAC 2024-11-28 19:10:55 +02:00
wheremyfoodat
04d047ff75 Some formatting 2024-11-22 02:48:32 +02:00
wheremyfoodat
83aafa31f0 Better audio playback code 2024-11-22 02:33:57 +02:00
wheremyfoodat
b78450c88d NEON mixer: Change vaddq_f32 to vaddq_s32 (Thank you Clang)
Co-Authored-By: Kelpsy <138107494+kelpsyberry@users.noreply.github.com>
2024-11-20 21:17:08 +02:00
wheremyfoodat
f30eed7980 DSP: Add NEON quad-conversion code
Co-Authored-By: Kelpsy <138107494+kelpsyberry@users.noreply.github.com>
2024-11-20 20:01:00 +02:00
wheremyfoodat
878ff419fd DSP: Add SSE quad-conversion code
Co-Authored-By: Kelpsy <138107494+kelpsyberry@users.noreply.github.com>
2024-11-20 18:09:57 +02:00
wheremyfoodat
33f45cf1f5 Merge branch 'master' into more-dsp 2024-11-20 02:40:20 +02:00
wheremyfoodat
889c2453de
Audio: Properly close audio device on emulator destruction (#637)
* Audio: Properly close audio device on emulator destruction

* Undo oopsie
2024-11-19 23:41:52 +02:00
wheremyfoodat
efb6cdd30d Run clang-format 2024-11-19 02:12:20 +02:00
wheremyfoodat
7a4f3f4836 HLE DSP: Add passthrough mix detection 2024-11-10 14:53:07 +02:00
wheremyfoodat
69e8e1c2c4 Add audio interpolation helpers 2024-11-09 23:11:19 +02:00
wheremyfoodat
8cfffb8119 HLE DSP: Actually parse InterpolationMode config 2024-11-07 22:08:28 +02:00
wheremyfoodat
b299609a9b More HLE DSP work 2024-11-06 19:26:57 +02:00
wheremyfoodat
07cee43a2b HLE DSP: Implement per-voice mixing stage 2024-11-03 19:50:27 +02:00
wheremyfoodat
3e72323653 HLE DSP: Initial mixer work 2024-09-29 00:32:51 +03:00
wheremyfoodat
656b7da5e4
Properly pad AAC request struct 2024-09-05 01:55:44 +03:00
wheremyfoodat
545bbd5c45 HLE DSP: Implement AAC audio decoder 2024-09-05 00:06:48 +03:00
wheremyfoodat
9055076d0d Add fdk-aac & AAC request structure 2024-09-04 22:31:19 +03:00
wheremyfoodat
85bae2e94e HLE DSP: Handle cycle drifting 2024-08-04 16:46:43 +03:00
wheremyfoodat
e666afd1a3 DSP HLE: Fix buffer queue metadata 2024-07-31 02:51:40 +03:00
wheremyfoodat
c7db6fe5dc FIx DSP region calculation 2024-07-29 19:54:46 +03:00
wheremyfoodat
800c11ff62 HLE DSP: Add PCM8 audio decoding 2024-07-02 17:19:20 +03:00
wheremyfoodat
6a424a7a66 Fix CI 2024-05-01 17:02:38 +03:00
wheremyfoodat
e4b81d61a4 HLE DSP: Fix AAC response stub 2024-05-01 16:10:51 +03:00
wheremyfoodat
0490c6753f HLE DSP: Stub AAC 2024-05-01 01:56:17 +03:00
wheremyfoodat
2fc9c0a573 DSP HLE: Broken PCM16 and handle DSP voice status better 2024-05-01 00:21:21 +03:00
wheremyfoodat
2eaaccd96b
Remove unused span include 2024-04-27 00:56:35 +03:00
wheremyfoodat
609eb6d880
DSP HLE: Get ADPCM audio decoding working (#499)
* Start decoding ADPCM

* Fix accidentally skipping ADPCM samples

* DSP HLE: ADPCM weights are signed

* Format

* Format

* Fix broken amend
2024-04-27 00:53:17 +03:00
wheremyfoodat
1cc3bbf68d HLE DSP: Fix format and source type for audio buffers 2024-04-06 19:12:58 +03:00
wheremyfoodat
1c355041fa HLE DSP: Add embedded buffers 2024-04-06 16:56:11 +03:00
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
2e696deccf Add HLE DSP files 2024-04-05 00:44:31 +03:00
wheremyfoodat
2b76f89b7b Add DSP shared memory definitions 2024-04-03 21:56:21 +03:00
wheremyfoodat
d459cb1d6c
Get audio output working with LLE DSP (#419)
* Implement audio output

* Semi-proper audio output

* Add audio enable and vsync settings

* Add audio enable and vsync settings

* Optimize audio output a bit

* Make max ring buffer timeout smaller

* Make max ring buffer timeout smaller

* Revert to spinlocking for audio sync

* Sleep emulator thread if too many samples queued

* Fix Teakra submodule breaking

* Don't start audio device too soon

* Fix IWYU errors

* Fix compilation errors on GCC/Clang

* Ignore std::hardware_destructive_interference_size on Android NDK

* Fix more IWYU errors
2024-02-24 03:26:23 +02:00
wheremyfoodat
8bca988b55
Fix compilation errors 2024-02-23 23:49:56 +00:00
wheremyfoodat
f7c6ec3b57 Properly handle DSP interrupts in HLE 2024-02-19 18:50:41 +02:00
wheremyfoodat
7a5bb2859e Make DSP backends properly configurable 2024-02-19 17:57:21 +02:00
wheremyfoodat
33eb096ef8 Better DSP scheduling 2024-02-18 22:22:00 +02:00
wheremyfoodat
f58354af06 Update DSP semaphore on semaphore event signal
Fixes Pokemon X and other DSP-needy games...
2024-02-18 03:54:00 +02:00
wheremyfoodat
d3dc9e2f71 Forward interrupts properly in Teakra DSP core 2024-02-18 00:24:08 +02:00
wheremyfoodat
5dd3c02ffb Moar Teak LLE
Co-Authored-By: PSISP <12768103+psi-rockin@users.noreply.github.com>
2024-02-17 03:48:37 +02:00