summary refs log tree commit diff
path: root/code/test_clock.a
diff options
context:
space:
mode:
authorWlodekM <[email protected]>2025-03-31 19:27:55 +0300
committerWlodekM <[email protected]>2025-03-31 19:27:55 +0300
commitef4e8c20719822eebd6318a878cc37902c2b85a5 (patch)
treec80cc67921c8b511f5a50ec68834b5b28deb05a1 /code/test_clock.a
pc thing
Diffstat (limited to 'code/test_clock.a')
-rw-r--r--code/test_clock.a53
1 files changed, 53 insertions, 0 deletions
diff --git a/code/test_clock.a b/code/test_clock.a
new file mode 100644
index 0000000..fe0f539
--- /dev/null
+++ b/code/test_clock.a
@@ -0,0 +1,53 @@
+.label counter 0
+
+jmp start
+
+interrupt:
+    ld a counter
+    mov b 1
+    add
+    swp c a
+    mov b 100
+    mod
+    str c counter
+    cmp c 0
+    jnz print_numb
+    ret
+
+#using code/printer.a
+
+print_numb:
+    ld a [counter]
+    mov b 1
+    add
+    str c [counter]
+    str c 16 ; put our number into 16
+    jmr print_num ; print number at 16 (well not print but stringify)
+    mov a 1 ; write
+    mov b 1 ; stdout
+    mov c 32 ; address
+    sys ; syscall
+    ret
+
+
+start:
+    mov a helloworld
+    mov b 1
+    sub
+    mov a 1
+    mov b 1
+    sys
+    mov a interrupt
+    mov b 1
+    sub
+    str c 0x7000
+    ; nl:
+    ; jmp nl
+    halt
+
+helloworld:
+.str "Hello, World!"
+.hex a
+.hex 0
+counter:
+.hex 0
\ No newline at end of file