kernel32: Make win87em.dll into a stand-alone 16-bit module.

This commit is contained in:
Alexandre Julliard 2009-03-04 14:19:49 +01:00
parent e4085d75df
commit a9e81624b7
9 changed files with 43 additions and 23 deletions

1
.gitignore vendored
View File

@ -118,7 +118,6 @@ dlls/user.exe16
dlls/ver.dll16 dlls/ver.dll16
dlls/w32sys.dll16 dlls/w32sys.dll16
dlls/win32s16.dll16 dlls/win32s16.dll16
dlls/win87em.dll16
dlls/winaspi.dll16 dlls/winaspi.dll16
dlls/windebug.dll16 dlls/windebug.dll16
dlls/wineps16.drv16 dlls/wineps16.drv16

10
configure vendored
View File

@ -3912,6 +3912,7 @@ then
enable_vtdapi_vxd=${enable_vtdapi_vxd:-no} enable_vtdapi_vxd=${enable_vtdapi_vxd:-no}
enable_vwin32_vxd=${enable_vwin32_vxd:-no} enable_vwin32_vxd=${enable_vwin32_vxd:-no}
enable_w32skrnl=${enable_w32skrnl:-no} enable_w32skrnl=${enable_w32skrnl:-no}
enable_win87em_dll16=${enable_win87em_dll16:-no}
enable_winedos=${enable_winedos:-no} enable_winedos=${enable_winedos:-no}
enable_winevdm=${enable_winevdm:-no} enable_winevdm=${enable_winevdm:-no}
enable_winhelp_exe16=${enable_winhelp_exe16:-no} enable_winhelp_exe16=${enable_winhelp_exe16:-no}
@ -27083,6 +27084,14 @@ ALL_MAKEFILE_DEPENDS="$ALL_MAKEFILE_DEPENDS
dlls/w32skrnl/Makefile: dlls/w32skrnl/Makefile.in dlls/Makedll.rules" dlls/w32skrnl/Makefile: dlls/w32skrnl/Makefile.in dlls/Makedll.rules"
ac_config_files="$ac_config_files dlls/w32skrnl/Makefile" ac_config_files="$ac_config_files dlls/w32skrnl/Makefile"
ALL_MAKEFILES="$ALL_MAKEFILES \\
dlls/win87em.dll16/Makefile"
test "x$enable_win87em_dll16" != xno && ALL_DLL_DIRS="$ALL_DLL_DIRS \\
win87em.dll16"
ALL_MAKEFILE_DEPENDS="$ALL_MAKEFILE_DEPENDS
dlls/win87em.dll16/Makefile: dlls/win87em.dll16/Makefile.in dlls/Makedll.rules"
ac_config_files="$ac_config_files dlls/win87em.dll16/Makefile"
ALL_MAKEFILES="$ALL_MAKEFILES \\ ALL_MAKEFILES="$ALL_MAKEFILES \\
dlls/winealsa.drv/Makefile" dlls/winealsa.drv/Makefile"
test "x$enable_winealsa_drv" != xno && ALL_DLL_DIRS="$ALL_DLL_DIRS \\ test "x$enable_winealsa_drv" != xno && ALL_DLL_DIRS="$ALL_DLL_DIRS \\
@ -28995,6 +29004,7 @@ do
"dlls/vtdapi.vxd/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/vtdapi.vxd/Makefile" ;; "dlls/vtdapi.vxd/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/vtdapi.vxd/Makefile" ;;
"dlls/vwin32.vxd/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/vwin32.vxd/Makefile" ;; "dlls/vwin32.vxd/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/vwin32.vxd/Makefile" ;;
"dlls/w32skrnl/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/w32skrnl/Makefile" ;; "dlls/w32skrnl/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/w32skrnl/Makefile" ;;
"dlls/win87em.dll16/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/win87em.dll16/Makefile" ;;
"dlls/winealsa.drv/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/winealsa.drv/Makefile" ;; "dlls/winealsa.drv/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/winealsa.drv/Makefile" ;;
"dlls/wineaudioio.drv/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/wineaudioio.drv/Makefile" ;; "dlls/wineaudioio.drv/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/wineaudioio.drv/Makefile" ;;
"dlls/winecoreaudio.drv/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/winecoreaudio.drv/Makefile" ;; "dlls/winecoreaudio.drv/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/winecoreaudio.drv/Makefile" ;;

View File

@ -149,6 +149,7 @@ then
enable_vtdapi_vxd=${enable_vtdapi_vxd:-no} enable_vtdapi_vxd=${enable_vtdapi_vxd:-no}
enable_vwin32_vxd=${enable_vwin32_vxd:-no} enable_vwin32_vxd=${enable_vwin32_vxd:-no}
enable_w32skrnl=${enable_w32skrnl:-no} enable_w32skrnl=${enable_w32skrnl:-no}
enable_win87em_dll16=${enable_win87em_dll16:-no}
enable_winedos=${enable_winedos:-no} enable_winedos=${enable_winedos:-no}
enable_winevdm=${enable_winevdm:-no} enable_winevdm=${enable_winevdm:-no}
enable_winhelp_exe16=${enable_winhelp_exe16:-no} enable_winhelp_exe16=${enable_winhelp_exe16:-no}
@ -2217,6 +2218,7 @@ WINE_CONFIG_MAKEFILE([dlls/vnetbios.vxd/Makefile],[dlls/Makedll.rules],[dlls],[A
WINE_CONFIG_MAKEFILE([dlls/vtdapi.vxd/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([dlls/vtdapi.vxd/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
WINE_CONFIG_MAKEFILE([dlls/vwin32.vxd/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([dlls/vwin32.vxd/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
WINE_CONFIG_MAKEFILE([dlls/w32skrnl/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([dlls/w32skrnl/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
WINE_CONFIG_MAKEFILE([dlls/win87em.dll16/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
WINE_CONFIG_MAKEFILE([dlls/winealsa.drv/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([dlls/winealsa.drv/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
WINE_CONFIG_MAKEFILE([dlls/wineaudioio.drv/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([dlls/wineaudioio.drv/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
WINE_CONFIG_MAKEFILE([dlls/winecoreaudio.drv/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([dlls/winecoreaudio.drv/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])

View File

@ -57,7 +57,6 @@ WIN16_FILES = \
ver.dll16 \ ver.dll16 \
w32sys.dll16 \ w32sys.dll16 \
win32s16.dll16 \ win32s16.dll16 \
win87em.dll16 \
winaspi.dll16 \ winaspi.dll16 \
windebug.dll16 \ windebug.dll16 \
wineps16.drv16 \ wineps16.drv16 \
@ -90,7 +89,7 @@ dispdib.dll16 gdi.exe16 wing.dll16:
imm.dll16: imm.dll16:
echo "imm32.dll" >$@ echo "imm32.dll" >$@
comm.drv16 krnl386.exe16 system.drv16 toolhelp.dll16 win87em.dll16 windebug.dll16: comm.drv16 krnl386.exe16 system.drv16 toolhelp.dll16 windebug.dll16:
echo "kernel32.dll" >$@ echo "kernel32.dll" >$@
lzexpand.dll16: lzexpand.dll16:

View File

@ -14,7 +14,6 @@ SPEC_SRCS16 = \
krnl386.exe.spec \ krnl386.exe.spec \
system.drv.spec \ system.drv.spec \
toolhelp.spec \ toolhelp.spec \
win87em.spec \
windebug.spec windebug.spec
C_SRCS = \ C_SRCS = \
@ -78,8 +77,7 @@ C_SRCS16 = \
error16.c \ error16.c \
kernel16.c \ kernel16.c \
registry16.c \ registry16.c \
toolhelp16.c \ toolhelp16.c
win87em.c
RC_SRCS = kernel.rc RC_SRCS = kernel.rc

View File

@ -1,4 +0,0 @@
1 pascal -register _fpMath() WIN87_fpmath
3 pascal -ret16 __WinEm87Info(ptr word) WIN87_WinEm87Info
4 pascal -ret16 __WinEm87Restore(ptr word) WIN87_WinEm87Restore
5 pascal -ret16 __WinEm87Save(ptr word) WIN87_WinEm87Save

View File

@ -0,0 +1,15 @@
TOPSRCDIR = @top_srcdir@
TOPOBJDIR = ../..
SRCDIR = @srcdir@
VPATH = @srcdir@
MODULE = win87em.dll16
IMPORTS = kernel32
EXTRADLLFLAGS = -Wb,--subsystem,win16
SPEC_SRCS = win87em.dll16.spec
C_SRCS = win87em.c
@MAKE_DLL_RULES@
@DEPENDENCIES@ # everything below this line is overwritten by make depend

View File

@ -57,7 +57,7 @@ static WORD StackTop = 175;
static WORD StackBottom = 0; static WORD StackBottom = 0;
static WORD Inthandler02hVar = 1; static WORD Inthandler02hVar = 1;
static void WIN87_ClearCtrlWord( CONTEXT86 *context ) static void WIN87_ClearCtrlWord( CONTEXT *context )
{ {
context->Eax &= ~0xffff; /* set AX to 0 */ context->Eax &= ~0xffff; /* set AX to 0 */
if (Installed) if (Installed)
@ -69,7 +69,7 @@ static void WIN87_ClearCtrlWord( CONTEXT86 *context )
StatusWord_3 = StatusWord_2 = 0; StatusWord_3 = StatusWord_2 = 0;
} }
static void WIN87_SetCtrlWord( CONTEXT86 *context ) static void WIN87_SetCtrlWord( CONTEXT *context )
{ {
CtrlWord_1 = LOWORD(context->Eax); CtrlWord_1 = LOWORD(context->Eax);
context->Eax &= ~0x00c3; context->Eax &= ~0x00c3;
@ -82,7 +82,7 @@ static void WIN87_SetCtrlWord( CONTEXT86 *context )
CtrlWord_2 = LOWORD(context->Eax); CtrlWord_2 = LOWORD(context->Eax);
} }
static void WIN87_Init( CONTEXT86 *context ) static void WIN87_Init( CONTEXT *context )
{ {
if (Installed) { if (Installed) {
#ifdef __i386__ #ifdef __i386__
@ -99,12 +99,11 @@ static void WIN87_Init( CONTEXT86 *context )
/*********************************************************************** /***********************************************************************
* _fpMath (WIN87EM.1) * _fpMath (WIN87EM.1)
*/ */
void WINAPI WIN87_fpmath( CONTEXT86 *context ) void WINAPI _fpMath( CONTEXT *context )
{ {
TRACE("(cs:eip=%x:%x es=%x bx=%04x ax=%04x dx=%04x)\n", TRACE("(cs:eip=%04x:%04x es=%04x bx=%04x ax=%04x dx=%04x)\n",
(WORD)context->SegCs, context->Eip, context->SegCs, context->Eip, context->SegEs, context->Ebx,
(WORD)context->SegEs, (WORD)context->Ebx, context->Eax, context->Edx );
(WORD)context->Eax, (WORD)context->Edx );
switch(LOWORD(context->Ebx)) switch(LOWORD(context->Ebx))
{ {
@ -224,8 +223,7 @@ void WINAPI WIN87_fpmath( CONTEXT86 *context )
/*********************************************************************** /***********************************************************************
* __WinEm87Info (WIN87EM.3) * __WinEm87Info (WIN87EM.3)
*/ */
void WINAPI WIN87_WinEm87Info(struct Win87EmInfoStruct *pWIS, void WINAPI __WinEm87Info(struct Win87EmInfoStruct *pWIS, int cbWin87EmInfoStruct)
int cbWin87EmInfoStruct)
{ {
FIXME("(%p,%d), stub !\n",pWIS,cbWin87EmInfoStruct); FIXME("(%p,%d), stub !\n",pWIS,cbWin87EmInfoStruct);
} }
@ -233,8 +231,7 @@ void WINAPI WIN87_WinEm87Info(struct Win87EmInfoStruct *pWIS,
/*********************************************************************** /***********************************************************************
* __WinEm87Restore (WIN87EM.4) * __WinEm87Restore (WIN87EM.4)
*/ */
void WINAPI WIN87_WinEm87Restore(void *pWin87EmSaveArea, void WINAPI __WinEm87Restore(void *pWin87EmSaveArea, int cbWin87EmSaveArea)
int cbWin87EmSaveArea)
{ {
FIXME("(%p,%d), stub !\n", FIXME("(%p,%d), stub !\n",
pWin87EmSaveArea,cbWin87EmSaveArea); pWin87EmSaveArea,cbWin87EmSaveArea);
@ -243,7 +240,7 @@ void WINAPI WIN87_WinEm87Restore(void *pWin87EmSaveArea,
/*********************************************************************** /***********************************************************************
* __WinEm87Save (WIN87EM.5) * __WinEm87Save (WIN87EM.5)
*/ */
void WINAPI WIN87_WinEm87Save(void *pWin87EmSaveArea, int cbWin87EmSaveArea) void WINAPI __WinEm87Save(void *pWin87EmSaveArea, int cbWin87EmSaveArea)
{ {
FIXME("(%p,%d), stub !\n", FIXME("(%p,%d), stub !\n",
pWin87EmSaveArea,cbWin87EmSaveArea); pWin87EmSaveArea,cbWin87EmSaveArea);

View File

@ -0,0 +1,4 @@
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