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
Arisotura
d449888405
fix up the regexes in Config.cpp
2024-06-15 19:10:28 +02:00
Arisotura
ccc5c955e9
fix one potential crash bug
2024-06-15 17:42:26 +02:00
Arisotura
8fc403cdad
update copyright headers
2024-06-15 17:01:19 +02:00
Arisotura
25a7b1ca1d
merge doublemelon ( #2067 )
...
non-exhaustive (but exhausting) list of changes:
* base laid for multiple window support, but will likely require more work to work correctly
* encapsulation of frontend state for proper multi-instance support
* (JIT still needs a fix for the NDS::Current workaround but we can get there later)
* new, more flexible configuration system
2024-06-15 13:52:47 +02:00
Jaklyy
aa1217af0a
track interlock cycles for the ALU
2024-06-14 11:47:42 -04:00
Jaklyy
5a174a2ce3
track interlock cycles for load instructions
2024-06-14 00:51:55 -04:00
Jaklyy
42218106b0
verify writable msr bits
2024-06-11 10:30:30 -04:00
Jaklyy
048b0b8878
swp/swpb jumps work on the arm 7?
2024-06-10 18:03:56 -04:00
Jaklyy
3ddccde5b9
verified
...
also remove no longer needed variable
2024-06-10 13:23:18 -04:00
Jaklyy
ca04710deb
ldrd is just ldm
2024-06-09 22:31:10 -04:00
Jaklyy
ae0824fdd3
it all makes sense now...
2024-06-09 19:10:43 -04:00
Jaklyy
b90d5c2320
what the actual F*** is going on
2024-06-09 12:18:31 -04:00
Jaklyy
be60c68aeb
more weirdness
2024-06-09 07:25:42 -04:00
Jaklyy
b846c6f100
remove out of date comments
2024-06-08 22:17:07 -04:00
Jaklyy
849d4e51ac
imma be real, i have no idea what is going on here
2024-06-08 22:12:44 -04:00
Jaklyy
659763f903
clarification
2024-06-08 16:15:02 -04:00
CasualPokePlayer
8e9b88d01d
Actually generate DownscaleFramebuffer ( #2059 )
2024-06-08 20:48:42 +02:00
Jaklyy
3699768ac9
most cpsr bits can't actually be updated (or at least can't be read?)
2024-06-08 14:01:54 -04:00
Jaklyy
5f97dfc1ab
fix bits fixed to 0 for pu region sizing being set
2024-06-08 10:53:22 -04:00
Jaklyy
8191f92bb6
mcr is also affected
2024-06-08 10:42:19 -04:00
Jaklyy
0c887202e7
fix some more instructions?
2024-06-08 10:40:23 -04:00
Jaklyy
73507621f5
idk why it took me two tries to get these instructions to work properly
2024-06-07 23:50:31 -04:00
Jaklyy
2b0ed459e1
fully implement r15 stores being +12 of addr
2024-06-07 23:46:49 -04:00
Jaklyy
bd3611b51d
unaligned registers with strd/ldrd raise an exception
2024-06-07 20:43:02 -04:00
Jaklyy
8bc7e4591c
thumb ldmia/pop data aborts
2024-06-06 19:05:28 -04:00
Jaklyy
d6cd189455
rework data abort handling for ldm/stm; implement thumb stmia+push
2024-06-06 18:58:43 -04:00
Jaklyy
13ae96b4e3
simple thumb instructions (untested but probably right)
2024-06-05 14:32:12 -04:00
Jaklyy
7c3108e20f
handle swp instruction aborts
2024-06-05 14:31:44 -04:00
Jaklyy
1871c48849
fix double data aborts with strd
2024-06-05 10:28:51 -04:00
Jaklyy
317a8c61e5
data abort handling for (almost) all (arm) instructions
...
full list: strb, ldrb, strh, ldrd, strd, ldrh, ldrsb, ldrsh
2024-06-05 00:14:14 -04:00