summaryrefslogtreecommitdiff
path: root/Source/DSPSpy/tests/arith_test.ds
blob: f93f428b06086b734273665725b58f211a1e9bdb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
; various arithmetic tests
incdir  "tests"
include "dsp_base.inc"

test_main:

clr $acc0
tst $acc0

call send_back 	; 1


lri $ac0.h, #0x0011
lri $ac0.m, #0x0100
lri $ac0.l, #0x0101
lsl $acc0, #1

call send_back 	; 2

lri $ac0.h, #0x0011
lri $ac0.m, #0x0100
lri $ac0.l, #0x0001
asl $acc0, #1

call send_back 	; 3

clr $acc0
lri $ac0.h, #0x0011
tst $acc0

call send_back 	; 4

lri $ac0.m, #0x0100
tst $acc0

call send_back 	; 5

lri $ac0.l, #0x0001
tst $acc0

call send_back 	; 6
clr $acc0

lri $ac0.l, #-1
tst $acc0

call send_back 	; 7

clr $acc0

set40
lri $ac0.l, #-1
tst $acc0
set16

call send_back 	; 8

clr $acc0
lri $ac0.h, #0x1000
tst $acc0

call send_back 	; 9

clr $acc0
lri $ac0.h, #0x0100
tst $acc0

call send_back 	; 10


clr $acc0
lri $ac0.h, #0x0010
tst $acc0

call send_back 	; 11

clr $acc0
lri $ac0.h, #0x0001
tst $acc0

call send_back 	; 12

clr $acc0
lri $ac0.l, #0x1000
tst $acc0

call send_back 	; 13

clr $acc0
lri $ac0.l, #0x0100
tst $acc0

call send_back 	; 14


clr $acc0
lri $ac0.l, #0x0010
tst $acc0

call send_back 	; 15

clr $acc0
lri $ac0.l, #0x0001
tst $acc0

call send_back 	; 16

clr $acc0
clr $acc1
lri $ac0.l, #0x0001
sub $acc1, $acc0

call send_back 	; 17

clr $acc0
clr $acc1
set40
lri $ac0.l, #0x0001
sub $acc1, $acc0
set16

call send_back 	; 18

clr $acc0
clr $acc1
lri $ac0.l, #0x0001
lri $ac1.h, #0x8000
sub $acc1, $acc0

call send_back 	; 19

clr $acc0
clr $acc1
set40
lri $ac0.l, #0x0001
lri $ac1.h, #0x8000
sub $acc1, $acc0
set16

call send_back 	; 20

; We're done, DO NOT DELETE THIS LINE
jmp end_of_test