EmbeddedRelated.com
Forums

Assembler to C converter for PIC?

Started by booth multiplier April 5, 2005
hamilton <hamilton@deminsional.com> wrote in message news:<MvKdnZE4LcI-bsjfRVn-ow@forethought.net>...
> I would like to know whose code are you trying to steal ???
This is not about stealing nor converting machine language to C. Its about upgrading and Education. The tool will help: 1. Students who start with C and want to use HANDWRITTEN Assembly Examples on the Net. 2. Assembly coders who want to upgrade their code to C. Is this not worth asking for? Thanks Anyway
booth multiplier <boothmultipler@hotmail.com> wrote:

> The tool will help: > 1. Students who start with C and want to use HANDWRITTEN Assembly > Examples on the Net.
Students are much better off doing that conversion manually --- they'll learn a great deal about that particular C compiler, assembler and micro in the process, which is what being a student is supposedly all about.
> 2. Assembly coders who want to upgrade their code to C.
Why would they ever want to do that? If the assembly program was written by people worthy of being called "assembly coders", odds are that a direct translation to C would be vastly inferior to a plain rewrite from scratch. In other words, the only tools actually *needed* for such a conversion are lots of documentation, time and a screen large enough to display C and assembly source side-by-side. Or failing the latter, a paper print-out holder to sit next to the screen. -- Hans-Bernhard Broeker (broeker@physik.rwth-aachen.de) Even if all the snow were burnt, ashes would remain.
> > 1. Students who start with C and want to use HANDWRITTEN Assembly > > Examples on the Net. > > Students are much better off doing that conversion manually --- > they'll learn a great deal about that particular C compiler,
assembler
> and micro in the process, which is what being a student is supposedly > all about.
I'm a student and I'd get confused as ever going from assembler to C. I tried that eons ago with Z80 stuff and it's a confusing bloated layer of bizzaro labels and gotos. Don't foist that upon your students unless you want them to leave. Much better, as Hans said, is to learn assembler, learn C, and how to convert from one to another. I'm trying C2Cplus (formerly picant) and it will generate heavily commented (corresponding to C source) assembler (their SourceboostC steps in C source) which makes comparisons between C and assembler easy, and for newbies, enlightening. I don't know squat about 16F assembler, but at 35 instructions, it's not bad. It is actually fun (only 35 instructions) to examine small listings to see how people solve problems. It could likely be essential to learn and write assembler for certain projects.
> Why would they ever want to do that? If the assembly program was
Portability?
boothmultipler@hotmail.com (booth multiplier) wrote:

>Hi All, > Has anybody heard of an assembly to C converter tool for Microchip >PICs. A Converter from MPASM to C, or is it impossible? >Thanks
Relogix (http://www.microapl.co.uk/asm2c/index.html) performs assembler-to-C tranlation for 680x0 and 80x86 CPUs. The vendor offers porting services for other architectures. -- Dan Henry

booth multiplier wrote:

> hamilton <hamilton@deminsional.com> wrote in message news:<MvKdnZE4LcI-bsjfRVn-ow@forethought.net>... > >>I would like to know whose code are you trying to steal ??? > > > This is not about stealing nor converting machine language to C. Its > about upgrading and Education.
If you were an educator, you would already understand compiler theory. Getting the "original" C code from assembly in not possible. The best you can get is a (dare I say it) is a flow of the program. From there you can 're-engineer' the code in C. My guess is that you are not an educator.
OK, I know I'm very late to the party! However I just noticed that our web
log shows a recent entry for visitor who reached our site via this thread,
so I'll add this comment in case anyone else follows...

You can do much better than obtaining a "flow of program" as suggested by
the previous post, although it's tricky to do so.

Our company, MicroAPL, has a software tool called Relogix which
reverse-engineers assembly code and produces C. We aim to get close to what
a human programmer might write - i.e. readable, maintainable code.

To judge how well we do, take a look at some of the examples on our web
site. These are all automatic translations produced by Relogix, before our
engineers perform a post-translation cleanup.

The link is:

http://www.microapl.co.uk/asm2c/index.html



> > >booth multiplier wrote: > >> hamilton <hamilton@deminsional.com> wrote in message
news:<MvKdnZE4LcI-bsjfRVn-ow@forethought.net>...
>> >>>I would like to know whose code are you trying to steal ??? >> >> >> This is not about stealing nor converting machine language to C. Its >> about upgrading and Education. > >If you were an educator, you would already understand compiler theory. > >Getting the "original" C code from assembly in not possible. > >The best you can get is a (dare I say it) is a flow of the program. > > From there you can 're-engineer' the code in C. > >My guess is that you are not an educator. >
--------------------------------------- Posted through http://www.EmbeddedRelated.com