diff options
| author | fishsoupisgood <github@madingley.org> | 2019-05-27 02:41:51 +0100 | 
|---|---|---|
| committer | fishsoupisgood <github@madingley.org> | 2019-05-27 02:41:51 +0100 | 
| commit | 333b605b2afd472b823aeda0adf0e8b1ea9843c0 (patch) | |
| tree | bc8f581317897e2e53f278f1716b4471fcdccd4f /tests/t_st7 | |
| download | asl-master.tar.gz asl-master.tar.bz2 asl-master.zip  | |
Diffstat (limited to 'tests/t_st7')
| -rw-r--r-- | tests/t_st7/asflags | 0 | ||||
| -rw-r--r-- | tests/t_st7/t_st7.asm | 561 | ||||
| -rw-r--r-- | tests/t_st7/t_st7.doc | 5 | ||||
| -rw-r--r-- | tests/t_st7/t_st7.ori | bin | 0 -> 1313 bytes | 
4 files changed, 566 insertions, 0 deletions
diff --git a/tests/t_st7/asflags b/tests/t_st7/asflags new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/t_st7/asflags diff --git a/tests/t_st7/t_st7.asm b/tests/t_st7/t_st7.asm new file mode 100644 index 0000000..c371c84 --- /dev/null +++ b/tests/t_st7/t_st7.asm @@ -0,0 +1,561 @@ +	cpu	st7 +        page	0 + +        halt +        iret +        nop +        rcf +        ret +        rim +        rsp +        scf +        sim +        trap +        wfi + +        adc	a,#$15 +        adc	a,$12 +        adc	a,$12.w +        adc	a,$1234 +        adc	a,(x) +        adc	a,($12,x) +        adc	a,($12.w,x) +        adc	a,($1234,x) +        adc	a,(y) +        adc	a,($12,y) +        adc	a,($12.w,y) +        adc	a,($1234,y) +	adc	a,[$12] +        adc	a,[$12.w] +        adc	a,([$12],x) +        adc	a,([$12.w],x) +        adc	a,([$12],y) +        adc	a,([$12.w],y) + +        add	a,#$15 +        add	a,$12 +        add	a,$12.w +        add	a,$1234 +        add	a,(x) +        add	a,($12,x) +        add	a,($12.w,x) +        add	a,($1234,x) +        add	a,(y) +        add	a,($12,y) +        add	a,($12.w,y) +        add	a,($1234,y) +	add	a,[$12] +        add	a,[$12.w] +        add	a,([$12],x) +        add	a,([$12.w],x) +        add	a,([$12],y) +        add	a,([$12.w],y) + +        and	a,#$15 +        and	a,$12 +        and	a,$12.w +        and	a,$1234 +        and	a,(x) +        and	a,($12,x) +        and	a,($12.w,x) +        and	a,($1234,x) +        and	a,(y) +        and	a,($12,y) +        and	a,($12.w,y) +        and	a,($1234,y) +	and	a,[$12] +        and	a,[$12.w] +        and	a,([$12],x) +        and	a,([$12.w],x) +        and	a,([$12],y) +        and	a,([$12.w],y) + +        bcp	a,#$15 +        bcp	a,$12 +        bcp	a,$12.w +        bcp	a,$1234 +        bcp	a,(x) +        bcp	a,($12,x) +        bcp	a,($12.w,x) +        bcp	a,($1234,x) +        bcp	a,(y) +        bcp	a,($12,y) +        bcp	a,($12.w,y) +        bcp	a,($1234,y) +	bcp	a,[$12] +        bcp	a,[$12.w] +        bcp	a,([$12],x) +        bcp	a,([$12.w],x) +        bcp	a,([$12],y) +        bcp	a,([$12.w],y) + +        or	a,#$15 +        or	a,$12 +        or	a,$12.w +        or	a,$1234 +        or	a,(x) +        or	a,($12,x) +        or	a,($12.w,x) +        or	a,($1234,x) +        or	a,(y) +        or	a,($12,y) +        or	a,($12.w,y) +        or	a,($1234,y) +	or	a,[$12] +        or	a,[$12.w] +        or	a,([$12],x) +        or	a,([$12.w],x) +        or	a,([$12],y) +        or	a,([$12.w],y) + +        sbc	a,#$15 +        sbc	a,$12 +        sbc	a,$12.w +        sbc	a,$1234 +        sbc	a,(x) +        sbc	a,($12,x) +        sbc	a,($12.w,x) +        sbc	a,($1234,x) +        sbc	a,(y) +        sbc	a,($12,y) +        sbc	a,($12.w,y) +        sbc	a,($1234,y) +	sbc	a,[$12] +        sbc	a,[$12.w] +        sbc	a,([$12],x) +        sbc	a,([$12.w],x) +        sbc	a,([$12],y) +        sbc	a,([$12.w],y) + +        sub	a,#$15 +        sub	a,$12 +        sub	a,$12.w +        sub	a,$1234 +        sub	a,(x) +        sub	a,($12,x) +        sub	a,($12.w,x) +        sub	a,($1234,x) +        sub	a,(y) +        sub	a,($12,y) +        sub	a,($12.w,y) +        sub	a,($1234,y) +	sub	a,[$12] +        sub	a,[$12.w] +        sub	a,([$12],x) +        sub	a,([$12.w],x) +        sub	a,([$12],y) +        sub	a,([$12.w],y) + +        xor	a,#$15 +        xor	a,$12 +        xor	a,$12.w +        xor	a,$1234 +        xor	a,(x) +        xor	a,($12,x) +        xor	a,($12.w,x) +        xor	a,($1234,x) +        xor	a,(y) +        xor	a,($12,y) +        xor	a,($12.w,y) +        xor	a,($1234,y) +	xor	a,[$12] +        xor	a,[$12.w] +        xor	a,([$12],x) +        xor	a,([$12.w],x) +        xor	a,([$12],y) +        xor	a,([$12.w],y) + +        call	$12 +        call	$12.w +        call	$1234 +        call	(x) +        call	($12,x) +        call	($12.w,x) +        call	($1234,x) +        call	(y) +        call	($12,y) +        call	($12.w,y) +        call	($1234,y) +	call	[$12] +        call	[$12.w] +        call	([$12],x) +        call	([$12.w],x) +        call	([$12],y) +        call	([$12.w],y) + +        jp	$12 +        jp	$12.w +        jp	$1234 +        jp	(x) +        jp	($12,x) +        jp	($12.w,x) +        jp	($1234,x) +        jp	(y) +        jp	($12,y) +        jp	($12.w,y) +        jp	($1234,y) +	jp	[$12] +        jp	[$12.w] +        jp	([$12],x) +        jp	([$12.w],x) +        jp	([$12],y) +        jp	([$12.w],y) + +        clr	a +        clr	x +        clr	y +        clr	$12 +        clr	(x) +        clr	($12,x) +        clr	(y) +        clr	($12,y) +        clr	[$12] +        clr	([$12],x) +        clr	([$12],y) + +        cpl	a +        cpl	x +        cpl	y +        cpl	$12 +        cpl	(x) +        cpl	($12,x) +        cpl	(y) +        cpl	($12,y) +        cpl	[$12] +        cpl	([$12],x) +        cpl	([$12],y) + +        dec	a +        dec	x +        dec	y +        dec	$12 +        dec	(x) +        dec	($12,x) +        dec	(y) +        dec	($12,y) +        dec	[$12] +        dec	([$12],x) +        dec	([$12],y) + +        inc	a +        inc	x +        inc	y +        inc	$12 +        inc	(x) +        inc	($12,x) +        inc	(y) +        inc	($12,y) +        inc	[$12] +        inc	([$12],x) +        inc	([$12],y) + +        neg	a +        neg	x +        neg	y +        neg	$12 +        neg	(x) +        neg	($12,x) +        neg	(y) +        neg	($12,y) +        neg	[$12] +        neg	([$12],x) +        neg	([$12],y) + +        rlc	a +        rlc	x +        rlc	y +        rlc	$12 +        rlc	(x) +        rlc	($12,x) +        rlc	(y) +        rlc	($12,y) +        rlc	[$12] +        rlc	([$12],x) +        rlc	([$12],y) + +        rrc	a +        rrc	x +        rrc	y +        rrc	$12 +        rrc	(x) +        rrc	($12,x) +        rrc	(y) +        rrc	($12,y) +        rrc	[$12] +        rrc	([$12],x) +        rrc	([$12],y) + +        sla	a +        sla	x +        sla	y +        sla	$12 +        sla	(x) +        sla	($12,x) +        sla	(y) +        sla	($12,y) +        sla	[$12] +        sla	([$12],x) +        sla	([$12],y) + +        sll	a +        sll	x +        sll	y +        sll	$12 +        sll	(x) +        sll	($12,x) +        sll	(y) +        sll	($12,y) +        sll	[$12] +        sll	([$12],x) +        sll	([$12],y) + +        sra	a +        sra	x +        sra	y +        sra	$12 +        sra	(x) +        sra	($12,x) +        sra	(y) +        sra	($12,y) +        sra	[$12] +        sra	([$12],x) +        sra	([$12],y) + +        srl	a +        srl	x +        srl	y +        srl	$12 +        srl	(x) +        srl	($12,x) +        srl	(y) +        srl	($12,y) +        srl	[$12] +        srl	([$12],x) +        srl	([$12],y) + +        swap	a +        swap	x +        swap	y +        swap	$12 +        swap	(x) +        swap	($12,x) +        swap	(y) +        swap	($12,y) +        swap	[$12] +        swap	([$12],x) +        swap	([$12],y) + +        tnz	a +        tnz	x +        tnz	y +        tnz	$12 +        tnz	(x) +        tnz	($12,x) +        tnz	(y) +        tnz	($12,y) +        tnz	[$12] +        tnz	([$12],x) +        tnz	([$12],y) + +        cp      a,#$12 +        cp      a,$12 +        cp      a,$12.w +        cp      a,$1234 +        cp      a,(x) +        cp      a,($12,x) +        cp      a,($12.w,x) +        cp      a,($1234,x) +        cp      a,(y) +        cp      a,($12,y) +        cp      a,($12.w,y) +        cp      a,($1234,y) +        cp      a,[$12] +        cp      a,[$12.w] +        cp      a,([$12],x) +        cp      a,([$12.w],x) +        cp      a,([$12],y) +        cp      a,([$12.w],y) +        cp      x,#$12 +        cp      x,$12 +        cp      x,$12.w +        cp      x,$1234 +        cp      x,(x) +        cp      x,($12,x) +        cp      x,($12.w,x) +        cp      x,($1234,x) +        cp      x,[$12] +        cp      x,[$12.w] +        cp      x,([$12],x) +        cp      x,([$12.w],x) +        cp      y,#$12 +        cp      y,$12 +        cp      y,$12.w +        cp      y,$1234 +        cp      y,(y) +        cp      y,($12,y) +        cp      y,($12.w,y) +        cp      y,($1234,y) +        cp      y,[$12] +        cp      y,[$12.w] +        cp      y,([$12],y) +        cp      y,([$12.w],y) + +        ld      a,#$12 +        ld      a,$12 +        ld      a,$12.w +        ld      a,$1234 +        ld      a,(x) +        ld      a,($12,x) +        ld      a,($12.w,x) +        ld      a,($1234,x) +        ld      a,(y) +        ld      a,($12,y) +        ld      a,($12.w,y) +        ld      a,($1234,y) +        ld      a,[$12] +        ld      a,[$12.w] +        ld      a,([$12],x) +        ld      a,([$12.w],x) +        ld      a,([$12],y) +        ld      a,([$12.w],y) +        ld      a,x +        ld      a,y +        ld      a,s +        ld      x,#$12 +        ld      x,$12 +        ld      x,$12.w +        ld      x,$1234 +        ld      x,(x) +        ld      x,($12,x) +        ld      x,($12.w,x) +        ld      x,($1234,x) +        ld      x,[$12] +        ld      x,[$12.w] +        ld      x,([$12],x) +        ld      x,([$12.w],x) +        ld      x,a +        ld      x,y +        ld      x,s +        ld      y,#$12 +        ld      y,$12 +        ld      y,$12.w +        ld      y,$1234 +        ld      y,(y) +        ld      y,($12,y) +        ld      y,($12.w,y) +        ld      y,($1234,y) +        ld      y,[$12] +        ld      y,[$12.w] +        ld      y,([$12],y) +        ld      y,([$12.w],y) +        ld      y,a +        ld      y,x +        ld      y,s +        ld      s,a +        ld      s,x +        ld      s,y +        ld      $12,a +        ld      $12.w,a +        ld      $1234,a +        ld      (x),a +        ld      ($12,x),a +        ld      ($12.w,x),a +        ld      ($1234,x),a +        ld      (y),a +        ld      ($12,y),a +        ld      ($12.w,y),a +        ld      ($1234,y),a +        ld      [$12],a +        ld      [$12.w],a +        ld      ([$12],x),a +        ld      ([$12.w],x),a +        ld      ([$12],y),a +        ld      ([$12.w],y),a +        ld      $12,x +        ld      $12.w,x +        ld      $1234,x +        ld      (x),x +        ld      ($12,x),x +        ld      ($12.w,x),x +        ld      ($1234,x),x +        ld      [$12],x +        ld      [$12.w],x +        ld      ([$12],x),x +        ld      ([$12.w],x),x +        ld      $12,y +        ld      $12.w,y +        ld      $1234,y +        ld      (y),y +        ld      ($12,y),y +        ld      ($12.w,y),y +        ld      ($1234,y),y +        ld      [$12],y +        ld      [$12.w],y +        ld      ([$12],y),y +        ld      ([$12.w],y),y + +        bres    $12,#5 +        bres    [$12],#2 +        bset    $12,#5 +        bset    [$12],#2 + +        btjf    $12,#5,pc +        btjf    [$12],#2,pc +        btjt    $12,#5,pc +        btjt    [$12],#2,pc + +        callr   pc +        jra     pc +        jrc     pc +        jreq    pc +        jrf     pc +        jrh     pc +        jrih    pc +        jril    pc +        jrm     pc +        jrmi    pc +        jrnc    pc +        jrne    pc +        jrnh    pc +        jrnm    pc +        jrpl    pc +        jrt     pc +        jruge   pc +        jrugt   pc +        jrule   pc +        jrult   pc + +        callr   [$12] +        jra     [$12] +        jrc     [$12] +        jreq    [$12] +        jrf     [$12] +        jrh     [$12] +        jrih    [$12] +        jril    [$12] +        jrm     [$12] +        jrmi    [$12] +        jrnc    [$12] +        jrne    [$12] +        jrnh    [$12] +        jrnm    [$12] +        jrpl    [$12] +        jrt     [$12] +        jruge   [$12] +        jrugt   [$12] +        jrule   [$12] +        jrult   [$12] + +        mul     x,a +        mul     y,a + +        push    a +        push    x +        push    y +        push    cc +        pop     a +        pop     x +        pop     y +        pop     cc + + diff --git a/tests/t_st7/t_st7.doc b/tests/t_st7/t_st7.doc new file mode 100644 index 0000000..d318126 --- /dev/null +++ b/tests/t_st7/t_st7.doc @@ -0,0 +1,5 @@ ++------------------------- Test Application ST7 -----------------------------+ +|                                                                            | +|          This is a (synthetic) test of the ST7's instruction set           | +|                                                                            | ++----------------------------------------------------------------------------+ diff --git a/tests/t_st7/t_st7.ori b/tests/t_st7/t_st7.ori Binary files differnew file mode 100644 index 0000000..8813d35 --- /dev/null +++ b/tests/t_st7/t_st7.ori  | 
