home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 October / CHIPHEFT102001.ISO / pda / Palm / dateien / emulator_app_21d29.sit / Docs / UnixNotes.txt < prev   
Encoding:
Text File  |  1999-07-07  |  4.9 KB  |  140 lines  |  [TEXT/CWIE]

  1. Interesting things about POSER for UNIX
  2.  
  3. Requirements
  4. ------------
  5.  
  6. POSER for UNIX is being developed and (very lightly) tested on
  7. x86-Linux, running RedHat Linux 6.0, kernel 2.2.5, glibc-devel 2.1.1-6
  8. using XFree86 3.3.3.1-49 running a 16 bit display.
  9.  
  10. We use pthreads, so you need GNU glibc2 (aka Linux libc6) C library and
  11. a 2.x kernel on a Linux system.  Other operating systems need to support
  12. true threads.
  13.  
  14. IMPORTANT!!!
  15.  
  16. The source makes heavy use of C++ templates, and some exceptions.  On
  17. Linux, you must have egcs-1.1.1 or better to compile it.  egcs-1.1 or any
  18. gcc WILL NOT WORK.  RedHat Linux 6.0 comes with egcs 1.1.2, so you
  19. should be OK there.  If you are running RedHat Linux 5.2, you will need
  20. to download the latest from <http://egcs.cygnus.com> and build it.  For
  21. other OS'es, either use egcs, or be sure your compiler supports these
  22. C++ features.
  23.  
  24.     (Note that egcs needs to be built with the HANDLE_SYSV_PRAGMA option
  25.      turned on in order to have the support to pack structures correctly.
  26.      The Linux version of egcs has this turned on, but other variants --
  27.      such as the compiler that comes with FreeBSD -- may not.)
  28.  
  29. STOP NOW AND RE-READ THE LAST TWO PARAGRAPHS.
  30.  
  31. We use the FLTK X toolkit.  I'm not going to get into an X GUI Toolkit
  32. religious war, so don't ask why not some other toolkit.  You are
  33. encouraged to add support for other toolkits, like Qt or GTK+ or even
  34. Xt.  I have tried to keep all of the FLTK code in the fltk_*.cpp files.
  35. If you add support for another toolkit, please follow that pattern.
  36. Don't pollute the UNIX-generic code with toolkit specific code.  FLTK is
  37. available from <http://www.fltk.org>, is a quick download, and is easy
  38. to build on a variety of OS'es.  We've tested with the binary install
  39. RPMs for 1.0.3 and 1.0.4.
  40.  
  41.  
  42. Porting
  43. -------
  44.  
  45. In theory, POSER should be quite portable to other OS'es and OS versions
  46. -- we just haven't done it yet.  There are a few things to look out for:
  47.  
  48. o OmniThreads (the C++ thread abstraction layer we use) needs several
  49.   defines set properly for your host OS.  See Makefile.am for these
  50.   switches.  Eventually, this stuff should be migrated into the GNU
  51.   autoconf system
  52.  
  53. o Various UNIXisms: for example, POSER uses the stat() system call,
  54.   which can vary slightly from OS to OS.  Again, this should eventually
  55.   migrate to autoconf control.  For now, just try building it.
  56.  
  57. o Most other stuff should be fine -- in particular, I don't anticipate 
  58.   any byte ordering problems -- certainly not from the SrcShared part
  59.   of the code, as that is absolutely stock code from the Mac and
  60.   Windows ports.
  61.  
  62. o If you want to port POSER to other flavors of UNIX, please please
  63.   try hard to limit your tweaking to the SrcUnix and BuildUnix
  64.   directories.  You shouldn't have to change anything in SrcShared.
  65.  
  66.  
  67. Status
  68. ------
  69.  
  70. What works:
  71.  
  72. o Core emulation of all current Palm devices & ROMs (in theory --
  73.   we've spot checked about 5 or so combinations )
  74. o Gremlins
  75. o Loading PRC's / PDB's, etc
  76. o Preferences
  77. o Loading / Saving RAM images
  78. o Skins (!)
  79.  
  80. To be added:
  81.  
  82. o Serial support
  83. o Debugging interface
  84. o Easy screenshots
  85. o Actual use of the autoconf system
  86. o ROM Transfer
  87. o Progress indicator window (when loading PRCs, etc.)
  88. o Gremlin control window
  89. o Auto startup sequence (restarting or reloading from where you last
  90.   left off)
  91. o Support for Autoload, et al., directories
  92.  
  93. To be fixed:
  94.  
  95. o Screen drawing is too slow
  96. o Some crashes on save/load RAM
  97. o Profiling should work, but hasn't been tested
  98. o There are lots of embedded English strings which should be moved to
  99.   some sort of resource file (like the ResStrings.cpp)
  100. o NetLib redirection has only been very lightly tested.
  101. o Power button doesn't work (backlight is OK, but on/off is broken)
  102. o Not all menu items are enabled/disabled correctly.
  103.  
  104.  
  105. How You Can Help
  106. ----------------
  107.  
  108. We're most interested in getting help in these areas:
  109.  
  110. o Testing, of course.  If you can fix a bug and submit a patch, that's
  111.   great.  Otherwise, please characterize the bug as best you can and
  112.   let us know.
  113.  
  114. o Porting and GNU autoconf usage.  Autoconf is not really used right
  115.   now.  If someone is already familiar with this system, support would
  116.   be great.  If you want to port POSER to another UNIX flavor, please
  117.   try to use the autoconf system.  See
  118.   <http://www.fsf.org/manual/manual.html>
  119.  
  120. o Serial support - perhaps back-ported from XCopilot
  121.  
  122. o Better screen drawing code -- if you're an X-expert, please feel
  123.   free to improve the code that puts the bits on the screen.
  124.  
  125. o Skins - draw skins for other devices... See SrcUnix/skins/* for
  126.   examples.
  127.  
  128.  
  129. External Credits
  130. ----------------
  131.  
  132. The OmniThread C++ thread library is from the omniORB2 program.  It is
  133. Copyright (C) 1994,1995,1996,1997 Olivetti & Oracle Research Laboratory,
  134. and is published under the GNU Library GPL (LGPL).  See
  135. <http://www.uk.research.att.com/omniORB/omniORB.html> for information on
  136. the OmniThreads library and its license.
  137.  
  138. Also, see the "About" box.  If others need to be credited, please let us
  139. know.
  140.