diff options
| author | Jan Tuomi <jan@jantuomi.fi> | 2025-03-13 18:49:41 +0200 |
|---|---|---|
| committer | Jan Tuomi <jan@jantuomi.fi> | 2025-03-13 18:49:41 +0200 |
| commit | 06e8b8dbadf769507abf5368caee253ded139adc (patch) | |
| tree | 0e4d7b495ecba85afc2738ff7ca254880f5b922c /atk16_schasm/main.scm | |
| parent | 7f83828988c2efab56f37c1711cbf6118be8234f (diff) | |
Improvements
Diffstat (limited to 'atk16_schasm/main.scm')
| -rw-r--r-- | atk16_schasm/main.scm | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/atk16_schasm/main.scm b/atk16_schasm/main.scm index 4dc353a..62d2919 100644 --- a/atk16_schasm/main.scm +++ b/atk16_schasm/main.scm @@ -8,7 +8,7 @@ (emit-word #x1234) ;; compile instructions -(ld SP ZR (u16 0)) +(%ld SP ZR (u16 0)) ;; set labels (def-label 'some-data @@ -18,19 +18,19 @@ ;; set the current emit address (at-addr #x20) (def-label 'main - (add R1 R2) - (add R3 (u16 #xFF))) + (%add R1 R2) + (%add R3 (u16 #xFE))) ;; abs jump -(ld PC ZR (label 'main)) +(%ld PC (label 'main)) ;; rel jump -(add PC (i16 10)) +(%add PC (i16 10)) ;; jump forward to a currently undefined label -(ld PC ZR (label 'forward)) +(%ld PC (label 'forward)) (def-label 'forward - (hlt)) + (%hlt)) ;; store string data in memory (def-label 'text-data @@ -39,7 +39,7 @@ (at-addr #x50) ;; branch based on an ALU flag -(br flag-carry (label 'branch-true) set: #t) +(%br flag-carry (label 'branch-true) #:asserted #t) (def-label 'branch-false (emit-word 1)) (def-label 'branch-true @@ -66,10 +66,10 @@ ) ;; procedure calls -(ld R1 ZR (u16 10)) +(%ld R1 (u16 10)) (%while (R1 > (u16 0)) (%call println (label 'text-data)) - (sub R1 (u16 1))) + (%sub R1 (u16 1))) ;; compile to a 128KB image file (write-image-to "out.bin") |
