After compiling I get an error:
"list index out of bounds (47)"
Jar-file then can not run, KEmulator error:
"Fail to launch the MIDlet class: FW"
In the mobile phone does not work either.
What should I do?
И когда я попытался подключить к своему проекту Lib_JSR75i, происходит аварийное завершение компилятора. Но этот проект компилируется хорошо:
And when I tried to connect to your project Lib_JSR75i, crashes the compiler. But the project compiles fine:
Extract the jar-files:
Should look like the contents of the normal jar-file - http://depositfiles.com/files/sta7ufn1q
And so it looks like after compiling - http://depositfiles.com/files/x77v3oxn1
Apparently one sector of your code (or file in project) is causing compiler (more specifically, packager) to fail.
Unfortunately, provided information is not sufficient to tell exact reason of this error coming up.
From what can be seen in provided .jar files, classes are built correctly, but are packed into jar in a rather odd way.
After moving all classes into .jar root, and resources into res folder manually (as you may know, .jar is just a renamed .zip archive), your program seems to be working: http://solidfiles.com/d/61f9f/
What you can do to fix this error, is compare the current (non-working) version to the last (working) backup.
Apply changes to each file and recompile till you'll find the file that causes this error.
Then go 'lower scale' (procedures and functions) to find code that causes error and either rewrite it or fix it (optionally, also post it here so it could be fixed if it is 'valid').
Have a nice day.
there is one more crash when I try to use function log10, for example log10 (10)=-0.7…. (in a MidLet pascal), but in calculator log (10)=1 (it's not a natural logarithm). Please repair this problem.
Sorry but that's not a bug. As you can read in the documentation under the topic "The MIDletPascal Dialect \ Data types \ Real type":
"The mobile devices do not have hardware support for real numbers, so MIDletPascal uses software emulation instead. In the Fixed-point mode the precision is lower, so expect aproximated values. For more precision enable the Floating-point mode."
Also there is some more information in this two threads http://sourceforge.net/projects/midletpascal/forums/forum/1013750/topic/3651962?message=8249940 and http://sourceforge.net/projects/midletpascal/forums/forum/1013750/topic/3799651?message=8577555 where I wrote also about this. But may be the more realizing stuff is just reading the implementation of the compiler (specially in stdpas.c) relying in the stubs F.java and Real.java (you can find all of them in the SVN repository). Also, and besides it's an old topic you can find already many articles, posts, and stuff about this on a Google search, try for example "floating point J2ME".
Finally, for enabling the Floating-point mode in your project, go to the Project Manager, and under Configurations select the one which you are using (may be "default"), and after that just toggle the value at the Real Numbers field.
Thanks for you report anyway.
The result is -376158.
stevfun: I don't understand your post. Did you read the previous reply I made in this same thread? You must enable the Floating-point real numbers in your current configuration (under Project Manager \ Configurations) if you want Floating-point precision.
Log in to post a comment.