Topic: 3rd Party DriverPacks - TUTORIAL

Introduction
So you are using my DriverPacks, but want to make some additions for yourself? Because you have a VERY special driver, or just because I haven't added this particular driver YET? Well, then this small tutorial will show you how you can make your own DriverPack, you'll see, it's very easy, all the hard work is put in the DriverPacks BASE that does almost all work for you!

Note: this works only for drivers that don't need anything special, i.e. that only need: to be copied to the systemdrive and the necessary entries in the winnt.sif file.



1. Get the drivers
Obviously, you have to obtain your drivers first. First check the site of the manufacturer of your hardware, if you can't find the driver there, try to find it with Google.



2. Extract the drivers
a) Now we have to get the drivers themselves OUT of the installer/archive. Personally I prefer 7-zip to do that, but any (well, almost any) archiving program should be capable of doing this. Right-click the driver archive or setup and choose the option "Extract files...", or something similar. Choose a folder to extract them to and that's that.

b) This part might scare of some beginning users, but it's definetely worth it in the end. Instead of just using everything you extracted, we have to select the files we need, in other words: removing the garbage... So how do you do that? In 95% of the cases this works: open the ''.inf'' file of your driver, then search for the section that's marked by ''[SourceDisksFiles]'' and make sure you KEEP all the files listed here!

Note: if you don't want to void the WHQL signing, do NOT remove the included .cat files!




3. Creating the DriverPack
a) Now it's VERY easy: just create a ''D'' folder and put your drivers in any subfolder below it. Any subfolder, but I recommend you use as short names as possible for these subfolders: else the ''OemPnPDriversPath'' in your ''winnt.sif'' file might become to long (the maximum is 4096 characters, for ''winnt.exe''/''winnt32.exe'' initiated installations it's even only 1024 characters!) and corrupt your installation! After creating the desired folder structure, move your drivers into the correct subfolders (the extracted files, the ''.inf'' files, not the archives or setups, remember?). So create it like this:

+ D
|--+ 3
   |--+ DriverPack root dir
      |--+ sub1
         |--+ subsubA
         |--+ subsubB
      |--+ sub2
         |--+ subsubX

A real world example:

+ D                                                     => root directory for ALL DriverPacks
|--+ 3                                                  => root directory for 3rd party DriverPacks
   |--+ B                                                 => *B*roadband
      |--+ M                                                => *M*otorola
         |--+ 1                                               => first Motorola broadband driver
         |--+ 2                                               => second Motorola broandband driver
         |--+ n                                               => n-th Motorola broandband driver
      |--+ W                                               => *W*hatever
         |--+ RoxorBroadBandModem                             => you can use names too if you prefer that

Note: in the past you didn't have to use the "3" subdirectory. This is now a requirement, to make the KTD functionality compatible with the Third Party DriverPacks

This Should be the new layout:
+D
---+3
------+B = Broadband Pack
------+BT = Bluetooth Pack
------+D = Display/Monitor Pack
------+H = Human Input Device Pack (aka HID)
------+M = Modem Pack
------+P = Printer & Phone Packs
------+S = Scanner Pack
------+T = TV Pack
------+TS = Touch Screen
------+U = USB Pack
------+V = Virtual Pack (aka VMware)
------+W = WebCam Pack
------+X = Misc Pack

b) You're almost there! Right-click the "D" folder and select Add files to archive..., then you have to choose your settings:
  *Archive (file name): DP_myDriverPacksNameWithoutSpaces_wnt5_x86-32_YY.MM.DD.subversion.7z, where Y stands for year (last two figures), M for months (leading zero, if applicable) and D for day (leading zero, if applicable). The subversion is optional, ususally only required when you create more than one version of the same pack on the same day
  *Archive format: ''7z''
  *Compression level: ''Ultra'' (For the best result, you can choose a lower compression level if you want.)
  *Compression method: ''LZMA'' by default. (Don't change this.)
  *Dictionary size: ''32 MB'' by default. If you choose a higher value, you'll get a better compression ratio, at the cost of more CPU time needed. It will also consume more RAM, both for compression as well as decompressing.
If your system's RAM allows it, bump it up as far as possible for best compression results.
  *Word size: ''256'' by default. Changing this value does not have any noticable effect on the size of the compressed file.
  *Solid Archive: Definately enable this to achive optimal compression results. It means you won't be able to extract single files without decompressing the entire archive, but we aren't going to do that anyway.
*Multithreading: Utilizies the second or further cores of you CPU (SMP).
Definately lowers compressing time on systems that support it. It's disabled by default on others. Does not have any effect on the compression size.



3. Using the DriverPack

And as last, using the DriverPack. In fact it's even ridiculous that I added this paragraph... So easy... But here it goes: the last step is putting your own DriverPack in the "3rd party DriverPacks" directory of the DriverPacks BASE. Then all you have to do is run the batch files, choose the method you wish to use and that's that! No more "winnt.sif" editing, no more "txtsetup.sif" hacking, NOTHING else you have to do!

Founder of DriverPacks.net — wimleers.com

Re: 3rd Party DriverPacks - TUTORIAL

Since you closed the other sticky (http://forum.driverpacks.net/viewtopic.php?id=392), I'm posting this in here *ahem*

Anyway, since the MD5 checksum is mandatory (as it was not in italics), you might also want to include a guide how to obtain the checksum using a Win System.
I'm sure there's a lot of users not knowing how to and the only thing I know about it is that it is not possible to do so without 3rd party software.

Re: 3rd Party DriverPacks - TUTORIAL

http://beeblebrox.org/hashtab/

Re: 3rd Party DriverPacks - TUTORIAL

Indeed the best way there is smile

The reason why I'm making it MANDATORY is simple: since everyone can access the ftp, anyone could replace the original files by ones that include malware (or even just hack .inf files to set a certain homepage, for example). Therefore it's very important that these are included.

Founder of DriverPacks.net — wimleers.com

Re: 3rd Party DriverPacks - TUTORIAL

No, I'm not disagreeing with making it mandatory, I can clearly see the need.
However, by doing so you at least need to tell people how to make it work wink

Thanks for the link, RS, should be included in the instructions, IMO.

Last edited by Helmi (2006-08-09 08:25:52)

Re: 3rd Party DriverPacks - TUTORIAL

Helmi wrote:

No, I'm not disagreeing with making it mandatory, I can clearly see the need.
However, by doing so you at least need to tell people how to make it work wink

Thanks for the link, RS, should be included in the instructions, IMO.

Done smile

Founder of DriverPacks.net — wimleers.com

Re: 3rd Party DriverPacks - TUTORIAL

http://rapidshare.de/files/30769849/Audio.7z


here it is!

uploaded the whole sound-pack sony delivered...

Re: 3rd Party DriverPacks - TUTORIAL

lieblingsbesuch wrote:

http://rapidshare.de/files/30769849/Audio.7z


here it is!

uploaded the whole sound-pack sony delivered...

Eh? For what is this exactly? I guess you posted it in the wrong topic wink tongue

Founder of DriverPacks.net — wimleers.com

Re: 3rd Party DriverPacks - TUTORIAL

Bâshrat the Sneaky wrote:

the last step is putting your own DriverPack in the "DriverPacks" directory of the DriverPacks BASE.

Just to be 100% sure, 3rd party driver packs are no longer to be in "3rd party DriverPacks" directory, but together with regular DriverPacks in the "DriverPacks" directory?

Re: 3rd Party DriverPacks - TUTORIAL

jagod wrote:
Bâshrat the Sneaky wrote:

the last step is putting your own DriverPack in the "DriverPacks" directory of the DriverPacks BASE.

Just to be 100% sure, 3rd party driver packs are no longer to be in "3rd party DriverPacks" directory, but together with regular DriverPacks in the "DriverPacks" directory?

No, the only thing that has changed is the file structure within the DP archive.

Re: 3rd Party DriverPacks - TUTORIAL

jagod wrote:
Bâshrat the Sneaky wrote:

the last step is putting your own DriverPack in the "DriverPacks" directory of the DriverPacks BASE.

Just to be 100% sure, 3rd party driver packs are no longer to be in "3rd party DriverPacks" directory, but together with regular DriverPacks in the "DriverPacks" directory?

Ooopss..........

This tutorial was copy/pasted from the one I posted at www.uawiki.org and then updated to comply with the new DriverPacks BASE. I think that's the only thing I forgot... Thanks for letting me know! (Fixed now.)

Founder of DriverPacks.net — wimleers.com

Re: 3rd Party DriverPacks - TUTORIAL

Can you be more specific on how exactly name the directory structure.
If I want to make a Printer pack for Canon it has to be like this :

+ D
|--+ 3
   |--+ P
      |--+ C
         |--+ A
         |--+ B
         |--+ C

In This case I choose "P" for Printer ... but this "P" could be used by another DP for anything else.
"S" could be used for Scanners ... but if I have a multifunction printer-scanner (all-in-one), where do I put the driver ?

Any (better) ideas ?

Re: 3rd Party DriverPacks - TUTORIAL

It doesn't matter that 'P' was already used by somebody else...

But it would definitely be better if you would create a 'Printer DriverPack' and not a 'Canon Printers DriverPack'. wink Just put them all together. But as I said, you obviously can do it the way you've presented it!

Founder of DriverPacks.net — wimleers.com

Re: 3rd Party DriverPacks - TUTORIAL

Now we need someone with lots of time , who will redo all 3th party packs???

Re: 3rd Party DriverPacks - TUTORIAL

But it would definitely be better if you would create a 'Printer DriverPack' and not a 'Canon Printers DriverPack'.

My DP Canon contains 'only' 20 sub-dirs and it's already 210 Mb uncompressed, 35 Mb compressed.
A unified printer pack with all printers drivers from Canon, Epson, HP ... will be so huge ... it will be non practical sad
But, I will test it, and upload it.

Edit : I've checked printers drivers  I have :
- Brother ones are language dependant
- Canon ones are multilingual smile
- Epson ones are not multilingual : files included in driver inf are language dependant sad (printer driver control panels I think)
- HP ones seems to be only drivers
- Lexmark ones are language dependant too sad

Last edited by maxximum (2006-08-29 09:16:13)

Re: 3rd Party DriverPacks - TUTORIAL

I have a question about a setting in 7-Zip:
Must i pick or not create solide archive in both cases: archive .7z and .exe (sfx archive)?
Thanks

Re: 3rd Party DriverPacks - TUTORIAL

Solid Archive does not have anything to do whether you create an ordinary of SFX archive.

Unless you want to extract specific files out of an archive or later add or remove files, Solid Archive is recommended since it will allow for greater compression.

Ususally, you should max all options, with respect to your maximum RAM size regarding Dictionary Size (RAM loadout will increase greatly once you push this so be careful not to exceed your physical RAM!).

Re: 3rd Party DriverPacks - TUTORIAL

Hi Bashrat, I have downloaded the driverpacks Graphics A, and i have changed the CCC and recompressed it as you has said in your tutorial, but the size is much greater than yours.
Your Driverpacks A:    67.560 KB
My Driverpacks A:      100.359 KB
What do you suggest me to change. The 7-zip i use is 4.42.

Re: 3rd Party DriverPacks - TUTORIAL

Major wrote:

Hi Bashrat, I have downloaded the driverpacks Graphics A, and i have changed the CCC and recompressed it as you has said in your tutorial, but the size is much greater than yours.
Your Driverpacks A:    67.560 KB
My Driverpacks A:      100.359 KB
What do you suggest me to change. The 7-zip i use is 4.42.

What compression level did you use?

Founder of DriverPacks.net — wimleers.com

Re: 3rd Party DriverPacks - TUTORIAL

I use Ultra. I use the parameters you has said in your tutorial, i have not changed any parameter

Re: 3rd Party DriverPacks - TUTORIAL

And what's the total size of your uncompressed dp?

Founder of DriverPacks.net — wimleers.com

Re: 3rd Party DriverPacks - TUTORIAL

The total size of the uncompressed driverpacks Graphics A is 223MB

Re: 3rd Party DriverPacks - TUTORIAL

Major wrote:

The total size of the uncompressed driverpacks Graphics A is 223MB

Be sure to check 'Solid Archive' in 7zip, otherwise it'll be much bigger than the original.

This minor tip should be mentioned somewhere in the tutorial. I spent a good hour trying different compression settings and methods and the re-compressed file was always 25-50% larger than the original, even after removing 80% of the stuff!

Solid definitely makes a difference.

KZ

Last edited by kelaniz (2007-03-10 23:36:36)

Re: 3rd Party DriverPacks - TUTORIAL

Thanks for your advice, kelaniz!
I edited the first post accordingly and added even a further bit of info smile

Re: 3rd Party DriverPacks - TUTORIAL

No problem. Glad to be helpful, even if I did reply to a post from 9 months ago smile

Great tutorial, btw. Creating technical writing that is intuitive and isn't overly verbose is an extremely rare skill that you definitely have.