http://bugs.winehq.org/show_bug.cgi?id=5711
Summary: Lotus Smartsuite 3.1 installer fails early with "insufficient disk space" Product: Wine Version: CVS Platform: Other URL: http://www.retrosoftware.com/12699.html OS/Version: other Status: NEW Severity: normal Priority: P2 Component: wine-dos AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
A user handed me his 12 year old Lotus Smartsuite 3.1 disk, said "I have lots of Lotus 123 r5 spreadsheets that only this version of Lotus can read. Can you get this to run in Linux?" So I gave it a shot. Its installer aborted with "Insufficient disk space", which was not quite accurate, as I have 1.7GB free. +relay showed:
000a:Call KERNEL.102: DOS3CALL() ret=11d7:1588 ds=11de AX=3600 BX=0002 CX=0860 DX=0003 SI=000a DI=0000 ES=11df EFL=00000246 000a:Call winedos.CallBuiltinHandler(7f2ddd6c,00000021) ret=7fd2c63d 000a:Call kernel32.GetDriveTypeW(7f2dd4fa L"C:") ret=7f540ff3 ... 000a:Call kernel32.GetDiskFreeSpaceW(7f2dd658 L"C:\",7f2ddab0,7f2ddab4,7f2ddabc,7f2ddab8) ret=7f546985 ... 000a:Ret kernel32.GetDiskFreeSpaceW() retval=00000001 ret=7f546985 000a:Ret winedos.CallBuiltinHandler() retval=00001000 ret=7fd2c63d 000a:Ret KERNEL.102: DOS3CALL() retval=none ret=11d7:1588 ds=11de AX=0080 BX=0465 CX=1000 DX=92b3 SI=000a DI=0000 ES=11df EFL=00000246 ... 000a:Call USER.421: WVSPRINTF(11de:419c,11de4098 "Insufficient disk space",11df:1802) ret=11d7:0a4e ds=11de
On return, int 21h ah=36h has: AX = sectors per cluster BX = number of available clusters CX = number of bytes per sector DX = number of clusters per drive
That value for CX seems really high, btw. By trial and error, I found that the app was happy when I reported 1GB of free space with a reasonable CX, so I coded up a patch that returns that if real free space is over 1GB, and it lets the app install. I'll attach that next.
The installer has heap and dde problems later which make for a rough ride, but it does seem to finish successfully. It then fails to run because of a problem loading module 'SOUND', but that's bug 3950.