Python on WM5? - Windows Mobile Development and Hacking General

I'm working with a team considering this - any thoughts? Any pointers to previous discussions are welcome, but I didn't see any. Also, even if advice is don't do it, any ideas or suggestions for optimization would be great. HW is Apache. Thanks in advance, Jeff

umm hate to point out the obvious but its been done, there is a port of python IDLE available already
as seen here
http://sourceforge.net/projects/pythonce

Sorry - should have been more clear - we're looking at developing Python apps on top of that port. I'm curious as to whether people have any suggestions on how to improve performance of Python apps running on Windows Mobile.

You should as those sort of questions on the PythonCE Mailing List:
http://mail.python.org/mailman/listinfo/pythonce

Python is just a bitza of C and other languages such as ruby etc.
what would you want to do with it on windows mobile that you can do in those anyway?
im currently developing an online game (as part of a larger project and for windows/ linux/ mac) and it is quite usefull, but to establish it on a new platform would require a bit of ground work. i have been able to run some scripts ive written for the desktop on the CE version but it is limited to what it can do.

Related

Which Development tools for WM 6

Hi all you experienced WM programmers.
I'm new to windows mobile, but program other environments for a living(micro controllers, embedded linux, win32 etc)
I was wondering what the development tool of choice is for WM ?
I know that on Win32 .net development sucks blocks...yes I develop extreme low latency process control stuff and the abstraction from hardware in .net makes it unusable for such programming as you totally lose control over memory allocation etc.
Being as the WM is such a limited devices I presume the same issues are found there as well. So what are you guys using to develop? strictly embedded c/c++ or is there something else out there that is useful?
Thanks in advance for any suggestions
You defiantly want embedded!
You can use the free eVC or the expansive VS 2005, but if you want quick native code programs or to write system components like today plugins and keyboards this is the only way to go.
If you think .NET is bad on a PC just wait till you see it in WM. Because of the limited resources of these devices its a sluggish nightmare!
levenum said:
You defiantly want embedded!
Click to expand...
Click to collapse
http://www.d-e-f-i-n-i-t-e-l-y.com/
Other Developer environments.
Have you considered the PPL programing environment.
Provided is an IDE environment both for the PC and PPC. This means that applications can be developed and run on both platforms. Not sure about latency, however you can create .exe files from you're code and interface to external DDL's.
There web site is http://www.arianesoft.ca/page.php?1 and a trail version can be downloaded. The trail gives basic functionality with a 15 day full function registration option.
The Developer is quite open to questions and the forums are also quite active.
Not sure how deep you wish to access the OS/HW however it may be worth considering.
Cheers.
burkay said:
http://www.d-e-f-i-n-i-t-e-l-y.com/
Click to expand...
Click to collapse
Yea, that one slipped by me even with the spell checker.
Excuses:
1) I was tired.
2) English is not my native language.
I'll just leave it there because its pretty funny. And hey, using native code instead of .NET is in defiance of Bill's wishes!

Ideas for Google Android Challenge

Hello all,
This post is in regard to the Google Android Challenge put out by Google to create/develop new software for the Google Android shell. If you haven't had a chance to read about it, it's basically a new OS created by Google to run on any type of PDAesque cellular phone. The challenge issued is then to develop new software for this OS (written in Java) so that when it is released it will have software available for it.
My question to all of you is what software would you like to see developed for this new OS? The reason I am asking for ideas is because I am a CS undergraduate student working in a research group to create one of these programs. Ergo, I figured asking you guys what you'd like to see created would be the best way to get ideas that will make sense and benefit the community.
Any ideas you submit here may be used in the creation of new software--if you require idea copyrights that can be worked out.
Thank you all in advance,
Jake
Jake Lake
Undergraduate Student at LCSC Lewiston, ID
Hello Jake,
We'll I'm a Java programmer too, not thinking of entering the challenge though. Had a quick look at the SDK for Android and it does'nt seem like pure java, more like a hybrid of C and Java does'nt it?
Since I have'nt had a thorough look at it, I'd like to ask you a few questions regarding the freedom to program on the platform.
Since it does'nt use the "normal" JVM but googles Davlik where theres no byte code but script code, does it allow better interaction with the hardware, and is it faster? Also can you implement equallizers and other effects in a media based application, which of course was not possible on J2ME. I was thinking on a All-round mediaplayer for Android, something like Rockbox which maybe found at www.rockbox.org which is a linux based program used on iPods etc.. but has been ported to Linux based EZX phones.
Regards,
Akshay

WM6 compiler

I'm looking at developing a biomonitoring application, the setup to consist of a 24 bit ADC with an Atmel AVR microcontroller sending data via Bluetooth to the mobile phone for display. I don't have a large budget so am looking for freeware or something a lot cheaper than Visual Studio to develop the application to run under WM5/6. It has to be compiled due to the amount of processing needed.
I prefer to write in C/C++ . Pascal would be a 2nd choice then anything else except Basic.
For Windows development I use Borland C++ Builder and have used Delphi. On the embedded side I use Codevision AVR C compiler.
I'd appreciate recommendations for development software. TIA.
I got this C compiler to work a while ago (managed to recompile a few of my desktop PC SDL projects to ppc):
http://sourceforge.net/projects/wince-xcompile
[EDIT]
Sorry, ceGCC is what i was using, not xcompile:
http://cegcc.sourceforge.net/
[/EDIT]
It's free, but it's for linux (if you don't have linux, that might be a good reason to give it a try ). Also, the problem is that it doesn't have an IDE of its own, and no graphical interface editor.
There's also pgcc, allowing you to compile applications directly on your pocketPC, but i wasn't able to make it compile any GUI application, only console ones (but i didn't really spend much time trying). There's a working link and a short info on how to use it here:
http://www.aximsite.com/boards/business-development/135816-pocket-c.html#post1187340 (sorry for linking to other forum, but i didn't want to post someone's tutorial as mine).
Anyway, i'd love to hear about any other free alternatives as well
you could try embedded visual c++.
it is free but you can not debug on devices powered wm5 or higher. you will need the ppc 2003 sdk and win xp prof or 2000.

Programming CE, Book and resource recommendations

Hello,
After a decade of not doing C, I find that alot of things have changed when programming c++ native for CE. Even things like:
string somestring;
no longer function. Wow!.
strcpy has been replaced with StringCchCopy. Wow, MS has done a number here... and so on...
Anyhow I searched xda and found allot of good threads. But what if I'm looking at re-learning C++, with a focus on CE programming only? What books and other resources would you recommend, its almost like starting from scratch. I got vs2005 + emu + been reading allot of MSDN, did some basic apps. etc.
BTW: How the .... do you declare a variable length string???
and in VS2005 is running the debugger the only way to get the app to start automatically ???
Thanks
*bump*, anyone?
Couple of notes:
1) I strongly recommend avoiding VS, it is unbearably slow and balky.
2) strcpy and all the other functions are still supported by c runtime on CE (VS 2005 complains about them but you can ignore it). The problem is all windows API on CE use UNICODE so you have to declare strings as WCHAR (thats MS speak for unsigned short) and use wcscpy, and such.
3) The only book I know on CE specifically is this and I only read the two sample chapters online, so can't really recommend it. (Though the sample chapters were very useful). What you need is to get a good book on Win32 programming that will get you well on your way.
4) There is an MFC class CString which wraps up all string related functions very nicely. If you are not using MFC but clean C/C++ the only thing I can think of is malloc and free or the C++ versions new and delete.
Check out the links in my sig if you want to see code examples of small but functioning apps.
I disagree with levenum's comment on VS, but agree at the same time (weird I know). I wouldn't use VS for native development because it has A LOT of extra features that I think would be useless for native developers. Also, the lighter eVC++ has pretty much everything you need to write native apps.
I had this book called "Programming Windows CE 3.0" or something along those lines a few years ago. I got it for like $3 on Amazon. If you can find an updated version of that (or even the old version would be useful) then you should buy it. It will show you all you need to know to get started. You can learn the new api's from browsing msdn.
If you're only a little rusty with C/C++ I would suggest jumping right in to the Sdk samples and seeing how they do things.
Thanks, the reason why I wanted to use VS is so that maybe later I wouldn't mind going into MFC. So having one platform would be nice.
So far I have done some basic things, like drawing, etc, but I find I'm having a harder time making strings and including the api's to work. Almost all of the msdn examples fail to compile properly.
I have an old book MFC for Windows 95 by MS, is it even worth looking at ?
robp said:
I disagree with levenum's comment on VS, but agree at the same time (weird I know). I wouldn't use VS for native development because it has A LOT of extra features that I think would be useless for native developers. Also, the lighter eVC++ has pretty much everything you need to write native apps.
I had this book called "Programming Windows CE 3.0" or something along those lines a few years ago. I got it for like $3 on Amazon. If you can find an updated version of that (or even the old version would be useful) then you should buy it. It will show you all you need to know to get started. You can learn the new api's from browsing msdn.
If you're only a little rusty with C/C++ I would suggest jumping right in to the Sdk samples and seeing how they do things.
Click to expand...
Click to collapse
could you provide some links for msdn. also i know how to program in c but how do i compile a program for windows ce could you recommend a free one. thanks
The only way to code for Windows Mobile for free is to use embedded Visual C++. You'll have to google it to find a link.
Once you have that downloaded, check out:
http://msdn2.microsoft.com/en-us/library/bb158662.aspx
The new solution files most probably won't open in eVC++ but you can create new projects and add the source files yourself.
You'll want to look at the samples in the Win32 folder.
robp said:
The only way to code for Windows Mobile for free is to use embedded Visual C++.
Click to expand...
Click to collapse
That's not entirely true - there's still ceGCC (it works on linux or windows using cygwin) - however this one lacks resource (window, forms, etc) editor (but if you have resources already created it will compile/link properly). But it works great with apps where you want to handle all the graphics and user interaction by yourself (like games, or programs with 100% custom UI), for example using SDL, pocketHAL, etc.
Also, wxWidgets seems to have support for windowsCE, and might be made to work with ceGCC, but i haven't tested it yet.
Sorry, I actually meant to put "(I think)" after that sentence lol.
Actually I think you should be able to use any C++ compiler as long as you have the necessary libraries, and I think all the libs you need are in the sdk download. But the easiest route for beginners in native coding is probably eVC++
Well, now i can agree with you
That is, unless you want to create games - in that case ceGCC+XFlib might be a good way to go for someone with general programming knowledge, but not familiar with winCE-specific coding. Some games coded with it (and their sources) can be found on XFlib homepage: www.xflib.net.
thanks for the info
Ok, as I wouldn't mind at a later time going into MFC, and building dll's for mobile. How much "harder" would it be for me to learn VS2005 native for ce instead of using evc++ ?
Just trying to weight the cons and the pros. BTW where can I get eVC ?
Thank you.
Two more free options: PellesC and Lazarus + WinCE add-on
I don't think it would much harder. Once you get the hang of it you'll find that it makes life much easier. If you buy a boxed retail version it comes with a nice book that will take you from n00b to master in a few hours (not really but it's still a great reference).
I think the hardest part of upgrading to newer versions of VS is learning the new project file setup. Atleast that's what it looks like from watching other students at my school go from VS6.0 to VS2k5 and 2k8.
Also, I should note that I prefer VS2008 hands-down, but I don't disagree with other people who say eVC++ is faster. While I haven't done any real native development since eVC++ 4 was new, I still dabble a bit (especially since getting active on this forum) and VS2005 works great to me.
So, my advice would be to use the newest tools available to you, unless money is an issue. But don't be worried about upgrading. Your life will only get easier once you do.
robp said:
Also, I should note that I prefer VS2008 hands-down, but I don't disagree with other people who say eVC++ is faster. While I haven't done any real native development since eVC++ 4 was new, I still dabble a bit (especially since getting active on this forum) and VS2005 works great to me.
So, my advice would be to use the newest tools available to you, unless money is an issue. But don't be worried about upgrading. Your life will only get easier once you do.
Click to expand...
Click to collapse
Well I just got eVC and will give it a try too. But I am pretty much used to vs2005. I do not think I can't afford the vs2008 right now. How much difference is there between 2005 and 2008 when it comes to programming for WM?
I'm looking to create some commercial applications for WM. For the last 10 years I'v been doing .com apps, now I figured I would do some for the mobile platform. We have all the graphics/design/marketing guys for .com, so it should work out just fine for WM.
One thing we noticed when working with exec type people is their frustration, I see exactly how we can help them resolve their frustration with WM, Symb, and java type phones...
Thanks
marek101 said:
Well I just got eVC and will give it a try too. But I am pretty much used to vs2005. I do not think I can't afford the vs2008 right now. How much difference is there between 2005 and 2008 when it comes to programming for WM?
I'm looking to create some commercial applications for WM. For the last 10 years I'v been doing .com apps, now I figured I would do some for the mobile platform. We have all the graphics/design/marketing guys for .com, so it should work out just fine for WM.
One thing we noticed when working with exec type people is their frustration, I see exactly how we can help them resolve their frustration with WM, Symb, and java type phones...
Thanks
Click to expand...
Click to collapse
Honestly I wouldn't rush to upgrade. VS2008 is better, but doesn't add much to the WM development arena.
And if you already have VS2005 and are used to it, I would stick with that and forget about eVC++. You should give the compact framework a try. I promise you'll love it
compact framework, that's a part of the .NET isn't it?.
For the time being, for learning purposes, I think I will stick with the native for now. Once I get a grip, I will explore .net. The thing is I really don't like bulky apps for WM. Most of the apps I came across that required the .net framework were slow, any apps that use the .net with a today plug in seem to really slow down my phone.
BTW is HTC Home plug in written with the .net?
Thanks
marek, it seems to me that you are under the impression that you need VS 2005 to use MFC.
eVC fully supports MFC as well as creating DLLs and MFC DLLs.
It admit the reason I don't like VS is because I only write in native and don't like .NET languages a lot.
Since you want to create commercial apps you should note that any app created with WM 5 SKD will not be backwards compatible with WM 2003 which reduces your clients range.
You should compile with WM 2003 SDK which is forward compatible.
Our primary target audience would be WM6. We will make every effort to make WM5 compatible apps. Yes it does reduces significantly the client base, but also there are many positives...
We are still looking for more programmers for the simple concepts we have developed. I believe this will work out just fine. Having WM5 support is a "would be nice" but not required. WM5 has a bag of problems, 2003 I don't even want to touch it.
Thanks
I have to admit that I love VS because I love using .net
But VS is also a much more powerful editor in general than eVC is. It's still nice but the experience isn't as smooth as it is in newer versions, which is expected since the newer versions build on the previous ones.

Jython in Android?

Hey Folks,
I was wondering if anyone knew if it was possible to use Jython instead of plane Java for android development? I don't know much about Java development but I'm with Python. I was figuring that this might ease me into it better. Any thoughts?
Thanks,
-=GB=-
Have you had a look at the Android scripting environment?
http://code.google.com/p/android-scripting/
http://google-opensource.blogspot.com/2009/06/introducing-android-scripting.html
http://code.google.com/p/android-scripting/wiki/PythonAndroidAPI
Regards,
Akshay
Thanks aksd,
I don't know how I didn't find that before. Perhaps I should have just searched for Python and Android as opposed to just Jython and androind.
Anyway, this is very cool for prototyping and simple scripting. However, the main thing I was hoping for was writing apps in Python (via Jython) that could then be distributed on the Marketplace. It's kind of to bad. It doesn't look like anyone is really trying to port Jython to Android because ASE is sort of Google's official response to the whole thing. On the whole, a really great thing for people who just want to script Android but not really for App development.
In all of this searching I did find some interesting information about how to link in C libs so you could code some of the hardcore speed sucking elements in C (like a game engine) and then make calls into it via Java. I didn't know that was even possible so... Pretty cool stuff.
Hey ngrava,
I'm not much into scripts, so dont really follow whats happening with scripting and Android.
If you wanted a bit of a performance gain you can use the NDK and call the JNI to execute native libraries or code. been there for awhile but few use them. Java is just so much easier than C .
Theres a lot of interesting stuff going on on the Android platform, Mono being ported to Android, Scala being ported to Android, I'm actually currently working on profiling the performance of scala code on android.
Regards,
Akshay
On the Google DevFest on Argentina, Google´s ingeneers afirmed that they are working to make more languages availeable on Gingerbread, they specifically mentioned Ruby. We just have to wait to see if this is true and if we are going to be able to ship apps of other languages to the market, and I´m not sure if they will be backwards compatible with earlier versions of android as well.
PD: Oops, sorry for reviving this old post, I just realised i clicked last page instead of next

Categories

Resources