Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make the native assembler independent from an external preprocessor #20

Open
sy2002 opened this issue Jul 31, 2020 · 5 comments
Open

Make the native assembler independent from an external preprocessor #20

sy2002 opened this issue Jul 31, 2020 · 5 comments
Assignees
Labels

Comments

@sy2002
Copy link
Owner

sy2002 commented Jul 31, 2020

This one is not urgent as the use case would also need writeable SD cards, FAT32 to support writing and possibly also support for more RAM:

The idea is: One day to be able to develop for QNICE on the QNICE. For example do write and assemble QNICE assembler while working on QNICE hardware.

Besides the fact that for that we also would need a nice assembler text editor on QNICE (or even an QNICE assmbler IDE 😏 ): We need the assembler to run on QNICE.

And for that we need to make it "stand-alone", i.e. independent from an external C preprocessor.

@sy2002 sy2002 changed the title Make the native assembler Make the native assembler independent from an external preprocessor Jul 31, 2020
@sy2002 sy2002 added the V1.7 label Aug 5, 2020
@MJoergen
Copy link
Collaborator

MJoergen commented Aug 8, 2020

When we write a new assembler it would be nice if it supported macro instructions, i.e. defining a macro consisting of small snippets of assembly. Something similar to the 6502 macro assembler, see sections 6 and 12 here: https://cc65.github.io/doc/ca65.html

@sy2002
Copy link
Owner Author

sy2002 commented Aug 8, 2020

@MJoergen Good point: Macros for the native toolchain's assembler would be nice, so @bernd-ulmann if you added a preprocessor, that would be a nice additional point. But @MJoergen Did you know: We already do have a QNICE assembler, that is capable of macros: VASM: When you go to the website, you see QNICE mentioned there. You find infos about how to use it in QNICE-FGA here, scroll down to the section VASM assembler.

@MJoergen
Copy link
Collaborator

MJoergen commented Aug 8, 2020

Oh, I didn't know about VASM. Thank you for the hint.

@sy2002
Copy link
Owner Author

sy2002 commented Aug 8, 2020

Sorry, wrong link in above comment (now edited). You find how to use it in QNICE-FPGA in our README.md, here:

https://github.com/sy2002/QNICE-FPGA/tree/dev-int#programming-in-assembler

Scroll down to the section VASM assembler.

@bernd-ulmann
Copy link
Collaborator

Simple macros are also possible with the existing qasm using the C-preprocessor which is called prior the assembler run by asm. Maybe better than nothing at the moment. :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants