Commit Graph

1530 Commits

Author SHA1 Message Date
Virgil Dupras 6597e8a75a doc: add emulate section 2019-04-16 11:37:04 -04:00
Virgil Dupras 056de2b19d doc: add glue code section 2019-04-16 11:26:58 -04:00
Virgil Dupras 7060ee4dc5 Add Status section to README 2019-04-16 10:52:29 -04:00
Virgil Dupras 6c4489d2a3 Add blockdev doc 2019-04-16 10:40:51 -04:00
Virgil Dupras 21eb64f751 blockdev: remove one layer of indirection
The approach used for shell extra commands also works for blockdev. Much
simpler and tighter this way.
2019-04-16 10:17:25 -04:00
Virgil Dupras a27da6f41a add mmap part
This also introduces the "seek" shell command.
2019-04-16 08:36:26 -04:00
Virgil Dupras af13b0bd00 Code consolidation 2019-04-16 08:35:44 -04:00
Virgil Dupras ce49fc15d0 blockdev: reorganize routine pointers
Also, add dummy seek reoutine.
2019-04-15 21:56:15 -04:00
Virgil Dupras a5addc989c shell: rename seek to mptr
going to use `seek` for block devices
2019-04-15 20:42:12 -04:00
Virgil Dupras c996da8ac8 shell: add error codes to cmds 2019-04-15 20:38:25 -04:00
Virgil Dupras 12c23f52e0 Add blockdev part
Also, add the ability for parts to define extra shell commands.
2019-04-15 16:53:11 -04:00
Virgil Dupras 4600b5299c shell: place cmd metadata next to the routine
This will facilitate the inclusion of extra commands other parts might
want to define.
2019-04-15 15:08:00 -04:00
Virgil Dupras f571664853 Improve user guide 2019-04-15 13:24:20 -04:00
Virgil Dupras 9aae4ea040 Add user guide 2019-04-15 12:10:41 -04:00
Virgil Dupras 26b125b337 shell: add shellParseArgs
Replaces individual command parsing. Quite a big and complex chunk of
code, but makes each command much simpler.
2019-04-14 23:14:07 -04:00
Virgil Dupras 83f63c7146 shell: add call command 2019-04-14 17:01:28 -04:00
Virgil Dupras e4c23b4270 shell: echo types letters right away
Easier to use this way...
2019-04-14 15:18:41 -04:00
Virgil Dupras 942ff37bf8 shell: implement load command 2019-04-14 14:53:16 -04:00
Virgil Dupras 461c09f1e5 Decouple shell from acia 2019-04-14 14:24:29 -04:00
Virgil Dupras 8ccddbcb0e Separate shell and acia input buffers
They serve a different purpose. The goal of the ACIA buffer is to ensure
that we don't miss an input. The goal of the shell buffer is to wait
until the user presses return.

The ACIA buffer has been moved to shell and replaced with a circular
buffer, a more appropriate data structure for this kind of purpose.

Also, introduce `aciaGetC`.
2019-04-14 14:04:31 -04:00
Virgil Dupras 902c6a5dd3 shell: add count arg to peek
Also, fix seek reversed endianness.
2019-04-14 11:54:18 -04:00
Virgil Dupras e4e7db8e23 shell: cleanup 2019-04-14 11:22:45 -04:00
Virgil Dupras 21168f6c4e shell: implement seek and peek
This introduces `core.asm` which includes routines used by other parts.
2019-04-14 11:17:38 -04:00
Virgil Dupras 9580cc3994 shell: add "seek" and "peek" dummy commands
This change introduces a command name matching algo.
2019-04-13 22:39:28 -04:00
Virgil Dupras 6bb454232a Extract "acia.asm" from shell
Also, come up with a way to make parts play well together memory-wise.
2019-04-13 16:01:20 -04:00
Virgil Dupras ac22a206ae shell: handle inputs with interrupts 2019-04-13 15:02:29 -04:00
Virgil Dupras 358c551bcc shell: add input routine 2019-04-12 21:28:50 -04:00
Virgil Dupras 89e4edfa52 Add parts/platforms 2019-04-12 15:53:05 -04:00
Virgil Dupras 7bf3e2f71e Let's get the ball rolling! 2019-04-12 15:16:12 -04:00
Virgil Dupras 503089a41c Initial commit 2019-03-06 14:28:56 -05:00