mirror of
https://github.com/libretro/scummvm.git
synced 2025-02-03 09:23:37 +00:00
fcb8719e93
svn-id: r48660
1372 lines
50 KiB
Diff
1372 lines
50 KiB
Diff
diff -Naur scummvm-1.1.orig/debian/changelog scummvm-1.1/debian/changelog
|
|
--- scummvm-1.1.orig/debian/changelog 1970-01-01 01:00:00.000000000 +0100
|
|
+++ scummvm-1.1/debian/changelog 2010-03-24 15:40:44.000000000 +0100
|
|
@@ -0,0 +1,211 @@
|
|
+scummvm (1.1.0~pre) unstable; urgency=low
|
|
+
|
|
+ * 1.1.0 testing release
|
|
+ * cleanup for N900 (new firmwares need less hacks)
|
|
+ * unified binary for all devices now have datafiles included (~2MB)
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Wed, 24 Mar 2010 01:48:05 +0100
|
|
+scummvm (1.0.0-4) unstable; urgency=low
|
|
+
|
|
+ * datadir optified (/usr/share/scummvm -> /opt/scummvm/share)
|
|
+ * added engine files to datadir
|
|
+ * Application Manager icon enlarged to 48x48
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Thu, 17 Dec 2009 13:54:51 +0100
|
|
+scummvm (1.0.0-3) unstable; urgency=low
|
|
+
|
|
+ * disable taskmanager topleft button in fullscreen mode (N900)
|
|
+ * map shift+click to right button click
|
|
+ * mam ctrl+click to mouse move (no click)
|
|
+ * set fullscreen window as _HILDON_NON_COMPOSITED_WINDOW (N900)
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Tue, 15 Dec 2009 23:12:51 +0100
|
|
+scummvm (1.0.0-2) unstable; urgency=low
|
|
+
|
|
+ * grab N900 volume keys
|
|
+ * map Shift+Backspace to Escape key, shift+enter to Menu key (N900)
|
|
+ * optified = main binary moved to /opt/scummvm/bin/scummvm
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Sat, 12 Dec 2009 23:39:04 +0100
|
|
+scummvm (1.0.0-1) unstable; urgency=low
|
|
+
|
|
+ * -mcpu=arm1136j-s -mfpu=vfp -mfloat-abi=softfp breaks Gobliins, reverted
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Wed, 2 Dec 2009 10:25:11 +0100
|
|
+scummvm (1.0.0) unstable; urgency=low
|
|
+
|
|
+ * upstream 1.0 release
|
|
+ * Initial support for N900
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Fri, 6 Nov 2009 22:02:25 +0100
|
|
+scummvm (1.0.0~rc1-3) unstable; urgency=low
|
|
+
|
|
+ * updated to 1.0 branch revision 43999 to fix bugs (Cruise pause, ..)
|
|
+ * Cruise for Corpse mapping added to zoom+ for N800/770
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Mon, 7 Sep 2009 09:03:13 +0200
|
|
+scummvm (1.0.0~rc1-2) unstable; urgency=low
|
|
+
|
|
+ * Cruise for Corpse key bindings added
|
|
+ - menu key for menu, zoom-=right click, zoom+=context menu
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Wed, 2 Sep 2009 23:03:59 +0200
|
|
+scummvm (1.0.0~rc1-1) unstable; urgency=low
|
|
+
|
|
+ * Discworld key bindings added - menu key for menu, zoom-=right click, zoom+=Enter/y key
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Wed, 2 Sep 2009 09:53:08 +0200
|
|
+scummvm (1.0.0~rc1) unstable; urgency=low
|
|
+
|
|
+ * upstream 1.0.0rc1 release
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Thu, 20 Aug 2009 23:33:59 +0200
|
|
+scummvm (0.13.1) unstable; urgency=low
|
|
+
|
|
+ * upstream 0.13.1 release
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Sat, 18 Apr 2009 22:40:42 +0200
|
|
+scummvm (0.13.0-2) unstable; urgency=low
|
|
+
|
|
+ * dbus_service.patch is incomplete - needs also install line in debian/rules
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Fri, 27 Feb 2009 20:37:29 +0100
|
|
+scummvm (0.13.0-1) unstable; urgency=low
|
|
+
|
|
+ * fix crash in task switcher caption code when .scummvmrc had fullscreen value set
|
|
+ * enabled also dbus_service.patch for home key switching back (not needed in OS < 2008)
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Fri, 27 Feb 2009 09:29:01 +0100
|
|
+scummvm (0.13.0) unstable; urgency=low
|
|
+
|
|
+ * upstream 0.13.0 release
|
|
+ * Feeble Files mapping
|
|
+ * task switcher item name patch from mikkov
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Wed, 18 Feb 2009 21:52:33 +0100
|
|
+scummvm (0.11.99-4) unstable; urgency=low
|
|
+
|
|
+ * Maemo extras-devel test version
|
|
+ - maemo-taskswitcher.patch: title shown right from the beginning
|
|
+ and title not fixed to "ScummVM" only
|
|
+ - dbus_service.patch: modify scummvm.desktop, scummvm.wrapper and
|
|
+ scummvm.service to make switching application automatically back
|
|
+ via second home key long press to work
|
|
+
|
|
+ -- Mikko Vartiainen <mvartiainen@gmail.com> Thu, 03 Jan 2009 01:59:52 +0200
|
|
+scummvm (0.11.99-3) unstable; urgency=low
|
|
+
|
|
+ * Maemo extras-devel test version
|
|
+ - maemo-taskswitcher.patch
|
|
+
|
|
+ -- Mikko Vartiainen <mvartiainen@gmail.com> Thu, 01 Jan 2009 13:13:13 +0200
|
|
+scummvm (0.11.99-2) unstable; urgency=low
|
|
+
|
|
+ * Maemo extras-devel test version
|
|
+ - keeping version below 0.12.0
|
|
+ - not in user/ category
|
|
+
|
|
+ -- Mikko Vartiainen <mvartiainen@gmail.com> Thu, 01 Jan 2009 02:04:14 +0200
|
|
+scummvm (0.12.0) unstable; urgency=low
|
|
+
|
|
+ * upstream 0.12.0 release
|
|
+ * update description
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Mon, 25 Aug 2008 21:47:41 +0200
|
|
+scummvm (0.11.99) unstable; urgency=low
|
|
+
|
|
+ * upstream 0.12.0 testing pre-release
|
|
+ * big icons added for OS2008 menu
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Fri, 22 Aug 2008 08:20:48 +0200
|
|
+scummvm (0.11.1) unstable; urgency=low
|
|
+
|
|
+ * upstream 0.11.1 release
|
|
+ * mapping for N810: zoom+ = menu for all games (except FW)
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Sat, 23 Feb 2008 20:41:37 +0100
|
|
+scummvm (0.11.0-2) unstable; urgency=low
|
|
+
|
|
+ * mapping for N800/770: zoom+ = y, zoom- = 1 (all games except FW)
|
|
+ this fixes save dialog in BS1 and also allows to exit some games via 'y'
|
|
+ * mapping for N810: zoom- = rightclick for all games
|
|
+ * updated to revision 30849 from 0.11 branch (some bugfixes for 0.11.1)
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Mon, 11 Feb 2008 22:22:48 +0100
|
|
+scummvm (0.11.0-1) unstable; urgency=low
|
|
+
|
|
+ * theme files added back
|
|
+ * SWORD2,SAGA - added zoom keys =1/2 for saved games
|
|
+ * different mapping for N810 rightclick=zoom-,menu=zoom+ (currently only in LURE)
|
|
+ * added NEWS README COPYRIGHT do doc dir as per scummvm project guidelines
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Sun, 13 Jan 2008 22:58:41 +0100
|
|
+scummvm (0.11.0-0) unstable; urgency=low
|
|
+
|
|
+ * upstream 0.11 release
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Sat, 12 Jan 2008 22:26:34 +0100
|
|
+scummvm (0.10.0-5) unstable; urgency=low
|
|
+
|
|
+ * fixed for chinook, menu selection postinst script added
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Thu, 25 Oct 2007 09:56:32 +0200
|
|
+scummvm (0.10.0-4) unstable; urgency=low
|
|
+
|
|
+ * AGI - added pred.dic to DATA_PATH (=/usr/share/scummvm) to enable
|
|
+ predictive input
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Tue, 28 Aug 2007 09:58:29 +0200
|
|
+scummvm (0.10.0-3) unstable; urgency=low
|
|
+
|
|
+ * SCUMM - added mapping also for key up events (may fix right button in FT?)
|
|
+ * SWORD2 - added right button press mapping (not tested)
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Mon, 20 Aug 2007 22:39:07 +0200
|
|
+scummvm (0.10.0-2) unstable; urgency=low
|
|
+
|
|
+ * Future Wars - add mapping for left/up/down/right,zoom +/-
|
|
+ * fix SDL backend to set mouse position on button down event
|
|
+ as we may not have mousemove events with touchscreen
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Fri, 13 Jul 2007 09:56:37 +0200
|
|
+scummvm (0.10.0-1) unstable; urgency=low
|
|
+
|
|
+ * mapped F10 in Future Wars to menu key
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Wed, 11 Jul 2007 22:20:00 +0200
|
|
+scummvm (0.10.0) unstable; urgency=low
|
|
+
|
|
+ * upstream 0.10 release, enabled FLAC too
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Wed, 4 Jul 2007 12:48:48 +0200
|
|
+scummvm (0.9.1-1) unstable; urgency=low
|
|
+
|
|
+ * 0.9.1 mapped right mouse button in sword1
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Mon, 18 Jun 2007 21:15:31 +0200
|
|
+scummvm (0.9.1) unstable; urgency=low
|
|
+
|
|
+ * 0.9.1 upstream release
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Wed, 1 Nov 2006 20:40:51 +0100
|
|
+scummvm (0.9.0-3) unstable; urgency=low
|
|
+
|
|
+ * merged fixes in 0.9.0 upstream branch
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Mon, 9 Oct 2006 15:40:59 +0200
|
|
+scummvm (0.9.0-2) unstable; urgency=low
|
|
+
|
|
+ * merged fixes in 0.9.0 upstream branch
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Sat, 12 Aug 2006 20:10:47 +0200
|
|
+scummvm (0.9.0-1) unstable; urgency=low
|
|
+
|
|
+ * merged changes in 0.9.0 upstream release
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Sun, 23 Jul 2006 22:29:51 +0200
|
|
+scummvm (0.9.0) unstable; urgency=low
|
|
+
|
|
+ * 0.9.0 upstream release
|
|
+
|
|
+ -- Frantisek Dufka <dufkaf@seznam.cz> Tue, 27 Jun 2006 20:30:54 +0200
|
|
diff -Naur scummvm-1.1.orig/debian/compat scummvm-1.1/debian/compat
|
|
--- scummvm-1.1.orig/debian/compat 1970-01-01 01:00:00.000000000 +0100
|
|
+++ scummvm-1.1/debian/compat 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -0,0 +1 @@
|
|
+4
|
|
diff -Naur scummvm-1.1.orig/debian/control scummvm-1.1/debian/control
|
|
--- scummvm-1.1.orig/debian/control 1970-01-01 01:00:00.000000000 +0100
|
|
+++ scummvm-1.1/debian/control 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -0,0 +1,51 @@
|
|
+Source: scummvm
|
|
+Section: user/games
|
|
+Priority: optional
|
|
+Maintainer: Frantisek Dufka <dufkaf@seznam.cz>
|
|
+Build-Depends: debhelper (>> 4.0.0), libsdl1.2-dev, libmad0-dev, libasound2-dev, libvorbisidec-dev, libmpeg2-4-dev, libflac-dev (>= 1.1.2), libz-dev, quilt
|
|
+
|
|
+Standards-Version: 3.6.1.1
|
|
+Package: scummvm
|
|
+Depends: ${shlibs:Depends}
|
|
+Architecture: i386 armel
|
|
+Section: user/games
|
|
+Description: interpreter that will play graphic adventure games
|
|
+ written for LucasArts' SCUMM virtual machine, Sierra's AGI adventures,
|
|
+ Adventure Soft's Simon the Sorcerer 1, 2 and Feeble Files,
|
|
+ Revolution Software's Beneath a Steel Sky and Broken Sword 1 and 2,
|
|
+ Interactive Binary Illusions' Flight of the Amazon Queen,
|
|
+ Coktel Vision's Gobliiins, Wyrmkeep's Inherit the Earth,
|
|
+ Westwood's Legend of Kyrandia, and various others.
|
|
+ This package does not contain any actual games.
|
|
+XBS-Maemo-Icon-26:
|
|
+ iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAMAAACelLz8AAAC/VBMVEUICwcH
|
|
+ CQUKDAgLDQoMDwsOEAwREAUPEQ0QEg8PFQoRExAUEwoVFAwPGAcTFBIRFg0W
|
|
+ FQ0XFg4RGgkTGA8XGQsTGwwUHA0aGRIWGxMXHQkVHQ8aGhMbGxQcHQocGxUZ
|
|
+ HwsYIgcfHxgeIRUbJQwhIBofJAweJwgfKQocKwwgKgshKw0gLggfLg8jLQ8n
|
|
+ LwwpLhEmMwcoMRQjNgotLCYmNwQlNwwqOBQtOQgsOQ8xNh4sPQswNyQqQAUw
|
|
+ PAsuOiAsQgcwOyIqRgIsSAQvRgs0PyY1Rg06RA0+PDAwSwg2RxUzTQE4TQsz
|
|
+ VAc/SSo6VAk4VwE6VRM2XAVAUC85XwlJVCNEXQo+YwJGXwxMWS1JXC5AagBI
|
|
+ awJUagRIcQBSbwpHeAJTaD9OdwNXcwJKewZNfABacRlOfQBPfgBQfwBMggBW
|
|
+ fgBNgwNSgQJOhAVecUJjdSZefwNUiABZhgBjeDZieDxhezFQjQBgghZkhQ5j
|
|
+ iQJUkAZcixJmgDZnhCtckQpblgBekw5clwBqgkthlQBdmAJriz90hz5omgBs
|
|
+ mAhxlgd0mAB5lgBpnA16khdzmAtxnABooQBtnwB4jUpzngBkpQR5nQF8j0Vr
|
|
+ pQduoRZ4nRR3k014oQBzpAt8oAh/ogBvqA5trACBmypwqRF1pw+GogCAow+D
|
|
+ pQB8phJ/nUNurxh0rRd4rwmHqQd6qDOArwCJqwyDsgCMrgB8ryiFtAB7uQN8
|
|
+ sDKBuAWOsBWJqFR8ti2IsiOSswaBuRt6vxCOtgqXsgePrjR9wQCFuw2KuQyB
|
|
+ uSeSuACEux6JuR2OvACAxACEvCuSuhOHujSMwQGTtiqfuACRvwGOvRWHuz2T
|
|
+ wASPwwmYvwaLvTebuxiWvhmSwBqZwAmNu0aevgiKvkCVviaMvE6bwQycuTid
|
|
+ vhylvQyZwB2cwg+QywCawR6fwB+bwyGI0gaewCudxCOjwyOT1ACmwjiX0g+j
|
|
+ xTqmxzOd1gCV0i6kyyuoyTah1Sif2h6tzjukzF+pz1uq1Eeg2Uml3U1kaLAB
|
|
+ AAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAHrSURBVCjPY2BAAC5ubkFB
|
|
+ BkzAzggDfKgSUFEmKCmOIsPvktA0aVpbSYQ+FwsjkwpMBsi2m/X7z89v3759
|
|
+ +ngg1UqIlZEVponJYcW/rw9unH/04u2bc0vbo+WZWGCahEv/fj+6Yc2SZfv3
|
|
+ b5w6+eACHVYWmCazMz+unN44b3ZfV3dnx5yDiaKsUAOZGD2/fL58+PSGg3Gu
|
|
+ buEVWyZacLCzw6S8X324fOHqibMxWpKy5okBIjAZoNOt9r47e+HOnafbe/ND
|
|
+ DNWkOGAyDKwsCtXPTly4eufqm+fvHy4M1RRggsnJMLI6z9x99Oqtx7cuPP/2
|
|
+ ele5LjtCGyObbcHcDfuevHn+5s319RuSpOByrEwcwsqhlcvXHbp38+LxiXP6
|
|
+ DeBSTKzWvkrCun5Zq04dO7S6p67ZHibFziiRt6PYUk5YtfbUqSMTGnKyHaFS
|
|
+ rMDA3fHr7tqayKDWa0dWVmXHp5lCpRgZ2QI2HTl25NLt+1t3rppRFJ8SrwGX
|
|
+ 4g9rmbJo0cpVqxZNaK5OS0nzF4NLMWkHZ1TVN9bXlxXmAo2L0uNgZITaxcjI
|
|
+ axAYH5+RATQrPtZHk5udA+Z2cIpQN3Hy8vOwMVLmYGTidoenDSawLAsnJz8L
|
|
+ kMUiY4ySpviYoKmKRVAcIyXKyIiLyygi+ADqVqrAkApevwAAAABJRU5ErkJg
|
|
+ gg==
|
|
diff -Naur scummvm-1.1.orig/debian/copyright scummvm-1.1/debian/copyright
|
|
--- scummvm-1.1.orig/debian/copyright 1970-01-01 01:00:00.000000000 +0100
|
|
+++ scummvm-1.1/debian/copyright 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -0,0 +1,20 @@
|
|
+ScummVM was debianized by Bastien Nocera <hadess@hadess.net> the 5th Apr 2002.
|
|
+It was adopted by Tore Anderson <tore@linpro.no> the 4th Oct 2002.
|
|
+Packaged for the Maemo platform by Tomas Junnoen <tomas@fs-security.com> Oct 2005
|
|
+Since 0.8.2 packaging for Maemo done by Frantisek Dufka <dufkaf@seznam.cz>
|
|
+
|
|
+It was downloaded from <http://www.scummvm.org/>.
|
|
+
|
|
+Upstream Authors: see AUTHORS file of the ScummVM source distribution.
|
|
+
|
|
+Copyright:
|
|
+
|
|
+ This program is free software; you can redistribute it and/or modify it
|
|
+ under the terms of the GNU General Public License as published by the
|
|
+ Free Software Foundation; either version 2, or (at your option) any
|
|
+ later version.
|
|
+
|
|
+ On Debian GNU/Linux systems, the complete text of the GNU General
|
|
+ Public License can be found in `/usr/share/common-licenses/GPL'.
|
|
+
|
|
+This copyright also applies to the Debian-related build scripts.
|
|
diff -Naur scummvm-1.1.orig/debian/postinst scummvm-1.1/debian/postinst
|
|
--- scummvm-1.1.orig/debian/postinst 1970-01-01 01:00:00.000000000 +0100
|
|
+++ scummvm-1.1/debian/postinst 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -0,0 +1,19 @@
|
|
+#! /bin/sh
|
|
+if [ "$1" = "configure" ] ; then
|
|
+OSVER=$OSSO_VERSION
|
|
+[ -z "$OSVER" -a -f /etc/osso_software_version ] && OSVER=`cat /etc/osso_software_version`
|
|
+OSVER=`echo $OSVER | cut -d _ -f 2`
|
|
+case $OSVER in
|
|
+ 2006*|2007*)
|
|
+ #nothing to do
|
|
+ true
|
|
+ ;;
|
|
+ *)
|
|
+ #ugly trick, until this icon is removed big icon in menu does not show
|
|
+ [ -f /usr/share/icons/scummvm.xpm ] && rm /usr/share/icons/scummvm.xpm
|
|
+ ;;
|
|
+esac
|
|
+ [ -x /usr/bin/gtk-update-icon-cache ] && /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor
|
|
+ [ -x /usr/bin/maemo-select-menu-location -a -z "$2" ] && /usr/bin/maemo-select-menu-location scummvm.desktop tana_fi_games
|
|
+fi
|
|
+exit 0
|
|
diff -Naur scummvm-1.1.orig/debian/rules scummvm-1.1/debian/rules
|
|
--- scummvm-1.1.orig/debian/rules 1970-01-01 01:00:00.000000000 +0100
|
|
+++ scummvm-1.1/debian/rules 2010-03-24 13:39:46.000000000 +0100
|
|
@@ -0,0 +1,72 @@
|
|
+#!/usr/bin/make -f
|
|
+
|
|
+#include /usr/share/quilt/quilt.make
|
|
+
|
|
+build: scummvm
|
|
+
|
|
+scummvm:
|
|
+ dh_testdir
|
|
+ CXXFLAGS="-Os -mcpu=arm926ej-s -fomit-frame-pointer -DMAEMO_SDL -I/usr/X11R6/include" ./configure --prefix=/usr --disable-debug --disable-mt32emu --disable-hq-scalers --with-tremor-prefix=/usr --enable-tremor --with-zlib-prefix=/usr --enable-zlib --with-mad-prefix=/usr --enable-mad --enable-flac --disable-alsa --prefix=/opt/scummvm --datadir=/opt/scummvm/share
|
|
+## --host=arm-linux --enable-plugins --disable-scumm-7-8
|
|
+ $(MAKE)
|
|
+
|
|
+clean:
|
|
+ dh_testdir
|
|
+ dh_testroot
|
|
+ -$(MAKE) distclean
|
|
+ dh_clean
|
|
+
|
|
+install: build
|
|
+ dh_testdir
|
|
+ dh_testroot
|
|
+ dh_clean
|
|
+ dh_installdirs
|
|
+# not as a service
|
|
+# install -m0755 dists/maemo/scummvm.wrapper debian/scummvm/usr/games/scummvm
|
|
+# install -m0644 dists/maemo/scummvm.desktop debian/scummvm/usr/share/applications/hildon
|
|
+# run as fake dbus-service to enable switching back to application from desktop via home key
|
|
+ install -m0755 dists/maemo/scummvm.servicewrapper debian/scummvm/usr/games/scummvm
|
|
+ install -m0644 dists/maemo/scummvm.servicedesktop debian/scummvm/usr/share/applications/hildon/scummvm.desktop
|
|
+ install -m0644 dists/maemo/scummvm.service debian/scummvm/usr/share/dbus-1/services
|
|
+# end of fake dbus service
|
|
+ install -m0644 dists/maemo/scummvm26.png debian/scummvm/usr/share/icons/hicolor/26x26/hildon/scummvm.png
|
|
+ install -m0644 dists/maemo/scummvm40.png debian/scummvm/usr/share/icons/hicolor/40x40/hildon/scummvm.png
|
|
+ install -m0644 dists/maemo/scummvm48.png debian/scummvm/usr/share/icons/hicolor/48x48/hildon/scummvm.png
|
|
+ install -m0644 dists/maemo/scummvm64.png debian/scummvm/usr/share/icons/hicolor/64x64/hildon/scummvm.png
|
|
+ install -m0644 icons/scummvm.xpm debian/scummvm/usr/share/icons
|
|
+# install -m0644 -d debian/scummvm/usr/lib/scummvm
|
|
+# install -m0644 plugins/lib*.so debian/scummvm/usr/lib/scummvm
|
|
+##non-optified version
|
|
+# install -m0755 scummvm debian/scummvm/usr/games/scummvm.bin
|
|
+# install -m0644 -d debian/scummvm/usr/share/scummvm
|
|
+# install -m0644 dists/pred.dic debian/scummvm/usr/share/scummvm
|
|
+# install -m0644 gui/themes/scummclassic.zip gui/themes/scummmodern.zip debian/scummvm/usr/share/scummvm
|
|
+# optified version (save rootfs space on N900), see also configure prefix and datadir paths above
|
|
+ install -m0644 -d debian/scummvm/opt/scummvm/bin
|
|
+ install -m0755 scummvm debian/scummvm/opt/scummvm/bin
|
|
+ install -m0644 -d debian/scummvm/opt/scummvm/share
|
|
+ install -m0644 dists/pred.dic debian/scummvm/opt/scummvm/share
|
|
+ install -m0644 gui/themes/scummclassic.zip gui/themes/scummmodern.zip debian/scummvm/opt/scummvm/share
|
|
+# for optified version we can also add engine datafiles
|
|
+ install -m0644 dists/engine-data/drascula.dat dists/engine-data/kyra.dat dists/engine-data/lure.dat dists/engine-data/queen.tbl dists/engine-data/sky.cpt dists/engine-data/teenagent.dat debian/scummvm/opt/scummvm/share
|
|
+
|
|
+ install -m0644 -d debian/scummvm/usr/share/doc/scummvm
|
|
+ install -m0644 NEWS README COPYRIGHT debian/scummvm/usr/share/doc/scummvm
|
|
+binary: binary-arch
|
|
+
|
|
+binary-arch: build install
|
|
+ dh_testdir
|
|
+ dh_testroot
|
|
+ dh_installchangelogs NEWS
|
|
+ dh_link
|
|
+ dh_strip
|
|
+ dh_fixperms
|
|
+ dh_installdeb
|
|
+ dh_shlibdeps
|
|
+ dh_gencontrol
|
|
+ dh_md5sums
|
|
+ dh_builddeb
|
|
+
|
|
+binary-indep:
|
|
+
|
|
+.PHONY: build clean binary install binary-arch binary-indep
|
|
diff -Naur scummvm-1.1.orig/debian/scummvm.dirs scummvm-1.1/debian/scummvm.dirs
|
|
--- scummvm-1.1.orig/debian/scummvm.dirs 1970-01-01 01:00:00.000000000 +0100
|
|
+++ scummvm-1.1/debian/scummvm.dirs 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -0,0 +1,8 @@
|
|
+usr/games
|
|
+usr/share/icons
|
|
+usr/share/icons/hicolor/26x26/hildon
|
|
+usr/share/icons/hicolor/40x40/hildon
|
|
+usr/share/icons/hicolor/48x48/hildon
|
|
+usr/share/icons/hicolor/64x64/hildon
|
|
+usr/share/applications/hildon
|
|
+usr/share/dbus-1/services
|
|
\ No newline at end of file
|
|
--- scummvm-1.1.orig/configure 2010-03-24 21:25:00.000000000 +0100
|
|
+++ scummvm-1.1/configure 2010-03-24 21:24:28.000000000 +0100
|
|
@@ -1355,6 +1355,9 @@
|
|
_need_memalign=yes
|
|
add_line_to_config_mk 'USE_ARM_SOUND_ASM = 1'
|
|
add_line_to_config_mk 'USE_ARM_SMUSH_ASM = 1'
|
|
+ add_line_to_config_mk 'USE_ARM_GFX_ASM = 1'
|
|
+ add_line_to_config_mk 'ARM_USE_GFX_ASM = 1'
|
|
+ add_line_to_config_mk 'USE_ARM_COSTUME_ASM = 1'
|
|
;;
|
|
arm-riscos|linupy)
|
|
DEFINES="$DEFINES -DUNIX -DLINUPY"
|
|
@@ -2205,11 +2208,11 @@
|
|
#
|
|
test -z "$_bindir" && _bindir="$_prefix/bin"
|
|
test -z "$_mandir" && _mandir="$_prefix/share/man"
|
|
-test -z "$_datadir" && _datadir="$_prefix/share"
|
|
-test -z "$_libdir" && _libdir="$_prefix/lib"
|
|
+test -z "$_datadir" && _datadir="$_prefix/share/scummvm"
|
|
+test -z "$_libdir" && _libdir="$_prefix/lib/scummvm"
|
|
|
|
-DEFINES="$DEFINES -DDATA_PATH=\\\"$_datadir/scummvm\\\""
|
|
-DEFINES="$DEFINES -DPLUGIN_DIRECTORY=\\\"$_libdir/scummvm\\\""
|
|
+DEFINES="$DEFINES -DDATA_PATH=\\\"$_datadir\\\""
|
|
+DEFINES="$DEFINES -DPLUGIN_DIRECTORY=\\\"$_libdir\\\""
|
|
|
|
|
|
echo_n "Backend... "
|
|
--- scummvm-1.1.orig/engines/kyra/module.mk 2010-03-21 22:01:04.000000000 +0100
|
|
+++ scummvm-1.1/engines/kyra/module.mk 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -95,3 +95,9 @@
|
|
|
|
# Include common rules
|
|
include $(srcdir)/rules.mk
|
|
+
|
|
+#ugly workaround, screen.cpp crashes gcc version 3.4.4 (CodeSourcery ARM 2005q3-2) with anything but -O3
|
|
+$(MODULE)/screen.o: $(MODULE)/screen.cpp
|
|
+ $(MKDIR) $(*D)/$(DEPDIR)
|
|
+ $(CXX) -Wp,-MMD,"$(*D)/$(DEPDIR)/$(*F).d",-MQ,"$@",-MP $(CXXFLAGS) -O3 $(CPPFLAGS) -c $(<) -o $*.o
|
|
+
|
|
--- scummvm-1.1.orig/engines/gob/util.cpp 2010-03-21 22:01:08.000000000 +0100
|
|
+++ scummvm-1.1/engines/gob/util.cpp 2010-03-24 00:17:52.000000000 +0100
|
|
@@ -114,6 +114,10 @@
|
|
_mouseButtons = (MouseButtons) (((uint32) _mouseButtons) & ~((uint32) kMouseButtonsRight));
|
|
break;
|
|
case Common::EVENT_KEYDOWN:
|
|
+#ifdef MAEMO_SDL
|
|
+ if (event.kbd.keycode==Common::KEYCODE_F4)
|
|
+ _mouseButtons = (MouseButtons) (((uint32) _mouseButtons) | ((uint32) kMouseButtonsRight));
|
|
+#endif
|
|
if (event.kbd.hasFlags(Common::KBD_CTRL)) {
|
|
if (event.kbd.keycode == Common::KEYCODE_f)
|
|
_fastMode ^= 1;
|
|
@@ -126,6 +130,10 @@
|
|
addKeyToBuffer(event.kbd);
|
|
break;
|
|
case Common::EVENT_KEYUP:
|
|
+#ifdef MAEMO_SDL
|
|
+ if (event.kbd.keycode==Common::KEYCODE_F4)
|
|
+ _mouseButtons = (MouseButtons) (((uint32) _mouseButtons) & ~((uint32) kMouseButtonsRight));
|
|
+#endif
|
|
break;
|
|
default:
|
|
break;
|
|
--- scummvm-1.1.orig/engines/queen/input.cpp 2010-03-21 22:01:14.000000000 +0100
|
|
+++ scummvm-1.1/engines/queen/input.cpp 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -176,7 +176,11 @@
|
|
}
|
|
break;
|
|
case Common::KEYCODE_F1: // use Journal
|
|
+#ifdef MAEMO_SDL
|
|
+ case Common::KEYCODE_F4: // menu key on N770
|
|
+#else
|
|
case Common::KEYCODE_F5:
|
|
+#endif
|
|
if (_cutawayRunning) {
|
|
if (_canQuit) {
|
|
_keyVerb = VERB_USE_JOURNAL;
|
|
--- scummvm-1.1.orig/engines/sword1/sword1.cpp 2010-03-21 22:01:22.000000000 +0100
|
|
+++ scummvm-1.1/engines/sword1/sword1.cpp 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -697,8 +697,21 @@
|
|
while (_eventMan->pollEvent(event)) {
|
|
switch (event.type) {
|
|
case Common::EVENT_KEYDOWN:
|
|
+#ifdef MAEMO_SDL
|
|
+// map center to right button
|
|
+ if (event.kbd.keycode == 13) {
|
|
+ _mouseState |= BS1R_BUTTON_DOWN;
|
|
+ } else
|
|
+#endif
|
|
_keyPressed = event.kbd;
|
|
break;
|
|
+#ifdef MAEMO_SDL
|
|
+ case Common::EVENT_KEYUP:
|
|
+ if (event.kbd.keycode == 13) {
|
|
+ _mouseState |= BS1R_BUTTON_UP;
|
|
+ }
|
|
+ break;
|
|
+#endif
|
|
case Common::EVENT_MOUSEMOVE:
|
|
_mouseCoord = event.mouse;
|
|
break;
|
|
--- scummvm-1.1.orig/engines/sword2/sword2.cpp 2010-03-21 22:01:23.000000000 +0100
|
|
+++ scummvm-1.1/engines/sword2/sword2.cpp 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -662,11 +662,27 @@
|
|
_gameSpeed = 1;
|
|
}
|
|
}
|
|
+#ifdef MAEMO_SDL
|
|
+// map center to right button
|
|
+ else if (event.kbd.keycode == 13 && !(_inputEventFilter & RD_RIGHTBUTTONDOWN)) {
|
|
+ _mouseEvent.pending = true;
|
|
+ _mouseEvent.buttons = RD_RIGHTBUTTONDOWN;
|
|
+ } else
|
|
+#endif
|
|
if (!(_inputEventFilter & RD_KEYDOWN)) {
|
|
_keyboardEvent.pending = true;
|
|
_keyboardEvent.kbd = event.kbd;
|
|
}
|
|
break;
|
|
+#ifdef MAEMO_SDL
|
|
+ case Common::EVENT_KEYUP:
|
|
+// map center to right button
|
|
+ if (event.kbd.keycode == 13 && !(_inputEventFilter & RD_RIGHTBUTTONUP)) {
|
|
+ _mouseEvent.pending = true;
|
|
+ _mouseEvent.buttons = RD_RIGHTBUTTONUP;
|
|
+ }
|
|
+ break;
|
|
+#endif
|
|
case Common::EVENT_LBUTTONDOWN:
|
|
if (!(_inputEventFilter & RD_LEFTBUTTONDOWN)) {
|
|
_mouseEvent.pending = true;
|
|
--- scummvm-1.1.orig/engines/scumm/input.cpp 2010-03-21 22:01:31.000000000 +0100
|
|
+++ scummvm-1.1/engines/scumm/input.cpp 2010-03-24 00:19:14.000000000 +0100
|
|
@@ -135,7 +135,20 @@
|
|
// Normal key press, pass on to the game.
|
|
_keyPressed = event.kbd;
|
|
}
|
|
-
|
|
+#ifdef MAEMO_SDL
|
|
+ switch (_keyPressed.keycode) {
|
|
+ case Common::KEYCODE_F8: _fastMode ^= 1; break ;// Map F8 (zoom out) to toggle fast mode
|
|
+ case Common::KEYCODE_F4: _keyPressed.keycode = Common::KEYCODE_F5; _keyPressed.ascii=Common::ASCII_F5 ; break; // map F4 to F5 (menu key)
|
|
+ case Common::KEYCODE_RETURN: _keyPressed.keycode = Common::KEYCODE_TAB; _keyPressed.ascii=Common::ASCII_TAB ; break; // map Select (return) to Tab (right mouse button)
|
|
+ default: ;
|
|
+ }
|
|
+ if (_game.version < 7) switch(event.kbd.keycode){
|
|
+ case Common::KEYCODE_UP: _keyPressed.ascii = ' '; _keyPressed.keycode=Common::KEYCODE_SPACE; break ;// map Up to space (pause game)
|
|
+ case Common::KEYCODE_DOWN: _keyPressed.ascii ='.'; _keyPressed.keycode=Common::KEYCODE_PERIOD; break ;// map Down to . (skip one line of dialog)
|
|
+ default: ;
|
|
+ }
|
|
+#endif
|
|
+
|
|
// FIXME: We are using ASCII values to index the _keyDownMap here,
|
|
// yet later one code which checks _keyDownMap will use KEYCODEs
|
|
// to do so. That is, we are mixing ascii and keycode values here,
|
|
@@ -151,6 +164,20 @@
|
|
break;
|
|
|
|
case Common::EVENT_KEYUP:
|
|
+#ifdef MAEMO_SDL
|
|
+ // map keyup with similar rules as keydown
|
|
+ switch (event.kbd.keycode) {
|
|
+
|
|
+ case Common::KEYCODE_F4: event.kbd.keycode = Common::KEYCODE_F5; event.kbd.ascii=Common::ASCII_F5 ; break; // map F4 to F5 (menu key)
|
|
+ case Common::KEYCODE_RETURN: event.kbd.keycode = Common::KEYCODE_TAB; event.kbd.ascii=Common::ASCII_TAB ; break; // map Select (return) to Tab (right mouse button)
|
|
+ default: ;
|
|
+ }
|
|
+ if (_game.version < 7) switch(event.kbd.keycode){
|
|
+ case Common::KEYCODE_UP: event.kbd.ascii = ' '; event.kbd.keycode=Common::KEYCODE_SPACE; break ;// map Up to space (pause game)
|
|
+ case Common::KEYCODE_DOWN: event.kbd.ascii ='.'; event.kbd.keycode=Common::KEYCODE_PERIOD; break ;// map Down to . (skip one line of dialog)
|
|
+ default: ;
|
|
+ }
|
|
+#endif
|
|
if (event.kbd.ascii >= 512) {
|
|
debugC(DEBUG_GENERAL, "keyPressed > 512 (%d)", event.kbd.ascii);
|
|
} else {
|
|
@@ -513,9 +540,10 @@
|
|
if (VAR_SAVELOAD_SCRIPT != 0xFF && _currentRoom != 0)
|
|
runScript(VAR(VAR_SAVELOAD_SCRIPT2), 0, 0, 0);
|
|
|
|
+#ifndef MAEMO_SDL
|
|
} else if (restartKeyEnabled && (lastKeyHit.keycode == Common::KEYCODE_F8 && lastKeyHit.hasFlags(0))) {
|
|
confirmRestartDialog();
|
|
-
|
|
+#endif
|
|
} else if (pauseKeyEnabled && (lastKeyHit.keycode == Common::KEYCODE_SPACE && lastKeyHit.hasFlags(0))) {
|
|
pauseGame();
|
|
|
|
--- scummvm-1.1.orig/engines/scumm/dialogs.cpp 2010-03-21 22:01:31.000000000 +0100
|
|
+++ scummvm-1.1/engines/scumm/dialogs.cpp 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -633,7 +633,11 @@
|
|
}
|
|
|
|
void PauseDialog::handleKeyDown(Common::KeyState state) {
|
|
+#ifdef MAEMO_SDL
|
|
+ if (state.ascii == ' ' || state.keycode == Common::KEYCODE_UP ) // Close pause dialog if space or UP key is pressed
|
|
+#else
|
|
if (state.ascii == ' ') // Close pause dialog if space key is pressed
|
|
+#endif
|
|
close();
|
|
else
|
|
ScummDialog::handleKeyDown(state);
|
|
@@ -695,12 +699,19 @@
|
|
}
|
|
|
|
void ValueDisplayDialog::handleKeyDown(Common::KeyState state) {
|
|
+#ifdef MAEMO_SDL
|
|
+ if (state.ascii == _incKey || state.ascii == _decKey || state.keycode == 275 || state.keycode == 276) {
|
|
+ if ((state.ascii == _incKey || state.keycode == 275 ) && _value < _max)
|
|
+ _value++;
|
|
+ else if ((state.ascii == _decKey || state.keycode == 276) && _value > _min)
|
|
+ _value--;
|
|
+#else
|
|
if (state.ascii == _incKey || state.ascii == _decKey) {
|
|
if (state.ascii == _incKey && _value < _max)
|
|
_value++;
|
|
else if (state.ascii == _decKey && _value > _min)
|
|
_value--;
|
|
-
|
|
+#endif
|
|
setResult(_value);
|
|
_timer = getMillis() + kDisplayDelay;
|
|
draw();
|
|
--- scummvm-1.1.orig/engines/touche/touche.cpp 2010-03-21 22:01:32.000000000 +0100
|
|
+++ scummvm-1.1/engines/touche/touche.cpp 2010-03-24 00:25:29.000000000 +0100
|
|
@@ -294,6 +294,13 @@
|
|
while (_eventMan->pollEvent(event)) {
|
|
switch (event.type) {
|
|
case Common::EVENT_KEYDOWN:
|
|
+#ifdef MAEMO_SDL
|
|
+ if (event.kbd.keycode == 13) { // select button simulates righ button toggle
|
|
+ _inp_rightMouseButtonPressed=!_inp_rightMouseButtonPressed;
|
|
+ } else {
|
|
+ _inp_rightMouseButtonPressed = false;
|
|
+ }
|
|
+#endif
|
|
if (!handleKeyEvents) {
|
|
break;
|
|
}
|
|
@@ -304,10 +311,18 @@
|
|
quitGame();
|
|
}
|
|
}
|
|
+#ifdef MAEMO_SDL
|
|
+ } else if (event.kbd.keycode == Common::KEYCODE_F4) {
|
|
+#else
|
|
} else if (event.kbd.keycode == Common::KEYCODE_F5) {
|
|
+#endif
|
|
if (_flagsTable[618] == 0 && !_hideInventoryTexts) {
|
|
handleOptions(0);
|
|
}
|
|
+#ifdef MAEMO_SDL
|
|
+ } else if (event.kbd.keycode == Common::KEYCODE_F8) {
|
|
+ _fastWalkMode = !_fastWalkMode;
|
|
+#endif
|
|
} else if (event.kbd.keycode == Common::KEYCODE_F9) {
|
|
_fastWalkMode = true;
|
|
} else if (event.kbd.keycode == Common::KEYCODE_F10) {
|
|
@@ -332,12 +347,22 @@
|
|
case Common::EVENT_LBUTTONDOWN:
|
|
_inp_leftMouseButtonPressed = true;
|
|
break;
|
|
+#ifdef MAEMO_SDL
|
|
+ case Common::EVENT_LBUTTONUP:
|
|
+ // this is done elsewhere _inp_leftMouseButtonPressed = false;
|
|
+ _inp_rightMouseButtonPressed = false; // simulate rbutton up to close menu
|
|
+ break;
|
|
+ case Common::EVENT_RBUTTONDOWN:
|
|
+ _inp_rightMouseButtonPressed = !_inp_rightMouseButtonPressed;
|
|
+ break;
|
|
+#else
|
|
case Common::EVENT_RBUTTONDOWN:
|
|
_inp_rightMouseButtonPressed = true;
|
|
break;
|
|
case Common::EVENT_RBUTTONUP:
|
|
_inp_rightMouseButtonPressed = false;
|
|
break;
|
|
+#endif
|
|
default:
|
|
break;
|
|
}
|
|
--- scummvm-1.1.orig/engines/sky/sky.cpp 2010-03-21 22:01:39.000000000 +0100
|
|
+++ scummvm-1.1/engines/sky/sky.cpp 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -406,6 +406,17 @@
|
|
switch (event.type) {
|
|
case Common::EVENT_KEYDOWN:
|
|
_keyPressed = event.kbd;
|
|
+#ifdef MAEMO_SDL
|
|
+ // Maemo platform keybindings
|
|
+ if (_keyPressed.keycode == Common::KEYCODE_F4) // Map F4 (menu) to F5 (access main menu)
|
|
+ _keyPressed.keycode = Common::KEYCODE_F5;
|
|
+ if (_keyPressed.ascii == 13) // Map Select=Enter to right mouse button
|
|
+ _skyMouse->buttonPressed(1);
|
|
+ if (_keyPressed.keycode == Common::KEYCODE_F8) // Map F8 (zoom out) to toggle fast mode
|
|
+ _fastMode ^= 1;
|
|
+ if (_keyPressed.keycode == Common::KEYCODE_DOWN) // Map Down to . (skip one line of dialog)
|
|
+ _keyPressed.ascii = '.';
|
|
+#endif
|
|
break;
|
|
case Common::EVENT_MOUSEMOVE:
|
|
if (!(_systemVars.systemFlags & SF_MOUSE_LOCKED))
|
|
--- scummvm-1.1.orig/engines/lure/menu.cpp 2010-03-21 22:01:40.000000000 +0100
|
|
+++ scummvm-1.1/engines/lure/menu.cpp 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -34,7 +34,7 @@
|
|
#include "lure/events.h"
|
|
#include "lure/lure.h"
|
|
|
|
-#if defined(_WIN32_WCE) || defined(__SYMBIAN32__)
|
|
+#if defined(_WIN32_WCE) || defined(MAEMO_SDL) || defined(__SYMBIAN32__)
|
|
#define LURE_CLICKABLE_MENUS
|
|
#endif
|
|
|
|
--- scummvm-1.1.orig/engines/cine/main_loop.cpp 2010-03-21 22:01:43.000000000 +0100
|
|
+++ scummvm-1.1/engines/cine/main_loop.cpp 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -75,18 +75,27 @@
|
|
mouseRight = 1;
|
|
}
|
|
break;
|
|
+#ifdef MAEMO_SDL
|
|
+ case Common::KEYCODE_UP:
|
|
+#else
|
|
case Common::KEYCODE_F1:
|
|
+#endif
|
|
if (allowPlayerInput) {
|
|
playerCommand = 0; // EXAMINE
|
|
makeCommandLine();
|
|
}
|
|
break;
|
|
+#ifdef MAEMO_SDL
|
|
+ case Common::KEYCODE_DOWN:
|
|
+#else
|
|
case Common::KEYCODE_F2:
|
|
+#endif
|
|
if (allowPlayerInput) {
|
|
playerCommand = 1; // TAKE
|
|
makeCommandLine();
|
|
}
|
|
break;
|
|
+#ifndef MAEMO_SDL
|
|
case Common::KEYCODE_F3:
|
|
if (allowPlayerInput) {
|
|
playerCommand = 2; // INVENTORY
|
|
@@ -99,13 +108,43 @@
|
|
makeCommandLine();
|
|
}
|
|
break;
|
|
+#else
|
|
+//map f3, f4 to f8,f7 = zoom +- keys, when in menu generate keypresses for savegame
|
|
+ case Common::KEYCODE_F8:
|
|
+ if (inMenu)
|
|
+ lastKeyStroke = '1';
|
|
+ else if (allowPlayerInput) {
|
|
+ playerCommand = 2; // INVENTORY
|
|
+ makeCommandLine();
|
|
+ }
|
|
+ break;
|
|
+ case Common::KEYCODE_F7:
|
|
+ if (inMenu)
|
|
+ lastKeyStroke = '2';
|
|
+ else
|
|
+ if (allowPlayerInput) {
|
|
+ playerCommand = 3; // USE
|
|
+ makeCommandLine();
|
|
+ }
|
|
+ break;
|
|
+#endif
|
|
+#ifdef MAEMO_SDL
|
|
+ case Common::KEYCODE_LEFT:
|
|
+// if (event.kbd.flags&Common::KBD_SHIFT)
|
|
+// moveUsingKeyboard(-1, 0); // Left
|
|
+#else
|
|
case Common::KEYCODE_F5:
|
|
+#endif
|
|
if (allowPlayerInput) {
|
|
playerCommand = 4; // ACTIVATE
|
|
makeCommandLine();
|
|
}
|
|
break;
|
|
+#ifdef MAEMO_SDL
|
|
+ case Common::KEYCODE_RIGHT:
|
|
+#else
|
|
case Common::KEYCODE_F6:
|
|
+#endif
|
|
if (allowPlayerInput) {
|
|
playerCommand = 5; // SPEAK
|
|
makeCommandLine();
|
|
@@ -117,7 +156,11 @@
|
|
makeCommandLine();
|
|
}
|
|
break;
|
|
+#ifdef MAEMO_SDL
|
|
+ case Common::KEYCODE_F4: // Menu key
|
|
+#else
|
|
case Common::KEYCODE_F10:
|
|
+#endif
|
|
if (!disableSystemMenu && !inMenu) {
|
|
g_cine->makeSystemMenu();
|
|
}
|
|
@@ -133,19 +176,19 @@
|
|
case Common::KEYCODE_KP_PLUS:
|
|
g_cine->modifyGameSpeed(+1); // Faster
|
|
break;
|
|
- case Common::KEYCODE_LEFT:
|
|
+// case Common::KEYCODE_LEFT:
|
|
case Common::KEYCODE_KP4:
|
|
moveUsingKeyboard(-1, 0); // Left
|
|
break;
|
|
- case Common::KEYCODE_RIGHT:
|
|
+// case Common::KEYCODE_RIGHT:
|
|
case Common::KEYCODE_KP6:
|
|
moveUsingKeyboard(+1, 0); // Right
|
|
break;
|
|
- case Common::KEYCODE_UP:
|
|
+// case Common::KEYCODE_UP:
|
|
case Common::KEYCODE_KP8:
|
|
moveUsingKeyboard(0, +1); // Up
|
|
break;
|
|
- case Common::KEYCODE_DOWN:
|
|
+// case Common::KEYCODE_DOWN:
|
|
case Common::KEYCODE_KP2:
|
|
moveUsingKeyboard(0, -1); // Down
|
|
break;
|
|
--- scummvm-1.1.orig/backends/platform/sdl/graphics.cpp 2010-03-21 22:01:52.000000000 +0100
|
|
+++ scummvm-1.1/backends/platform/sdl/graphics.cpp 2010-03-24 09:34:28.000000000 +0100
|
|
@@ -520,6 +520,56 @@
|
|
height = bestMode->h;
|
|
}
|
|
|
|
+#ifdef MAEMO_SDL
|
|
+#include "SDL_syswm.h"
|
|
+
|
|
+static void maemo5_WM_init(int fullscreen){
|
|
+//static int fsdone=0;
|
|
+//static int wmdone=0;
|
|
+SDL_SysWMinfo info;
|
|
+SDL_VERSION(&info.version);
|
|
+if ( SDL_GetWMInfo(&info) ) {
|
|
+ Display *dpy = info.info.x11.display;
|
|
+ Window win;
|
|
+ unsigned long val = 1;
|
|
+ Atom atom_zoom = XInternAtom(dpy, "_HILDON_ZOOM_KEY_ATOM", 0);
|
|
+ info.info.x11.lock_func();
|
|
+ win = info.info.x11.fswindow;
|
|
+ if (win)
|
|
+ XChangeProperty (dpy,win,atom_zoom,XA_INTEGER,32,PropModeReplace,(unsigned char *) &val,1); // grab zoom keys
|
|
+ win = info.info.x11.wmwindow;
|
|
+ if (win)
|
|
+ XChangeProperty (dpy,win,atom_zoom,XA_INTEGER,32,PropModeReplace,(unsigned char *) &val,1); // grab zoom keys
|
|
+#if 0
|
|
+ if (win && fullscreen /* && !fsdone */ ) {
|
|
+ XUnmapWindow(dpy,win);
|
|
+ XChangeProperty (dpy,win,atom_zoom,XA_INTEGER,32,PropModeReplace,(unsigned char *) &val,1); // grab zoom keys
|
|
+ Atom atom_noncomposited = XInternAtom(dpy, "_HILDON_NON_COMPOSITED_WINDOW", 0);
|
|
+ Atom atom_wmstate = XInternAtom(dpy, "_NET_WM_STATE", 0);
|
|
+ Atom atom_wmstate_fullscreen = XInternAtom(dpy, "_NET_WM_STATE_FULLSCREEN", 0);
|
|
+ XSetWindowAttributes xattr;
|
|
+ xattr.override_redirect = False;
|
|
+ XChangeProperty (dpy,win,atom_noncomposited,XA_INTEGER,32,PropModeReplace,(unsigned char *) &val,1); // make window not composited
|
|
+ //XChangeWindowAttributes(dpy, win, CWOverrideRedirect, &xattr); //
|
|
+ XChangeProperty (dpy,win,atom_wmstate,XA_ATOM,32,PropModeReplace,(unsigned char *) &atom_wmstate_fullscreen,1); // mark as fullscreen = disable tskswitch button
|
|
+ XMapWindow(dpy,win);
|
|
+ //fsdone=1;
|
|
+ }
|
|
+ win = info.info.x11.wmwindow;
|
|
+ if (win && !fullscreen /* && !wmdone */) {
|
|
+ XUnmapWindow(dpy,win);
|
|
+ XChangeProperty (dpy,win,atom_zoom,XA_INTEGER,32,PropModeReplace,(unsigned char *) &val,1);
|
|
+ XMapWindow(dpy,win);
|
|
+ //wmdone=1;
|
|
+ }
|
|
+#endif
|
|
+ info.info.x11.unlock_func();
|
|
+// XSync(dpy,False);
|
|
+}
|
|
+}
|
|
+#endif
|
|
+
|
|
+
|
|
bool OSystem_SDL::loadGFXMode() {
|
|
assert(_inited);
|
|
_forceFull = true;
|
|
@@ -560,6 +610,9 @@
|
|
error("allocating _screen failed");
|
|
#endif
|
|
|
|
+#ifdef MAEMO_SDL
|
|
+ maemo5_WM_init(_videoMode.fullscreen);
|
|
+#endif
|
|
//
|
|
// Create the surface that contains the scaled graphics in 16 bit mode
|
|
//
|
|
@@ -939,6 +992,14 @@
|
|
_videoMode.fullscreen = enable;
|
|
_transactionDetails.needHotswap = true;
|
|
}
|
|
+#ifdef MAEMO_SDL
|
|
+ char *caption;
|
|
+ char title[50];
|
|
+ title[49] = '\0';
|
|
+ SDL_WM_GetCaption(&caption, NULL);
|
|
+ if (caption!=NULL) {strncpy(title,caption,49);
|
|
+ setXWindowName(caption); }
|
|
+#endif
|
|
}
|
|
|
|
void OSystem_SDL::setAspectRatioCorrection(bool enable) {
|
|
--- scummvm-1.1.orig/backends/platform/sdl/sdl.cpp 2010-03-21 22:01:52.000000000 +0100
|
|
+++ scummvm-1.1/backends/platform/sdl/sdl.cpp 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -47,6 +47,10 @@
|
|
#include "icons/scummvm.xpm"
|
|
|
|
#include <time.h> // for getTimeAndDate()
|
|
+#ifdef MAEMO_SDL
|
|
+#include <SDL/SDL_syswm.h>
|
|
+#include <X11/Xutil.h>
|
|
+#endif
|
|
|
|
//#define SAMPLES_PER_SEC 11025
|
|
#define SAMPLES_PER_SEC 22050
|
|
@@ -212,7 +216,15 @@
|
|
_timerID = SDL_AddTimer(10, &timer_handler, _timer);
|
|
}
|
|
|
|
- // Invoke parent implementation of this method
|
|
+#ifdef MAEMO_SDL
|
|
+ // some keymappings are done differently for devices with full keyboard (N810=RX-34)
|
|
+ _have_keyboard=0;
|
|
+ char *device=getenv("SCUMMVM_MAEMO_DEVICE");
|
|
+ if (device != NULL)
|
|
+ if ( (strcmp(device,"RX-44") == 0) || (strcmp(device,"RX-48") == 0) || (strcmp(device,"RX-51") == 0))
|
|
+ _have_keyboard=1;
|
|
+#endif
|
|
+ // Invoke parent implementation of this method
|
|
OSystem::initBackend();
|
|
|
|
_inited = true;
|
|
@@ -429,6 +441,23 @@
|
|
return file.createWriteStream();
|
|
}
|
|
|
|
+#ifdef MAEMO_SDL
|
|
+void OSystem_SDL::setXWindowName(const char *caption) {
|
|
+ SDL_SysWMinfo info;
|
|
+ SDL_VERSION(&info.version);
|
|
+ if ( SDL_GetWMInfo(&info) ) {
|
|
+ Display *dpy = info.info.x11.display;
|
|
+ Window win;
|
|
+ //if (_videoMode.fullscreen)
|
|
+ win = info.info.x11.fswindow;
|
|
+ if (win) XStoreName(dpy, win, caption);
|
|
+ //else
|
|
+ win = info.info.x11.wmwindow;
|
|
+ if (win) XStoreName(dpy, win, caption);
|
|
+ }
|
|
+}
|
|
+#endif
|
|
+
|
|
void OSystem_SDL::setWindowCaption(const char *caption) {
|
|
Common::String cap;
|
|
byte c;
|
|
@@ -445,6 +474,11 @@
|
|
}
|
|
|
|
SDL_WM_SetCaption(cap.c_str(), cap.c_str());
|
|
+#ifdef MAEMO_SDL
|
|
+ Common::String cap2("ScummVM - "); // 2 lines in OS2008 task switcher, set first line
|
|
+ cap=cap2+cap;
|
|
+ setXWindowName(cap.c_str());
|
|
+#endif
|
|
}
|
|
|
|
bool OSystem_SDL::hasFeature(Feature f) {
|
|
@@ -529,6 +563,14 @@
|
|
#endif
|
|
}
|
|
|
|
+#ifdef MAEMO_SDL
|
|
+// no Maemo version needs setupIcon
|
|
+// also N900 is hit by SDL_WM_SetIcon bug (window cannot receive input)
|
|
+// http://bugzilla.libsdl.org/show_bug.cgi?id=586
|
|
+void OSystem_SDL::setupIcon() {
|
|
+ ;
|
|
+}
|
|
+#else
|
|
void OSystem_SDL::setupIcon() {
|
|
int x, y, w, h, ncols, nbytes, i;
|
|
unsigned int rgba[256];
|
|
@@ -580,6 +622,7 @@
|
|
SDL_FreeSurface(sdl_surf);
|
|
free(icon);
|
|
}
|
|
+#endif
|
|
|
|
OSystem::MutexRef OSystem_SDL::createMutex() {
|
|
return (MutexRef) SDL_CreateMutex();
|
|
--- scummvm-1.1.orig/backends/platform/sdl/events.cpp 2010-04-02 22:45:24.000000000 +0200
|
|
+++ scummvm-1.1/backends/platform/sdl/events.cpp 2010-04-02 22:44:04.000000000 +0200
|
|
@@ -26,7 +26,9 @@
|
|
#include "backends/platform/sdl/sdl.h"
|
|
#include "common/util.h"
|
|
#include "common/events.h"
|
|
-
|
|
+#ifdef MAEMO_SDL
|
|
+#include "common/config-manager.h"
|
|
+#endif
|
|
// FIXME move joystick defines out and replace with confile file options
|
|
// we should really allow users to map any key to a joystick button
|
|
#define JOY_DEADZONE 3200
|
|
@@ -232,8 +234,13 @@
|
|
|
|
bool OSystem_SDL::handleKeyDown(SDL_Event &ev, Common::Event &event) {
|
|
|
|
+#ifdef MAEMO_SDL
|
|
+// we want to remap first including ctr/shift/alt modifiers
|
|
+ const bool event_complete = remapKey(ev, event);
|
|
+ SDLModToOSystemKeyFlags(ev.key.keysym.mod, event);
|
|
+#else
|
|
SDLModToOSystemKeyFlags(SDL_GetModState(), event);
|
|
-
|
|
+#endif
|
|
// Handle scroll lock as a key modifier
|
|
if (ev.key.keysym.sym == SDLK_SCROLLOCK)
|
|
_scrollLock = !_scrollLock;
|
|
@@ -241,8 +248,13 @@
|
|
if (_scrollLock)
|
|
event.kbd.flags |= Common::KBD_SCRL;
|
|
|
|
+#ifdef MAEMO_SDL
|
|
+ // fullscreen button or ctrl+space toggle full screen mode
|
|
+ if (ev.key.keysym.sym == SDLK_F6 || (_have_keyboard && event.kbd.hasFlags(Common::KBD_CTRL) && (ev.key.keysym.sym == SDLK_SPACE) ) ) {
|
|
+#else
|
|
// Alt-Return and Alt-Enter toggle full screen mode
|
|
if (event.kbd.hasFlags(Common::KBD_ALT) && (ev.key.keysym.sym == SDLK_RETURN || ev.key.keysym.sym == SDLK_KP_ENTER)) {
|
|
+#endif
|
|
beginGFXTransaction();
|
|
setFullscreenMode(!_videoMode.fullscreen);
|
|
endGFXTransaction();
|
|
@@ -276,11 +288,15 @@
|
|
return false;
|
|
}
|
|
|
|
+#ifndef MAEMO_SDL
|
|
// Ctrl-m toggles mouse capture
|
|
if (event.kbd.hasFlags(Common::KBD_CTRL) && ev.key.keysym.sym == 'm') {
|
|
toggleMouseGrab();
|
|
return false;
|
|
}
|
|
+#else
|
|
+// mouse capture makes no sense for Maemo and ctrl+m is used for global menu
|
|
+#endif
|
|
|
|
#if defined(MACOSX)
|
|
// On Macintosh', Cmd-Q quits
|
|
@@ -313,7 +329,11 @@
|
|
return false;
|
|
}
|
|
|
|
+#ifdef MAEMO_SDL
|
|
+ if (event_complete)
|
|
+#else
|
|
if (remapKey(ev, event))
|
|
+#endif
|
|
return true;
|
|
|
|
event.type = Common::EVENT_KEYDOWN;
|
|
@@ -332,7 +352,12 @@
|
|
event.kbd.ascii = mapKey(ev.key.keysym.sym, ev.key.keysym.mod, ev.key.keysym.unicode);
|
|
|
|
// Ctrl-Alt-<key> will change the GFX mode
|
|
+#ifdef MAEMO_SDL
|
|
+ // we can't call SDL_GetModState(), modifiers can be remapped too
|
|
+ SDLModToOSystemKeyFlags(ev.key.keysym.mod, event);
|
|
+#else
|
|
SDLModToOSystemKeyFlags(SDL_GetModState(), event);
|
|
+#endif
|
|
|
|
// Set the scroll lock sticky flag
|
|
if (_scrollLock)
|
|
@@ -355,8 +380,20 @@
|
|
}
|
|
|
|
bool OSystem_SDL::handleMouseButtonDown(SDL_Event &ev, Common::Event &event) {
|
|
+#ifdef MAEMO_SDL
|
|
+ if (ev.button.button == SDL_BUTTON_LEFT){
|
|
+ SDLMod mod=SDL_GetModState();
|
|
+ if (mod & KMOD_SHIFT)
|
|
+ event.type = Common::EVENT_RBUTTONDOWN;
|
|
+ else if ( mod & KMOD_CTRL)
|
|
+ event.type = Common::EVENT_MOUSEMOVE;
|
|
+ else
|
|
+ event.type = Common::EVENT_LBUTTONDOWN;
|
|
+ }
|
|
+#else
|
|
if (ev.button.button == SDL_BUTTON_LEFT)
|
|
event.type = Common::EVENT_LBUTTONDOWN;
|
|
+#endif
|
|
else if (ev.button.button == SDL_BUTTON_RIGHT)
|
|
event.type = Common::EVENT_RBUTTONDOWN;
|
|
#if defined(SDL_BUTTON_WHEELUP) && defined(SDL_BUTTON_WHEELDOWN)
|
|
@@ -372,14 +409,33 @@
|
|
else
|
|
return false;
|
|
|
|
+#ifdef MAEMO_SDL
|
|
+ // we have touchscreen so we may have no mousemotion events between taps
|
|
+ setMousePos(event.mouse.x, event.mouse.y);
|
|
+ // this is trying to fix wrong action done by mouse click in some engines
|
|
+ // it looks like clicking affects objects in previous mouse position
|
|
+ // if this does not help we should perhaps generate some fake mouse motion event(s)
|
|
+#endif
|
|
fillMouseEvent(event, ev.button.x, ev.button.y);
|
|
|
|
return true;
|
|
}
|
|
|
|
bool OSystem_SDL::handleMouseButtonUp(SDL_Event &ev, Common::Event &event) {
|
|
+#ifdef MAEMO_SDL
|
|
+ if (ev.button.button == SDL_BUTTON_LEFT){
|
|
+ SDLMod mod=SDL_GetModState();
|
|
+ if (mod & KMOD_SHIFT)
|
|
+ event.type = Common::EVENT_RBUTTONUP;
|
|
+ else if ( mod & KMOD_CTRL)
|
|
+ event.type = Common::EVENT_MOUSEMOVE;
|
|
+ else
|
|
+ event.type = Common::EVENT_LBUTTONUP;
|
|
+ }
|
|
+#else
|
|
if (ev.button.button == SDL_BUTTON_LEFT)
|
|
event.type = Common::EVENT_LBUTTONUP;
|
|
+#endif
|
|
else if (ev.button.button == SDL_BUTTON_RIGHT)
|
|
event.type = Common::EVENT_RBUTTONUP;
|
|
#if defined(SDL_BUTTON_MIDDLE)
|
|
@@ -503,7 +559,203 @@
|
|
return true;
|
|
}
|
|
|
|
+// called on SDL KEYUP and KEYDOWN events
|
|
bool OSystem_SDL::remapKey(SDL_Event &ev, Common::Event &event) {
|
|
+#ifdef MAEMO_SDL
|
|
+ static int engine=0;
|
|
+#define ENG_OTHER -1
|
|
+//#define ENG_SCUMM 1
|
|
+ static int game=0;
|
|
+#define GAME_OTHER -1
|
|
+#define GAME_LURE 1
|
|
+#define GAME_SWORD1 2
|
|
+#define GAME_SWORD2 3
|
|
+#define GAME_SAGA 4
|
|
+#define GAME_FW 5
|
|
+//#define GAME_SIMON1 6
|
|
+//#define GAME_SIMON2 7
|
|
+#define GAME_FEEBLE 8
|
|
+//#define GAME_TOUCHE 9
|
|
+#define GAME_DISCWORLD 10
|
|
+#define GAME_CRUISE 11
|
|
+
|
|
+
|
|
+ if (engine == 0){
|
|
+ // one time initialization
|
|
+ Common::String gameid(ConfMan.get("gameid"));
|
|
+ if (gameid.hasPrefix("lure")) {
|
|
+ game=GAME_LURE;
|
|
+ engine=ENG_OTHER;
|
|
+ } else if (gameid.hasPrefix("sword2")) {
|
|
+ game=GAME_SWORD2;
|
|
+ engine=ENG_OTHER;
|
|
+ } else if (gameid.hasPrefix("cine")) {
|
|
+ game=GAME_FW;
|
|
+ engine=ENG_OTHER;
|
|
+/* } else if (gameid == "touche") {
|
|
+ game=GAME_TOUCHE;
|
|
+ engine=ENG_OTHER;
|
|
+ } else if (gameid == "simon1") {
|
|
+ game=GAME_SIMON1;
|
|
+ engine=ENG_OTHER;
|
|
+ } else if (gameid == "simon2") {
|
|
+ game=GAME_SIMON2;
|
|
+ engine=ENG_OTHER;
|
|
+*/
|
|
+ } else if (gameid.hasPrefix("feeble")) {
|
|
+ game=GAME_FEEBLE;
|
|
+ engine=ENG_OTHER;
|
|
+ } else if (gameid.hasPrefix("sword1")) {
|
|
+ game=GAME_SWORD1;
|
|
+ engine=ENG_OTHER;
|
|
+ } else if (gameid.hasPrefix("saga")) {
|
|
+ game=GAME_SAGA;
|
|
+ engine=ENG_OTHER;
|
|
+ } else if (gameid.hasPrefix("tinsel")) {
|
|
+ game=GAME_DISCWORLD;
|
|
+ engine=ENG_OTHER;
|
|
+ } else if (gameid.hasPrefix("cruise")) {
|
|
+ game=GAME_CRUISE;
|
|
+ engine=ENG_OTHER;
|
|
+ } else {
|
|
+ game=GAME_OTHER;
|
|
+ engine=ENG_OTHER;
|
|
+ }
|
|
+ }
|
|
+ // global mapping - N810, N900
|
|
+ if (_have_keyboard && (ev.key.keysym.mod & KMOD_CTRL)){
|
|
+ // map ctrl-m to ctrl F5 = global scummvm menu
|
|
+ if (ev.key.keysym.sym==SDLK_m) ev.key.keysym.sym=SDLK_F5 ;
|
|
+ }
|
|
+ if (_have_keyboard && (ev.key.keysym.mod & KMOD_SHIFT)){
|
|
+ // map shift backspace to escape, shift enter to menu key
|
|
+ if (ev.key.keysym.sym==SDLK_BACKSPACE) { ev.key.keysym.sym=SDLK_ESCAPE ; ev.key.keysym.mod = (SDLMod) (ev.key.keysym.mod & ~KMOD_SHIFT); }
|
|
+ if (ev.key.keysym.sym==SDLK_KP_ENTER) { ev.key.keysym.sym=SDLK_F4; ev.key.keysym.mod = (SDLMod) (ev.key.keysym.mod & ~KMOD_SHIFT); }
|
|
+ }
|
|
+
|
|
+ // engine specific mappings
|
|
+ switch (engine){
|
|
+ // nothing now
|
|
+ }
|
|
+ // game specific mapping
|
|
+ switch (game) {
|
|
+ case GAME_LURE:
|
|
+ if ((ev.key.keysym.sym==SDLK_F8 && _have_keyboard ) || (ev.key.keysym.sym==SDLK_F4 && !_have_keyboard)){
|
|
+ // map zoom - to right click if we have keyboard (N810), otherwise map menu key (770,N800)
|
|
+ event.type = ((ev.type==SDL_KEYUP) ? Common::EVENT_RBUTTONUP : Common::EVENT_RBUTTONDOWN );
|
|
+ event.mouse.x = _mouseCurState.x;
|
|
+ event.mouse.y = _mouseCurState.y;
|
|
+ return true;
|
|
+
|
|
+ }
|
|
+ switch(ev.key.keysym.sym){
|
|
+ case SDLK_F5: // map F5 (home key) to f9 = restart game
|
|
+ ev.key.keysym.sym=SDLK_F9;
|
|
+ break;
|
|
+ case SDLK_F8: // map F8 (zoom - key) to F5 (save dialog) in game
|
|
+ ev.key.keysym.sym=SDLK_F5;
|
|
+ break;
|
|
+ case SDLK_F4: // same as above, only one mapping happens due to right click maping above
|
|
+ ev.key.keysym.sym=SDLK_F5;
|
|
+ default:
|
|
+ ;
|
|
+ }
|
|
+ break;
|
|
+ case GAME_FW:
|
|
+ // Future Wars - no mapping here, done in game engine
|
|
+ break;
|
|
+ case GAME_FEEBLE:
|
|
+ if ((ev.key.keysym.sym==SDLK_F8 && _have_keyboard ) || (ev.key.keysym.sym==SDLK_F4 && !_have_keyboard)){
|
|
+ // map zoom - to right click if we have keyboard (N810), otherwise map menu key (770,N800)
|
|
+ event.type = ((ev.type==SDL_KEYUP) ? Common::EVENT_RBUTTONUP : Common::EVENT_RBUTTONDOWN );
|
|
+ event.mouse.x = _mouseCurState.x;
|
|
+ event.mouse.y = _mouseCurState.y;
|
|
+ return true;
|
|
+
|
|
+ }
|
|
+ if (!_have_keyboard) switch(ev.key.keysym.sym){
|
|
+ case SDLK_F7: // map F7 (zoom + key) to letter y
|
|
+ ev.key.keysym.sym=SDLK_y;
|
|
+ break;
|
|
+ case SDLK_F8: // map F8 (zoom - key) to letter 1
|
|
+ ev.key.keysym.sym=SDLK_1;
|
|
+ break;
|
|
+ default:
|
|
+ ;
|
|
+ }
|
|
+ break;
|
|
+ case GAME_DISCWORLD:
|
|
+ switch(ev.key.keysym.sym) {
|
|
+ case SDLK_F8: // map F8 (zoom - key) to right click
|
|
+ event.type = ((ev.type==SDL_KEYUP) ? Common::EVENT_RBUTTONUP : Common::EVENT_RBUTTONDOWN );
|
|
+ event.mouse.x = _mouseCurState.x;
|
|
+ event.mouse.y = _mouseCurState.y;
|
|
+ return true;
|
|
+ // now map F7 (=zoom+) to Enter for N810 (useful when closed)
|
|
+ case SDLK_F7:
|
|
+ if (_have_keyboard) ev.key.keysym.sym=SDLK_RETURN; else ev.key.keysym.sym=SDLK_y;
|
|
+ break;
|
|
+ case SDLK_F4: // map menu key to game menu
|
|
+ case SDLK_F5: // swap/home key too
|
|
+ ev.key.keysym.sym=SDLK_F1;
|
|
+ break;
|
|
+ default:
|
|
+ ;
|
|
+ }
|
|
+ break;
|
|
+ case GAME_CRUISE:
|
|
+ switch(ev.key.keysym.sym) {
|
|
+ case SDLK_F8: // map F8 (zoom - key) to right click
|
|
+ event.type = ((ev.type==SDL_KEYUP) ? Common::EVENT_RBUTTONUP : Common::EVENT_RBUTTONDOWN );
|
|
+ event.mouse.x = _mouseCurState.x;
|
|
+ event.mouse.y = _mouseCurState.y;
|
|
+ return true;
|
|
+ // now map F7 (=zoom+) to menu for N810 (useful when closed)
|
|
+ case SDLK_F7:
|
|
+ if (_have_keyboard) ev.key.keysym.sym=SDLK_F10; else ev.key.keysym.sym=SDLK_p;
|
|
+ break;
|
|
+ case SDLK_F4: // map menu key to game menu
|
|
+ ev.key.keysym.sym=SDLK_F10;
|
|
+ break;
|
|
+ default:
|
|
+ ;
|
|
+ }
|
|
+ break;
|
|
+ default:
|
|
+ //case GAME_SWORD2:
|
|
+ //case GAME_SWORD1:
|
|
+ //case GAME_SAGA: //I Have No Mouth
|
|
+ if (!_have_keyboard) switch(ev.key.keysym.sym){
|
|
+ case SDLK_F7: // map F7 (zoom + key) to letter y for save game entry and 'yes' replies (simon, touche)
|
|
+ ev.key.keysym.sym=SDLK_y;
|
|
+ break;
|
|
+ case SDLK_F8: // map F8 (zoom - key) to letter 1 for save game entry and copyprotection in monkey2
|
|
+ ev.key.keysym.sym=SDLK_1;
|
|
+ break;
|
|
+ default:
|
|
+ ;
|
|
+ } else switch(ev.key.keysym.sym) {
|
|
+ case SDLK_F8: // map F8 (zoom - key) to right click
|
|
+ event.type = ((ev.type==SDL_KEYUP) ? Common::EVENT_RBUTTONUP : Common::EVENT_RBUTTONDOWN );
|
|
+ event.mouse.x = _mouseCurState.x;
|
|
+ event.mouse.y = _mouseCurState.y;
|
|
+ return true;
|
|
+ // now map F7 (=zoom+) to menu (=F4) so we can have same mapping for N810 and 770/800 for menu key
|
|
+ // N800's real menu key is hidden on retractable keyboard so we use zoom+ for it instead too
|
|
+ case SDLK_F7:
|
|
+ ev.key.keysym.sym=SDLK_F4;
|
|
+ break;
|
|
+ /* with real keyboard we can afford to lose F7, do not remap F4 back
|
|
+ case SDLK_F4:
|
|
+ ev.key.keysym.sym=SDLK_F7;
|
|
+ break; */
|
|
+ default:
|
|
+ ;
|
|
+ }
|
|
+ break;
|
|
+ }
|
|
+#endif //SDL_MAEMO
|
|
+
|
|
#ifdef LINUPY
|
|
// On Yopy map the End button to quit
|
|
if ((ev.key.keysym.sym == 293)) {
|
|
--- scummvm-1.1.orig/backends/platform/sdl/sdl.h 2010-03-21 22:01:52.000000000 +0100
|
|
+++ scummvm-1.1/backends/platform/sdl/sdl.h 2010-03-24 00:14:36.000000000 +0100
|
|
@@ -230,6 +230,9 @@
|
|
virtual int getGraphicsMode() const;
|
|
|
|
virtual void setWindowCaption(const char *caption);
|
|
+#ifdef MAEMO_SDL
|
|
+ void setXWindowName(const char *caption);
|
|
+#endif
|
|
virtual bool openCD(int drive);
|
|
|
|
virtual bool hasFeature(Feature f);
|
|
@@ -418,6 +421,9 @@
|
|
// joystick
|
|
SDL_Joystick *_joystick;
|
|
|
|
+#ifdef MAEMO_SDL
|
|
+ int _have_keyboard;
|
|
+#endif
|
|
// Shake mode
|
|
int _currentShakePos;
|
|
int _newShakePos;
|