366 lines
6.7 KiB
Text
366 lines
6.7 KiB
Text
NAME=8051: checking bitness (asm.bits)
|
|
FILE=malloc://32
|
|
CMDS=<<EOF
|
|
e asm.arch=8051
|
|
e asm.bits=8
|
|
EOF
|
|
EXPECT=<<EOF
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: checking bitness writing (asm.bits)
|
|
FILE=malloc://32
|
|
CMDS=<<EOF
|
|
e asm.arch=8051
|
|
e asm.bits
|
|
EOF
|
|
EXPECT=<<EOF
|
|
8
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051 instruction length
|
|
FILE=malloc://32
|
|
CMDS=<<EOF
|
|
e asm.arch=8051
|
|
wx 30450d @ 0
|
|
wx d268 @ 3
|
|
wx ef @ 3+2
|
|
ao 3~size
|
|
EOF
|
|
EXPECT=<<EOF
|
|
size: 3
|
|
size: 2
|
|
size: 1
|
|
EOF
|
|
RUN
|
|
|
|
NAME=: [DJNZ r0,offs] - length check
|
|
FILE=malloc://32
|
|
CMDS=e asm.arch=8051 ; wx d8fc ; ao 1~size
|
|
EXPECT=<<EOF
|
|
size: 2
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [ACALL addr11] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx f123 ; ao 1~jump
|
|
EXPECT=<<EOF
|
|
jump: 0x00001723
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [AJMP addr11] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx e123 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x00001723
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [CJNE a,imm,offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx b4ab13 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x00001216
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [CJNE a,dir,offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx b56018 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x0000121b
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [CJNE @r1,imm,offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx b72432 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x00001235
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [CJNE r7,imm,offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx bf0205 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x00001208
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [DJNZ dir,offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx d54088 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x0000118b
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [DJNZ r0,offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx d8fc ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x000011fe
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [DJNZ r0,offs] - length check
|
|
FILE=malloc://32
|
|
CMDS=e asm.arch=8051 ; wx d8fc ; ao 1~size
|
|
EXPECT=<<EOF
|
|
size: 2
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [DJNZ r7,offs] - length check
|
|
FILE=malloc://32
|
|
CMDS=e asm.arch=8051 ; wx dffa ; ao 1~size
|
|
EXPECT=<<EOF
|
|
size: 2
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JB bit,offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx 207d03 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x00001206
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JBC bit,offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx 101508 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x0000120b
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JC offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx 4003 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x00001205
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JNB bit,offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx 305108 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x0000120b
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JNC offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx 5007 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x00001209
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JNZ offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx 7013 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x00001215
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JZ offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx 6015 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x00001217
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [LCALL add16] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx 12b6cf ; ao 1~jump
|
|
EXPECT=<<EOF
|
|
jump: 0x0000b6cf
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [LJMP addr16] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx 022c0d ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x00002c0d
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [SJMP offs] - jump check
|
|
FILE=malloc://10000
|
|
CMDS=e asm.arch=8051 ; s 0x1200 ; wx 8014 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jump: 0x00001216
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [ACALL addr11] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx f123 ; pi 1 ; ao 1~jump
|
|
EXPECT=<<EOF
|
|
acall 0x11723
|
|
jump: 0x00011723
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [AJMP addr11] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx e123 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
ajmp 0x11723
|
|
jump: 0x00011723
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [CJNE a,imm,offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx b4ab13 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
cjne a, #0xab, 0x11216
|
|
jump: 0x00011216
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [CJNE a,dir,offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx b56018 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
cjne a, 0x60, 0x1121b
|
|
jump: 0x0001121b
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [CJNE @r1,imm,offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx b72432 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
cjne @r1, #0x24, 0x11235
|
|
jump: 0x00011235
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [CJNE r7,imm,offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx bf0205 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
cjne r7, #0x02, 0x11208
|
|
jump: 0x00011208
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [DJNZ dir,offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx d54088 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
djnz 0x40, 0x1118b
|
|
jump: 0x0001118b
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [DJNZ r0,offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx d8fc ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
djnz r0, 0x111fe
|
|
jump: 0x000111fe
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JB bit,offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx 207d03 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jb 0x2f.5, 0x11206
|
|
jump: 0x00011206
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JBC bit,offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx 101508 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jbc 0x22.5, 0x1120b
|
|
jump: 0x0001120b
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JC offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx 4003 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jc 0x11205
|
|
jump: 0x00011205
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JNB bit,offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx 305108 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jnb 0x2a.1, 0x1120b
|
|
jump: 0x0001120b
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JNC offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx 5007 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jnc 0x11209
|
|
jump: 0x00011209
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JNZ offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx 7013 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jnz 0x11215
|
|
jump: 0x00011215
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [JZ offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx 6015 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
jz 0x11217
|
|
jump: 0x00011217
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [LCALL add16] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx 12b6cf ; pi 1 ; ao 1~jump
|
|
EXPECT=<<EOF
|
|
lcall 0x1b6cf
|
|
jump: 0x0001b6cf
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [LJMP addr16] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx 022c0d ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
ljmp 0x12c0d
|
|
jump: 0x00012c0d
|
|
EOF
|
|
RUN
|
|
|
|
NAME=8051: [SJMP offs] - bank jump check
|
|
FILE=malloc://0x20000
|
|
CMDS=e asm.arch=8051 ; s 0x11200 ; wx 8014 ; pi 1 ; ao 1~^jump
|
|
EXPECT=<<EOF
|
|
sjmp 0x11216
|
|
jump: 0x00011216
|
|
EOF
|
|
RUN
|