The Source for Java Technology Collaboration

Home » java.net Forums » Phone ME » phoneME Advanced software

Thread: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x

Welcome, Guest Help
Login Login
Guest Settings Guest Settings
Reply to this Thread Reply to this Thread Search Forum Search Forum Back to Thread List Back to Thread List

Permlink Replies: 198 - Last Post: Sep 29, 2008 11:19 AM by: Hinkmond Wong Threads: [ Previous | Next ]
Hinkmond Wong
Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 10, 2008 3:06 PM
  Click to reply to this thread Reply

Hi all,

We need volunteers from the open source community to help port phoneME
Advanced to Garnet OS / Palm OS 5.x. Currently, there is no one
assigned to this task.

See Eric Bresie's request for enhancement:

https://phoneme.dev.java.net/issues/show_bug.cgi?id=40

Once we have the volunteers, I can cover the steps for the porting work
to whomever will be working on this project and help guide the effort.

Please let me know if you are interested in this porting work and would
like to help our open source project. Since, we are an open source
project, we are relying on the developer community to step up and do the
work when there is demand for changes to the project, and not rely on
Sun for 100% of the work needed.


Thanks,

Hinkmond

[email.eml]
---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


terrencebarr

Posts: 544
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 11, 2008 1:21 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Yes, let's get this going! See my blog on the topic:

http://weblogs.java.net/blog/terrencebarr/archive/2008/06/bringing_java_b.html

-- Terrence

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
OS 5.x

Posted: Jun 11, 2008 9:57 AM   in response to: terrencebarr
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Yes, let's get this going! See my blog on the topic:
>
> http://weblogs.java.net/blog/terrencebarr/archive/2008/06/bringing_java_b.html
>

Thanks, Terrence! That's a good post. Hope we get some volunteers
soon. To any of the volunteers who will be signing up to do the Palm OS
5.x port of phoneME Advanced, please let me know your name, java.net
userid, and what host system you will be developing on.

Also, let me know which Palm OS SDK you will be using and how you
obtained it. We will need more details when you are set up.

Looking forward to seeing some good work from those who will step
forward and do this port!

Thanks,
Hinkmond


---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


netomarin

Posts: 3
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 12, 2008 4:25 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Hi Hinkmond,

I've already developed some applications to Palm OS, and it was horrible!! :(
And, in my opinion it´s a very important platform for jme applications.
I've already developed little applications in HB++ and have academic (at college) experience with C/C++ palm programming.
And, I wanna help on this.

[]s
Neto Marin

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 12, 2008 5:17 PM   in response to: netomarin
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Hi Hinkmond,
>
> I've already developed some applications to Palm OS, and it was horrible!! :(
> And, in my opinion it´s a very important platform for jme applications.
> I've already developed little applications in HB++ and have academic (at college) experience with C/C++ palm programming.
> And, I wanna help on this.
>

Hi Neto,

Thanks for volunteering! Do you have a Palm OS 5.x device already, or
do you plan on getting one? (We do not have any Palm OS 5.x devices in
our group here, so we will have to depend on you and other volunteers in
the project to serve as our eyes and ears in this porting effort).

Also, do you have access to the Palm OS 5.x SDK? I'm not even sure how
they have development set up for Palm OS. Is it free of cost for you to
download and use? Does Palm OS have an emulator?


Hinkmond


---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


netomarin

Posts: 3
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 13, 2008 7:25 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Hi Hinkmond,

I had an old Palm OS device and I was planning to get a new one soon, so I'll take it as soon as possible, and I can take a compatible device to this port.
And about SDK and emulator, they make it available through "Palm Developer Network" (http://pdnet.palm.com) for free.

To get started with phomeME stuffs, from where do you suggest I should start?

[]s
Thanks
Neto Marin

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 13, 2008 10:47 AM   in response to: netomarin
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Hi Hinkmond,
>
> I had an old Palm OS device and I was planning to get a new one soon, so I'll take it as soon as possible, and I can take a compatible device to this port.
> And about SDK and emulator, they make it available through "Palm Developer Network" (http://pdnet.palm.com) for free.
>
> To get started with phomeME stuffs, from where do you suggest I should start?
>

Hi Neto,

The first step is to choose your host development environment.

I looked at the URL above for the Palm Developer Network and found that
the cross-tools needed for building pMEA (such as GCC) can be found in
the free Palm PRC-Tools which are available on-line at:

http://www.calliopeinc.com/palmprog2/tutorial/x506.html

The PRC-Tools can be downloaded and installed onto Windows, Linux, Mac,
or UNIX. Please let me know which system you want to work on for your
development and porting.


After you choose, you should follow the instructions at the above
PRC-Tools URL to properly install all the tools according to the
directions.

Let me know when you get to that point.


Thanks,

Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


netomarin

Posts: 3
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
Posted: Jun 16, 2008 1:17 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Hi Hinkmond,

Just to give a feedback, I'll use Linux (more exactly, Ubuntu hardy) to work on this port. And until tomorrow I'll be at an event and will start with setting up my development enviroment on Wednesday.

Cya
Neto Marin

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
Posted: Jun 16, 2008 4:17 PM   in response to: netomarin
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Hi Hinkmond,
>
> Just to give a feedback, I'll use Linux (more exactly, Ubuntu hardy) to work on this port. And until tomorrow I'll be at an event and will start with setting up my development enviroment on Wednesday.
>

Hi Neto,

That sounds fine. On Wednesday, please make sure you can run through
these instructions on your Linux/x86 Ubuntu (hardy) system:

Checkout the Project Source Code:
http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGGetting

Simple Example Build: CDC
http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGHost#A_Simple_Example_Build_CDC

Simple Example Build: Foundation Profile
http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGHost#Building_Foundation_Profile

If you have any problems with the above, let us know.


Thanks,
Hinkmond


---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 15, 2008 7:55 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

I'm in...:-)

I have a Treo 680 to work with in addition to those Emulated/Simulated versions provided by the Garnet OS Development Suite.

Eric

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 16, 2008 3:59 PM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> I'm in...:-)
>
> I have a Treo 680 to work with in addition to those Emulated/Simulated versions provided by the Garnet OS Development Suite.
>

Hi Eric,

That's great news! Are you going to use a Linux/x86 system (such as
Ubuntu hardy) as your host development platform? If so, this would be
good, since you'll match Neto.


Thanks,

Hinkmond


---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 18, 2008 6:03 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

I was planning on working in Cygwin on a Windows machine (Vista and/or XP). I suspect the basics will be the same as prc-tools and basic build tools are available as well.

mrmx

Posts: 1
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 17, 2008 3:19 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Hi!

I'm interested in such effort, i've been using Palm and first KVM although did not play deeply with Palm's SDK. I use linux (Ubuntu) and have a couple of palms, a Zire 72 could serve as is it Garnet based.

Greetings!

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 17, 2008 12:26 PM   in response to: mrmx
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Hi!
>
> I'm interested in such effort, i've been using Palm and first KVM although did not play deeply with Palm's SDK. I use linux (Ubuntu) and have a couple of palms, a Zire 72 could serve as is it Garnet based.
>
>

Hi mrmx,

Glad that you can help with the Palm OS port of phoneME Advanced!

Please also try the instructions on your Linux/x86 Ubuntu system that I
sent to Neto:


Checkout the Project Source Code:
http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGGetting

Simple Example Build: CDC
http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGHost#A_Simple_Example_Build_CDC

Simple Example Build: Foundation Profile
http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGHost#Building_Foundation_Profile


Let us know when you have completed the above and if you run into any
problems or have any questions.

After you confirm you are able to do the above steps, we can move to the
next step in porting phoneME Advanced.


Thanks,

Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


bsarkar

Posts: 13
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 18, 2008 5:55 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Hi!

If you have room for another volunteer, I would love to join. I have some programming experience with Java, Java ME and also assembly language among others but none on Palm OS. I am a Java loyalist and would really feel great about spreading it around.

I'll use Windows XP for this project.

Biswajit

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
OS 5.x

Posted: Jun 18, 2008 1:40 PM   in response to: bsarkar
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Hi!
>
> If you have room for another volunteer, I would love to join. I have some programming experience with Java, Java ME and also assembly language among others but none on Palm OS. I am a Java loyalist and would really feel great about spreading it around.
>
> I'll use Windows XP for this project.
>
> Biswajit
>

Hi Biswajit,

Thanks for volunteering! I have you and Max Mu now also listed as
volunteers now:

http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedPlatformsPalmOS


Since you and Eric are using Windows, the instructions to get you
started are almost the same, just make sure to also install cygwin on
your Windows PC (as Eric has done).


So, on your PC, you, Eric, and Max can try this:

Install Cygwin:
http://cygwin.org/setup.exe

Then, on your Windows PC in a cygwin shell, try these steps:

Checkout the Project Source Code:
http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGGetting

Simple Example Build: CDC
http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGHost#A_Simple_Example_Build_CDC

Simple Example Build: Foundation Profile
http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGHost#Building_Foundation_Profile


Let me know when you can get through all the steps.


Thanks!
Hinkmond


---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


bsarkar

Posts: 13
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 19, 2008 7:22 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Hi Hinkmond,

Thanks a lot.

I've installed Cygwin and have also downloaded the source code. The version I've got is :
phoneme_advanced-mr2-dev-src-b34-04_oct_2007. Have I got the right one or should I have downloaded the *win* bundle?

I'll now start on the builds. That will take a couple of days as I'm new to this activity. Please bear with me.

Thanks again.

Biswajit

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 19, 2008 5:08 PM   in response to: bsarkar
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Hi Hinkmond,
>
> Thanks a lot.
>
> I've installed Cygwin and have also downloaded the source code. The version I've got is :
> phoneme_advanced-mr2-dev-src-b34-04_oct_2007. Have I got the right one or should I have downloaded the *win* bundle?
>
> I'll now start on the builds. That will take a couple of days as I'm new to this activity. Please bear with me.
>
> Thanks again.
>
> Biswajit
>

Hi Biswajit,

Sounds good. Yes, you should be able to use the mr2 b34 bundle from
04_oct_2007 for your purpose to test build. Let us know when your ready
with the next steps.


Thanks,

Hinkmond



---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


bsarkar

Posts: 13
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 21, 2008 12:01 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

> phonemeadvanced@mobileandembedded.org wrote:
> > Hi Hinkmond,
> >
> > Thanks a lot.
> >
> > I've installed Cygwin and have also downloaded the
> source code. The version I've got is :
> > phoneme_advanced-mr2-dev-src-b34-04_oct_2007. Have
> I got the right one or should I have downloaded the
> *win* bundle?
> >
> > I'll now start on the builds. That will take a
> couple of days as I'm new to this activity. Please
> bear with me.
> >
> > Thanks again.
> >
> > Biswajit
> >
>
> Hi Biswajit,
>
> Sounds good. Yes, you should be able to use the mr2
> b34 bundle from
> 04_oct_2007 for your purpose to test build. Let us
> know when your ready
> with the next steps.
>
>
> Thanks,
>
> Hinkmond
>
>
>
> ------------------------------------------------------
> ---------------
> To unsubscribe, e-mail:
> advanced-unsubscribe@phoneme.dev.java.net
> For additional commands, e-mail:
> advanced-help@phoneme.dev.java.net

I've got Microsoft Visual Studio 6.0. Is that alright?

Biswajit

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 23, 2008 2:46 PM   in response to: bsarkar
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> I've got Microsoft Visual Studio 6.0. Is that alright?
>
>
Hi Biswajit,


Yes, using MS VS 6.0 should be fine. Please go ahead and follow the
instructions at:

http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGGetting

then,

http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGHost#A_Simple_Example_Build_CDC

But, when you build, make sure to cd down to the win32-x86-vc8 subdir.

Ex.

cd cdc/build/win32-x86-vc8
make J2ME_CLASSLIB=foundation


Let us know if you run into any problems. There might be some
adjustments you need to your paths.


Thanks,

Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


jslee06

Posts: 10
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 22, 2008 12:33 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

I'm willing to use my Palm Treo 755p for testing.

I was able to build cvm for linux-x86-generic and run the test class but when trying to build midp with the included script I get stuck with a missing ftheader.h.

Here is my modified script:

#!/bin/bash

export TOP_DIR=/usr/local/src/phoneme_advanced_mr2

make \
CVM_HOST_TOOLS_PREFIX=/usr/bin/ \
CVM_TARGET_TOOLS_PREFIX=/usr/bin/ \
CVM_JAVA_TOOLS_PREFIX=/usr/java/j2sdk1.4.2_17/bin/ \
JDK_HOME=/usr/java/j2sdk1.4.2_17/ \
CVM_BUILD_SUBDIR=true \
CVM_BUILD_SUBDIR_NAME=build_b76 \
J2ME_CLASSLIB=basis \
AWT_IMPLEMENTATION=qt \
QT_TARGET_DIR=/usr/local/qt-embedded-free-3.3.8b \
QT_VERSION=3.3.8b \
QTEMBEDDED=true \
QTOPIA=false \
USE_QVFB=true \
USE_QT_FB=false \
PCSL_DIR=$TOP_DIR/pcsl \
TOOLS_DIR=$TOP_DIR/tools \
USE_MIDP=true \
MIDP_DIR=$TOP_DIR/midp

This is the error I get:

c++ /usr/local/src/phoneme_advanced_mr2/cdc/src/share/basis/native/awt/qt/QtFontMetrics.cpp
In file included from ../../../../../qt-embedded-free-3.3.8b/include/qfontfactoryttf_qws.h:49,
from ../../../../../qt-embedded-free-3.3.8b/include/qt.h:340,
from ../../src/share/basis/native/awt/qt/awt.h:32,
from ../../src/share/basis/native/awt/qt/QtFontMetrics.cpp:28:
/usr/include/ft2build.h:56:38: error: freetype/config/ftheader.h: No such file or directory

My output from freetype-config --cflags is -I/usr/include/freetype2. Does this still have something to do with the path or should I downgrade my qt embedded version (again)?

Thanks,

Jay Lee
jslee06

jslee06

Posts: 10
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 22, 2008 1:04 PM   in response to: jslee06
  Click to reply to this thread Reply

I forgot to mention I am using Fedora 9 but I can switch to Ubuntu if people don't like me logging in as root all the time.

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 23, 2008 3:07 PM   in response to: jslee06
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> I'm willing to use my Palm Treo 755p for testing.
>
> I was able to build cvm for linux-x86-generic and run the test class but when trying to build midp with the included script I get stuck with a missing ftheader.h.
>

Hi Jay,

Glad to see another volunteer on board for the Palm OS port!

Using Fedora 9 will be fine. But, you are jumping the gun a bit, since
there is no support of a MIDP/PBP on Qt 3.x yet (only Qt/Embedded 2.x)
and that would require a bit of work to get working right, so going down
that route for a Linux/x86/Qt3 build would be quite a chore and not
helpful to the Palm OS effort right now.

Instead, please try just a regular headless CDC or Foundation Profile
build on your Fedora 9 system.

See:
http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGHost#A_Simple_Example_Build_CDC


For example:

Can you do this on your Fedora 9 system with the phoneme_advanced_mr2
source bundle?

cd cdc/build/linux-x86-generic
make J2ME_CLASSLIB=foundation

If you get a good build, does the following run for you?

bin/cvm -version
bin/cvm -cp testclasses.zip Test


If you can get the above to work, we can go on to the next step. If
not, let us know what problems you are seeing and we can help.


Thanks,
Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


bsarkar

Posts: 13
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 23, 2008 5:59 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Hi Hinkmond!

I've been working on getting used to Cygwin and *make*. When I run the *make* command, I get the following message:

ERROR: JDK_DIR must be set
make: *** [JDK_DIR] Error 255

Where do I set this? My JAVA_HOME is C:\jdk1.6.0. Should I create a new System Variable?

Biswajit

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 23, 2008 3:21 PM   in response to: bsarkar
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Hi Hinkmond!
>
> I've been working on getting used to Cygwin and *make*. When I run the *make* command, I get the following message:
>
> ERROR: JDK_DIR must be set
> make: *** [JDK_DIR] Error 255
>
> Where do I set this? My JAVA_HOME is C:\jdk1.6.0. Should I create a new System Variable?
>

Hi Biswajit,

For the above error, try downloading and installing JDK 1.4.2 (what you
need to build phoneME Advanced), then set your environment variables
like this:

Set up:
Download and Install J2SDK 1.4.2
<https://

Set your cygwin shell env variables:
export JAVA_HOME=/cygdrive/c/j2sdk1.4.2_17
export JAVA_PATH=$JAVA_HOME
export JDK_HOME=$JAVA_HOME

Try building:
cd cdc/build/win32-x86-vc8
make J2ME_CLASSLIB=foundation

Try running:
bin/cvm -version
bin/cvm -cp testclasses.zip Test


Hinkmond

[att1.html]


bsarkar

Posts: 13
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 24, 2008 6:15 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

> phonemeadvanced@mobileandembedded.org wrote:
> > Hi Hinkmond!
> >
> > I've been working on getting used to Cygwin and
> *make*. When I run the *make* command, I get the
> following message:
> >
> > ERROR: JDK_DIR must be set
> > make: *** [JDK_DIR] Error 255
> >
> > Where do I set this? My JAVA_HOME is C:\jdk1.6.0.
> Should I create a new System Variable?
> >
>
> Hi Biswajit,
>
> For the above error, try downloading and installing
> JDK 1.4.2 (what you
> need to build phoneME Advanced), then set your
> environment variables
> like this:
>
> Set up:
> Download and Install J2SDK 1.4.2
> <https:// -CDS_Developer-Site/en_US/-/USD/ViewProductDetail-Star
> t?ProductRef=j2sdk-1.4.2_17-oth-JPR@CDS-CDS_Developer>
>
> Set your cygwin shell env variables:
> export JAVA_HOME=/cygdrive/c/j2sdk1.4.2_17
> export JAVA_PATH=$JAVA_HOME
> export JDK_HOME=$JAVA_HOME
>
> Try building:
> cd cdc/build/win32-x86-vc8
> make J2ME_CLASSLIB=foundation
>
> Try running:
> bin/cvm -version
> bin/cvm -cp testclasses.zip Test
>
>
> Hinkmond
>
> [att1.html]

Hi Hinkmond!

I've done the following:

a) I have JDK 1.4.2_05 already in my system so I have set JAVA_HOME to point to that directory.

b) I have set the env variables as per your instructions above.

c) I cd'd to .../cdc/build/win32-x86-vc8

d) and then *make J2ME_CLASSLIB=foundation*

There is a profusion of messages the final one being:

..../cdc/build/win32\javavm/include/ansi/stddef.h(31) : fatal error C1083: Cannot open include file: 'stddef.h' : No such file or directory
make: *** [../../build/win32-x86-vc8/./obj/gen_semispace.0] Error 2


Also it seems to be looking for MS Visual Studio 8:

TARGET_RANLIB = which: no ranlib in (cygdrive/c/Program Files/Microsoft Visual Studio 8/VC/bin:.......

I don't have VS8 just VS6 which is in my D: drive.

What do I do now?

In the meanwhile, I've started looking at KNI documentation. We'll need that isn't it? I'll probably need to know the Palm OS APIs as well. If so then where can I find that documentation?

I know I'm probably jumping the gun a bit but I thought it's better to start preparing myself as early as I can.

Thanks

Biswajit

billp

Posts: 24
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 24, 2008 11:17 AM   in response to: bsarkar
  Click to reply to this thread Reply

If you only have VC6 then try doing the build in the win32-x86-vc6 directory.

bill

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 24, 2008 11:41 AM   in response to: billp
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> If you only have VC6 then try doing the build in the win32-x86-vc6 directory.
>

I agree with Bill. You should try:

cd build/win32-x86-vc6
make J2ME_CLASSLIB=foundation


If you cannot build a cvm binary for your host system and are not able
to run our functional sanity tests using that binary, you won't get very
far with trying to port to Palm OS, since we still need to guide you
through how to use the cross-compiler toolchain for Palm OS, and get you
familiarized with our Makefiles and build system.

There's several more steps to get through before even considering what
to do in the native interface layer. So, hopefully we can get past that
quickly.


Thanks,

Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


bsarkar

Posts: 13
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 25, 2008 9:15 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

> phonemeadvanced@mobileandembedded.org wrote:
> > If you only have VC6 then try doing the build in
> the win32-x86-vc6 directory.
> >
>
> I agree with Bill. You should try:
>
> cd build/win32-x86-vc6
> make J2ME_CLASSLIB=foundation
>
>
> If you cannot build a cvm binary for your host system
> and are not able
> to run our functional sanity tests using that binary,
> you won't get very
> far with trying to port to Palm OS, since we still
> need to guide you
> through how to use the cross-compiler toolchain for
> Palm OS, and get you
> familiarized with our Makefiles and build system.
>
> There's several more steps to get through before even
> considering what
> to do in the native interface layer. So, hopefully
> we can get past that
> quickly.
>
>
> Thanks,
>
> Hinkmond
>
> ------------------------------------------------------
> ---------------
> To unsubscribe, e-mail:
> advanced-unsubscribe@phoneme.dev.java.net
> For additional commands, e-mail:
> advanced-help@phoneme.dev.java.net


Hi Hinkmond!

Okay I got a build. I ran the tests and got the following message:

Test completed with 411 tests passed and 0 failures

Biswajit

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 25, 2008 4:26 PM   in response to: bsarkar
  Click to reply to this thread Reply


> Okay I got a build. I ran the tests and got the following message:
>
> Test completed with 411 tests passed and 0 failures
>

Hi Biswajit,

Glad to hear you have the CVM build working on your host system now!
I'm going to keep track of all the PalmOS developers and their statuses
and post our next steps.

See:

http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedPlatformsPalmOS

Biswajit, Eric, and Jay, please look at the new table I have in the
above TWiki URL and let me know if it reflects your latest status.
Please go ahead and edit the table yourselves if you'd like also.


Our next step will be to use the PalmOS gcc to integrate in with the cvm
build to do a target device build instead of a host system build.

Can anyone tell me the name of the PalmOS or Garnet OS C compiler and
what type of experience you might have had with it? And, what is the
output of the following command using the PalmOS/GarnetOS gcc
cross-compiler:

*-gcc -dumpmachine


Thanks,

Hinkmond


---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
Posted: Jun 25, 2008 8:08 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

The gcc compiler for Palm is: /usr/bin/arm-palmos-gcc.

"/usr/bin/arm-palmos-gcc. -dumpmachine" gives: arm-palmos

Eric

bsarkar

Posts: 13
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 26, 2008 7:50 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Hi Hinkmond!

I've installed the prc-tools under cygwin.

As for sdk, which one(s) should I download? The Access Developer Network (ADN) site lists several Access SDKs and Tools.

Biswajit

ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 26, 2008 8:25 PM   in response to: bsarkar
  Click to reply to this thread Reply

You can get the Eclipse based development suite, called the Garnet OS Development Suite, that Access has which includes a version of the Palm SDK (I believe they include a version 5.4 version of the SDK).

There is a newer versions of the SDK/Headers at pdn.palm.com (which supports the new Centros). They also have a developers guide that you may want to get there to get some additional help on Palm development.

You will probably want to install the SDK in a /palmdev directory and/or mount whereever you installed it to the /palmdev.

Since you have installed cygwin, if you decide to make use of GODS, then you will need to do a custom installed and indicate you don't want to install the version included with the suite. They include an older version of cygwin.

After installing that, from within Cygwin, you will need to make sure and run palmprep which will set the default version of the gcc for the version included with the SDK you just installed.

Hope this is a good start for you.

Eric

bsarkar

Posts: 13
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 27, 2008 1:49 AM   in response to: ebresie
  Click to reply to this thread Reply

> You can get the Eclipse based development suite,
> called the Garnet OS Development Suite, that Access
> has which includes a version of the Palm SDK (I
> believe they include a version 5.4 version of the
> SDK).
>

Hi Eric!

I don't have Eclipse on my machine. Is there any other SDK that I could download?

Biswajit

ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 27, 2008 1:29 PM   in response to: bsarkar
  Click to reply to this thread Reply

The Garnet OS Development Suite has Eclipse packaged with it. It includes Eclipse, SDK, cygwin, prc-tools, etc. However, it is Windows based.

Access SDKs are available at:

http://www.accessdevnet.com/

Palm provided SDKs (including support for Centros) are available at:

http://pdnet.palm.com

Eric

ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
Posted: Jun 26, 2008 8:29 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Minor update...On one of my machines, I was able to build and run the tests successfully for the VC8 version. I have updated the status page.

bsarkar

Posts: 13
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 25, 2008 9:09 AM   in response to: billp
  Click to reply to this thread Reply

Hi Bill!

Thanks a lot. I had to make some changes in the *defs* file but, finally, I got a build.

Biswajit

bsarkar

Posts: 13
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 25, 2008 11:18 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

> Set your cygwin shell env variables:
> export JAVA_HOME=/cygdrive/c/j2sdk1.4.2_17
> export JAVA_PATH=$JAVA_HOME
> export JDK_HOME=$JAVA_HOME
>

I have a question here. Instead of exporting everytime, isn't it possible to put all these env variables in, say, defs.mk file?

Thanks.

cjplummer

Posts: 343
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 25, 2008 11:57 PM   in response to: bsarkar
  Click to reply to this thread Reply

You only need to set JDK_HOME. I'm not sure why setting JAVA_HOME and JAVA_PATH was recommended since they are not needed.

JDK_HOME cannot be set in a makefile since it may vary for different users. You can export it, set it in a script you use to execute the GNUmakefile, or set it on the make command line. You can even just put the java tools on the path and the makefiles will pick them up automatically if JDK_HOME is not set. If you have something newer than Jave SE 1.4.x on the path and are using it in your build, usually that is OK, but is not recommended.

Chris

bsarkar

Posts: 13
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 26, 2008 1:42 AM   in response to: cjplummer
  Click to reply to this thread Reply

> JDK_HOME cannot be set in a makefile since it may
> vary for different users.

In the defs.mk file, the path to Visual Studio (VS_DIR) is defined although this too will be user dependent. In my case, for example, this is D:/Microsoft Visual Studio and I had to edit this entry before I could get a build. Anyway, since JDK_HOME is known for my system, why can't I put it here?

Thanks

Biswajit

cjplummer

Posts: 343
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 26, 2008 11:41 AM   in response to: bsarkar
  Click to reply to this thread Reply

> > JDK_HOME cannot be set in a makefile since it may
> > vary for different users.
>
> In the defs.mk file, the path to Visual Studio
> (VS_DIR) is defined although this too will be user
> dependent. In my case, for example, this is
> D:/Microsoft Visual Studio and I had to edit this
> entry before I could get a build. Anyway, since
> JDK_HOME is known for my system, why can't I put it
> here?
>
> Thanks
>
> Biswajit

VS_DIR has a default which is the same as where the default location where Visual Studio will install itself. Therefore it works for most users. For JDK_HOME, there are many versions of JavaSE 1.4, and we don't require the latest, so it is unlikely that any default we set for it will work for more than a small percent of the users.

As for putting JDK_HOME in defs.mk, you can do that since it will work for your setup. I'm just saying that this isn't the type of change that can be committed back to the OSS source.

Chris

bsarkar

Posts: 13
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 27, 2008 1:52 AM   in response to: cjplummer
  Click to reply to this thread Reply

> VS_DIR has a default which is the same as where the
> default location where Visual Studio will install
> itself. Therefore it works for most users. For
> JDK_HOME, there are many versions of JavaSE 1.4, and
> we don't require the latest, so it is unlikely that
> any default we set for it will work for more than a
> small percent of the users.
>
> As for putting JDK_HOME in defs.mk, you can do that
> since it will work for your setup. I'm just saying
> that this isn't the type of change that can be
> committed back to the OSS source.
>
> Chris

Okay I understand the rationale now.

Thanks very much for answering my questions with so much patience.

Biswajit

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 27, 2008 6:27 PM   in response to: bsarkar
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Okay I understand the rationale now.
>
> Thanks very much for answering my questions with so much patience.
>

Hi Biswajit,

Please also try this which I asked Max to also do:

Try Eric's new bundle and instructions:

Download his bundle from here:
https://j2me-cdc.dev.java.net/servlets/ProjectDocumentList?folderID=9440&expandFolder=9440&folderID=0
(Click on: pMEA-palmos-0.1.tar.gz
<https://)

See his reference here:
http://forums.java.net/jive/message.jspa?messageID=283031#283031

Please let us know how that works for you.


Hinkmond
[att1.html]


ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 18, 2008 6:06 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Probably getting ahead of myself as nothing has been ported yet, but are there any good instructions on how to run any of the test suites to check on the compatability of the port as we go along?

Eric

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 18, 2008 3:40 PM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Probably getting ahead of myself as nothing has been ported yet, but are there any good instructions on how to run any of the test suites to check on the compatability of the port as we go along?

The TCK test suites are not open sourced yet, but running the TCK
binaries as part of testing the compatibility of an open source project
(like phoneME) is being discussed. I'm not sure what the status is of
that, but will let you know if there is any progress on it.

In the meantime, running test applications (like JBenchmark2 for MIDP or
CaffeineMark 3.0 for CDC/PP) is a good indicator if we're on the right
track. Or, we can also, as time and resources permit, run TCK testing
of certain ports inside Sun and unofficially report the results in cases
where bugs are revealed.

The first temp option of using JBenchmark2 or CaffeineMark 3.0 will
probably be the best way for now...


Hinkmond



---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
Posted: Jun 19, 2008 8:30 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

I haven't used them yet, but what about the cqME, JTHarness, and/or Framework subproject(s)? Is that the test suite I am looking for maybe?

Eric

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
Posted: Jun 20, 2008 11:09 AM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> I haven't used them yet, but what about the cqME, JTHarness, and/or Framework subproject(s)? Is that the test suite I am looking for maybe?
>

Hi Eric,

The projects you list above: cqME, JTHarness, and the other Framework
subprojects are all just as they sound: empty test harnesses and
frameworks for doing testing, not the actual tests themselves.


So, someday, the actual tests themselves that do things like test for
specific JSR compatibility will be open sourced to hang in the above
frameworks. But, for now they are not available publicly, only via
commercial licenses from the respective Java ME JSR owners, such as Sun,
IBM, Nokia, Motorola, etc.

So, the test harnesses and frameworks are one step toward the goal of
someday having all the TCK test suites available. Instead, they are
good as a source of reference for now on how to create future common
compatibility tests that will use a common test framework for Java ME.


For now, I would suggest to watch the SigTest subproject, since that
project will most likely be the easiest way to validate Java ME
compatibility in the future.

See:

https://sigtest.dev.java.net/

If there are enough contributors, I can imagine it becoming the place to
download a binary to test your platform/device conformance to the
established JSR specs. For now, the project is just starting.


Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 18, 2008 6:10 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Do you have a recommended existing ports as a good baseline to start from?

I see a number of arm based ports (windows mobile and linux), which I would suspect would be a good starting point, but I'm not sure which is closest to the Palm platform and which one is closest to being complete (if the given port is in early development or more mature state).

Eric

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
OS 5.x

Posted: Jun 18, 2008 3:46 PM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Do you have a recommended existing ports as a good baseline to start from?
>
> I see a number of arm based ports (windows mobile and linux), which I would suspect would be a good starting point, but I'm not sure which is closest to the Palm platform and which one is closest to being complete (if the given port is in early development or more mature state).
>

Hi Eric,

I think we should start with porting just the headless CDC/Foundation
Profile port first, just to get the basic steps down and not get too
deep into the other more complex areas of porting phoneME (like
especially the GUI part).

So, because of that, I think either the Linux/x86 or Windows/x86 port
should be a pretty good baseline. So, they would be the builds that you
do from:

build/linux-x86-generic
build/win32-x86-vc8

And, the bigger point is that if you build one of the above as a
baseline port, you can run it on your Windows/x86 PC or Linux/x86
system. If you start with the Linux/ARM port, you will have a Linux/ARM
binary that you will need to run somewhere to check, and unless you have
a Linux/ARM device along with its cross-compiler and toolchain, you
won't be able to test it like you would with a Linux/x86 or Windows/x86
build.


Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 19, 2008 8:44 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Well...as I don't have Visual Studios installed at the moment, I tried the linux-x86-generic with cygwin and get the following...

Does this imply it would require developing a x86-pc-cygwin version of some type for this to work (without VS)?

Eric

---------------------------------
Target tools not properly specified. The gcc -dumpmachine
output does not agree with CVM_TARGET. The OS and CPU portions
must match for compatibility. If this is a cross compile, you
probably forgot to set CVM_TARGET_TOOLS_PREFIX. If you want to
to turn off this check, set CVM_COMPILER_INCOMPATIBLE=false
on the make command line or in the GNUmakefile
CVM_TARGET: linux-x86-generic
compiler target: x86-pc-cygwin

ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 20, 2008 6:37 AM   in response to: ebresie
  Click to reply to this thread Reply

Although now that I think about it, I suspect our target would be either "arm-palmos" for newer Palm platforms or "m68k-palmos" for older ones.

Is this correct?

Is the gcc -dumpmachine the identifier of the names used for directory names used in the development?

Would x86-pc-cygwin be another possible port opportunity?

Eric

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 20, 2008 11:23 AM   in response to: ebresie
  Click to reply to this thread Reply

Hi Eric,

Good questions!


phonemeadvanced@mobileandembedded.org wrote:
> Although now that I think about it, I suspect our target would be either "arm-palmos" for newer Palm platforms or "m68k-palmos" for older ones.
>
> Is this correct?
>

It should be whatever the PalmOS "gcc -dumpmachine" compiler is
outputting. So, a question back to you since I don't have the PalmOS
gcc is: What is the output of "gcc -dumpmachine" for PalmOS?


> Is the gcc -dumpmachine the identifier of the names used for directory names used in the development?
>

Yes (as mentioned with more detail in the last e-mail).


> Would x86-pc-cygwin be another possible port opportunity?
>

Yes, as long as you rename to be i686-pc-cygwin (or whatever the
Cygwin/x86 gcc -dumpmachine is outputting).


Hinkmond



---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 20, 2008 11:16 AM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Well...as I don't have Visual Studios installed at the moment, I tried the linux-x86-generic with cygwin and get the following...
>
> Does this imply it would require developing a x86-pc-cygwin version of some type for this to work (without VS)?
>
>
...
> ---------------------------------
> Target tools not properly specified. The gcc -dumpmachine
> output does not agree with CVM_TARGET. The OS and CPU portions
> must match for compatibility. If this is a cross compile, you
> probably forgot to set CVM_TARGET_TOOLS_PREFIX. If you want to
> to turn off this check, set CVM_COMPILER_INCOMPATIBLE=false
> on the make command line or in the GNUmakefile
> CVM_TARGET: linux-x86-generic
> compiler target: x86-pc-cygwin
>
>

Hi Eric,

It looks like you created a new build/x86-pc-cygwin subdirectory with a
GNUmakefile in it to try to create a new port to your Cygwin/x86 platform.


Our Makefiles are doing a sanity test to see if the subdir name you
created matches the "gcc -dumpmachine" output.

So, for Cygwin/x86, the subdir name should match the "gcc -dumpmachine"
output:

$ gcc -dumpmachin
i686-pc-cygwin
^^^^^^^^^^^^^^

Therefore, your "x86-pc-cygwin" directory name does not match with what
the Makefile expects.


You can try 2 options:

1. Rename your build/x86-pc-cgywin subdir to build/i686-pc-cygwin

OR

2. Build using the flag, CVM_COMPILER_INCOMPATIBLE=false, to turn off
the sanity checking.
Ex.
make ... CVM_COMPILER_INCOMPATIBLE=false



Hinkmond


---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


cjplummer

Posts: 343
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 20, 2008 11:44 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

It's more the opposite. He's in the linux-x86-generic build directory, but is compiling using cygwin default host tools as the target tools, which are for x86-pc-cygwin. Your target tools need to match your target build directory. So unless you have a linux-x86 cross compiler running under cygwin that you can point to with CVM_TARGET_TOOLS_PREFIX, you should not be in the linux-x86-generic build directory.

Porting starts by cloning an existing port to create the proper src and build directories. A start would be to clone one of the build directories to create a build/palmos-<cpu>-<device>. Plug in whatever the cpu is for <cpu> and whatever the specific device name is for <device> (use generic if all devices are treated equally).

Creating the device build directory is just a small slice of the needed work, you'll need to clone something into src/palmos, build/palmos, src/palmos-<cpu> and build/palmos-<cpu>. Of course then you need to modify them to build and work for palmos.

Chris

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 20, 2008 11:48 AM   in response to: cjplummer
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> It's more the opposite. He's in the linux-x86-generic build directory, but is compiling using cygwin default host tools as the target tools, which are for x86-pc-cygwin. Your target tools need to match your target build directory. So unless you have a linux-x86 cross compiler running under cygwin that you can point to with CVM_TARGET_TOOLS_PREFIX, you should not be in the linux-x86-generic build directory.
>

OK. I see now. I'm the one who at first suggested to Eric (and the
other PalmOS volunteers) to try to build for the host system (in his
case Cygwin/x86) to get them all introduced to building and running a
pMEA host binary as the first step.

In the next steps, after getting them introduced to how to build and run
pMEA for the host, I was going to start the discussion about building
and running for the target device. But, you do a good job giving a
brief overview (below) already.

Getting to build and run on the host system is not a critical step, but
it's good for Eric and others to do as practice. Eric, let us know if
you want to spend time getting your host build/run practice right, or if
you feel comfortable with that.

> Porting starts by cloning an existing port to create the proper src and build directories. A start would be to clone one of the build directories to create a build/palmos-<cpu>-<device>. Plug in whatever the cpu is for <cpu> and whatever the specific device name is for <device> (use generic if all devices are treated equally).
>
> Creating the device build directory is just a small slice of the needed work, you'll need to clone something into src/palmos, build/palmos, src/palmos-<cpu> and build/palmos-<cpu>. Of course then you need to modify them to build and work for palmos.
>

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 20, 2008 1:05 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

> Porting starts by cloning an existing port to create the proper src and build directories. A start would be to clone one of the build directories to create a build/palmos-<cpu>-<device>. Plug in whatever the cpu is for <cpu> and whatever the specific device name is for <device> (use generic if all devices are treated equally).

Palms are based originally on 68k chips with later arm chips. The chip on my Treo 680 is an Intel PXA270.

I would suspect we need a palmos-arm and possible a palmos-m68k (for older Palms), but I'm not sure if the older Palms will have the necessary resources to support full implementation, so at a minimum, I think palmos-arm is a good starting point.

Which existing port would you recommend? Would it be better to pick something based on an arm chip of some type or based on a more complete implementation such as a linux-arm port of some kind?

Eric

cjplummer

Posts: 343
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 20, 2008 1:28 PM   in response to: ebresie
  Click to reply to this thread Reply

> > Porting starts by cloning an existing port to
> create the proper src and build directories. A start
> would be to clone one of the build directories to
> create a build/palmos-<cpu>-<device>. Plug in
> whatever the cpu is for <cpu> and whatever the
> specific device name is for <device> (use generic if
> all devices are treated equally).
>
> Palms are based originally on 68k chips with later
> arm chips. The chip on my Treo 680 is an Intel
> PXA270.
>
> I would suspect we need a palmos-arm and possible a
> palmos-m68k (for older Palms), but I'm not sure if
> the older Palms will have the necessary resources to
> support full implementation, so at a minimum, I think
> palmos-arm is a good starting point.
>
> Which existing port would you recommend? Would it be
> better to pick something based on an arm chip of some
> type or based on a more complete implementation such
> as a linux-arm port of some kind?
>
> Eric

You'll want to start with one of our many OS ports to ARM. I have no idea which OS palm is most like. You can choose from linux, win32, symbian, and vxworks (solaris and darwin aren't much different than linux). There are ports to ARM for linux, win32, and symbian, including the JIT.

For 68k, if you go that route, I'd suggest first getting a palmos-arm port working since we currently have no 68k support for any OS.

Chris

ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 24, 2008 2:08 PM   in response to: cjplummer
  Click to reply to this thread Reply

Haven't gotten too far, but I have started trying to work on cloning the port directories.

I am working multipled environements (Cygwin based and also trying to get Visual Studios installed), but my thinking is:

At the moment, I am working the Cygwin route, since the prc-tools that are common with Palm development, seems more useful in the Cygwin route.

I created the following directories:

cdc/build/palmos
cdc/build/palmos-arm
cdc/src/palmos
cdc/src/palmos-arm

I have cloned the linux and linux-arm-generic to the palmos and palmos-arm for both build and src directories.

I noticed there are some defs_personal_x11.mk and defs_personal_motif.mk which I assume are for X11 and MOTIF environments, which I suspect are not available for Palm presently, so I dropped these. I did notice the defs_personal_gtk.mk and defs_personal_qt.mk which seemed more likely candidates for use with Palm, but once again, I'm not sure if they have been ported to Palm either. I may need to have another items for whatever Palm UI framework we will end up using.

When attempting:

make CVM_TARGET_TOOLS_PREFIX=/usr/bin/arm-palmos-

I get:

... generating PackageManager.java
java.io.FileNotFoundException: e:\usr\local\src\phoneME\cdc\src\share\tools\xml\
empty.xml (The system cannot find the path specified)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at java.io.FileInputStream.<init>(FileInputStream.java:66)
at sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection
.java:70)
at sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLCon
nection.java:161)
at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrent
Entity(XMLEntityManager.java:653)
at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineD
ocVersion(XMLVersionDetector.java:186)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(X
ML11Configuration.java:771)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(X
ML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.
java:107)
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.
java:225)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Doc
umentBuilderImpl.java:283)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:208)
at com.sun.xml.transform.CodeTransformerImpl.transform(Unknown Source)
at com.sun.xml.transform.CodeTransformer.main(Unknown Source)
make: *** [/usr/local/src/phoneME/cdc/build/palmos-arm-/./generated/classes/com/
sun/cdc/config/PackageManager.java] Error 1

Not sure if maybe this is a missing cygwin environment tool but there's were I am at the moment.

A question through, why does the "palmos-arm-" build get created? Where does the last "-" come from? Any ideas?

Eric

Hinkmond Wong
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 24, 2008 2:08 PM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Haven't gotten too far, but I have started trying to work on cloning the port directories.
>
> I am working multipled environements (Cygwin based and also trying to get Visual Studios installed), but my thinking is:
>
> At the moment, I am working the Cygwin route, since the prc-tools that are common with Palm development, seems more useful in the Cygwin route.
>
> I created the following directories:
>
> cdc/build/palmos
> cdc/build/palmos-arm
> cdc/src/palmos
> cdc/src/palmos-arm
>
> I have cloned the linux and linux-arm-generic to the palmos and palmos-arm for both build and src directories.
>
> I noticed there are some defs_personal_x11.mk and defs_personal_motif.mk which I assume are for X11 and MOTIF environments, which I suspect are not available for Palm presently, so I dropped these. I did notice the defs_personal_gtk.mk and defs_personal_qt.mk which seemed more likely candidates for use with Palm, but once again, I'm not sure if they have been ported to Palm either. I may need to have another items for whatever Palm UI framework we will end up using.
>

Yes, don't look at any parts of the build that used _basis or
_personal. Those are the GUI parts that just won't build without a huge
amount of work on Palm OS. The best approach is to stick with a
headless CDC/Foundation Profile build (J2ME_CLASSLIB=foundation).


> When attempting:
>
> make CVM_TARGET_TOOLS_PREFIX=/usr/bin/arm-palmos-
>
> I get:
>
> ... generating PackageManager.java
> java.io.FileNotFoundException: e:\usr\local\src\phoneME\cdc\src\share\tools\xml\
> empty.xml (The system cannot find the path specified)
>
>

That's our dreaded Windows mount "feature" in our builds. Try this and
see if it works:

mount e:/usr /usr
make ...


> Not sure if maybe this is a missing cygwin environment tool but there's were I am at the moment.
>
> A question through, why does the "palmos-arm-" build get created? Where does the last "-" come from? Any ideas?
>
...
> I have since created an I palmos-arm-generic directory as well.
>


Yes, that looks like it should match your makefiles now that you renamed
your clone directory to *-*-*.


Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 24, 2008 8:04 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Yup...I stumbled across a thread elsewhere ( http://forums.java.net/jive/message.jspa?messageID=282367 ) that mentioned the problem. I tried it out and this resolved the problem of the empty.xml file. I was able to get further.

Eric

ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 24, 2008 8:14 PM   in response to: ebresie
  Click to reply to this thread Reply

I forgot to mention, with my linux-arm-generic based build, I ended up getting an error relating to threading. I'm thinking the linux code might be making some thread calls of some type, but I'm not sure how much of that is usable and how much will have to be totally re-written for the palm. Don't have my code at the moment, so will provide details when I am able to provide it.

Eric

Hinkmond Wong
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 25, 2008 4:32 PM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> I forgot to mention, with my linux-arm-generic based build, I ended up getting an error relating to threading. I'm thinking the linux code might be making some thread calls of some type, but I'm not sure how much of that is usable and how much will have to be totally re-written for the palm. Don't have my code at the moment, so will provide details when I am able to provide it.
>

Hi Eric,

Did you find what was going on with the threading error? Did you have a
specific error message that you saw in the output?


Thanks,
Hinkmond



---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting
Posted: Aug 29, 2008 2:09 PM   in response to: ebresie
  Click to reply to this thread Reply

Not sure if it will help but noticed another thread on the Feature forum which might be relevant on the thread front.

http://forums.java.net/jive/thread.jspa?messageID=293286

Eric

ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting (GUI LIbraries)
Posted: Jun 24, 2008 8:10 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

> phonemeadvanced@mobileandembedded.org wrote:
> > I noticed there are some defs_personal_x11.mk and
> defs_personal_motif.mk which I assume are for X11 and
> MOTIF environments, which I suspect are not available
> for Palm presently, so I dropped these. I did notice
> the defs_personal_gtk.mk and defs_personal_qt.mk
> which seemed more likely candidates for use with
> Palm, but once again, I'm not sure if they have been
> ported to Palm either. I may need to have another
> items for whatever Palm UI framework we will end up
> using.
> >
>
> Yes, don't look at any parts of the build that used
> _basis or
> _personal. Those are the GUI parts that just won't
> build without a huge
> amount of work on Palm OS. The best approach is to
> stick with a
> headless CDC/Foundation Profile build
> (J2ME_CLASSLIB=foundation).

I am likely getting ahead of myself again, but I posted elsewhere (see http://www.1src.com/forums/showthread.php?t=145828 ) about possible UI related available libraries for Palm development and someone mentioned a port of SDL for the Palm (see https://sourceforge.net/project/showfiles.php?group_id=212180 ). Would SDL (see http://libsdl.org/ ) provide the necessary UI aspects needed for the GUI parts? Would a defs_personal_sdl.mk be worth developing?

Eric

Hinkmond Wong
Re: Garnet OS / Palm OS 5.x porting (GUI LIbraries)
Posted: Jun 25, 2008 4:30 PM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> I am likely getting ahead of myself again, but I posted elsewhere (see http://www.1src.com/forums/showthread.php?t=145828 ) about possible UI related available libraries for Palm development and someone mentioned a port of SDL for the Palm (see https://sourceforge.net/project/showfiles.php?group_id=212180 ). Would SDL (see http://libsdl.org/ ) provide the necessary UI aspects needed for the GUI parts? Would a defs_personal_sdl.mk be worth developing?
>

Hi Eric,

Thanks! That reference will help in the future. Now that you,
Biswajit, and Jay are building on a host system, we'll need to work on
cross-compiling a binary to try on the target PalmOS device. (I think
just getting a System.out.println("Hello World!"); app to work with the
cross-compiler tool will be a big enough challenge before we even
consider UI issues, though ;-) ).


Hinkmond


---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting (GUI LIbraries)
Posted: Jun 30, 2008 8:52 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Not sure if this is usable either, but found the following which may also prove useful...

http://www.wxwidgets.org/about/news/palmos.htm

Eric

ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting (GUI LIbraries)
Posted: Jul 1, 2008 4:29 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

I finally found a little more on having a "Console" type application.

Check out: http://palmos.combee.net/blog/HiddenIOConsole.html

The sort answer (not really possible) is there appears to be a couple of relavnet Palm header file (StdIOPalm.h and StdIOPalmProvider.h) which allows some basic stdio.h type of handling.

Found an example of StdIOPalmProvider.c but still a little confusing to me at the moment. You can find this at: http://www.koders.com/c/fid6756F8DAD977813D8AFF9E7577DB31C851A63FE7.aspx?s=printf

The provider is basically an primative application that executes the commands and provides input and output to the "console" application. You have to make the database a sdio type instead of an app. You have to name it Cmd-<command name>.

There is also a Unix/unix_stdio.h we may want to investigate.

I still haven't been able to get this working yet, but figured I would post for others to learn as we go.

Eric

ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting (Stdio / Console)
Posted: Jul 1, 2008 4:30 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

I finally found a little more on having a "Console" type application.

Check out: http://palmos.combee.net/blog/HiddenIOConsole.html

The sort answer (not really possible) is there appears to be a couple of relavnet Palm header file (StdIOPalm.h and StdIOPalmProvider.h) which allows some basic stdio.h type of handling.

Found an example of StdIOPalmProvider.c but still a little confusing to me at the moment. You can find this at: http://www.koders.com/c/fid6756F8DAD977813D8AFF9E7577DB31C851A63FE7.aspx?s=printf

The provider is basically an primative application that executes the commands and provides input and output to the "console" application. You have to make the database a sdio type instead of an app. You have to name it Cmd-<command name>.

There is also a Unix/unix_stdio.h we may want to investigate.

I still haven't been able to get this working yet, but figured I would post for others to learn as we go.

Eric

Hinkmond Wong
Re: Garnet OS / Palm OS 5.x porting (Stdio / Console)
Posted: Jul 1, 2008 10:22 PM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> I finally found a little more on having a "Console" type application.
>
> Check out: http://palmos.combee.net/blog/HiddenIOConsole.html
>
> The sort answer (not really possible) is there appears to be a couple of relavnet Palm header file (StdIOPalm.h and StdIOPalmProvider.h) which allows some basic stdio.h type of handling.
>
> Found an example of StdIOPalmProvider.c but still a little confusing to me at the moment. You can find this at: http://www.koders.com/c/fid6756F8DAD977813D8AFF9E7577DB31C851A63FE7.aspx?s=printf
>
> The provider is basically an primative application that executes the commands and provides input and output to the "console" application. You have to make the database a sdio type instead of an app. You have to name it Cmd-<command name>.
>
> There is also a Unix/unix_stdio.h we may want to investigate.
>

Yikes! This is going to be more complicated than I thought.

Let me ask anyone who knows PalmOS or ask you guys to forward this to a
PalmOS developer forum: If you wanted to write a simple C program (no
Java at all) that only did printf("Hello world!"); How would you
program that, compile it, and link it (how would you include stdio.h,
etc, etc)? And then, how would you run it (to actually see the text,
"Hello world!" display on your screen of your device)?

If you can find the answer to those questions, then we can treat the
Java VM as just another non-GUI PalmOS C program that you run from a
command line on your PalmOS device.


Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting (Stdio / Console)
Posted: Jul 2, 2008 11:19 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Not sure if anything will come from it, but I posted on one of the news groups. See:

http://groups.google.com/group/comp.sys.palmtops/browse_thread/thread/e01c096b76dcbb4b?hl=en#

Hinkmond Wong
Re: Garnet OS / Palm OS 5.x porting (Stdio / Console)
Posted: Jul 2, 2008 11:19 AM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Not sure if anything will come from it, but I posted on one of the news groups. See:
>
> http://groups.google.com/group/comp.sys.palmtops/browse_thread/thread/e01c096b76dcbb4b?hl=en#
>
>
Thanks, Eric! That was well worded.

Hinkmond


---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting (Stdio / Console)
Posted: Jul 2, 2008 8:22 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

They provided a potentially helpful link. Check out:

http://dogbert.mse.cs.cmu.edu/charlatans/References/Tech_Doc/Palm_FAQ/articles/stdlib.html

Eric

Hinkmond Wong
Re: Garnet OS / Palm OS 5.x porting (Stdio / Console)
Posted: Jul 3, 2008 2:18 PM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> They provided a potentially helpful link. Check out:
>
> http://dogbert.mse.cs.cmu.edu/charlatans/References/Tech_Doc/Palm_FAQ/articles/stdlib.html
>

Hi Eric,

Thanks for the link. That's a good reference for our purpose. Ack!
This is not going to be easy. Let's move over to Max's mail thread...

See:
http://forums.java.net/jive/thread.jspa?messageID=284100



Hinkmond






---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


fcassia_at_gmail

Posts: 8
Re: Garnet OS / Palm OS 5.x porting (Stdio / Console)
Posted: Jul 2, 2008 11:44 AM   in response to: ebresie
  Click to reply to this thread Reply

Here's another one:

http://slawa.homeip.net/books/start.php/Palm/PalmOSCompanion/StandardIOApp.html

-----------------------------------------------------------------------------------------------------------------------------
Standard IO Applications

Palm OS® Programmer's Companion

Volume I

16 Standard IO Applications
Creating a Standard IO Application
Creating a Standard IO Provider Application
Summary of Standard IO


The Palm OS® supports command line (UNIX style) applications for debugging and special purposes such as communications utilities. This capability is not intended for general users, but for developers. This feature is not implemented in the Palm OS, but rather by additional C modules that you must link with your application.
NOTE: Don't confuse this standard IO functionality with the file streaming API. They are unrelated.

There are two parts necessary for a standard IO application:

* The standard IO application itself.

A standard IO application is not like a normal Palmâ„¢ application. It is executed by a command line and has minimal user interface. It can take character input from the stdin device (the keyboard) and write character output to the stdout window.
* The standard IO provider application.

A standard IO provider application is necessary to execute and see output from a standard IO application. The standard IO provider application is a normal Palm application that provides a field in which you can enter commands to execute standard IO applications. The field also serves as a stdout window where output from the executing application is written.

The details of creating these two different applications are described in the following sections.
Creating a Standard IO Application ^TOP^

To create a standard IO application, you must include the header file StdIOPalm.h. In addition to including this header, you must link the application with the module StdIOPalm.c. This module provides a PilotMain routine that extracts the command line arguments from the cmd and cmdPBP parameters and the glue code necessary for executing the appropriate callbacks supplied by the standard IO provider application.

You build the application normally, but give it a database type of sioDBType ('sdio') instead of 'appl'. In addition, it must be named "Cmd-cmdname" where cmdname is the name of the command used to execute the application. For example, the ping command would be placed in a database named "Cmd-ping".

In the Palm VIIâ„¢ handheld, the Network panel, whose log window is a standard IO provider application, has two standard IO commands built-in: info and finger. The ROM has two additional ones: ping and nettrace.

When compiling for the Palm Poweredâ„¢ handheld, the entry point must be named SioMain and must accept two parameters: argc and argv. Here's the simplest possible example of a standard IO application.

#include <StdIOPalm.h>
Int16 SioMain(UInt16 argc, Char* argv[ ])
{
printf("Hello World\n");
}

Standard IO applications can use several input and output functions that mimic their similarly named UNIX counterparts. These are listed in the summary table at the end of this chapter.

Your standard IO application can accept input from stdin and write output to stdout. The stdin device corresponds to the text field in the standard IO provider application that is used for input and output. The stdout device corresponds to that same text field.
-----------------------------------------------------------------------------------------------------------------------------


FC

Hinkmond Wong
Re: Garnet OS / Palm OS 5.x porting (Stdio / Console)
Posted: Jul 2, 2008 11:44 AM   in response to: fcassia_at_gmail
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Here's another one:
>
> http://slawa.homeip.net/books/start.php/Palm/PalmOSCompanion/StandardIOApp.html
>
> ...
> #include <StdIOPalm.h>
> Int16 SioMain(UInt16 argc, Char* argv[ ])
> {
> printf("Hello World\n");
> }
>
>
> Standard IO applications can use several input and output functions that mimic their similarly named UNIX counterparts. These are listed in the summary table at the end of this chapter.
>
> Your standard IO application can accept input from stdin and write output to stdout. The stdin device corresponds to the text field in the standard IO provider application that is used for input and output. The stdout device corresponds to that same text field.
>


Thanks, FC! Good stuff! Eric, is there a way you can wrap SioMain()
around a normal main() (to make it invisible for our case on PalmOS, but
still work under their guidelines for StdIOPalm)?

Ex.

#include <StdIOPalm.h>
Int16 SioMain(UInt16 argc, Char* argv[ ])
{
main(argc, argv);
}

static main(int argc, char* args[]) {
printf("Hello World\n");
// Our CVM_Main stuff will stay here...
}



Hinkmond



---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting (Stdio / Console)
Posted: Sep 8, 2008 12:14 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

As I am still trying to weary the innards of Palm Development, this has been a long time coming...

After finding an old version of StdIOPalm.c (I am trying to find something newer), I was able to build a basic Palm HelloWorld program (no VM built yet), which runs under the Preferences...Network...Option...View Log hidden terminal. This makes use of an SioMain based main.

I made a very basic port layer (a #define for main, int, and _int in place of SioMain, Int16, and UInt16, which may help minimize some of the porting.

So this turned into:

#include <StdIOPalm.h>
/* The following is a quick port layer to translate from basic
*
* int main(int argc, char* argv)
*
* to equivalent Palm version
*
* Int16 SioMain(UInt16 argc, const Char* argv[])
*
* which uses SioMain.
*
* Since Palm version uses both UInt16 and Int16 instead of just int, I
* cludge together something with the assumption that _int is the Int16 as opposed
* to int which is the UInt16 version.
*
* This could be done better but it's a start.
* */
#define main(x, y) SioMain(x, y)
#define int UInt16
#define _int Int16
#define char const Char

_int main(int argc, char* argv[ ])
{
printf("Hello World\n");
return 0;
}

This may not seem like much, but at least I'm making some progress for my basic Palm development learning requirements.

On the thread front...

I almost have pth compiling and building for use with Palm, but to work with Palm version, still need to develop an additional inbetween layer.

Palm shared libraries require implementation of a open, close, sleep, and wake method used in Palm development, which allocates and frees memory using the Palms methods. The pth library specific stuff will also be used.

Next stop...making a sharable library using pth as the basics with a Palm shared library layer between it. Also make a basic test program to use the Palm pth as a test, then...port the phoneME thread portion..

Eric

Hinkmond Wong
Re: Garnet OS / Palm OS 5.x porting (Stdio / Console)
Posted: Sep 8, 2008 12:14 PM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> As I am still trying to weary the innards of Palm Development, this has been a long time coming...
> ...
> Next stop...making a sharable library using pth as the basics with a Palm shared library layer between it. Also make a basic test program to use the Palm pth as a test, then...port the phoneME thread portion..
>

Hi Eric,

Good to hear you are making some progress. Hope you will be able to
work with pth OK. Please keep us in the loop and let us know if you run
into any problems we can try to help with...


Thanks,

Hinkmond



---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


fcassia_at_gmail

Posts: 8
Re: Garnet OS / Palm OS 5.x porting (Stdio / Console)
Posted: Jul 2, 2008 11:55 AM   in response to: ebresie
  Click to reply to this thread Reply

See here:
ANSI C Standard Library for PocketC on the PalmOS
http://www.orbworks.com/pcpalm/resources.html

I wonder if this would be reusable for you guys:

Reusable Source Code

This is code specifically designed to be used within other applets.

Name Description Author
pclib the ANSI C Standard Library for PocketC on the PalmOS (or as close to it as is humanly possible). Thad Frogley

FC

ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting (Stdio / Console)
Posted: Sep 11, 2008 11:16 AM   in response to: fcassia_at_gmail
  Click to reply to this thread Reply

Not sure if it's worth it at this point but found another possible ANSI C library that could potentially be ported.

Checkout: http://sourceware.org/newlib/

Eric

ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 24, 2008 2:21 PM   in response to: ebresie
  Click to reply to this thread Reply

> A question through, why does the "palmos-arm-" build get created? Where does the last "-" come from? Any ideas?

Opps...I think I may have figured part of my problem...

I incorrectly copied from a linux-arm-generic directory into my palmos-arm directory which may have caused some of the problems. I have since created an I palmos-arm-generic directory as well.

I did continue to get the same problem error.

Eric

ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 20, 2008 12:54 PM   in response to: cjplummer
  Click to reply to this thread Reply

> So unless you have a linux-x86 cross compiler running under cygwin that you can point to with CVM_TARGET_TOOLS_PREFIX, you should not be in the linux-x86-generic build directory.

I did build against the linux-x86-generic directory using cygwin as the environment. This is where I suspect I got some differences.

What is the preferred way to set the CVM_TARGET_TOOLS_PREFIX and related variables?

As an environment variable?
As an argument to make?
As a value contained in a related .mk/makefile/configuration file of some type?

What other variables might need to be set? While reviewing some of the output during the build, I noticed references to TARGET_CC, TARGET_CCC, TARGET_AS, TARGET_LD, TARGET_AR, and TARGET_RANLIB. I assume many of these may already get set to a default value, based on other variables, are they set based on running a specific application, or configured as part of make activities. Are any of these correct assumptions?

Thanks ahead of time.

Eric

cjplummer

Posts: 343
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 20, 2008 1:24 PM   in response to: ebresie
  Click to reply to this thread Reply

> > So unless you have a linux-x86 cross compiler
> running under cygwin that you can point to with
> CVM_TARGET_TOOLS_PREFIX, you should not be in the
> linux-x86-generic build directory.
>
> I did build against the linux-x86-generic directory
> using cygwin as the environment. This is where I
> suspect I got some differences.
>
> What is the preferred way to set the
> CVM_TARGET_TOOLS_PREFIX and related variables?
>
> As an environment variable?
> As an argument to make?
> As a value contained in a related
> .mk/makefile/configuration file of some type?
Any of the above. If the tools are usually in a well known location for a given port (they usually are not) then the GNUmakefile is a good place for a default. However, proceeding with trying to build the linux-x86 port under cygwin is pretty pointless. Just build it on a linux-x86 machine with native tools. A cygwin-x86 port is also pretty pointless. Just use the exising win32-x86 port.
>
> What other variables might need to be set? While
> reviewing some of the output during the build, I
> noticed references to TARGET_CC, TARGET_CCC,
> TARGET_AS, TARGET_LD, TARGET_AR, and TARGET_RANLIB.
> I assume many of these may already get set to a
> default value, based on other variables, are they
> set based on running a specific application, or
> configured as part of make activities. Are any of
> these correct assumptions?

They are set based on the value of CVM_TARGET_TOOLS_PREFIX. Sometimes CVM_TARGET_TOOLS_PREFIX doesn't work so well and you need to set the paths to each tool, but for any gcc build, setting CVM_TARGET_TOOLS_PREFIX should work.

Also note that when the target and host are the same, CVM_TARGET_TOOLS_PREFIX is usually left unset, and gcc is picked up off of $PATH.

Chris

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 20, 2008 1:30 PM   in response to: cjplummer
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
...
>> I did build against the linux-x86-generic directory
>> using cygwin as the environment. This is where I
>> suspect I got some differences.
>>
>> What is the preferred way to set the
>> CVM_TARGET_TOOLS_PREFIX and related variables?
>>
>> As an environment variable?
>> As an argument to make?
>> As a value contained in a related
>> .mk/makefile/configuration file of some type?
> Any of the above. If the tools are usually in a well known location
> for a given port (they usually are not) then the GNUmakefile is a
> good place for a default. However, proceeding with trying to build
> the linux-x86 port under cygwin is pretty pointless. Just build it on
> a linux-x86 machine with native tools. A cygwin-x86 port is also
> pretty pointless. Just use the exising win32-x86 port.

Eric mentioned he doesn't have MS Visual Studio 2005. So, I'm not sure
he can build the win32-x86 build flavor.

Is that correct, Eric? Did you try the win32-x86 build and see you have
missing tools on your Windows PC?

I'm also not sure if you knew there is a free version of MS VS2005:

http://www.download.com/Visual-Studio-2005-SP1/3000-10251_4-10618634.html


So, whichever way you choose, I think it's worth it if you first build a
host system binary to see how our Makefiles work, how you generate a cvm
binary and support files from those, and how it runs by executing the
testclasses.zip Test class. Using the free version of MS VS2005 (above)
and the win32-x86 build flavor (as Chris suggested) might be the
quickest way at this point, knowing just a little about your set up.

It is worth it to do a host build before trying to build a target device
binary (like for ARM) since you won't be able to run and check if you
built the ARM/68k binary incorrectly, especially on a new target device
like a PalmOS device that we are not even sure yet if you have a
Terminal shell or not. Building the host binary becomes your touchstone
that you can compare the target development to.

So, before going too far the route of investigating what it takes to
build a ARM or 68k binary, let us know if you are comfortable in
building and running the x86 cvm binary first, especially since you have
not worked with phoneME or CDC before.


Thanks,
Hinkmond


---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 20, 2008 12:54 PM   in response to: cjplummer
  Click to reply to this thread Reply

> So unless you have a linux-x86 cross compiler running under cygwin

Would it make sense to create another port which is a cygwin based build of some type?

Eric

cjplummer

Posts: 343
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
Posted: Jun 20, 2008 1:25 PM   in response to: ebresie
  Click to reply to this thread Reply

> > So unless you have a linux-x86 cross compiler
> running under cygwin
>
> Would it make sense to create another port which is a
> cygwin based build of some type?
>
> Eric

I don't think this is useful unless you just want the porting experience.

Chris

mattleo

Posts: 3
I'd like to help
Posted: Jun 23, 2008 6:38 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

I've got access to two PalmOS 5 devices, although they're rather old (A Tungsten T and a Zire 71), as well as a rather large selection of PocketPC devices if having one for comparison would be useful.

I don't have any native development experience on Palm, although I've developed waba applications. I do have C experience, although it's been a long time.

I can build either on Linux with the gnu toolchain, or on Windows with Visual Studio. I also have access to a Mac if there is any value in using that. I'm most used to working with Eclipse. I'm willing to spend a modest amount of money on tools, if that would be useful. Whatever is the most productive platform to cooperate with, I'll use that.

I can also buy another Palm device, if need be.

Hinkmond Wong
Re: I'd like to help
Posted: Jun 23, 2008 3:20 PM   in response to: mattleo
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> I've got access to two PalmOS 5 devices, although they're rather old (A Tungsten T and a Zire 71), as well as a rather large selection of PocketPC devices if having one for comparison would be useful.
> ...
>
> I can build either on Linux with the gnu toolchain, or on Windows with Visual Studio. I also have access to a Mac if there is any value in using that.

Hi Matt,

Thanks for volunteering! Since, many of the other Palm OS port
developers are also using Windows with Visual Studio, can you try the
following:


Download:
http://wiki.java.net/bin/view/Mobileandembedded/PhoneMEAdvancedBSGGetting

Set up:
Download and Install J2SDK 1.4.2
<https://

Set your cygwin shell env variables:
export JAVA_HOME=/cygdrive/c/j2sdk1.4.2_17
export JAVA_PATH=$JAVA_HOME
export JDK_HOME=$JAVA_HOME

Try building:
cd cdc/build/win32-x86-vc8
make J2ME_CLASSLIB=foundation

Try running:
bin/cvm -version
bin/cvm -cp testclasses.zip Test


Let us know if you get that far.


Thanks,
Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


mattleo

Posts: 3
Re: I'd like to help
Posted: Jul 2, 2008 7:23 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Hmmm. So you'd like me to try this on Windows with cygwin, as opposed to VS? In that case, why not Linux?

I do most of my development these days on virtual machines (it makes switching machines sooo much easier). So I'm going to try the build on some kind of virtual machine or another. I was thinking it might be useful to try the build on a Linux virtual appliance. One thing I've found is that it's a bit of a PITA to get a new team member set up with everything he needs. If I can do the checkout and build on a Linux VM, the nice thing about that would be that the entire VM would be re-distributable without license restrictions. Anybody interested in getting their feet wet could just download the appliance, start it up, do a checkout and build.

The downside is the lack of Palm's official hotsync software, but I've found Ubuntu's Palm hardware support to be quite good. I haven't tried it in a vm appliance yet, but it should be possible to hook the USB Device up to the virtual Ubuntu and install software.

Hinkmond Wong
Re: I'd like to help
Posted: Jul 2, 2008 10:44 AM   in response to: mattleo
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Hmmm. So you'd like me to try this on Windows with cygwin, as opposed to VS? In that case, why not Linux?
>
> I do most of my development these days on virtual machines (it makes switching machines sooo much easier). So I'm going to try the build on some kind of virtual machine or another. I was thinking it might be useful to try the build on a Linux virtual appliance. One thing I've found is that it's a bit of a PITA to get a new team member set up with everything he needs. If I can do the checkout and build on a Linux VM, the nice thing about that would be that the entire VM would be re-distributable without license restrictions. Anybody interested in getting their feet wet could just download the appliance, start it up, do a checkout and build.
>
> The downside is the lack of Palm's official hotsync software, but I've found Ubuntu's Palm hardware support to be quite good. I haven't tried it in a vm appliance yet, but it should be possible to hook the USB Device up to the virtual Ubuntu and install software.
>

Hi Matt,

That sounds fine if you want to try to use a virtual Ubuntu or even
Windows w/MS VS2005. There are bigger problems right now that there is
no Console or Terminal to bring up a shell to type command lines on a
PalmOS device itself and it seems there is no true POSIX threads in PalmOS.

If that's true, it is a showstopper for the PalmOS port of pMEA if you
guys cannot figure a workaround, since that means a simple
HelloWorld.java test won't be able to confirm that the headless base
port of the VM is working OK.


Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


mattleo

Posts: 3
Re: I'd like to help
Posted: Jul 2, 2008 12:40 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Well, OK. Mostly I want to take the path of least resistance, but if all things are equal it might be nice to develop in Linux because it makes moving the development environment around easier. However, if that is likely to be a limiting factor in contributing, then I'll use what "everyone else" is using. I also have a Palm Developer Network membership so I can download the Access Developer Network tools, which are Windows based.

WRT to the console issue, I'm not sure I understand why this should be a problem. The waba people simply create a file for console output. In the long term it'd be nice to have a console for interactive testing, but for HelloWorld an OutputStream's and OutputStream. Of course, maybe I'm just being ignorant. I'll know more once I've got to the point of being able to build.

max_mu

Posts: 28
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 18, 2008 11:20 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Hi Hinkmond,
Count me in ;-)
I ported phoneMEFeature to PSP, but met some problem when porting phoneMEAdvanced. Hope I can learn from this project while contributing.

M@x

ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 24, 2008 1:58 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Perhaps we should start a new thread since we are almost to the point of working on the port.

Eric

Hinkmond Wong
Garnet OS / Palm OS 5.x porting
Posted: Jun 24, 2008 1:58 PM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Perhaps we should start a new thread since we are almost to the point of working on the port.

OK. Good idea. I just renamed the Subject line. Let's see if this
gets translated to a new forum thread...

Anyone get a good build and can run the testclasses.zip Test app yet?


Hinkmond


---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


jslee06

Posts: 10
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 24, 2008 8:04 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

My linux-x86-generic foundation build is working for the test classes.

jslee06

Posts: 10
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 26, 2008 6:49 PM   in response to: jslee06
  Click to reply to this thread Reply

My prctool is installed and I have /opt/palmdev/ set up with a lib and include directory from the Palm SDK 5.0r3. PilRC is also compiled and installed. I don't know what to do with filling in palmos, palmos-arm folders in phoneme_advanced_mr2/cdc/src.

My CVM_HOST = i686-redhat-linux
CVM_TARGET = palmos-arm-generic
SHELL = sh -e
HOST_CC = /usr/bin/gcc
HOST_CCC = /usr/bin/g++
ZIP = /usr/bin/zip
FLEX = /usr/bin/flex
BISON = /usr/bin/bison
CVM_JAVA = /usr/java/j2sdk1.4.2_17/bin/java
CVM_JAVAC = /usr/java/j2sdk1.4.2_17/bin/javac
CVM_JAVAH = /usr/java/j2sdk1.4.2_17/bin/javah
CVM_JAR = /usr/java/j2sdk1.4.2_17/bin/jar
TARGET_CC = /opt/palmos-arm/bin/arm-palmos-gcc
TARGET_CCC = /opt/palmos-arm/bin/arm-palmos-g++
TARGET_AS = /opt/palmos-arm/bin/arm-palmos-gcc
TARGET_LD = /opt/palmos-arm/bin/arm-palmos-gcc
TARGET_AR = /opt/palmos-arm/bin/arm-palmos-ar
TARGET_RANLIB = /opt/palmos-arm/bin/arm-palmos-ranlib
LINKFLAGS = -g -Wl,-export-dynamic
LINKLIBS = -lpthread -ldl
ASM_FLAGS = -c -fno-common -traditional
CCCFLAGS = -fno-rtti
CCFLAGS_SPEED = -c -fno-common -Wall -fno-strict-aliasing -mcpu=xscale -O4
CCFLAGS_SPACE = -c -fno-common -Wall -fno-strict-aliasing -mcpu=xscale -O2
CCFLAGS_LOOP = -c -fno-common -Wall -fno-strict-aliasing -mcpu=xscale -O4
CCFLAGS_FDLIB = -c -fno-common -Wall -fno-strict-aliasing -mcpu=xscale -O4
JAVAC_OPTIONS = -g:none -J-Xms32m -J-Xmx128m -encoding iso8859-1 -source 1.4 -target 1.4
CVM_DEFINES = -DCVM_OPTIMIZED -DCVM_DEBUG_STACKTRACES -DNDEBUG -DCVM_CLASSLOADING -DCVM_SERIALIZATION -DCVM_REFLECT -DCVM_DYNAMIC_LINKING -DCVM_JIT -DCVM_JIT_REGISTER_LOCALS -DCVM_TIMESTAMPING -DJ2ME_CLASSLIB=cdc -DTARGET_CPU_FAMILY=arm -DCVM_JIT_COPY_CCMCODE_TO_CODECACHE -D_GNU_SOURCE -DCVM_IAI_OPT_ALL
host uname = Linux localhost.localdomain 2.6.25.6-55.fc9.i686 #1 SMP Tue Jun 10 16:27:49 EDT 2008 i686 i686 i386 GNU/Linux
TARGET_CC version = 3.3.1 arm-palmos
HOST_CC version = 4.3.0 i386-redhat-linux
CVM_JAVA version = java version 1.4.2_17

ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 26, 2008 8:38 PM   in response to: jslee06
  Click to reply to this thread Reply

I have gotten to the point (in Hinkman's "how to port" presentation) where you have to work on the _md files.

Is there any place I can post my current version of source? I have it set to build up to the point were it tries to do the OS specific stuff, like setting the appropriate Palm version of basic variable types.

On a side note, it looks like the files in place do not have all GPL related headers...maybe left overs...do we need to update these and the copyright date (currently listed as 2006)?

Eric

Hinkmond Wong
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 26, 2008 10:01 PM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> I have gotten to the point (in Hinkman's "how to port" presentation) where you have to work on the _md files.
>
> Is there any place I can post my current version of source? I have it set to build up to the point were it tries to do the OS specific stuff, like setting the appropriate Palm version of basic variable types.
>
> On a side note, it looks like the files in place do not have all GPL related headers...maybe left overs...do we need to update these and the copyright date (currently listed as 2006)?
>
> Eric

Hi Eric,

This is pretty awesome! You and Jay are making lots of good progress
now. We should let the others like Max, Biswajit, and Matt catch up.

Can you point out which files don't have GPL headers? If you put the
correct headers on them and zip them up, you should be able to upload
your zip bundle to here:

https://j2me-cdc.dev.java.net/servlets/ProjectDocumentList?folderID=9440&expandFolder=9440&folderID=9440

(Log in as yourself "ebriese" and click on "Add new file" blue link
along the top)

Let me know if there are any problems.

Also, please let us know what build command to use with your files.


Thanks,
Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


ebresie

Posts: 136
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 27, 2008 1:14 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

I was mistaken on the header...I misread the header.

I have placed a file called pMEA-palmos-0.1.tar.gz

It contains the following directories (unzip accordingly)

cdc/build/palmos
cdc/build/palmos-arm
cdc/build/palmos-arm-generic
cdc/src/palmos
cdc/src/palmos-arm

This is a very cursory attempt. I put in a few "TODO" texts in the build files where I think changes are needed, but did not make the same changes in the src since this was a little larger a task.

I modified some of the build files to make use of the setup that I have, so all I had to do was use the command "make".

It still breaks once it tries to compile some of the _md related files.

Eric

Hinkmond Wong
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 27, 2008 6:25 PM   in response to: ebresie
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> I was mistaken on the header...I misread the header.
>
> I have placed a file called pMEA-palmos-0.1.tar.gz
>
> It contains the following directories (unzip accordingly)
>
> cdc/build/palmos
> cdc/build/palmos-arm
> cdc/build/palmos-arm-generic
> cdc/src/palmos
> cdc/src/palmos-arm
>
> This is a very cursory attempt. I put in a few "TODO" texts in the build files where I think changes are needed, but did not make the same changes in the src since this was a little larger a task.
>
> I modified some of the build files to make use of the setup that I have, so all I had to do was use the command "make".
>
> It still breaks once it tries to compile some of the _md related files.
>

Thanks, Eric! The next step after you stub out any more compilation
breaks (in your _md files) for now, is to figure out how to run on a
PalmOS device.

Is there some type of Terminal or Shell utility for PalmOS where you
have access to a command line that you can issue run commands from?


Hinkmond



---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


jslee06

Posts: 10
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 27, 2008 8:32 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Hinkmond,

Would the Palm OS Debugger serve the same purpose?

http://www.accessdevnet.com/docs/dev_suite/PalmOSDebugger/DbgToolTOC.html

Thanks

- Jay

Hinkmond Wong
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 30, 2008 5:46 PM   in response to: jslee06
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> Hinkmond,
>
> Would the Palm OS Debugger serve the same purpose?
>
> http://www.accessdevnet.com/docs/dev_suite/PalmOSDebugger/DbgToolTOC.html
>

Hi Jay,

It looks like overkill to me. All you want to do is to get some type of
command line where you can enter this single line command:

cvm -cp . HelloWorld



In the HelloWorld.java app, all you want is this:

public static void main(String args[]) {
java.lang.System.println("Hello World.");
}



So, we're just going after a basic headless Java VM test at this point.
I think we still need to get past the POSIX compilation build error,
though. If we can't build a binary, we can't try running the HelloWorld.


Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


jslee06

Posts: 10
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 27, 2008 10:32 AM   in response to: ebresie
  Click to reply to this thread Reply

How to Port phoneME Advanced Software to Google Android, iPhone, OpenMoko, LiMO, and More

http://developers.sun.com/learning/javaoneonline/2008/pdf/TS-6304.pdf

jslee06

Posts: 10
Re: Garnet OS / Palm OS 5.x porting
Posted: Jun 29, 2008 4:40 AM   in response to: jslee06
  Click to reply to this thread Reply

They added the slides and audio to the Hinkmond porting presentation.

http://developers.sun.com/learning/javaoneonline/j1sessn.jsp?sessn=TS-6304&yr=2008&track=javame

d_bleyl

Posts: 9
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 29, 2008 12:42 AM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

I'm using Ubuntu Hardy Heron and my device is a TX, here's where I'm at:
- updated my phoneme-advanced working copy and rebuilt
- installed pilrc and pose from synaptic
- installed arm-prc-tools, m68k-prc-tools and prc-tools-utils from Gutsy Gibbon debs
- installed headers from pdn sdk (probably unnecessary)
- installed sdk-5r3 from Access (sdk-5r4 caused lots of exceptions for 'hello world')
- tested palm tool chain with helloworld:
dbleyl@test-desktop:~/projects/palm_tx$ m68k-palmos-gcc -palmos5r3 -O2 -g hello.c -o hello
dbleyl@test-desktop:~/projects/palm_tx$ m68k-palmos-obj-res hello
dbleyl@test-desktop:~/projects/palm_tx$ build-prc hello.prc "Hello, World" WRLD *.hello.grc
- copied to sd card using inland card reader to PALM/Launcher directory
- verified 'helloworld' works on device.

Next steps:
- review Hinkmond's J1 slides and latest zip upload
- figure out the state of Palm threads, io and networking
- make some sense out of the m68k vs. arm stuff

Suggestions?

fcassia_at_gmail

Posts: 8
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 29, 2008 10:39 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

Hi!

I'd like to join this project, but as tester. I have a Palm Centro. I can also provide ideas along the road. I'm afraid I can't do much C/C++ code tinkering.

For instance, I have a couple ideas:

1. how about using virtualization (Sun's Virtualbox, which is open source) to create a "basic build environment" as an Ubuntu Virtualbox image with all the development environment, paths, environment variables, and source code unpacked, ready to go?

One of the lead developers (whoever is most advanced) would just have to install virtualbox from www.virtualbox.org, create an Ubuntu virtual machine, copy his gcc development environment, and once he gets a working environment, pack the VM disk image, zip it up and upload to this java.net project, providing log-in and password for the VM.

So, in case everyone wants to join in, he'd just have to download the virtualbox VM, log-in, and he'd be ready to go.

Just an idea... and I'm no genius I'm just suggesting you guys copy the approach used by Neuros Technology for its OSD Linux device development. :-)

2. In case you guys stumble upon some low-level issues with PalmOS hardware, I think the guys in charge of this project are the ones to contact... as they built a linux kernel loader for PalmOS devices and they're I'm sure aware of the different hardware out there
http://garux.sourceforge.net/

3. When you guys finally get to GUI/Graphics stuff, I think it's a good idea to have a look at existing ports of unix apps to Palm OS. Here's the source for the VNC client for PalmOS, for instance... I'm sure there's some ideas in there about framebuffer optimization on Palm devices and the like. http://www.btinternet.com/~harakan/PalmVNC/palmvnc_140_source.zip
^download or copy this while you can... ISP web pages can disappear any minute. And as someone else said, re-using something like SDL would certainly help as well.

4, It would be great if the Java port would use OS routines whenever possible to save on size, (I know, I'm getting too far, but still). For instance AppNetLib for http requests See here http://kb.palmsource.com/cgi-bin/palmsource.cfg/php/enduser/std_adp.php?p_sid=JCxKzs-h&p_lva=&p_faqid=1006&p_created=1114113180&p_sp=cF9zcmNoPTEmcF9ncmlkc29ydD0mcF9yb3dfY250PTEmcF9zZWFyY2hfdGV4dD1hcHBuZXRsaWImcF9zZWFyY2hfdHlwZT0zJnBfcHJvZF9sdmwxPX5hbnl_JnBfY2F0X2x2bDE9fmFueX4mcF9zb3J0X2J5PWRmbHQmcF9wYWdlPTE*&p_li=

5. From a promotional point of view, and to attract the highest number of skilled PalmOS developers, I think someone from Sun should post the "request for help" at the GarnetOS forum section on Access' development site (just copy and paste the original). The URL is this http://www.accessdevnet.com/index.php/Forums/Garnet-Programming/

Hope this helps. As you can see while I might suck at elaborate coding I'm always thinking about ways to help good projects. Would that make me the official brainstormer? <GRIN>

Best,
Fernando
Buenos Aires, Argentina

fcassia_at_gmail

Posts: 8
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 29, 2008 11:04 PM   in response to: fcassia_at_gmail
  Click to reply to this thread Reply

Just replying to myself... having the PalmOS API Guide
https://pdnet.palm.com/regac/pdn/PalmOSAPIGuide/index.html
downloaded into the VM would be of help (wget -m -np -k -c {url} )

I wonder if the same is available as a PDF...

Anyway, this article is also a must-read, I think...

Tutorial for native ARM PalmOS applications using PRC-Tools
http://www.tapper-ware.net/2007/01/tutorial-for-native-arm-palmos.html

I've found the following tidbit interesting:
---------------------------------------------------------------------------------------------------
PARM

Now we have to overcome the final (and most difficult) shortcoming of arm-palmos-gcc: It's inability to communicate with PalmOS. PARM does some magic to do this... it's rather complicated and you actually don't need to understand it, so there's no point trying to explain it. Installation is very simple, just download http://www.tapper-ware.net/files/PARM.zip and extract it to your PalmDev directory.
---------------------------------------------------------------------------------------------------

Hope this helps.

FC

ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 30, 2008 11:11 AM   in response to: fcassia_at_gmail
  Click to reply to this thread Reply

I'm still new at this myself, but you might checkout:

Access's Palm Development Documentation http://www.accessdevnet.com/docs/

Which has a number of useful HTML or PDF versions of some of the Palm documentation. I think some good getting start docs are the:

- Palm OS Companion (Vol 1 and 2)
- Palm OS Reference

d_bleyl

Posts: 9
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS 5.x
Posted: Jun 30, 2008 2:54 PM   in response to: fcassia_at_gmail
  Click to reply to this thread Reply

The tapper-ware.net link is an awesome find! I hadn't heard about PEAL or PARM.

Here's a link to the Pila assembler tools:

http://www.schaeckermann.net/pila-user-manual.html

I'm not sure how much assembler is required for this project, hopefully little to none, but just in case.

Thanks!

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
5.x

Posted: Jun 30, 2008 5:07 PM   in response to: d_bleyl
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> The tapper-ware.net link is an awesome find! I hadn't heard about PEAL or PARM.
>
> Here's a link to the Pila assembler tools:
>
> http://www.schaeckermann.net/pila-user-manual.html
>
> I'm not sure how much assembler is required for this project, hopefully little to none, but just in case.
>

Thanks for all the good links. Remember, before jumping to thinking
about virtualization, graphics, or asking for PalmOS specific help, all
we want to do is build a simple headless Java VM that can do a simple
System.out.println("Hello World") in Java. That's it. It's difficult
enough in itself.

If you guys loose focus on that, you'll loose site of where we are right
now.

Eric, did you get a clean build yet? Did you find a *.h file location
for POSIX threads?


Hinkmond

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net


max_mu

Posts: 28
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
Posted: Jun 30, 2008 11:11 PM   in response to: Hinkmond Wong
  Click to reply to this thread Reply

I haven't found any POSIX Thread porting on palmos so far, but Pthreads-w32 might be a alternative starting point. It's not hard to port, I had ported this to various platforms, such as OS20 and PSP.

http://sourceware.org/pthreads-win32/

Just 2 cents,
M@x

ebresie

Posts: 136
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
Posted: Jul 1, 2008 12:58 PM   in response to: max_mu
  Click to reply to this thread Reply

Not sure if this will be of any use, but found more info on the wxWidget port for Palm:

http://wiki.wxwidgets.org/Development:_wxPalm

And an interesting article on porting DLLs to Palm OS (slightly dated, but might be worth looking at):

http://www.ibm.com/developerworks/library/wi-palmdll/index.html?S_TACT=105AGX52&S_CMP=cn-a-l

jslee06

Posts: 10
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm OS
Posted: Jul 1, 2008 8:33 PM   in response to: max_mu
  Click to reply to this thread Reply

I found pthread.h in /usr/include which identifies itself as GNU C Library (glibc). I also found it in my crosstool builds /opt/crosstool/gcc-3.4.5-glibc-2.3.6/arm-xscale-linux-gnu/arm-xscale-linux-gnu/include/pthread.h

I was able to build linux-arm-generic with my crosstool derived arm-xscale compiler. I'm guessing I need to recompile the GNU C library for palmos-arm to go in /opt/palmos-arm/include and /opt/palmos-arm/lib...?

I think the unix/linux builds are misleading though. Garnet is only multithreaded for system programs and not applications so it doesn't look like genuine POSIX threads like in Linux is possible if the cvm has to be installed as an application. Judging by the behavior of the Websphere and Superwaba, it would have to run as an application and then sublaunch the midlets.

Can we map out Foundation Profile, version 1.1.2 to each java source file we need to go through and interface with whatever palmos functions then check them off as they are complete? Or can we cut requirements from the mk files so that the uncompliant Foundation Profile will only need the minimum necessary to run Hello World?

Foundation Profile, version 1.1.2

http://java.sun.com/javame/reference/apis/jsr219/

I haven't spend much time reading the CDC Porting Guide so my questions may seem redundant.

- Jay

Hinkmond Wong
Re: Volunteer needed to port phoneME Advanced to Garnet OS / Palm
OS

Posted: Jul 1, 2008 10:42 PM   in response to: jslee06
  Click to reply to this thread Reply

phonemeadvanced@mobileandembedded.org wrote:
> I found pthread.h in /usr/include which identifies itself as GNU C Library (glibc). I also found it in my crosstool builds /opt/crosstool/gcc-3.4.5-glibc-2.3.6/arm-xscale-linux-gnu/arm-xscale-linux-gnu/include/pthread.h
>
> I was able to build linux-arm-generic with my crosstool derived arm-xscale compiler. I'm guessing I need to recompile the GNU C library for palmos-arm to go in /opt/palmos-arm/include and /opt/palmos-arm/lib...?
>
> I think the unix/linux builds are misleading though. Garnet is only multithreaded for system programs and not applications so it doesn't look like genuine POSIX threads like in Linux is possible if the cvm has to be installed as an application. Judging by the behavior of the Websphere and Superwaba, it would have to run as an application and then sublaunch the midlets.
>
> Can we map out Foundation Profile, version 1.1.2 to each java source file we need to go through and interface with whatever palmos functions then check them off as they are complete? Or can we cut requirements from the mk files so that the uncompliant Foundation Profile will only need the minimum necessary to run Hello World?
>
> Foundation Profile, version 1.1.2
>
> http://java.sun.com/javame/reference/apis/jsr219/
>
> I haven't spend much time reading the CDC Porting Guide so my questions may seem redundant.
>

Hi Jay,

This is good info you found about crosstool. It doesn't look that great
that Garnet is not genuine POSIX threads, though. The problem with
dropping things out of the Makefiles is that it probably won't build if
you do that (too many interdependencies).

Do you know if you recompile the GNU C library for palmos-arm if