user32: Make keyboard.drv into a stand-alone 16-bit module.

This commit is contained in:
Alexandre Julliard 2009-03-04 14:30:37 +01:00
parent 02ada6e477
commit c2e52469fe
8 changed files with 43 additions and 35 deletions

1
.gitignore vendored
View File

@ -41,7 +41,6 @@ dlls/kernel32/nls/winerr_enu.mc.rc
dlls/kernel32/nls/winerr_fra.mc.rc dlls/kernel32/nls/winerr_fra.mc.rc
dlls/kernel32/nls/winerr_kor.mc.rc dlls/kernel32/nls/winerr_kor.mc.rc
dlls/kernel32/nls/winerr_nor.mc.rc dlls/kernel32/nls/winerr_nor.mc.rc
dlls/keyboard.drv16
dlls/krnl386.exe16 dlls/krnl386.exe16
dlls/libd3dx9.def dlls/libd3dx9.def
dlls/libwinspool.def dlls/libwinspool.def

10
configure vendored
View File

@ -3905,6 +3905,7 @@ then
enable_dispdib_dll16=${enable_dispdib_dll16:-no} enable_dispdib_dll16=${enable_dispdib_dll16:-no}
enable_display_drv16=${enable_display_drv16:-no} enable_display_drv16=${enable_display_drv16:-no}
enable_ifsmgr_vxd=${enable_ifsmgr_vxd:-no} enable_ifsmgr_vxd=${enable_ifsmgr_vxd:-no}
enable_keyboard_drv16=${enable_keyboard_drv16:-no}
enable_mmdevldr_vxd=${enable_mmdevldr_vxd:-no} enable_mmdevldr_vxd=${enable_mmdevldr_vxd:-no}
enable_monodebg_vxd=${enable_monodebg_vxd:-no} enable_monodebg_vxd=${enable_monodebg_vxd:-no}
enable_stress_dll16=${enable_stress_dll16:-no} enable_stress_dll16=${enable_stress_dll16:-no}
@ -25616,6 +25617,14 @@ ALL_MAKEFILE_DEPENDS="$ALL_MAKEFILE_DEPENDS
dlls/kernel32/tests/Makefile: dlls/kernel32/tests/Makefile.in dlls/Maketest.rules" dlls/kernel32/tests/Makefile: dlls/kernel32/tests/Makefile.in dlls/Maketest.rules"
ac_config_files="$ac_config_files dlls/kernel32/tests/Makefile" ac_config_files="$ac_config_files dlls/kernel32/tests/Makefile"
ALL_MAKEFILES="$ALL_MAKEFILES \\
dlls/keyboard.drv16/Makefile"
test "x$enable_keyboard_drv16" != xno && ALL_DLL_DIRS="$ALL_DLL_DIRS \\
keyboard.drv16"
ALL_MAKEFILE_DEPENDS="$ALL_MAKEFILE_DEPENDS
dlls/keyboard.drv16/Makefile: dlls/keyboard.drv16/Makefile.in dlls/Makedll.rules"
ac_config_files="$ac_config_files dlls/keyboard.drv16/Makefile"
ALL_MAKEFILES="$ALL_MAKEFILES \\ ALL_MAKEFILES="$ALL_MAKEFILES \\
dlls/loadperf/Makefile" dlls/loadperf/Makefile"
test "x$enable_loadperf" != xno && ALL_DLL_DIRS="$ALL_DLL_DIRS \\ test "x$enable_loadperf" != xno && ALL_DLL_DIRS="$ALL_DLL_DIRS \\
@ -28856,6 +28865,7 @@ do
"dlls/jscript/tests/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/jscript/tests/Makefile" ;; "dlls/jscript/tests/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/jscript/tests/Makefile" ;;
"dlls/kernel32/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/kernel32/Makefile" ;; "dlls/kernel32/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/kernel32/Makefile" ;;
"dlls/kernel32/tests/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/kernel32/tests/Makefile" ;; "dlls/kernel32/tests/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/kernel32/tests/Makefile" ;;
"dlls/keyboard.drv16/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/keyboard.drv16/Makefile" ;;
"dlls/loadperf/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/loadperf/Makefile" ;; "dlls/loadperf/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/loadperf/Makefile" ;;
"dlls/localspl/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/localspl/Makefile" ;; "dlls/localspl/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/localspl/Makefile" ;;
"dlls/localspl/tests/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/localspl/tests/Makefile" ;; "dlls/localspl/tests/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/localspl/tests/Makefile" ;;

View File

@ -142,6 +142,7 @@ then
enable_dispdib_dll16=${enable_dispdib_dll16:-no} enable_dispdib_dll16=${enable_dispdib_dll16:-no}
enable_display_drv16=${enable_display_drv16:-no} enable_display_drv16=${enable_display_drv16:-no}
enable_ifsmgr_vxd=${enable_ifsmgr_vxd:-no} enable_ifsmgr_vxd=${enable_ifsmgr_vxd:-no}
enable_keyboard_drv16=${enable_keyboard_drv16:-no}
enable_mmdevldr_vxd=${enable_mmdevldr_vxd:-no} enable_mmdevldr_vxd=${enable_mmdevldr_vxd:-no}
enable_monodebg_vxd=${enable_monodebg_vxd:-no} enable_monodebg_vxd=${enable_monodebg_vxd:-no}
enable_stress_dll16=${enable_stress_dll16:-no} enable_stress_dll16=${enable_stress_dll16:-no}
@ -2038,6 +2039,7 @@ WINE_CONFIG_MAKEFILE([dlls/jscript/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DL
WINE_CONFIG_MAKEFILE([dlls/jscript/tests/Makefile],[dlls/Maketest.rules],[dlls],[ALL_TEST_DIRS],[enable_tests]) WINE_CONFIG_MAKEFILE([dlls/jscript/tests/Makefile],[dlls/Maketest.rules],[dlls],[ALL_TEST_DIRS],[enable_tests])
WINE_CONFIG_MAKEFILE([dlls/kernel32/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([dlls/kernel32/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
WINE_CONFIG_MAKEFILE([dlls/kernel32/tests/Makefile],[dlls/Maketest.rules],[dlls],[ALL_TEST_DIRS],[enable_tests]) WINE_CONFIG_MAKEFILE([dlls/kernel32/tests/Makefile],[dlls/Maketest.rules],[dlls],[ALL_TEST_DIRS],[enable_tests])
WINE_CONFIG_MAKEFILE([dlls/keyboard.drv16/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
WINE_CONFIG_MAKEFILE([dlls/loadperf/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([dlls/loadperf/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
WINE_CONFIG_MAKEFILE([dlls/localspl/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([dlls/localspl/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS])
WINE_CONFIG_MAKEFILE([dlls/localspl/tests/Makefile],[dlls/Maketest.rules],[dlls],[ALL_TEST_DIRS],[enable_tests]) WINE_CONFIG_MAKEFILE([dlls/localspl/tests/Makefile],[dlls/Maketest.rules],[dlls],[ALL_TEST_DIRS],[enable_tests])

View File

@ -26,7 +26,6 @@ WIN16_FILES = \
ddeml.dll16 \ ddeml.dll16 \
gdi.exe16 \ gdi.exe16 \
imm.dll16 \ imm.dll16 \
keyboard.drv16 \
krnl386.exe16 \ krnl386.exe16 \
lzexpand.dll16 \ lzexpand.dll16 \
mmsystem.dll16 \ mmsystem.dll16 \
@ -121,7 +120,7 @@ shell.dll16:
twain.dll16: twain.dll16:
echo "twain_32.dll" >$@ echo "twain_32.dll" >$@
ddeml.dll16 keyboard.drv16 mouse.drv16 user.exe16: ddeml.dll16 mouse.drv16 user.exe16:
echo "user32.dll" >$@ echo "user32.dll" >$@
ver.dll16: ver.dll16:

View File

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

View File

@ -54,7 +54,7 @@ static LPBYTE pKeyStateTable;
/*********************************************************************** /***********************************************************************
* Inquire (KEYBOARD.1) * Inquire (KEYBOARD.1)
*/ */
WORD WINAPI KEYBOARD_Inquire(LPKBINFO kbInfo) WORD WINAPI Inquire16(LPKBINFO kbInfo)
{ {
kbInfo->Begin_First_Range = 0; kbInfo->Begin_First_Range = 0;
kbInfo->End_First_Range = 0; kbInfo->End_First_Range = 0;
@ -68,7 +68,7 @@ WORD WINAPI KEYBOARD_Inquire(LPKBINFO kbInfo)
/*********************************************************************** /***********************************************************************
* Enable (KEYBOARD.2) * Enable (KEYBOARD.2)
*/ */
VOID WINAPI KEYBOARD_Enable( FARPROC16 proc, LPBYTE lpKeyState ) VOID WINAPI Enable16( FARPROC16 proc, LPBYTE lpKeyState )
{ {
DefKeybEventProc = proc; DefKeybEventProc = proc;
pKeyStateTable = lpKeyState; pKeyStateTable = lpKeyState;
@ -79,12 +79,21 @@ VOID WINAPI KEYBOARD_Enable( FARPROC16 proc, LPBYTE lpKeyState )
/*********************************************************************** /***********************************************************************
* Disable (KEYBOARD.3) * Disable (KEYBOARD.3)
*/ */
VOID WINAPI KEYBOARD_Disable(VOID) VOID WINAPI Disable16(VOID)
{ {
DefKeybEventProc = NULL; DefKeybEventProc = NULL;
pKeyStateTable = NULL; pKeyStateTable = NULL;
} }
/****************************************************************************
* ToAscii (KEYBOARD.4)
*/
INT16 WINAPI ToAscii16(UINT16 virtKey,UINT16 scanCode, LPBYTE lpKeyState,
LPVOID lpChar, UINT16 flags)
{
return ToAscii( virtKey, scanCode, lpKeyState, lpChar, flags );
}
/*********************************************************************** /***********************************************************************
* AnsiToOem (KEYBOARD.5) * AnsiToOem (KEYBOARD.5)
*/ */
@ -185,27 +194,3 @@ void WINAPI OemToAnsiBuff16( LPCSTR s, LPSTR d, UINT16 len )
{ {
if (len != 0) OemToCharBuffA( s, d, len ); if (len != 0) OemToCharBuffA( s, d, len );
} }
/****************************************************************************
* ToAscii (KEYBOARD.4)
*
* The ToAscii function translates the specified virtual-key code and keyboard
* state to the corresponding Windows character or characters.
*
* If the specified key is a dead key, the return value is negative. Otherwise,
* it is one of the following values:
* Value Meaning
* 0 The specified virtual key has no translation for the current state of the keyboard.
* 1 One Windows character was copied to the buffer.
* 2 Two characters were copied to the buffer. This usually happens when a
* dead-key character (accent or diacritic) stored in the keyboard layout cannot
* be composed with the specified virtual key to form a single character.
*
* FIXME : should do the above (return 2 for non matching deadchar+char combinations)
*
*/
INT16 WINAPI ToAscii16(UINT16 virtKey,UINT16 scanCode, LPBYTE lpKeyState,
LPVOID lpChar, UINT16 flags)
{
return ToAscii( virtKey, scanCode, lpKeyState, lpChar, flags );
}

View File

@ -1,6 +1,6 @@
1 pascal -ret16 Inquire(ptr) KEYBOARD_Inquire 1 pascal -ret16 Inquire(ptr) Inquire16
2 pascal -ret16 Enable(segptr ptr) KEYBOARD_Enable 2 pascal -ret16 Enable(segptr ptr) Enable16
3 pascal -ret16 Disable() KEYBOARD_Disable 3 pascal -ret16 Disable() Disable16
4 pascal -ret16 ToAscii(word word ptr ptr word) ToAscii16 4 pascal -ret16 ToAscii(word word ptr ptr word) ToAscii16
5 pascal -ret16 AnsiToOem(str ptr) AnsiToOem16 5 pascal -ret16 AnsiToOem(str ptr) AnsiToOem16
6 pascal -ret16 OemToAnsi(str ptr) OemToAnsi16 6 pascal -ret16 OemToAnsi(str ptr) OemToAnsi16

View File

@ -10,7 +10,6 @@ DELAYIMPORTS = imm32
SPEC_SRCS16 = \ SPEC_SRCS16 = \
ddeml.spec \ ddeml.spec \
keyboard.drv.spec \
mouse.drv.spec \ mouse.drv.spec \
user.exe.spec user.exe.spec
@ -68,7 +67,6 @@ C_SRCS16 = \
bidi16.c \ bidi16.c \
comm16.c \ comm16.c \
hook16.c \ hook16.c \
kbd16.c \
mouse16.c \ mouse16.c \
network.c \ network.c \
user16.c \ user16.c \