summaryrefslogtreecommitdiff
path: root/init.zig
diff options
context:
space:
mode:
Diffstat (limited to 'init.zig')
-rw-r--r--init.zig27
1 files changed, 27 insertions, 0 deletions
diff --git a/init.zig b/init.zig
new file mode 100644
index 0000000..be0bd10
--- /dev/null
+++ b/init.zig
@@ -0,0 +1,27 @@
+pub export fn _start() linksection(".vectors") callconv(.Naked) void {
+ asm volatile (
+ \\ rjmp reset ; jump to reset
+ \\ rjmp ext_int0
+ );
+}
+
+pub export const end_of_ram: u16 = 0x8FF;
+pub export fn reset() linksection(".vectors") callconv(.Naked) void {
+ asm volatile (
+ \\ sei
+ \\ rjmp main
+ );
+ // asm volatile (
+ // \\ ldi r16, hi8(%[ramend])
+ // \\ sts 0x3E, r16
+ // \\ ldi r16, lo8(%[ramend])
+ // \\ sts 0X3D, r16
+ // \\ sei
+ // \\ jmp main
+ // :
+ // : [ramend] "i" (end_of_ram)
+ // : "r16"
+ // );
+}
+
+pub export fn ext_int0() void {}