I believe that this is a very very very old issue. It would be either:
a.) You're running Windows XP Sp1 or older. < Get Service Pack 2
b.) Your bios version is very old. < Update your BIOS
c.) You got a jumper in the 'limit capacity' jumper on the hard disk. < Read the label on the hdisk and remove the jumper cap if it is in the limit capacity jumper.
Swap File and formatting also takes up space, but it shouldn't take up that much space. You might also need to reinstall with a slipstreamed XP boot disk, or use SeaTools, UBCD to format the drive before installing. You could also have a defective HDD, but unlikely.
i just updated to windows xp sp 2 and it still says 127 gb
Right click on My Computer and click on Manage. Click on Disk Management and look at the drive graphic. If you see a black area that says unallocated space then right click on it and create a partition and format it.
If you format the unallocated space, after the format, you'd have another drive on 'My Computer'. The data on the other partition wouldn't be affected. (Just be sure that you did select the blank one and not the one with your data.)
If you do want to consolidate the drive and make it appear it as only one:
You have to backup all the data from the drive. Then delete both partitions so you'd then get a big chunk of unallocated space. Format that and you'd get a single 250GB drive.
Some possible benefits of two drives (well really depends on person or usage):
1. You could resize one partition without needing to remove or backup the other partition.
2. You don't need to backup the whole drive if you want to format one.
3. You could run the Disk Defragmenter only on the drive that you move data often. (Though if you have Diskeeper Pro and set to defragment on screensaver you wouldn't be running a manual defrag that often anyway).
4. You're a bit of a neat freak and you like to define where a set of data goes (music, data, video, games and other programs).
Of course if you're simply going to use the disk to dump your big torrent downloads, you'd be better off with one drive as you'd usually find yourself transferring from partition A to B because one is already out of space.
If you need to reload XP then you can move your data to the D: partition and it won't be affected. If you have an HP or other OEM with the hidden restore partition then it will repartition the drive to one large partition and you will loose the D: partition and all of the data on it as well. Just something to be aware of. Another good reason for a D: partition is that you can get backup software and create an image of C:, so that you can restore it in the event of a virus or corruption. Backup software needs a separate drive or partition to backup to.
Edit: The most important reason to have a D: partition is because it is considerably easier then wiping your drive, slipstreaming SP2 on to a CD, and reloading the entire thing all over again. Just set up the other partition and get on with your life.