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
Virgil Dupras
6811d98618
zasm: add support for the ".dw" directive
5 years ago
Virgil Dupras
dde5161fc1
zasm: add support for ".db" directive
5 years ago
Virgil Dupras
28e1ba5e26
zasm: adjust parseLine success condition
De-couple "success" from "wrote something to (DE)" so that directive
parsing can be considered successful without writing to (DE).
5 years ago
Virgil Dupras
a00bc8cc4b
zasm: remove the "token" variable
5 years ago
Virgil Dupras
5fd9b7812c
zasm: make each token type parse the remaining of line directly
5 years ago
Virgil Dupras
a7693ffd86
zasm: still inching toward directives
5 years ago
Virgil Dupras
1ffe05dd09
zasm: creep in the notion of directive
5 years ago
Virgil Dupras
8241298c8f
zasm: code consolidation
5 years ago
Virgil Dupras
98ad223ee1
zasm: introduce the concept of instruction ID
It will make tokenization cleaner and it also makes the instruction
table significantly more compact.
5 years ago
Virgil Dupras
79b5c701f6
zasm: move token variables from tok.asm into main.asm
5 years ago
Virgil Dupras
a7635cb1ea
zasm: allow blank lines in asm source code
5 years ago
Virgil Dupras
eb5c974573
zasm: allow leading whitespace in parsed lines
5 years ago
Virgil Dupras
57c3dfece8
zasm: assemble multiple lines at once
5 years ago
Virgil Dupras
2653826dff
zasm: move zasm.asm to instr.asm and create main.asm
instr.asm is for single instruction assembly.
5 years ago
Virgil Dupras
175e1328e7
zasm: consolidate
* Build emulated zasm statically
* Improve comments in zasm.asm
* Fix build
* Use unsetZ from core
5 years ago
Virgil Dupras
055e0d7a31
Split parts in two: z80 and avr
Also, clarify the role of recipes.
5 years ago