That was going to be my suggestion.
Just as in the good old non-LBA days, BIOS limitations are lots of fun.
Old systems such as 486's tend to have a limitation of 512mb (well 53-something if you wanna be exact), which was overcome by Logical Block Addressing,
Lots of older pentium (and even pentium-II) class systems had an 8gb limit, I believe this was also a limit on the # of cylinders...
And more recently, there is a 32gb limitation on a handful of systems. IBM's capacity-limiting jumper lets you use the drive without an overlay, but removing that jumper still wont let the BIOS see all of it - if the BIOS has that limitation.
A drive overlay such as Ontrack Disk Manager would overcome the limitation, like IBM's documentation says - but they dont tell you how difficult it can be to keep your data...
If you take the drive out, create a 40gb partition on another machine, then put it back in, you OS will actually see the whole 40gb, though the BIOS wont. That's the easiest way to do it, but if you ever try to re-create the partitions, you'll need another machine again.
If you use disk manager to install an overlay onto the drive, it'll do it in one of 2 ways. A) it'll read the drive settings directly from the firmware, and create a 40gb partition.
or B) it'll change the drive settings in the firmware to what your BIOS supports, and then use an overlay to control access to the drive, making it appear to the system as a 40gb (with the proper drive settings, not what the BIOS is being told it is).
Partition magic will NOT work with the partition if it's got an overlay installed - neither will programs like Boot-It. They'll most likely report a partition error.
Norton (symantec) Ghost also will not work with it - neither reading from nor writing to. Ok well it MIGHT work, but i've never been able to get it to.
Try a BIOS update 😉