(loader '((title |takl.lo|)))
(loader'((fentry check-takl subr0)
(entry check-takl subr0)
(mov '(7 6 5 4 3 2 1) a2)
(mov '(test-takl 1) a1)
(jmp check-value)
))
(loader'((fentry meter-takl subr0)
(entry meter-takl subr0)
(mov 'takl a2)
(mov '(takl ll-18 ll-12 ll-6) a1)
(jmp perform-meter)
))
(loader'((fentry test-takl subr1)
(entry test-takl subr1)
(cabne a1 '1 104)
(mov (cvalq ll-6) a3)
(mov (cvalq ll-12) a2)
(mov (cvalq ll-18) a1)
(bra takl)
103
(push a1)
(mov (cvalq ll-6) a3)
(mov (cvalq ll-12) a2)
(mov (cvalq ll-18) a1)
(call takl)
(pop a1)
104
(sobgez a1 103)
(mov 't a1)
(return)
))
(loader'((fentry listn subr1)
(entry listn subr1)
(push a1)
(push (@ 103))
(push '0)
(push a1)
(mov '2 a4)
(jmp =)
103
(eval ())
(bfnil a1 101)
(mov (& 0) a4)
(diff '1 a4)
(mov a4 a1)
(jcall listn)
(mov a1 a2)
(mov (& 0) a1)
(adjstk '1)
(jmp cons)
101
(mov nil a1)
(adjstk '1)
(return)
))
(defvar ll-18 (listn 18))
(defvar ll-12 (listn 12))
(defvar ll-6 (listn 6))
(loader'((entry takl subr3)
(push a3)
(push a2)
(push a1)
(push a2)
(mov a1 a2)
(pop a1)
(call shorterp)
(bfnil a1 101)
(mov (& 2) a1)
(adjstk '3)
(return)
101
(mov (& 0) a1)
(mov (& 2) a3)
(mov (& 1) a2)
(mov (cdr a1) a1)
(call takl)
(push a1)
(mov (& 2) a1)
(mov (& 1) a3)
(mov (& 3) a2)
(mov (cdr a1) a1)
(call takl)
(push a1)
(mov (& 4) a1)
(mov (& 3) a3)
(mov (& 2) a2)
(mov (cdr a1) a1)
(call takl)
(mov a1 a3)
(pop a2)
(pop a1)
(adjstk '3)
(bra takl)
))
(loader'((entry shorterp subr2)
(btnil a2 101)
(btnil a1 103)
(mov (cdr a2) a2)
(mov (cdr a1) a1)
(bra shorterp)
103
(mov 't a1)
(return)
101
(mov nil a1)
(return)
))
(loader '((end)))