Virgil Dupras
371076190f
zasm: implement error conditions in .equ
5 years ago
Virgil Dupras
436ff51c39
zasm: implement error conditions in .dw
5 years ago
Virgil Dupras
f5d4321ece
zasm: implement error conditions in .db
5 years ago
Virgil Dupras
d76dd54f4b
zasm: add ERR_OVFL
5 years ago
Virgil Dupras
f9118ef88e
xasm: expand ERR_BAD_ARG condition
5 years ago
Virgil Dupras
e1e6d52fea
zasm: add ERR_BAD_FMT
5 years ago
Virgil Dupras
412b3f374a
zasm: add ERR_BAD_ARG
5 years ago
Virgil Dupras
af2c561c6b
zasm: begin erroring out reliably
Up until now, invalid source input had undefined behavior. We're now
beginning to define that behavior so that zasm can be a bit more usable.
5 years ago
Virgil Dupras
976a93971c
zasm: improve docs
5 years ago
Virgil Dupras
8923fefeff
Update docs
5 years ago
Virgil Dupras
ed19c6afc1
Use zasm in recipes
5 years ago
Virgil Dupras
c40bc329d5
zasm: fix expr returning wrong values on first pass
To run a parseExpr on first pass would always return a false success
with dummy value because symbols are configured to always succeed on
first pass. This would make expressions like ".fill 0x38-$" so bad
things to labels because "0x38-$" wouldn't return the same thing on
first and second pass.
Revert to parsing literals and symbols after having scanned for
expressions and add a special case specifically for char literals (which
is why we scanned for literals and symbols first in the first place).
5 years ago
Virgil Dupras
e18f9b53a9
zasm: add support for "$" symbol
Allows for the ".fill x-$" pattern.
5 years ago
Virgil Dupras
207adbc2f8
tools/emul: add "make rescue" command
5 years ago
Virgil Dupras
848a7500bc
zasm: add support for .fill directive
5 years ago
Virgil Dupras
ae315499cb
Run unit tests with zasm
5 years ago
Virgil Dupras
d2c6e21c64
Fix broken shell
When I zasm-ified the shell a couple of dozens of commits ago, I
inverted push and pops...
5 years ago
Virgil Dupras
c586c0d63c
Make the shell emulator be built by zasm
5 years ago
Virgil Dupras
fa3b86a5c1
zasm now bootstraps itself without scas!
5 years ago
Virgil Dupras
acddb045a5
zasm: add support for .org directive
5 years ago
Virgil Dupras
49be50b730
zasm now self-assembles!
5 years ago
Virgil Dupras
bc1496a7e3
zasm emul: bring back kernel/user distinction
It was a bad idea to remove it. Now that I'm introducing the concept of
a per-app glue file, it becomes much easier to build emulated zasm as a
userspace app.
5 years ago
Virgil Dupras
7fad3b0c90
Move /parts/z80 to /kernel
Let go of that "meta os" thing. it's not as meta as I made it sound
like. It's a kernel.
5 years ago
Virgil Dupras
78d9764005
zasm: can now assemble zasm/expr.asm!
5 years ago
Virgil Dupras
6cbce0533a
zasm: can now assemble zasm/instr.asm!
5 years ago
Virgil Dupras
ea8477bb91
zasm: accept whitespaces before separating comma
5 years ago
Virgil Dupras
3b1ef2b9af
zasm: bump global symbol limit to 0x200
5 years ago
Virgil Dupras
44abc79850
zasm: add support for SBC HL, ss
5 years ago
Virgil Dupras
d9fff16157
zasm emul: get rid of the kernel/user distinction
Made things complicated for nothing.
5 years ago
Virgil Dupras
98695f9912
zasm: de-index symRegister
Make symRegister's logic pointer-based so we can break through the 0x100
limit.
5 years ago
Virgil Dupras
c01816b055
zasm: make instr a bit more zasm-friendly
But we're still at a certain distance from assembling it with zasm:
we're busting the 0x100 symbol limit.
5 years ago
Virgil Dupras
bccf933ea9
zasm: try for regular number or symbol before parsing expr
Previously, we would mess up literals like '-'.
5 years ago
Virgil Dupras
723497af69
zasm: can now assemble zasm/directive.asm!
5 years ago
Virgil Dupras
9f6ebf538d
zasm: can assemble zasm/tok.asm!
5 years ago
Virgil Dupras
fd11941867
zasm: can now assemble zasm/parse.asm!
5 years ago
Virgil Dupras
2ce6b61964
zasm: add support for RLC r and RRC r
5 years ago
Virgil Dupras
29f0bcbe23
zasm: can now assemble zasm/symbol.asm!
5 years ago
Virgil Dupras
b7f5307de1
zasm: can now assemble zasm/io.asm!
5 years ago
Virgil Dupras
84090dcd14
zasm: add support for RL r and RR r
Also, make zasm assemble zasm/util.asm again!
5 years ago
Virgil Dupras
8832408e95
zasm: can now assemble fs.asm!
5 years ago
Virgil Dupras
d47d07757e
zasm: fix expr operator priority
5 years ago
Virgil Dupras
068e4327ec
zasm: fix false truncation error on "-" expressions
5 years ago
Virgil Dupras
650eec23de
zasm: add LD r, (IX/Y+d) support
5 years ago
Virgil Dupras
f44c3e5413
zasm: fix 3-digit hex parsing
5 years ago
Virgil Dupras
cdb6cce914
zasm: add multiplication expressions
5 years ago
Virgil Dupras
157ac03e25
zasm: can now assemble zasm/util.asm!
5 years ago
Virgil Dupras
28d5ebdc8a
Make apps folder into a namespace
To straighten out includes and to pave the way into zasm being part of
the same "include CFS" as parts, we make zasm includes namespaced.
5 years ago
Virgil Dupras
93e40aeb09
Strip comments out of code before packing CFS
This shrinks the CFS size to 21k from nearly 64K. This will allow me to
kick the can down the road a bit with regards to supporting storage
seek/tell greater than 64K.
I'll get to it, but first, I want to assemble zasm with zasm!
5 years ago
Virgil Dupras
ae2187ad06
zasm: avoid ';' literal
Simplifies comment stripping through sed.
5 years ago
Virgil Dupras
a3d3e0ce37
zasm: can now assemble the shell!
5 years ago