FAQ - Palmphi


General

What is the latest version of Palmphi and where can I get it ?

You can get the latest version by clicking to the link "Product URL" in the About box in Palmphi. At this page you can see under the logo the current version.

Can I be notified when new versions of Palmphi are available ?
Not for every single version, as currently there are around five new versions every week. Though you can suscribe the mailing list of yahoo and select "mail me only for special notices", every time I consider having made a big step in the development I will post a special notice to yahoo.

Is there a mailing list for Palmphi?
Better yet! there is a Yahoo Group. Use it as mailing list to post your questions and share code and experiences.

How much costs Palmphi ?
Nothing. It is freeware. You shouldn't make money with it without sharing a part with me though, but this is up to you.

Where comes this strange name from?
Well you probably guessed where the part "Palm" comes from. The second part "phi" comes from my favorite language "Delphi" which I consider the best one for small applications like this and which inspired me to do something similar for the Palm.

Where can I get help ?
To get started with Palmphi use the tutorials. To know more about what you can do with each object use the Class browser. You can take a look at the samples too. Finally, if you have a question post it to the yahoo group or send me a mail.

Will Palmphi ever support xxxxx?
I don't know. I am a complete beginner with PalmOS development. If you want Palmphi to do something you will have to teach me first how it works with C + Palm SDK.
Is Palmphi compatible with OS x.x ?
I own a Palm m100 and I can say for sure that Palmphi works fine with it. For other OS I didn't try. I have tested many applications with the simulator provided by Palm and have improved many compatibility issues. So unless you do something special it should work everything. Feedback at this issue is, of course, welcome.
I can't see any colors with programs created with Palmphi !
If you want colors, you will have to dive into the Palm API as I don't have color and I don't know how to use it. If you learn how it works, I would appreciate if you tell me how I can implement it in Palmphi for other users.

I am interested in the source code, can you send it to me ?
Yes, download it from the Files section of the Yahoo group. If you change anything and want other people to use your change you may consider sending your modifications back to me.

What are your future plans for Palmphi?
I have stopped inplementing more functionality, now I am trying to make it as stable and bug-free as possible. Every feedback is welcome.
After I have something stable I will probably inprove the parser, add new classes or automatize frequently used tasks (like allowing to link components that work together)
Could you please implement this cool feature?
Sure!, send it to me. I can't promise you anything, but I will surely take it into account.
Programming language

Is this C or C++?
This is C. Sometimes it looks like C++. Specially when you use a method for one of the visual objects. But these is just like a #define, before the program is compiled every object and method is substituted to plain C.

Why not use C++ ?
C++ is very nice, but it uses the memory too generously for a Palm Device. Also there is no easy way to create properties and I wanted to have writable properties for every object, so I can write Edit1.Enabled=0;

Can I create a class with Palmphi ?
Not yet. You can add the class to the file parser.c . The format shouldn't be difficult to understand. But you can have member functions and member properties but no member variables. In the future this might change.

How is the program compiled ?
- A header file is created with the resources of the program
- A C file is created containing :
- This C file is parsed completely and "translated" to plain C
- A makefile is created
- A new cygwin.bat is created, which mountes your project directory accessible to cygwin.
- A script file is created to run makefile on your project.
- Output data of the compiler is processed and showed to you
- Temporary files are deleted.
Isn't this process a bit slow ?
Probably, but who cares? Computers now are fast enough to process this, I use an Athlon 900 Mhz and compiling the second time (after everything is in the cache) won't take over 2 secs.

Where is the resulting .prc?
The resulting prc file is in your project directory. You can synchronize normally to your palm or use an emulator.

Is there an emulator ?
If you are a serious developer you will probably want to use a palm emulator. There is one at the Palm site working very well. You can just drag and drop the prc files to the emulator and you can see in seconds if your program does what you want or only what you told it to do. I don't distribute any emulator nor roms, so don't bother asking me.

This version of cygwin/prctools/palmsdk you have is very old !
I found this version to work perfectly for what I need. You don't have to use it necessarily, every version new or old of each product should work as well.

Why is not the API function XXXXX in Palmphi ?
Every API function is in Palmphi, as Palmphi is just a front-end to the API. So if you have, let's say, a TEdit and you want to use the function FldScrollField just use it ! TEdit is an alias for FieldPtr so you can write FldScrollField(Edit1,2,up);

Other questions

I get a message, that my version is old and have to update, what is this?
For each new version there is about one month buffer for use time. After this month you are prompted to update. You still can use the program normally, but each time you start it you will get the prompt. I will make this buffer bigger and bigger as the version becomes more stable.
The project directory is full of files, what do they mean?
Your source code is stored in the .c files. The resource information (Forms, Objects, etc) are stored in the .pprj file. The rest are temporary files created by the compiler and parser. In particular you may want to take a look to the .c file which has the same name as the project, this file contains the plain C code ready to be compiled.

My question is not here. What now?
Send me a mail. I normally answer in less than one day.