Automated re-coding of assembly language in C
MicroAPL Ltd, creators of the well-known PortAsm assembly-language
translation tool, today announced the launch of Relogix, an advanced new
software conversion tool which can take assembly-language source files and
automatically re-code them in readable, maintainable C, complete with
meaningful variable names and types.
Unlike most other attempts at automatic conversion from assembler to C,
Relogix produces results close to what a skilled human programmer would
produce if asked to re-write an assembler source file in C. Relogix
achieves this by:
- Reorganizing the program flow to use natural C constructs such as 'if',
'for' and 'case' statements, usually without recourse to 'goto'. Even
'spaghetti' code comes out as well-structured C source.
- Automatically deducing function prototypes in a natural C style.
Parameters originally passed to assembler subroutines either in registers
or on the stack become parameters to the corresponding C function, rather
than being left as global variables.
- Analyzing the use of register- and memory-based data to select valid C
data types for local and global variables, including automatic detection of
structures and unions.
- Eliminating unused variables and combining multiple assembler statements
into one, readable C line.
- Selecting meaningful names for variables which were originally
represented in registers or on the stack. It does this by a unique
algorithm which chooses names not only by analyzing the usage, type and
origin of data, but also by examining comments in the original source file.
- Intelligently carrying over comments from the assembler source into the
translated C source, even where the code flow has been substantially
changed during the translation.
Relogix is initially available for translation of 680x0-family assembly
language, with a version to translate x86 assembler following soon. Other
architectures will be supported later. It will be sold both as a standalone
tool and as a cost-effective porting service over the internet. MicroAPL
will also offer traditional consultancy services based on the Relogix
technology.
Further information and sample translations can be found on the MicroAPL
web site http://www.microapl.co.uk/asm2c
MicroAPL, The Roller Mill, Mill Lane, Uckfield, E.Sussex TN22 5AA, UK
WWW : http://www.microapl.co.uk PHONE: +44 1825 768050
E-Mail : microapl@microapl.co.uk FAX: +44 1825 749472