Toby Jaffey
1eb03f1747
Fix path
2025-12-11 20:53:03 +00:00
Toby Jaffey
42cd77a9ff
Cleanup paths
2025-12-11 20:35:39 +00:00
Toby Jaffey
da7f70c456
Initial test framework
...
Clean up makefiles
Everything buildable under docker (or natively)
2025-12-10 16:36:33 +00:00
Toby Jaffey
76fba39a21
Rework syscall ABI.
...
Syscalls now accept two parameters, allowing for things like "int count = read(buf, len)"
Rather than providing safe signatures for syscalls, the user is now given helper functions to safely parse incoming values, c-strings and slices.
2025-12-09 21:51:35 +00:00
Toby Jaffey
6735b159ac
Make syscall names closer to libc
2025-12-08 16:28:00 +00:00
Toby Jaffey
61fe0e8647
Rename ioreq to syscall
2025-12-08 12:26:47 +00:00
Toby Jaffey
a88f3a1690
Workaround for Rust having different system for templating constants to GNU as.
...
Having a separate file is ugly, but it allows for a single source of truth for constants
Works for C, asm, zig and rust.
https://stackoverflow.com/questions/79840723/shared-assembly-between-rust-and-c-using-preprocessor
2025-12-08 10:13:53 +00:00
Toby Jaffey
751f068486
Rework host/target interface to use ecall and proper syscalls instead of CSRs
2025-12-08 02:44:38 +00:00
Toby Jaffey
3e4c87fa1d
Rename emulator to host, for clarity
2025-12-06 22:37:10 +00:00
Toby Jaffey
c9d30b6d28
uvm32 initial version
2025-12-06 16:44:23 +00:00