diff --git a/.gitattributes b/.gitattributes index 516f1328f2..db2e37e69e 100644 --- a/.gitattributes +++ b/.gitattributes @@ -4821,6 +4821,7 @@ rtl/morphos/hardware.pas svneol=native#text/plain rtl/morphos/inputevent.pas svneol=native#text/plain rtl/morphos/intuition.pas svneol=native#text/plain rtl/morphos/keyboard.pp svneol=native#text/plain +rtl/morphos/keymap.pas svneol=native#text/plain rtl/morphos/kvm.pp svneol=native#text/plain rtl/morphos/layers.pas svneol=native#text/plain rtl/morphos/mouse.pp svneol=native#text/plain diff --git a/rtl/morphos/Makefile b/rtl/morphos/Makefile index 41a2857b77..a12d5ba0ef 100644 --- a/rtl/morphos/Makefile +++ b/rtl/morphos/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2007/03/04] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2007/03/15] # default: all MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded @@ -246,160 +246,160 @@ endif OBJPASDIR=$(RTL)/objpas GRAPHDIR=$(INC)/graph ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings dos heaptrc sysutils classes fgl strutils math typinfo varutils charset ucomplex getopts matrix fmtbcd variants types rtlconsts sysconst dateutil objects exec timer doslib utility hardware inputevent keymap graphics layers intuition aboxlib mui kvm video keyboard mouse clipboard datatypes asl ahi tinygl get9 muihelper endif ifeq ($(FULL_TARGET),i386-linux) override TARGET_LOADERS+=prt0 diff --git a/rtl/morphos/Makefile.fpc b/rtl/morphos/Makefile.fpc index 0f0d0bbfc6..809531c637 100644 --- a/rtl/morphos/Makefile.fpc +++ b/rtl/morphos/Makefile.fpc @@ -12,7 +12,7 @@ units=$(SYSTEMUNIT) objpas macpas strings \ sysutils classes fgl strutils math typinfo varutils \ charset ucomplex getopts matrix fmtbcd \ variants types rtlconsts sysconst dateutil objects \ - exec timer doslib utility hardware inputevent graphics layers \ + exec timer doslib utility hardware inputevent keymap graphics layers \ intuition aboxlib mui \ # these units are here, because they depend on system interface units above kvm video keyboard mouse \ diff --git a/rtl/morphos/keymap.pas b/rtl/morphos/keymap.pas new file mode 100644 index 0000000000..16b73809e4 --- /dev/null +++ b/rtl/morphos/keymap.pas @@ -0,0 +1,141 @@ +{ + This file is part of the Free Pascal run time library. + Copyright (c) 2007 by Karoly Balogh + + keymap.library interface unit for MorphOS/PowerPC + Based on the Commodore Amiga/68k port by Nils Sjoholm + + See the file COPYING.FPC, included in this distribution, + for details about the copyright. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + + **********************************************************************} +{$PACKRECORDS 2} +unit keymap; + +INTERFACE + +uses exec, inputevent; + +Type + + pKeyMap = ^tKeyMap; + tKeyMap = record + km_LoKeyMapTypes : Pointer; + km_LoKeyMap : Pointer; + km_LoCapsable : Pointer; + km_LoRepeatable : Pointer; + km_HiKeyMapTypes : Pointer; + km_HiKeyMap : Pointer; + km_HiCapsable : Pointer; + km_HiRepeatable : Pointer; + end; + + + pKeymapNode = ^tKeyMapNode; + tKeyMapNode = record + kn_Node : tNode; { including name of keymap } + kn_KeyMap : tKeyMap; + end; + +{ the structure of keymap.resource } + + pKeyMapResource = ^tKeyMapResource; + tKeyMapResource = record + kr_Node : tNode; + kr_List : tList; { a list of KeyMapNodes } + end; + + +Const + +{ Key Map Types } + + KC_NOQUAL = 0; + KC_VANILLA = 7; { note that SHIFT+ALT+CTRL is VANILLA } + KCB_SHIFT = 0; + KCF_SHIFT = $01; + KCB_ALT = 1; + KCF_ALT = $02; + KCB_CONTROL = 2; + KCF_CONTROL = $04; + KCB_DOWNUP = 3; + KCF_DOWNUP = $08; + + KCB_DEAD = 5; { may be dead or modified by dead key: } + KCF_DEAD = $20; { use dead prefix bytes } + + KCB_STRING = 6; + KCF_STRING = $40; + + KCB_NOP = 7; + KCF_NOP = $80; + + +{ Dead Prefix Bytes } + + DPB_MOD = 0; + DPF_MOD = $01; + DPB_DEAD = 3; + DPF_DEAD = $08; + + DP_2DINDEXMASK = $0f; { mask for index for 1st of two dead keys } + DP_2DFACSHIFT = 4; { shift for factor for 1st of two dead keys } + +var + KeymapBase : pLibrary; + +const + KEYMAPNAME : PChar = 'keymap.library'; + +procedure SetKeyMapDefault(CONST keyMap : pKeyMap location 'a0'); +SysCall KeymapBase 030; + +function AskKeyMapDefault : pKeyMap; +SysCall KeymapBase 036; + +function MapRawKey(CONST event : pInputEvent location 'a0'; buffer : pSHORTINT location 'a1'; length : longint location 'd1'; CONST keyMap : pKeyMap location 'a2') : INTEGER; +SysCall KeymapBase 042; + +function MapANSI(CONST strg : pSHORTINT location 'a0'; count : longint location 'd0'; buffer : pSHORTINT location 'a1'; length : longint location 'd1'; CONST keyMap : pKeyMap location 'a2') : longint; +SysCall KeymapBase 048; + +{ Helper calls } +function InitKeymapLibrary : boolean; + +implementation + +const + { Change VERSION and LIBVERSION to proper values } + VERSION : string[2] = '50'; + LIBVERSION : longword = 50; + +var + keymap_exit : Pointer; + +procedure CloseKeymapLibrary; +begin + ExitProc := keymap_exit; + if KeymapBase <> nil then begin + CloseLibrary(PLibrary(KeymapBase)); + KeymapBase := nil; + end; +end; + +function InitKeymapLibrary : boolean; +begin + KeymapBase := nil; + KeymapBase := OpenLibrary(KEYMAPNAME,LIBVERSION); + if KeymapBase <> nil then begin + keymap_exit := ExitProc; + ExitProc := @CloseKeymapLibrary; + InitKeymapLibrary:=True; + end else begin + InitKeymapLibrary:=False; + end; +end; + +end.