You are most likely going to need Partition Magic. I believe that PM is capable of resizing NTFS partitions. The XP Disk Manager utility will not allow you to resize NTFS partitions, so, like everything else M$, you are going to have to use a third party utility. You can check here:
http://www.powerquest.com and see if they have a demo version.
Your other alternative, and I haven't tried this yet, but I have heard about it, is to grab a copy of Knoppix Linux (it is a live version that runs off of CD...great uility for recovery and these sorts of things), and run it in expert mode, making use of the qtparted utility. I have heard that they have included qtparted on their latest release, but, like I said, I have never used it before.
Either way, after you resize your NT drive to 20 GByou make your partitioning scheme look like this:
|--------NTFS------------|-------ext3(linux /)------|--swap--|
/dev/hda1 = NTFS (20GB)
/dev/hda2 = ext3 linux / (19.5GB)
/dev/hda5 = linux swap (256MB or 2x the amount of RAM)
If you are on a newer PC, you probably don't need to make a /boot partition, since your bios will be relatively new, and you can boot from any cyllinder. /boot is mainly for older systems whose BIOS does not support booting above cyllinder 1024. Then you just install Lilo into the / of the linux partition (/dev/hda2 in this case) when the installation menu asks you.
You should also try to convert your NTFS drive to FAT32. In Linux, there is no write support (yet) for NTFS, only read support. You will be able to mount your windows drive, and look at your files, but you not be able to modify them in any way. I believe that you can convert the drive in Partition Magic.
Hope that helps...