PDA

View Full Version : App issues on Kyocera 3035


carlos
07-03-2002, 01:59 PM
Hello,
I have just started developing apps for BREW.
I am trying to test an app that I wrote on a Kyocera 3035.

I have tested the application and gotten it to work successfully on the sdk version 1.1.18
The app compiled successfully using the ARM developer suite 1.0.1.

The app was loaded using the apploader application and selecting the Module->new command in the toolbar.
The directory that was selected is called "superpages". It contains the following files:
superpages.bar
superpages.mif
superpages.mod
superpages.sig

The app name used to generate the sig file was "superpages"
The app name in the mif file is "superpages"

1. App is started
2. App displays this error:
superpages
Unknown Error (524289)
3. The app is closed using the end/power button
4. App is started again.
5. App displays this error:
superpages
Unknown Error (786433)
6. The app is closed using the end/power button
7. App displays this error:
uigm.c
1063
8. Phone is now frozen and will not respond to any button commands


I have double checked the ESN number that is entered to create the .sig file and have made sure the spelling of the app name is identical in both the .mif file and when the .sig file is generated.

Does anyone have any insight into this problem?
Any feedback would be much appreciated.

take care,
c

Murray Bonner
07-04-2002, 10:42 AM
Hi:

Your MIF file has to be in the phone's top level (root) directory.

Have fun!
MB

carlos
07-05-2002, 10:28 AM
The mif file is in the top level root directory.
When using the apploader softeware to upload modules to the phone, apploader takes care of placing the mif file and the other files in the correct locations.
thank for the help though Murray,
c

Murray Bonner
07-05-2002, 10:58 AM
Your original post says that the .mif is in the superpages directory, along with the .bar, .mod, and .sig files.

Since the .mif is actually in the root directory, I can't see anything else in your post that would cause a problem. Since you've run it successfully on the emulator, there shouldn't be any null-pointer dereferences, MALLOC()'s without a corresponding FREE(), or a BREW interface that isn't being released.

The only thing I can think of is to ask if you sent the phone to Qualcomm to have it BREW test-enabled?

Sorry I can't be of more help.

Good luck with your problem.
MB

carlos
07-05-2002, 11:14 AM
Thanks Murray....
I will keep hacking at it...the phone was already sent in to be flashed to that apps could be loaded onto it.
-c

Murray Bonner
07-05-2002, 11:20 AM
Of course, right after I hit post, I thought of a couple of other possibilities:

1.) floating point arithmetic

The following code works fine on the emulator but will cause the phone to crash since the ARM7TDMI is an integer only processor:

double a = 2.0, b = 3.0;
return a+b;

On the phone, you need to ensure that the floating point helper functions are used for all fp arithmetic.

A sneakier way this can arise is through a simple cast:

double a = 99.99;
int int_part = (int) a; // OK on emulator, kills phone.

also:

#include ...
// declaration
int doSomething(double a);

//...somewhere in code...
int a = 99, b;
b = doSomething(a); // implicit cast ==> bye, bye phone!

It's easy to forget this stuff when you're pounding away, writing a few hundred lines of code at a sitting. So if you're doing anything with floats, take a close look.

2.) Memory (heap) allocations are less likely to fail on the emulator than on the phone. Is it possible you've got a NULL pointer on the phone where none appeared on the emulator?

In general, the best way I've found to track down problems on the phone is to write trace messages to a file from different places in your code until you can isolate the line that is killing the phone.

If I think of anything else I've encountered, I'll post it later.

Regards,
MB

Yao Ningbo
07-07-2002, 08:23 PM
You can find the version of the phone which you tested apps on from Brew extranet.
I can sure V1.1 applications will not run on V1.0.

The simple way is to compile your application on V1.0 or V1.1 using ARM Compiler, then download on phone with same version.

Please try!

carlos
07-08-2002, 01:52 PM
Yao,
I flipped over to using the BREW SDK 1.0 and got better results
still don't know what the error codes mean but at least I am able to run an app now.....
Thanks to all who chipped in with comments and help
-c