commit 7f79fb4ced52a3e457574df70715bdc89bbdb964
parent d52f8c55016a46522814644b5b81dfd8f22f2970
Author: Sylvia Ivory <git@sivory.net>
Date: Thu, 15 Jan 2026 19:49:11 -0800
Calculate final checksum
Diffstat:
3 files changed, 16 insertions(+), 7 deletions(-)
diff --git a/fake-pi/root.zig b/fake-pi/root.zig
@@ -6,6 +6,8 @@ const c = @cImport({
});
const BASE_ADDRESS: u32 = 0x2000_0000;
+const MAX_TRACE: usize = 128;
+
var trace_count: usize = 0;
var stdout_buffer: [4096]u8 = undefined;
@@ -33,6 +35,12 @@ fn trace(comptime format: []const u8, args: anytype) void {
};
trace_count += 1;
+
+ if (trace_count >= MAX_TRACE) {
+ trace_no_count("exiting after {} trace statements\n", .{trace_count});
+ trace_no_count("pi exited cleanly: {} calls to random\n", .{c.fake_random_calls()});
+ std.process.exit(0);
+ }
}
pub fn initialize() void {
@@ -79,3 +87,7 @@ export fn put_u32(address: *u32, value: u32) void {
}
export fn nop() void {}
+
+export fn delay_cycles(cycles: u32) void {
+ trace("delaying {} cycles\n", .{cycles});
+}
diff --git a/src/test-runner.zig b/src/test-runner.zig
@@ -36,11 +36,6 @@ export fn gpio_set_output(pin: u8) void {
gpio.set_output(pin) catch {};
}
-export fn delay_cycles(cycles: u32) void {
- // TODO;
- _ = cycles;
-}
-
pub fn kmain() void {
gpio.initialize(0x2000_0000);
c.notmain();
diff --git a/tests/runner b/tests/runner
@@ -17,9 +17,11 @@ echo "success"
# Final checksum
echo -n "calculating final checksum: "
+tmp_name=$(mktemp -d)
for test in tests/$1/*.c; do
name=$(basename $test)
- tmp_name=$(mktemp)
- ./zig-out/bin/${name}-test
+ ./zig-out/bin/${name}-test > ${tmp_name}/${name}.out
done
+
+find ${tmp_name} -type f | sort | xargs cksum | cksum