Implement more of the shim, it can assemble the test file sort of
[asxv5pxx.git] / as6800 / t6800s.asm
1         .title  AS6800 Sequential Test\r
2 \r
3         .area   DIRECT\r
4 \r
5         .setdp  0,DIRECT\r
6 \r
7         ext     = 0x1234        ; extended address\r
8         .blkb   0x12\r
9                                 ; direct page location\r
10 dirpag:                         ;  \r
11 \r
12         .area   AS6800\r
13 \r
14                                 ;00\r
15         nop                     ;01\r
16                                 ;02\r
17                                 ;03\r
18                                 ;04\r
19                                 ;05\r
20         tap                     ;06\r
21         tpa                     ;07\r
22         inx                     ;08\r
23         dex                     ;09\r
24         clv                     ;0A\r
25         sev                     ;0B\r
26         clc                     ;0C\r
27         sec                     ;0D\r
28         cli                     ;0E\r
29         sei                     ;0F\r
30         sba                     ;10\r
31         cba                     ;11\r
32                                 ;12\r
33                                 ;13\r
34                                 ;14\r
35                                 ;15\r
36         tab                     ;16\r
37         tba                     ;17\r
38                                 ;18\r
39         daa                     ;19\r
40                                 ;1A\r
41         aba                     ;1B\r
42                                 ;1C\r
43                                 ;1D\r
44                                 ;1E\r
45                                 ;1F\r
46 \r
47         .page\r
48 \r
49         bra     .               ;20 FE\r
50                                 ;21 FE\r
51         bhi     .               ;22 FE\r
52         bls     .               ;23 FE\r
53         bcc     .               ;24 FE\r
54         bcs     .               ;25 FE\r
55         bne     .               ;26 FE\r
56         beq     .               ;27 FE\r
57         bvc     .               ;28 FE\r
58         bvs     .               ;29 FE\r
59         bpl     .               ;2A FE\r
60         bmi     .               ;2B FE\r
61         bge     .               ;2C FE\r
62         blt     .               ;2D FE\r
63         bgt     .               ;2E FE\r
64         ble     .               ;2F FE\r
65         tsx                     ;30\r
66         ins                     ;31\r
67         pula                    ;32\r
68         pulb                    ;33\r
69         des                     ;34\r
70         txs                     ;35\r
71         psha                    ;36\r
72         pshb                    ;37\r
73                                 ;38\r
74         rts                     ;39\r
75                                 ;3A\r
76         rti                     ;3B\r
77                                 ;3C\r
78                                 ;3D\r
79         wai                     ;3E\r
80         swi                     ;3F\r
81 \r
82 \r
83         .page\r
84 \r
85         nega                    ;40\r
86                                 ;41\r
87                                 ;42\r
88         coma                    ;43\r
89         lsra                    ;44\r
90                                 ;45\r
91         rora                    ;46\r
92         asra                    ;47\r
93         asla                    ;48\r
94         rola                    ;49\r
95         deca                    ;4A\r
96                                 ;4B\r
97         inca                    ;4C\r
98         tsta                    ;4D\r
99                                 ;4E\r
100         clra                    ;4F\r
101         negb                    ;50\r
102                                 ;51\r
103                                 ;52\r
104         comb                    ;53\r
105         lsrb                    ;54\r
106                                 ;55\r
107         rorb                    ;56\r
108         asrb                    ;57\r
109         aslb                    ;58\r
110         rolb                    ;59\r
111         decb                    ;5A\r
112                                 ;5B\r
113         incb                    ;5C\r
114         tstb                    ;5D\r
115                                 ;5E\r
116         clrb                    ;5F\r
117 \r
118 \r
119         .page\r
120 \r
121         neg     ,x              ;60 00\r
122                                 ;61\r
123                                 ;62\r
124         com     ,x              ;63 00\r
125         lsr     ,x              ;64 00\r
126                                 ;65\r
127         ror     ,x              ;66 00\r
128         asr     ,x              ;67 00\r
129         asl     ,x              ;68 00\r
130         rol     ,x              ;69 00\r
131         dec     ,x              ;6A 00\r
132                                 ;6B\r
133         inc     ,x              ;6C 00\r
134         tst     ,x              ;6D 00\r
135         jmp     ,x              ;6E 00\r
136         clr     ,x              ;6F 00\r
137         neg     ext             ;70 12 34\r
138                                 ;71\r
139                                 ;72\r
140         com     ext             ;73 12 34\r
141         lsr     ext             ;74 12 34\r
142                                 ;75\r
143         ror     ext             ;76 12 34\r
144         asr     ext             ;77 12 34\r
145         asl     ext             ;78 12 34\r
146         rol     ext             ;79 12 34\r
147         dec     ext             ;7A 12 34\r
148                                 ;7B\r
149         inc     ext             ;7C 12 34\r
150         tst     ext             ;7D 12 34\r
151         jmp     ext             ;7E 12 34\r
152         clr     ext             ;7F 12 34\r
153 \r
154 \r
155         .page\r
156 \r
157         suba    #1              ;80 01\r
158         cmpa    #1              ;81 01\r
159         sbca    #1              ;82 01\r
160                                 ;83\r
161         anda    #1              ;84 01\r
162         bita    #1              ;85 01\r
163         ldaa    #1              ;86 01\r
164                                 ;87\r
165         eora    #1              ;88 01\r
166         adca    #1              ;89 01\r
167         oraa    #1              ;8A 01\r
168         adda    #1              ;8B 01\r
169         cpx     #1              ;8C 00 01\r
170         bsr     .               ;8D FE\r
171         lds     #1              ;8E 00 01\r
172                                 ;8F\r
173         suba    *dirpag         ;90*12\r
174         cmpa    *dirpag         ;91*12\r
175         sbca    *dirpag         ;92*12\r
176                                 ;93\r
177         anda    *dirpag         ;94*12\r
178         bita    *dirpag         ;95*12\r
179         ldaa    *dirpag         ;96*12\r
180         staa    *dirpag         ;97*12\r
181         eora    *dirpag         ;98*12\r
182         adca    *dirpag         ;99*12\r
183         oraa    *dirpag         ;9A*12\r
184         adda    *dirpag         ;9B*12\r
185         cpx     *dirpag         ;9C*12\r
186                                 ;9D\r
187         lds     *dirpag         ;9E*12\r
188         sts     *dirpag         ;9F*12\r
189 \r
190 \r
191         .page\r
192 \r
193         suba    4,x             ;A0 04\r
194         cmpa    4,x             ;A1 04\r
195         sbca    4,x             ;A2 04\r
196                                 ;A3\r
197         anda    4,x             ;A4 04\r
198         bita    4,x             ;A5 04\r
199         ldaa    4,x             ;A6 04\r
200         staa    4,x             ;A7 04\r
201         eora    4,x             ;A8 04\r
202         adca    4,x             ;A9 04\r
203         oraa    4,x             ;AA 04\r
204         adda    4,x             ;AB 04\r
205         cpx     4,x             ;AC 04\r
206         jsr     4,x             ;AD 04\r
207         lds     4,x             ;AE 04\r
208         sts     4,x             ;AF 04\r
209         suba    ext             ;B0 12 34\r
210         cmpa    ext             ;B1 12 34\r
211         sbca    ext             ;B2 12 34\r
212                                 ;B3\r
213         anda    ext             ;B4 12 34\r
214         bita    ext             ;B5 12 34\r
215         ldaa    ext             ;B6 12 34\r
216         staa    ext             ;B7 12 34\r
217         eora    ext             ;B8 12 34\r
218         adca    ext             ;B9 12 34\r
219         oraa    ext             ;BA 12 34\r
220         adda    ext             ;BB 12 34\r
221         cpx     ext             ;BC 12 34\r
222         jsr     ext             ;BD 12 34\r
223         lds     ext             ;BE 12 34\r
224         sts     ext             ;BF 12 34\r
225 \r
226 \r
227         .page\r
228 \r
229         subb    #1              ;C0 01\r
230         cmpb    #1              ;C1 01\r
231         sbcb    #1              ;C2 01\r
232                                 ;C3\r
233         andb    #1              ;C4 01\r
234         bitb    #1              ;C5 01\r
235         ldab    #1              ;C6 01\r
236                                 ;C7\r
237         eorb    #1              ;C8 01\r
238         adcb    #1              ;C9 01\r
239         orab    #1              ;CA 01\r
240         addb    #1              ;CB 01\r
241                                 ;CC\r
242                                 ;CD\r
243         ldx     #1              ;CE 00 01\r
244                                 ;CF\r
245         subb    *dirpag         ;D0*12\r
246         cmpb    *dirpag         ;D1*12\r
247         sbcb    *dirpag         ;D2*12\r
248                                 ;D3\r
249         andb    *dirpag         ;D4*12\r
250         bitb    *dirpag         ;D5*12\r
251         ldab    *dirpag         ;D6*12\r
252         stab    *dirpag         ;D7*12\r
253         eorb    *dirpag         ;D8*12\r
254         adcb    *dirpag         ;D9*12\r
255         orab    *dirpag         ;DA*12\r
256         addb    *dirpag         ;DB*12\r
257                                 ;DC\r
258                                 ;DD\r
259         ldx     *dirpag         ;DE*12\r
260         stx     *dirpag         ;DF*12\r
261 \r
262 \r
263         .page\r
264 \r
265         subb    dirpag,x        ;E0u12\r
266         cmpb    dirpag,x        ;E1u12\r
267         sbcb    dirpag,x        ;E2u12\r
268                                 ;E3\r
269         andb    dirpag,x        ;E4u12\r
270         bitb    dirpag,x        ;E5u12\r
271         ldab    dirpag,x        ;E6u12\r
272         stab    dirpag,x        ;E7u12\r
273         eorb    dirpag,x        ;E8u12\r
274         adcb    dirpag,x        ;E9u12\r
275         orab    dirpag,x        ;EAu12\r
276         addb    dirpag,x        ;EBu12\r
277                                 ;EC\r
278                                 ;ED\r
279         ldx     dirpag,x        ;EEu12\r
280         stx     dirpag,x        ;EFu12\r
281         subb    ext             ;F0 12 34\r
282         cmpb    ext             ;F1 12 34\r
283         sbcb    ext             ;F2 12 34\r
284                                 ;F3\r
285         andb    ext             ;F4 12 34\r
286         bitb    ext             ;F5 12 34\r
287         ldab    ext             ;F6 12 34\r
288         stab    ext             ;F7 12 34\r
289         eorb    ext             ;F8 12 34\r
290         adcb    ext             ;F9 12 34\r
291         orab    ext             ;FA 12 34\r
292         addb    ext             ;FB 12 34\r
293                                 ;FC\r
294                                 ;FD\r
295         ldx     ext             ;FE 12 34\r
296         stx     ext             ;FF 12 34\r