Commit graph

237 commits

Author SHA1 Message Date
Toby Jaffey
e903e8271b Explanation 2025-12-12 15:05:34 +00:00
Toby Jaffey
3722e4c267 Cleanup 2025-12-12 15:02:20 +00:00
Toby Jaffey
bba5fa654c Fix off-by-one error which refused to read final byte of extram 2025-12-12 15:01:56 +00:00
Toby Jaffey
cb717ed108 use only the amount of extram needed 2025-12-12 15:01:30 +00:00
Toby Jaffey
74267d94df Handle syscall cstring argument when pointing to extram 2025-12-12 14:45:25 +00:00
Toby Jaffey
ce63353156 Update makefile 2025-12-12 14:29:50 +00:00
Toby Jaffey
096efb3b2c Remove unused var 2025-12-12 14:26:30 +00:00
Toby Jaffey
ed57b62f79 Add render and getkey syscalls, for host-sdl use. 2025-12-12 14:25:01 +00:00
Toby Jaffey
9836500503 Handle mapping a buffer to extram 2025-12-12 14:24:34 +00:00
Toby Jaffey
238b4c5fcf Update for new sdl-host 2025-12-12 14:23:55 +00:00
Toby Jaffey
8598be727f Provide a framebuffer 320x200 (RGBA8888) on render(addr,len) syscall, copy from that VM memory location to framebuffer. 2025-12-12 14:22:42 +00:00
Toby Jaffey
2108083b75 Only send syscall every other frame, which makes VM stop to draw 2025-12-12 00:03:33 +00:00
Toby Jaffey
2d07f6fcc0 Munching squares 2025-12-11 23:53:43 +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
a5018dab2f Fix path 2025-12-11 20:53:56 +00:00
Toby Jaffey
1eb03f1747 Fix path 2025-12-11 20:53:03 +00:00
Toby Jaffey
5fc4575888 Add precompiled heap example 2025-12-11 20:37:33 +00:00
Toby Jaffey
dc93c314e6 Add uintptr_t 2025-12-11 20:36:49 +00:00
Toby Jaffey
447af909c2 Add memtest and heap examples to build 2025-12-11 20:36:17 +00:00
Toby Jaffey
dae3c272d4 Install bc in docker, used for arithmetic in makefiles 2025-12-11 20:35:56 +00:00
Toby Jaffey
42cd77a9ff Cleanup paths 2025-12-11 20:35:39 +00:00
Toby Jaffey
f27ed6213c Example of setting up malloc heap on extram 2025-12-11 20:35:11 +00:00
Toby Jaffey
7fae8c129f Zero extram on startup.
On crash, dump extram to file
2025-12-11 17:48:00 +00:00
Toby Jaffey
0ded19d04a Basic memory test 2025-12-11 17:46:20 +00:00
Toby Jaffey
6878c5210f Fix weird definition of NULL 2025-12-11 16:57:23 +00:00
Toby Jaffey
9287d7f6f4 Fix Dockerfile env 2025-12-11 16:08: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
3f21335fc3 Test that repeatedly stopping and starting results in executing exactly the same number of VM instructions 2025-12-11 13:16:46 +00:00
Toby Jaffey
da7f186ff7 Missing files 2025-12-11 13:03:40 +00:00
Toby Jaffey
7353810199 Move all host examples under host/ 2025-12-11 12:57:59 +00:00
Toby Jaffey
1213c5673f Do .bin inclusion in C code at build 2025-12-11 12:48:41 +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
7c9d56ee69 Add fib to apps makefile 2025-12-11 11:52:42 +00:00
Toby Jaffey
978ddb52f0 Fix memory size in extram test 2025-12-11 11:16:46 +00:00
Toby Jaffey
9ca720d35c auto-generate Arduino example, to keep in sync 2025-12-11 11:05:44 +00:00
Toby Jaffey
7a1656ab10 Handle 8, 16 and 32 bit accesses to extram. 2025-12-11 10:33:45 +00:00
Toby Jaffey
63386f9a92 Missing header 2025-12-11 02:40:30 +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
8802b4c268 Maze works at -O2 with -fpeel-loops 2025-12-11 01:33:04 +00:00
Toby Jaffey
a55300c8c3 Updated maze binary 2025-12-11 01:11:41 +00:00
Toby Jaffey
58f8caee5a Prevent gcc converting block copies/sets to memcpy() and memset(), which don't exist. 2025-12-11 01:10:55 +00:00
Toby Jaffey
59e6ebfedf Show pc on error 2025-12-11 01:10:12 +00:00
Toby Jaffey
1fa58ed800 On crash, dump the entire memory to a file 2025-12-11 00:22:19 +00:00
Toby Jaffey
15806b592b Rebuilt binaries 2025-12-11 00:01:03 +00:00