Timothy Miller wrote:
On 7/10/06, Patrick McNamara <[EMAIL PROTECTED]> wrote:

> I think what we should have is some assembler metadata.  In the
> assembly, we can indicate the polarity of assertion, and the assember
> does the inversion as necessary.
That should be quite doable.  Something like

.polarity v=+, h=-, d=+ ...

Good point.  And since d will always be +, let's make + the default.

Agreed. I'm using the assembler directive as above. All flags default to active high (+ sync).

For readability sake, I would allow for multiple polarity macros.  In
the case of duplicates, the last one take precedence with a warning.

Is that a warning condition?  Lots of assember directives are repeated
with different settings for different blocks of code.

Given the program space and complexity of the programs, I'm requiring a "macro" section and a code section. Assembler directives live in the macro section in which case repeated flag definitions are a warning in my mind.

I've read back through the previous threads and updated the compiler and test program as appropriate. The compiler now handles the divides on SEND and FETCH parameters. It also handles the flag polarity as described above. Flag arguments in a statement will assert the flag with polarity as defined by the assembler directives. The compiler also now supports a .define macro which allows assign a numeric value to a text string similar to #define in C. Internally, the compiler treats it the same way as labels when doing substitution. I fixed a few bugs along the way too.

Atilla set me up with SVN access. When I get a spare moment, I'll commit the assembler code. Suggestions on where to put it in the directory hierarchy? Perhaps /trunk/tools/bin? What about example program code, where should it go?

Patrick M
_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)

Reply via email to