dect
/
asl
Archived
13
0
Fork 0
This repository has been archived on 2022-02-17. You can view files and clone it, but cannot push or open issues or pull requests.
asl/tests/t_xa/t_xa.asm

604 lines
13 KiB
NASM

cpu xag3
page 0
include stddefxa
segment io
port1 ds.b 1
port2 ds.b 1
segment code
supmode on
regbit1 bit r3l.4
regbit2 bit sp.5
regbit3 bit r5h.5
regbit4 bit sp.14
membit1 bit 22h.5
membit2 bit 50023h.5
iobit1 bit port1.2
regbit5 bit regbit4+1
add.b r4h,r1l
add.w r5,r3
add.b r5l,[r6]
add.w r4,[sp]
add.b [r6],r5l
add.w [sp],r4
add.b r3h,[r6+2]
add.w r4,[r3+100]
add.b [r6+2],r3h
add.w [r3+100],r4
add.b r3h,[r6+200]
add.w r4,[r3+1000]
add.b [r6+200],r3h
add.w [r3+1000],r4
add.b r4h,[r1+]
add.w r5,[r6+]
add.b [r1+],r4h
add.w [r6+],r5
add.b 200h,r2l
add.w 123h,r6
add.b r2l,200h
add.w r6,123h
add.b r5h,#34h
add.w r3,#1234h
add.b [r5],#34h
add.w [r3],#1234h
add.b [r5+],#34h
add.w [r3+],#1234h
add.b [r5+2],#34h
add.w [r3+100],#1234h
add.b [r5+200],#34h
add.w [r3+1000],#1234h
add.b 200h,#34h
add.w 123h,#1234h
addc.b r4h,r1l
addc.w r5,r3
addc.b r5l,[r6]
addc.w r4,[sp]
addc.b [r6],r5l
addc.w [sp],r4
addc.b r3h,[r6+2]
addc.w r4,[r3+100]
addc.b [r6+2],r3h
addc.w [r3+100],r4
addc.b r3h,[r6+200]
addc.w r4,[r3+1000]
addc.b [r6+200],r3h
addc.w [r3+1000],r4
addc.b r4h,[r1+]
addc.w r5,[r6+]
addc.b [r1+],r4h
addc.w [r6+],r5
addc.b 200h,r2l
addc.w 123h,r6
addc.b r2l,200h
addc.w r6,123h
addc.b r5h,#34h
addc.w r3,#1234h
addc.b [r5],#34h
addc.w [r3],#1234h
addc.b [r5+],#34h
addc.w [r3+],#1234h
addc.b [r5+2],#34h
addc.w [r3+100],#1234h
addc.b [r5+200],#34h
addc.w [r3+1000],#1234h
addc.b 200h,#34h
addc.w 123h,#1234h
adds.b r5h,#3
adds.w r6,#5
adds.b [r4],#3
adds.w [sp],#5
adds.b [r4+],#3
adds.w [sp+],#5
adds.b [r4+20],#3
adds.w [sp+20],#5
adds.b [r4-200],#3
adds.w [sp-200],#5
adds.b 200h,#3
adds.w 123h,#5
and.b r4h,r1l
and.w r5,r3
and.b r5l,[r6]
and.w r4,[sp]
and.b [r6],r5l
and.w [sp],r4
and.b r3h,[r6+2]
and.w r4,[r3+100]
and.b [r6+2],r3h
and.w [r3+100],r4
and.b r3h,[r6+200]
and.w r4,[r3+1000]
and.b [r6+200],r3h
and.w [r3+1000],r4
and.b r4h,[r1+]
and.w r5,[r6+]
and.b [r1+],r4h
and.w [r6+],r5
and.b 200h,r2l
and.w 123h,r6
and.b r2l,200h
and.w r6,123h
and.b r5h,#34h
and.w r3,#1234h
and.b [r5],#34h
and.w [r3],#1234h
and.b [r5+],#34h
and.w [r3+],#1234h
and.b [r5+2],#34h
and.w [r3+100],#1234h
and.b [r5+200],#34h
and.w [r3+1000],#1234h
and.b 200h,#34h
and.w 123h,#1234h
anl c,regbit1
anl c,/iobit1
anl c,r5.12
anl c,/r4h.1
asl.b r4h,r1l
asl.w r6,r3h
asl.d r2,r4l
asl.b r4h,#6
asl.w r6,#12
asl.d r2,#24
asr.b r4h,r1l
asr.w r6,r3h
asr.d r2,r4l
asr.b r4h,#6
asr.w r6,#12
asr.d r2,#24
bcc label1
nop
bcc label2
nop
bcs label1
beq label1
bg label1
bge label1
bgt label1
ble label1
blt label1
bmi label1
bne label1
bnv label1
bov label1
bpl label1
br label1
call label1
call label1
call [r4]
cjne r5l,123h,label1
cjne r6,456h,label1
cjne r5l,#34h,label1
cjne r6,#1234h,label1
cjne.b [r6],#34h,label1
cjne.w [r6],#1234h,label1
label1: nop
label2: nop
clr regbit1
cmp.b r4h,r1l
cmp.w r5,r3
cmp.b r5l,[r6]
cmp.w r4,[sp]
cmp.b [r6],r5l
cmp.w [sp],r4
cmp.b r3h,[r6+2]
cmp.w r4,[r3+100]
cmp.b [r6+2],r3h
cmp.w [r3+100],r4
cmp.b r3h,[r6+200]
cmp.w r4,[r3+1000]
cmp.b [r6+200],r3h
cmp.w [r3+1000],r4
cmp.b r4h,[r1+]
cmp.w r5,[r6+]
cmp.b [r1+],r4h
cmp.w [r6+],r5
cmp.b 200h,r2l
cmp.w 123h,r6
cmp.b r2l,200h
cmp.w r6,123h
cmp.b r5h,#34h
cmp.w r3,#1234h
cmp.b [r5],#34h
cmp.w [r3],#1234h
cmp.b [r5+],#34h
cmp.w [r3+],#1234h
cmp.b [r5+2],#34h
cmp.w [r3+100],#1234h
cmp.b [r5+200],#34h
cmp.w [r3+1000],#1234h
cmp.b 200h,#34h
cmp.w 123h,#1234h
cpl r4l
cpl sp
da r4l
div.w r4,r1h
div.w r5,#23
div.d r2,r5
div.d r6,#1234h
divu.b r4l,r5l
divu.b r4l,#23
divu.w r4,r1h
divu.w r5,#23
divu.d r2,r5
divu.d r6,#1234h
d1: djnz r5l,d1
d2: djnz.b 123h,d2
d3: djnz r5,d3
d4: djnz.w 123h,d4
fcall 123456h
fjmp 123456h
jb regbit1,d1
jbc regbit1,d2
jmp 1234h
jmp [r3]
jmp [a+dptr]
jmp [[r5+]]
jnb regbit1,d3
jnz d3
jz d3
lea r5,r4+4
lea r6,r1+1000
lsr.b r4h,r1l
lsr.w r6,r3h
lsr.d r2,r4l
lsr.b r4h,#6
lsr.w r6,#12
lsr.d r2,#24
mov c,regbit1
mov regbit1,c
mov usp,r4
mov sp,usp
mov.b r4h,r1l
mov.w r5,r3
mov.b r5l,[r6]
mov.w r4,[sp]
mov.b [r6],r5l
mov.w [sp],r4
mov.b r3h,[r6+2]
mov.w r4,[r3+100]
mov.b [r6+2],r3h
mov.w [r3+100],r4
mov.b r3h,[r6+200]
mov.w r4,[r3+1000]
mov.b [r6+200],r3h
mov.w [r3+1000],r4
mov.b r4h,[r1+]
mov.w r5,[r6+]
mov.b [r1+],r4h
mov.w [r6+],r5
mov.b [r3+],[r4+]
mov.w [r3+],[r4+]
mov.b 200h,r2l
mov.w 123h,r6
mov.b r2l,200h
mov.w r6,123h
mov.b 123h,[r5]
mov.w 456h,[sp]
mov.b [r5],123h
mov.w [sp],456h
mov.b r5h,#34h
mov.w r3,#1234h
mov.b [r5],#34h
mov.w [r3],#1234h
mov.b [r5+],#34h
mov.w [r3+],#1234h
mov.b [r5+2],#34h
mov.w [r3+100],#1234h
mov.b [r5+200],#34h
mov.w [r3+1000],#1234h
mov.b 200h,#34h
mov.w 123h,#1234h
mov.b 123h,200h
mov.w 123h,200h
movc r4l,[r5+]
movc r4,[r5+]
movc a,[a+dptr]
movc a,[a+pc]
movs.b r5h,#3
movs.w r6,#5
movs.b [r4],#3
movs.w [sp],#5
movs.b [r4+],#3
movs.w [sp+],#5
movs.b [r4+20],#3
movs.w [sp+20],#5
movs.b [r4-200],#3
movs.w [sp-200],#5
movs.b 200h,#3
movs.w 123h,#5
movx r3l,[r6]
movx r3,[sp]
movx [r6],r3l
movx [sp],r3
mul r0,r5
mul r6,#1234h
mulu r3l,r4h
mulu r5l,#100
mulu r0,r5
mulu r6,#1234h
neg r4l
neg sp
nop
norm.b r4h,r1l
norm.w r6,r3h
norm.d r2,r4l
or.b r4h,r1l
or.w r5,r3
or.b r5l,[r6]
or.w r4,[sp]
or.b [r6],r5l
or.w [sp],r4
or.b r3h,[r6+2]
or.w r4,[r3+100]
or.b [r6+2],r3h
or.w [r3+100],r4
or.b r3h,[r6+200]
or.w r4,[r3+1000]
or.b [r6+200],r3h
or.w [r3+1000],r4
or.b r4h,[r1+]
or.w r5,[r6+]
or.b [r1+],r4h
or.w [r6+],r5
or.b 200h,r2l
or.w 123h,r6
or.b r2l,200h
or.w r6,123h
or.b r5h,#34h
or.w r3,#1234h
or.b [r5],#34h
or.w [r3],#1234h
or.b [r5+],#34h
or.w [r3+],#1234h
or.b [r5+2],#34h
or.w [r3+100],#1234h
or.b [r5+200],#34h
or.w [r3+1000],#1234h
or.b 200h,#34h
or.w 123h,#1234h
orl c,regbit1
orl c,/iobit1
orl c,r5.12
orl c,/r4h.1
pop.b 123h
pop.w 200h
pop r2l
pop r2l,r3l
pop r4h
pop r4h,r5h
pop r2l,r3l,r4h,r5h
pop r1
pop r2,r5;,sp
popu.b 123h
popu.w 200h
popu r2l
popu r2l,r3l
popu r4h
popu r4h,r5h
popu r2l,r3l,r4h,r5h
popu r1
popu r2,r5,sp
push.b 123h
push.w 200h
push r2l
push r2l,r3l
push r4h
push r4h,r5h
push r2l,r3l,r4h,r5h
push r1
push r2,r5,sp
pushu.b 123h
pushu.w 200h
pushu r2l
pushu r2l,r3l
pushu r4h
pushu r4h,r5h
pushu r2l,r3l,r4h,r5h
pushu r1
pushu r2,r5,sp
reset
ret
reti
rl r3h,#3
rl r5,#12
rlc r3h,#3
rlc r5,#12
rr r3h,#3
rr r5,#12
rrc r3h,#3
rrc r5,#12
setb regbit1
sext r1l
sext r2
sub.b r4h,r1l
sub.w r5,r3
sub.b r5l,[r6]
sub.w r4,[sp]
sub.b [r6],r5l
sub.w [sp],r4
sub.b r3h,[r6+2]
sub.w r4,[r3+100]
sub.b [r6+2],r3h
sub.w [r3+100],r4
sub.b r3h,[r6+200]
sub.w r4,[r3+1000]
sub.b [r6+200],r3h
sub.w [r3+1000],r4
sub.b r4h,[r1+]
sub.w r5,[r6+]
sub.b [r1+],r4h
sub.w [r6+],r5
sub.b 200h,r2l
sub.w 123h,r6
sub.b r2l,200h
sub.w r6,123h
sub.b r5h,#34h
sub.w r3,#1234h
sub.b [r5],#34h
sub.w [r3],#1234h
sub.b [r5+],#34h
sub.w [r3+],#1234h
sub.b [r5+2],#34h
sub.w [r3+100],#1234h
sub.b [r5+200],#34h
sub.w [r3+1000],#1234h
sub.b 200h,#34h
sub.w 123h,#1234h
subb.b r4h,r1l
subb.w r5,r3
subb.b r5l,[r6]
subb.w r4,[sp]
subb.b [r6],r5l
subb.w [sp],r4
subb.b r3h,[r6+2]
subb.w r4,[r3+100]
subb.b [r6+2],r3h
subb.w [r3+100],r4
subb.b r3h,[r6+200]
subb.w r4,[r3+1000]
subb.b [r6+200],r3h
subb.w [r3+1000],r4
subb.b r4h,[r1+]
subb.w r5,[r6+]
subb.b [r1+],r4h
subb.w [r6+],r5
subb.b 200h,r2l
subb.w 123h,r6
subb.b r2l,200h
subb.w r6,123h
subb.b r5h,#34h
subb.w r3,#1234h
subb.b [r5],#34h
subb.w [r3],#1234h
subb.b [r5+],#34h
subb.w [r3+],#1234h
subb.b [r5+2],#34h
subb.w [r3+100],#1234h
subb.b [r5+200],#34h
subb.w [r3+1000],#1234h
subb.b 200h,#34h
subb.w 123h,#1234h
trap #5
xch r3h,r5l
xch r5l,r3h
xch r3,r5
xch r5,r3
xch r3h,[r5]
xch [r5],r3h
xch r3,[r5]
xch [r5],r3
xch r3h,123h
xch 123h,r3h
xch r3,200h
xch 200h,r3
xor.b r4h,r1l
xor.w r5,r3
xor.b r5l,[r6]
xor.w r4,[sp]
xor.b [r6],r5l
xor.w [sp],r4
xor.b r3h,[r6+2]
xor.w r4,[r3+100]
xor.b [r6+2],r3h
xor.w [r3+100],r4
xor.b r3h,[r6+200]
xor.w r4,[r3+1000]
xor.b [r6+200],r3h
xor.w [r3+1000],r4
xor.b r4h,[r1+]
xor.w r5,[r6+]
xor.b [r1+],r4h
xor.w [r6+],r5
xor.b 200h,r2l
xor.w 123h,r6
xor.b r2l,200h
xor.w r6,123h
xor.b r5h,#34h
xor.w r3,#1234h
xor.b [r5],#34h
xor.w [r3],#1234h
xor.b [r5+],#34h
xor.w [r3+],#1234h
xor.b [r5+2],#34h
xor.w [r3+100],#1234h
xor.b [r5+200],#34h
xor.w [r3+1000],#1234h
xor.b 200h,#34h
xor.w 123h,#1234h
mov.b [r5+],[r5+]
xch r4l,r4l
pop r7
norm.b r4l,r4l
norm.w r4,r4h
norm.d r4,r5l
mov [r4+],r4l
mov r4h,[r4+]
movc r4h,[r4+]
add [r4+],r4l
add r4h,[r4+]
mov r5,[r5+]