Actions

Difference between revisions of "Sx assembler"

From Just in Time

m
Line 1: Line 1:
 
Work is in progress on a [http://boost.org/libs/spirit/doc/introduction.html boost.spirit] based SX assembler, written in C++.
 
Work is in progress on a [http://boost.org/libs/spirit/doc/introduction.html boost.spirit] based SX assembler, written in C++.
'''update''': I'm reconsidering writing the grammar of the assembler in ANTLR instead of spirit, so that i could use the same grammar in Java (eclipse) and C++ (tool chain).
+
'''update''': I'm reconsidering writing the grammar of the assembler in [http://antlr.org/ ANTLR] instead of spirit, so that i could use the same grammar in Java (eclipse) and C++ (tool chain).
  
 
The sx assembler consists of 2 parts:
 
The sx assembler consists of 2 parts:

Revision as of 23:01, 21 January 2007

Work is in progress on a boost.spirit based SX assembler, written in C++. update: I'm reconsidering writing the grammar of the assembler in ANTLR instead of spirit, so that i could use the same grammar in Java (eclipse) and C++ (tool chain).

The sx assembler consists of 2 parts:

  • frontend; create a syntax tree out of the program text. There is a working spirit grammar without actions (the actual tree building). Open items are:
    • include
    • macros
    • recognizing opcodes that start in the label column (the first column). Currently, a word that starts in the first column will be parsed as a label, never as an opcode.
  • backend; create a list- and hex-file out of the generated parse tree.