Answer the question
In order to leave comments, you need to log in
Universal IDE?
Is there a simple IDE in nature (for Windows) so that you can work with arbitrary assembler in it?
We specify the mnemonics and opcodes of commands and other necessary things in the configuration, write the text of the program, press the button, we get the compiled code. Like IDA, just the other way around :)
There is an insane desire to work with randomly found ancient and not very small controllers, some of which the manufacturers themselves have probably forgotten about. There are datasheets with descriptions of commands, but making your own assembler for each is an extremely difficult task, programming on a piece of paper is also fun.
Answer the question
In order to leave comments, you need to log in
Maybe RadASM ? It has its own settings for different assemblers (and higher-level PLs). Accordingly, you can always add your own.
Strange, of course
making your own assembler for each is an extremely difficult taskand you want the same thing, only even more flexible - in fact, the generation of assembler according to the specified mnemonic opcodes? In my opinion, in the general case, this is not a very simple task, because in addition to mnemonics, opcodes are often affected by the types of operands, and so on and so forth.
You can automate the process only for very general and frequently repeated things, but each specific ISA always has its own troubles. Take a look at LLVM: a fairly large part of assemblers / disassemblers are generated automatically, but still there is always C ++ code nearby for processing commands that do not fall under standard cases.
And yes, "automatically generated" - from a description in a special language, which will also be large for a large ISA.
So there will be no miracle.
llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMInstrInfo.td?revision=168886&view=markup
Here is an example of (part of) a description of ARM commands. Only 200 Kb, and this is in a language specially created for this.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question