Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] xdelta Patch Support #43

Open
ThisNekoGuy opened this issue Oct 27, 2021 · 17 comments
Open

[Feature Request] xdelta Patch Support #43

ThisNekoGuy opened this issue Oct 27, 2021 · 17 comments

Comments

@ThisNekoGuy
Copy link

Considering this is the only native ROM patcher I know for non-Windows desktop systems, I'd like to request that Delta NDS patches be added

Alcaro added a commit that referenced this issue Oct 27, 2021
@Alcaro
Copy link
Owner

Alcaro commented Oct 27, 2021

Are you requesting that the ROM picker should accept .nds alongside the other usual ROM extensions, or are you asking me to add Delta NDS Patch as a new format beside IPS, BPS and UPS?

If former, done. If latter, I'm not doing that myself, but feel free to submit a pull request.

@ThisNekoGuy
Copy link
Author

ThisNekoGuy commented Oct 28, 2021

I'm not suggesting they they all should be included; just that Delta be added alongside what's currently available

As it stands, there's currently no native tool for non-Windows systems to patch NDS ROMs at all (as far as I'm aware?), so adding it to Flips would be a definite upgrade in terms of cross-platform compatibility
(That aside, I don't even know if the other patch extension implementations are even open-source)

@ThisNekoGuy
Copy link
Author

I could look into finding out how to add it but this is personally outside of my area of experience

@Sanaki
Copy link

Sanaki commented Oct 28, 2021

It's still not clear what you're asking. If it's just for the nds extension to be supported in the GUI, he already did that yesterday. I've been using bps for DS files for years myself, the tool doesn't really care what the data is.

That said, patches for nds are often distributed as xdelta, which while inferior to bps for files this size, does indeed have a native tool available.

@ThisNekoGuy
Copy link
Author

ThisNekoGuy commented Oct 29, 2021

It's still not clear what you're asking.

I asked for xDelta support, it couldn't be more clear given the title of the issue and what I already said

I don't have anything against BPS or UPS, but as you already aptly put:

patches for nds are often distributed as xdelta

which means that these aren't usable with Flips.

That said, the "native tool" you speak of exists for MacOS but not for Linux - in case you forgot or didn't realize these users exist - and they/us don't have a native tool for this.

@Alcaro
Copy link
Owner

Alcaro commented Oct 29, 2021

it couldn't be more clear

That's the first time you've named the format, you've just said Delta NDS Patch.

I would welcome someone adding xdelta support, but I'm not doing it myself.

@Alcaro Alcaro changed the title [Feature Request] Delta NDS Patch Support [Feature Request] xdelta Patch Support Oct 29, 2021
@Sanaki
Copy link

Sanaki commented Oct 29, 2021

That said, the "native tool" you speak of exists for MacOS but not for Linux - in case you forgot or didn't realize these users exist - and they/us don't have a native tool for this.

Just to be clear, I'm a Linux user myself. I installed xdelta3 from my distro's default repos (Mint, from Ubuntu's repos). Didn't even have to go looking. While I can't speak for your distro, it absolutely does exist natively on Linux.

That said, sure, xdelta support would be nice if someone wanted to do the work to add it.

@ThisNekoGuy
Copy link
Author

ThisNekoGuy commented Oct 29, 2021

I didn't know it existed in the Linux repos; that wasn't something I expected considering its niche nature in the context of what we're talking about

That's the first time you've named the format, you've just said Delta NDS Patch.

@Alcaro I apologize for not being more clear, then; I was under the impression that xDelta was the name of the software and Delta was just the patch format that xDelta uses

@Sanaki
Copy link

Sanaki commented Oct 29, 2021

That would explain the confusion. Xdelta has no actual relation to emulation. It's just used there. I recommend glancing over the Wikipedia article on it.

https://en.wikipedia.org/wiki/Xdelta

@orbea
Copy link
Contributor

orbea commented Nov 14, 2021

What's the point of adding xdelta to flips when you can use this?

https://github.com/jmacd/xdelta

@Sanaki
Copy link

Sanaki commented Nov 14, 2021

For me? Unified tools tend to be nice, since you can handle patches of different types in bulk with a basic for loop. That's about it though. I'd use it if someone got bored and implemented it, but I feel no real draw to it. Right now I use that tool myself without issue.

@orbea
Copy link
Contributor

orbea commented Nov 14, 2021

@Alcaro May feel differently, but I feel it would be extra maintainer burden without much gain. An alternative xdelta tool would be better as its own project that follows the unix philosophy "Do One Thing And Do It Well."

https://en.wikipedia.org/wiki/Unix_philosophy#Do_One_Thing_and_Do_It_Well

@Alcaro
Copy link
Owner

Alcaro commented Nov 14, 2021

Not many programs strictly adhere to the Unix philosophy these days.

Flips already has IPS, UPS and BPS; adding a fourth format sounds like a perfectly normal thing to me. I'm not sure what maintainer burden you're thinking of (other than adding it in the first place), it's not like any of those formats are evolving.

@orbea
Copy link
Contributor

orbea commented Nov 15, 2021

Fair enough.

Given that xdelta doesn't necessarily imply the patches will be for emulation I imagined this would open up lots of potential for technical debt, but maybe I'm wrong about that?

@Alcaro
Copy link
Owner

Alcaro commented Nov 15, 2021

I see no problem with adding more patch formats. It's not like PPF or bsdiff are evolving either.

(Not gonna accept abandoned formats, or ones that never caught on, though. I'm not sure how common PPF and bsdiff are these days, afaik most users switched to BPS and xdelta.)

@Sanaki
Copy link

Sanaki commented Nov 15, 2021

PPF is still relatively common, though I couldn't tell you why. Only once encountered a bsdiff in the emulation community. The only other one I encounter on occasion is asm, but that's very rare and almost always comes alongside a more common patch format.

@Aerocatia
Copy link

The older playstation emulators like ePSXe and PCSX(r) can apply PPF patches at runtime, so that could be one reason why.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants