Browse Source

+ added keymap.library interface unit, which will be required by the updated keyboard unit

git-svn-id: trunk@6873 -
Károly Balogh 18 years ago
parent
commit
8e7c440790
4 changed files with 196 additions and 54 deletions
  1. 1 0
      .gitattributes
  2. 53 53
      rtl/morphos/Makefile
  3. 1 1
      rtl/morphos/Makefile.fpc
  4. 141 0
      rtl/morphos/keymap.pas

+ 1 - 0
.gitattributes

@@ -4821,6 +4821,7 @@ rtl/morphos/hardware.pas svneol=native#text/plain
 rtl/morphos/inputevent.pas svneol=native#text/plain
 rtl/morphos/inputevent.pas svneol=native#text/plain
 rtl/morphos/intuition.pas svneol=native#text/plain
 rtl/morphos/intuition.pas svneol=native#text/plain
 rtl/morphos/keyboard.pp 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/kvm.pp svneol=native#text/plain
 rtl/morphos/layers.pas svneol=native#text/plain
 rtl/morphos/layers.pas svneol=native#text/plain
 rtl/morphos/mouse.pp svneol=native#text/plain
 rtl/morphos/mouse.pp svneol=native#text/plain

+ 53 - 53
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
 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
 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
 OBJPASDIR=$(RTL)/objpas
 GRAPHDIR=$(INC)/graph
 GRAPHDIR=$(INC)/graph
 ifeq ($(FULL_TARGET),i386-linux)
 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
 endif
 ifeq ($(FULL_TARGET),i386-go32v2)
 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
 endif
 ifeq ($(FULL_TARGET),i386-win32)
 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
 endif
 ifeq ($(FULL_TARGET),i386-os2)
 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
 endif
 ifeq ($(FULL_TARGET),i386-freebsd)
 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
 endif
 ifeq ($(FULL_TARGET),i386-beos)
 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
 endif
 ifeq ($(FULL_TARGET),i386-netbsd)
 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
 endif
 ifeq ($(FULL_TARGET),i386-solaris)
 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
 endif
 ifeq ($(FULL_TARGET),i386-qnx)
 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
 endif
 ifeq ($(FULL_TARGET),i386-netware)
 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
 endif
 ifeq ($(FULL_TARGET),i386-openbsd)
 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
 endif
 ifeq ($(FULL_TARGET),i386-wdosx)
 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
 endif
 ifeq ($(FULL_TARGET),i386-darwin)
 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
 endif
 ifeq ($(FULL_TARGET),i386-emx)
 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
 endif
 ifeq ($(FULL_TARGET),i386-watcom)
 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
 endif
 ifeq ($(FULL_TARGET),i386-netwlibc)
 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
 endif
 ifeq ($(FULL_TARGET),i386-wince)
 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
 endif
 ifeq ($(FULL_TARGET),i386-embedded)
 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
 endif
 ifeq ($(FULL_TARGET),i386-symbian)
 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
 endif
 ifeq ($(FULL_TARGET),m68k-linux)
 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
 endif
 ifeq ($(FULL_TARGET),m68k-freebsd)
 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
 endif
 ifeq ($(FULL_TARGET),m68k-netbsd)
 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
 endif
 ifeq ($(FULL_TARGET),m68k-amiga)
 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
 endif
 ifeq ($(FULL_TARGET),m68k-atari)
 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
 endif
 ifeq ($(FULL_TARGET),m68k-openbsd)
 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
 endif
 ifeq ($(FULL_TARGET),m68k-palmos)
 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
 endif
 ifeq ($(FULL_TARGET),m68k-embedded)
 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
 endif
 ifeq ($(FULL_TARGET),powerpc-linux)
 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
 endif
 ifeq ($(FULL_TARGET),powerpc-netbsd)
 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
 endif
 ifeq ($(FULL_TARGET),powerpc-amiga)
 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
 endif
 ifeq ($(FULL_TARGET),powerpc-macos)
 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
 endif
 ifeq ($(FULL_TARGET),powerpc-darwin)
 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
 endif
 ifeq ($(FULL_TARGET),powerpc-morphos)
 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
 endif
 ifeq ($(FULL_TARGET),powerpc-embedded)
 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
 endif
 ifeq ($(FULL_TARGET),sparc-linux)
 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
 endif
 ifeq ($(FULL_TARGET),sparc-netbsd)
 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
 endif
 ifeq ($(FULL_TARGET),sparc-solaris)
 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
 endif
 ifeq ($(FULL_TARGET),sparc-embedded)
 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
 endif
 ifeq ($(FULL_TARGET),x86_64-linux)
 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
 endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
 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
 endif
 ifeq ($(FULL_TARGET),x86_64-win64)
 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
 endif
 ifeq ($(FULL_TARGET),x86_64-embedded)
 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
 endif
 ifeq ($(FULL_TARGET),arm-linux)
 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
 endif
 ifeq ($(FULL_TARGET),arm-palmos)
 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
 endif
 ifeq ($(FULL_TARGET),arm-wince)
 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
 endif
 ifeq ($(FULL_TARGET),arm-gba)
 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
 endif
 ifeq ($(FULL_TARGET),arm-nds)
 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
 endif
 ifeq ($(FULL_TARGET),arm-embedded)
 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
 endif
 ifeq ($(FULL_TARGET),arm-symbian)
 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
 endif
 ifeq ($(FULL_TARGET),powerpc64-linux)
 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
 endif
 ifeq ($(FULL_TARGET),powerpc64-darwin)
 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
 endif
 ifeq ($(FULL_TARGET),powerpc64-embedded)
 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
 endif
 ifeq ($(FULL_TARGET),i386-linux)
 ifeq ($(FULL_TARGET),i386-linux)
 override TARGET_LOADERS+=prt0
 override TARGET_LOADERS+=prt0

+ 1 - 1
rtl/morphos/Makefile.fpc

@@ -12,7 +12,7 @@ units=$(SYSTEMUNIT) objpas macpas strings \
       sysutils classes fgl strutils math typinfo varutils \
       sysutils classes fgl strutils math typinfo varutils \
       charset ucomplex getopts matrix fmtbcd \
       charset ucomplex getopts matrix fmtbcd \
       variants types rtlconsts sysconst dateutil objects \
       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 \
       intuition aboxlib mui \
 # these units are here, because they depend on system interface units above
 # these units are here, because they depend on system interface units above
       kvm video keyboard mouse \
       kvm video keyboard mouse \

+ 141 - 0
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.