42548 Commits

Author SHA1 Message Date
Pokechu22
33407f8a70 Remove hardcoded CRCs; validate incoming CRC7 2024-09-07 16:28:37 -07:00
Pokechu22
d0d8661f9b Add Common::HashCrc16 and Common::HashCrc7 2024-09-07 16:28:37 -07:00
Pokechu22
4f6cd4f535 Restructure code; start implementing read/write commands 2024-09-07 16:28:37 -07:00
Pokechu22
d98be4bdc9 Use correct CRC16s
Libogc has a bit of a footgun, where __io_gcsda.isInserted() will initialize the card, but not the CRC tables; __io_gcsda.startup() needs to be called first.
2024-09-07 16:28:37 -07:00
Pokechu22
c80c323a26 Implement STOP_TRANSMISSION and APP_CMD SD_SEND_OP_COND
Both of these are used by Pok›émon Channel.  However, Pokémon Channel actually DOES care about CRCs, so... yay.
2024-09-07 16:28:37 -07:00
Pokechu22
251c330c6d Implement last few commands, enough to get it detected by libogc (though not enough to be useful) 2024-09-07 16:28:37 -07:00
Pokechu22
9d145decf8 Hardcode data for CMD9 and CMD10
The CRC part still unnerves me
2024-09-07 16:28:37 -07:00
Pokechu22
b29c8a1c2a CMD9 and CMD10 - early version
(actually like 15 minutes ago)
2024-09-07 16:28:37 -07:00
Pokechu22
9d0007f979 Implement CMD8 2024-09-07 16:28:37 -07:00
Pokechu22
45205c3a56 Reply -- make it to the next part at least 2024-09-07 16:28:37 -07:00
Pokechu22
38e56c1e36 Basic command detection 2024-09-07 16:28:37 -07:00
Pokechu22
fcb86ce1c1 Adjust SD getid thing 2024-09-07 16:28:37 -07:00
Pokechu22
333636d404 HACK to select SD - this will need to be tidied 2024-09-07 16:28:37 -07:00
Pokechu22
91536a09c5 EXI_DeviceDummy: Log ImmReadWrite 2024-09-07 16:28:37 -07:00
Pokechu22
4885706903 Advance reading
This works, for getting it to detect an SD card, though it then needs to init it and that fails.  But it's a start, even if it'll need to be thrown out when things get further along.
2024-09-07 16:28:37 -07:00
Pokechu22
d8bd634729 Add SetCS - amend dummy 2024-09-07 16:28:37 -07:00
Pokechu22
5bdbb85231 HLE kprintf
Not for this PR, but useful for testing
2024-09-07 16:28:37 -07:00
Pokechu22
d49d1197f6 Dummy EXI_DeviceSD 2024-09-07 16:28:37 -07:00
Pokechu22
0f33eda90f Create EXI_DeviceSD 2024-09-07 16:28:36 -07:00
JMC47
2c15d7af7f
Merge pull request #12966 from Dentomologist/cheatsmanager_create_code_widgets_only_once
CheatsManager: Create Action Replay and Gecko code widgets only once
2024-09-07 15:13:18 -04:00
JosJuice
f9f832fa88
Merge pull request #13051 from mitaclaw/dead-config-code-2
SI_Device: Remove Dead Config Code
2024-09-07 13:40:34 +02:00
Tilka
2417545b63
Merge pull request #13052 from Tilka/ax
DSPHLE/AX: fix low-pass/biquad clipping
2024-09-07 11:36:06 +01:00
JMC47
efc395f7f4
Merge pull request #12977 from mitaclaw/branch-watch-tool-fixes-4
Branch Watch Tool: Refactors, Fixes, and Features
2024-09-04 19:36:24 -04:00
Tillmann Karras
eb54721475 DSPHLE/AX: fix low-pass/biquad clipping
The low-pass and biquad filters run in set40 mode where accessing ac#.m
returns the value of ac#.hm clamped to 16 bits.

This fixes the crackling in "Need for Speed: Nitro" (issue 13610).

Also make the lower bound match hardware (-0x8000 instead of -0x7FFF).
2024-09-04 22:33:31 +01:00
OatmealDome
20f2320fcf Merge branch 'release-prep-2409' 2024-09-04 12:26:15 -04:00
mitaclaw
e67e579b38 SI_Device: Remove Dead Config Code 2024-09-04 08:31:00 -07:00
OatmealDome
3c4d4fcd09 ScmRevGen: Bump major version to 2409 2409 2024-09-04 00:43:45 -04:00
Admiral H. Curtiss
95fac2a4e7
Merge pull request #13047 from mitaclaw/cached-interpreter-memcpy-ub
CachedInterpreterEmitter: Fix `std::memcpy` UB
2024-09-02 19:47:11 +02:00
mitaclaw
5a95c5dd14 CachedInterpreterEmitter: Fix std::memcpy UB
I wasn't aware that even with a size of zero, it's still not safe to pass a nullptr to `std::memcpy`. When `CachedInterpreterEmitter::PoisonCallback` is written, UB is happening.
2024-09-01 19:36:21 -07:00
JosJuice
7d08377341 Translation resources sync with Transifex 2024-09-01 08:42:51 +02:00
mitaclaw
2a20e6e3df Branch Watch Tool: Toolbar Visiblity Menu
Adds the ability to hide unneeded features of the controls toolbar.
2024-08-31 15:37:34 -07:00
mitaclaw
8f76a32be4 Branch Watch Tool: New Conditional Branch Inspection Tools
Invert conditions, invert decrement checks, and make conditional branches unconditional. USnapshotMetadata in prior versions of Dolphin is forward-compatible with these changes (tested on x86_64).
2024-08-31 15:37:34 -07:00
mitaclaw
8bdfdc88b2 Branch Watch Tool: Ignore Apploader Branch Hits Concurrency Fix
Also removed worthless `Start` and `Pause` helpers from `Core::BranchWatch`.
2024-08-31 15:37:34 -07:00
mitaclaw
e4500b5798 BranchWatchDialog: Improve Branch Was/Not Overwritten Buttons
Giving a warning if these are used when not usable is bad UX.
2024-08-31 15:37:34 -07:00
mitaclaw
f5e7b45773 BranchWatchDialog: Listen For clicked Signal Rather Than pressed
The latter signal was used by mistake, see PR #8263.
2024-08-31 15:37:24 -07:00
mitaclaw
0c889c715d BranchWatchDialog: Const Correctness
m_index_list_temp should not be imagined as a member of `BranchWatchDialog`, so it is now mutable to allow for more const member functions.
2024-08-31 15:31:26 -07:00
mitaclaw
7ce703a4a8 BranchWatchDialog: Refactor Context Menus
Instead of one wildly complex context menu constructed lazily, now three manageable context menus are constructed proactively.
2024-08-31 15:11:25 -07:00
mitaclaw
107c08b77f BranchWatchDialog: Clean Up Object Parenting and Prefer Auto
Objects which get parented automatically by later processing now pass a nullptr to the constructor to make the intent clearer. Also fixed "true" and "false" not being translatable strings.
2024-08-31 15:11:25 -07:00
mitaclaw
f9f0806022 BranchWatchDialog: Disconnect Slots When Hidden 2024-08-31 15:11:24 -07:00
Tilka
a293abbfd0
Merge pull request #13044 from JosJuice/subfic-carry
Interpreter: Fix subfic carry calculation
2024-08-31 17:24:17 +01:00
JosJuice
ff75cc80aa Interpreter: Fix subfic carry calculation
This was accidentally using the instruction's output instead of the
instruction's input when the input and output registers were the same.
2024-08-31 17:24:55 +02:00
Admiral H. Curtiss
e1b1e4b4cf
Merge pull request #13031 from parona-source/libfmt-11
Add support for libfmt-11
2024-08-31 15:34:48 +02:00
Tilka
157be45d6b
Merge pull request #13042 from homeisfar/vk_improve_logger
vulkan: Add line number to vulkan error logger
2024-08-31 13:05:28 +01:00
Tilka
d0b10b84c0
Merge pull request #13043 from Tilka/my_first_songs
GameSettings: force EFB-to-RAM for My First Songs
2024-08-31 13:04:24 +01:00
Tillmann Karras
4b60ab9ce3 GameSettings: force EFB-to-RAM for My First Songs 2024-08-31 00:11:24 +01:00
Tilka
38b189e13d
Merge pull request #13039 from Dentomologist/mainwindow_fix_hidden_confirm_on_stop_dialog
MainWindow: Prevent Confirm On Stop dialog from being hidden by the Render window
2024-08-31 00:08:45 +01:00
Tilka
8b7268ddef
Merge pull request #13038 from Ferdi265/fix-rvz-clang-ub
RVZ: Fix undefined behaviour when copying 0 bytes to a null pointer
2024-08-31 00:06:38 +01:00
Ali Homafar
02e9a8feaf vulkan: Add line number to vulkan error logger
This is a minor improvement to add line numbers to the LOG_VULKAN_ERROR
define. Basically error logs for Vulkan will now look like:

```
// This
25:03:347 VideoBackends/Vulkan/VulkanLoader.cpp:247 E[Video]: (WaitForCommandBufferCompletion:278) vkWaitForFences failed:  (2: VK_TIMEOUT)

// Instead of
15:45:154 VideoBackends/Vulkan/VulkanLoader.cpp:247 E[Video]: (WaitForCommandBufferCompletion) vkWaitForFences failed:  (2: VK_TIMEOUT)
```
2024-08-28 17:42:54 -04:00
Tilka
39e266c5bf
Merge pull request #13036 from PatrickFerry/gameini_enable_pal60
Gameini: Enable PAL60 for Some PAL Games
2024-08-28 16:56:25 +01:00
Dentomologist
9bdf862460 MainWindow: Prevent Confirm On Stop dialog from being hidden
Set the Render Window as the parent of the Confirm On Stop confirmation
dialog when Keep Window On Top is enabled, ensuring it will always be
visible.

Previously, when Confirm On Stop and Keep Window On Top were both
enabled the Confirm On Stop dialog could be hidden by the render window
in the following situations:
* Clicking Stop in the Main Window
* Clicking the Main Window's close button
* Pressing the Stop hotkey while in FullScreen mode

This was particularly troublesome because the confirm dialog is modal,
preventing the user from moving the render window out of the way if it
was obscuring the dialog.

Fixes https://bugs.dolphin-emu.org/issues/13247.
2024-08-27 15:28:05 -07:00