aboutsummaryrefslogtreecommitdiffstats
path: root/tests/t_f2mc8l/t_f2mc8l.asm
blob: 25540b743f0ac43b1217376c6148e30083899dbe (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
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
	cpu	mb89190
	page	0

;----------------------------------------------------------------------------
; Transfer

	mov	23h,a
	mov	@ix+34h,a
	mov	1234h,a
	mov	@ep,a
	mov	r0,a
	mov	r1,a
	mov	r2,a
	mov	r3,a
	mov	r4,a
	mov	r5,a
	mov	r6,a
	mov	r7,a
	mov	a,#12h
	mov	a,23h
	mov	a,@ix+34h
	mov	a,1234h
	mov	a,@a
	mov	a,@ep
	mov	a,r0
	mov	a,r1
	mov	a,r2
	mov	a,r3
	mov	a,r4
	mov	a,r5
	mov	a,r6
	mov	a,r7
	mov	23h,#12h
	mov	@ix+34h,#12h
	mov	@ep,#12h
	mov	r0,#12h
	mov	r1,#12h
	mov	r2,#12h
	mov	r3,#12h
	mov	r4,#12h
	mov	r5,#12h
	mov	r6,#12h
	mov	r7,#12h
	movw	12h,a
	movw	@ix+34h,a
	movw	1234h,a
	movw	@ep,a
	movw	ep,a
	movw	a,#2345h
	movw	a,12h
	movw	a,@ix+34h
	movw	a,1234h
	movw	a,@a
	movw	a,@ep
	movw	a,ep
	movw	ep,#2345h
	movw	ix,a
	movw	a,ix
	movw	sp,a
	movw	a,sp
	mov     @a,t
	movw	@a,t
	movw	ix,#2345h
	movw	a,ps
	movw	ps,a
	movw	sp,#2345h
	swap
	setb	12h:6
	clrb	12h:5
	xch	a,t
	xchw	a,t
	xchw	a,ep
	xchw	a,ix
	xchw	a,sp
	movw	a,pc


;----------------------------------------------------------------------------
; Arithmetik

	addc	a,r0
	addc	a,r1
	addc	a,r2
	addc	a,r3
	addc	a,r4
	addc	a,r5
	addc	a,r6
	addc	a,r7
	addc	a,#12h
	addc	a,23h
	addc	a,@ix+34h
	addc	a,@ep
        addcw	a
	addc	a
	subc	a,r0
	subc	a,r1
	subc	a,r2
	subc	a,r3
	subc	a,r4
	subc	a,r5
	subc	a,r6
	subc	a,r7
	subc	a,#12h
	subc	a,23h
	subc	a,@ix+34h
	subc	a,@ep
	subcw	a
	subc	a
	inc	r0
	inc	r1
	inc	r2
	inc	r3
	inc	r4
	inc	r5
	inc	r6
	inc	r7
	incw	ep
	incw	ix
	incw	a
	dec	r0
	dec	r1
	dec	r2
	dec	r3
	dec	r4
	dec	r5
	dec	r6
	dec	r7
	decw	ep
	decw	ix
	decw	a
	mulu	a
	divu	a
	andw	a
	orw	a
	xorw	a
	cmp	a
	rorc	a
	rolc	a
	cmp	a,#12h
	cmp	a,23h
	cmp	a,@ix+34h
	cmp	a,@ep
	cmp	a,r0
	cmp	a,r1
	cmp	a,r2
	cmp	a,r3
	cmp	a,r4
	cmp	a,r5
	cmp	a,r6
	cmp	a,r7
	daa
	das
	xor	a
	xor	a,#12h
	xor	a,23h
	xor	a,@ix+34h
	xor	a,@ep
	xor	a,r0
	xor	a,r1
	xor	a,r2
	xor	a,r3
	xor	a,r4
	xor	a,r5
	xor	a,r6
	xor	a,r7
	and	a
	and	a,#12h
	and	a,23h
	and	a,@ix+34h
	and	a,@ep
	and	a,r0
	and	a,r1
	and	a,r2
	and	a,r3
	and	a,r4
	and	a,r5
	and	a,r6
	and	a,r7
	or	a
	or	a,#12h
	or	a,23h
	or	a,@ix+34h
	or	a,@ep
	or	a,r0
	or	a,r1
	or	a,r2
	or	a,r3
	or	a,r4
	or	a,r5
	or	a,r6
	or	a,r7
	cmp	23h,#12h
	cmp	@ep,#12h
	cmp	@ix+34h,#12h
	cmp	r0,#12h
	cmp	r1,#12h
	cmp	r2,#12h
	cmp	r3,#12h
	cmp	r4,#12h
	cmp	r5,#12h
	cmp	r6,#12h
	cmp	r7,#12h
	incw	sp
	decw	sp

;----------------------------------------------------------------------------
; Spruenge

	bz	$
	beq	$
	bnz	$
	bne	$
	bc	$
	blo	$
	bnc	$
	bhs	$
	bn	$
	bp	$
	blt	$
	bge	$
	bbc	23h:5,$
	bbs	23h:4,$
	jmp	@a
	jmp	2345h
	callv	#4
	call	2345h
	xchw	a,pc
	ret
	reti

;----------------------------------------------------------------------------
; Sonstiges

	pushw	a
	popw	a
	pushw	ix
	popw	ix
	nop
	clrc
	setc
	clri
	seti