casl2libとtestを整理
[YACASL2.git] / test / system / casl2_opt / opt_slaot / 0.txt
diff --git a/test/system/casl2_opt/opt_slaot/0.txt b/test/system/casl2_opt/opt_slaot/0.txt
new file mode 100644 (file)
index 0000000..d38f7de
--- /dev/null
@@ -0,0 +1,787 @@
+;;; sum_10.casl
+;;; 出力 GR0: 1から10までの整数をすべて加算した値
+MAIN    START
+        PUSH    0,GR1
+        LAD     GR0,0           ; GR0を初期化
+        LD      GR1,FST         ; GR1に初項を転送
+LOOP    ADDL    GR0,GR1         ; ループ先頭
+        ADDL    GR1,STEP        ; GR1 <- GR1 + 公差
+        CPL     GR1,LST         ; GR1が末項より大きい場合は終了
+        JPL     FIN             ; ↓
+        JUMP    LOOP            ; ループ終端
+FIN     POP     GR1
+        RET
+FST     DC      1               ; 初項
+LST     DC      10              ; 末項
+STEP    DC      1               ; 公差
+        END
+
+Assemble ../../../../as/sample/sum_10.casl (0)
+../../../../as/sample/sum_10.casl:    1:;;; sum_10.casl
+../../../../as/sample/sum_10.casl:    2:;;; 出力 GR0: 1から10までの整数をすべて加算した値
+../../../../as/sample/sum_10.casl:    3:MAIN    START
+../../../../as/sample/sum_10.casl:    4:        PUSH    0,GR1
+../../../../as/sample/sum_10.casl:    5:        LAD     GR0,0           ; GR0を初期化
+../../../../as/sample/sum_10.casl:    6:        LD      GR1,FST         ; GR1に初項を転送
+../../../../as/sample/sum_10.casl:    7:LOOP    ADDL    GR0,GR1         ; ループ先頭
+../../../../as/sample/sum_10.casl:    8:        ADDL    GR1,STEP        ; GR1 <- GR1 + 公差
+../../../../as/sample/sum_10.casl:    9:        CPL     GR1,LST         ; GR1が末項より大きい場合は終了
+../../../../as/sample/sum_10.casl:   10:        JPL     FIN             ; ↓
+../../../../as/sample/sum_10.casl:   11:        JUMP    LOOP            ; ループ終端
+../../../../as/sample/sum_10.casl:   12:FIN     POP     GR1
+../../../../as/sample/sum_10.casl:   13:        RET
+../../../../as/sample/sum_10.casl:   14:FST     DC      1               ; 初項
+../../../../as/sample/sum_10.casl:   15:LST     DC      10              ; 末項
+../../../../as/sample/sum_10.casl:   16:STEP    DC      1               ; 公差
+../../../../as/sample/sum_10.casl:   17:        END
+
+Label::::
+MAIN ---> #0000
+MAIN.LOOP ---> #0006
+MAIN.FIN ---> #000F
+MAIN.FST ---> #0011
+MAIN.LST ---> #0012
+MAIN.STEP ---> #0013
+
+Assemble ../../../../as/sample/sum_10.casl (1)
+../../../../as/sample/sum_10.casl:    1:;;; sum_10.casl
+../../../../as/sample/sum_10.casl:    2:;;; 出力 GR0: 1から10までの整数をすべて加算した値
+../../../../as/sample/sum_10.casl:    3:MAIN    START
+../../../../as/sample/sum_10.casl:    4:        PUSH    0,GR1
+       #0000   #7001
+       #0001   #0000
+../../../../as/sample/sum_10.casl:    5:        LAD     GR0,0           ; GR0を初期化
+       #0002   #1200
+       #0003   #0000
+../../../../as/sample/sum_10.casl:    6:        LD      GR1,FST         ; GR1に初項を転送
+       #0004   #1010
+       #0005   #0011
+../../../../as/sample/sum_10.casl:    7:LOOP    ADDL    GR0,GR1         ; ループ先頭
+       #0006   #2601
+../../../../as/sample/sum_10.casl:    8:        ADDL    GR1,STEP        ; GR1 <- GR1 + 公差
+       #0007   #2210
+       #0008   #0013
+../../../../as/sample/sum_10.casl:    9:        CPL     GR1,LST         ; GR1が末項より大きい場合は終了
+       #0009   #4110
+       #000A   #0012
+../../../../as/sample/sum_10.casl:   10:        JPL     FIN             ; ↓
+       #000B   #6500
+       #000C   #000F
+../../../../as/sample/sum_10.casl:   11:        JUMP    LOOP            ; ループ終端
+       #000D   #6400
+       #000E   #0006
+../../../../as/sample/sum_10.casl:   12:FIN     POP     GR1
+       #000F   #7110
+../../../../as/sample/sum_10.casl:   13:        RET
+       #0010   #8100
+../../../../as/sample/sum_10.casl:   14:FST     DC      1               ; 初項
+       #0011   #0001
+../../../../as/sample/sum_10.casl:   15:LST     DC      10              ; 末項
+       #0012   #000A
+../../../../as/sample/sum_10.casl:   16:STEP    DC      1               ; 公差
+       #0013   #0001
+../../../../as/sample/sum_10.casl:   17:        END
+
+Executing machine codes
+#0000: Register::::
+#0000: GR0:      0 = #0000 = 0000000000000000
+#0000: GR1:      0 = #0000 = 0000000000000000
+#0000: GR2:      0 = #0000 = 0000000000000000
+#0000: GR3:      0 = #0000 = 0000000000000000
+#0000: GR4:      0 = #0000 = 0000000000000000
+#0000: GR5:      0 = #0000 = 0000000000000000
+#0000: GR6:      0 = #0000 = 0000000000000000
+#0000: GR7:      0 = #0000 = 0000000000000000
+#0000: SP:     512 = #0200 = 0000001000000000
+#0000: PR:       0 = #0000 = 0000000000000000
+#0000: FR (OF SF ZF): 000
+
+#0002: Register::::
+#0002: GR0:      0 = #0000 = 0000000000000000
+#0002: GR1:      0 = #0000 = 0000000000000000
+#0002: GR2:      0 = #0000 = 0000000000000000
+#0002: GR3:      0 = #0000 = 0000000000000000
+#0002: GR4:      0 = #0000 = 0000000000000000
+#0002: GR5:      0 = #0000 = 0000000000000000
+#0002: GR6:      0 = #0000 = 0000000000000000
+#0002: GR7:      0 = #0000 = 0000000000000000
+#0002: SP:     511 = #01FF = 0000000111111111
+#0002: PR:       2 = #0002 = 0000000000000010
+#0002: FR (OF SF ZF): 000
+
+#0004: Register::::
+#0004: GR0:      0 = #0000 = 0000000000000000
+#0004: GR1:      0 = #0000 = 0000000000000000
+#0004: GR2:      0 = #0000 = 0000000000000000
+#0004: GR3:      0 = #0000 = 0000000000000000
+#0004: GR4:      0 = #0000 = 0000000000000000
+#0004: GR5:      0 = #0000 = 0000000000000000
+#0004: GR6:      0 = #0000 = 0000000000000000
+#0004: GR7:      0 = #0000 = 0000000000000000
+#0004: SP:     511 = #01FF = 0000000111111111
+#0004: PR:       4 = #0004 = 0000000000000100
+#0004: FR (OF SF ZF): 000
+
+#0006: Register::::
+#0006: GR0:      0 = #0000 = 0000000000000000
+#0006: GR1:      1 = #0001 = 0000000000000001
+#0006: GR2:      0 = #0000 = 0000000000000000
+#0006: GR3:      0 = #0000 = 0000000000000000
+#0006: GR4:      0 = #0000 = 0000000000000000
+#0006: GR5:      0 = #0000 = 0000000000000000
+#0006: GR6:      0 = #0000 = 0000000000000000
+#0006: GR7:      0 = #0000 = 0000000000000000
+#0006: SP:     511 = #01FF = 0000000111111111
+#0006: PR:       6 = #0006 = 0000000000000110
+#0006: FR (OF SF ZF): 000
+
+#0007: Register::::
+#0007: GR0:      1 = #0001 = 0000000000000001
+#0007: GR1:      1 = #0001 = 0000000000000001
+#0007: GR2:      0 = #0000 = 0000000000000000
+#0007: GR3:      0 = #0000 = 0000000000000000
+#0007: GR4:      0 = #0000 = 0000000000000000
+#0007: GR5:      0 = #0000 = 0000000000000000
+#0007: GR6:      0 = #0000 = 0000000000000000
+#0007: GR7:      0 = #0000 = 0000000000000000
+#0007: SP:     511 = #01FF = 0000000111111111
+#0007: PR:       7 = #0007 = 0000000000000111
+#0007: FR (OF SF ZF): 000
+
+#0009: Register::::
+#0009: GR0:      1 = #0001 = 0000000000000001
+#0009: GR1:      2 = #0002 = 0000000000000010
+#0009: GR2:      0 = #0000 = 0000000000000000
+#0009: GR3:      0 = #0000 = 0000000000000000
+#0009: GR4:      0 = #0000 = 0000000000000000
+#0009: GR5:      0 = #0000 = 0000000000000000
+#0009: GR6:      0 = #0000 = 0000000000000000
+#0009: GR7:      0 = #0000 = 0000000000000000
+#0009: SP:     511 = #01FF = 0000000111111111
+#0009: PR:       9 = #0009 = 0000000000001001
+#0009: FR (OF SF ZF): 000
+
+#000B: Register::::
+#000B: GR0:      1 = #0001 = 0000000000000001
+#000B: GR1:      2 = #0002 = 0000000000000010
+#000B: GR2:      0 = #0000 = 0000000000000000
+#000B: GR3:      0 = #0000 = 0000000000000000
+#000B: GR4:      0 = #0000 = 0000000000000000
+#000B: GR5:      0 = #0000 = 0000000000000000
+#000B: GR6:      0 = #0000 = 0000000000000000
+#000B: GR7:      0 = #0000 = 0000000000000000
+#000B: SP:     511 = #01FF = 0000000111111111
+#000B: PR:      11 = #000B = 0000000000001011
+#000B: FR (OF SF ZF): 010
+
+#000D: Register::::
+#000D: GR0:      1 = #0001 = 0000000000000001
+#000D: GR1:      2 = #0002 = 0000000000000010
+#000D: GR2:      0 = #0000 = 0000000000000000
+#000D: GR3:      0 = #0000 = 0000000000000000
+#000D: GR4:      0 = #0000 = 0000000000000000
+#000D: GR5:      0 = #0000 = 0000000000000000
+#000D: GR6:      0 = #0000 = 0000000000000000
+#000D: GR7:      0 = #0000 = 0000000000000000
+#000D: SP:     511 = #01FF = 0000000111111111
+#000D: PR:      13 = #000D = 0000000000001101
+#000D: FR (OF SF ZF): 010
+
+#0006: Register::::
+#0006: GR0:      1 = #0001 = 0000000000000001
+#0006: GR1:      2 = #0002 = 0000000000000010
+#0006: GR2:      0 = #0000 = 0000000000000000
+#0006: GR3:      0 = #0000 = 0000000000000000
+#0006: GR4:      0 = #0000 = 0000000000000000
+#0006: GR5:      0 = #0000 = 0000000000000000
+#0006: GR6:      0 = #0000 = 0000000000000000
+#0006: GR7:      0 = #0000 = 0000000000000000
+#0006: SP:     511 = #01FF = 0000000111111111
+#0006: PR:       6 = #0006 = 0000000000000110
+#0006: FR (OF SF ZF): 010
+
+#0007: Register::::
+#0007: GR0:      3 = #0003 = 0000000000000011
+#0007: GR1:      2 = #0002 = 0000000000000010
+#0007: GR2:      0 = #0000 = 0000000000000000
+#0007: GR3:      0 = #0000 = 0000000000000000
+#0007: GR4:      0 = #0000 = 0000000000000000
+#0007: GR5:      0 = #0000 = 0000000000000000
+#0007: GR6:      0 = #0000 = 0000000000000000
+#0007: GR7:      0 = #0000 = 0000000000000000
+#0007: SP:     511 = #01FF = 0000000111111111
+#0007: PR:       7 = #0007 = 0000000000000111
+#0007: FR (OF SF ZF): 000
+
+#0009: Register::::
+#0009: GR0:      3 = #0003 = 0000000000000011
+#0009: GR1:      3 = #0003 = 0000000000000011
+#0009: GR2:      0 = #0000 = 0000000000000000
+#0009: GR3:      0 = #0000 = 0000000000000000
+#0009: GR4:      0 = #0000 = 0000000000000000
+#0009: GR5:      0 = #0000 = 0000000000000000
+#0009: GR6:      0 = #0000 = 0000000000000000
+#0009: GR7:      0 = #0000 = 0000000000000000
+#0009: SP:     511 = #01FF = 0000000111111111
+#0009: PR:       9 = #0009 = 0000000000001001
+#0009: FR (OF SF ZF): 000
+
+#000B: Register::::
+#000B: GR0:      3 = #0003 = 0000000000000011
+#000B: GR1:      3 = #0003 = 0000000000000011
+#000B: GR2:      0 = #0000 = 0000000000000000
+#000B: GR3:      0 = #0000 = 0000000000000000
+#000B: GR4:      0 = #0000 = 0000000000000000
+#000B: GR5:      0 = #0000 = 0000000000000000
+#000B: GR6:      0 = #0000 = 0000000000000000
+#000B: GR7:      0 = #0000 = 0000000000000000
+#000B: SP:     511 = #01FF = 0000000111111111
+#000B: PR:      11 = #000B = 0000000000001011
+#000B: FR (OF SF ZF): 010
+
+#000D: Register::::
+#000D: GR0:      3 = #0003 = 0000000000000011
+#000D: GR1:      3 = #0003 = 0000000000000011
+#000D: GR2:      0 = #0000 = 0000000000000000
+#000D: GR3:      0 = #0000 = 0000000000000000
+#000D: GR4:      0 = #0000 = 0000000000000000
+#000D: GR5:      0 = #0000 = 0000000000000000
+#000D: GR6:      0 = #0000 = 0000000000000000
+#000D: GR7:      0 = #0000 = 0000000000000000
+#000D: SP:     511 = #01FF = 0000000111111111
+#000D: PR:      13 = #000D = 0000000000001101
+#000D: FR (OF SF ZF): 010
+
+#0006: Register::::
+#0006: GR0:      3 = #0003 = 0000000000000011
+#0006: GR1:      3 = #0003 = 0000000000000011
+#0006: GR2:      0 = #0000 = 0000000000000000
+#0006: GR3:      0 = #0000 = 0000000000000000
+#0006: GR4:      0 = #0000 = 0000000000000000
+#0006: GR5:      0 = #0000 = 0000000000000000
+#0006: GR6:      0 = #0000 = 0000000000000000
+#0006: GR7:      0 = #0000 = 0000000000000000
+#0006: SP:     511 = #01FF = 0000000111111111
+#0006: PR:       6 = #0006 = 0000000000000110
+#0006: FR (OF SF ZF): 010
+
+#0007: Register::::
+#0007: GR0:      6 = #0006 = 0000000000000110
+#0007: GR1:      3 = #0003 = 0000000000000011
+#0007: GR2:      0 = #0000 = 0000000000000000
+#0007: GR3:      0 = #0000 = 0000000000000000
+#0007: GR4:      0 = #0000 = 0000000000000000
+#0007: GR5:      0 = #0000 = 0000000000000000
+#0007: GR6:      0 = #0000 = 0000000000000000
+#0007: GR7:      0 = #0000 = 0000000000000000
+#0007: SP:     511 = #01FF = 0000000111111111
+#0007: PR:       7 = #0007 = 0000000000000111
+#0007: FR (OF SF ZF): 000
+
+#0009: Register::::
+#0009: GR0:      6 = #0006 = 0000000000000110
+#0009: GR1:      4 = #0004 = 0000000000000100
+#0009: GR2:      0 = #0000 = 0000000000000000
+#0009: GR3:      0 = #0000 = 0000000000000000
+#0009: GR4:      0 = #0000 = 0000000000000000
+#0009: GR5:      0 = #0000 = 0000000000000000
+#0009: GR6:      0 = #0000 = 0000000000000000
+#0009: GR7:      0 = #0000 = 0000000000000000
+#0009: SP:     511 = #01FF = 0000000111111111
+#0009: PR:       9 = #0009 = 0000000000001001
+#0009: FR (OF SF ZF): 000
+
+#000B: Register::::
+#000B: GR0:      6 = #0006 = 0000000000000110
+#000B: GR1:      4 = #0004 = 0000000000000100
+#000B: GR2:      0 = #0000 = 0000000000000000
+#000B: GR3:      0 = #0000 = 0000000000000000
+#000B: GR4:      0 = #0000 = 0000000000000000
+#000B: GR5:      0 = #0000 = 0000000000000000
+#000B: GR6:      0 = #0000 = 0000000000000000
+#000B: GR7:      0 = #0000 = 0000000000000000
+#000B: SP:     511 = #01FF = 0000000111111111
+#000B: PR:      11 = #000B = 0000000000001011
+#000B: FR (OF SF ZF): 010
+
+#000D: Register::::
+#000D: GR0:      6 = #0006 = 0000000000000110
+#000D: GR1:      4 = #0004 = 0000000000000100
+#000D: GR2:      0 = #0000 = 0000000000000000
+#000D: GR3:      0 = #0000 = 0000000000000000
+#000D: GR4:      0 = #0000 = 0000000000000000
+#000D: GR5:      0 = #0000 = 0000000000000000
+#000D: GR6:      0 = #0000 = 0000000000000000
+#000D: GR7:      0 = #0000 = 0000000000000000
+#000D: SP:     511 = #01FF = 0000000111111111
+#000D: PR:      13 = #000D = 0000000000001101
+#000D: FR (OF SF ZF): 010
+
+#0006: Register::::
+#0006: GR0:      6 = #0006 = 0000000000000110
+#0006: GR1:      4 = #0004 = 0000000000000100
+#0006: GR2:      0 = #0000 = 0000000000000000
+#0006: GR3:      0 = #0000 = 0000000000000000
+#0006: GR4:      0 = #0000 = 0000000000000000
+#0006: GR5:      0 = #0000 = 0000000000000000
+#0006: GR6:      0 = #0000 = 0000000000000000
+#0006: GR7:      0 = #0000 = 0000000000000000
+#0006: SP:     511 = #01FF = 0000000111111111
+#0006: PR:       6 = #0006 = 0000000000000110
+#0006: FR (OF SF ZF): 010
+
+#0007: Register::::
+#0007: GR0:     10 = #000A = 0000000000001010 = '\n'
+#0007: GR1:      4 = #0004 = 0000000000000100
+#0007: GR2:      0 = #0000 = 0000000000000000
+#0007: GR3:      0 = #0000 = 0000000000000000
+#0007: GR4:      0 = #0000 = 0000000000000000
+#0007: GR5:      0 = #0000 = 0000000000000000
+#0007: GR6:      0 = #0000 = 0000000000000000
+#0007: GR7:      0 = #0000 = 0000000000000000
+#0007: SP:     511 = #01FF = 0000000111111111
+#0007: PR:       7 = #0007 = 0000000000000111
+#0007: FR (OF SF ZF): 000
+
+#0009: Register::::
+#0009: GR0:     10 = #000A = 0000000000001010 = '\n'
+#0009: GR1:      5 = #0005 = 0000000000000101
+#0009: GR2:      0 = #0000 = 0000000000000000
+#0009: GR3:      0 = #0000 = 0000000000000000
+#0009: GR4:      0 = #0000 = 0000000000000000
+#0009: GR5:      0 = #0000 = 0000000000000000
+#0009: GR6:      0 = #0000 = 0000000000000000
+#0009: GR7:      0 = #0000 = 0000000000000000
+#0009: SP:     511 = #01FF = 0000000111111111
+#0009: PR:       9 = #0009 = 0000000000001001
+#0009: FR (OF SF ZF): 000
+
+#000B: Register::::
+#000B: GR0:     10 = #000A = 0000000000001010 = '\n'
+#000B: GR1:      5 = #0005 = 0000000000000101
+#000B: GR2:      0 = #0000 = 0000000000000000
+#000B: GR3:      0 = #0000 = 0000000000000000
+#000B: GR4:      0 = #0000 = 0000000000000000
+#000B: GR5:      0 = #0000 = 0000000000000000
+#000B: GR6:      0 = #0000 = 0000000000000000
+#000B: GR7:      0 = #0000 = 0000000000000000
+#000B: SP:     511 = #01FF = 0000000111111111
+#000B: PR:      11 = #000B = 0000000000001011
+#000B: FR (OF SF ZF): 010
+
+#000D: Register::::
+#000D: GR0:     10 = #000A = 0000000000001010 = '\n'
+#000D: GR1:      5 = #0005 = 0000000000000101
+#000D: GR2:      0 = #0000 = 0000000000000000
+#000D: GR3:      0 = #0000 = 0000000000000000
+#000D: GR4:      0 = #0000 = 0000000000000000
+#000D: GR5:      0 = #0000 = 0000000000000000
+#000D: GR6:      0 = #0000 = 0000000000000000
+#000D: GR7:      0 = #0000 = 0000000000000000
+#000D: SP:     511 = #01FF = 0000000111111111
+#000D: PR:      13 = #000D = 0000000000001101
+#000D: FR (OF SF ZF): 010
+
+#0006: Register::::
+#0006: GR0:     10 = #000A = 0000000000001010 = '\n'
+#0006: GR1:      5 = #0005 = 0000000000000101
+#0006: GR2:      0 = #0000 = 0000000000000000
+#0006: GR3:      0 = #0000 = 0000000000000000
+#0006: GR4:      0 = #0000 = 0000000000000000
+#0006: GR5:      0 = #0000 = 0000000000000000
+#0006: GR6:      0 = #0000 = 0000000000000000
+#0006: GR7:      0 = #0000 = 0000000000000000
+#0006: SP:     511 = #01FF = 0000000111111111
+#0006: PR:       6 = #0006 = 0000000000000110
+#0006: FR (OF SF ZF): 010
+
+#0007: Register::::
+#0007: GR0:     15 = #000F = 0000000000001111
+#0007: GR1:      5 = #0005 = 0000000000000101
+#0007: GR2:      0 = #0000 = 0000000000000000
+#0007: GR3:      0 = #0000 = 0000000000000000
+#0007: GR4:      0 = #0000 = 0000000000000000
+#0007: GR5:      0 = #0000 = 0000000000000000
+#0007: GR6:      0 = #0000 = 0000000000000000
+#0007: GR7:      0 = #0000 = 0000000000000000
+#0007: SP:     511 = #01FF = 0000000111111111
+#0007: PR:       7 = #0007 = 0000000000000111
+#0007: FR (OF SF ZF): 000
+
+#0009: Register::::
+#0009: GR0:     15 = #000F = 0000000000001111
+#0009: GR1:      6 = #0006 = 0000000000000110
+#0009: GR2:      0 = #0000 = 0000000000000000
+#0009: GR3:      0 = #0000 = 0000000000000000
+#0009: GR4:      0 = #0000 = 0000000000000000
+#0009: GR5:      0 = #0000 = 0000000000000000
+#0009: GR6:      0 = #0000 = 0000000000000000
+#0009: GR7:      0 = #0000 = 0000000000000000
+#0009: SP:     511 = #01FF = 0000000111111111
+#0009: PR:       9 = #0009 = 0000000000001001
+#0009: FR (OF SF ZF): 000
+
+#000B: Register::::
+#000B: GR0:     15 = #000F = 0000000000001111
+#000B: GR1:      6 = #0006 = 0000000000000110
+#000B: GR2:      0 = #0000 = 0000000000000000
+#000B: GR3:      0 = #0000 = 0000000000000000
+#000B: GR4:      0 = #0000 = 0000000000000000
+#000B: GR5:      0 = #0000 = 0000000000000000
+#000B: GR6:      0 = #0000 = 0000000000000000
+#000B: GR7:      0 = #0000 = 0000000000000000
+#000B: SP:     511 = #01FF = 0000000111111111
+#000B: PR:      11 = #000B = 0000000000001011
+#000B: FR (OF SF ZF): 010
+
+#000D: Register::::
+#000D: GR0:     15 = #000F = 0000000000001111
+#000D: GR1:      6 = #0006 = 0000000000000110
+#000D: GR2:      0 = #0000 = 0000000000000000
+#000D: GR3:      0 = #0000 = 0000000000000000
+#000D: GR4:      0 = #0000 = 0000000000000000
+#000D: GR5:      0 = #0000 = 0000000000000000
+#000D: GR6:      0 = #0000 = 0000000000000000
+#000D: GR7:      0 = #0000 = 0000000000000000
+#000D: SP:     511 = #01FF = 0000000111111111
+#000D: PR:      13 = #000D = 0000000000001101
+#000D: FR (OF SF ZF): 010
+
+#0006: Register::::
+#0006: GR0:     15 = #000F = 0000000000001111
+#0006: GR1:      6 = #0006 = 0000000000000110
+#0006: GR2:      0 = #0000 = 0000000000000000
+#0006: GR3:      0 = #0000 = 0000000000000000
+#0006: GR4:      0 = #0000 = 0000000000000000
+#0006: GR5:      0 = #0000 = 0000000000000000
+#0006: GR6:      0 = #0000 = 0000000000000000
+#0006: GR7:      0 = #0000 = 0000000000000000
+#0006: SP:     511 = #01FF = 0000000111111111
+#0006: PR:       6 = #0006 = 0000000000000110
+#0006: FR (OF SF ZF): 010
+
+#0007: Register::::
+#0007: GR0:     21 = #0015 = 0000000000010101
+#0007: GR1:      6 = #0006 = 0000000000000110
+#0007: GR2:      0 = #0000 = 0000000000000000
+#0007: GR3:      0 = #0000 = 0000000000000000
+#0007: GR4:      0 = #0000 = 0000000000000000
+#0007: GR5:      0 = #0000 = 0000000000000000
+#0007: GR6:      0 = #0000 = 0000000000000000
+#0007: GR7:      0 = #0000 = 0000000000000000
+#0007: SP:     511 = #01FF = 0000000111111111
+#0007: PR:       7 = #0007 = 0000000000000111
+#0007: FR (OF SF ZF): 000
+
+#0009: Register::::
+#0009: GR0:     21 = #0015 = 0000000000010101
+#0009: GR1:      7 = #0007 = 0000000000000111
+#0009: GR2:      0 = #0000 = 0000000000000000
+#0009: GR3:      0 = #0000 = 0000000000000000
+#0009: GR4:      0 = #0000 = 0000000000000000
+#0009: GR5:      0 = #0000 = 0000000000000000
+#0009: GR6:      0 = #0000 = 0000000000000000
+#0009: GR7:      0 = #0000 = 0000000000000000
+#0009: SP:     511 = #01FF = 0000000111111111
+#0009: PR:       9 = #0009 = 0000000000001001
+#0009: FR (OF SF ZF): 000
+
+#000B: Register::::
+#000B: GR0:     21 = #0015 = 0000000000010101
+#000B: GR1:      7 = #0007 = 0000000000000111
+#000B: GR2:      0 = #0000 = 0000000000000000
+#000B: GR3:      0 = #0000 = 0000000000000000
+#000B: GR4:      0 = #0000 = 0000000000000000
+#000B: GR5:      0 = #0000 = 0000000000000000
+#000B: GR6:      0 = #0000 = 0000000000000000
+#000B: GR7:      0 = #0000 = 0000000000000000
+#000B: SP:     511 = #01FF = 0000000111111111
+#000B: PR:      11 = #000B = 0000000000001011
+#000B: FR (OF SF ZF): 010
+
+#000D: Register::::
+#000D: GR0:     21 = #0015 = 0000000000010101
+#000D: GR1:      7 = #0007 = 0000000000000111
+#000D: GR2:      0 = #0000 = 0000000000000000
+#000D: GR3:      0 = #0000 = 0000000000000000
+#000D: GR4:      0 = #0000 = 0000000000000000
+#000D: GR5:      0 = #0000 = 0000000000000000
+#000D: GR6:      0 = #0000 = 0000000000000000
+#000D: GR7:      0 = #0000 = 0000000000000000
+#000D: SP:     511 = #01FF = 0000000111111111
+#000D: PR:      13 = #000D = 0000000000001101
+#000D: FR (OF SF ZF): 010
+
+#0006: Register::::
+#0006: GR0:     21 = #0015 = 0000000000010101
+#0006: GR1:      7 = #0007 = 0000000000000111
+#0006: GR2:      0 = #0000 = 0000000000000000
+#0006: GR3:      0 = #0000 = 0000000000000000
+#0006: GR4:      0 = #0000 = 0000000000000000
+#0006: GR5:      0 = #0000 = 0000000000000000
+#0006: GR6:      0 = #0000 = 0000000000000000
+#0006: GR7:      0 = #0000 = 0000000000000000
+#0006: SP:     511 = #01FF = 0000000111111111
+#0006: PR:       6 = #0006 = 0000000000000110
+#0006: FR (OF SF ZF): 010
+
+#0007: Register::::
+#0007: GR0:     28 = #001C = 0000000000011100
+#0007: GR1:      7 = #0007 = 0000000000000111
+#0007: GR2:      0 = #0000 = 0000000000000000
+#0007: GR3:      0 = #0000 = 0000000000000000
+#0007: GR4:      0 = #0000 = 0000000000000000
+#0007: GR5:      0 = #0000 = 0000000000000000
+#0007: GR6:      0 = #0000 = 0000000000000000
+#0007: GR7:      0 = #0000 = 0000000000000000
+#0007: SP:     511 = #01FF = 0000000111111111
+#0007: PR:       7 = #0007 = 0000000000000111
+#0007: FR (OF SF ZF): 000
+
+#0009: Register::::
+#0009: GR0:     28 = #001C = 0000000000011100
+#0009: GR1:      8 = #0008 = 0000000000001000
+#0009: GR2:      0 = #0000 = 0000000000000000
+#0009: GR3:      0 = #0000 = 0000000000000000
+#0009: GR4:      0 = #0000 = 0000000000000000
+#0009: GR5:      0 = #0000 = 0000000000000000
+#0009: GR6:      0 = #0000 = 0000000000000000
+#0009: GR7:      0 = #0000 = 0000000000000000
+#0009: SP:     511 = #01FF = 0000000111111111
+#0009: PR:       9 = #0009 = 0000000000001001
+#0009: FR (OF SF ZF): 000
+
+#000B: Register::::
+#000B: GR0:     28 = #001C = 0000000000011100
+#000B: GR1:      8 = #0008 = 0000000000001000
+#000B: GR2:      0 = #0000 = 0000000000000000
+#000B: GR3:      0 = #0000 = 0000000000000000
+#000B: GR4:      0 = #0000 = 0000000000000000
+#000B: GR5:      0 = #0000 = 0000000000000000
+#000B: GR6:      0 = #0000 = 0000000000000000
+#000B: GR7:      0 = #0000 = 0000000000000000
+#000B: SP:     511 = #01FF = 0000000111111111
+#000B: PR:      11 = #000B = 0000000000001011
+#000B: FR (OF SF ZF): 010
+
+#000D: Register::::
+#000D: GR0:     28 = #001C = 0000000000011100
+#000D: GR1:      8 = #0008 = 0000000000001000
+#000D: GR2:      0 = #0000 = 0000000000000000
+#000D: GR3:      0 = #0000 = 0000000000000000
+#000D: GR4:      0 = #0000 = 0000000000000000
+#000D: GR5:      0 = #0000 = 0000000000000000
+#000D: GR6:      0 = #0000 = 0000000000000000
+#000D: GR7:      0 = #0000 = 0000000000000000
+#000D: SP:     511 = #01FF = 0000000111111111
+#000D: PR:      13 = #000D = 0000000000001101
+#000D: FR (OF SF ZF): 010
+
+#0006: Register::::
+#0006: GR0:     28 = #001C = 0000000000011100
+#0006: GR1:      8 = #0008 = 0000000000001000
+#0006: GR2:      0 = #0000 = 0000000000000000
+#0006: GR3:      0 = #0000 = 0000000000000000
+#0006: GR4:      0 = #0000 = 0000000000000000
+#0006: GR5:      0 = #0000 = 0000000000000000
+#0006: GR6:      0 = #0000 = 0000000000000000
+#0006: GR7:      0 = #0000 = 0000000000000000
+#0006: SP:     511 = #01FF = 0000000111111111
+#0006: PR:       6 = #0006 = 0000000000000110
+#0006: FR (OF SF ZF): 010
+
+#0007: Register::::
+#0007: GR0:     36 = #0024 = 0000000000100100 = '$'
+#0007: GR1:      8 = #0008 = 0000000000001000
+#0007: GR2:      0 = #0000 = 0000000000000000
+#0007: GR3:      0 = #0000 = 0000000000000000
+#0007: GR4:      0 = #0000 = 0000000000000000
+#0007: GR5:      0 = #0000 = 0000000000000000
+#0007: GR6:      0 = #0000 = 0000000000000000
+#0007: GR7:      0 = #0000 = 0000000000000000
+#0007: SP:     511 = #01FF = 0000000111111111
+#0007: PR:       7 = #0007 = 0000000000000111
+#0007: FR (OF SF ZF): 000
+
+#0009: Register::::
+#0009: GR0:     36 = #0024 = 0000000000100100 = '$'
+#0009: GR1:      9 = #0009 = 0000000000001001 = '\t'
+#0009: GR2:      0 = #0000 = 0000000000000000
+#0009: GR3:      0 = #0000 = 0000000000000000
+#0009: GR4:      0 = #0000 = 0000000000000000
+#0009: GR5:      0 = #0000 = 0000000000000000
+#0009: GR6:      0 = #0000 = 0000000000000000
+#0009: GR7:      0 = #0000 = 0000000000000000
+#0009: SP:     511 = #01FF = 0000000111111111
+#0009: PR:       9 = #0009 = 0000000000001001
+#0009: FR (OF SF ZF): 000
+
+#000B: Register::::
+#000B: GR0:     36 = #0024 = 0000000000100100 = '$'
+#000B: GR1:      9 = #0009 = 0000000000001001 = '\t'
+#000B: GR2:      0 = #0000 = 0000000000000000
+#000B: GR3:      0 = #0000 = 0000000000000000
+#000B: GR4:      0 = #0000 = 0000000000000000
+#000B: GR5:      0 = #0000 = 0000000000000000
+#000B: GR6:      0 = #0000 = 0000000000000000
+#000B: GR7:      0 = #0000 = 0000000000000000
+#000B: SP:     511 = #01FF = 0000000111111111
+#000B: PR:      11 = #000B = 0000000000001011
+#000B: FR (OF SF ZF): 010
+
+#000D: Register::::
+#000D: GR0:     36 = #0024 = 0000000000100100 = '$'
+#000D: GR1:      9 = #0009 = 0000000000001001 = '\t'
+#000D: GR2:      0 = #0000 = 0000000000000000
+#000D: GR3:      0 = #0000 = 0000000000000000
+#000D: GR4:      0 = #0000 = 0000000000000000
+#000D: GR5:      0 = #0000 = 0000000000000000
+#000D: GR6:      0 = #0000 = 0000000000000000
+#000D: GR7:      0 = #0000 = 0000000000000000
+#000D: SP:     511 = #01FF = 0000000111111111
+#000D: PR:      13 = #000D = 0000000000001101
+#000D: FR (OF SF ZF): 010
+
+#0006: Register::::
+#0006: GR0:     36 = #0024 = 0000000000100100 = '$'
+#0006: GR1:      9 = #0009 = 0000000000001001 = '\t'
+#0006: GR2:      0 = #0000 = 0000000000000000
+#0006: GR3:      0 = #0000 = 0000000000000000
+#0006: GR4:      0 = #0000 = 0000000000000000
+#0006: GR5:      0 = #0000 = 0000000000000000
+#0006: GR6:      0 = #0000 = 0000000000000000
+#0006: GR7:      0 = #0000 = 0000000000000000
+#0006: SP:     511 = #01FF = 0000000111111111
+#0006: PR:       6 = #0006 = 0000000000000110
+#0006: FR (OF SF ZF): 010
+
+#0007: Register::::
+#0007: GR0:     45 = #002D = 0000000000101101 = '-'
+#0007: GR1:      9 = #0009 = 0000000000001001 = '\t'
+#0007: GR2:      0 = #0000 = 0000000000000000
+#0007: GR3:      0 = #0000 = 0000000000000000
+#0007: GR4:      0 = #0000 = 0000000000000000
+#0007: GR5:      0 = #0000 = 0000000000000000
+#0007: GR6:      0 = #0000 = 0000000000000000
+#0007: GR7:      0 = #0000 = 0000000000000000
+#0007: SP:     511 = #01FF = 0000000111111111
+#0007: PR:       7 = #0007 = 0000000000000111
+#0007: FR (OF SF ZF): 000
+
+#0009: Register::::
+#0009: GR0:     45 = #002D = 0000000000101101 = '-'
+#0009: GR1:     10 = #000A = 0000000000001010 = '\n'
+#0009: GR2:      0 = #0000 = 0000000000000000
+#0009: GR3:      0 = #0000 = 0000000000000000
+#0009: GR4:      0 = #0000 = 0000000000000000
+#0009: GR5:      0 = #0000 = 0000000000000000
+#0009: GR6:      0 = #0000 = 0000000000000000
+#0009: GR7:      0 = #0000 = 0000000000000000
+#0009: SP:     511 = #01FF = 0000000111111111
+#0009: PR:       9 = #0009 = 0000000000001001
+#0009: FR (OF SF ZF): 000
+
+#000B: Register::::
+#000B: GR0:     45 = #002D = 0000000000101101 = '-'
+#000B: GR1:     10 = #000A = 0000000000001010 = '\n'
+#000B: GR2:      0 = #0000 = 0000000000000000
+#000B: GR3:      0 = #0000 = 0000000000000000
+#000B: GR4:      0 = #0000 = 0000000000000000
+#000B: GR5:      0 = #0000 = 0000000000000000
+#000B: GR6:      0 = #0000 = 0000000000000000
+#000B: GR7:      0 = #0000 = 0000000000000000
+#000B: SP:     511 = #01FF = 0000000111111111
+#000B: PR:      11 = #000B = 0000000000001011
+#000B: FR (OF SF ZF): 001
+
+#000D: Register::::
+#000D: GR0:     45 = #002D = 0000000000101101 = '-'
+#000D: GR1:     10 = #000A = 0000000000001010 = '\n'
+#000D: GR2:      0 = #0000 = 0000000000000000
+#000D: GR3:      0 = #0000 = 0000000000000000
+#000D: GR4:      0 = #0000 = 0000000000000000
+#000D: GR5:      0 = #0000 = 0000000000000000
+#000D: GR6:      0 = #0000 = 0000000000000000
+#000D: GR7:      0 = #0000 = 0000000000000000
+#000D: SP:     511 = #01FF = 0000000111111111
+#000D: PR:      13 = #000D = 0000000000001101
+#000D: FR (OF SF ZF): 001
+
+#0006: Register::::
+#0006: GR0:     45 = #002D = 0000000000101101 = '-'
+#0006: GR1:     10 = #000A = 0000000000001010 = '\n'
+#0006: GR2:      0 = #0000 = 0000000000000000
+#0006: GR3:      0 = #0000 = 0000000000000000
+#0006: GR4:      0 = #0000 = 0000000000000000
+#0006: GR5:      0 = #0000 = 0000000000000000
+#0006: GR6:      0 = #0000 = 0000000000000000
+#0006: GR7:      0 = #0000 = 0000000000000000
+#0006: SP:     511 = #01FF = 0000000111111111
+#0006: PR:       6 = #0006 = 0000000000000110
+#0006: FR (OF SF ZF): 001
+
+#0007: Register::::
+#0007: GR0:     55 = #0037 = 0000000000110111 = '7'
+#0007: GR1:     10 = #000A = 0000000000001010 = '\n'
+#0007: GR2:      0 = #0000 = 0000000000000000
+#0007: GR3:      0 = #0000 = 0000000000000000
+#0007: GR4:      0 = #0000 = 0000000000000000
+#0007: GR5:      0 = #0000 = 0000000000000000
+#0007: GR6:      0 = #0000 = 0000000000000000
+#0007: GR7:      0 = #0000 = 0000000000000000
+#0007: SP:     511 = #01FF = 0000000111111111
+#0007: PR:       7 = #0007 = 0000000000000111
+#0007: FR (OF SF ZF): 000
+
+#0009: Register::::
+#0009: GR0:     55 = #0037 = 0000000000110111 = '7'
+#0009: GR1:     11 = #000B = 0000000000001011
+#0009: GR2:      0 = #0000 = 0000000000000000
+#0009: GR3:      0 = #0000 = 0000000000000000
+#0009: GR4:      0 = #0000 = 0000000000000000
+#0009: GR5:      0 = #0000 = 0000000000000000
+#0009: GR6:      0 = #0000 = 0000000000000000
+#0009: GR7:      0 = #0000 = 0000000000000000
+#0009: SP:     511 = #01FF = 0000000111111111
+#0009: PR:       9 = #0009 = 0000000000001001
+#0009: FR (OF SF ZF): 000
+
+#000B: Register::::
+#000B: GR0:     55 = #0037 = 0000000000110111 = '7'
+#000B: GR1:     11 = #000B = 0000000000001011
+#000B: GR2:      0 = #0000 = 0000000000000000
+#000B: GR3:      0 = #0000 = 0000000000000000
+#000B: GR4:      0 = #0000 = 0000000000000000
+#000B: GR5:      0 = #0000 = 0000000000000000
+#000B: GR6:      0 = #0000 = 0000000000000000
+#000B: GR7:      0 = #0000 = 0000000000000000
+#000B: SP:     511 = #01FF = 0000000111111111
+#000B: PR:      11 = #000B = 0000000000001011
+#000B: FR (OF SF ZF): 000
+
+#000F: Register::::
+#000F: GR0:     55 = #0037 = 0000000000110111 = '7'
+#000F: GR1:     11 = #000B = 0000000000001011
+#000F: GR2:      0 = #0000 = 0000000000000000
+#000F: GR3:      0 = #0000 = 0000000000000000
+#000F: GR4:      0 = #0000 = 0000000000000000
+#000F: GR5:      0 = #0000 = 0000000000000000
+#000F: GR6:      0 = #0000 = 0000000000000000
+#000F: GR7:      0 = #0000 = 0000000000000000
+#000F: SP:     511 = #01FF = 0000000111111111
+#000F: PR:      15 = #000F = 0000000000001111
+#000F: FR (OF SF ZF): 000
+
+#0010: Register::::
+#0010: GR0:     55 = #0037 = 0000000000110111 = '7'
+#0010: GR1:      0 = #0000 = 0000000000000000
+#0010: GR2:      0 = #0000 = 0000000000000000
+#0010: GR3:      0 = #0000 = 0000000000000000
+#0010: GR4:      0 = #0000 = 0000000000000000
+#0010: GR5:      0 = #0000 = 0000000000000000
+#0010: GR6:      0 = #0000 = 0000000000000000
+#0010: GR7:      0 = #0000 = 0000000000000000
+#0010: SP:     512 = #0200 = 0000001000000000
+#0010: PR:      16 = #0010 = 0000000000010000
+#0010: FR (OF SF ZF): 000
+