Toby Jaffey
c37286cf01
Add "self", example of building uvm32 to run inside uvm32
...
mandelbrot app is embedded in host-mini, which is then compiled to a .bin
2025-12-08 23:54:14 +00:00
Toby Jaffey
9be9e056cd
Use internal memcpy/memset
2025-12-08 23:48:50 +00:00
Toby Jaffey
d7673eb0b9
Add common typedefs
2025-12-08 23:48:32 +00:00
Toby Jaffey
3db1d2433b
Update to use mandel
2025-12-08 23:39:13 +00:00
Toby Jaffey
7e7cabeb24
Prettier, better terminal handling, more variation
2025-12-08 21:41:51 +00:00
Toby Jaffey
54f71f18c2
typo
2025-12-08 21:22:10 +00:00
Toby Jaffey
ebb6518ec3
Lissajous, showing floating point arithmetic
2025-12-08 21:20:57 +00:00
Toby Jaffey
de689bdeaf
Resume after hang (with warning)
2025-12-08 21:19:59 +00:00
Toby Jaffey
41a94d0629
Fix putc()
2025-12-08 20:45:39 +00:00
Toby Jaffey
ee2ba56423
Add cmdline option to host <file.bin> [max_instrs_to_run], to set instruction meter.
...
Allow a host to continue after a hung error, if it wants to.
So, a program with while(1) {} can be run indefinitely.
2025-12-08 20:36:00 +00:00
Toby Jaffey
bbf5ccafb6
"critical" fix
2025-12-08 16:40:59 +00:00
Toby Jaffey
6735b159ac
Make syscall names closer to libc
2025-12-08 16:28:00 +00:00
Toby Jaffey
1b868adf87
Fix link
2025-12-08 13:52:40 +00:00
Toby Jaffey
c691c3ebdf
Fix overly long event name
2025-12-08 13:04:05 +00:00
Toby Jaffey
86f93be100
objdump info
2025-12-08 13:02:00 +00:00
Toby Jaffey
6a7178d31a
SBI explanation
2025-12-08 12:55:53 +00:00
Toby Jaffey
a3c8b7584d
Remove debug
2025-12-08 12:54:30 +00:00
Toby Jaffey
9d6e6790e1
Cleanup syscall numbers
2025-12-08 12:53:33 +00:00
Toby Jaffey
61fe0e8647
Rename ioreq to syscall
2025-12-08 12:26:47 +00:00
Toby Jaffey
b79a107a3d
Remove single file
2025-12-08 12:18:54 +00:00
Toby Jaffey
441decc0a7
conio link
2025-12-08 10:55:26 +00:00
Toby Jaffey
274f347d90
Break console io example out into own app
2025-12-08 10:35:42 +00:00
Toby Jaffey
40e8795f3f
Explain the hack better
2025-12-08 10:30:33 +00:00
Toby Jaffey
5b2c82b85e
Fix for case sensitivity
2025-12-08 10:23:30 +00:00
Toby Jaffey
43bba100c1
Fix missing header on linux
2025-12-08 10:22:08 +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
2ccd3ac7f4
Trying to find some way to share constants
2025-12-08 09:55:47 +00:00
Toby Jaffey
f6cd790fcb
ABI info
2025-12-08 07:31:21 +00:00
Toby Jaffey
7bf906f369
Rename .s to .S so preprocessor runs ( https://stackoverflow.com/questions/33358825/gnu-assembler-preprocessor-define )
2025-12-08 02:45:38 +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
a305fce466
zigtris is > 16KB, so use 32KB for default host.
2025-12-07 21:12:48 +00:00
Toby Jaffey
c0711213ae
Add console tetris demo
2025-12-07 21:02:22 +00:00
Toby Jaffey
cd95e63af5
Flush output regularly, don't wait for keyboard.
2025-12-07 20:58:32 +00:00
Toby Jaffey
9e6f6c5a67
Added IOREQ_MILLIS and IOREQ_GETC to get current time and poll keyboard.
...
IOREQ_GETC implemented inefficiently, but is fine for demo purposes.
2025-12-07 20:29:10 +00:00
Toby Jaffey
af3b48cb01
Fix comment, uvm32_reset() doesn't exist
2025-12-07 13:13:36 +00:00
Toby Jaffey
c229170e3b
Move samples
2025-12-07 10:46:09 +00:00
Toby Jaffey
d8a2faf732
Minimal assembly example
2025-12-07 10:45:11 +00:00
Toby Jaffey
95333e06d8
More precompiled examples
2025-12-07 01:04:28 +00:00
Toby Jaffey
4610e8ddaf
Doc updates
2025-12-07 01:01:11 +00:00
Toby Jaffey
30cf60561f
Fibonacci sample
2025-12-07 01:00:52 +00:00
Toby Jaffey
f235265e3f
Set stack pointer to before core registers in RAM
2025-12-07 00:59:35 +00:00
Toby Jaffey
270fdb7cdc
Add note about using official rust on mac
2025-12-06 22:54:49 +00:00
Toby Jaffey
3e4c87fa1d
Rename emulator to host, for clarity
2025-12-06 22:37:10 +00:00
Toby Jaffey
6d12ce5a80
Add Arduino host sample.
...
Tested on Arduino Uno (ATMega328P)
Sketch uses 9950 bytes (30%) of program storage space. Maximum is 32256 bytes.
Global variables use 1254 bytes (61%) of dynamic memory, leaving 794 bytes for local variables. Maximum is 2048 bytes.
2025-12-06 22:29:29 +00:00
Toby Jaffey
047c9e3853
Move error strings out of header, to prevent unused warning
2025-12-06 21:35:00 +00:00
Toby Jaffey
51494ec10d
README style tweak
2025-12-06 16:45:23 +00:00
Toby Jaffey
c9d30b6d28
uvm32 initial version
2025-12-06 16:44:23 +00:00