OpenCores
URL https://opencores.org/ocsvn/t48/t48/trunk

Subversion Repositories t48

[/] [t48/] [tags/] [rel_0_6__beta/] [sw/] [verif/] [black_box/] [addc/] [rr/] [test.asm] - Blame information for rev 333

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 12 arniml
        ;; *******************************************************************
2
        ;; $Id: test.asm,v 1.1.1.1 2004-03-25 22:29:17 arniml Exp $
3
        ;;
4
        ;; Test ADDC A, Rr with carry, RB0 and RB1.
5
        ;; *******************************************************************
6
 
7
        INCLUDE "cpu.inc"
8
        INCLUDE "pass_fail.inc"
9
 
10
testADDC        MACRO   val,reg
11
        mov     a, #val
12
        addc    a, reg
13
        jnz     fail_p3
14
        jnc     fail_p3
15
        mov     a, #val
16
        addc    a, reg
17
        jz      fail_p3
18
        jnc     fail_p3
19
        dec     a
20
        jnz     fail_p3
21
        clr     c
22
        jc      fail_p3
23
        ENDM
24
 
25
        ORG     0
26
 
27
        ;; Start of test
28
        ;; fill RB0
29
        call    fill
30
 
31
        ;; check RB0
32
        call    check
33
 
34
        ;; fill RB1
35
        sel     rb1
36
        call    fill
37
        sel     rb0
38
 
39
        ;; clear RB0
40
        call    clr
41
 
42
        ;; check RB1
43
        sel     rb1
44
        call    check
45
 
46
        ;; check RB0 for all 0
47
        mov     r0, #000H
48
        mov     r1, #008H
49
chk0_loop:
50
        mov     a, @r0
51
        jnz     fail
52
        inc     r0
53
        djnz    r1, chk0_loop
54
 
55
pass:   PASS
56
 
57
fail:   FAIL
58
 
59
 
60
        ORG     0300H
61
 
62
fill:   mov     a, #0FEH
63
        mov     r0, a
64
        mov     a, #0FDH
65
        mov     r1, a
66
        mov     a, #0FBH
67
        mov     r2, a
68
        mov     a, #0F7H
69
        mov     r3, a
70
        mov     a, #0EFH
71
        mov     r4, a
72
        mov     a, #0DFH
73
        mov     r5, a
74
        mov     a, #0BFH
75
        mov     r6, a
76
        mov     a, #07FH
77
        mov     r7, a
78
        ret
79
 
80
check:  testADDC        002H, r0
81
        testADDC        003H, r1
82
        testADDC        005H, r2
83
        testADDC        009H, r3
84
        testADDC        011H, r4
85
        testADDC        021H, r5
86
        testADDC        041H, r6
87
        testADDC        081H, r7
88
        ret
89
 
90
clr:    mov     r0, #007H
91
        clr     a
92
clr_loop:
93
        mov     @r0, a
94
        djnz    r0, clr_loop
95
        ret
96
 
97
fail_p3:
98
        FAIL

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.