libretro / libretro/RetroArch

Add a message saying a bps patch failed if its CRC fails while applying softpatching

Open
#13,474 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

patching
Dominant language
C
Stars
14.1k
Forks
2.2k
Avg merge
7h 35m
Merged PRs (30d)
51

Description

First and foremost consider this:

  • Only RetroArch bugs should be filed here. Not core bugs or game bugs
  • This is not a forum or a help section, this is strictly developer oriented

Description

The title. I found that a bps patch being applied to the wrong ROM fails silently while attempting to help someone in the mesen issue report page saying that 'softpatching wasn't working'. I had it in my head that since one of the games i tried had a ips patch and that worked, and a bps patch i was trying wasn't working (the reason why i looked for the bug) that 'bps didn't work in the mesen core', while the actual problem was that 'bps is failing silently with the wrong rom to softpatch'. @Sanaki sorted this misinformation out, but i kind of think that other people might have fallen into this trap especially if you did have a ips patch in addition to a bps the ips would 'work' (be broken silently).

I didn't even realize that bps worked, i tried to hardpatch it to convert to ips, found that the rom was the wrong one, eventually found the right one and converted to ips without connecting that the problem of the bps softpatching was the wrong ROM in the first place instead of 'Mesen doesn't support bps'. If the user had a patch source zip with both bps and ips they'd not even have that assurance of 'having' to convert correctly to have a ips.

https://github.com/libretro/Mesen/issues/11

Expected behavior

BPS patches that fail to apply because of CRC mismatch popup a warning.

Actual behavior

Nothing happens.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating RetroArch's BPS softpatch application entry point and the handling of CRC mismatches; the issue names no file or test. Reproduce the failure with a BPS patch and the wrong ROM, then verify that a CRC failure produces a warning instead of failing silently.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.