My pc doesn't have a parallel port (lpt) and i am using a PCI card with adds serial and parallel ports to my system.
I tried to use avrdude in windows with no success, my lpt1 is in address 0xE800, i also tried to insert PCI_0xE800 instead of lpt1 in the port selector but that didn't work either.
Someone suggested that a hex editor could be used to change the lpt address inside avrdude but it wasn't possible for me to find the bits to change.
I had to compile the program after setting my custom address to a source file, unfortunately setting up the compile environment (minGW+msys & library's) and trying to figure how to make this work, took about seven hours but i managed to compile avrdude and works fine.
With the addition of AVR8 Burn-O-Mat ( http://avr8-burn-o-mat.aaabbb.de/ ) which is a great front end to avrdude, programming an avr mc is easier than ever.
Since I have the compile environment set it is very easy for me to compile avrdude with the settings that you need, so if you want me to compile avrdude with your port settings please send me a message with the port name (lpt1, lpt2, lpt3 etc. ) and the address you need.
To see that go to system properties (right click on my computer icon and select properties)>>>hardware>>>device manager>scroll down to ports (com&lpt)>>>double click the lpt port>>>press the resources tab>>> and there you can see the lpt address and name
For example in my system it says
MosChip PCI parallel port lpt1
I/O Range E800-E807
I/O Range E480-E487
What you need is lpt1 name and E800 address