Commit Graph

2087 Commits

Author SHA1 Message Date
d1eff4acf5 update copyright headers (about time) 2025-05-27 00:31:37 +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
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
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
be26878b4c FIX: this should be namespace std:: to preserve compatibilty with non-glibc when building without gdb stub 2024-12-25 16:48:46 +01:00
66d1091330 improve audio handling at non-60 fps targets (#2246) 2024-12-25 16:34:30 +01:00
72c86ade31 Fix gdbstub not activating until the console is reset (#2245)
The check for initialising the gdbstub depending on whether the JIT was
enabled or not was the wrong way around: previously, it would only
enable the gdbstub if the JIT was enabled.

The stub started working again if you reset the console, as
NDS::SetGdbArgs didn't have any such check and it was called by
EmuInstance::updateConsole.
2024-12-24 00:29:21 +01:00
817b409ec8 ah. (#2225) 2024-11-30 02:54:54 +01:00
cba838dd52 TitleManager: fix handling of title string
Truncate the title at the first occurrence of \0, as title strings
should be null-terminated.

Fixes #2219 (Weird characters on DSi Title Manager on melonDS 1.0RC)
2024-11-27 13:15:18 +00:00
1d6c9023ff get rid of the incorrect CLOCK_MONOTONIC redefinition 2024-11-23 12:43:06 +01:00
0db536c063 Set _WIN32_WINNT to Windows 8 when JIT is enabled (fixes #2209) 2024-11-23 12:40:02 +01:00
6a15dbfa12 unmappinged everything 2024-11-22 03:34:18 +01:00
e3fa6f4224 Fix version number in the generated Windows resource 2024-11-21 01:10:13 +01:00
dc10df0796 FUCK THAT SHIT 2024-11-21 00:27:30 +01:00
d0d010b09d don't use std::map and std::function in scheduler 2024-11-20 02:55:40 +01:00
f6f993cb41 Merge remote-tracking branch 'origin/master' 2024-11-19 01:07:39 +01:00
86c6740b24 fuck that shit 2024-11-19 01:07:27 +01:00
1b3f4664d8 fix order of ScreenLayoutType 2024-11-19 00:57:58 +01:00
13096f9fdc add warnings to the LAN dialogs 2024-11-19 00:50:42 +01:00
c4f7c1bff7 fix compiling without JIT 2024-11-19 00:34:16 +01:00
317b91533b avoid spawning message boxes from the emuthread 2024-11-19 00:33:39 +01:00
259eb4b408 dsfsdhgf 2024-11-19 00:11:46 +01:00
d68091ee9c fix another oversight 2024-11-18 23:13:48 +01:00
b491e99954 actually save path settings in instance-local config 2024-11-18 23:10:21 +01:00
f1c96281a9 update toml11. fixes bug with FPS settings corrupting config file 2024-11-18 22:53:55 +01:00
9ad3d42252 hopefully fix macos 2024-11-18 21:31:56 +01:00
f0503a6a28 fix 4kb page check
oops
2024-11-18 21:21:02 +01:00
99ce959913 Multiinstance jit (#2201)
* works on Linux x64
still needs to be fixed for everything else

* use lots of PROT_NONE memory to reliably reserve virtual address space

* multi instance fastmem on Linux

* Windows

* blarg

* disable fastmem if the page size is not 4kb

* fix fast mem dialog option

* make aarch64 work as well

* fastmem 16kb pages support
2024-11-18 20:43:05 +01:00
cb7af652f5 aarch64 lto broken GPU2D workaround 2024-11-18 20:08:49 +01:00
c01b2bf7a0 prevent out of bounds access for microphone data 2024-11-18 18:58:39 +01:00
0ea0af3abf make it possible to change gdb stub settings without destroying/recreating a NDS 2024-11-17 20:00:52 +01:00
99aa5676db actually remove NDS/GBA ROM args from NDSArgs, since we won't be using them 2024-11-17 19:38:36 +01:00
5e3d2d07c3 fix Key1 code to source the DS-mode key data from the ARM9i BIOS, so it works even if no DS BIOSes are provided
(had to rework the loading code to make it work -- if carts are passed to the DSi constructor, they get initialized before the DSi stuff is initialized, and can't read the DSi BIOSes)
2024-11-17 19:04:13 +01:00
f0a023b572 Merge remote-tracking branch 'origin/master' 2024-11-17 18:18:00 +01:00
5f8255bc90 allow DSi mode to run with internal DS BIOS 2024-11-17 18:17:43 +01:00
584508230f Assortment of fixes related to libnds v2/calico (#2197)
* Support 8-bit writes to REG_IPCSYNC

* Support CP15 Trace Process ID register

* NWifi: expose correct manfid information in CIS0/CIS1 area

* NWifi: basic support for WMI_SET_PROBED_SSID

# Conflicts:
#	src/DSi_NWifi.cpp

* DSi_NAND: fix incorrect CTR IV calculation code
2024-11-17 15:57:00 +01:00
023dc0c446 avoid reopening the microphone if it was already opened 2024-11-17 15:47:55 +01:00
871a167d8b also fix crashes when inserting/ejecting a NDS cart while nothing is loaded 2024-11-17 15:43:22 +01:00
0a4287c6ad fix crashes when inserting/ejecting GBA carts/addons with nothing loaded 2024-11-17 15:23:25 +01:00
7c1d2a64f4 Set WIN32_LEAN_AND_MEAN, gets rid of the winsock2 warnings and probably
speeds up compilation a tiny bit

oh and NOMINMAX too for good measure while we're at it
2024-11-11 14:18:05 +01:00
b2f6fab6f4 cmake: use interface include directories properly
and fix an indent I guess
2024-11-11 12:06:12 +01:00
4528441c74 for OGL renderer W buffer rendering avoid undefined vertex z
see https://github.com/melonDS-emu/melonDS/issues/2017
2024-11-09 14:19:02 +01:00
adf143a38d Fix link to contributors in About dialog
Add openExternalLinks property to the label to allow the hyperlink to
open in the user's web browser.
2024-11-08 21:32:45 +00:00
8d4f419546 correct assert in gdb stub 2024-11-08 18:57:44 +01:00
5959009ebd Use Qt 6 by default on all platforms and update build instructions (#2187) 2024-11-05 17:03:07 +01:00