2004-05-25 11:20:37 +00:00
|
|
|
wxWidgets PDA/Embedded System Emulator
|
2002-03-10 13:30:16 +00:00
|
|
|
======================================
|
|
|
|
|
|
|
|
This is a simple display emulator for embedded
|
2004-05-25 11:20:37 +00:00
|
|
|
applications (wxWidgets or other) that use
|
2002-03-10 13:30:16 +00:00
|
|
|
an X server. The Familiar Linux distribution
|
|
|
|
is one such environment, using Tiny-X.
|
|
|
|
|
|
|
|
wxEmulator uses Xnest, which is the XFree86
|
|
|
|
X server compiled to show a virtual X desktop
|
|
|
|
in a window. wxEmulator hijacks the Xnest
|
|
|
|
window by reparenting its window, and shows
|
|
|
|
this window with appropriate PDA-style decorations
|
|
|
|
surrounding it.
|
|
|
|
|
|
|
|
No real emulation is done, apart from the work
|
|
|
|
that Xnest does. You compile your apps on your
|
|
|
|
host as usual and test them out with the emulator
|
|
|
|
to get an idea of the constraints of the embedded
|
|
|
|
system display. Then compile the apps for your
|
|
|
|
target system with a suitable cross-compiler,
|
|
|
|
or if you have the luxury of lots of space on
|
|
|
|
your target device, compile natively on the
|
|
|
|
target.
|
|
|
|
|
|
|
|
It is intended to create a tarball of the
|
|
|
|
emulator, wxX11 and maybe some other useful
|
|
|
|
components such as a simple window manager so that
|
|
|
|
people can quickly start developing embedded
|
|
|
|
GUI applications without the need for actual
|
|
|
|
target hardware.
|
|
|
|
|
|
|
|
Running wxEmulator
|
|
|
|
==================
|
|
|
|
|
|
|
|
Make sure Xnest is in your PATH. You can download
|
|
|
|
a binary from the XFree86 ftp server or a mirror,
|
|
|
|
or you can compile Xnest from source -- but this
|
|
|
|
downloading XFree86 source in its entirety and
|
|
|
|
compiling it. Say goodbye to half a gig of disk
|
|
|
|
space if you take this option.
|
|
|
|
|
|
|
|
Then run wxEmulator:
|
|
|
|
|
|
|
|
% emulator &
|
|
|
|
|
2002-03-11 12:10:03 +00:00
|
|
|
or
|
|
|
|
|
|
|
|
% emulator mydevice.wxe &
|
|
|
|
|
|
|
|
to specify a configuration file. Run emulator --help
|
|
|
|
to show what options are available, such as --use-display
|
|
|
|
for specifying a display other than :100.
|
|
|
|
|
2002-03-10 13:30:16 +00:00
|
|
|
After a brief flicker in which wxEmulator steals
|
|
|
|
Xnest's window, you should see an emulated iPAQ with
|
|
|
|
a checked screen that indicates raw X with nothing else
|
|
|
|
running.
|
|
|
|
|
|
|
|
Running any X applications with the Xnest display
|
|
|
|
number (currently 100) will show those applications
|
|
|
|
in the emulator window instead of the normal desktop.
|
|
|
|
|
|
|
|
For example:
|
|
|
|
|
|
|
|
% xeyes -display :100 &
|
|
|
|
|
|
|
|
Before running any other programs, run a window
|
|
|
|
manager such as twm:
|
|
|
|
|
|
|
|
% twm -display :100 &
|
|
|
|
|
|
|
|
If the X program or WM you want to run doesn't support the
|
|
|
|
-display argument, try exporting the DISPLAY variable
|
|
|
|
before running it. E.g.:
|
|
|
|
|
|
|
|
% export DISPLAY=:100
|
|
|
|
% xterm &
|
|
|
|
|
2002-03-11 12:10:03 +00:00
|
|
|
For details on the configuration file format, please
|
|
|
|
see default.wxe. Eventually it will support
|
|
|
|
device buttons.
|
2002-03-10 13:30:16 +00:00
|
|
|
|
|
|
|
Compiling wxEmulator
|
|
|
|
====================
|
|
|
|
|
|
|
|
You need to use wxX11 -- no other port is supported.
|
|
|
|
Configure and make wxX11 in the usual way (see docs/x11/install.txt
|
2004-05-25 11:20:37 +00:00
|
|
|
at the wxWidgets top level), then compile wxEmulator
|
2002-03-10 13:30:16 +00:00
|
|
|
using the makefile that configure created.
|
|
|
|
|
|
|
|
Have fun!
|
|
|
|
|
|
|
|
Julian Smart, March 2002
|
|
|
|
|