otya128 / winevdm

16-bit Windows (Windows 1.x, 2.x, 3.0, 3.1, etc.) on 64-bit Windows
GNU General Public License v2.0
2.59k stars 148 forks source link

Fix for Sierra installers #1207

Open BEENNath58 opened 1 year ago

BEENNath58 commented 1 year ago

Many Sierra installers have issues running with OTVDM. Some examples can be Power Chess 96, Leisure Suit Larry 7, 3D Ultra Pinball Creep Night, Rama, etc.

Although modern 32-bit installers exist for some popular games, they don't exist for the others. So, I believe it could be good if this bug can be fixed.

cracyc commented 1 year ago

The sierra.ini file needs to be moved from winevdm windows dir to the machine windows dir. Winevdm can't predict whether the installed program is a win16 one or win32 one so I don't know of a sane way to make this work automatically.

ks202005 commented 1 year ago

3D Ultra Pinball (the original release) also has this issue.

The sierra.ini file needs to be moved from winevdm windows dir to the machine windows dir.

What do you mean exactly? In my case, I'm running the SETUP.EXE straight from a mounted ISO disc image.

cracyc commented 1 year ago

What is the problem you are seeing? If it's the hang on the cdrom test, just skip the machine tests when it asks. If the game shows an error after install move the sierra.ini file from the \windows directory to the c:\windows directory.

BEENNath58 commented 1 year ago

Hi. There are different types of problems actually. Most of the installers start and don't display on the screen. An example is Power Chess 96, the sound will play, and the icon appears on Taskbar but there's no window. However, the newer Power Chess 98 setup displays and runs properly.

cracyc commented 1 year ago

I tried 3d pinball creep and lsl7 and the screen appears for both. They also install except the cdrom test fails (can be skipped) and sierra.ini is in the wrong place.

BEENNath58 commented 1 year ago

I am aware of the SIERRA.INI transfer to run the game and the divide by 0 error in CD-ROM check, but they aren't the problems. This the actual problem I am seeing:

https://user-images.githubusercontent.com/64649734/196356096-b6fe9d76-298c-410a-8ca7-8e6170f46d73.mp4

cracyc commented 1 year ago

It's likely that the window is appearing offscreen so you can try setting 640x480 compatibility otherwise a trace is needed.

BEENNath58 commented 1 year ago

It's likely that the window is appearing offscreen so you can try setting 640x480 compatibility otherwise a trace is needed.

Yes I tried all the settings I can put (640x480 ode, 8 or 16 bit color, admin privileges) but they didn't help. Can you tell how to create a trace?

cracyc commented 1 year ago

https://github.com/otya128/winevdm/issues/226#issuecomment-779702542

BEENNath58 commented 1 year ago

#226 (comment)

Here is the trace: trace.txt

cracyc commented 1 year ago

From your trace:

0fa4:Call USER.452: CREATEWINDOWEX(00000000,13074f52 "Afx:2203:1266:5:1416",1307007b "Sierra On-Line Setup",01cc0000,0780,0000,0000,0438,0000,0000,1306,00000000) ret=12df:924d ds=1307

This means the window is appearing at 1920x0 with size 0x1280, so offscreen to the right with 0 height.

On my computer for comparison:

2578:Call USER.452: CREATEWINDOWEX(00000000,12f74f52 "Afx:2203:1256:5:140e",12f7007b "Sierra On-Line Setup",01cc0000,0000,0000,0dfe,05a0,0000,0000,12f7,00000000) ret=12cf:924d ds=12f7

It appears to be positioning the window based on where the taskbar (Shell_TrayWnd) so it doesn't cover it up. Windows 11 may mess up the calculation.

BEENNath58 commented 1 year ago

What is the solution/workaround then...?

sastofficial commented 1 year ago

Trying to install half-life (1999 release) and it doesnt work either (dont tell me to use steam i already have it on steam i wanna try the old version)

cracyc commented 1 year ago

Need a trace to be certain it's the same problem.

Froakiein2022 commented 1 month ago

While I was trying to install CyberGladiators (which is a Sierra game), the installer plays sound and the Sierra icon displays on the taskbar, but the installer window itself doesn't display.

Here's the trace: trace.txt

cracyc commented 1 month ago

This is the same problem. It doesn't happen for me so I can only guess. Try uncommenting WINVER=3.1 in your otvdm.ini file.

Froakiein2022 commented 1 month ago

This is the same problem. It doesn't happen for me so I can only guess. Try uncommenting WINVER=3.1 in your otvdm.ini file.

Uncommenting WINVER=3.1 in your otvdm.ini file solved that problem. Thanks.