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

Replace extract-xiso with a different tool #12

Open
JayFoxRox opened this issue Aug 12, 2018 · 6 comments
Open

Replace extract-xiso with a different tool #12

JayFoxRox opened this issue Aug 12, 2018 · 6 comments

Comments

@JayFoxRox
Copy link
Member

JayFoxRox commented Aug 12, 2018

This is discussion. Not a plan.

With all those PRs pouring in (which remove legacy features or bad code), I'm wondering if it's such a good idea to even maintain extract-xiso.
Aside for creating functional ISOs for XQEMU, nothing really seems to work.

It can obviously not create redump XISO (no tool can) and it can't even extract them.

mborgerson has mentioned that extract-xiso could be replaced with a short python script - and I agree.
There's also other projects which seem to do a similiar, or even better job.

Yesterday I found myself with my redump XISO dumps and wanted to run a game on real Xbox. As I'm on Linux I had a hard time finding any software to deal with that.
I'd expect extract-xiso to support this, but it doesn't. While looking around, someone on redump IRC recommended xbiso. I've used the xbiso C++ rewrite by @thrimbor which worked just fine for extracting redump XISOs. It might work fine, but I used a custom branch which has a hack (not sure if relevant).

I'm not sure how good the code quality of xbiso is (despite having hacked together a version to export metadata about XISO in late 2017).
In my opinion we should review tools like it (what is supported? is there feature creep?) and find one which could possibly replace extract-xiso if necessary.

Thoughts?

  • Should we keep extract-xiso?
  • Move xbiso to XboxDev?
  • New tool from scratch?
    ...
@mborgerson
Copy link
Member

The code for extract-xiso is not very easy to follow which of course stunts maintainability, but the tool itself does work well (at least in my experience). I don't foresee a lot of changes needed going forward once all build issues are resolved, but that's just speculation. If someone wants to clean the code up a bit (refactoring, cleaning up some of the error handling, adding comments), that would be nice and I'm open to reviewing PRs.

As xbiso does not actually support creating ISOs yet, I don't think it's a suitable candidate to outright supplant extract-xiso at this time...but if someone else wants to develop and maintain xbiso, or a new tool (preferably in Python), which can create/extract, I would support that.

@JayFoxRox
Copy link
Member Author

I had actually prototyped a tool in Python after the debacle in #25.

That code can be found here: JayFoxRox#2.

@Natetronn
Copy link

Natetronn commented Sep 24, 2020

I realize this is an old post and @JayFoxRox, I just remembered you're already familiar with xbfuxe but, I just wanted to point out that xbfuse can be used on Linux along with extract-xiso for creating functional ISOs for XQEMU:

    $ xbfuse halo.iso /xbox  # mount the ReDump-style rip
    $ ls /xbox               # look at the files on the disk, just for grins
    $ extract-xiso -c /xbox  # create the xiso that will be named xbox.iso
    $ mv xbox.iso halo.xiso  # rename xiso to something a little more useful
    $ fusermount -u /xbox    # unmount the rip

Source

extract-xiso seems to work okay from all I can tell too but, I am curious about the the state of this Python version you've created as well.

@vandoeselaar
Copy link

@JayFoxRox "Yesterday I found myself with my redump XISO dumps and wanted to run a game on real Xbox. As I'm on Linux I had a hard time finding any software to deal with that."

If you are on linux you can just use DD in your terminal:

dd if=game.iso of=xiso.iso skip=387k bs=1k

@dracc
Copy link
Contributor

dracc commented Nov 27, 2020

@LeadHood: Yes, I'm sure JFR is aware of that workaround. But it is just that, a workaround - not a fix.

@mborgerson
Copy link
Member

mborgerson commented Aug 2, 2023

@antangelo has recently developed xdvdfs command line tool and library for xiso management. There's also a nice web interface for it. Apparently I missed, or forgot, that JayFoxRox's Python implementation can also read and write xisos.

Now that we have viable alternatives with read/write functionality, I'm in favor of just dropping support for extract-xiso unless another maintainer wants to continue development and review/merge patches.

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

No branches or pull requests

5 participants