88 lines
2.5 KiB
Plaintext
88 lines
2.5 KiB
Plaintext
|
wxWindows PDA/Embedded System Emulator
|
||
|
======================================
|
||
|
|
||
|
This is a simple display emulator for embedded
|
||
|
applications (wxWindows or other) that use
|
||
|
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 &
|
||
|
|
||
|
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 &
|
||
|
|
||
|
Eventually the emulator will support configurable
|
||
|
skins, complete with buttons as on the actual device.
|
||
|
For now, it just pretends to be an iPAQ.
|
||
|
|
||
|
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
|
||
|
at the wxWindows top level), then compile wxEmulator
|
||
|
using the makefile that configure created.
|
||
|
|
||
|
Have fun!
|
||
|
|
||
|
Julian Smart, March 2002
|
||
|
|