From: Clyne Sullivan Date: Sun, 6 Oct 2024 14:17:57 +0000 (-0400) Subject: clean up vtor set X-Git-Url: https://code.bitgloo.com/?a=commitdiff_plain;h=64df2e9f313ca8b22310f839ab50f7ec2628ec25;p=clyne%2Fzig-stm32l476.git clean up vtor set --- diff --git a/src/interrupt.zig b/src/interrupt.zig index 60faec6..2fe1671 100644 --- a/src/interrupt.zig +++ b/src/interrupt.zig @@ -1,5 +1,6 @@ -var vector_table: [256] *const fn () void = undefined; -var vtor: *u32 = @ptrFromInt(0xE000ED08); +const vector_table_type = [256] *const fn () void; +var vector_table: vector_table_type = undefined; +var vtor: **volatile vector_table_type = @ptrFromInt(0xE000ED08); pub const vector = enum(u8) { NMI = 2, @@ -25,7 +26,7 @@ pub fn initialize() void { register(.BusFault, busfault); register(.UsageFault, usagefault); - vtor.* = @as(u32, @intFromPtr(&vector_table)); + vtor.* = &vector_table; } pub fn register(index: vector, handler: *const fn () void) void {