collapseos/apps/zasm
Virgil Dupras 746c86cbf8 zasm: make getSymVal not responsible for calling symFind
With local labels, these two will have to be decoupled.
2019-05-13 16:53:52 -04:00
..
tests zasm: add support for relative labels 2019-05-12 22:07:21 -04:00
directive.asm zasm: fix first pass inversion bug 2019-05-12 08:50:29 -04:00
instr.asm zasm: add support for LD r, r' instructions 2019-05-13 16:38:09 -04:00
io.asm zasm: read input in two passes 2019-05-10 20:32:05 -04:00
main.asm zasm: add support for relative labels 2019-05-12 22:07:21 -04:00
parse.asm zasm: make getSymVal not responsible for calling symFind 2019-05-13 16:53:52 -04:00
README.md Add zasm app 2019-04-16 13:36:57 -04:00
symbol.asm zasm: make getSymVal not responsible for calling symFind 2019-05-13 16:53:52 -04:00
tok.asm zasm: little code reorganisation 2019-05-10 21:19:34 -04:00
util.asm zasm: add support for relative labels 2019-05-12 22:07:21 -04:00

z80 assembler

This is probably the most critical part of the Collapse OS project. If this app can be brought to completion, it pretty much makes the project a success because it ensures self-reproduction.

Running on a "modern" machine

To be able to develop zasm efficiently, libz80 is used to run zasm on a modern machine. The code lives in emul and ran be built with make, provided that you have a copy libz80 living in emul/libz80.

The resulting zasm binary takes asm code in stdin and spits binary in stdout.