News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

MASM on embedded devices?

Started by rob_c, May 09, 2006, 09:16:19 AM

Previous topic - Next topic

rob_c

Hi everyone,

I'm curious... is it possible, or has anyone already written progs in MASm for windows CE based OS's? In particular I'm thinking of Windows Mobile 2003 for the smartphone. It strikes me that, from the little that it is the obvious way to get the best performance from these kind of devices?

All thoughts on this are welcome!

Cheers,
Rob (newbie to the forum)

Eugen


Hi rob_c

One problem would appear for embedded devices: most of them dont have a x86 CPU  :green, the ARM CPU is much more common, with a different assembly language altogether, you know...

On the other hand, i agree that in an enviroment with so little resources as an embedded device assembly should be more used that JAVA, C++ and other OOP ..it, but because of comercial reasons (speed of development etc.) the assembly is seldom used.

Eugen

rob_c

That's a very good point Eugen! My target device is an spvc500 which runs the ARM based Ti omap730. (I am looking into this purely from a personal application development perspective so I am not concerned with the speed of development etc.)

I'm not sure if this is the right thing to ask in this forum (& apologies if not) but do you know of any equivalent to masm32 for ARM processors? eg. that support the windows API for app development?

Thanks,
Rob

btw, this will not put me off using MASM32 as I firmly believe this is the way we should be coding still!

rob_c

ps. if anyone else is interested in this subject, posting an acknowlegment would be cool, even if u have no info to offer. I'd like to know if it's just  me that thinks like this!

Cheers,
Rob

Ar-ras

I know somebody who writes modified firmware for mobile phones... they have arm processors
But this is only for hardcorefreaks who want to write a complete new firmware...
You cannot write wince applications whit this method...
Did you tried to write embedded assembler codes into embedded visual c++ 4?
Maybe it supports embedded assembler, I didn't tried it
Maybe this works....
If not you can try to reverse engineer your own wince written in embedded visual c++ 4
So that you can write your own assembler
maybe there is a ml.exe for arm in the binfiles :)
Afaik WinCe file have modified PE-Header too

Thats my ideas for this

rob_c

QuoteDid you tried to write embedded assembler codes into embedded visual c++ 4?

I've not tried this, but it sounds like a good place to start.

Ar-ras



:dance:

Only problem will be to find a armasm for your processor..

http://www.rainer-keuchel.de/wince/armasm.html

Roger

Hi Rob,

I tried a Google search for Arm Assembler and found several sites talking about programming different ARM risc prrocessors and even a tutorial! try

http://www.riscworld.co.uk/ONLINE/ARMCODE/INDEX.HTM

Regards Roger

Ar-ras

Quote from: rob_c on May 09, 2006, 10:59:53 AM
... My target device is an spvc500 which runs the ARM based Ti omap730. ...
I don't know if armasm has a omap730 support

Ossa

I know this isn't MASM, but have you tried the official armasm (from the ARM website)? You won't have the supporting files I'm guessing, but i think it will support every ARM or combined core that they have (I used it with the ARM/XScale combo for writing an MPEG-4 decoder as one of my summer jobs... using Nucleus, not Windows though).

Ossa
Website (very old): ossa.the-wot.co.uk

Eugen

Quote from: rob_c on May 09, 2006, 10:59:53 AM

I'm not sure if this is the right thing to ask in this forum (& apologies if not) but do you know of any equivalent to masm32 for ARM processors? eg. that support the windows API for app development?


I dont know any FREE alternative  :wink. You can check armasm as others suggest, but i dont know if its free. I remember coding for some Nokia phone with ARM core, and i was using gcc  :red and a free assembler as backend   but i cant remember what it was (didnt code in assembly then, but i'm doing it now  :green2  - still, not with free tools). I dont know if there are free ARM assemblers that have includes for WinCE, that would realy be too good for you...  :P

Eugen

BogdanOntanu

Besides in an ironical way it makes more sense to write ASM only applications for desktop PC's since there is a huge number of then with almost the same CPU and ASM language. On embeded devices the number of devices that share the same CPU and hhardware architecture is much smaller so you will have to port your code/application many times... because of this portability issue a simple C compiler makes more sense in embeded devices
Ambition is a lame excuse for the ones not brave enough to be lazy.
http://www.oby.ro

Ossa

Quote from: BogdanOntanu on May 09, 2006, 04:22:09 PM
Besides in an ironical way it makes more sense to write ASM only applications for desktop PC's since there is a huge number of then with almost the same CPU and ASM language. On embeded devices the number of devices that share the same CPU and hhardware architecture is much smaller so you will have to port your code/application many times... because of this portability issue a simple C compiler makes more sense in embeded devices

From my admittedly limited experience, the companies that write software for embedded systems use it far more frequently. I think that's because they need to use the processor much more efficiently than on a PC where oodles of clock cycles are being wasted without much visible effect. I know most DSP code is written in pure ASM (company I talked about before had approx 8MB of source for their DSP stuff in pure ASM... one port for each processor they worked with - and there were hundreds).

However, for the individual software developer, I think you have a point, Bogdan. It's fine for a large company to port software over and over again, but it takes too much time for the single person.

Ossa
Website (very old): ossa.the-wot.co.uk

Ar-ras

The Screenshot is from the armasm of the embedded Visual C++ 4 package
the link i added is maybe an alternative

Why I have to make different compilations for a pocketpc if it has different cpus?

rob_c

thanks for all the response guys!  :cheekygreen:

I'm gonna have a concentrated read and assess what direction to take

Rob