[pvrusb2] New fwextract.pl available
Mike Isely
isely at isely.net
Fri Sep 29 02:30:18 CDT 2006
On Fri, 29 Sep 2006, Andreas Korinek wrote:
> On Friday 29 September 2006 08:10, Mike Isely wrote:
> > I've updated fwextract.pl so that it recognizes the latest Hauppauge
> > driver package containing firmware - corresponding to here:
> >
> > http://hauppauge.lightpath.net/software/pvrusb2/pvrusb2_inf_24117.zip
>
> Sorry, doesn't work for me:
>
> andreas at prometheus ~ $ perl ./fwextract.pl --search
> fwextract version: $Id: fwextract.pl 1353 2006-09-29 06:02:44Z isely $
> driverDir is win_driver
> Searching for firmware images in driver directory
> Searching for the following embedded file data:
> Performing exact search in win_driver
> Searching win_driver/pvrusb2_inf_24117.zip (size=738072)
> Failed to find firmware data within Windows driver files
> _______________________________________________
> pvrusb2 mailing list
> pvrusb2 at isely.net
> http://www.isely.net/cgi-bin/mailman/listinfo/pvrusb2
>
That's not how you use it. Look at the pvrusb2 documentation:
http://www.isely.net/pvrusb2/setup.html#Firmware
Here's what you want to do:
unzip pvrusb2_inf_24117
fwextract.pl --driverDir=DriverD2
(This is assuming that you have fwextract.pl sitting in that directory or
in your path. The --driverDir=DriverD2 part is there because that's the
subdirectory created when the unzip command is run.)
And that's it. The result will be 3 firmware files in the current
directory if it worked (and it will be obvious if it worked).
The --search option does the opposite of an extract. With --search, the
firmware files are already present and you're asking the script to go
figure out where those same bags of bits can be found within the driver
package. That's how you train the tool to work on newer driver packages,
AFTER you've extracted the firmware through other means (as described for
when you're doing a manual extraction). What --search does is cause the
tool to search through all the driver files and locate where the firmware
images actually are, through comparison with the already extracted
firmware. Once it finds the firmware, it prints out a table entry which
can be put into the script and thus allow it automatically locate the same
firmware files later within the driver package. The location info is
data-driven, using MD5 sums. So it can find the right spot regardless of
file name or which files are present, and it automatically verifies that
what it extracts is correct. MD5 sums also mean that it doesn't have to
care which driver package version you're feeding.
To update fwextract.pl, I followed the manual extraction process here.
Then I used --search to train the script, and then I put the results back
into the script and re-issued it. Now all you have to do is run the
script and simply point it at where you have expanded the driver files.
It will then locate and extract the firmware, using guidance from that
table entry previously put in by me (or whomever else does this).
-Mike
--
| Mike Isely | PGP fingerprint
Spammers Die!! | | 03 54 43 4D 75 E5 CC 92
| isely @ pobox (dot) com | 71 16 01 E2 B5 F5 C1 E8
| |
More information about the pvrusb2
mailing list