2580 Commits

Author SHA1 Message Date
13a9825c9a le plus important (#2375)
blarg
2025-07-13 22:34:38 +02:00
e099cfdc5a BAHAHAHAAHAHAHAHAAHAHAHA-*~°+| 1.0 2025-07-08 23:11:36 +02:00
608a4151b8 fix full bios boot not being set properly on initial DSI class creation (#2366) 2025-07-08 21:39:43 +02:00
3263ab11c2 Make SPU audio single-buffered (audio latency improvement) (#2286)
* SPU audio latency improvements

Basically reverts audio buffer handling to what it was before commit 05b94ef, but with the mutexes kept for thread safety (which the referenced commit was trying to do).

The SPU audio buffer should still be thread-safe in theory... right?

* Audio output improvements

This commit changes the audio output buffer to be configured by a variable, and fixes the case where the sound driver may change the buffer size after calling SDL_OpenAudioDevice (e.g. if the buffer size is set too low for the driver to handle).
2025-07-08 19:52:36 +02:00
72cba5daab camera: misc fix 2025-07-08 16:04:17 +02:00
f8b4871900 oops 2025-07-07 16:19:56 +02:00
e5741f992a camera: fix some misc issues 2025-07-07 16:15:58 +02:00
7499958ad0 camera: revise interface behavior to be more accurate
* there are two FIFO buffers (finally fixes Let's Golf)
* fix issues with camera start condition/cnt bit15
* add camera interface state to savestate
2025-07-07 14:48:53 +02:00
85d9202633 push this back tho... 2025-07-07 12:21:47 +02:00
1f51f27d44 Revert "camera: model FIFO more accurately (avoids weird bugs when DMA fails)"
This reverts commit 2cb07bf126.
2025-07-07 12:20:11 +02:00
85dcf65231 DSi: add support for SCFG_EXT bit 13 (32-bit VRAM bus) 2025-07-07 02:47:46 +02:00
2cb07bf126 camera: model FIFO more accurately (avoids weird bugs when DMA fails) 2025-07-07 02:30:01 +02:00
16d1464d19 camera: make timings more realistic (fixes rolling in some games) 2025-07-05 00:14:11 +02:00
f352cf612a call MakeCurrent() before deiniting GL stuff (to avoid deiniting on the wrong context) 2025-06-28 22:55:48 +02:00
4aaea218c1 add a way to tell windows apart 2025-06-28 13:06:53 +02:00
44b0704063 fix video settings update on second instance secondary windows 2025-06-28 12:48:22 +02:00
2499ec36c2 window: undo last commit (was a trainwreck). explicitly close child windows to avoid GL issues. fix bug with window parenting in second multiplayer instances. 2025-06-28 12:37:53 +02:00
baad893bc0 window: move cleanup code to destructor (closeEvent() isn't called for children) 2025-06-28 03:48:42 +02:00
ec2f7ee838 fix issues with multi-window and OpenGL on Windows 2025-06-28 03:02:00 +02:00
005ef9c9fc camera: fix resolution selection code (could accidentally select a resolution like 640x360) 2025-06-26 23:04:14 +02:00
7b562f71b3 NDMA: fix IRQ in infinite repeat mode 2025-06-25 21:52:23 +02:00
fd279bedc5 huh 2025-06-24 16:51:33 +02:00
b2af96474f Merge remote-tracking branch 'origin/master' 2025-06-24 01:03:25 +02:00
8cd2d972ab DSP: fix PDATA reads being one off 2025-06-24 01:03:14 +02:00
ab249fc913 Don't return 0 when attempting to read from the GPA GPIO addresses with GPIO disabled (#2266) 2025-06-23 08:32:17 +02:00
8e163296d3 camera: trigger DMA when reaching the end of a frame (fixes issues when the frame height isn't a multiple of the DMA interval) 2025-06-22 23:58:30 +02:00
83b8f1ae47 DSP: fix bug in PDATA read DMA (was reading wrong register) 2025-06-22 21:27:27 +02:00
fd74181f7d Slot-2 Motion Pak, Guitar Grip emulation (#2183)
* Add DS Motion Pak emulation

* Add retail Motion Pak emulation, Guitar Grip emulation

* Simplify Motion Pak acceleration conversion formula

* Fix Motion Pak emulation axes

* Motion Pak: Emulate console laying on a flat table when motion input is not detected

* Motion Pak: Add comment

* GBACartMotionPak: Update comment
2025-06-22 16:30:01 +02:00
2d04222442 Load Tad key into DSi AES engine (#2252) 2025-06-22 16:29:20 +02:00
71edf793fc setupMicInputData() ought to be called at all times tho 2025-06-18 19:32:50 +02:00
d7a4b2e8fe Don't try to change the core's audio interp setting when the emu
instance has no core yet.

Fixes #2352
2025-06-18 00:51:47 +02:00
c65d490351 small fix to translucency flag assignment (#2301)
hardware does not care that the polygon's mode would prevent the texture from rendering translucent pixels
2025-06-15 19:24:42 +02:00
79f12de480 multi-instance: load firmware from correct instance-specific file (load from original file if not found) 2025-06-15 01:42:24 +02:00
0b005abedf work around building with LTO causing an ICE in gcc 15.1.0 2025-06-15 01:15:31 +02:00
0d294e9373 fix mic settings not being changed when closing the audio settings dialog 2025-06-14 23:20:31 +02:00
7117178c2d melonDLDI: add support for unaligned I/O 2025-05-27 00:55:12 +02:00
d1eff4acf5 update copyright headers (about time) 2025-05-27 00:31:37 +02:00
37ca75acb9 add source for DLDI driver 2025-05-27 00:27:38 +02:00
528f2495fc Fix a missing #include on Windows builds (#2333)
* Fix a GCC 15 build issue on Windows due to a missing `#include`

- `<vector>` was included implicitly by some other header
- The build broke in GCC 15 on MinGW, most likely due to some internal refactoring

* Indent these `#include`s the same as the others
2025-05-21 22:16:00 +02:00
7baeb26e32 Fix undefined behavior when indexing into ARCode::Code (#2331)
- Indexing past the end of a `std::vector`'s length is undefined, even if there's extra capacity
- GCC 15 introduced an assert in `vector::operator[]`, so this line caused an abort if melonDS was built with GCC 15
- It was always undefined, but now the STL checks for it
2025-05-20 01:00:48 +02:00
0e64a06c84 Use standard sysconf
Fixes compilation of JIT builds on non-glibc OSes. After some testing in a Fedora 41 VM,
__sysconf and sysconf return the same value, and sysconf in glibc appears to just
be an alias to __sysconf to begin with
2025-05-15 14:08:43 +02:00
d6d820c013 Set SDL_HINT_APP_NAME (#2319)
Fixes #2300
2025-05-11 13:10:48 +02:00
9ed7e5803e ci: upgrade vcpkg to a commit that works for our deps with CMake 4.0
CMake 4.0 dropped support for projects with a minimum required version
below 3.5. libarchive, as well as possibly other dependencies, had older
versions set so they now fail to build.

GitHub Actions and MSYS2 were very quick to update their CMake version
and there isn't a tagged vcpkg release with a fix for libarchive yet, so
we will use a specific commit for now.
2025-04-09 17:40:12 +02:00
0fcf1f6e3a Add support for using the solar sensor without requiring a Boktai ROM (#2221)
* Add a `GBAHeader` struct

* Add extra `GBAAddon` entries for the Boktai carts

- Each game in the trilogy has a different effect on Lunar Knights (the only commercial DS game to support the solar sensor)

* Copy the logo data from the NDS ROM's header to the Boktai stub's header
2025-03-09 18:20:27 +01:00
63b468927e ci: enable building of appimages on aarch64
Looks like whatever was causing linuxdeploy to crash got fixed, so we can build them now.
2025-02-21 08:58:48 +01:00
e8265df4bd vcpkg 2025.01.13, update nixpkgs 2025-02-10 22:53:51 +01:00
15c3faa26e Use GitHub's new arm64 Linux runners for the Ubuntu CI builds 2025-01-17 04:15:13 +01:00
a9cce557d2 fix framelimiter bugs (#2256) 2025-01-14 18:21:03 +01:00
0c5dd28b1c just case the string length to int to make std::min happy in all cases 2024-12-26 09:17:46 +01:00
c41951d49c Fix almost every warning (#2195)
Fix almost every warning as of Clang 19

* <codecvt> is deprecated, we can use QString's UTF-16 conversion
  instead
* remove sem_timedwait implementation as we don't need it anymore
* remove a useless shift that has its result discarded
* change usages of deprecated sprintf to snprintf
2024-12-25 16:54:10 +01:00