Just to clarify:
Are you saying that the maximum size of your drive is 10GB instead of 20GB
or are you saying that you have only 10GB free on your 20GB drive?
If the maximum size of your drive is 10GB instead of 20GB:
Goto Start->Run and enter compmgmt.msc - This should open the Computer
Management snap-in.
Then navigate your way to Storage->Disk Management - This will show you the
partitioning of your drive.
Select the appropriate disk and check to see if the partition in question
(eg. C

is using the entire disk or only half.
If the partition is using the entire disk then windows is not seeing your
drive as a 20GB drive. Make sure it is actually a 20GB drive first.
If the partition is using half the disk then you'll need to find some
software capable of resizing the partition without dataloss or re-install XP
(fix the partitioning during setup).
http://www.terabyteunlimited.com/bootitng.html can help you in resizing...no
need to purchase or install it, you can use the trial period from a floppy
to get what you need done (personally, I purchased it and use it for all my
partitioning needs). Note: I am not affiliated with TeraByte Unlimited in
any way, it's just the software I know

There are others out there.
Hope this helps,
Chris