http://bugs.winehq.org/show_bug.cgi?id=58963
Bug ID: 58963 Summary: Stratego (1997) fails to start Product: Wine Version: 10.18 Hardware: x86-64 URL: https://archive.org/details/STRATEGO OS: MacOS Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@list.winehq.org Reporter: tobbi.bugs@googlemail.com CC: jeremielapuree@yahoo.fr, z.figura12@gmail.com
Created attachment 79665 --> http://bugs.winehq.org/attachment.cgi?id=79665 log with bidi and font channels enabled
+++ This bug was initially created as a clone of Bug #58942 +++ ** NOTE: ** I created this bug because I was asked to create a separate bug for the issue that occurs while starting the game. See https://bugs.winehq.org/show_bug.cgi?id=58942#c8
% wine --version wine-10.18
% openssl sha256 STRATEGO.iso SHA2-256(STRATEGO.iso)= e82340b5e23554618dfe406c102ca2a793b34e49723e921e5cc6a5911a9867e1
I'm trying to install Stratego from here: https://archive.org/details/STRATEGO
Steps to reproduce: 1. Download the ISO and mount it on your system. 2. Change the configuration options of Wine to map E: to the path where the ISO image was mounted, as well as the Operating System to Windows XP (or Windows 98 - shouldn't matter) 3. Install Stratego by running the SETUP.EXE file with wine. 4. Start Stratego by running the Stratego.exe in C:/Program Files (x86)/Hasbro Interactive/Stratego/Stratego.exe
Expected Result: Stratego starts
Actual result: Error message "Unable to 'CreateScalableFontResource()'"
=== joaopa 2025-11-10 16:55:21 CET
Created attachment 79644 [details] log with bidi and font channels enabled
In the log on can read : 0128:trace:bidi:CreateScalableFontResourceW (1, L"C:\Program Files (x86)\Hasbro Interactive\Stratego\Ly2.for", L"C:\windows\system32\Ly2.ttr", (null)) ===
joaopa 2025-11-10 21:35:08 CET
in relay one can read
00b4:Call KERNEL32.HeapFree(7ffffe320000,00000000,00000000) ret=6ffffea85eba 00f4:Call KERNEL32.GetFullPathNameA(015c873c "Grfx\Ly2.enc",00000104,0022f900,0022f8d0) ret=00469a34 0034:Call ucrtbase.strchr(7ffffe3bec40 "application/x-kourse:*.course\n",0000000a) ret=14000338b 00b4:Ret KERNEL32.HeapFree() retval=00000001 ret=6ffffea85eba 00f4:Call ntdll.RtlInitAnsiString(0022f4f0,015c873c "Grfx\Ly2.enc") ret=7b613a62 0034:Ret ucrtbase.strchr() retval=7ffffe3bec5d ret=14000338b 00b4:Call KERNEL32.HeapFree(7ffffe320000,00000000,00000000) ret=6ffffea85ec7 00f4:Ret ntdll.RtlInitAnsiString() retval=0000000d ret=7b613a62 0034:Call ucrtbase.strchr(7ffffe3bec40 "application/x-kourse:*.course",0000003a) ret=140003417 00b4:Ret KERNEL32.HeapFree() retval=00000001 ret=6ffffea85ec7 00f4:Call ntdll.RtlAnsiStringToUnicodeString(7ffc2bf8,0022f4f0,00000000) ret=7b613aae 0034:Ret ucrtbase.strchr() retval=7ffffe3bec54 ret=140003417 00b4:Ret ucrtbase._wcsicmp() retval=00000003 ret=6ffffb9e64d2 00f4:Ret ntdll.RtlAnsiStringToUnicodeString() retval=00000000 ret=7b613aae 0034:Call ucrtbase.malloc(00000020) ret=14000342f 00b4:Call ucrtbase._wcsicmp(7fffff2fe080 L"Strings",7ffffe3ce62a L"DestinationDirs") ret=6ffffb9e64d2 00f4:Call ntdll.RtlGetFullPathName_U(7ffc2c00 L"Grfx\Ly2.enc",00000208,0022f528,0022f524) ret=7b5c5dc3
but I do not know what it means.
but Ly2.for and Ly2.ttr don't exist. That is surely the culprit ===
Tobias (:Tobbi) Markus 2025-11-10 22:02:59 CET
I just got myself a complete WINEDEBUG=+all log.
I noticed the following line there:
678335.510:00d4:00d8:trace:file:NtCreateFile handle=0x1001ff3f8 access=80100080 name=L"\??\C:\Program Files (x86)\Hasbro Interactive\Stratego\Ly2.for" objattr=00000040 root=0x0 sec=0x0 io=0x1001ff400 alloc_size=0x0 attr=00000080 sharing=00000000 disp=1 options=00000060 ea=0x0.0x00000000
It looks like the application is creating the file itself, but failing. I'll upload the log in a few.
=== Tobias (:Tobbi) Markus 2025-11-11 00:53:32 CET
I have tried Stratego on an old Windows XP VM, where it works.
===
Tobias (:Tobbi) Markus 2025-11-11 17:44:49 CET I just created a batch file that continuously prints the contents of the "C:/Program Files/Hasbro Interactive/Stratego" directory and I noticed that, indeed, the Ly2.for file is created after the application started and removed again on exit:
``` :loop dir "C:/Programme/Hasbro Interactive/Stratego" ping -n 6 127.0.0.1 > nul goto loop ```
(In case you're wondering, the ping command is to imitate a "sleep for 5 seconds, so you don't get overwhelmed with messages").