Jaklyy
e33d19cf14
fix a few misc things?
2024-10-18 21:08:56 -04:00
Jaklyy
9ed4c66592
add support for 1 reg ldm/stm a9 timings and fix a bug
2024-10-18 17:56:56 -04:00
Jaklyy
8ff0946b8a
mrc causes interlocks
2024-10-18 17:10:00 -04:00
Jaklyy
0e6d3fd834
fix bad logical leaps
2024-10-18 16:32:02 -04:00
Jaklyy
cc031cd4b8
Merge branch 'less-ambitious-timing-rework' into chemical-x
2024-10-18 15:01:14 -04:00
Jaklyy
e2a810147f
re-add interlocks
...
breaks gcc debug builds for ??? reason
2024-10-18 15:00:55 -04:00
Jaklyy
68e8ff41eb
this barely makes a difference in practice but it's less inefficient
2024-10-17 10:08:11 -04:00
Jaklyy
ffb24e7088
wrong bitshift
2024-10-16 22:42:24 -04:00
Jaklyy
26a6e887ad
aarch64 neon impl take one
...
fingers crossed it compiles!
2024-10-16 22:26:56 -04:00
Jaklyy
d7212643f1
move arm9 code fetches into the cycle add routine
...
setting up for re-adding interlocks
2024-10-16 12:21:48 -04:00
Jaklyy
9f2b097e96
Merge branch 'less-ambitious-timing-rework' into chemical-x
2024-10-15 22:36:29 -04:00
Jaklyy
52ddaa73cf
fix resets
2024-10-15 22:36:21 -04:00
Jaklyy
21763ceed3
reduce memtimings lut granularity
2024-10-15 21:20:10 -04:00
Jaklyy
c605c93d8e
still dumb
2024-10-15 21:08:46 -04:00
Jaklyy
3fcdc45029
Merge branch 'less-ambitious-timing-rework' into chemical-x
2024-10-15 21:08:13 -04:00
Jaklyy
c00b188c05
im dumb
2024-10-15 21:08:07 -04:00
Jaklyy
460fd45aed
remove some old code
2024-10-15 20:27:09 -04:00
Jaklyy
bb2727b786
Merge branch 'less-ambitious-timing-rework' into chemical-x
2024-10-15 20:25:16 -04:00
Jaklyy
05c153e9ab
Merge branch 'interpreter-fixes' into less-ambitious-timing-rework
2024-10-15 20:23:14 -04:00
Jaklyy
5f003eb967
fix builds with jit disabled
2024-10-15 20:23:03 -04:00
Jaklyy
d476593eec
add notes
2024-10-15 12:40:35 -04:00
Jaklyy
d8d2fcd94a
more optimizations
2024-10-14 23:43:11 -04:00
Jaklyy
263dd20ec3
nvmnvmnvm
2024-10-14 22:48:25 -04:00
Jaklyy
ca7d938bb1
update for new write buffer implementation
2024-10-14 20:18:23 -04:00
Jaklyy
9f3ebeafa7
Merge branch 'less-ambitious-timing-rework' into chemical-x
2024-10-14 20:16:58 -04:00
Jaklyy
026719acef
improve timing model
2024-10-14 20:15:03 -04:00
Jaklyy
f74c21d110
Merge branch 'less-ambitious-timing-rework' into chemical-x
2024-10-13 20:07:04 -04:00
Jaklyy
801f43dfc5
reimplement codemem
...
i dont feel like i actually had a good reason for disabling this...
2024-10-13 20:06:39 -04:00
Jaklyy
1afefdce1d
use sse for set lookups
2024-10-13 08:39:07 -04:00
Jaklyy
206fc94d68
Merge branch 'interpreter-fixes' into less-ambitious-timing-rework
2024-10-12 14:35:28 -04:00
Jaklyy
e0e78a2bc8
make empty r-list instructions a bit nicer
...
pass bools as a single u8 instead and combine thumb and restore cpsr flags since they're mutually exclusive
2024-10-12 11:10:06 -04:00
Jaklyy
a8722d8c56
tcms shouldn't be cacheable
2024-10-11 02:47:41 -04:00
Jaklyy
6b8671d80a
Merge branch 'less-ambitious-timing-rework' into chemical-x
2024-10-11 02:05:44 -04:00
Jaklyy
9f6cbd8e84
implement drain write buffer cache command
2024-10-10 23:24:20 -04:00
Jaklyy
3d246ddf73
tcms just aren't bufferable
2024-10-10 22:54:33 -04:00
Jaklyy
34bba2589e
tcm (and cache?) reads dont trigger write buffer drains
...
additionally drains are triggered even in no cache + no buffer regions despite documentation not specifying such
2024-10-10 20:52:47 -04:00
Jaklyy
5c120f45ee
Merge branch 'interpreter-fixes' into less-ambitious-timing-rework
2024-10-10 20:34:00 -04:00
Jaklyy
787d0c9afc
mrc r15 updates flags
...
also my prior implementation made mrc w/ r15 raise an exception by accident
oops!
2024-10-10 11:09:07 -04:00
Jaklyy
93dce82b07
implement cmp with "rd == 15" on arm9
...
cmp and friends with bits 12-15 set to 1 borrow characteristics from their legacy 26 bit p variants
thumb version does nothing of note
2024-10-10 10:48:17 -04:00
Jaklyy
3870216fd0
correction:
2024-10-10 03:53:51 -04:00
Jaklyy
53b38c363f
ok no it didn't lie to me
2024-10-10 03:32:53 -04:00
Jaklyy
e25dca0030
writing to the write buffer has a 1 cycle delay before it can be done again
2024-10-10 03:14:01 -04:00
Jaklyy
633572e5cc
Merge branch 'less-ambitious-timing-rework' into chemical-x
2024-10-10 02:20:17 -04:00
Jaklyy
2c3ef9f903
writing to the write buffer seems to require bus cycle alignment
2024-10-10 02:20:02 -04:00
Jaklyy
60234a96b8
im dumb
2024-10-09 18:10:02 -04:00
Jaklyy
0638c41220
Merge branch 'less-ambitious-timing-rework' into chemical-x
2024-10-09 18:06:23 -04:00
Jaklyy
746f6edb0a
should addr writes to the fifo take 1 cycle? probably?
2024-10-09 18:06:17 -04:00
Jaklyy
f2bc0fae4d
cache imp
2024-10-09 18:05:26 -04:00
Jaklyy
225bd50e13
Merge branch 'less-ambitious-timing-rework' into chemical-x
2024-10-09 17:56:10 -04:00
Jaklyy
35c382acab
jit
2024-10-09 17:51:00 -04:00
Jaklyy
9cf065e54f
idk
2024-10-09 17:47:08 -04:00
Jaklyy
6e30cf3bfb
functional write buffer prototype
2024-10-09 17:46:50 -04:00
Nadia Holmquist Pedersen
216b8e045d
fix audio interpolation setting range
2024-10-07 11:28:58 +02:00
RSDuck
30441fed24
do not restore fullscreen state from saved geometry
2024-10-06 19:00:54 +02:00
RSDuck
aa443c8846
fix #2083 and minor cleanup
2024-10-06 17:33:03 +02:00
RSDuck
f13c70d028
fix blow noise input
...
(microphone input takes signed values)
2024-10-01 19:52:10 +02:00
Jaklyy
286de74666
Merge branch 'less-ambitious-timing-rework' into chemical-x
2024-09-29 22:43:38 -04:00
Jaklyy
c62f0f1244
Merge branch 'interpreter-fixes' into less-ambitious-timing-rework
2024-09-29 22:42:40 -04:00
Jaklyy
19e0b18d15
Merge remote-tracking branch 'upstream/master' into interpreter-fixes
2024-09-29 22:41:52 -04:00
Jakly
e9446fa9dc
implement 3 configurable and toggleable framerate targets ( #2159 )
...
This pr allows for configuring the framerate target and adds support for two other framerate targets, a "fastforward" and "slowmo" target which can be enabled via either a toggle or holding a button.
this allows for supporting a more accurate framerate target and allows for users to slow down the speed of gameplay if they so desire
2024-09-29 09:30:13 +02:00
Jaklyy
a11208ec6d
oops
2024-09-24 21:02:17 -04:00
Jaklyy
3065141ed7
probably not faster
2024-09-24 17:04:52 -04:00
RSDuck
2eb6d44c2c
prevent use after free through focusOutEvent when window is closed
2024-09-24 20:08:07 +02:00
Jaklyy
e1d4fbef75
i can't reproduce this anymore
2024-09-24 09:47:32 -04:00
Jaklyy
7fb18b1155
clean up code
2024-09-23 20:03:58 -04:00
Jaklyy
3b73f21bb7
str r15 is incremented by +2/+4 oop
2024-09-23 16:12:23 -04:00
Jaklyy
8af790beee
ldm/str with empty rlist
2024-09-23 15:00:35 -04:00
Jaklyy
7b0d71dbbe
Revert T bit changing support for arm7
...
i cannot comprehend what is happening currently
2024-09-22 19:57:33 -04:00
Jaklyy
8d451dff48
misaligned pc..........
2024-09-20 23:47:40 -04:00
Jaklyy
157e9c5b04
reimplement changing t bit with arm7
...
kinda slow though?
2024-09-20 13:37:58 -04:00
Jaklyy
7afa805afc
slightly better code
2024-09-20 05:37:51 -04:00
Jaklyy
c133814713
some day i will remember to test before pushing
2024-09-20 04:39:16 -04:00
Jaklyy
45f87a1c8d
prevent t bit changes without pipeline flush on arm7
...
idk what's happening fully and its gonna be slow to emulate most likely
we'll figure this out later
2024-09-19 21:02:54 -04:00
Jaklyy
6ebabde392
implement changing thumb bit. and bkpt ig
...
probably wrong
2024-09-19 04:37:01 -04:00
CasualPokePlayer
2179ca2a41
Set the correct save type for Puzzler World USA ( #2156 )
...
Fixes #1804
2024-09-18 20:58:55 +02:00
Jaklyy
89e8549a55
implement comparison instrs w/ rd == 15
2024-09-17 21:01:02 -04:00
Jaklyy
e5654ec541
r15 mrc mrs
2024-09-16 17:50:09 -04:00
Jaklyy
e2f3dd1e6f
clarify
2024-09-16 14:34:03 -04:00
Jaklyy
ac8c942565
sat add/sub also fail to jump
2024-09-16 13:17:38 -04:00
Jaklyy
3b9a9e4eb3
multiply instructions can't write to r15
2024-09-16 10:23:15 -04:00
RSDuck
7ac2eb2d71
attempt at fixing Windows build
2024-09-15 07:38:28 +02:00
RSDuck
a3d696121e
rework gdb packet parsing
...
it should be a bit more robust now
2024-09-15 07:30:53 +02:00
Jaklyy
f2a02abd16
Merge branch 'interpreter-fixes' into less-ambitious-timing-rework
2024-09-13 13:51:12 -04:00
Jaklyy
a0d71135a1
very minor optimization attempt
2024-09-13 07:33:18 -04:00
Jaklyy
c5ac682f04
improve data abort handling further
2024-09-12 18:25:54 -04:00
RSDuck
74f479ce6d
gdb stub config setup fixes
2024-09-11 14:41:22 +02:00
Jakly
f719438a6e
Improve calculation of light colors ( #1967 )
...
* maintain precision until all lights are calculated
fixes lugia on the soul silver title screen
* small optimization
* small note
* small cleanup/notes
shouldn't need to check that every time, since the variable shouldn't be able to overflow
* hw doesn't cap difflevel at 255
Should it cap at all?
Can vtx colors overflow...?
* diffuse level appears to be shifted right by 9
fixes some minor inaccuracies
* improve specular lighting a little
* small improvement to diffuse lighting
fixes a few off by ones
- finding by azusa
* small tweaks
* handle overflows of diffuse lighting properly
-credits to azusa once more
* attempt at improving specular lighting calcs
still far from correct, but its a start.
fixes: https://github.com/melonDS-emu/melonDS/issues/1545
* meh
* improve specular lighting further
* add notes
* theory: add half vec instead of subt 1
* implement azusa's specular lighting algorithm
* fix minor edge case with spec lighting
* give proper credit in comments
* fix some bugs/misc tweaks
* more quirky overflow/underflow handling
* fix a spec lighting edgecase
remove some redundant parentheses
* fix an edge case with light vector calcs
* spec recip uses a different calc for light dir?
also remove a check that shouldn't be mathematically possible to trigger
* nvm that thing i thought couldn't trigger was required
also move reciprocal calc into the light vector calc function since i might as well now ig
* replace a bunch of stuff with much *much* simpler algorithms
* misc cleanup
PARENTHESES WOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
* leave a note abt shininess table's default value being incorrect
2024-09-10 16:13:51 +02:00
Jaklyy
cacaf0ec7c
make it work
2024-09-08 12:05:10 -04:00
Jaklyy
53cc0378b1
Merge branch 'pr/1955' into chemical-x
2024-09-08 11:41:11 -04:00
Jaklyy
bd1d1c5c5e
fix thumb "no fetches"
2024-09-08 11:10:31 -04:00
Jaklyy
41db7b9df6
fix main ram adding cycles twice if code and memory region are the same
2024-09-07 13:45:33 -04:00
Nadia Holmquist Pedersen
268c4f14c1
vcpkg: support building on Linux
2024-09-06 22:50:12 +02:00
Jaklyy
ceb5a9febe
draw (most of) the rest of the owl
2024-09-06 03:59:59 -04:00
Jaklyy
299713e412
basic arm9 set up
2024-09-05 09:13:46 -04:00
Jaklyy
7cfc4b5849
ARM7: vram is 32 bit?
2024-09-02 07:35:49 -04:00
Jaklyy
2d081a6e02
improve arm7 timings
2024-09-01 18:03:32 -04:00
Jaklyy
f0bd2b9051
Merge remote-tracking branch 'upstream/master' into interpreter-fixes
2024-08-30 19:33:16 -04:00
Jaklyy
0003821738
apparently i never tested this
2024-08-28 22:04:22 -04:00
Jaklyy
685c4828a2
try not forgetting about stores lol
2024-08-28 13:45:46 -04:00
Jaklyy
be290da23c
de-duplicate swp(b)
2024-08-27 17:23:18 -04:00
Jaklyy
a9aad74539
implement user mode load/stores
2024-08-26 20:43:27 -04:00
Jaklyy
f692e7391a
the docs lied to me (again)
2024-08-26 19:48:42 -04:00
Jaklyy
40e8e8e7bd
rework single load/stores to use a shared instruction
2024-08-24 11:46:23 -04:00
Alex
4f6498c99c
Fix "Ejected GBA cart" not adding a newline ( #2140 )
2024-08-21 13:39:34 +02:00
Jesse Talavera
824eb370e4
Fix the build when the JIT is disabled ( #2139 )
2024-08-19 15:21:34 +02:00
Arisotura
0e6235a7c4
LAN: remember player name and max players setting
2024-08-15 13:34:27 +02:00
Arisotura
5b986d3111
wifi: add hack to facilitate multiplayer connections (extend post-beacon interval when connection is being initiated)
2024-08-14 16:47:08 +02:00
Nadia Holmquist Pedersen
c6cab9ed41
mac-libs.rb: Make bundling a bit smarter
...
* Resolve symlinks to avoid including the same thing twice (like
version-numered dylib symlinks)
* Look in all Qt prefix paths for plugins - the package may not
necessarily have the same path
* reduce install_name_tool invocations to make it a bit faster
* change dylib IDs to remove original source path
2024-08-13 07:53:09 +02:00
Nadia Holmquist Pedersen
5598065985
Netplay.cpp should not include main.h, also fix a format warning
2024-08-11 03:14:14 +02:00
Arisotura
8d31875902
Backport LAN ( #2131 )
...
backport the old LAN feature to the modern melonDS codebase.
2024-08-10 23:20:50 +02:00
Nadia Holmquist Pedersen
ec71b15505
Add a Nix flake ( #2097 )
...
Adds a Nix flake, allowing easy building and running of melonDS using the Nix package manager, as well as potentially very stable and reproducible CI in the future.
2024-08-08 05:36:06 +02:00
Nadia Holmquist Pedersen
53c58bd777
fix potential issue with glib shim min/max defines
2024-08-07 17:49:29 +02:00
Nadia Holmquist Pedersen
4359bccfcb
fix the slirp shit some more
2024-08-07 17:45:56 +02:00
Nadia Holmquist Pedersen
b47563e888
Apply FixInterfaceIncludes to the slirp package again to work around
...
package inconsistencies
2024-08-07 17:28:25 +02:00
Nadia Holmquist Pedersen
a174901412
fix building with system libslirp
2024-08-07 17:24:07 +02:00
Nadia Holmquist Pedersen
8423dae6ff
Add "Open melonDS directory" menu option
2024-08-07 15:53:58 +02:00
Jaklyy
332a39dbaf
fix JIT being borked
2024-08-05 16:14:17 -04:00
Jaklyy
a85b2bfb56
tweak when irqs are triggered and fix prefetch aborts
...
also ig add some comments next to the svc funcs so that someone searching for "swi" can find them easier
2024-08-05 14:57:17 -04:00
Jaklyy
eedd2806f9
Reapply "Improve accuracy of prefetch aborts"
...
This reverts commit 0dc619d615
.
2024-08-05 12:37:42 -04:00
Jaklyy
0dc619d615
Revert "Improve accuracy of prefetch aborts"
...
This reverts commit 587958e678
.
2024-08-05 11:41:25 -04:00
Jaklyy
587958e678
Improve accuracy of prefetch aborts
...
comes with a small-ish performance hit
2024-08-04 23:31:20 -04:00
Jaklyy
fe69cfac7d
Merge remote-tracking branch 'upstream/master' into interpreter-fixes
2024-08-04 21:28:32 -04:00
RSDuck
dd386d12a9
use templates to only execute GDB stub related code if enabled
2024-08-05 03:23:49 +02:00
Jaklyy
346ac1380f
forgot to remove a thingy when removing timing reworks
2024-08-04 15:21:23 -04:00
Jaklyy
ab2a8f128f
revert timing tweaks, finish thumb interwork code
2024-08-04 14:54:36 -04:00
Jaklyy
4b703d24b5
improve msr timings for arm9
2024-08-03 16:22:14 -04:00
Jaklyy
2e421e29e3
cache should be disabled when pu is disabled
2024-08-03 16:21:17 -04:00
Jaklyy
3c936d84b3
improve mrs, mrc timings
2024-08-03 16:20:50 -04:00
pants64DS
76c2723f5c
Fix console output on Windows ( #2122 )
...
Co-authored-by: pants64DS <pants64DS@users.noreply.github.com>
2024-08-02 02:21:37 +02:00
CasualPokePlayer
757a608b6e
Fix a few compiler warnings ( #2063 )
2024-08-01 23:26:46 +02:00
Jakly
54e87c915f
fix a couple polygons ( #1920 )
...
hw prioritizes the earlier vertex instead of leftmost
2024-08-01 22:55:00 +02:00
Jakly
12be06beb6
fix gdb stub causing the emulator to hang on undefined instructions ( #2054 )
...
* dont hang on undefined instruction
* Add spaces
---------
Co-authored-by: Kemal Afzal <RSDuck@users.noreply.github.com>
2024-08-01 22:48:52 +02:00
Jakly
161bd9d3d2
Default zero dot display register to the 24 bit integer limit ( #1968 )
...
* 0 dot disp defaults to the 24 bit integer limit
* useless correction
it goes through the reset function to set the variable on boot anyway but why not have the initialized state be correct too
2024-08-01 22:46:05 +02:00
Jakly
d0a7239f15
fix some bugs with compressed texture look up ( #2051 )
2024-08-01 22:44:04 +02:00
Jakly
29c67f2140
implement 16 bit r/w IF and DISPCAPCNT ( #2061 )
2024-08-01 22:41:21 +02:00
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
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
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
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
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
Jaklyy
dbe00e72dd
improve stm timings
...
need to verify if they apply to all store instructions
2024-06-24 22:50:04 -04:00
Jaklyy
109bbed3d0
improve ldm timings
...
I believe this also applies to other loads as well, but currently untested.
2024-06-24 20:22:38 -04:00
Jaklyy
3583d8222f
disable interlock emulation, needs more research
2024-06-24 16:17:04 -04:00
Jaklyy
f1b71fe5a9
implement configurable vram bus width
...
not implemented for direct boot
2024-06-24 16:15:04 -04:00
Nadia Holmquist Pedersen
db20771ef3
slirp: Add -fvisibility=hidden to glib stub
...
On Linux, our stubbed glib functions were conflicting with the ones from
real glib, which gets used by Qt when we're running on a GTK-based
desktop. Avoid a crash by not exposing them.
2024-06-24 05:25:00 +02:00
Jaklyy
e6ba4075b9
correct interlocked reg for umlal
2024-06-18 11:12:05 -04:00
Nadia Holmquist Pedersen
cbb0f4b872
Tell the compiler that we want wrapping signed arithmetic
...
The core relies on this and without -fwrapv there will be rendering
issues on some targets. Thanks CasualPokePlayer for noticing this.
2024-06-18 15:51:08 +02:00
Arisotura
e234385c20
OpenGL: add support for changing BG0HOFS midframe. fixes #2072
2024-06-18 13:11:42 +02:00
Jaklyy
c5258d6377
verify interlocks for alu and load/store
...
remove some checks for interlock that im pretty sure can't trigger
2024-06-17 18:07:53 -04:00
Arisotura
626d2379bc
* fix default for audio volume
...
* add default bools for battery settings
2024-06-17 14:51:32 +02:00
Jaklyy
a9e2c7e047
implement two regs i missed
2024-06-16 23:24:20 -04:00
Jaklyy
f00f1f6ca4
im smart
2024-06-16 20:50:42 -04:00
Jaklyy
5b37ca70d1
implement correct/guess interlocks for remaining instructions
2024-06-16 20:47:01 -04:00
Jaklyy
debaaa0425
fix performance regression for disabling interlock emulation path
2024-06-15 21:16:12 -04:00
Jaklyy
449557624d
don't do interlocks for the arm7
2024-06-15 18:37:31 -04:00
Jaklyy
a973c0bf5b
initial implementation of interlock cycles
2024-06-15 16:07:36 -04:00
Nadia Holmquist Pedersen
eb2bd73c7d
ensure teakra is always static linked even in dynamically linked builds
2024-06-15 21:31:23 +02:00
Arisotura
ae44ba2475
blarg
2024-06-15 21:01:27 +02:00
Arisotura
649462ff5c
fix more bugs and crap
2024-06-15 20:57:26 +02:00
Arisotura
890dc4f228
fix other bugs with these regexes
2024-06-15 19:23:18 +02:00