Commit Graph

334 Commits

Author SHA1 Message Date
Virgil Dupras 807bd70b63 zasm emul: add dumpSymbolTable debug routine
Very helpful...
2019-05-17 13:22:45 -04:00
Virgil Dupras 072aad775a zasm: don't match prefixes in symFind
Only match when full names match.
2019-05-17 13:14:16 -04:00
Virgil Dupras 92a119105d zasm: add support for "0b" literals 2019-05-17 10:34:01 -04:00
Virgil Dupras 4075c90d44 Add unit test for zasm's parse unit 2019-05-17 10:00:30 -04:00
Virgil Dupras 7083116379 zasm: remove JUMP_ prefixes
They serve no purpose and make the code less flexible.
2019-05-17 09:50:11 -04:00
Virgil Dupras 013a3b74c8 Add the concept of unit tests
Will be much much easier to tests new core routines without having to
re-create their context first.

Also, extract parse.asm from core.asm
2019-05-17 09:33:20 -04:00
Virgil Dupras 45b8e84e2a shell: de-macro-ize 2019-05-17 08:21:37 -04:00
Virgil Dupras 56760b5aba stdio: de-macro-ize 2019-05-17 08:14:19 -04:00
Virgil Dupras dfce0d3a62 tools/emul: fix shell RAMSTART 2019-05-17 07:55:28 -04:00
Virgil Dupras def6c2123d tools/emul: clean up the place a bit 2019-05-17 07:23:59 -04:00
Virgil Dupras 2f0dd5d668 zasm: iiiiiiiincluuuuuuudes!!1! 2019-05-16 21:15:00 -04:00
Virgil Dupras a2d6cea72f cfspack: fix bug where we would underallocate blocks 2019-05-16 21:07:57 -04:00
Virgil Dupras e18879fcb2 zasm emul: hook fsdev in glue code 2019-05-16 13:23:23 -04:00
Virgil Dupras df67a38f81 Extract fs_cmds.asm from fs.asm 2019-05-16 13:20:29 -04:00
Virgil Dupras 23f0dc18ca zasm emul: add tooling for includes fsdev
On build, pack `parts/z80` into a CFS and embed it into the emulated
zasm executable as an fsdev. This will allow for the upcoming include
directive to have something to go to.

For now, this is useless except for inflating the emulated zasm's size.
2019-05-16 12:07:57 -04:00
Virgil Dupras 22c7eeaa5d Move apps/zasm/tests to tools/tests/zasm
This 'apps' folder is going to disappear. Everything is going to be a
"part" to be assembled through recipes. 'apps' has no meaning.
2019-05-16 11:23:15 -04:00
Virgil Dupras 0ae91e55ec zasm: big local symbols overhaul 2019-05-16 08:26:00 -04:00
Virgil Dupras fa28d64278 zasm: change ioRewind to ioSeek
Will need it soon.
2019-05-15 13:41:56 -04:00
Virgil Dupras 878bc2919f zasm: add support for relative labels 2019-05-12 22:07:21 -04:00
Virgil Dupras 1e3982d3ab zasm: make DE indicate the last line to be read
Facilitates debugging
2019-05-12 21:44:59 -04:00
Virgil Dupras 4f44d3de63 parts/z80/fs: add "fopn" command 2019-05-12 15:38:58 -04:00
Virgil Dupras 9b4b907236 tools/emul/shell: fix srong SeekL return value
Also, add warning on attempts to write to ROM.
2019-05-12 14:32:24 -04:00
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.
2019-05-12 11:20:31 -04:00
Virgil Dupras 6aa53afabc zasm: add memdump mode 2019-05-12 08:49:59 -04:00
Virgil Dupras c239ec7dea zasm: read input in two passes 2019-05-10 20:32:05 -04:00
Virgil Dupras 6a804a9c64 zasm: buffer stdin in emulator
Also, add a port for rewinding stdin.
2019-05-10 19:55:01 -04:00
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.
2019-05-10 19:33:34 -04:00
Virgil Dupras 5a6078df4d zasm: add support for hex literals 2019-05-09 22:14:11 -04:00
Virgil Dupras b87feac785 zasm: add support for labels! 2019-05-09 21:21:08 -04:00
Virgil Dupras d34aff67bb zasm: Read from and write to streams instead of memory 2019-05-09 15:36:03 -04:00
Virgil Dupras 7f27d63c19 Move apps/zasm/emul to tools/emul 2019-05-09 14:09:40 -04:00
Virgil Dupras 193e6e066c Add tools/emul 2019-05-09 12:58:41 -04:00
Virgil Dupras 9c7f006d47 tools/upload: make I/O a bit slower
Without delays between read/writes, I often add lockups.
2019-05-07 14:49:34 -04:00
Virgil Dupras cc62991f4e Add tools/upload.py 2019-05-06 10:18:11 -04:00