Virgil Dupras
c586c0d63c
Make the shell emulator be built by zasm
2019-05-20 07:29:19 -04:00
Virgil Dupras
fa3b86a5c1
zasm now bootstraps itself without scas!
2019-05-19 20:44:19 -04:00
Virgil Dupras
acddb045a5
zasm: add support for .org directive
2019-05-19 14:40:42 -04:00
Virgil Dupras
49be50b730
zasm now self-assembles!
2019-05-19 13:00:52 -04:00
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.
2019-05-19 12:57:59 -04:00
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.
2019-05-19 11:19:41 -04:00
Virgil Dupras
78d9764005
zasm: can now assemble zasm/expr.asm!
2019-05-19 10:45:11 -04:00
Virgil Dupras
6cbce0533a
zasm: can now assemble zasm/instr.asm!
2019-05-19 10:40:45 -04:00
Virgil Dupras
ea8477bb91
zasm: accept whitespaces before separating comma
2019-05-19 10:39:29 -04:00
Virgil Dupras
3b1ef2b9af
zasm: bump global symbol limit to 0x200
2019-05-19 09:54:42 -04:00
Virgil Dupras
44abc79850
zasm: add support for SBC HL, ss
2019-05-19 09:54:02 -04:00
Virgil Dupras
d9fff16157
zasm emul: get rid of the kernel/user distinction
...
Made things complicated for nothing.
2019-05-19 09:14:40 -04:00
Virgil Dupras
98695f9912
zasm: de-index symRegister
...
Make symRegister's logic pointer-based so we can break through the 0x100
limit.
2019-05-19 09:06:24 -04:00
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.
2019-05-18 21:07:35 -04:00
Virgil Dupras
bccf933ea9
zasm: try for regular number or symbol before parsing expr
...
Previously, we would mess up literals like '-'.
2019-05-18 21:06:31 -04:00
Virgil Dupras
723497af69
zasm: can now assemble zasm/directive.asm!
2019-05-18 20:37:34 -04:00
Virgil Dupras
9f6ebf538d
zasm: can assemble zasm/tok.asm!
2019-05-18 20:31:52 -04:00
Virgil Dupras
fd11941867
zasm: can now assemble zasm/parse.asm!
2019-05-18 19:59:58 -04:00
Virgil Dupras
2ce6b61964
zasm: add support for RLC r and RRC r
2019-05-18 19:59:31 -04:00
Virgil Dupras
29f0bcbe23
zasm: can now assemble zasm/symbol.asm!
2019-05-18 18:56:27 -04:00
Virgil Dupras
b7f5307de1
zasm: can now assemble zasm/io.asm!
2019-05-18 15:45:36 -04:00
Virgil Dupras
84090dcd14
zasm: add support for RL r and RR r
...
Also, make zasm assemble zasm/util.asm again!
2019-05-18 15:41:21 -04:00
Virgil Dupras
8832408e95
zasm: can now assemble fs.asm!
2019-05-18 15:18:19 -04:00
Virgil Dupras
d47d07757e
zasm: fix expr operator priority
2019-05-18 15:17:56 -04:00
Virgil Dupras
068e4327ec
zasm: fix false truncation error on "-" expressions
2019-05-18 14:51:11 -04:00
Virgil Dupras
650eec23de
zasm: add LD r, (IX/Y+d) support
2019-05-17 23:01:29 -04:00
Virgil Dupras
f44c3e5413
zasm: fix 3-digit hex parsing
2019-05-17 23:00:57 -04:00
Virgil Dupras
cdb6cce914
zasm: add multiplication expressions
2019-05-17 22:22:10 -04:00
Virgil Dupras
157ac03e25
zasm: can now assemble zasm/util.asm!
2019-05-17 20:47:43 -04:00
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.
2019-05-17 20:22:32 -04:00
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!
2019-05-17 19:54:35 -04:00
Virgil Dupras
ae2187ad06
zasm: avoid ';' literal
...
Simplifies comment stripping through sed.
2019-05-17 19:49:37 -04:00
Virgil Dupras
a3d3e0ce37
zasm: can now assemble the shell!
2019-05-17 19:36:32 -04:00
Virgil Dupras
d58cf122a8
zasm: fix regression with lowercase (ix+d) parsing
2019-05-17 19:32:58 -04:00
Virgil Dupras
2a97966bdc
zasm: add LD IX/IY, NN instructions
2019-05-17 17:43:42 -04:00
Virgil Dupras
21c49d80cf
zasm: allow single quote to contain whitespace
2019-05-17 17:22:16 -04:00
Virgil Dupras
40d5530666
zasm: allow expression in .db
2019-05-17 17:21:49 -04:00
Virgil Dupras
556be3f0ce
zasm: allow for whitespace inside string literals
...
Also, increase scratchpad size. It wasn't big enough for some
expressions in shell unit.
2019-05-17 16:44:08 -04:00
Virgil Dupras
f9dac15449
zasm: add support for string literals in .db
2019-05-17 16:17:22 -04:00
Virgil Dupras
b499d320de
zasm: can now assemble stdio!
2019-05-17 15:43:44 -04:00
Virgil Dupras
16922da3d4
zasm: support multiple elements in .dw and .db
2019-05-17 15:39:28 -04:00
Virgil Dupras
b0318f4891
zasm: make instr unt write directly to ioPutC
...
Couldn't get rid of instrUpcode though, too complicated.
2019-05-17 15:35:49 -04:00
Virgil Dupras
26d6dd1912
zasm: remove direcData buffer
2019-05-17 15:14:38 -04:00
Virgil Dupras
ad7428e471
zasm: make io unit handle PC and output suppression
2019-05-17 14:58:16 -04:00
Virgil Dupras
6547e83f20
zasm: improve comma processing
...
We don't treat "," exactly as a whitespace anymore. We have specific
processing for it.
2019-05-17 14:34:38 -04:00
Virgil Dupras
4c37d869f4
zasm: now assembles blockdev!
2019-05-17 14:07:07 -04:00
Virgil Dupras
b8ece0bf98
blockdev: make zasm-friendly
2019-05-17 14:06:10 -04:00
Virgil Dupras
3a91e9eb46
zasm: add support for PUSH/POP IX/IY
2019-05-17 14:00:37 -04:00
Virgil Dupras
26e5c1de43
zasm can now assemble acia!
2019-05-17 13:23:16 -04:00
Virgil Dupras
807bd70b63
zasm emul: add dumpSymbolTable debug routine
...
Very helpful...
2019-05-17 13:22:45 -04:00