aboutsummaryrefslogtreecommitdiffstats
path: root/atk16_schasm/main.scm
blob: 79f7686edcd3c02b2e519fd48a29d7c44afb5bda (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
(import (chicken base))

(load "lib.scm")

(define FL (reg 13))
(define PC (reg 14))
(define SP (reg 15))

(ld SP (imm 0))

(at-addr #x10)
(def-label 'reset-vector)
(emit #xF800)
(emit #xF801)

(at-addr #x20)
(def-label 'main)
(add (reg 1) (reg 2))
(add (reg 3) (imm #xFF))

;; abs jump
(ld PC (imm (label 'main)))

;; rel jump
(add PC (imm 10))

(mov (reg 0) (reg 1))