2712 Commits
Author SHA1 Message Date
Jesse Talavera 906e9ebb27 Look for MakeEmbed.cmake in the correct location even if melonDS is included in subprojects (#2732)
- Prefixing the path with `CMAKE_SOURCE_DIR` will be wrong if including melonDS as a dependency
- Replace the path given to `add_custom_command` with a `CMAKE_CURRENT_LIST_DIR` prefix
2026-08-24 00:29:01 +02:00
Rayyan Ansari d3cd6164de CI: NetBSD: fix downloading X sets 2026-07-31 00:54:41 +01:00
Jakly b3dd988076 fix vcount writing causing hangs (#2710)
* fix vcount writes hanging the sw renderer if the value written is the same as the previous value in the internal reg

* that variable isn't doing much anymore
2026-07-29 21:18:30 +02:00
Rayyan Ansari ab9e624082 JIT: fastmem: fix Android predefined macro
Correct the Android macro to __ANDROID__ instead of ANDROID.

Closes: https://github.com/melonDS-emu/melonDS/issues/2706
Fixes: 544fefa27f ("Refactor the JIT to be object-oriented (#1879)")
2026-07-28 23:53:33 +01:00
Nadia Holmquist Pedersen 82fdbc7848 gdb: reduce reported PacketSize to account for bytes around the packet
it seems like gdb considers the PacketSize option as the max size of the
packet content exclusively, not the entire sent packet with $, # and
checksum. Reduce the reported size to avoid potentially writing out of
bounds for larger memory read requests.
2026-07-19 14:52:18 +02:00
Daniel 10a173b553 wifi: don't auto power down the transceiver when power saving is disabled (#2681)
sleep mode 2 ("power saving disabled", used by dswifi in infrastructure
mode) was treated like automatic mode: when the one-shot W_BeaconCount2
countdown armed at wifi init (0xFFFF TUs = ~67s) reached zero, IRQ13
powered the transceiver off. stations running with power saving disabled
never service IRQ13/IRQ15, so nothing ever turned it back on, silently
killing all wifi traffic ~67 seconds after init. real hardware does not
power down in this mode.
2026-06-07 23:50:46 +02:00
Arisotura c69c1ceb11 fix possible bug with VRAMSTAT (good catch Jakly!) 2026-05-27 23:22:49 +02:00
Nadia Holmquist Pedersen eafe289410 vcpkg 9b965a116838c6cdcd36bca60d1b81b030c8ab8d
using latest commit from master as build fix for Qt 6 on macOS 26.4 was
not included in the latest tagged release
2026-05-27 15:46:10 +02:00
Nadia Holmquist Pedersen 23bad81f04 nix: update inputs 2026-05-27 15:46:10 +02:00
Nadia Holmquist Pedersen 8f91cdfe05 ci: set fail-fast: false for macOS so one arch doesn't fail the other 2026-05-27 14:17:01 +02:00
Nadia Holmquist Pedersen a1d7dfb313 Cleaner handling of termination signals on UNIX 2026-05-26 21:25:48 +02:00
Nadia Holmquist Pedersen 981e12dcd0 ROMInfoDialog: fix game title being unreadable with dark themes 2026-05-26 20:35:56 +02:00
Nadia Holmquist Pedersen c851d65266 take care of various deprecateion and format warnings on windows 2026-05-17 13:58:19 +02:00
Nadia Holmquist Pedersen a6519ffb1f ci: switch windows to windows-2025-vs2026
GitHub will be doing this automatically starting June 8, 2026, so just
get it over with now to ensure everything builds fine.
2026-05-17 13:58:19 +02:00
RSDuck 889e26e949 fix #2657 2026-05-11 21:16:37 +02:00
Nadia Holmquist Pedersen 9faa111402 Fix a couple of warnings reported by Clang 2026-05-10 10:55:05 +02:00
Nadia Holmquist Pedersen 5421e687fd ci: avoid unnecessary extra archiving
actions/upload-artifact@v7 now supports disabling zipping the uploaded
artifact, so let's use that to avoid double-zipping the macOS app
bundle, as well as the AppImage as those should already be compressed.
2026-05-10 10:18:08 +02:00
Nadia Holmquist Pedersen 1609a0f94e Use Qt's QFile abstraction for the Platform.h file I/O functions (#2646)
* Use Qt's QFile abstraction for the Platform.h file I/O functions

* forgot to reimplement FileWriteFormatted
2026-05-06 19:24:11 +02:00
OrCat Studios 0638e5bc75 Fix SPU output buffer leak 2026-05-06 03:15:15 +02:00
Nadia Holmquist Pedersen a4d41faae3 Fix occasional segfault on exit caused by emuIsActive being called after
the EmuThread is destroyed
2026-04-30 18:09:47 +02:00
Nadia Holmquist Pedersen fc00402cd6 relax the limitation of the audio skew allowed for the target FPS 2026-04-28 00:29:09 +02:00
Nadia Holmquist Pedersen c605579141 remove margin for filling in audio samples when running below full speed
this seems to reduce the amount of clicking/popping in the audio
somewhat
2026-04-27 20:52:21 +02:00
Nadia Holmquist Pedersen 42e09ba549 Attach to parent console process on Windows
This is directly based on the code for this from NanoBoyAdvance.
2026-04-20 17:06:23 +02:00
Nadia Holmquist Pedersen 14c2a265e0 ci: Add arm64 builds for Windows 2026-04-20 14:44:24 +02:00
Nadia Holmquist Pedersen c3517ec224 ci: Use the Windows SDK and Clang for Windows builds
Also, explicitly set the resource compiler as CMake seems to not find it
in some cases, and use the regular Clang/Clang++ for simplicity.
2026-04-20 14:44:24 +02:00
Nadia Holmquist Pedersen e617a42f9f vcpkg 2026.03.18 2026-04-20 14:44:24 +02:00
Arisotura 0a65c3785f add RTC sync option (fixes #2589)
also allow to change date/time while game is running
2026-04-16 16:52:37 +02:00
Arisotura 1124603369 fix FreeBIOS IRQ wait (fixes #2600)
pretty sure a better fix for this is needed, the old code was broken, but atleast now it's broken the same way
2026-04-15 22:04:20 +02:00
Rayyan Ansari 94f9bf534c CI: Fix FreeBSD hang (#2624)
Although it did work at some point, I think that FreeBSD's locking
over NFS is a bit unreliable, so we end up with Qt's automoc/autorcc
just hanging indefinitely. (some sort of deadlock?)

Fix this by building in /tmp inside the VM, and then copying it back
to the NFS-synced workspace when we are done.
2026-04-10 21:47:08 +01:00
MrlinkwiiandRayyan Ansari bf3fa966b1 CI: update actions/{checkout,upload-artifact} to latest version (#2612)
* CI : update actions/checkout to latest version

* CI: update actions/upload-artifact from v4 to v7

---------

Co-authored-by: Rayyan Ansari <[email protected]>
2026-04-10 20:35:38 +01:00
Jakly b01b420cbb fix cart address wrappingnot being handled properly (#2606) 2026-03-14 01:12:22 +01:00
Arisotura 4ce21880fc fix GL renderer when using multiple instances 2026-03-08 23:33:57 +01:00
Arisotura 4c3fae9174 blarg 2026-03-08 23:23:08 +01:00
Arisotura 1ebe58b713 fix possible freeze during cart transfer (Dragon Ball 2) 2026-03-08 20:58:38 +01:00
Arisotura ce3dc37529 fix up SCFG_EXT values for direct boot to match what the DSi menu uses 2026-03-08 18:57:32 +01:00
Arisotura 60f2ced9fc implement all SCFG_EXT access bits (and do it more cleanly) 2026-03-08 18:51:19 +01:00
Arisotura 6d2077b0eb fuck, CLion, is it too much to ask of you to respect existing indentation 2026-03-08 17:42:41 +01:00
Arisotura c5b0bb1bed make this consistent 2026-03-08 17:41:51 +01:00
Arisotura 1b63a0f690 popular vote says this notation ain't good 2026-03-08 17:38:37 +01:00
Arisotura 1db5729f45 Cartridge emulation improvements (#2595)
* refine cart interface implementation to match hardware, including timing fixes
* add second cart slot for DSi
* fully implement SCFG_MC
* move cart classes to subdirectory

fixes #2586
fixes #380 (might need extensive testing)
fixes Surviving High School (DSiWare)
2026-03-08 17:23:27 +01:00
PoroCYon cd85f55b38 NWifi: add compatibility fixes for blocksds dswifi (#2596) 2026-03-08 15:02:39 +01:00
Nadia Holmquist Pedersen 303848124f nix: update flake inputs and increment version number 2026-03-04 01:21:16 +01:00
Arisotura bdd85c9ccb ugh did I really accidentally commit this 2026-02-16 21:16:45 +01:00
Arisotura 3e4ed84593 update copyright headers 2026-02-15 12:27:56 +01:00
Arisotura 85ee531353 fix up starting tab for EmuSettingsDialog (again)
thinking maybe we should set it programmatically so it stops being a problem
2026-02-11 18:25:26 +01:00
Adrian "asie" Siekierka 87e1145c0d Allow booting in DSi direct mode without BIOS/firmware/NAND dumps. (#2523)
* Allow booting in DSi direct mode without BIOS/firmware/NAND dumps.

This is an initial patch which enables booting programs in DSi direct mode
without requiring BIOS/firmware/NAND dumps from increasingly expensive
consoles:

- The open DSi BIOS is derived from a modified build of FreeBIOS; minor patches
  have been done (such as moving SWI 0x12 to 0x02), but no new SWI functions
  have been implemented.
- The DSi firmware stub is generated in the same way as the NDS firmware stub;
  this appears to be good enough for BlocksDS's dswifi to pick up the new AP
  definitions.
- The DSi NAND is currently not stubbed at all; rather, the code has been
  edited to allow bringup without a NAND image. This is sufficient for DSi
  mode homebrew; programs running from the cartridge slot are likewise not
  expected to require NAND access.

More work has to be done before it's useful for non-homebrew scenarios.

* Implement a less stub DSi::NeedsDirectBoot()

* Do not block direct boots if DSi NAND is missing but BIOS/firmware is present

* Correctly initialize extended header for DSi generated firmware

* Fix overriding firmware language in DSi mode, add experimental support for Chinese language option
2026-02-11 18:23:25 +01:00
Arisotura 72aa2bd5bd blarg 2026-02-09 22:18:06 +01:00
Arisotura aa1f91f88c remove "separate savefiles" option. weird and unintuitive. 2026-02-09 19:44:31 +01:00
Arisotura f5cc5439aa automate "full BIOS boot" based on BIOS checksums 2026-02-07 21:46:11 +01:00
Arisotura 8104a20be1 add basic sanity checks to ROM loading 2026-02-02 18:15:23 +01:00