Free partitioning software?

his problem is that he wants to save his windows partition which is already taking up his whole hard drive. he needs to re-size it first, then create a new one for linux on the free space which you cant do with fdisk or the installer. the only program i know that does that is partition magic