Ticket #7987: scumm-zaurus-cvs020723.patch

File scumm-zaurus-cvs020723.patch, 4.7 KB (added by SF/mncl, 22 years ago)

patch for Qtopia/sharp zaurus

  • Makefile.Qtopia

    Common subdirectories: ../scummvm/CVS and ./CVS
    diff -u ../scummvm/Makefile.Qtopia ./Makefile.Qtopia
    old new  
     1# $Header: /cvsroot/scummvm/scummvm/Makefile,v 1.41 2002/04/27 16:58:28 ender Exp $
     2
     3CC      = arm-linux-g++
     4CFLAGS  = -g -O -Wall -Wstrict-prototypes -Wuninitialized -Wno-long-long -Wno-multichar
     5DEFINES = -DUNIX -DCOMPRESSED_SOUND_FILE -DBYPASS_COPY_PROT -DQTOPIA -DSCUMM_NEED_ALIGNMENT
     6LDFLAGS :=
     7INCLUDES:= `/opt/Qtopia/sharp/bin/sdl-config --cflags` -I./ -I./sound
     8CPPFLAGS= $(DEFINES) $(INCLUDES)
     9
     10# Add -lmad for -DCOMPRESSED_SOUND_FILE
     11LIBS    = `/opt/Qtopia/sharp/bin/sdl-config --libs` -lmad
     12#-lncurses
     13
     14OBJS    = sdl.o
     15
     16include Makefile.common
     17
     18dist:
     19        rm -f $(ZIPFILE)
     20        zip -q $(ZIPFILE) $(DISTFILES)
  • config-file.cpp

    Common subdirectories: ../scummvm/PocketSCUMM and ./PocketSCUMM
    diff -u ../scummvm/config-file.cpp ./config-file.cpp
    old new  
    7474}
    7575
    7676hashconfig::~hashconfig () {
     77        #ifndef QTOPIA
     78        // i dont know what this does but it appears to be needed
    7779        xfree(domain);
     80        #endif
    7881}
    7982
    8083bool hashconfig::is_domain(const char *d) const
     
    205208}
    206209
    207210Config::~Config () {
     211        #ifndef QTOPIA
     212        //i dont know what this does but it appears to be needed
    208213        int i;
    209214
    210215        xfree(filename);
     
    214219                delete hash[i];
    215220        }
    216221        xfree(hash);
     222        #endif
    217223}
    218224
    219225const char *Config::get(const char *key, const char *d) const
  • main.cpp

    Common subdirectories: ../scummvm/dc and ./dc
    Common subdirectories: ../scummvm/debian and ./debian
    Common subdirectories: ../scummvm/gui and ./gui
    Common subdirectories: ../scummvm/mac and ./mac
    Common subdirectories: ../scummvm/macosclassic and ./macosclassic
    diff -u ../scummvm/main.cpp ./main.cpp
    old new  
    2828#include "simon/simon.h"
    2929#include "config-file.h"
    3030
     31#if defined(QTOPIA)
     32// i dont know what this does it's just needed
     33extern "C" int main(int argc, char *argv[]);
     34#endif
     35
    3136GameDetector detector;
    3237Gui gui;
    3338
     
    3944Config * scummcfg;
    4045
    4146
    42 #if defined(MACOSX) && defined(UNIX)
     47#if defined(MACOSX) && defined(UNIX) && defined(QTOPIA)
    4348#include <SDL.h>
    44 #elif !defined(__MORPHOS__)
     49#elif !defined(__MORPHOS__) && !defined(QTOPIA)
    4550#undef main
    4651#endif
    4752
  • sdl.cpp

    Common subdirectories: ../scummvm/morphos and ./morphos
    diff -u ../scummvm/sdl.cpp ./sdl.cpp
    old new  
    846846                                        quit();
    847847                                        break;
    848848                                }
    849        
    850849                                if (b == (KBD_CTRL|KBD_ALT) &&
    851850                                        (ev.key.keysym.sym>='1') && (ev.key.keysym.sym<='7')) {
    852851                                        Property prop;
     
    854853                                        property(PROP_SET_GFX_MODE, &prop);
    855854                                        break;
    856855                                }
    857        
    858        
     856                                #ifdef QTOPIA
     857                                // quit on fn+backspace on zaurus
     858                                if (ev.key.keysym.sym==127) {
     859                                        quit();
     860                                        break;
     861                                }
     862                                // map menu key (f11) to f5 (scumm menu)
     863                                if (ev.key.keysym.sym==292) {
     864                                        event->event_code = EVENT_KEYDOWN;
     865                                        event->kbd.keycode = 286;
     866                                        event->kbd.ascii = mapKey(286, ev.key.keysym.mod);
     867                                }
     868                                // map center (space) to tab (default action )
     869                                // i wanted to map the calendar button but the calendar comes up
     870                                //
     871                                else if (ev.key.keysym.sym==32) {
     872                                        event->event_code = EVENT_KEYDOWN;
     873                                        event->kbd.keycode = 9;
     874                                        event->kbd.ascii = mapKey(9, ev.key.keysym.mod);
     875                                }
     876                                // since we stole space (pause) above we'll rebind it to the tab key on the keyboard
     877                                else if (ev.key.keysym.sym==9) {
     878                                        event->event_code = EVENT_KEYDOWN;
     879                                        event->kbd.keycode = 32;
     880                                        event->kbd.ascii = mapKey(32, ev.key.keysym.mod);
     881                                }
     882                                else {
     883                                // let the events fall through if we didn't change them, this may not be the best way to
     884                                // set it up, but i'm not sure how sdl would like it if we let if fall through then redid it though.
     885                                // and yes i have an huge terminal size so i dont wrap soon enough.
     886                                        event->event_code = EVENT_KEYDOWN;
     887                                        event->kbd.keycode = ev.key.keysym.sym;
     888                                        event->kbd.ascii = mapKey(ev.key.keysym.sym, ev.key.keysym.mod);
     889                                }
     890                                #endif
     891                                #ifndef QTOPIA
    859892                                event->event_code = EVENT_KEYDOWN;
    860893                                event->kbd.keycode = ev.key.keysym.sym;
    861894                                event->kbd.ascii = mapKey(ev.key.keysym.sym, ev.key.keysym.mod);
     895                                #endif
     896                               
    862897                                switch(ev.key.keysym.sym) {
    863898                                        case SDLK_LEFT:
    864899                                                km.x_vel = -1;