Commit graph

49 commits

Author SHA1 Message Date
Toby Jaffey
4dad76be61 Split docs 2025-12-12 16:43:00 +00:00
Toby Jaffey
60f362b819 h2 2025-12-12 15:06:03 +00:00
Toby Jaffey
e903e8271b Explanation 2025-12-12 15:05:34 +00:00
Toby Jaffey
ce63353156 Update makefile 2025-12-12 14:29:50 +00:00
Toby Jaffey
e7485d5972 SDL based host with extram mapped to framebuffer and simple gfx app to accompany it 2025-12-11 23:31:10 +00:00
Toby Jaffey
577aaadacd Zig allocator demo, using extram 2025-12-11 21:18:21 +00:00
Toby Jaffey
d8fc42a546 More broken links 2025-12-11 15:48:32 +00:00
Toby Jaffey
ece3c8766f Fix links 2025-12-11 15:46:43 +00:00
Toby Jaffey
67e8fe13c0 Add commandline parsing to host. Add -e <size in bytes> option to configure extram. 2025-12-11 15:44:17 +00:00
Toby Jaffey
93085f562c Clearer at small size 2025-12-11 13:50:55 +00:00
Toby Jaffey
809f8ce115 Add link nearer top 2025-12-11 12:17:49 +00:00
Toby Jaffey
df7b8fe70f Footprint calculations done by building an empty sketch for an Arduino then comparing to a (no io) VM sketch.
arduino-cli compile -b STMicroelectronics:stm32:GenL0 -e
2025-12-11 12:15:19 +00:00
Toby Jaffey
6b2063c6ab Build arduino code (for AVR) and allow test in qemu 2025-12-11 11:53:23 +00:00
Toby Jaffey
b55c2bc88a Add system for memory mapping a block of memory from the host. 2025-12-11 02:36:46 +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
5a0c70a017 Anti-crash goal 2025-12-10 11:07:24 +00:00
Toby Jaffey
47fd83ed4c Add yield 2025-12-10 11:05:22 +00:00
Toby Jaffey
b4f170b6b6 Fix links 2025-12-10 11:03:28 +00:00
Toby Jaffey
a027c3fe7f Why? 2025-12-10 10:59:35 +00:00
Toby Jaffey
28135f3005 Update yield info 2025-12-10 10:48:01 +00:00
Toby Jaffey
e07eeab043 Make yield a regular syscall taking an argument.
Allows "wait for interrupt"/"wait for event" type operation where VM code blocks until the host has something for it.
2025-12-10 10:35:18 +00:00
Toby Jaffey
d52baca7b2 Move example 2025-12-10 01:24:34 +00:00
Toby Jaffey
9596838a4b Recursive maze demo, causes big stack usage 2025-12-09 23:29:16 +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
f046a590c0 Memory setup 2025-12-09 14:50:23 +00:00
Toby Jaffey
37a178aad7 Remove refs to old CSRs 2025-12-09 01:23:46 +00:00
Toby Jaffey
2cafc6fd74 Cursor keys 2025-12-09 00:58:38 +00:00
Toby Jaffey
b34b144a8c Update example 2025-12-09 00:15:25 +00:00
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
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
bbf5ccafb6 "critical" fix 2025-12-08 16:40:59 +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
61fe0e8647 Rename ioreq to syscall 2025-12-08 12:26:47 +00:00
Toby Jaffey
441decc0a7 conio link 2025-12-08 10:55:26 +00:00
Toby Jaffey
f6cd790fcb ABI info 2025-12-08 07:31:21 +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
c0711213ae Add console tetris demo 2025-12-07 21:02:22 +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
4610e8ddaf Doc updates 2025-12-07 01:01:11 +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
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