Virgil Dupras
67803f6cb5
zasm: don't upcase char literals
5 years ago
Virgil Dupras
72d2a8f073
zasm: add support for + expressions
5 years ago
Virgil Dupras
99a7c94c9f
zasm: make "double parsing" a bit more solid
It was previously skipped on a local label.
5 years ago
Virgil Dupras
7972b92be1
zasm: refactoring
5 years ago
Virgil Dupras
2c0166814f
zasm: support inline labels
That is, labels with code following right afterwards.
5 years ago
Virgil Dupras
a486a2a81e
zasm: support char literals
5 years ago
Virgil Dupras
2de69ee7cd
zasm: add support for local labels
5 years ago
Virgil Dupras
17dbee6a49
zasm: deduplicate code
5 years ago
Virgil Dupras
746c86cbf8
zasm: make getSymVal not responsible for calling symFind
With local labels, these two will have to be decoupled.
5 years ago
Virgil Dupras
c9deac599e
zasm: add support for LD r, r' instructions
5 years ago
Virgil Dupras
878bc2919f
zasm: add support for relative labels
5 years ago
Virgil Dupras
1e3982d3ab
zasm: make DE indicate the last line to be read
Facilitates debugging
5 years ago
Virgil Dupras
dd6fa5d38b
zasm: properly propagate error conditions
Gives clearer output on errors. Easier debugging...
5 years ago
Virgil Dupras
86cad39de4
zasm: fix wrong logic in .numberTruncated error condition
`xor c` didn't do what I thought it did at the time. Newbie mistake,
there are probably a lot like this scattered around...
5 years ago
Virgil Dupras
71cbd24e1f
Add filesystem docs
5 years ago
Virgil Dupras
4f44d3de63
parts/z80/fs: add "fopn" command
5 years ago
Virgil Dupras
9b4b907236
tools/emul/shell: fix srong SeekL return value
Also, add warning on attempts to write to ROM.
5 years ago
Virgil Dupras
51bab80a4c
parts/z80/fs: fix fsInitMeta writing to ROM
5 years ago
Virgil Dupras
1ea5bedb4f
blockdev: fix broken blkSeek/blkTell
scas didn't warn about this, but it seems that `jr` calls were out of
range. Seek and Tell was broken. Replacing `jr` with `jp` does the
trick.
5 years ago
Virgil Dupras
c77d96da22
blockdev: clarify routines specs
5 years ago
Virgil Dupras
a86738ae84
tools/emul/shell: add filesystem support
With the help of the newly-introduced cfspack tool, we can mount a
filesystem in our emulated shell and play around. Read-only for now.
Unpacking incoming.
5 years ago
Virgil Dupras
d6f5cf5b90
zasm: fix first pass inversion bug
Also, confirm in tests that we can refer to other symbols in `.equ`.
5 years ago
Virgil Dupras
6aa53afabc
zasm: add memdump mode
5 years ago
Virgil Dupras
89848dbfe2
zasm: add support for .equ
5 years ago
Virgil Dupras
6d4515cd03
zasm: little code reorganisation
5 years ago
Virgil Dupras
95f53d0ce3
zasm: support symbols in .dw directive
5 years ago
Virgil Dupras
c000d5cfb1
zasm: support forward label references!
5 years ago
Virgil Dupras
c239ec7dea
zasm: read input in two passes
5 years ago
Virgil Dupras
6a804a9c64
zasm: buffer stdin in emulator
Also, add a port for rewinding stdin.
5 years ago
Virgil Dupras
34ee91a0d7
zasm: use blkdev IDs as input and output
This will soon allow use to seek and tell on input, which is necessary
for a second pass which is necessary for forward symbol references.
This require making `blkSel` a bit more flexible. Rather than having one
global selected blkdev, each app can select its own, in its own memory
space.
5 years ago
Virgil Dupras
5a6078df4d
zasm: add support for hex literals
5 years ago
Virgil Dupras
b87feac785
zasm: add support for labels!
5 years ago
Virgil Dupras
1c17dcb7a2
zasm: consolidate code
5 years ago
Virgil Dupras
d34aff67bb
zasm: Read from and write to streams instead of memory
5 years ago
Virgil Dupras
7f27d63c19
Move apps/zasm/emul to tools/emul
5 years ago
Virgil Dupras
193e6e066c
Add tools/emul
5 years ago
Virgil Dupras
02808572e6
Update docs
5 years ago
Virgil Dupras
d8bc9c2bdd
parts/z80/sdc: implement blockdev's GetC
5 years ago
Virgil Dupras
65a666bfda
Re-license to GPLv3
I realize that libz80 is GPL and that this project is MIT. That's not
much of a problem as long as libz80 isn't a big part of the project, but
I'm planning on building more around libz80 so that zasm can replace
scas as an assembler even on modern machines (through an emulated
layer) so that this project can become entirely self-bootstrapped.
If I'm going to do that, I might as well be kosher license-wise. I
don't care much about whether the project is GPL or MIT...
5 years ago
Virgil Dupras
54d0286486
parts/z80/sdc: add sdcSetBlkSize and sdcReadBlk
5 years ago
Virgil Dupras
12ca2bd53e
parts/z80/sdc: add sdcInitialize
Also, adjust SD card recipe. Straightforward initialization and read!
5 years ago
Virgil Dupras
3d82d7fb30
recipe/rc2014/sdcard: we read data!
5 years ago
Virgil Dupras
beeb40eb93
recipe/rc2014/sdcard: we got out of initialization!
5 years ago
Virgil Dupras
c9f164a510
recipe/rc2014/sdcard: Make sdinit program output readable text
Makes for a more straightforward test.
5 years ago
Virgil Dupras
e80888555f
recipe/rc2014/sdcard: new recipe
5 years ago
Virgil Dupras
ef11059382
parts/z80/sdc: new part
Incomplete, but what it does *does* work. I could handshake CMD0+CMD8 on
a MicroSD HC.
5 years ago
Virgil Dupras
9c7f006d47
tools/upload: make I/O a bit slower
Without delays between read/writes, I often add lockups.
5 years ago
Virgil Dupras
cc62991f4e
Add tools/upload.py
5 years ago
Virgil Dupras
59b0c83b0e
shell: add iowr and iord
5 years ago
Virgil Dupras
f9ae5ca46b
zasm: simplify readWord calling
It always reads in the scratchpad with the same max size. No need for
DE-dancing anymore.
5 years ago