Pippy: FAQs


 

Table of Contents


Where did the name Pippy come from?

The name Pippy was formed by appending the suffix ".PY" to the acronym PIP (Python In Palm). The name is reminiscent of Pippi Longstocking, a female fictional character of small stature, enormous strength, and unbounded free spirit.

Return to the Table of Contents


Who can I contact with questions?

See pippy development at Sourceforge.

Return to the Table of Contents

 


Which platforms will run Pippy?

Pippy should run on any platform that is running PalmOS Version 3.5. We have not conducted extensive testing on various hardware devices and welcome feedback based on user experience.

Pippy has run on the following platforms.
Device Name OS/Version RAM (KB) Comments Reference
Palm IIIxe PalmOS/3.5 8192 Primary Pippy Platform pippy.sourceforge.net/
Palm IIIc PalmOS/3.5.x 8192 Also works on German version Tom Good (2001.03.5)
Bartolomeus Irwanto (2001.03.17)
Tim Cook (2001.04.12)
Palm IIIc PalmOS/4.1 Thomas
Palm IIIx French PalmOS/3.3 4096 none Jerome (2001.03.11)
Palm V PalmOS/3.5.2 8192 Also works on German version John Ziniti (2001.03.2)
Dan York (2001.05.9)
W.H. Jou (2001.05.17)
Chris Liechti (2001.07.25)
Palm Vx PalmOS/3.5.x 8192
Blake Winton (2001.03.27)
Giulio Alfano (2001.05.21)
Palm m100 PalmOS/3.5.1 2048
Robert L. Hicks (2001.02.27)
Ernst Jan Plugge (2001.07.31)
Shane Kerr (2001.08.20)
Palm m105 PalmOS/3.5.x 8192
Mike Culbertson (2001.04.20)
Alexander Loehr (2001.06.26)
HandEra 300 PalmOS/3.5.x?? 8192 none Horst Herb (2001.07.07)
Handspring Visor Deluxe PalmOS/3.0.1H 8192 none Ed Halley (2001.3.17)
Alexey Vyskubov (2001.02.27)
Matt Behrens (2001.04.4)
Handspring Visor Edge/Prism PalmOS/3.5.2H 8192 none Tobias Florek (2001.08.17)
Handspring Visor Platinum PalmOS/3.5.2H1 8192 none Blake Garretson (2001.03.14)
Mark S.P. Humphrey (2001.05.25)
Sony Clie (model # PEG-S300) PalmOS/3.5.1 8192 none Russell Whitaker (2001.03.11)

Return to the Table of Contents


How do I add my own Python modules to Pippy and run them on my Palm?

Pippy Version: 0.7

We have created an experimental module for importing modules from the memo pad:

  1. On your Palm PDA add the category "Python" to the Memo application


  2. The title (eg, first line) in each Memo should contain a commented module name (e.g., # mymodule.py)


  3. Subsequent lines contain the actual Python source code


  4. Install the importer by entering the following on the command line:
    import memoimp; memoimp.install()


  5. You're ready to import from the Memo application


  6. To restore the original importer, type
    memoimp.uninstall()

Pippy Version: 0.6beta

If you only downloaded the pre-built Pippy distribution ( .prc files) you cannot install and run separate python modules. You must also download and unpack the Pippy source code distribution.

STEP 1.
Make sure you have read the README, TOOLS and BUILD files that are supplied with the source distribution. I assume that you have read this files, installed all the necessary tools and have unpacked the Pippy source distribution. If not DO IT NOW! It wouldn't hurt to review the BUILD documentation at this time. I assume that you are running under RedHat Linux 6.2 (see the README file).

In order to provide a concrete example we will create, build and install a Pippy version of Hello World (hey what did you expect - Quantum Electrodynamics calculations!).

STEP 2.
Create the following files (in this example they are in a directory /home/test/source, but you can put them anywhere):


palm_hello.py
wrapper.py

The files contain:


$ cat palm_hello.py
# palm_hello.py is a simple example script to
# demonstrate how you can add your own Python
# scripts to Pippy and run them on the Palm.
# S. Gasster, Endeavors Technology 2001.02.12

import sys
print "Hello World!"
print "I'm Pippy!"
print "Where am I: ", sys.platform
print "Bye..."

$ cat wrapper.py
# import the example Python script
# into the wrapper file
import palm_hello

As a test, on your Linux system, if you run
$ python wrapper.py
you should get the following results:

 


$ python wrapper.py
Hello World!
I'm Pippy!
Where am I: linux2
Bye...

STEP 3.
Next modify your PYTHONPATH environment variable (see BUILD 1.B) to include the path to the wrapper.py and palm_hello.py files:


export PYTHONPATH=/home/test/source:$PYTHONPATH

printenv PYTHONPATH

/home/test/source:
/home/magipalm/pippy-0.6beta-src/src/Palm/Tests:
/home/magipalm/pippy-0.6beta-src/src/Lib:
/home/magipalm/pippy-0.6beta-src/src/Palm:


(note I inserted newlines for readability. )

STEP 4.A
If you have NOT previously performed a build of Pippy from source do so now. Follow the instructions in BUILD, BUILDING AND INSTALLING Pippy, Steps 0. through 2. Stop at Step 3. If you have performed a complete build of Pippy Skip to Step 4.B below. Perform the following commands:


cd ./src/Palm/
make

This will build the pylib.prc file.

STEP 4.B
Perform the following commands:


cd ./src/Palm/Interactive
make clean

You should still have the previously built pylib.prc file in ./src/Palm

STEP 5.
Perform the following commands (note that I have included the output from these commands in the examples below):


cd ./src/Palm/Interactive
../Resourcer/resourcer /home/test/source/wrapper.py

Name File
---- ----
m __main__ /home/test/source/wrapper.py
m exceptions /home/magipalm/pippy-0.6beta-src/src/Lib/exceptions.py
m palm_hello /home/test/source/palm_hello.py
m sys

freezing __main__ ...
freezing exceptions ...
freezing palm_hello ...
generating table of frozen modules
app.c not changed, not written

make
m68k-palmos-coff-gcc -fno-builtin -O0 -g -Wall -I../libc/include
-I../../Include -I.. -I../PalmGlue -I../../Modules -c -o
PythonGUI.o PythonGUI.c
.
.
.
Writing ./MBAR03f2.bin
292 bytes
Writing ./tFRM03f2.bin
466 bytes
Writing ./tSTL0442.bin
346 bytes
Writing ./tSTL0456.bin
116 bytes
Writing ./Talt046a.bin
132 bytes
Writing ./Talt0474.bin
115 bytes
touch bin.stamp
cp ../PalmGlue/pref0000.bin .
cp ../resources/*.bin .
build-prc pippy.prc "Pippy" PyAp *.grc *.bin

This will build the pippy.prc file with the palm_hello.py module installed.

STEP 6.
Install the
pylib.prc (if required) and the pippy.prc files onto your Palm (this example uses the pilot-xfer application - see the BUILD file):

pilot-xfer -p /dev/ttyS1 -i ./src/Palm/pylib.prc ./src/Palm/Interactive/pippy.prc

This assumes you are in the directory containing the src/ directory and that the Palm cradle is connected to serial port ttyS1. You may have to be root to perform this command.

STEP 7.
The Python VM and Pippy applications are now installed on your Palm device.
Run Pippy. At the interactive interface enter:


import palm_hello

Select the Eval button
You should see the following output:


Hello World!
I'm Pippy!
Where am I: PalmOS3
Bye...

Congratulations!

Return to the Table of Contents