Last active
February 13, 2018 16:10
-
-
Save zeptometer/ec4d26e7bd07bd9464b81038f263cdad to your computer and use it in GitHub Desktop.
syntax-rules backend for ELVMの途中報告
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;;; CK machine | |
;;; For detail, see http://okmij.org/ftp/Scheme/macros.html#ck-macros | |
(define-syntax ck | |
(syntax-rules (quote) | |
((_ () 'v) 'v) | |
((_ (((op ...) ea ...) . s) 'v) | |
(ck s "arg" (op ... 'v) ea ...)) | |
((_ s "arg" (op va ...)) | |
(op s va ...)) | |
((_ s "arg" (op ...) 'v ea1 ...) | |
(ck s "arg" (op ... 'v) ea1 ...)) | |
((_ s "arg" (op ...) ea ea1 ...) | |
(ck (((op ...) ea1 ...) . s) ea)) | |
((_ s (op ea ...)) | |
(ck s "arg" (op) ea ...)))) | |
;;; Arighmetic Functions | |
;; Natural numbers are represented in little-endian 01 list | |
;; ex: 0 = () | |
;; 4 = (0 0 1) | |
;; 13 = (1 0 1 1) | |
(define-syntax normalize! | |
;; remove trailing zeros | |
;; (normalize! '(1 0 0 0 )) => '(1) | |
(syntax-rules (quote) | |
; optional argument | |
((_ s x) | |
(normalize! s x '())) | |
; main | |
((_ s '(0 ...) x) | |
(ck s x)) | |
((_ s '(i x ...) '(y ...)) | |
(normalize! s '(x ...) '(y ... i))))) | |
(define-syntax inc! | |
;; (inc! x y) => y ++ (x + 1) | |
(syntax-rules (quote) | |
;; optional | |
((_ s x) | |
(inc! s x '())) | |
;; main | |
((_ s '() '(y ...)) | |
(ck s '(y ... 1))) | |
((_ s '(0 x ...) '(y ...)) | |
(ck s '(y ... 1 x ...))) | |
((_ s '(1 x ...) '(y ...)) | |
(inc! s '(x ...) '(y ... 0))))) | |
(define-syntax dec! | |
;; (dec! x y) => y ++ (x - 1) | |
(syntax-rules (quote) | |
((_ s '() _) | |
(syntax-error "error: underflow")) | |
((_ s '(0 x ...) '(y ...)) | |
(dec! s '(x ...) '(y ... 1))) | |
((_ s '(1 x ...) '(y ...)) | |
(normalize! s '(y ... 0 x ...))))) | |
(define-syntax add! | |
;; (add! x y) => x + y | |
(syntax-rules (quote) | |
;;; initialize | |
((_ s x y) (add! s x y '0 '())) | |
;;; corner case | |
((_ s '() '(y ...) '0 '(z ...)) | |
(ck s '(z ... y ...))) | |
((_ s '(x ...) '() '0 '(z ...)) | |
(ck s '(z ... x ...))) | |
((_ s '() 'ys '1 'zs) | |
(inc! s 'ys 'zs)) | |
((_ s 'xs '() '1 'zs) | |
(inc! s 'xs 'zs)) | |
;;; general case | |
((_ s '(0 . x) '(0 . y) '0 '(buf ...)) | |
(add! s 'x 'y '0 '(buf ... 0))) | |
((_ s '(1 . x) '(0 . y) '0 '(buf ...)) | |
(add! s 'x 'y '0 '(buf ... 1))) | |
((_ s '(0 . x) '(1 . y) '0 '(buf ...)) | |
(add! s 'x 'y '0 '(buf ... 1))) | |
((_ s '(1 . x) '(1 . y) '0 '(buf ...)) | |
(add! s 'x 'y '1 '(buf ... 0))) | |
((_ s '(0 . x) '(0 . y) '1 '(buf ...)) | |
(add! s 'x 'y '0 '(buf ... 1))) | |
((_ s '(1 . x) '(0 . y) '1 '(buf ...)) | |
(add! s 'x 'y '1 '(buf ... 0))) | |
((_ s '(0 . x) '(1 . y) '1 '(buf ...)) | |
(add! s 'x 'y '1 '(buf ... 0))) | |
((_ s '(1 . x) '(1 . y) '1 '(buf ...)) | |
(add! s 'x 'y '1 '(buf ... 1))))) | |
(define-syntax sub! | |
;; (sub! x y) => x - y when x >= y | |
;; | error otherwise | |
(syntax-rules (quote) | |
;; initialize | |
((_ s x y) (sub! s x y '0 '())) | |
;; corner case | |
((_ s '(x ...) '() '0 '(z ...)) | |
(ck s (normalize! '(z ... x ...)))) | |
((_ s '() '(y ...) _ __) | |
(syntax-error "error: underflow")) | |
((_ s 'xs '() '1 'zs) | |
(ck s (dec! 'xs 'zs))) | |
;; general case | |
((_ s '(0 . x) '(0 . y) '0 '(buf ...)) | |
(sub! s 'x 'y '0 '(buf ... 0))) | |
((_ s '(1 . x) '(0 . y) '0 '(buf ...)) | |
(sub! s 'x 'y '0 '(buf ... 1))) | |
((_ s '(0 . x) '(1 . y) '0 '(buf ...)) | |
(sub! s 'x 'y '1 '(buf ... 1))) | |
((_ s '(1 . x) '(1 . y) '0 '(buf ...)) | |
(sub! s 'x 'y '0 '(buf ... 0))) | |
((_ s '(0 . x) '(0 . y) '1 '(buf ...)) | |
(sub! s 'x 'y '1 '(buf ... 1))) | |
((_ s '(1 . x) '(0 . y) '1 '(buf ...)) | |
(sub! s 'x 'y '0 '(buf ... 0))) | |
((_ s '(0 . x) '(1 . y) '1 '(buf ...)) | |
(sub! s 'x 'y '1 '(buf ... 0))) | |
((_ s '(1 . x) '(1 . y) '1 '(buf ...)) | |
(sub! s 'x 'y '1 '(buf ... 1))))) | |
(define-syntax cmp%! | |
;; (cmp%! 'x 'y) => '((x <= y) (x < y)) | |
;; assume that x and y are normalized | |
(syntax-rules (quote) | |
;; optional arguemnt | |
((_ s x y) | |
(cmp%! s x y '"=")) | |
;; main | |
;; when x and y are of same width | |
((_ s '() '() '"=") | |
(ck s '(1 0))) | |
((_ s '() '() '"<") | |
(ck s '(1 1))) | |
((_ s '() '() '">") | |
(ck s '(0 0))) | |
;; when different width | |
((_ s '() _ __) | |
(ck s '(1 1))) | |
((_ s _ '() __) | |
(ck s '(0 0))) | |
;; recursion | |
((_ s '(0 x ...) '(0 y ...) c) | |
(cmp%! s '(x ...) '(y ...) c)) | |
((_ s '(1 x ...) '(1 y ...) c) | |
(cmp%! s '(x ...) '(y ...) c)) | |
((_ s '(0 x ...) '(1 y ...) _) | |
(cmp%! s '(x ...) '(y ...) '"<")) | |
((_ s '(1 x ...) '(0 y ...) _) | |
(cmp%! s '(x ...) '(y ...) '">")))) | |
(define-syntax cmp! | |
;; (cmp! op x y) | |
;; => 1 (= '(1)) when op x y satisfied | |
;; 0 (= '()) otherwise | |
;; op := "eq" "ne" "lt" "gt" "le" "ge" | |
(syntax-rules (quote) | |
;; wrap | |
((_ s op x y) | |
(ck s (cmp! op (cmp%! x y)))) | |
;; main | |
((_ s '"EQ" '(1 0)) (ck s '(1))) | |
((_ s '"NE" '(0 _)) (ck s '(1))) | |
((_ s '"NE" '(1 1)) (ck s '(1))) | |
((_ s '"LT" '(1 1)) (ck s '(1))) | |
((_ s '"LE" '(1 0)) (ck s '(1))) | |
((_ s '"GT" '(0 0)) (ck s '(1))) | |
((_ s '"GE" '(_ 0)) (ck s '(1))) | |
((_ s _ __) (ck s '())))) | |
(define-syntax if! | |
;; (if! bool then else) | |
;; => else when bool == 0 | |
;; then otherwise | |
(syntax-rules (quote) | |
((_ s '() 'then 'else) (ck s else)) | |
((_ s _ 'then 'else) (ck s then)))) | |
;;; Word utilities | |
(define-syntax num-to-word! | |
;; Coerce little-endian number to big-endian word | |
;; (for num-to-addr and num-to-byte) | |
(syntax-rules (quote) | |
((_ s _ x '()) (ck s x)) | |
((_ s '(i x ...) '(y ...) '(0 z ...)) | |
(num-to-word! s '(x ...) '(i y ...) '(z ...))) | |
((_ s '() '(y ...) '(0 z ...)) | |
(num-to-word! s '() '(0 y ...) '(z ...))))) | |
(define-syntax num-to-addr! | |
(syntax-rules (quote) | |
((_ s x) (num-to-word! s x '() | |
'(0 0 0 0 0 0 0 0 | |
0 0 0 0 0 0 0 0 | |
0 0 0 0 0 0 0 0))))) | |
(define-syntax num-to-byte! | |
(syntax-rules (quote) | |
((_ s x) (num-to-word! s x '() '(0 0 0 0 0 0 0 0))))) | |
;;; Memory Utilities | |
;; | |
;; Memory is represented as a binary tree. The address space is 24-bit, | |
;; and an address is a 24-bit big-endian 01-list. | |
;; To reduce memory consumption, empty binary tree can be represented | |
;; just as an empty list. | |
;;; Binary Lookup Table | |
;; Constructor | |
(define-syntax cons! | |
(syntax-rules (quote) | |
((_ s 'x 'y) (ck s '(x . y))))) | |
(define-syntax lookup! | |
;; (lookup! addr table) => table[addr] | |
;; note that $addr is big endian | |
(syntax-rules (quote) | |
((_ s '() d) (ck s d)) | |
((_ s '(0 . r) '(d . _)) (lookup! s 'r 'd)) | |
((_ s '(1 . r) '(_ . d)) (lookup! s 'r 'd)) | |
;; when memory is empty, return 0 (= '()) | |
((_ s _ '()) (ck s '())))) | |
(define-syntax update! | |
;; (update! addr val table) => table[addr] := val | |
(syntax-rules (quote) | |
((_ s '() val _) (ck s val)) | |
((_ s '(0 . a) val '(r . l)) (ck s (cons! (update! 'a val 'r) 'l))) | |
((_ s '(1 . a) val '(r . l)) (ck s (cons! 'r (update! 'a val 'l)))) | |
;; when memory is empty, create a binary tree | |
((_ s '(0 . a) val '()) (ck s (cons! (update! 'a val '()) '()))) | |
((_ s '(1 . a) val '()) (ck s (cons! '() (update! 'a val '())))))) | |
;;; VM consists of: | |
;;; * execution state := "load" | "exec" | |
;;; * PC : number | |
;;; * six registers A, B, C, D, SP, and BP : number | |
;;; * data memory : binary tree of number | |
;;; * instruction memory : binary tree of instructions | |
;;; * input stack : stack of bytes | |
;;; * output stack : stack of bytes | |
;;; Instruction format | |
;;; Inst := ("MOV" dst src) | |
;;; | ("ADD" dst src) | |
;;; | ("SUB" dst src) | |
;;; | ("LOAD" dst src) | |
;;; | ("STORE" src dst) | |
;;; | ("PUTC" src) | |
;;; | ("GETC" dst) | |
;;; | ("EXIT") | |
;;; | ("JCOND" op jmp dst src) | |
;;; | ("JMP" jmp) | |
;;; | ("CMP" op dst src) | |
;;; Virtual Machine | |
(define-syntax eval-r! | |
(syntax-rules (quote) | |
((_ s '(a b c d sp bp) '"A") (ck s 'a)) | |
((_ s '(a b c d sp bp) '"B") (ck s 'b)) | |
((_ s '(a b c d sp bp) '"C") (ck s 'c)) | |
((_ s '(a b c d sp bp) '"D") (ck s 'd)) | |
((_ s '(a b c d sp bp) '"SP") (ck s 'sp)) | |
((_ s '(a b c d sp bp) '"BP") (ck s 'bp)))) | |
(define-syntax eval-ir! | |
(syntax-rules (quote) | |
((_ s reg '("REG" r)) (eval-r! s reg 'r)) | |
((_ s reg '("IMM" i)) (ck s 'i)))) | |
(define-syntax update-reg! | |
(syntax-rules (quote) | |
((_ s '(a b c d sp bp) '"A" 'v) (ck s '(v b c d sp bp))) | |
((_ s '(a b c d sp bp) '"B" 'v) (ck s '(a v c d sp bp))) | |
((_ s '(a b c d sp bp) '"C" 'v) (ck s '(a b v d sp bp))) | |
((_ s '(a b c d sp bp) '"D" 'v) (ck s '(a b c v sp bp))) | |
((_ s '(a b c d sp bp) '"SP" 'v) (ck s '(a b c d v bp))) | |
((_ s '(a b c d sp bp) '"BP" 'v) (ck s '(a b c d sp v ))))) | |
(define-syntax write! | |
(syntax-rules (quote) | |
((_ s '(o ...) 'v) (ck s '(o ... v))))) | |
(define-syntax peek! | |
(syntax-rules (quote) | |
((_ s '(x _ ...)) (ck s 'x)) | |
((_ s '()) (ck s '())))) | |
(define-syntax pop! | |
(syntax-rules (quote) | |
((_ s '(_ x ...)) (ck s '(x ...))) | |
((_ s '()) (ck s '())))) | |
(define-syntax run-vm! | |
(syntax-rules (quote) | |
;; load instruction | |
((_ s '"load" pc reg dmem imem i o) | |
(ck s (run-vm! '"exec" (lookup! (num-to-addr! pc) imem) | |
pc reg dmem imem i o))) | |
;; execute instruction | |
((_ s '"exec" '() pc reg dmem imem i o) | |
(ck s (run-vm! '"load" (inc! pc) reg dmem imem i o))) | |
((_ s '"exec" '(("MOV" dst src) . rest) pc reg dmem imem i o) | |
(ck s (run-vm! '"exec" 'rest | |
pc (update-reg! reg 'dst (eval-ir! reg 'src)) | |
dmem imem i o))) | |
((_ s '"exec" '(("ADD" dst src) . rest) pc reg dmem imem i o) | |
(ck s (run-vm! '"exec" 'rest | |
pc | |
(update-reg! reg 'dst (add! (eval-r! reg 'dst) | |
(eval-ir! reg 'src))) | |
dmem imem i o))) | |
((_ s '"exec" '(("SUB" dst src) . rest) pc reg dmem imem i o) | |
(ck s (run-vm! '"exec" 'rest | |
pc | |
(update-reg! reg 'dst (sub! (eval-r! reg 'dst) | |
(eval-ir! reg 'src))) | |
dmem imem i o))) | |
((_ s '"exec" '(("LOAD" dst src) . rest) pc reg dmem imem i o) | |
(ck s (run-vm! '"exec" 'rest | |
pc | |
(update-reg! reg 'dst | |
(lookup! (num-to-addr! (eval-ir! reg 'src)) | |
dmem)) | |
dmem imem i o))) | |
((_ s '"exec" '(("STORE" src dst) . rest) pc reg dmem imem i o) | |
(ck s (run-vm! '"exec" 'rest | |
pc reg | |
(update! (num-to-addr! (eval-ir! reg 'dst)) | |
(eval-r! reg 'src) dmem) | |
imem i o))) | |
((_ s '"exec" '(("PUTC" src) . rest) pc reg dmem imem i o) | |
(ck s (run-vm! '"exec" 'rest | |
pc reg dmem imem i | |
(write! o (num-to-byte! (eval-ir! reg 'src)))))) | |
((_ s '"exec" '(("GETC" dst) . rest) pc reg dmem imem i o) | |
(ck s (run-vm! '"exec" 'rest | |
pc | |
(update-reg! reg 'dst (peek! i)) dmem imem | |
(pop! i) o))) | |
((_ s '"exec" '(("EXIT") . _) pc reg dmem imem i o) | |
;; When the vm reach EXIT, it stops execution. | |
;; Therefore it does not call ck. | |
(emit! o)) | |
((_ s '"exec" '(("JCOND" op jmp dst src) . rest) pc reg dmem imem i o) | |
(ck s (if! (cmp! 'op (eval-ir! reg 'src) (eval-r! reg 'dst)) | |
'(run-vm! '"load" (eval-ir! reg 'jmp) reg dmem imem i o) | |
'(run-vm! '"exec" 'rest pc reg dmem imem i o)))) | |
((_ s '"exec" '(("JMP" jmp) . _) pc reg dmem imem i o) | |
(ck s (run-vm! '"load" (eval-ir! reg 'jmp) reg dmem imem i o))) | |
((_ s '"exec" '(("CMP" op dst src) . rest) pc reg dmem imem i o) | |
(ck s (run-vm! '"exec" 'rest | |
pc | |
(update-reg! reg 'dst (cmp! 'op (eval-r! reg 'dst) | |
(eval-ir! reg 'src))) | |
dmem imem i o))))) | |
;;; Emitter | |
(define (fold fn l i) | |
(if (null? l) | |
i | |
(fold fn (cdr l) (fn (car l) i)))) | |
(define (blist->num blist) | |
(fold (lambda (x i) (+ x (* 2 i))) blist 0)) | |
(define-syntax emit! | |
(syntax-rules (quote) | |
((_ o) | |
(for-each (lambda (blist) (write-char (integer->char | |
(blist->num blist)))) | |
o)))) | |
(define-syntax func-impl0! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 0 1 0 0 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl1! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 0 1 0 1 1 ))) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl2! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl3! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl4! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl5! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl6! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl7! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 1 ))) | |
))))) | |
(define-syntax func-impl8! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl9! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl10! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl11! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl12! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl13! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("SUB" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl14! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("ADD" "A" ("IMM" (1 ))) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl15! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 0 1 0 1 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl16! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl17! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl18! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl19! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl20! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl21! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl22! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (0 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl23! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl24! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl25! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl26! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl27! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl28! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl29! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl30! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl31! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl32! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl33! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("SUB" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl34! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl35! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl36! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl37! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl38! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl39! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl40! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl41! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 1 ))) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl42! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl43! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl44! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 0 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl45! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl46! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 0 0 1 1 ))) | |
))))) | |
(define-syntax func-impl47! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl48! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl49! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 1 0 0 1 1 ))) | |
))))) | |
(define-syntax func-impl50! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl51! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl52! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 1 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl53! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl54! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (0 0 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl55! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl56! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl57! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl58! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 0 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl59! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl60! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl61! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 0 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl62! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 0 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl63! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl64! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl65! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl66! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 0 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl67! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl68! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl69! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 1 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl70! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl71! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (1 0 0 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl72! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl73! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl74! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl75! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl76! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl77! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl78! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 0 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl79! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 0 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl80! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 0 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl81! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 0 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl82! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 1 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl83! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 0 1 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl84! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl85! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 1 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl86! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 0 0 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl87! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl88! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "NE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl89! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl90! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 1 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl91! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl92! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl93! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 0 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl94! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 0 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl95! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 0 0 0 1 1 ))) | |
))))) | |
(define-syntax func-impl96! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 0 0 1 1 ))) | |
))))) | |
(define-syntax func-impl97! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl98! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 0 1 0 0 1 1 ))) | |
))))) | |
(define-syntax func-impl99! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl100! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("CMP" "EQ" "A" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (0 1 1 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl101! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl102! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 1 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl103! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl104! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl105! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 0 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl106! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 1 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl107! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 1 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl108! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 0 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl109! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 1 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl110! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 0 0 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl111! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl112! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl113! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl114! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 1 0 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl115! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl116! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl117! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 0 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl118! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl119! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 0 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl120! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl121! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl122! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 0 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl123! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl124! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl125! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl126! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 1 1 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl127! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl128! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl129! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
))))) | |
(define-syntax func-impl130! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 1 0 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl131! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 1 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl132! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl133! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("PUTC" ("REG" "A")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl134! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 1 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl135! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl136! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl137! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("SUB" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl138! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 0 1 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl139! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl140! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 0 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl141! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl142! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl143! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 0 0 0 0 1 ))) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 0 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl144! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 0 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl145! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl146! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 1 0 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl147! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl148! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("SUB" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl149! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 1 0 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl150! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("JMP" ("IMM" (0 0 0 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl151! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl152! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 0 1 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl153! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 1 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl154! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 0 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl155! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 1 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl156! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 0 1 1 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("SUB" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl157! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl158! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl159! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (1 0 0 0 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl160! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl161! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (1 1 0 0 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl162! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl163! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (1 0 1 0 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl164! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl165! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (1 1 1 0 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl166! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl167! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (1 0 0 1 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl168! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl169! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl170! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl171! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (1 0 1 1 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl172! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 0 1 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl173! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl174! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl175! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 1 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 0 1 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl176! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (0 0 1 0 1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl177! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 0 0 0 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (1 1 0 0 1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl178! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 1 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl179! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl180! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (0 0 0 1 1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl181! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (1 1 1 0 1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl182! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 1 0 0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl183! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl184! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl185! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl186! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "A" ("IMM" (1 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (0 0 1 1 1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl187! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl188! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl189! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl190! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "A" ("IMM" (1 0 0 0 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (0 0 0 0 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl191! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 1 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl192! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (0 0 1 0 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl193! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (1 1 0 0 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl194! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl195! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl196! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl197! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl198! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 1 0 0 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 1 1 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl199! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (0 1 0 1 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl200! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 0 1 0 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 0 1 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl201! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl202! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl203! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl204! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 1 0 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 1 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl205! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (1 0 0 0 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl206! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (0 0 0 0 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl207! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 1 1 1 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl208! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl209! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl210! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl211! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("EXIT") | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl212! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("IMM" (0 0 0 0 1 0 1 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (0 0 0 0 1 0 1 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("IMM" (0 0 0 0 1 0 1 0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (0 0 0 0 1 0 1 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 1 0 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl213! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (0 0 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 1 0 1 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl214! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("EXIT") | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl215! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl216! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl217! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 1 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl218! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 0 1 1 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 1 0 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl219! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl220! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl221! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl222! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 1 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (0 0 0 0 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl223! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl224! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (0 1 0 0 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl225! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (0 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl226! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 0 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl227! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "NE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 0 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl228! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl229! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl230! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl231! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 0 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 1 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl232! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JCOND" "EQ" ("IMM" (0 1 0 1 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl233! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 0 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl234! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 1 1 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl235! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (0 1 1 1 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl236! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 0 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 1 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl237! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl238! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (0 0 0 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl239! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl240! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (0 1 0 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl241! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl242! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (0 1 1 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl243! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 1 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (1 0 1 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl244! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl245! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl246! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 0 1 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl247! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl248! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 1 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl249! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 1 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl250! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (0 0 0 1 ))) | |
("JMP" ("IMM" (0 0 1 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl251! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl252! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl253! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 0 0 0 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl254! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 0 0 0 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl255! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl256! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl257! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl258! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 0 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 0 1 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl259! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JCOND" "EQ" ("IMM" (1 0 1 0 0 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl260! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (1 0 1 1 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl261! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 1 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 1 1 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl262! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JCOND" "EQ" ("IMM" (0 0 1 1 0 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl263! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 1 0 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl264! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JCOND" "EQ" ("IMM" (0 1 0 1 0 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl265! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("JMP" ("IMM" (1 1 0 1 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl266! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 0 0 0 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl267! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (1 0 1 1 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl268! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 0 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl269! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 1 1 0 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl270! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 0 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl271! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 0 0 1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl272! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 1 0 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl273! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 1 0 1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl274! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 0 0 1 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl275! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (0 1 1 0 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl276! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 0 1 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl277! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl278! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (0 1 0 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl279! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "NE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 1 1 1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl280! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 1 1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl281! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("JMP" ("IMM" (1 1 0 1 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl282! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl283! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl284! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl285! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl286! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 1 1 1 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 1 1 1 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl287! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl288! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl289! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 0 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 1 1 1 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl290! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl291! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl292! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 0 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 1 1 1 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl293! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl294! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl295! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl296! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (0 0 0 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (0 1 0 1 0 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl297! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 0 1 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl298! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 1 0 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl299! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 1 1 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl300! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 1 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl301! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (1 1 1 1 0 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl302! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 0 0 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl303! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 0 1 0 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl304! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl305! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl306! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl307! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl308! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 1 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 0 1 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl309! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl310! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 1 0 1 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl311! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 1 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl312! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 0 1 1 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl313! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl314! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("MOV" "A" ("IMM" (1 1 0 1 1 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("REG" "C")) | |
))))) | |
(define-syntax func-impl315! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 1 1 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl316! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (0 1 1 1 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl317! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 1 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl318! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 0 1 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl319! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("MOV" "A" ("IMM" (0 0 0 0 0 0 1 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("REG" "C")) | |
))))) | |
(define-syntax func-impl320! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 0 0 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl321! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (1 1 0 0 0 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl322! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 0 0 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl323! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 1 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl324! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 0 0 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl325! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 0 0 1 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl326! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl327! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 0 1 0 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl328! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 0 1 0 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl329! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 1 0 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl330! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl331! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 1 1 0 0 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl332! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 1 0 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl333! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (0 0 0 0 1 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl334! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 0 0 1 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl335! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl336! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl337! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 0 1 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl338! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 0 0 1 0 1 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl339! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 1 0 1 0 1 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 1 0 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl340! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 0 1 0 1 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl341! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 1 0 1 0 1 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl342! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 1 0 1 0 1 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 1 0 1 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl343! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 0 1 ))) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl344! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl345! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 1 1 0 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl346! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 1 1 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl347! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 1 1 1 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl348! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl349! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 0 0 1 1 0 1 0 1 ))) | |
))))) | |
(define-syntax func-impl350! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl351! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl352! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl353! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 0 0 1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl354! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 0 0 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl355! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 1 0 0 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl356! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl357! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 0 0 0 0 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl358! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl359! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl360! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl361! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 1 0 1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl362! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 1 0 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl363! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 1 1 0 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl364! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 0 0 1 0 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl365! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl366! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl367! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl368! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 0 1 1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl369! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 0 0 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl370! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 0 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl371! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 0 0 0 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl372! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 0 1 1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl373! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 0 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl374! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 0 1 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl375! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl376! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 0 1 0 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl377! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl378! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl379! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl380! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 1 1 1 1 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl381! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 1 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl382! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 0 0 0 0 0 1 1 ))) | |
))))) | |
(define-syntax func-impl383! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl384! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 0 1 1 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl385! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl386! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl387! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
))))) | |
(define-syntax func-impl388! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (0 1 1 0 0 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl389! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl390! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 0 1 0 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl391! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 0 1 0 0 0 1 1 ))) | |
))))) | |
(define-syntax func-impl392! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 1 1 0 0 0 1 1 ))) | |
))))) | |
(define-syntax func-impl393! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 1 0 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl394! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl395! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 1 0 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl396! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl397! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 0 1 0 0 0 0 1 1 ))) | |
))))) | |
(define-syntax func-impl398! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl399! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl400! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
))))) | |
(define-syntax func-impl401! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 0 1 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl402! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 0 1 0 0 1 1 ))) | |
))))) | |
(define-syntax func-impl403! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 0 1 0 0 1 1 ))) | |
))))) | |
(define-syntax func-impl404! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 0 1 0 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl405! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl406! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 0 0 0 1 0 0 1 1 ))) | |
))))) | |
(define-syntax func-impl407! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl408! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl409! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 1 0 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 0 1 0 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl410! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 0 1 1 0 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 1 0 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl411! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 1 1 1 0 0 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 0 1 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl412! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl413! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl414! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (0 0 0 0 0 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl415! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl416! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 0 0 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl417! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl418! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl419! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "NE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 0 0 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl420! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 1 0 0 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl421! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 0 1 0 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl422! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 0 1 0 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl423! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 0 0 0 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl424! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 0 0 0 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl425! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 1 0 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl426! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl427! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl428! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl429! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 0 1 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl430! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 0 0 1 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl431! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (1 0 0 0 1 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl432! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl433! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl434! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "NE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 1 0 1 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl435! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 1 1 0 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl436! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 1 0 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl437! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl438! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("IMM" (0 0 1 0 0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl439! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 1 1 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl440! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 1 1 1 0 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl441! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl442! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 1 1 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl443! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 1 1 1 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl444! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 0 1 1 0 1 1 ))) | |
))))) | |
(define-syntax func-impl445! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("SUB" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl446! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl447! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "NE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 1 0 0 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl448! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("IMM" (0 0 1 0 0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl449! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "NE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 0 0 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl450! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("SUB" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl451! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 0 0 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl452! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 0 0 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl453! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("SUB" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "NE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 1 0 0 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl454! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 0 0 0 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl455! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl456! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl457! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 1 ))) | |
))))) | |
(define-syntax func-impl458! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "NE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 0 1 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl459! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl460! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "NE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 1 1 0 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl461! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 1 0 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl462! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 0 0 1 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl463! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 0 0 1 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl464! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl465! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 1 0 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl466! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 1 0 1 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl467! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 1 0 1 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl468! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 0 1 0 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl469! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl470! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl471! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 1 0 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl472! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" (0 1 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("PUTC" ("REG" "A")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl473! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 1 1 0 0 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl474! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 1 1 1 0 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl475! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 1 1 1 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl476! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 0 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl477! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "NE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 0 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl478! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("CMP" "EQ" "A" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (0 1 0 0 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl479! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 0 0 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl480! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 1 0 0 0 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl481! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl482! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 1 1 0 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl483! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 1 1 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 0 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl484! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 0 0 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl485! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 1 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 1 0 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl486! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 0 0 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl487! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 0 1 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 0 1 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl488! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 0 0 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl489! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 1 1 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 1 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl490! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 1 0 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl491! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 0 0 1 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 1 1 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl492! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 1 0 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl493! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 0 0 0 1 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 1 1 0 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl494! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 0 0 1 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl495! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 0 0 1 1 1 1 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl496! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 0 1 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl497! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 0 1 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl498! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 0 0 0 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl499! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 1 0 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 0 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl500! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (1 1 1 1 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl501! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 1 0 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 1 0 0 1 0 0 1 ))) | |
))))) | |
(define-syntax func-impl502! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (1 1 1 1 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl503! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (1 1 1 1 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl504! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (1 1 1 1 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl505! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("JMP" ("IMM" (1 1 1 1 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl506! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 0 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 1 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl507! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" (0 0 1 0 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl508! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl509! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" (1 0 0 1 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl510! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("EXIT") | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl511! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 0 1 0 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl512! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("CMP" "EQ" "A" ("IMM" ())) | |
("JCOND" "EQ" ("IMM" (1 0 1 0 0 0 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl513! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LE" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 0 0 0 0 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl514! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (1 0 1 0 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl515! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 1 0 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 0 1 1 1 1 0 1 ))) | |
))))) | |
(define-syntax func-impl516! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
))))) | |
(define-syntax func-impl517! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl518! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 1 0 1 1 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl519! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl520! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl521! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 1 1 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl522! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl523! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl524! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 1 ))) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 1 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 1 1 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl525! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl526! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl527! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 1 ))) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 1 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 1 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl528! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl529! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl530! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 0 0 0 0 0 0 0 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 0 0 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 0 0 1 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 1 1 0 1 1 1 ))) | |
))))) | |
(define-syntax func-impl531! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 1 0 1 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl532! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl533! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl534! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 1 ))) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 1 1 0 1 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 1 0 0 1 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl535! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl536! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl537! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("REG" "BP")) | |
("ADD" "A" ("IMM" (1 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 1 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 1 0 0 1 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl538! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl539! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 1 1 1 0 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 1 0 0 1 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl540! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl541! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl542! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl543! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl544! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("IMM" (0 0 1 1 1 1 0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl545! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl546! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl547! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl548! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 0 0 1 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl549! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (0 1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl550! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 0 0 1 0 1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl551! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 0 0 1 0 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl552! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 0 1 0 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl553! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("PUTC" ("REG" "A")) | |
("ADD" "SP" ("IMM" (1 ))) | |
))))) | |
(define-syntax func-impl554! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 1 1 0 0 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl555! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl556! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl557! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 1 1 0 1 0 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (1 0 0 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl558! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl559! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (0 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("MOV" "A" ("IMM" ())) | |
("STORE" "A" ("REG" "B")) | |
))))) | |
(define-syntax func-impl560! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "LT" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 0 1 1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl561! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (1 1 0 0 1 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl562! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("JMP" ("IMM" (0 1 0 1 1 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl563! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "B" ("REG" "SP")) | |
("GETC" "A") | |
("JCOND" "NE" ("IMM" (1 0 1 0 1 1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl564! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl565! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 1 0 1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 ))) | |
("JCOND" "NE" ("IMM" (1 1 1 0 1 1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl566! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("CMP" "NE" "B" ("IMM" ())) | |
))))) | |
(define-syntax func-impl567! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 0 1 1 1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl568! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl569! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("ADD" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("IMM" (0 0 0 0 1 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl570! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "B" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("ADD" "A" ("REG" "B")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("MOV" "C" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "A" ("REG" "C")) | |
("STORE" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl571! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl572! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("SUB" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("IMM" (1 1 1 1 1 1 0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (0 1 0 0 0 0 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl573! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("IMM" (0 0 0 0 0 0 1 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 1 1 1 1 1 0 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl574! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl575! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("GETC" "A") | |
("JCOND" "NE" ("IMM" (1 0 0 0 0 0 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl576! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
))))) | |
(define-syntax func-impl577! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (0 0 0 0 0 0 1 0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl578! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("IMM" (1 1 1 1 1 1 0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 1 1 1 1 1 0 0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl579! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl580! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 0 1 0 0 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 0 1 1 1 1 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl581! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl582! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl583! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "B" ("IMM" (1 1 1 1 1 1 0 0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("CMP" "EQ" "A" ("REG" "B")) | |
("JCOND" "EQ" ("IMM" (1 0 0 1 0 0 1 0 0 1 )) "A" ("IMM" ())) | |
))))) | |
(define-syntax func-impl584! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "B" ("REG" "BP")) | |
("ADD" "B" ("IMM" (0 1 ))) | |
("LOAD" "A" ("REG" "B")) | |
("MOV" "B" ("IMM" (1 1 1 1 1 1 0 0 1 ))) | |
("STORE" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl585! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("IMM" ())) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("SUB" "A" ("REG" "B")) | |
("MOV" "B" ("REG" "A")) | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl586! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "SP" ("REG" "BP")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "BP" ("REG" "A")) | |
("LOAD" "A" ("REG" "SP")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("JMP" ("REG" "A")) | |
))))) | |
(define-syntax func-impl587! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "BP" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "BP" ("REG" "SP")) | |
("MOV" "A" ("IMM" (1 0 0 0 0 0 1 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("MOV" "A" ("IMM" (0 0 1 1 0 0 1 0 0 1 ))) | |
("MOV" "D" ("REG" "SP")) | |
("ADD" "D" ("IMM" (1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ))) | |
("STORE" "A" ("REG" "D")) | |
("MOV" "SP" ("REG" "D")) | |
("JMP" ("IMM" (0 1 1 0 1 0 0 0 0 1 ))) | |
))))) | |
(define-syntax func-impl588! | |
(syntax-rules (quote) ((_ s) (ck s '( | |
("MOV" "A" ("REG" "B")) | |
("ADD" "SP" ("IMM" (1 ))) | |
("MOV" "A" ("IMM" (1 ))) | |
("MOV" "B" ("REG" "A")) | |
("EXIT") | |
("EXIT") | |
))))) | |
(define-syntax imem-init! | |
(syntax-rules (quote) ((_ s) (ck s | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl0!) | |
(func-impl1!) | |
) | |
(cons! | |
(func-impl2!) | |
(func-impl3!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl4!) | |
(func-impl5!) | |
) | |
(cons! | |
(func-impl6!) | |
(func-impl7!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl8!) | |
(func-impl9!) | |
) | |
(cons! | |
(func-impl10!) | |
(func-impl11!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl12!) | |
(func-impl13!) | |
) | |
(cons! | |
(func-impl14!) | |
(func-impl15!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl16!) | |
(func-impl17!) | |
) | |
(cons! | |
(func-impl18!) | |
(func-impl19!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl20!) | |
(func-impl21!) | |
) | |
(cons! | |
(func-impl22!) | |
(func-impl23!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl24!) | |
(func-impl25!) | |
) | |
(cons! | |
(func-impl26!) | |
(func-impl27!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl28!) | |
(func-impl29!) | |
) | |
(cons! | |
(func-impl30!) | |
(func-impl31!) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl32!) | |
(func-impl33!) | |
) | |
(cons! | |
(func-impl34!) | |
(func-impl35!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl36!) | |
(func-impl37!) | |
) | |
(cons! | |
(func-impl38!) | |
(func-impl39!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl40!) | |
(func-impl41!) | |
) | |
(cons! | |
(func-impl42!) | |
(func-impl43!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl44!) | |
(func-impl45!) | |
) | |
(cons! | |
(func-impl46!) | |
(func-impl47!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl48!) | |
(func-impl49!) | |
) | |
(cons! | |
(func-impl50!) | |
(func-impl51!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl52!) | |
(func-impl53!) | |
) | |
(cons! | |
(func-impl54!) | |
(func-impl55!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl56!) | |
(func-impl57!) | |
) | |
(cons! | |
(func-impl58!) | |
(func-impl59!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl60!) | |
(func-impl61!) | |
) | |
(cons! | |
(func-impl62!) | |
(func-impl63!) | |
) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl64!) | |
(func-impl65!) | |
) | |
(cons! | |
(func-impl66!) | |
(func-impl67!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl68!) | |
(func-impl69!) | |
) | |
(cons! | |
(func-impl70!) | |
(func-impl71!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl72!) | |
(func-impl73!) | |
) | |
(cons! | |
(func-impl74!) | |
(func-impl75!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl76!) | |
(func-impl77!) | |
) | |
(cons! | |
(func-impl78!) | |
(func-impl79!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl80!) | |
(func-impl81!) | |
) | |
(cons! | |
(func-impl82!) | |
(func-impl83!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl84!) | |
(func-impl85!) | |
) | |
(cons! | |
(func-impl86!) | |
(func-impl87!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl88!) | |
(func-impl89!) | |
) | |
(cons! | |
(func-impl90!) | |
(func-impl91!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl92!) | |
(func-impl93!) | |
) | |
(cons! | |
(func-impl94!) | |
(func-impl95!) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl96!) | |
(func-impl97!) | |
) | |
(cons! | |
(func-impl98!) | |
(func-impl99!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl100!) | |
(func-impl101!) | |
) | |
(cons! | |
(func-impl102!) | |
(func-impl103!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl104!) | |
(func-impl105!) | |
) | |
(cons! | |
(func-impl106!) | |
(func-impl107!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl108!) | |
(func-impl109!) | |
) | |
(cons! | |
(func-impl110!) | |
(func-impl111!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl112!) | |
(func-impl113!) | |
) | |
(cons! | |
(func-impl114!) | |
(func-impl115!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl116!) | |
(func-impl117!) | |
) | |
(cons! | |
(func-impl118!) | |
(func-impl119!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl120!) | |
(func-impl121!) | |
) | |
(cons! | |
(func-impl122!) | |
(func-impl123!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl124!) | |
(func-impl125!) | |
) | |
(cons! | |
(func-impl126!) | |
(func-impl127!) | |
) | |
) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl128!) | |
(func-impl129!) | |
) | |
(cons! | |
(func-impl130!) | |
(func-impl131!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl132!) | |
(func-impl133!) | |
) | |
(cons! | |
(func-impl134!) | |
(func-impl135!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl136!) | |
(func-impl137!) | |
) | |
(cons! | |
(func-impl138!) | |
(func-impl139!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl140!) | |
(func-impl141!) | |
) | |
(cons! | |
(func-impl142!) | |
(func-impl143!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl144!) | |
(func-impl145!) | |
) | |
(cons! | |
(func-impl146!) | |
(func-impl147!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl148!) | |
(func-impl149!) | |
) | |
(cons! | |
(func-impl150!) | |
(func-impl151!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl152!) | |
(func-impl153!) | |
) | |
(cons! | |
(func-impl154!) | |
(func-impl155!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl156!) | |
(func-impl157!) | |
) | |
(cons! | |
(func-impl158!) | |
(func-impl159!) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl160!) | |
(func-impl161!) | |
) | |
(cons! | |
(func-impl162!) | |
(func-impl163!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl164!) | |
(func-impl165!) | |
) | |
(cons! | |
(func-impl166!) | |
(func-impl167!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl168!) | |
(func-impl169!) | |
) | |
(cons! | |
(func-impl170!) | |
(func-impl171!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl172!) | |
(func-impl173!) | |
) | |
(cons! | |
(func-impl174!) | |
(func-impl175!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl176!) | |
(func-impl177!) | |
) | |
(cons! | |
(func-impl178!) | |
(func-impl179!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl180!) | |
(func-impl181!) | |
) | |
(cons! | |
(func-impl182!) | |
(func-impl183!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl184!) | |
(func-impl185!) | |
) | |
(cons! | |
(func-impl186!) | |
(func-impl187!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl188!) | |
(func-impl189!) | |
) | |
(cons! | |
(func-impl190!) | |
(func-impl191!) | |
) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl192!) | |
(func-impl193!) | |
) | |
(cons! | |
(func-impl194!) | |
(func-impl195!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl196!) | |
(func-impl197!) | |
) | |
(cons! | |
(func-impl198!) | |
(func-impl199!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl200!) | |
(func-impl201!) | |
) | |
(cons! | |
(func-impl202!) | |
(func-impl203!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl204!) | |
(func-impl205!) | |
) | |
(cons! | |
(func-impl206!) | |
(func-impl207!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl208!) | |
(func-impl209!) | |
) | |
(cons! | |
(func-impl210!) | |
(func-impl211!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl212!) | |
(func-impl213!) | |
) | |
(cons! | |
(func-impl214!) | |
(func-impl215!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl216!) | |
(func-impl217!) | |
) | |
(cons! | |
(func-impl218!) | |
(func-impl219!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl220!) | |
(func-impl221!) | |
) | |
(cons! | |
(func-impl222!) | |
(func-impl223!) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl224!) | |
(func-impl225!) | |
) | |
(cons! | |
(func-impl226!) | |
(func-impl227!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl228!) | |
(func-impl229!) | |
) | |
(cons! | |
(func-impl230!) | |
(func-impl231!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl232!) | |
(func-impl233!) | |
) | |
(cons! | |
(func-impl234!) | |
(func-impl235!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl236!) | |
(func-impl237!) | |
) | |
(cons! | |
(func-impl238!) | |
(func-impl239!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl240!) | |
(func-impl241!) | |
) | |
(cons! | |
(func-impl242!) | |
(func-impl243!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl244!) | |
(func-impl245!) | |
) | |
(cons! | |
(func-impl246!) | |
(func-impl247!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl248!) | |
(func-impl249!) | |
) | |
(cons! | |
(func-impl250!) | |
(func-impl251!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl252!) | |
(func-impl253!) | |
) | |
(cons! | |
(func-impl254!) | |
(func-impl255!) | |
) | |
) | |
) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl256!) | |
(func-impl257!) | |
) | |
(cons! | |
(func-impl258!) | |
(func-impl259!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl260!) | |
(func-impl261!) | |
) | |
(cons! | |
(func-impl262!) | |
(func-impl263!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl264!) | |
(func-impl265!) | |
) | |
(cons! | |
(func-impl266!) | |
(func-impl267!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl268!) | |
(func-impl269!) | |
) | |
(cons! | |
(func-impl270!) | |
(func-impl271!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl272!) | |
(func-impl273!) | |
) | |
(cons! | |
(func-impl274!) | |
(func-impl275!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl276!) | |
(func-impl277!) | |
) | |
(cons! | |
(func-impl278!) | |
(func-impl279!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl280!) | |
(func-impl281!) | |
) | |
(cons! | |
(func-impl282!) | |
(func-impl283!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl284!) | |
(func-impl285!) | |
) | |
(cons! | |
(func-impl286!) | |
(func-impl287!) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl288!) | |
(func-impl289!) | |
) | |
(cons! | |
(func-impl290!) | |
(func-impl291!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl292!) | |
(func-impl293!) | |
) | |
(cons! | |
(func-impl294!) | |
(func-impl295!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl296!) | |
(func-impl297!) | |
) | |
(cons! | |
(func-impl298!) | |
(func-impl299!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl300!) | |
(func-impl301!) | |
) | |
(cons! | |
(func-impl302!) | |
(func-impl303!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl304!) | |
(func-impl305!) | |
) | |
(cons! | |
(func-impl306!) | |
(func-impl307!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl308!) | |
(func-impl309!) | |
) | |
(cons! | |
(func-impl310!) | |
(func-impl311!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl312!) | |
(func-impl313!) | |
) | |
(cons! | |
(func-impl314!) | |
(func-impl315!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl316!) | |
(func-impl317!) | |
) | |
(cons! | |
(func-impl318!) | |
(func-impl319!) | |
) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl320!) | |
(func-impl321!) | |
) | |
(cons! | |
(func-impl322!) | |
(func-impl323!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl324!) | |
(func-impl325!) | |
) | |
(cons! | |
(func-impl326!) | |
(func-impl327!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl328!) | |
(func-impl329!) | |
) | |
(cons! | |
(func-impl330!) | |
(func-impl331!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl332!) | |
(func-impl333!) | |
) | |
(cons! | |
(func-impl334!) | |
(func-impl335!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl336!) | |
(func-impl337!) | |
) | |
(cons! | |
(func-impl338!) | |
(func-impl339!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl340!) | |
(func-impl341!) | |
) | |
(cons! | |
(func-impl342!) | |
(func-impl343!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl344!) | |
(func-impl345!) | |
) | |
(cons! | |
(func-impl346!) | |
(func-impl347!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl348!) | |
(func-impl349!) | |
) | |
(cons! | |
(func-impl350!) | |
(func-impl351!) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl352!) | |
(func-impl353!) | |
) | |
(cons! | |
(func-impl354!) | |
(func-impl355!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl356!) | |
(func-impl357!) | |
) | |
(cons! | |
(func-impl358!) | |
(func-impl359!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl360!) | |
(func-impl361!) | |
) | |
(cons! | |
(func-impl362!) | |
(func-impl363!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl364!) | |
(func-impl365!) | |
) | |
(cons! | |
(func-impl366!) | |
(func-impl367!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl368!) | |
(func-impl369!) | |
) | |
(cons! | |
(func-impl370!) | |
(func-impl371!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl372!) | |
(func-impl373!) | |
) | |
(cons! | |
(func-impl374!) | |
(func-impl375!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl376!) | |
(func-impl377!) | |
) | |
(cons! | |
(func-impl378!) | |
(func-impl379!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl380!) | |
(func-impl381!) | |
) | |
(cons! | |
(func-impl382!) | |
(func-impl383!) | |
) | |
) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl384!) | |
(func-impl385!) | |
) | |
(cons! | |
(func-impl386!) | |
(func-impl387!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl388!) | |
(func-impl389!) | |
) | |
(cons! | |
(func-impl390!) | |
(func-impl391!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl392!) | |
(func-impl393!) | |
) | |
(cons! | |
(func-impl394!) | |
(func-impl395!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl396!) | |
(func-impl397!) | |
) | |
(cons! | |
(func-impl398!) | |
(func-impl399!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl400!) | |
(func-impl401!) | |
) | |
(cons! | |
(func-impl402!) | |
(func-impl403!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl404!) | |
(func-impl405!) | |
) | |
(cons! | |
(func-impl406!) | |
(func-impl407!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl408!) | |
(func-impl409!) | |
) | |
(cons! | |
(func-impl410!) | |
(func-impl411!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl412!) | |
(func-impl413!) | |
) | |
(cons! | |
(func-impl414!) | |
(func-impl415!) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl416!) | |
(func-impl417!) | |
) | |
(cons! | |
(func-impl418!) | |
(func-impl419!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl420!) | |
(func-impl421!) | |
) | |
(cons! | |
(func-impl422!) | |
(func-impl423!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl424!) | |
(func-impl425!) | |
) | |
(cons! | |
(func-impl426!) | |
(func-impl427!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl428!) | |
(func-impl429!) | |
) | |
(cons! | |
(func-impl430!) | |
(func-impl431!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl432!) | |
(func-impl433!) | |
) | |
(cons! | |
(func-impl434!) | |
(func-impl435!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl436!) | |
(func-impl437!) | |
) | |
(cons! | |
(func-impl438!) | |
(func-impl439!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl440!) | |
(func-impl441!) | |
) | |
(cons! | |
(func-impl442!) | |
(func-impl443!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl444!) | |
(func-impl445!) | |
) | |
(cons! | |
(func-impl446!) | |
(func-impl447!) | |
) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl448!) | |
(func-impl449!) | |
) | |
(cons! | |
(func-impl450!) | |
(func-impl451!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl452!) | |
(func-impl453!) | |
) | |
(cons! | |
(func-impl454!) | |
(func-impl455!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl456!) | |
(func-impl457!) | |
) | |
(cons! | |
(func-impl458!) | |
(func-impl459!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl460!) | |
(func-impl461!) | |
) | |
(cons! | |
(func-impl462!) | |
(func-impl463!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl464!) | |
(func-impl465!) | |
) | |
(cons! | |
(func-impl466!) | |
(func-impl467!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl468!) | |
(func-impl469!) | |
) | |
(cons! | |
(func-impl470!) | |
(func-impl471!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl472!) | |
(func-impl473!) | |
) | |
(cons! | |
(func-impl474!) | |
(func-impl475!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl476!) | |
(func-impl477!) | |
) | |
(cons! | |
(func-impl478!) | |
(func-impl479!) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl480!) | |
(func-impl481!) | |
) | |
(cons! | |
(func-impl482!) | |
(func-impl483!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl484!) | |
(func-impl485!) | |
) | |
(cons! | |
(func-impl486!) | |
(func-impl487!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl488!) | |
(func-impl489!) | |
) | |
(cons! | |
(func-impl490!) | |
(func-impl491!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl492!) | |
(func-impl493!) | |
) | |
(cons! | |
(func-impl494!) | |
(func-impl495!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl496!) | |
(func-impl497!) | |
) | |
(cons! | |
(func-impl498!) | |
(func-impl499!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl500!) | |
(func-impl501!) | |
) | |
(cons! | |
(func-impl502!) | |
(func-impl503!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl504!) | |
(func-impl505!) | |
) | |
(cons! | |
(func-impl506!) | |
(func-impl507!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl508!) | |
(func-impl509!) | |
) | |
(cons! | |
(func-impl510!) | |
(func-impl511!) | |
) | |
) | |
) | |
) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl512!) | |
(func-impl513!) | |
) | |
(cons! | |
(func-impl514!) | |
(func-impl515!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl516!) | |
(func-impl517!) | |
) | |
(cons! | |
(func-impl518!) | |
(func-impl519!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl520!) | |
(func-impl521!) | |
) | |
(cons! | |
(func-impl522!) | |
(func-impl523!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl524!) | |
(func-impl525!) | |
) | |
(cons! | |
(func-impl526!) | |
(func-impl527!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl528!) | |
(func-impl529!) | |
) | |
(cons! | |
(func-impl530!) | |
(func-impl531!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl532!) | |
(func-impl533!) | |
) | |
(cons! | |
(func-impl534!) | |
(func-impl535!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl536!) | |
(func-impl537!) | |
) | |
(cons! | |
(func-impl538!) | |
(func-impl539!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl540!) | |
(func-impl541!) | |
) | |
(cons! | |
(func-impl542!) | |
(func-impl543!) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl544!) | |
(func-impl545!) | |
) | |
(cons! | |
(func-impl546!) | |
(func-impl547!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl548!) | |
(func-impl549!) | |
) | |
(cons! | |
(func-impl550!) | |
(func-impl551!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl552!) | |
(func-impl553!) | |
) | |
(cons! | |
(func-impl554!) | |
(func-impl555!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl556!) | |
(func-impl557!) | |
) | |
(cons! | |
(func-impl558!) | |
(func-impl559!) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl560!) | |
(func-impl561!) | |
) | |
(cons! | |
(func-impl562!) | |
(func-impl563!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl564!) | |
(func-impl565!) | |
) | |
(cons! | |
(func-impl566!) | |
(func-impl567!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl568!) | |
(func-impl569!) | |
) | |
(cons! | |
(func-impl570!) | |
(func-impl571!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl572!) | |
(func-impl573!) | |
) | |
(cons! | |
(func-impl574!) | |
(func-impl575!) | |
) | |
) | |
) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(cons! | |
(func-impl576!) | |
(func-impl577!) | |
) | |
(cons! | |
(func-impl578!) | |
(func-impl579!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl580!) | |
(func-impl581!) | |
) | |
(cons! | |
(func-impl582!) | |
(func-impl583!) | |
) | |
) | |
) | |
(cons! | |
(cons! | |
(cons! | |
(func-impl584!) | |
(func-impl585!) | |
) | |
(cons! | |
(func-impl586!) | |
(func-impl587!) | |
) | |
) | |
(cons! | |
(cons! | |
(func-impl588!) | |
'() | |
) | |
'() | |
) | |
) | |
) | |
'() | |
) | |
'() | |
) | |
) | |
'() | |
) | |
'() | |
) | |
) | |
'() | |
) | |
'() | |
) | |
'() | |
) | |
'() | |
) | |
'() | |
) | |
'() | |
) | |
'() | |
) | |
'() | |
) | |
'() | |
) | |
'() | |
) | |
'() | |
) | |
'() | |
) | |
'() | |
) | |
'() | |
) | |
)))) | |
(define-syntax dmem-init! | |
(syntax-rules (quote) ((_ s) (ck s ' | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ) | |
. | |
(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ) | |
) | |
. | |
( | |
(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ) | |
. | |
(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ) | |
. | |
(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ) | |
) | |
. | |
( | |
(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ) | |
. | |
(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ) | |
. | |
(0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ) | |
) | |
. | |
( | |
(0 0 0 0 0 0 0 0 0 0 0 0 0 1 ) | |
. | |
(0 0 0 0 0 0 0 0 0 0 0 0 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 0 0 0 0 0 0 0 1 ) | |
. | |
(0 0 0 0 0 0 0 0 0 0 1 ) | |
) | |
. | |
( | |
(0 0 0 0 0 0 0 0 0 1 ) | |
. | |
(0 0 0 0 0 0 0 0 1 ) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
(0 0 0 0 0 0 0 1 ) | |
. | |
(0 0 0 0 0 0 1 ) | |
) | |
. | |
( | |
(0 0 0 0 0 1 ) | |
. | |
(0 0 0 0 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 ) | |
. | |
(0 0 1 ) | |
) | |
. | |
( | |
(0 1 ) | |
. | |
(1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 1 1 1 0 1 1 ) | |
. | |
(1 1 1 1 0 1 1 ) | |
) | |
. | |
( | |
(0 0 0 0 0 1 ) | |
. | |
(1 0 1 1 0 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(1 0 1 0 0 1 1 ) | |
. | |
(1 0 1 1 0 1 1 ) | |
) | |
. | |
( | |
(1 1 1 1 0 1 1 ) | |
. | |
(0 1 0 0 1 1 1 ) | |
) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
( | |
(1 0 0 1 1 1 1 ) | |
. | |
(1 0 0 0 0 1 ) | |
) | |
. | |
( | |
(0 1 0 1 ) | |
. | |
() | |
) | |
) | |
. | |
( | |
( | |
() | |
. | |
(1 ) | |
) | |
. | |
( | |
(0 1 ) | |
. | |
(1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 ) | |
. | |
(1 0 1 ) | |
) | |
. | |
( | |
(0 1 1 ) | |
. | |
(1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 ) | |
. | |
(1 0 0 1 ) | |
) | |
. | |
( | |
(0 1 0 1 ) | |
. | |
(1 1 0 1 ) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
(0 0 1 1 ) | |
. | |
(1 0 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 ) | |
. | |
(1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 1 ) | |
. | |
(1 0 0 0 1 ) | |
) | |
. | |
( | |
(0 1 0 0 1 ) | |
. | |
(1 1 0 0 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 1 ) | |
. | |
(1 0 1 0 1 ) | |
) | |
. | |
( | |
(0 1 1 0 1 ) | |
. | |
(1 1 1 0 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 1 ) | |
. | |
(1 0 0 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 1 ) | |
. | |
(1 1 0 1 1 ) | |
) | |
) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
( | |
( | |
(0 0 1 1 1 ) | |
. | |
(1 0 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 1 ) | |
. | |
(1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 0 1 ) | |
. | |
(1 0 0 0 0 1 ) | |
) | |
. | |
( | |
(0 1 0 0 0 1 ) | |
. | |
(1 1 0 0 0 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 0 1 ) | |
. | |
(1 0 1 0 0 1 ) | |
) | |
. | |
( | |
(0 1 1 0 0 1 ) | |
. | |
(1 1 1 0 0 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 0 1 ) | |
. | |
(1 0 0 1 0 1 ) | |
) | |
. | |
( | |
(0 1 0 1 0 1 ) | |
. | |
(1 1 0 1 0 1 ) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
(0 0 1 1 0 1 ) | |
. | |
(1 0 1 1 0 1 ) | |
) | |
. | |
( | |
(0 1 1 1 0 1 ) | |
. | |
(1 1 1 1 0 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 1 1 ) | |
. | |
(1 0 0 0 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 1 1 ) | |
. | |
(1 1 0 0 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 1 1 ) | |
. | |
(1 0 1 0 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 1 1 ) | |
. | |
(1 1 1 0 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 1 1 ) | |
. | |
(1 0 0 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 1 1 ) | |
. | |
(1 1 0 1 1 1 ) | |
) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
( | |
(0 0 1 1 1 1 ) | |
. | |
(1 0 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 1 1 ) | |
. | |
(1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 0 0 1 ) | |
. | |
(1 0 0 0 0 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 0 1 1 ) | |
. | |
(1 1 0 0 0 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 0 1 1 ) | |
. | |
(1 0 1 0 0 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 0 1 1 ) | |
. | |
(1 1 1 0 0 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 0 1 1 ) | |
. | |
(1 0 0 1 0 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 0 1 1 ) | |
. | |
(1 1 0 1 0 1 1 ) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
(0 0 1 1 0 1 1 ) | |
. | |
(1 0 1 1 0 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 0 1 1 ) | |
. | |
(1 1 1 1 0 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 1 1 1 ) | |
. | |
(1 0 0 0 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 1 1 1 ) | |
. | |
(1 1 0 0 1 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 1 1 1 ) | |
. | |
(1 0 1 0 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 1 1 1 ) | |
. | |
(1 1 1 0 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 1 1 1 ) | |
. | |
(1 0 0 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 1 1 1 ) | |
. | |
(1 1 0 1 1 0 1 ) | |
) | |
) | |
) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
(0 0 1 1 1 0 1 ) | |
. | |
(1 0 1 1 1 0 1 ) | |
) | |
. | |
( | |
(0 1 1 1 1 0 1 ) | |
. | |
(1 1 1 1 1 0 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 0 1 1 ) | |
. | |
(1 0 0 0 0 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 0 1 1 ) | |
. | |
(1 1 0 0 0 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 0 1 1 ) | |
. | |
(1 0 1 0 0 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 0 1 1 ) | |
. | |
(1 1 1 0 0 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 0 1 1 ) | |
. | |
(1 0 0 1 0 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 0 1 1 ) | |
. | |
(1 1 0 1 0 1 1 ) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
(0 0 1 1 0 1 1 ) | |
. | |
(1 0 1 1 0 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 0 1 1 ) | |
. | |
(1 1 1 1 0 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 1 1 1 ) | |
. | |
(1 0 0 0 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 1 1 1 ) | |
. | |
(1 1 0 0 1 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 1 1 1 ) | |
. | |
(1 0 1 0 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 1 1 1 ) | |
. | |
(1 1 1 0 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 1 1 1 ) | |
. | |
(1 0 0 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 1 1 1 ) | |
. | |
(1 1 0 1 1 1 1 ) | |
) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
( | |
(0 0 1 1 1 1 1 ) | |
. | |
(1 0 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 1 1 1 ) | |
. | |
(1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
(0 0 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
( | |
( | |
(0 0 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
(0 0 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
( | |
(0 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
(0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
( | |
(0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
(0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
( | |
(0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
. | |
(1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 0 0 0 1 ) | |
. | |
(1 0 0 1 0 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 0 1 1 ) | |
. | |
(0 0 0 0 0 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
() | |
. | |
(0 1 0 1 1 1 ) | |
) | |
. | |
( | |
(0 0 0 0 0 1 ) | |
. | |
(1 0 1 0 1 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 1 1 1 0 1 1 ) | |
. | |
(1 1 0 1 0 1 1 ) | |
) | |
. | |
( | |
(0 1 1 1 0 1 1 ) | |
. | |
(1 1 1 1 0 1 1 ) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
(1 1 1 0 1 1 1 ) | |
. | |
(0 1 1 1 0 1 1 ) | |
) | |
. | |
( | |
(0 0 0 0 0 1 ) | |
. | |
(0 1 1 0 0 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(1 1 1 1 0 1 1 ) | |
. | |
(0 1 0 0 1 1 1 ) | |
) | |
. | |
( | |
(1 0 1 1 0 1 1 ) | |
. | |
(1 0 0 0 0 1 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(0 0 1 0 1 1 1 ) | |
. | |
(1 0 0 0 0 1 ) | |
) | |
. | |
( | |
(0 1 0 1 ) | |
. | |
() | |
) | |
) | |
. | |
( | |
( | |
(1 ) | |
. | |
(1 ) | |
) | |
. | |
( | |
(1 ) | |
. | |
(1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ) | |
) | |
) | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
( | |
( | |
() | |
. | |
(0 0 0 1 0 0 1 ) | |
) | |
. | |
( | |
(1 0 1 0 0 1 1 ) | |
. | |
(0 0 1 1 0 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 1 1 0 1 1 ) | |
. | |
(1 1 1 1 0 1 1 ) | |
) | |
. | |
( | |
(0 0 1 1 0 1 ) | |
. | |
(0 0 0 0 0 1 ) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
(1 1 1 0 1 0 1 ) | |
. | |
(1 1 1 1 0 1 1 ) | |
) | |
. | |
( | |
(0 1 0 0 1 1 1 ) | |
. | |
(0 0 1 1 0 1 1 ) | |
) | |
) | |
. | |
( | |
( | |
(0 0 1 0 0 1 1 ) | |
. | |
(1 0 0 0 0 1 ) | |
) | |
. | |
( | |
(0 1 0 1 ) | |
. | |
() | |
) | |
) | |
) | |
) | |
. | |
( | |
( | |
( | |
( | |
(1 0 0 0 1 0 1 0 1 ) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
) | |
. | |
() | |
) | |
) | |
. | |
() | |
) | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
. | |
() | |
) | |
)))) | |
;;; Load Input | |
(load "./input.scm") | |
;;; Run VM! | |
(ck () (run-vm! '"load" '() '(() () () () () ()) | |
(dmem-init!) (imem-init!) | |
(input!) '())) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(define-syntax input! | |
(syntax-rules (quote) | |
((_ s) (ck s '( | |
))))) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment