Mercurial > sdl-ios-xcode
comparison README.NanoX @ 471:26dafefeebb2
Date: Sat, 24 Aug 2002 22:20:01 -0600
From: "Greg Haerr"
Subject: Announce: sdl-nanox-patch
Sam,
I've created an update patch for enhanced Nano-X support
with SDL. I've created the patch against SDL-1.2.4. I'd appreciate
it if you would apply it to the next SDL version.
Enhancements include:
1. Small bugfixes to compile without errors
2. Support for direct client-side framebuffer access with configure option
3. Add dynamic pixel type support for hardware framebuffer; eliminating the
need for compile-time configuration option.
I've updated the README.NanoX file with the details.
This version has been tested with Microwindows v0.89pre9 CVS
and SMPEG 0.4.4. I've added multi-threading support to
Microwindows to support the multi-threaded SMPEG, and
all works fine. To turn on thread safety in Microwindows,
use THREADSAFE=Y in the Microwindows config file.
Thanks!
Regards,
Greg
Founder, The Microwindows Project
http://microwindows.org
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sun, 25 Aug 2002 06:21:49 +0000 |
parents | 57bf11a5efd7 |
children |
comparison
equal
deleted
inserted
replaced
470:877b992f2d0c | 471:26dafefeebb2 |
---|---|
1 ================================================================= | 1 ================================================================= |
2 Patch version 0.8 of SDL(Simple DirectMedia Layer) for Nano-X API | 2 Patch version 0.9 of SDL(Simple DirectMedia Layer) for Nano-X API |
3 ================================================================= | 3 ================================================================= |
4 | 4 |
5 Author: Hsieh-Fu Tsai, clare@setabox.com | 5 Authors: Hsieh-Fu Tsai, clare@setabox.com |
6 Greg Haerr, greg@censoft.com | |
6 | 7 |
7 There are two patch files in this package. | 8 This patch is against SDL version 1.2.4. |
9 It enhances previous patch 0.8 by providing direct framebuffer | |
10 access as well as dynamic hardware pixel type support, not | |
11 requiring a compile-time option setting for different framebuffer | |
12 modes. | |
13 Tested against Microwindows version 0.89pre9. | |
8 | 14 |
9 1. The first patch file, nanox.patch, is to fix a bug in Nano-X. | 15 Older Microwindows versions |
10 This patch is proposed by Gary James (gjames@twcny.rr.com). | 16 =========================== |
17 If running on a version older than Microwindows 0.89pre9, | |
18 the following items might need to be patched in Microwindows. | |
11 | 19 |
20 1. Patch src/nanox/client.c::GrClose() | |
12 It fixes the client side GrClose(). In the original version, | 21 It fixes the client side GrClose(). In the original version, |
13 GrOpen() can only be called once. When the GrOpen() is called at | 22 GrOpen() can only be called once. When the GrOpen() is called at |
14 the second time, the program will terminate. In order to prevent | 23 the second time, the program will terminate. In order to prevent |
15 this situation, we need to insert "nxSocket = -1" after | 24 this situation, we need to insert "nxSocket = -1" after |
16 "close(nxSocket)" in GrClose(). If you do not have this problem, | 25 "close(nxSocket)" in GrClose(). If you do not have this problem, |
17 you may skip this step. | 26 you may skip this step. |
27 | |
28 2. Patch src/nanox/clientfb.c to return absolute x,y coordinates | |
29 when using GrGetWindowFBInfo(). Copy the version 0.89pre9 | |
30 of src/nanox/clientfb.c to your system, or configure | |
31 using --disable-nanox-direct-fb. | |
18 | 32 |
19 ============= | 33 ============= |
20 Quick Install | 34 Quick Install |
21 ============= | 35 ============= |
22 | 36 |
29 | 43 |
30 ============ | 44 ============ |
31 Nitty-gritty | 45 Nitty-gritty |
32 ============ | 46 ============ |
33 | 47 |
34 --with-nanox-pixel-type=[rgb/0888/888/565/555/332/pal] | 48 --enable-nanox-direct-fb Use direct framebuffer access |
35 | |
36 If the wrong pixel type is used, the program will crash when the | |
37 sub-routine updates the screen. This option depends on SCREEN_PIXTYPE | |
38 which is defined in Microwin0.89pre7/src/config. SCREEN_PIXTYPE | |
39 is used to define the pixel type in Microwindows/Nano-X. | |
40 I only test the program when the pixel type is in "rgb" | |
41 (Microwin under X11) or "888" (framebuffer in 24-bit). | |
42 | |
43 --enable-nanox-debug Show debug messages | 49 --enable-nanox-debug Show debug messages |
44 --enable-nanox-share-memory Use shared-memory to speed up | 50 --enable-nanox-share-memory Use shared-memory to speed up |
51 | |
52 When running multi-threaded applications using SDL, such | |
53 as SMPEG, set THREADSAFE=Y in Microwindows' config file, | |
54 to enable GrXXX() system call critical section support. | |
45 | 55 |
46 ============================================= | 56 ============================================= |
47 Some programs can be used to test this patch. | 57 Some programs can be used to test this patch. |
48 ============================================= | 58 ============================================= |
49 | 59 |
50 1. http://www.cs.berkeley.edu/~weimer/atris (a tetris-like game) | 60 1. http://www.cs.berkeley.edu/~weimer/atris (a tetris-like game) |
51 2. http://www.libsdl.org/projects/newvox/ | 61 2. http://www.libsdl.org/projects/newvox/ |
52 3. http://www.libsdl.org/projects/xflame/ | 62 3. http://www.libsdl.org/projects/xflame/ |
53 4. http://www.libsdl.org/projects/optimum/ | 63 4. http://www.libsdl.org/projects/optimum/ |
54 5. http://www.gnugeneration.com/software/loop/ | 64 5. http://www.gnugeneration.com/software/loop/ |
55 | 65 6: http://www.lokigames.com/development/smpeg.php3 (SMPEG version 0.4.4) |
66 | |
56 ========= | 67 ========= |
57 Todo List | 68 Todo List |
58 ========= | 69 ========= |
59 | 70 |
60 1. Create hardware surface | 71 1. Create hardware surface |
61 2. Create YUVOverlay on hardware | 72 2. Create YUVOverlay on hardware |
62 3. Use OpenGL | 73 3. Use OpenGL |
63 4. Gamma correction | 74 4. Gamma correction |
64 5. Hide/Change mouse pointer | 75 5. Hide/Change mouse pointer |
76 6. Better window movement control with direct fb access | |
77 7. Palette handling in 8bpp could be improved | |
65 | 78 |
66 ===================== | 79 ===================== |
67 Supporting Institutes | 80 Supporting Institutes |
68 ===================== | 81 ===================== |
69 | 82 |
70 Many thanks to go to Setabox Co., Ltd. and CML (Communication and | 83 Many thanks to go to Setabox Co., Ltd. and CML (Communication and |
71 Multimedia Laboratory, http://www.cmlab.csie.ntu.edu.tw/) in the | 84 Multimedia Laboratory, http://www.cmlab.csie.ntu.edu.tw/) in the |
72 Department of Computer Science and Information Engineering of | 85 Department of Computer Science and Information Engineering of |
73 National Taiwan University for supporting this porting project. | 86 National Taiwan University for supporting this porting project. |
74 | 87 |
88 Century Embedded Technologies (http://embedded.censoft.com) | |
89 for this patch. | |
90 | |
75 =================== | 91 =================== |
76 Contact Information | 92 Contact Information |
77 =================== | 93 =================== |
78 | 94 |
79 Welcome to give me any suggestion and to report bugs. | 95 Welcome to give me any suggestion and to report bugs. |
80 My e-mail address : clare@setabox.com or niky@cmlab.csie.ntu.edu.tw | 96 My e-mail address : clare@setabox.com or niky@cmlab.csie.ntu.edu.tw |
81 | 97 or greg@censoft.com |