Commit Graph

2520 Commits

Author SHA1 Message Date
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 a0d71135a1 very minor optimization attempt 2024-09-13 07:33:18 -04:00
Nadia Holmquist Pedersen 50d32f3c96 flake: clean up dependencies a bit
* qt6.* instead of kdePackages.*
* use an extra-cmake-modules that depends on Qt6 rather than 5, and
  exclude it on macOS
2024-09-13 05:43:39 +02: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
Nadia Holmquist Pedersen 268c4f14c1 vcpkg: support building on Linux 2024-09-06 22:50:12 +02:00
Nadia Holmquist Pedersen d18524d5ac Nix: Add dev shell for building using vcpkg 2024-09-06 19:44:48 +02:00
Nadia Holmquist Pedersen 277b151ada update vcpkg and nixpkgs 2024-09-06 13:39:42 +02: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 2fff4c0b5a vcpkg: build qtbase with harfbuzz enabled, fixes windows widget drawing 2024-08-14 06:42:06 +02:00
Nadia Holmquist Pedersen deb1ba2bb2 README: Update build instructions to include enet and qtsvg
(input and battery dialogs don't render correctly without qtsvg, we
should have been installing it)
2024-08-13 08:40:10 +02:00
Nadia Holmquist Pedersen f54b6311c1 ubuntu... 2024-08-13 08:05:36 +02:00
Nadia Holmquist Pedersen cb6f60c383 ci: Linux runners should install qtsvg for proper bundling 2024-08-13 07:59:38 +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 e290c42360 flake: add wayland to library path like nixpkgs does 2024-08-11 04:54:05 +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