Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-pascal / 2009-06

Development for Symbian OS (S60 5th edition)

12 messages · 4 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Graeme Geldenhuys

Hi,

Does FPC support the above OS? I purchased a while back a Nokia 5800 phone and would like to try and write some fun utilities for it. It's just unfair that the iPhone users get all the cool apps. :-)

Regards,
- Graeme -

________________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

Reply by email

Florian Klaempfl
to Jonas Maebe
Show quoted text 7 lines
On 28 Jun 2009, at 11:59, Graeme Geldenhuys wrote: > Does FPC support the above OS? I don't think so. Some Symbian support was committed a long time ago, but I don't think it was ever finished.

Making a Symbian tool chain is unfortunatly a real pain.

Reply by email

Felipe Monteiro de Carvalho
to Jonas Maebe: I don't think so. Some Symbian support was committed a long time ago, but I don't think…

There is code enough to make some hello world applications for the UIQ 3 simulator, but nothing for real devices. Unfortunately several design flaws in the Symbian architecture make the work of creating a compiler for it much harder then necessary. The flaws include providing a x86 simulator with a different architecture and toolchain from the real device instead of an arm emulator like there is for PocketPC, which alone is a huge problem, plus a crazy toolchain which needs tons of Perl code and batch scripts to be used and to complete the mess each Symbian Toolkit is incompatible with the other ones (and themselves in different versions), and they are all written in C++, which adds to the difficulty in creating a native compiler for the target.

All of this made the work of porting the compiler for UIQ much harder then I initially imagined it would be (and then it should be too).

In fact their architecture is so flawed and changes so much between toolkits and versions that I think that trying to port Free Pascal to Java Bytecode (which runs on Symbian systems) would have been a better choice. At least it's a stable target with emulators and an easy to use toolchain with the Jasmin assembler.

Felipe Monteiro de Carvalho

Reply by email

Graeme Geldenhuys
to Felipe Monteiro de Carvalho
Felipe Monteiro de Carvalho wrote
In fact their architecture is so flawed and changes so much between toolkits and versions that I think that trying to port Free Pascal to

So basically I should have bought a iPhone instead! ;-) Or I must dust off my trusty Garmin iQue M5 PDA which runs Windows Mobile 2003. Unfortunately my PDA doesn't have an accelerometer, but at least it has a GPS. So that could still make for some fun apps.

Regards,
- Graeme -

________________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

Reply by email

Jonas Maebe
to Graeme Geldenhuys
Graeme Geldenhuys wrote
So basically I should have bought a iPhone instead! ;-)

Not really. The problem with the iPhone is that you cannot run any self-written applications on it (in an Apple-sanctioned way) without subscribing to Apple's $99/year developer program.

On the plus side, this:

The flaws include providing a x86 simulator with a different architecture and toolchain from the real device instead of an arm emulator like there is for PocketPC, which alone is a huge problem

is also true for the iPhone, but it's not a problem at all there, because the x86 simulator is basically Mac OS X/i386 with some extra frameworks (I didn't have to change anything at all to the i386 compiler for it to generate working applications for the iPhone simulator).

Jonas

Reply by email

Graeme Geldenhuys
to Jonas Maebe
Jonas Maebe wrote
Not really. The problem with the iPhone is that you cannot run any self-written applications on it (in an Apple-sanctioned way) without subscribing to Apple's $99/year developer program.

And it's such s**t I don't give a toss about. I paid for the device, I wrote the software, so why can't I run it on hardware I legally purchased. I seriously doubt that American law will hold up in all countries including South Africa. Also the reason I hope Apple looses the court case against Phystar - it's the same principal. Anyway, that's totally off topic and for another discussion.

As far as I understand, the iPhone runs a similar kernel (freebsd based) as Mac OS X is. So yes, I would imagine supporting the one would help the other. I was last year as a major security conference in South Africa and there they showed how easy it was to hack the iPhone - remotely enabling the video camera and record phone calls without the user knowing. Quite scary. Anyway, the point is, the hacker showed us how he does it and he simple ssh or telnet'd into the iPhone and he used basic unix commands from the command line interface on the iPhone. Pretty cool stuff. :-)

Regards,
- Graeme -

________________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

Reply by email

Felipe Monteiro de Carvalho
to Jonas Maebe: Not really. The problem with the iPhone is that you cannot run any self-written…
Jonas Maebe wrote
is also true for the iPhone, but it's not a problem at all there, because the x86 simulator is basically Mac OS X/i386 with some extra frameworks (I didn't have to change anything at all to the i386 compiler for it to generate working applications for the iPhone simulator).

I disagree, it may not be a problem from the compiler development point-of-view, but a simulator is much worse then an emulator which gives you a much closer reproduction of the working of the real device.

iPhone runs an arm processor, then you may have a perfectly working x86 application then bang, alignment failure in the arm processor. While with the PocketPC emulator this problems are captured right in the emulation step.

Felipe Monteiro de Carvalho

Reply by email

Jonas Maebe
to Felipe Monteiro de Carvalho
Felipe Monteiro de Carvalho wrote
iPhone runs an arm processor, then you may have a perfectly working x86 application then bang, alignment failure in the arm processor.

Actually, you can enable alignment exceptions on x86 as well (although I don't think the iPhone Simulator does that).

Jonas

Reply by email

Jonas Maebe
to Graeme Geldenhuys: And it's such s**t I don't give a toss about. I paid for the device, I wrote the…
Graeme Geldenhuys wrote
As far as I understand, the iPhone runs a similar kernel (freebsd based) as Mac OS X is.

It's a bit of an oversimplification to call Mac OS X' kernel "FreeBSD- based". See here for some background: http://books.google.com/books?id=K8vUkpOXhN4C&pg=PA48 (under "2.4 The xnu kernel"). But that's irrelevant, since FPC for Mac OS X does not use any direct kernel interface, due to the kernel interface not being supported for application development (in practice this means that the system call interface can change even between minor OS patches, if deemed useful for whatever reason).

On Mac OS X, we use libc, and that interface is indeed pretty much 100% compatible between the desktop and iPhone versions of Mac OS X.

Jonas

Reply by email