for now my build.zig is
const std = @import("std");
pub fn build(b: *std.build.Builder) void {
const target: std.zig.CrossTarget = .{
.cpu_arch = .wasm32,
.os_tag = .freestanding
};
const optimize = b.standardOptimizeOption(.{});
const cart = b.addSharedLibrary(.{
.name = "cart",
.root_source_file = .{ .path = "src/main.zig" },
.target = target,
.optimize = optimize,
});
cart.import_memory = true;
cart.initial_memory = 65536 * 4;
cart.max_memory = 65536 * 4;
cart.export_table = true;
cart.global_base = 96 * 1024;
cart.stack_size = 8192;
cart.export_symbol_names = &[_][]const u8{ "TIC", "OVR", "BDR", "SCR", "BOOT" };
cart.install();
const copy_step = b.addSystemCommand(&[_][]const u8 { "copy", "zig-out/lib/cart.wasm", "tic80fs/cart.wasm" });
copy_step.step.dependOn(b.getInstallStep());
const import_step = b.addSystemCommand(&[_][]const u8 { "./tic80.exe", "--fs=./tic80fs", "./tic80fs/cart.tic", "--cmd=\"import binary cart.wasm\""});
import_step.step.dependOn(©_step.step);
}