[PATCH 0/1] MR7863: win87em: Fix __FPMATH symbol name
Windows 3.0, Windows 3.1 and Windows 95 have library WIN87EM.DLL with symbol name __FPMATH, not with _FPMATH. So fix the __FPMATH symbol name. This change fixes running Windows 3.0 CALC.EXE application, which imports WIN87EM.DLL symbols by name. Without this change the CALC.EXE fails on: "No implementation for WIN87EM.__FPMATH, setting to 0xdeadbeef" Other Windows application, including Windows 3.1+ CALC.EXE application, import WIN87EM.DLL symbols by ordinals, so are not affected by this issue. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/7863
From: Pali Rohár <pali(a)kernel.org> Windows 3.0, Windows 3.1 and Windows 95 have library WIN87EM.DLL with symbol name __FPMATH, not with _FPMATH. So fix the __FPMATH symbol name. This change fixes running Windows 3.0 CALC.EXE application, which imports WIN87EM.DLL symbols by name. Without this change the CALC.EXE fails on: "No implementation for WIN87EM.__FPMATH, setting to 0xdeadbeef" Other Windows application, including Windows 3.1+ CALC.EXE application, import WIN87EM.DLL symbols by ordinals, so are not affected by this issue. Signed-off-by: Pali Rohár <pali(a)kernel.org> --- dlls/win87em.dll16/win87em.c | 4 ++-- dlls/win87em.dll16/win87em.dll16.spec | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dlls/win87em.dll16/win87em.c b/dlls/win87em.dll16/win87em.c index 9a0029b98e9..883d3c1feb3 100644 --- a/dlls/win87em.dll16/win87em.c +++ b/dlls/win87em.dll16/win87em.c @@ -97,9 +97,9 @@ static void WIN87_Init( CONTEXT *context ) } /*********************************************************************** - * _fpMath (WIN87EM.1) + * __fpMath (WIN87EM.1) */ -void WINAPI _fpMath( CONTEXT *context ) +void WINAPI __fpMath( CONTEXT *context ) { TRACE("(cs:eip=%04lx:%04lx es=%04lx bx=%04lx ax=%04lx dx=%04lx)\n", context->SegCs, context->Eip, context->SegEs, context->Ebx, diff --git a/dlls/win87em.dll16/win87em.dll16.spec b/dlls/win87em.dll16/win87em.dll16.spec index 0b9024c2d22..dbd1af3da7c 100644 --- a/dlls/win87em.dll16/win87em.dll16.spec +++ b/dlls/win87em.dll16/win87em.dll16.spec @@ -1,4 +1,4 @@ -1 pascal -register _fpMath() _fpMath +1 pascal -register __fpMath() __fpMath 3 pascal -ret16 __WinEm87Info(ptr word) __WinEm87Info 4 pascal -ret16 __WinEm87Restore(ptr word) __WinEm87Restore 5 pascal -ret16 __WinEm87Save(ptr word) __WinEm87Save -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/7863
participants (1)
-
Pali Rohár