Important Question!! - MDA II, XDA II, 2060 General

I know that this has probably been asked before but I HAVE SEARCHED!!!
Which type of program do we install on the XDA2, by this I mean do we install the ARM programs or some other type, as there isnt a 'PXA' type??!!??
Rudi

arm or xscale they are compatible.
there really are only 2 types which you should NOT pick!
and thats
MIPS and SH3 or what ever it's called

Thanks for that, much appreciated, I have never seen an xscale type before so I will look out and/or use the ARM version.
Rudi

Related

Software Type

I'm looking to download some software onto my XDAII, but on the Tucows site there are different downloads:
SH3 / ARM / MIPS
Which one is right for my device & why?
ARM - don't know why.. I assume it's the type of cpu your phone uses.. I also assume that all moderm pda's use the ARM cpu..
if I 'm not wrong
ARM: Intel StrongArm CPUs for WM based OS
MIPS: for Palm OS based devices
SH3: for Windows CE devices
is it rather XScale 400MHz cpu XDA II is using and not ARM ?
my rough guess and information on various www sites confirm that .... it is DIFFERENT :wink: cpu as compared to XDA I
regards, monika
intel xcale cpu which the xda2 use is code compatible with arm which xda1 use
the sh3, arm, mips are bins
for the most common cpu platforms on pda
much like in the linux world where you can get bins for alpha, powerPC, i386,........
if you got a compiler you can make your own bins if you have access to the sourcecode
hmmm, but even on Tucows there is a section dedicated to ...
X-Scale processor so why bother to compile source code ?? assuming of course, you have one ...
regards
monika

processor compatibility

This may be a stupid question, but I need the answer so I'll ask it.
Are programs/dll's extracted from a rom compiled for the Samsung S3C2442 processor compatible with devices running an Intel PXA272 X-scale processor?
I assumed that since they are both ARM architecture they would be compatible, but now I'm not so sure. Anyone?
Yes, they are both ARM architecture and that's what counts. The only thing that might not work is something very processor specific like an overclocking app everything else will be fine. Note that same goes for OMAP processors.
Cool thx. hmm, now I just gotta figure out why the files I've extracted don't run. Is there any post processing that needs to be done to files extracted from an imgfs via rdmsflsh.pl? vijay suggested that maybe I needed to register the bta2dp.dll that wasn't loading, but when I tried to I got error 193 - not a valid win32 application.
Plus an exe that runs for vijay on a hermes device just beeps at me on the x-scale device.
Any ideas?
Maybe the header got screwed up in the extraction.
mamiac once wrote about an app that can fix PE headers, try searching his posts.
It's unlikely though, the whole directory of files worked fine for me on the Hermes, and I imagine we all dumped it in the same way. I'll try an xscale later tonight if I can.
The regsvr issue may just be pot luck, it may not need registering: not all dlls need registering.
Try searching through the dumped registry to see if the .dll you want is actually loaded as a driver, in the builtin or active reg keys. If it is, you need to copy over the reg settings and run it as a driver on your pda (or you can force it to launch programmatically).
It's possible the dll relies on device specific conditions - eg if you're talking about bluetooth hardware, it may not be cross compatible, eg the wifi hardware is different on the Wizard and the Universal. But a high level support dll is unlikely to have that kind of problem.
V

Platform name

Hi!
Can somebody tell me the platform name for TyTN? I have a list of them (ARM, SH3, SH4) - What is the proper one?
Thanks
ARM
Mike
Sorry to get technical Mike. but surely the Tytn platform name is Wm5 or WM6, and ARM is the embedded processor architecture provided in the Tytn under license!
boz said:
Sorry to get technical Mike. but surely the Tytn platform name is Wm5 or WM6, and ARM is the embedded processor architecture provided in the Tytn under license!
Click to expand...
Click to collapse
Technically of course you are correct - smarty pants
However given what deejayc says, it looks to me like s/he's been trying to download/open something and is being given the choice of processor (Arm, SH3/4 etc) and is wondering which it is. So perhaps I'm guilty of answering the question that I think he/she is asking rather than the one technically asked. (if you see what I mean )
Mike
Hi!
Well, WM5 is a good answer - unfortunatelly I am trying to develop an app using Embedded C++ 4.x. There are no platforms like "WM5" - there is only a processor architecture.
I'm really tired @work with .NET (not embedded, the real one), so I the answer "WM5" does not really help
Thanks again.

Mogul/Titan Linux WIP

If anyone is interested I have made slight progress with linux on the Mogul. First you have to download the latest versior or haret from here http://handhelds.org/~koconnor/haret/ I am using this version haret-20071029d.exe Then i downloaded some stuff from this site http://www.angstrom-distribution.org/unstable/images/ I downloaded the apache images because it is the ppc6700 sprints one lower model than the mogul. The kernel does not boot. I think that this is because the processor is a different arch. I am going to try to build a custom kernel when I get home tonight. I did not extract the distro however I think that that will be a good starting point once we get a working kernel as the devices are simular (sliding keyboard, same size screen, made by htc, cdma, etc.) I also found out that you have to pass this arguement in the haret startup.txt file or it will just crash haret. "set MTYPE 1463"
My startup.txt reads:
set KERNEL zImage
set MTYPE 1463
set CMDLINE "rootdelay=1 root=/dev/mmcblk0p2 console=tty0 fbcon=rotate:1"
boot
edited from this page http://www.handhelds.org/moin/moin.cgi/ApacheLinux you might want to look there for information. It is what got me this far.
If you would like to help please post to let me know. Please do not post something like "I can test it" or "I would be willing to test" or "Can you send me a copy when you get it working"
Right now I need some help not testers
Thanks in advance
P.S. you can find all of the known mtypes here http://www.arm.linux.org.uk/developer/machines/
The apache and Titan have totally different hardware.
All the device drivers would need to be re-written from scratch. The 6700 was easier because previous devices (6600) had similiar architecture. The current generation of HTC devices (Titan, Kaiser) uses some new chips for the radio and main proc that haven't been used before in any device by HTC.
Drivers would be compiled as part of the kernel to begin with. They could be modules later on. I was just gonna use the image for the binaries of gpe. However further research shows that there is a gpe phone edition, opie2 (which is for phones) and my favorite openmoko which i'm about to compile.
main processor wise, some nokias also have the same ARM11 processor (as the titan and kaiser) in them. N95 being one of them.
wandrerx thatnks for the help. I spent all night trying to figure out what the linux kernel calls this processor or processor family. There is no simple answer like arm11 or qualcomm or msm at least not yet. I will do research into this nokia and see if that turns up any answers.
Thanks again
just remember that in many cases the arm11 is paired (which I'm guessing is part of the architecture) so either things will go through a qualcomm/samsung/whoever layer or things are sent directly to the arm11 and to the dual phone processor. Mucking around I found that there are various power modes (possible overclocking? I'd assume they would use a conservative power mode for a phone like this)
from what I have read it is built simular to how a dual core pc is built. It has two cores on one chip. However unlike dual core pcs the cores are not symetrical. One is an arm11 chip and the other is an arm9 chip depending on the model. The arm11 chip in this case is 400mhz and the the arm9 chip is something like 133mhz. The 400mhz arm11 core is deticated to running windows and applications. The arm9 ~133mhz chip is deticated to running the phone, wireless, bluetooth and gps.
What does this mean? Well it means that we could get linux running with a compatible arm11 kernel, however we would not have any communication ability. And I think that you are correct that there is or is going to be an arch that supports both processors with one simple kernel.
Another thought... Qualcomm has their own OS (BREW) that is built for these chips. It might be worthwhile to download it to see if it gives us any more clues to the hardware then windows mobile does.
Hope that this helps.
P.S. here is qualcomms site with info on the msm7500 http://www.cdmatech.com/products/msm7500_chipset_solution.jsp
More research... Open moko was designed for the NEO1973 which runs at up to 266mhz. The mogul/titan according to qualcomm can run at speeds up to 528mhz. That is more than twice as fast! If you look at movies on youtube of the openmoko OS you will see that it runs really fast. Very comperable to windows mobile faster with some things slower with others. If you go to the openmoko wiki and look at the supported hardware you will see that the fastest processor of any of the devices that it runs on excluding the other HTC products is 312mhz. The mogul/titan runs at 400mhz with windows. The other openmoko HTC devices run at 416 and 520mhz. The mogul/titan is capable of 528 so if/when we get linux on the mogul/titan it should be extreamly fast once it is booted. For some reason linux takes a long time to load on mobile devices. However if we get a native bootloader replacing windows completly it will probably take about the same amount of time to boot. Currently my idea is to haret or any other bootloader in the windows startup folder to boot directly to linux once windows loads.
More research part 2...
ARM ltd. uses linux to test all arm processors during the development cycle. They test every feature and make sure that everything works correctly. They also use it to stress test the processors. So my question is why don't they release these drivers when the new processors are released? I will scour the internet for any unofficial drivers or anything that could help us. I will be posting everything that I find that I think might be helpfull.
First off sorry for the tripple post.
Now the exciting news. The msm7500 uses the ARM1136EJ-S core. I'm not sure how simular the ARM1136EJ-S is to the ARM1136J-S and the ARM1136JF-S. I know that in the computer world one letter can mean a heck of a lot or next to nothing but... There are patches for both of the later on the following site. http://www.arm.linux.org.uk/developer/patches/search.php?summary=arm1136 granted these patches are atleast a year old but they do tell us one thing. the sub arch for these processors is arm1136 and that the most of the patches are in the linux/arch/arm/mm folder.
However in the kernel that I am using handhelds.org this still isnt an option. However there are three ARM Ltd. sub archs that I'm going to look up on their site and SA1100-based and also EBSA-110. I am hoping that the 11 in these archs means something to the effect of arm11 or that ARM Ltd. can spread some light on the situation. If worst comes to worst next Sunday or whenever I get enough time I will compile each of the arm kernels with the basic options and see is any of them boot on the mogul/titan. If they do that could mean either that we found the right arch or a compatible arch such as x86 is compatible with x86_64. Once I have something booting I will release it so other developers can use it to dump hardware information and if I can use usb networking or the keyboard by some stroke of luck I will try to get the output from a dmsg. Hope this helps
Breaking news: Disreguard most of what was just said some is true other is just guesses showing my stupidity. I just did a simple google search on "ARM1136EJ-S linux" without the quotes not expecting to find anything usefull. I was wrong again. I learned of other chips that use the ARM1136EJ-S core the TI OMAP2420 is based on this same core. Finally a arch that is selectable when configureing a kernel. Now to do more research into the TI OMAP2420 and other chips with this core and posibly finding some kernel configs to use as a starting point. I am so excited :-D
great find
Although not the same simular to the msm7500 (phone, wifi, BT, gps, 2 cores, usb, IR, flash, ram, keypad, camera, sd card) Oh yeah and did I forget to mention... People have booted linux on this bad boy. I also read that the kernel config for this is included with the linux kernel too!!!
http://focus.ti.com/general/docs/wt...entId=4671&navigationId=11990&templateId=6123
P.S. This file in the handhelds.org kernel controls this processor and its preriphrials /linux/arch/arm/mach-omap2/board-h4.c
Where I located the information said that it can be found in /linux/arch/arm/mach-omap/board-h4.c with the kernel from kernel.org I'm not sure if this is just outdated or changed in handheld.org's version of the kernel eitherway I am going to have my computer build the kernel as I sleep tonight. (There will be no modules everything will be built in) <-- for simplicity incase it doesn't load the ext3 filesystem on the microsd card for some reason. I have a feeling that some of the irqs in the file listed will need to be changed to work with the mogul/titan but maybe we could get lucky.
A little more info for someone trying to build the kernel. The kconfig file in the in the mach-omap2 directory says this:
config MACH_OMAP_H4
bool "OMAP 2420 H4 board"
depends on ARCH_OMAP2 && ARCH_OMAP24XX
Hope that that helps if you are trying to get a working config. Oh yeah one more thing I am useing the handhelds.org kernel because 1. I have it 2. I figure that it is made to be compatible with the most devices. I am planning on switching to the openmoko kernel as soon as I have something booting. I might need to steal patchs etc from the handhelds.org kernel though. I don't know as I haven't downloaded the openmoko kernel yet.
Nice... see, I like being proved wrong for stuff like this.
I've been telling people it couldn't be done.
Keep up the good work researching!
Well I built a kernel...
I also loaded the kernel
I am unsure how far it gets after that I will post my haret log files. One I made an empty file named zImage-fake. The other one is my (nonworking) kernel. And one I made by booting the openmoko zImage that I found somewhere on the internet. None of them booted Are you really supprised? But we did get some information from haret. And I can verify that the progress bar in haret did move form the beggining to the end when booting both real kernels. The empty file does nothing and haret just sticks. Pretty much all this tells us is where haret is looking for the kernel and what it is decompressing. Memory mapping and so on. It is all greek to me I have no clue what it means. Hopefully you guys will know more.
Something interesting I was reading on the kiser forums about there progress with linux on that device. They dont even know about the cores being the same as the TI OMAP 2420 processor. However they say that haret only reconises the msm7500 as being there but has nothing more as in no ability to boot kernels because nothing is known about the cpu. If this is true could someone contact Kevin O'Connor as he is the one that patched haret to reconize the msm7500 and tell him about the OMAP discovery and see if that helps. Or contact Paul Sokolovsky the other haret maintainer.
my default.txt is as follows:
set KERNEL zImage
Set MTYPE 1463
set CMDLINE "rootdelay=1 root=/dev/mmcblk0p2 console=tty0 fbcon=rotate:1"
boot
One last thing here are the haret logs and my kernel config incase anyone wants it.
P.S. I compiled my kernel with binutils 2.18.50 and the following arm gcc toolchain arm-linux-gcc-3.4.1.tar.bz2 <-- I found the link here http://www.gtlib.gatech.edu/pub/handhelds.org/projects/toolchain/ and binutils was found here ftp://sourceware.org/pub/binutils/snapshots and I referenced the guide to compile the kernel found here http://www.handhelds.org/moin/moin.cgi/KernelBuilding
More interesting/helpfull news...
Without specifying an mype haret reports "undefined MTYPE"
With the arguments "set MTYPE [MTYPE]" it will decompress the kernel.
I was hoping that I could find a MTYPE that wouldn't load but so far I have been unsucessfull. Everthing loads and there are 1538 different MTYPES. Now I guess that we could try every MTYPE untill we get something that boots or maybe someone has a better idea. Also here are some more devices with the same core.
Motorola MOTO Q9h Global
Motorola MOTO Q 9h (Q9h)
Nokia E90 Communicator
Verizon XV6800 (HTC Titan 100)
HTC Touch P3050 (HTC Vogue 100)
HTC S640 (HTC Iris 100)
Bell HTC 5800 (HTC Libra 100)
HTC 5800 (HTC Libra 100)
Bell HTC 6800 (HTC Titan 100)
HTC S720 (HTC Libra 100)
HTC P4000 (HTC Titan 100)
Here is a haret log when I pass the lsmod arguments. My guess that it shows all of the windows drivers that are loaded. Now if we just do a simple google search on them or if someone knows how decompress them and or look at them we can possibly find out more about the hardware.
My understanding,or rather assumption was that one processor ran windows and the other ran the radio and that the two were separate. I assumed that if you were to make linux run on these new phones,you would run linux on the 400mhz processor,and run the existing radio rom on the other which I would expect to make things much simpler. Rather than figuring out how to make the radio work,you would just have to figure out how to talk to the radio and the rest of the work would be done for you.
pflatlyne said:
My understanding,or rather assumption was that one processor ran windows and the other ran the radio and that the two were separate. I assumed that if you were to make linux run on these new phones,you would run linux on the 400mhz processor,and run the existing radio rom on the other which I would expect to make things much simpler. Rather than figuring out how to make the radio work,you would just have to figure out how to talk to the radio and the rest of the work would be done for you.
Click to expand...
Click to collapse
I've been watching from the Kaiser Section. Firdtly let me say that I believe you are correct. The way every device I've seen uses the two processors is as Follows: The ARM11 is your 400mhz system processor & the integrated 274mhz ARM9 is almost always used a a modem connect the system to the radio, GPS, etc.
I don't know if you've seen this, but there are some Dev tools/Info available at: http://www.virtio.com/
10/21/2004 - Virtio Corporation, the creator of Virtual Platforms for embedded software development, introduced its latest product offering for the Texas Instruments (TI) OMAPTM platform, the VPOM-2420 Virtual Platform. This product provides fast, full-function emulation for TI's OMAP2420 software development platform. Virtual Platforms give software developers a target system model that can boot an operating system and run application code long before hardware becomes available, speeding new system software development.
Additional information is available at www.virtio.com/vpom-2420 and evaluation copies of the platform are on-line at http://www.virtio.com/download.
I'm really curious to know what has become of this. Could an insider provide an update please?
Best bet is to watch the android wip. I'm going to get another mogul here in a couple months, i'll be using my current one as a test bed. since it's my only phone, i'm not too keen on hacking into it just yet
Check http://cs-alb-pc3.massey.ac.nz/vogue

IDE to run on WM...

I think here is the right place to ask
Do u know/is there any C/C++ IDE that can actually run on WM?
I do not mean writing apps for WM. I mean writing, compiling (and y not debugging) programms directly on the PDA.
And generally is there such an IDE for any other programming language?
thx in advance
there is some for c# .net
and pocketVI support some c not to compile to native code or a real IDe though
I don't even think the pocket pc is powerful enough (yet) to handle the task of compiling software (unless you get a real os on there like linux).
I dont know if this is what you are looking for, but you can try Basic4PPC
I've tried it and I love'd it!
Rudegar said:
there is some for c# .net
and pocketVI support some c not to compile to native code or a real IDe though
Click to expand...
Click to collapse
yes i've seen that! i guess u r talking about http://www.geocities.com/hrowson/wm5_software/index.htm
just wondering if there are similar IDEs for other langs, like C, C++
Steven855 said:
I don't even think the pocket pc is powerful enough (yet) to handle the task of compiling software (unless you get a real os on there like linux).
Click to expand...
Click to collapse
hm.. i do not think that compiling is such an intensive task.. Well if u have like 5000 lines on ur windows mobile sure will take long..
But generally testing smal progs etc would be fine i think
Compiling is not something that came out with along with the fast CPUs!
What is more, the HD has a pretty fast CPU (i think!). Still remember that my first desktop PC's CPU was around 500MHz (!)
fredamexis said:
I dont know if this is what you are looking for, but you can try Basic4PPC
I've tried it and I love'd it!
Click to expand...
Click to collapse
u can use it to write progs directly @ ur PDA? (withour PC)
thx i will check it anyway!
See this thread: http://forum.xda-developers.com/showthread.php?t=445396
The following will compile (I've tried them) on the phone:
PocketGCC (FREEWARE)
Pocket C# Combo (Everything you need to compile and write apps for WM-- FREEWARE)
However, they do have limitations.
I'm completely positive FPC can be made to run on ARM. I'd say the chances of getting Lazarus (*the* FPC IDE) to run on WM are 30% out-of-the-box, and 70% after a day of hacking
The real question is... WHYYYY!?!?!?!?!?! would you want to?
LiKBeAsT said:
hm.. i do not think that compiling is such an intensive task.. Well if u have like 5000 lines on ur windows mobile sure will take long..
But generally testing smal progs etc would be fine i think
Click to expand...
Click to collapse
Dude seriously, compiling is a very CPU intensive task. 5000 lines? That is exactly one nothing in code terms.
Compiling is not something that came out with along with the fast CPUs!
What is more, the HD has a pretty fast CPU (i think!). Still remember that my first desktop PC's CPU was around 500MHz (!)
Click to expand...
Click to collapse
Oh please. My first desktop PC's CPU was 4.77mhz (with a turbo switch to 8!) and I'm considered a newbie in that area. While 500mhz is not necessarily slow, HTC hasn't produced a fast device in over two years. The HD is a horribly slow device.
Just a guess, but I'd say that the HD should still be fine for compiling. No floating point operations and no graphics.
Limitations to compilation probably memory size and memory speed, more than anything else? This will be a particular problem for C++, especially if you're doing anything more than minimal templating.
And putting Linux on it won't suddenly make it much better at compiling things - very little of this will be reliant on the OS subsystem.
ajige said:
See this thread: http://forum.xda-developers.com/showthread.php?t=445396
The following will compile (I've tried them) on the phone:
PocketGCC (FREEWARE)
Pocket C# Combo (Everything you need to compile and write apps for WM-- FREEWARE)
However, they do have limitations.
Click to expand...
Click to collapse
yea checked that out but it also had many other stuff and i wasn't sure about what i was asking
Chainfire said:
I'm completely positive FPC can be made to run on ARM. I'd say the chances of getting Lazarus (*the* FPC IDE) to run on WM are 30% out-of-the-box, and 70% after a day of hacking
The real question is... WHYYYY!?!?!?!?!?! would you want to?
Click to expand...
Click to collapse
erm.. i guess for fun, testing small progs and keep in touch with the lang when away from PC
Chainfire said:
Dude seriously, compiling is a very CPU intensive task. 5000 lines? That is exactly one nothing in code terms.
Oh please. My first desktop PC's CPU was 4.77mhz (with a turbo switch to 8!) and I'm considered a newbie in that area. While 500mhz is not necessarily slow, HTC hasn't produced a fast device in over two years. The HD is a horribly slow device.
Click to expand...
Click to collapse
Well, obviously i ammuch more younger (going to 20!) So my first PC was turbo-machine
Anyway! i guess nobody is going to use PPC IDE for that big progs and of course yes. they will take hours to compile (i guess)
Fast is a bit subjective i think.. What do u mean horribly slow? in terms of CPU, response time etc?
Thx everyone for the input!
PPC is pretty fast. You feel it is slow just because it has too many bad designed apps slow it down (must have while(1000) {Sleep(1000)} inside! no joking, I did see it sometimes!) and it has lack of good graphic driver (or chipset) so your TF3D has to use software to simulate semi-transparent effects and support z-order by allocating large buffer and repeatedly copy them.
Try pocketdos (or bochs emulator), you can run a windows 3.1 on ppc.
Then you can use TC, or old version of VC++/VB/Delphi etc on windows 3.1/dos
Considering emulator running on a real machine usually ~100 times slower than virtual machine, and ARM processor is a RISC chipset usually faster than CISC, your PPC is much faster than a Pentium even some Pentium III computer.
You may not understand how RISC faster than CISC. a function call in x86 cpu usually like
PUSH param1
PUSH Param2
Call function1 ( which push IP and stack again)
and more PUSH inside the function1.
it involves a lot of memory operations. memory is out of CPU so it is low.
A function call in ARM cpu usually like
MOV R0, param1
MOV R1, param2
BL function1 (which set return address in a register)
It doesn't use memory at all. everything is done within processor.
Pentium and after that solve this bottle neck by adding cache. But your code may not in cache when switching context. RISC is naturally faster.
ARM in general can be fast. However in MSM7K devices it usually isn't. All floating point operations for example are done in software, not hardware - this is why a lot of stuff is slow (try for example a Samsung chipset based on ARM, they are much faster for a lot of things). Hardware floating point is an absolute must for any multimedia related thing, and can affect any multiplication or division (and similar) where your compiler does not know at design time whether it will be an integer operation or not.
Furthermore, TF3D is actually one of the few things on these devices that actually does use hardware graphics acceleration.
Even then, while I do agree that RISC in general can be faster than CISC , no compiler worth its salt will use a stack-based calling convention (at least for non-exported functions) unless explicitly specified to do so. Register based function calling exactly like you give for your ARM example is quite normal on x86 as well.
And yes, my old and rusty 500mhz Pentium laptop literally ran circles around any MSM7K.
As far as I known compiler or IDE almost doesn't need float pointer operations at all.
386SX or 486SX works well and fast with old version of VB and VC.
That was an example for why MSM7K was slow. Even if it isn't applicable to compiling, it's still a slow-ass chip
Meme IDE
you could try this...its not c# or c++ but very similar
Build with a drag and drop editor. Develop complex functions using the unique MemeScript. A language created to make elements simple and cohesive on any platform.
It is currently in beta release and at the moment you can develop for Android and WM. IOS will be included in the full release and Blackberry further down the line.
OH and its FREE
find out more or download and play with it at www.memeapps.com
joememe said:
you could try this...its not c# or c++ but very similar
Build with a drag and drop editor. Develop complex functions using the unique MemeScript. A language created to make elements simple and cohesive on any platform.
It is currently in beta release and at the moment you can develop for Android and WM. IOS will be included in the full release and Blackberry further down the line.
OH and its FREE
find out more or download and play with it at www.memeapps.com
http://www.memeapps.com/
Click to expand...
Click to collapse
it is worth to try after the running download. Thank's for the hint.

Categories

Resources