You don't say which Linux distro you want to install, but some of them have very good partitioning tools in their installers (much better than Partition Magic for this task). If you are installing Mandriva or SUSE, just let the installer do its job, it will pick up the Windows partition, resize it to make room for Linux and set things up so you can read your Windows partition for Linux.
If you are installing another distro, you may need to boot from something like Knoppix first and use QTparted to resize your Windows partition.
Whichever way you do it, you should have Windows installed first and add Linux after. This works much better than installing Windows after Linux, which at best kills the Linux bootloader.
"Insanity: doing the same thing over and over again and expecting different results." (Albert Einstein)