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

Subversion Repositories t48

[/] [t48/] [tags/] [rel_1_1/] [sw/] [verif/] [black_box/] [anl/] [rr/] [test.asm] - Blame information for rev 292

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 ANL A, Rr for RB0 and RB1.
5
        ;; *******************************************************************
6
 
7
        INCLUDE "cpu.inc"
8
        INCLUDE "pass_fail.inc"
9
 
10
        ORG     0
11
 
12
        ;; Start of test
13
 
14
        ;; fill RB0
15
        call    fill
16
 
17
        ;; check RB0
18
        call    check
19
 
20
        ;; fill RB1
21
        sel     rb1
22
        call    fill
23
        sel     rb0
24
 
25
        ;; clear RB0
26
        call    clr_rb0
27
 
28
        ;; check RB1
29
        sel     rb1
30
        call    check
31
 
32
        ;; check RB0 for all 0
33
        mov     r0, #000H
34
        mov     r1, #008H
35
chk0_loop:
36
        mov     a, @r0
37
        jnz     fail
38
        inc     r0
39
        djnz    r1, chk0_loop
40
 
41
pass:   PASS
42
 
43
fail:   FAIL
44
 
45
 
46
        ORG     0300H
47
 
48
fill:   mov     a, #0FEH
49
        mov     r0, a
50
        mov     a, #0FDH
51
        mov     r1, a
52
        mov     a, #0FBH
53
        mov     r2, a
54
        mov     a, #0F7H
55
        mov     r3, a
56
        mov     a, #0EFH
57
        mov     r4, a
58
        mov     a, #0DFH
59
        mov     r5, a
60
        mov     a, #0BFH
61
        mov     r6, a
62
        mov     a, #07FH
63
        mov     r7, a
64
        ret
65
 
66
clr_rb0:
67
        mov     r0, #007H
68
        clr     a
69
clr_loop:
70
        mov     @r0, a
71
        djnz    r0, clr_loop
72
        ret
73
 
74
check:  mov     a, #(1 << 0)
75
        anl     a, r0
76
        jnz     fail_p3
77
        mov     a, #0FFH
78
        anl     a, r0
79
        add     a, #(~(0FFH - (1 << 0)) + 1) & 0FFH
80
        jnz     fail_p3
81
 
82
        mov     a, #(1 << 1)
83
        anl     a, r1
84
        jnz     fail_p3
85
        mov     a, #0FFH
86
        anl     a, r1
87
        add     a, #(~(0FFH - (1 << 1)) + 1) & 0FFH
88
        jnz     fail_p3
89
 
90
        mov     a, #(1 << 2)
91
        anl     a, r2
92
        jnz     fail_p3
93
        mov     a, #0FFH
94
        anl     a, r2
95
        add     a, #(~(0FFH - (1 << 2)) + 1) & 0FFH
96
        jnz     fail_p3
97
 
98
        mov     a, #(1 << 3)
99
        anl     a, r3
100
        jnz     fail_p3
101
        mov     a, #0FFH
102
        anl     a, r3
103
        add     a, #(~(0FFH - (1 << 3)) + 1) & 0FFH
104
        jnz     fail_p3
105
 
106
        mov     a, #(1 << 4)
107
        anl     a, r4
108
        jnz     fail_p3
109
        mov     a, #0FFH
110
        anl     a, r4
111
        add     a, #(~(0FFH - (1 << 4)) + 1) & 0FFH
112
        jnz     fail_p3
113
 
114
        mov     a, #(1 << 5)
115
        anl     a, r5
116
        jnz     fail_p3
117
        mov     a, #0FFH
118
        anl     a, r5
119
        add     a, #(~(0FFH - (1 << 5)) + 1) & 0FFH
120
        jnz     fail_p3
121
 
122
        mov     a, #(1 << 6)
123
        anl     a, r6
124
        jnz     fail_p3
125
        mov     a, #0FFH
126
        anl     a, r6
127
        add     a, #(~(0FFH - (1 << 6)) + 1) & 0FFH
128
        jnz     fail_p3
129
 
130
        mov     a, #(1 << 7)
131
        anl     a, r7
132
        jnz     fail_p3
133
        mov     a, #0FFH
134
        anl     a, r7
135
        add     a, #(~(0FFH - (1 << 7)) + 1) & 0FFH
136
        jnz     fail_p3
137
        ret
138
 
139
 
140
fail_p3:        FAIL

powered by: WebSVN 2.1.0

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