http://bugs.winehq.org/show_bug.cgi?id=5711
------- Additional Comments From dank@kegel.com 2006-23-07 19:22 ------- OK. Here's a bit more data. I'm attaching a test program, hello.asm, which calls int 21h, ah=36h, dl=0, and am posting an improved patch which has a bit less magic in it, and comes closer to the output from XP.
Here's a table of results on both XP and wine with (new) and without my new patch (old):
OS size free int21/ah=36 results XP 78GB 8GB ax 007F bx 0F69 cx 0200 dx 3D83 c: XP 186GB 156GB ax 007F bx 3D83 cx 0200 dx 3D83 g: old 101MB 88MB ax 0002 bx AAE6 cx 0400 dx C578 new 101MB 88MB ax 007F bx 0561 cx 0200 dx 0637 old 19GB 953MB ax 0020 bx 6F2E cx 1000 dx F61C new 19GB 953MB ax 007F bx 3D83 cx 0200 dx 3D83
Why XP is only reporting 7f * f69 * 200 = 256MB for the drive with 8GB free, I'll never know. Maybe there's a lower limit on C: for some reason.
Anyway, my new patch faithfully reproduces the 3d83 cluster limit without kludges and without danger of overflow, I think.