386
|
1
|
|
2 ==============================================================================
|
|
3 Using the Simple DirectMedia Layer with Qtopia/OPIE
|
|
4 ==============================================================================
|
|
5
|
|
6 ==============================================================================
|
|
7 I. Setting up the Qtopia development environment.
|
|
8
|
|
9 This document will not explain how to setup the Qtopia development
|
|
10 environment. That is outside the scope of the document. You can read
|
|
11 more on this subject in this excellent howto:
|
|
12
|
|
13 http://www.zauruszone.com/howtos/linux_compiler_setup_howto.html
|
|
14
|
|
15 ==============================================================================
|
|
16 II. Building the Simple DirectMedia Layer libraries using the arm
|
|
17 cross-compiler
|
|
18
|
|
19 This is somewhat tricky since the name of the compiler binaries
|
|
20 differ from the standard. Also you should disable features not
|
|
21 needed. The command below works for me. Note that it's all one
|
|
22 line. You can also set the NM, LD etc environment variables
|
|
23 separately.
|
|
24
|
|
25 NM=arm-linux-nm LD=arm-linux-ld CC=arm-linux-gcc CXX=arm-linux-g++ RANLIB=arm-linux-ranlib AR=arm-linux-ar ./configure --enable-video-qtopia --disable-video-dummy --disable-video-fbcon --disable-video-dga --disable-arts --disable-esd --disable-alsa --disable-cdrom --disable-video-x11 --disable-nasm --prefix=/opt/Qtopia/sharp/ arm-unknown-linux-gnu
|
|
26
|
|
27 One thing to note is that the above configure will include joystick
|
|
28 support, even though you can't have joysticks on the Zaurus. The
|
|
29 reason for this is to avoid link / compile / runtime errors with
|
|
30 applications that have joystick support.
|
|
31
|
|
32 ==============================================================================
|
|
33 III. Building the Simple DirectMedia Layer test programs:
|
|
34
|
|
35 After installing, making sure the correct sdl-config is in your
|
|
36 path, run configure like this:
|
|
37
|
|
38 NM=arm-linux-nm LD=arm-linux-ld CC=arm-linux-gcc CXX=arm-linux-g++ AR=arm-linux-ar ./configure arm-unknown-linux-gnu
|
|
39
|
|
40 ==============================================================================
|
|
41 IV. Application porting notes
|
|
42
|
|
43 One thing I have noticed is that applications sometimes don't exit
|
|
44 correctly. Their icon remains in the taskbar and they tend to
|
|
45 relaunch themselves automatically. I believe this problem doesn't
|
|
46 occur if you exit your application using the exit() method. However,
|
|
47 if you end main() with 'return 0;' or so, this seems to happen.
|
|
48
|
|
49 Also note that when running in landscape mode - i.e requesting a
|
|
50 window that is HEIGHT pixels wide and WIDTH pixels high, where WIDTH
|
|
51 and HEIGHT normally is 240 and 320 - the image is blitted so that
|
|
52 the hardware buttons are on the left side of the display. This might
|
|
53 not always be desirable but such is the code today.
|
|
54
|
|
55
|
|
56 ==============================================================================
|
|
57 V. Enjoy! :)
|
|
58
|
|
59 If you have a project you'd like me to know about, or want to ask questions,
|
|
60 go ahead and join the SDL developer's mailing list by sending e-mail to:
|
|
61
|
|
62 sdl-request@libsdl.org
|
|
63
|
|
64 and put "subscribe" into the subject of the message. Or alternatively you
|
|
65 can use the web interface:
|
|
66
|
|
67 http://www.libsdl.org/mailman/listinfo/sdl
|
|
68
|
|
69 ==============================================================================
|
|
70 VI. What is supported:
|
|
71
|
|
72 Keyboard (Sharp Zaurus)
|
|
73 Hardware buttons
|
|
74 Stylus input (mouse)
|
|
75 Video. Allows fullscreen both in portrait mode (up to WIDTHxHEIGHT
|
|
76 size window) and in landscape mode (up to HEIGHTxWIDTH).
|
|
77
|
|
78 All other SDL functionality works like a normal Linux system (threads,
|
|
79 audio etc).
|
|
80
|
|
81 --
|
|
82 David Hedbor <david@hedbor.org>
|
|
83 http://david.hedbor.org/ http://eongames.com/
|
|
84
|