Files

77 lines
911 B
Plaintext

include print: "./print.dsa"
dw stack: 0x10000
_init:
ldw stack, bpr
mov bpr, spr
main:
push zero
call program
call print::print_hex_word
pop zero
hlt
program: func
push rg0
push rg1
lli 5, rg0
push rg0
lli 4, rg0
push rg0
pop rg1
pop rg0
sub rg0, rg1, rg0
push rg0
lli 4, rg0
push rg0
lli 3, rg0
push rg0
pop rg1
pop rg0
sub rg0, rg1, rg0
push rg0
lli 3, rg0
push rg0
lli 2, rg0
push rg0
pop rg1
pop rg0
sub rg0, rg1, rg0
push rg0
lli 2, rg0
push rg0
lli 1, rg0
push rg0
pop rg1
pop rg0
sub rg0, rg1, rg0
push rg0
lli 60, rg0
push rg0
pop rg1
pop rg0
add rg0, rg1, rg0
push rg0
pop rg1
pop rg0
add rg0, rg1, rg0
push rg0
pop rg1
pop rg0
add rg0, rg1, rg0
push rg0
pop rg1
pop rg0
add rg0, rg1, rg0
push rg0
// return value in bpr+8
pop rg0
stw rg0, bpr, 8
// epilogue
pop rg1
pop rg0
return