Jaklyy
4f3b99f5c4
fix another crash + bug w/ scanline delay
2023-12-25 15:26:48 -05:00
Jaklyy
ee3e38aed3
fix bottom scanline bugging out
...
use a method of tracking progress through rendering that's less prone to me messing it up
2023-12-25 13:10:32 -05:00
Jaklyy
f239d0cf0d
fix a crash and scanlines being incorrectly partially read
2023-12-24 20:27:24 -05:00
Jaklyy
fb5b2c299c
new feature: crashes
2023-12-24 17:39:33 -05:00
Jaklyy
c05c79321a
it works again!
2023-12-23 22:24:09 -05:00
Jaklyy
bf26b6817d
partially rendering
2023-12-23 21:26:49 -05:00
Jaklyy
78da2846e6
wip - rewrite 3 - scheduler edition
2023-12-23 00:38:39 -05:00
Jaklyy
a338ef1c8a
Merge remote-tracking branch 'upstream/master' into RDLines
2023-12-21 18:14:39 -05:00
RSDuck
084747abc5
Reset DS object directly after creation
2023-12-21 22:15:12 +01:00
RSDuck
ed650f2b46
call Reset on 3D renderer object
2023-12-21 21:43:57 +01:00
Jaklyy
6cee0a7ad7
no idea how that one slipped in
2023-12-20 23:15:07 -05:00
Jaklyy
8cc42490de
fix build but also sw renderer crashes now
2023-12-20 21:54:03 -05:00
Jaklyy
4c2e03af53
Merge branch 'master' of https://github.com/melonDS-emu/melonDS into RDLines
2023-12-20 20:55:35 -05:00
Nadia Holmquist Pedersen
fd3c349735
Check Q_OS_UNIX define instead
2023-12-20 21:38:55 +01:00
Daniel Simon
6c6318b63b
Fix generic icon when using Wayland
2023-12-20 21:38:55 +01:00
Jesse Talavera
01f8ad009e
Wrap the EnableJIT
initialization in an #ifdef
( #1922 )
2023-12-20 14:25:49 +01:00
Jaklyy
1054011c90
wip
2023-12-19 22:52:54 -05:00
Jesse Talavera
4b4239de62
Set NDS::EnableJIT
in the constructor ( #1921 )
2023-12-19 15:15:35 +01:00
Jesse Talavera
1bec2a9293
Fix an incorrect use of std::move
( #1919 )
...
- When I adapted `GBACart::ParseROM` to use `unique_ptr` instead of a plain pointer, I forgot to remove the code that copied the SRAM data
- That code was made unnecessary because of the move
2023-12-16 00:05:43 +01:00
Jesse Talavera
eedb0ba478
Add a call to std::move
that I missed ( #1917 )
2023-12-15 20:52:35 +01:00
Jesse Talavera
e1821d0023
Simplify the SRAM's representation in NDSCartArgs
( #1914 )
...
* Simplify the SRAM's representation in `NDSCartArgs`
- I overthought this one.
- I could've just checked `args && args->SRAM`, but then some other poor bastard might make this mistake.
- Don't mix `pair`, `optional`, and `unique_ptr` all at once, kids.
* Fix a `nullptr` read
2023-12-15 14:56:10 +01:00
Jesse Talavera
24c402af51
Fix detection of native NDS ARM BIOS images ( #1910 )
...
* Fix detection of native NDS ARM BIOS images
- Instead of checking for built-in BIOS images, now the altered methods check for native ones
- The CRC32 must match exactly; patched BIOS images will result in `false`
* Encapsulate `NDS::ARM9BIOS` and `ARM7BIOS`
- Also compute the checksum only when setting the BIOS
2023-12-15 14:54:41 +01:00
Jesse Talavera
c867a7f1c0
Make the initial 3D renderer configurable via NDSArgs
( #1913 )
...
* Allow 3D renderers to be created without passing `GPU` to the constructor
* Make the initial 3D renderer configurable via `NDSArgs`
* Fix a compiler error
2023-12-15 14:53:31 +01:00
Adrian Siekierka
6f47c9ed4c
Support emulating R4 Revolution/M3DS Simply cartridges. ( #1854 )
...
* Support emulating R4 Revolution/M3DS Simply cartridges.
* NDSCartR4: Write state information to savestate file.
* NDSCart: Use strncmp instead of strcmp for R4 detection.
* NDSCartR4: stylistic improvements
* NDSCartR4: rudimentary Ace3DS support
* NDSCartR4: fix boot when firmware enabled
* NDSCartR4: Fix for namespace changes
---------
Co-authored-by: RSDuck <RSDuck@users.noreply.github.com>
2023-12-15 08:19:53 +01:00
Jaklyy
2217a34d39
misc improvements
2023-12-14 23:00:12 -05:00
Jaklyy
a46316d71f
improved timings for the first 50 scanlines
2023-12-14 15:18:39 -05:00
Jesse Talavera
9bfc9c08ff
Sprinkle const
around where appropriate ( #1909 )
...
* Sprinkle `const` around where appropriate
- This will make it easier to use `NDS` objects in `const` contexts (e.g. `const` parameters or methods)
* Remove the `const` qualifier on `DSi_DSP::DSPRead16`
- MMIO reads can be non-pure, so this may not be `const` in the future
2023-12-12 11:07:22 +01:00
Jaklyy
24eecec50f
implement first draft of improved timing structure
2023-12-12 00:01:26 -05:00
Jaklyy
2cba2e783a
fix default emu settings tab ( #1912 )
2023-12-12 00:04:04 +01:00
Nadia Holmquist Pedersen
81219a9f5d
Fix some conflicts with windows.h in some configurations
...
Fixes build in the MSYS2 Clang/ClangARM64 environments.
2023-12-11 10:59:05 +01:00
Jaklyy
0d6a8e0fb9
ok this one actually works
2023-12-10 19:22:30 -05:00
Jaklyy
2bf033e0bc
optimize per pixel timing counting
2023-12-10 18:51:00 -05:00
Jaklyy
785fab024f
dont use templates
...
bigger code <<< slower code
2023-12-10 13:03:54 -05:00
Jaklyy
63a39b130e
refactor framebuffers to be more similar to hw
...
allows for emulation of niche scanline glitches
2023-12-10 12:18:46 -05:00
Jaklyy
c45d3320d0
tentative timings for "empty" polys scanlines, fix swapped polys breaking
2023-12-09 15:56:36 -05:00
Jaklyy
92ca04e479
i forgot i changed those-- oops
...
no wonder edge marking was broken
how did this even still work
2023-12-09 10:58:23 -05:00
Jaklyy
447cd50422
holds true when slopes are vertical and y > 50
2023-12-09 08:54:13 -05:00
Jaklyy
8e2c9cbff6
wip initial draft
2023-12-09 08:54:13 -05:00
RSDuck
082310d5d5
hopefully reset all GPU3D attributes properly
2023-12-08 23:42:08 +01:00
Nadia Holmquist Pedersen
6949100446
Fix GBA<->DS comm not working when using FreeBIOS
...
Thanks CasualPokePlayer for pointing this out
2023-12-08 18:34:38 +01:00
Nadia Holmquist Pedersen
5ef35a4ccf
Don't try to poke at the header on deinit if MPQueue is nullptr
2023-12-08 17:39:56 +01:00
Nadia Holmquist Pedersen
890a66c0eb
I'm sick of this interfering with debugging
2023-12-08 17:27:06 +01:00
Jesse Talavera-Greenberg
5dac65f52e
Fix some minor instances of undefined behavior
2023-12-08 17:19:00 +01:00
Jesse Talavera-Greenberg
bbecab6cb0
Correctly use the refactored JitEnableWrite
2023-12-08 17:19:00 +01:00
Jesse Talavera-Greenberg
72d4eba477
Rearrange some #include
s
2023-12-08 17:19:00 +01:00
Jesse Talavera-Greenberg
7cef13031f
Add some headers that were transitively included by the JIT
2023-12-08 17:19:00 +01:00
Jesse Talavera-Greenberg
399a6af91c
Move some constants to MemConstants.h
2023-12-08 17:19:00 +01:00
Jesse Talavera-Greenberg
53e5aa6298
Exclude JIT-related declarations more aggressively
2023-12-08 17:19:00 +01:00
Jesse Talavera-Greenberg
733769303c
Add override
to the ARM64 JIT's destructor
2023-12-08 17:19:00 +01:00
Jesse Talavera-Greenberg
582a421447
Don't set the JIT args if the JIT is off
2023-12-08 17:19:00 +01:00