42559 Commits

Author SHA1 Message Date
Pokechu22
76d4fc4541 NOTE: EXI_DeviceMemoryCard could still use some cleanup 2024-09-07 16:28:37 -07:00
Pokechu22
ba343bdbdc Actually functional block read
This is enough for Pokémon Channel to save.  Loading should also work, but I'm unable to test since memory cards are still broken...
2024-09-07 16:28:37 -07:00
Pokechu22
8db60f54e2 WIP fix block reads
Enough for libogc, but not enough for Channel...
2024-09-07 16:28:37 -07:00
Pokechu22
b2c15e0fdb Implement ReadOCR
Libogc needs this now; I'm not sure what I changed from before that made it necessary.
2024-09-07 16:28:37 -07:00
Pokechu22
d958605a1e Undo some test stuff 2024-09-07 16:28:37 -07:00
Pokechu22
58347cc795 More work on multi-block reads; not fully functional 2024-09-07 16:28:37 -07:00
Pokechu22
1dd9ac2727 Fix multi-block reads 2024-09-07 16:28:37 -07:00
Pokechu22
6e5e8694c4 Implement SendStatus 2024-09-07 16:28:37 -07:00
Pokechu22
167d87e5cb Fix CRC handling
2 different CRC bugs, and also an OOB bug.
2024-09-07 16:28:37 -07:00
Pokechu22
40c4f3e8c1 Initial implementation of reads and writes
No idea if this actually works
2024-09-07 16:28:37 -07:00
Pokechu22
bd895d0a15 WriteBlock -> WriteSingleBlock 2024-09-07 16:28:37 -07:00
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