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

Subversion Repositories t48

[/] [t48/] [tags/] [rel_1_3/] [sw/] [verif/] [black_box/] [upi41/] [status41_test/] [test.asm] - Blame information for rev 331

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 308 arniml
        ;; *******************************************************************
2
        ;; Test UPI41 status bits.
3
        ;; *******************************************************************
4
 
5
        INCLUDE "cpu.inc"
6
        INCLUDE "pass_fail.inc"
7
        INCLUDE "upi41_opcodes.inc"
8
 
9
        ORG     0
10
 
11
        ;; Start of test
12
 
13
        ;; test IBF empty
14
        ujnibf  ibfempty
15
        jmp     fail
16
 
17
ibfempty:
18
        ;; test OBF empty
19
        ujobf   fail
20
 
21
        ;; signal test start
22
        anl     P1, #~004H
23
 
24
        ;; request status41 test
25
        mov     a, #002H
26
        uout    dbb, a
27
 
28
        ;; wait for IBF=1 and F1=1
29
step1:  ujnibf  step1
30
        jf1     step1_goon
31
        jmp     step1
32
step1_goon:
33
 
34
        ;; wait for IBF=1 and F1=0
35
step2:  ujnibf  step2
36
        jf1     step2
37
 
38
 
39
        ;; wait for IBF=1 and F1=1
40
step3:  ujnibf  step3
41
        jf1     step3_goon
42
        jmp     step3
43
step3_goon:
44
        ;; read IBF and complement F0
45
        uin     a, dbb
46 309 arniml
        xrl     a, #~002H
47
        jnz     fail
48 308 arniml
        cpl     f0
49
 
50
        ;; wait for IBF=1 and F1=0
51
step4:  ujnibf  step4
52
        jf1     step4
53
        ;; read IBF and complement F0
54
        uin     a, dbb
55 309 arniml
        xrl     a, #~002H
56
        jnz     fail
57 308 arniml
        cpl     f0
58
 
59
        ;; wait for IBF=1 and F1=1
60
step5:  ujnibf  step5
61
        jf1     step5_goon
62
        jmp     step5
63
step5_goon:
64
        ;; read IBF and complement F0
65
        uin     a, dbb
66 309 arniml
        xrl     a, #002H
67
        jnz     fail
68 308 arniml
        cpl     f0
69
        ;; load OBF
70
        mov     a, #099H
71
        uout    dbb, a
72
 
73
        ;; wait for IBF=1 and F1=0
74
step6:  ujnibf  step6
75
        jf1     step6
76
        ;; read IBF and complement F0
77
        uin     a, dbb
78 309 arniml
        xrl     a, #002H
79
        jnz     fail
80 308 arniml
        cpl     f0
81
        ;; complement F1
82
        cpl     f1
83
        ;; load OBF
84
        mov     a, #066H
85
        uout    dbb, a
86
 
87
        ;; read next input as command
88
done:   ujnibf  done
89
        jf1     done_goon
90
        jmp     done
91
done_goon:
92
 
93
        uin     a, dbb
94
        xrl     a, #002H
95
        jz      pass
96
 
97
 
98
fail:   FAIL
99
 
100
pass:   PASS

powered by: WebSVN 2.1.0

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