diff options
| author | user <user@clank> | 2026-07-16 00:37:09 +0200 |
|---|---|---|
| committer | user <user@clank> | 2026-07-16 00:37:09 +0200 |
| commit | 2538b138946128cc5ff473e14ba9bde564aef2e9 (patch) | |
| tree | 26b9680b11c2c22b05154ed5166923d0e3fa8d97 /include/gbos.inc | |
| parent | wip: sys_read + serial console shell (read-store bug under investigation) (diff) | |
| download | gbos-2538b138946128cc5ff473e14ba9bde564aef2e9.tar.gz gbos-2538b138946128cc5ff473e14ba9bde564aef2e9.tar.xz gbos-2538b138946128cc5ff473e14ba9bde564aef2e9.zip | |
shell working: fix syscall ABI (trap clobbers HL) + document
- root cause of the read/echo corruption: SyscallTrap uses HL to index the
dispatch table, so HL is clobbered across a syscall; the shell then wrote its
buffer pointer's garbage into the $0000-$7FFF MBC register region, corrupting
the mapper. fix: userland saves HL around sys_read (push/pop).
- shell now runs commands end to end: $ hello -> hello world!, $ worker ->
worker!, $ foo -> ?
- README: document that syscalls clobber BC/DE/HL (return in A, B for wait);
add read + shell to the syscall table.
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions
