42558 Commits

Author SHA1 Message Date
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
Tilka
a293abbfd0
Merge pull request #13044 from JosJuice/subfic-carry
Interpreter: Fix subfic carry calculation
2024-08-31 17:24:17 +01:00