xboxscene.org forums

Pages: 1 ... 8 9 [10] 11 12 ... 14

Author Topic: [beta] Party Buffalo Drive Explorer  (Read 1529 times)

moh.sakhaii

  • Archived User
  • Jr. Member
  • *
  • Posts: 86
[beta] Party Buffalo Drive Explorer
« Reply #135 on: February 12, 2011, 03:06:00 PM »

QUOTE(moh.sakhaii @ Jan 23 2011, 07:12 PM) View Post

Fantastic, I tested it and everything worked biggrin.gif but it would have been superb to be some way for opening and/or restoring custom backups biggrin.gif this build is a major improvement compared to previous ones, congratulations wink.gif

QUOTE(CLK Rebellion @ Feb 13 2011, 12:56 AM) View Post

What's this about a browser?  I don't recall you mentioning that, but are you talking about filtering content by STFS shit as well?  e.g. extract if game name is xxxx, profile ID is xxxx, etc?

Nope, no filtering by STFS name.
Since it's all folders and files, you don't know what's what on that custom backup, now do you? and you can not load a custom backup just like you could load a full dump.
Again thank you for all the good work wink.gif
Logged

CLK Rebellion

  • Recovered User
  • Full Member
  • *
  • Posts: 126
[beta] Party Buffalo Drive Explorer
« Reply #136 on: February 13, 2011, 05:39:00 PM »

I'll definitely try to put something like that in -- not too difficult since I've got some stuff already created from another project.
Logged

moh.sakhaii

  • Archived User
  • Jr. Member
  • *
  • Posts: 86
[beta] Party Buffalo Drive Explorer
« Reply #137 on: February 14, 2011, 04:25:00 PM »

QUOTE(CLK Rebellion @ Feb 14 2011, 04:09 AM) View Post

I'll definitely try to put something like that in -- not too difficult since I've got some stuff already created from another project.

Much appreciated, I have a love-relationship with your app, want it to be flawless  tongue.gif
Logged

moh.sakhaii

  • Archived User
  • Jr. Member
  • *
  • Posts: 86
[beta] Party Buffalo Drive Explorer
« Reply #138 on: February 15, 2011, 10:28:00 AM »

QUOTE(CLK Rebellion @ Feb 15 2011, 09:28 AM) View Post

Sure thing.  I also decided to get creative and added a CRC-32 function.

IPB Image

Beautiful, now that your at it, put MD5 checksum too biggrin.gif, calculate them all with one button of course. Having media ID does not hurt either.
Logged

CLK Rebellion

  • Recovered User
  • Full Member
  • *
  • Posts: 126
[beta] Party Buffalo Drive Explorer
« Reply #139 on: February 15, 2011, 05:09:00 PM »

QUOTE(moh.sakhaii @ Feb 15 2011, 09:28 AM) View Post

Beautiful, now that your at it, put MD5 checksum too biggrin.gif, calculate them all with one button of course. Having media ID does not hurt either.


You know, I actually had it set to CRC-32, MD5, and SHA-1, but something is messed up with my stream to where the MD5 function would *sometimes* try to go beyond the length of the stream (no idea), and the SHA-1 function would ALWAYS go beyond the length of the stream.
Logged

moh.sakhaii

  • Archived User
  • Jr. Member
  • *
  • Posts: 86
[beta] Party Buffalo Drive Explorer
« Reply #140 on: February 15, 2011, 11:11:00 PM »

QUOTE(CLK Rebellion @ Feb 16 2011, 03:39 AM) View Post

You know, I actually had it set to CRC-32, MD5, and SHA-1, but something is messed up with my stream to where the MD5 function would *sometimes* try to go beyond the length of the stream (no idea), and the SHA-1 function would ALWAYS go beyond the length of the stream.

hmm, interesting, maybe I could take a look and try to help, if I had your latest development source code.
Logged

CLK Rebellion

  • Recovered User
  • Full Member
  • *
  • Posts: 126
[beta] Party Buffalo Drive Explorer
« Reply #141 on: February 16, 2011, 06:30:00 PM »

QUOTE(moh.sakhaii @ Feb 15 2011, 10:11 PM) View Post

hmm, interesting, maybe I could take a look and try to help, if I had your latest development source code.


http://clkxu5.com/fi...ATX Browser.rar
Logged

moh.sakhaii

  • Archived User
  • Jr. Member
  • *
  • Posts: 86
[beta] Party Buffalo Drive Explorer
« Reply #142 on: February 17, 2011, 12:51:00 PM »

QUOTE(CLK Rebellion @ Feb 17 2011, 05:00 AM) View Post

Thanks for sharing it, but I didn't find any method for calculating MD5 in there, I added this:
CODE

 private void button1_Click(object sender, EventArgs e)
        {
            
            System.IO.Stream stream = xFile.GetStream();
            //textBox1.Text = Calculate(stream).ToHexString();
            MD5CryptoServiceProvider md5Provider = new MD5CryptoServiceProvider();
            textBox1.Text = md5Provider.ComputeHash(stream).ToHexString();
        }

The  problem seems to be that FATXFileStream is not a complete implementation of Stream as it should be, and MD5 method just hits the end of disk apparently biggrin.gif
Then I replaced the code with these lines instead in the hopes of just giving a byte[] to the MD5 method:
CODE

private void button1_Click(object sender, EventArgs e)
        {
            
            System.IO.Stream stream = xFile.GetStream();
            byte[] buf = new byte[stream.Length];
            stream.Read(buf, 0, (int)stream.Length);

            //textBox1.Text = Calculate(stream).ToHexString();

            MD5CryptoServiceProvider md5Provider = new MD5CryptoServiceProvider();
            textBox1.Text = md5Provider.ComputeHash(buf).ToHexString();
        }

Again it failed, lol biggrin.gif I think it's obvious enough that the Read method of your stream is not doing what it should, but I do not know shit about FATX and all the logic that you have used, so I hope this could give you a hint as what is wrong wink.gif
Logged

moh.sakhaii

  • Archived User
  • Jr. Member
  • *
  • Posts: 86
[beta] Party Buffalo Drive Explorer
« Reply #143 on: February 17, 2011, 01:20:00 PM »

CODE

 if (count <= xFile.PartInfo.ClusterSize && what >= count)
            {
                // Get the amount to remove off of the beginning of our list...
                long v_bToRemove = RealOffset - RealSectorOffset;
                // Get the amount to remove off the the end of our list
                long up = m.UpToNearest200(RealOffset + count);
                long v_eToRemove = up - (RealOffset + count);
                // Get the total amount of data we have to read
                long v_ToRead = m.UpToNearest200(v_bToRemove + v_eToRemove + count);
                // Set our return value's length
                b_Return = new byte[v_ToRead];
                // Read our shit
                Underlying.Read(b_Return, offset, (int)v_ToRead);
                // Copy our return to the original array
                Array.Copy(b_Return, v_bToRemove, array, 0x0, b_Return.Length - (v_bToRemove + v_eToRemove));
                // Clear the b_Return array
                Array.Clear(b_Return, 0, b_Return.Length);
            }
Logged

CLK Rebellion

  • Recovered User
  • Full Member
  • *
  • Posts: 126
[beta] Party Buffalo Drive Explorer
« Reply #144 on: February 17, 2011, 07:40:00 PM »

QUOTE(moh.sakhaii @ Feb 17 2011, 12:20 PM) View Post

OK this does not make any sense to me
CODE

 if (count <= xFile.PartInfo.ClusterSize && what >= count)
            {
                // Get the amount to remove off of the beginning of our list...
                long v_bToRemove = RealOffset - RealSectorOffset;
                // Get the amount to remove off the the end of our list
                long up = m.UpToNearest200(RealOffset + count);
                long v_eToRemove = up - (RealOffset + count);
                // Get the total amount of data we have to read
                long v_ToRead = m.UpToNearest200(v_bToRemove + v_eToRemove + count);
                // Set our return value's length
                b_Return = new byte[v_ToRead];
                // Read our shit
                Underlying.Read(b_Return, offset, (int)v_ToRead);
                // Copy our return to the original array
                Array.Copy(b_Return, v_bToRemove, array, 0x0, b_Return.Length - (v_bToRemove + v_eToRemove));
                // Clear the b_Return array
                Array.Clear(b_Return, 0, b_Return.Length);
            }



Going to be 100% honest: me either.  Basically, what happens there is I have to calculate the amount of data to shave off the beginning and end of the read data (since you can only read in intervals of 0x200 on drives), calculate the amount of data we have to read from our current position to the end, allocate b_Return (this array is what is holding the "total" data temporarily), copy only the data we need from that array in to the array passed in the args.

Of course, I was pretty tired/had school/(etc. excuses) when I was writing that, and is the reason why the stream doesn't support writing.  It seems to work just fine though... which is what seriously surprises me.  The ReadByte function may appear to be a little messed as well -- I was trying to get it to cache the data from that sector so if another byte is read from that segment, I can just call to the index in memory instead of having to go back, read the same 0x200 again, etc. etc. (tl;dr failed)

Oo, didn't see the post above that one.  Yeah, it tried to go past the end of the file, which I'll have to play around with later, check the call stack, etc. (I've got a feeling it happens at this line right here: "Position += DataRead;" (line 790).  I think I've got to write up another function for changing only the underlying stream's position accordingly (so it's in the appropriate cluster/position in that cluster) no, that's retarded.
Logged

totoz

  • Archived User
  • Jr. Member
  • *
  • Posts: 86
[beta] Party Buffalo Drive Explorer
« Reply #145 on: February 21, 2011, 03:10:00 AM »

hi
one of my friend, before formatting his "usb360pendrive", backupped all the DATA files u see in this pic
he didn't know about fatx programs...did he lost all the savegames? are all of these data files useless?
is data0001 the file with savegames? (the others are too huge imho)

thanks and great app!

IPB Image
Logged

totoz

  • Archived User
  • Jr. Member
  • *
  • Posts: 86
[beta] Party Buffalo Drive Explorer
« Reply #146 on: February 21, 2011, 05:56:00 PM »

after 3 tries, i've restored all the savegames
--> opened the usb pen(8gb) with the backupped files (data0001,0002 etc)
--> extracted to c:\   the "content" folder  
--> opened the 360hd (60gb) (previously formatted from the 360 and then I did just one savegame)
--> deleted the folder "content" inside this 360hd
--> injected the folder "content" from c:\ to 360hd

thanks again
Logged

moh.sakhaii

  • Archived User
  • Jr. Member
  • *
  • Posts: 86
[beta] Party Buffalo Drive Explorer
« Reply #147 on: March 01, 2011, 08:43:00 AM »

Good to hear from you again CLK wink.gif
Logged

CLK Rebellion

  • Recovered User
  • Full Member
  • *
  • Posts: 126
[beta] Party Buffalo Drive Explorer
« Reply #148 on: March 01, 2011, 09:50:00 AM »

I've been busy with some other projects and school lately tongue.gif

I wanted to work on implementing that custom backup viewer, but I had to push out the update to fix the USB stream (it was completely borked).  I'm not ignoring that request!
Logged

moh.sakhaii

  • Archived User
  • Jr. Member
  • *
  • Posts: 86
[beta] Party Buffalo Drive Explorer
« Reply #149 on: March 02, 2011, 12:53:00 PM »

QUOTE(CLK Rebellion @ Mar 1 2011, 08:20 PM) View Post

I've been busy with some other projects and school lately tongue.gif

I wanted to work on implementing that custom backup viewer, but I had to push out the update to fix the USB stream (it was completely borked).  I'm not ignoring that request!

Thank you, love your work wink.gif
Logged
Pages: 1 ... 8 9 [10] 11 12 ... 14