Jesse Talavera
327ce45124
Refactor network implementations to be more reusable and less buggy ( #2107 )
...
encapsulate network interfaces
2024-08-01 22:02:45 +02:00
Jesse Talavera
c6bf5d5181
Allow AREngine
to be used independently of ARCodeFile
( #2108 )
...
* Make `EmuInstance::cheatFile` use a `unique_ptr`
- Fixes a memory leak, as the cheat file wasn't cleaned up in the destructor
* Split `AREngine` and `ARCodeFile` apart
- Suitable for frontends that have their own way of storing cheats
- Store the cheats in `AREngine` in a `std::vector`
- Apparently cheats are _supposed_ to be executed each frame; I didn't understand this until recently
2024-08-01 22:01:00 +02:00
Nadia Holmquist Pedersen
f3f6a6a194
Fix building on i686 Linux
...
I doubt anyone actually cares about support for it but hey may as well?
2024-08-01 21:57:32 +02:00
pants64DS
37c0320cbe
Fix an inaccuracy with the No$gba debug registers 04fffa14 and 04fffa18 ( #2119 )
...
Writing to either of the two registers would print one newline too many
Co-authored-by: pants64DS <pants64DS@users.noreply.github.com>
2024-07-31 01:13:06 +02:00
RSDuck
b778fbaad1
attempt at correct utf8 decoding for toml config file path
2024-07-30 17:48:41 +02:00
Nadia Holmquist Pedersen
01c2d65f07
Explicitly include QModernWindowsStylePlugin in static builds
...
I hope this'll make it look right.
2024-07-30 03:10:01 +02:00
Nadia Holmquist Pedersen
d62c61ba08
vcpkg 2024.07.12
2024-07-30 00:43:15 +02:00
RSDuck
12563fb636
use platform file functions for savestates and NAND importing file check
...
should fix character encoding issues on Windows
2024-07-29 00:15:19 +02:00
Nadia Holmquist Pedersen
c0ada2f445
Fix invalid .gitattributes entries
2024-07-28 03:23:07 +02:00
Nadia Holmquist Pedersen
ececf337f2
Build Windows CI builds with vcpkg and Qt 6 ( #2112 )
...
If using Qt 6 becomes a problem in terms of compatibility, toggle it off in the CMakePresets.json.
2024-07-27 17:22:35 +02:00
Nadia Holmquist Pedersen
d31eabb6fa
Don't disable firmware settings controls when override external firmware
...
settings is disabled
2024-07-27 16:56:29 +02:00
Jesse Talavera
837a582087
Expose some fields of DSi_BPTWL
needed to support direct boot ( #2103 )
...
expose boot flag
2024-07-21 17:23:19 +02:00
Jesse Talavera
821f5f5f29
Allow frontends to use different headers for OpenGL declarations ( #2102 )
2024-07-21 17:02:31 +02:00
BueniaDev
9b828c2cde
Implement Rumble Pak support. ( #2101 )
2024-07-21 17:01:30 +02:00
Jaklyy
7cd50e7b56
fix some multiply timings
2024-07-19 17:56:43 -04:00
Jaklyy
13578a3cc9
Revert "improve timings for S variants of multiply instructions on arm9"
...
This reverts commit 789ef21c70
.
2024-07-19 17:52:28 -04:00
Jaklyy
36f4f2c5d3
Revert "improve timings further"
...
This reverts commit 764ee9ea1a
.
2024-07-19 17:52:26 -04:00
Jaklyy
4f6db5a173
Merge remote-tracking branch 'upstream/master' into jump-after-writeback
2024-07-17 21:42:21 -04:00
Nadia Holmquist Pedersen
5eadd67df6
EmuInstance: Use GetLocalFilePath to get the wfcsettings path
...
Fixes the file being created in the current working directory.
2024-07-17 15:44:47 +02:00
Nadia Holmquist Pedersen
4b17de7e8c
Fix annoying Qt touch event deprecations for real this time
2024-07-15 14:37:37 +02:00
Nadia Holmquist Pedersen
71f4d7b222
deviceType doesn't exist in Qt5 apparently
2024-07-15 14:04:40 +02:00
Nadia Holmquist Pedersen
6d2ad2a3f0
Ignore touch events originating from trackpads
...
Fixes multi-finger gestures causing spurious touch screen presses
Also fix some deprecations when we're at it anyway
2024-07-15 13:57:21 +02:00
Arisotura
2031f491f0
fix some Qt6 bugs (buttonClicked -> idClicked)
2024-07-15 13:00:40 +02:00
Arisotura
d92c9fcd90
do not immediately create a core when creating an EmuInstance. fixes some nasty potential bugs. watch out for bugs this may introduce though...
2024-07-15 12:57:18 +02:00
Jesse Talavera
94ba7c1594
Split networking code into its own target ( #2091 )
2024-07-14 17:03:21 +02:00
Jaklyy
764ee9ea1a
improve timings further
2024-07-13 09:35:12 -04:00
Jaklyy
789ef21c70
improve timings for S variants of multiply instructions on arm9
...
behavior seems to be a quirk of the way they made the interlock cycle mandatory
2024-07-12 23:11:46 -04:00
Jaklyy
4fcd52ed16
someday i will learn to test things before pushing them
2024-07-11 20:19:25 -04:00
Jaklyy
038ffa3a35
revert the *entire* interlock implemention
...
too slow, not accurate enough.
we need to do a *lot* more research into the specifics of how this works with all the various aspects of the cpu's timings before we can make a good implementation
2024-07-11 20:08:35 -04:00
Jaklyy
1fdac1d489
...why am i checking for dtcm?
2024-07-11 16:18:55 -04:00
CasualPokePlayer
a812a43bda
Fix various issues with firmware generation ( #2058 )
2024-07-11 15:55:06 +02:00
Jesse Talavera
841e3eb060
Use CMAKE_CURRENT_SOURCE_DIR
to set some CMake-related paths ( #2089 )
...
- This prevents dependent projects that pull in melonDS via `FetchContent` from breaking
2024-07-11 14:02:40 +02:00
OverdueWeevil2
a82b5758bc
Update EmuInstance.cpp ( #2090 )
2024-07-11 13:48:27 +02:00
Jaklyy
e2be0b4f93
actually no it was not more correct
...
undo previous commit because actually code cycles *do* matter
2024-07-07 15:42:10 -04:00
Nadia Holmquist Pedersen
b55eb431bd
ensure that we actually link the OpenGL library on macOS
2024-07-07 13:45:45 +02:00
Nadia Holmquist Pedersen
1302cbdd64
frontend: Restore linear interpolation for audio output resampling
...
Also, do it smarter this time. This seems to have gone missing with the
doublemelon merge.
2024-07-07 08:19:49 +02:00
Jaklyy
383750692e
doesn't really matter but idk it's more correct?
2024-07-06 12:38:39 -04:00
Jaklyy
0f02c0bbba
disable interlock emulation again again
...
our understanding of how it works is just too incomplete to be worth implementing yet
2024-07-06 12:14:35 -04:00
Jaklyy
ea429a1b8d
improve interlock emulation
...
add cycles to the instruction execution time rather than the timestamp directly.
2024-07-04 12:58:58 -04:00
Jaklyy
bd1665c1d3
minor timing tweaks
2024-07-04 12:41:09 -04:00
Jaklyy
a549977eb0
fix clz for realsies
2024-07-04 11:04:38 -04:00
Antonio Niño Díaz
25b5ac91bd
Fix horizontal mosaic on sprites ( #2084 )
...
The code itself is correct, but the variable being read is the Y mosaic
coordinate, not the X coordinate.
2024-07-04 00:24:29 +02:00
Jaklyy
0060958fed
Merge remote-tracking branch 'upstream/master' into jump-after-writeback
2024-07-03 15:26:58 -04:00
RSDuck
613569a2ab
append newline to nocash logging
...
makes behaviour consistent with no$gba
2024-07-02 19:09:32 +02:00
Nadia Holmquist Pedersen
7898b46435
Add Discord invite link to README.md
2024-07-02 10:06:05 +02:00
Nadia Holmquist Pedersen
4e3592f2d4
Fix loading GBA carts
...
UpdateConsole forgot to reinsert it when messing with the NDS.
2024-07-02 08:18:44 +02:00
Nadia Holmquist Pedersen
f2611680ca
EmuInstance: check consoleType from NDS rather than the instance's when
...
updating console, fixes crash on console type switch
EmuInstance::consoleType is already updated, so the check for whether we
should recreate the NDS to switch console type never succeeds.
2024-07-02 06:23:21 +02:00
Jaklyy
88e5584b5f
fix clz r15
2024-06-27 15:33:24 -04:00
Jaklyy
c5b035a973
SWP and SWPB use the same behavior as STR on the ARM9
2024-06-25 11:20:01 -04:00
Jaklyy
541e1e6388
proper timings for ldr/str
2024-06-25 09:08:11 -04:00