Subversion Repositories pentevo

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1186 savelij 1
        cpu     78c10
2
 
3
        block
4
        calb
5
        clc
6
        daa
7
        di
8
        ei
9
        exa
10
        exh
11
        exx
12
        hlt
13
        jb
14
        jea
15
        nega
16
        nop
17
        ret
18
        reti
19
        rets
20
        rld
21
        rrd
22
        softi
23
        stc
24
        stop
25
        table
26
 
27
        aci     a,0
28
        aci     h,10
29
        aci     pc,55h
30
 
31
        adi     a,40
32
        adi     b,33o
33
        adi     eom,6
34
 
35
        adinc   a,56
36
        ani     l,33h
37
        eqi     mkh,34
38
        gti     a,20
39
        lti     c,34
40
        nei     mkl,10
41
        offi    a,0ffh
42
        oni     d,0
43
        ori     anm,47
44
        sbi     a,41h
45
        sui     v,7
46
        suinb   smh,98
47
 
48
        xri     a,055h
49
        xri     v,1010b
50
        xri     pb,40h
51
 
52
        adc     a,v
53
        adc     v,a
54
        addnc   a,b
55
        addnc   b,a
56
        sub     a,c
57
        sub     c,a
58
        sbb     a,d
59
        sbb     d,a
60
        subnb   a,e
61
        subnb   e,a
62
        ana     a,h
63
        ana     h,a
64
        ora     a,l
65
        ora     l,a
66
        xra     a,v
67
        xra     v,a
68
        gta     a,b
69
        gta     b,a
70
        lta     a,c
71
        lta     c,a
72
        nea     a,d
73
        nea     d,a
74
        eqa     a,e
75
        eqa     e,a
76
        ona     a,h
77
        ona     h,a
78
        offa    a,l
79
        offa    l,a
80
 
81
        assume  v:0
82
 
83
        adcw    10h
84
        addncw  20h
85
        addw    30h
86
        subw    40h
87
        sbbw    50h
88
        subnbw  60h
89
        anaw    70h
90
        oraw    80h
91
        xraw    90h
92
        gtaw    0a0h
93
        ltaw    0b0h
94
        neaw    0c0h
95
        eqaw    0d0h
96
        onaw    0e0h
97
        offaw   0f0h
98
 
99
        adcx    b
100
        addncx  d
101
        addx    h
102
        subx    d+
103
        sbbx    h+
104
        subnbx  d-
105
        anax    h-
106
        orax    b
107
        xrax    d
108
        gtax    h
109
        ltax    d+
110
        neax    h+
111
        eqax    d-
112
        onax    h-
113
        offax   b
114
 
115
        dadc    ea,b
116
        daddnc  ea,d
117
        dadd    ea,h
118
        dsub    ea,b
119
        dsbb    ea,d
120
        dsubnb  ea,h
121
        dan     ea,b
122
        dor     ea,d
123
        dxr     ea,h
124
        dgt     ea,b
125
        dlt     ea,d
126
        dne     ea,h
127
        deq     ea,b
128
        don     ea,d
129
        doff    ea,h
130
 
131
        aniw    10h,'A'
132
        eqiw    20h,'B'
133
        gtiw    30h,'C'
134
        ltiw    40h,'D'
135
        neiw    50h,'E'
136
        oniw    60h,'F'
137
        offiw   70h,'G'
138
        oriw    80h,'H'
139
 
140
        call    1234h
141
        jmp     5678h
142
        lbcd    1234h
143
        sbcd    5678h
144
        lded    1234h
145
        sded    5678h
146
        lhld    1234h
147
        shld    5678h
148
        lspd    1234h
149
        sspd    5678h
150
 
151
        calf    0c08h
152
        calt    150
153
 
154
        bit     5,20h
155
        bit     2,0ffh
156
 
157
        dcr     a
158
        inr     b
159
        mul     c
160
        div     a
161
        sll     b
162
        slr     c
163
        sllc    a
164
        slrc    b
165
        rll     c
166
        rlr     a
167
 
168
        dcrw    20h
169
        inrw    30h
170
        ldaw    40h
171
        staw    50h
172
 
173
        inx     ea
174
        dcx     ea
175
        inx     h
176
        dcx     b
177
 
178
        dmov    ea,b
179
        dmov    h,ea
180
        dmov    ea,ecpt
181
        dmov    etm0,ea
182
 
183
        drll    ea
184
        dsll    ea
185
        drlr    ea
186
        dslr    ea
187
 
188
        eadd    ea,b
189
        esub    ea,c
190
 
191
back:   nop
192
        jr      back
193
        j       back    ; -> jr
194
        jre     $-100
195
        j       $-100   ; -> jre
196
        jr      forw
197
        j       forw    ; -> jr
198
        j       end     ; -> jr guessed in first pass, jre decided in second/third pass
199
        jre     $+100
200
        j       $+100   ; -> jre
201
forw:   nop
202
 
203
        ldax    b
204
        ldax    d
205
        ldax    h
206
        ldax    d+
207
        ldax    h+
208
        ldax    d-
209
        ldax    h-
210
        ldax    d+20
211
        ldax    d-30
212
        ldax    h+a
213
        ldax    h+b
214
        ldax    h+ea
215
        ldax    h+40
216
        ldax    h-50
217
        stax    b
218
        stax    d
219
        stax    h
220
        stax    d+
221
        stax    h+
222
        stax    d-
223
        stax    h-
224
        stax    d+20
225
        stax    d-30
226
        stax    h+a
227
        stax    h+b
228
        stax    h+ea
229
        stax    h+40
230
        stax    h-50
231
 
232
        ldeax   h++
233
        steax   d++
234
        ldeax   h+ea
235
        steax   h-5
236
 
237
        lxi     sp,2000h
238
        lxi     h,101010101010b
239
        lxi     ea,1001
240
 
241
        mov     a,eal
242
        mov     h,a
243
        mov     a,pa
244
        mov     pa,a
245
        mov     c,1000h
246
        mov     1234h,d
247
 
248
        mvi     d,55h
249
        mvi     eom,0
250
 
251
        mviw    20h,01101001b
252
        mvix    d,22o
253
 
254
        push    v
255
        push    b
256
        pop     h
257
        pop     ea
258
 
259
        sk      z
260
        skn     hc
261
 
262
        skit    fsr
263
        sknit   an6
264
 
265
        ; iterate through the various aliases allowed for indirect addressing expessions.  The original
266
        ; variant mentioned in the NEC manual is listed first.
267
 
268
        ldax    b       ; original
269
        ldax    (b)
270
        ldax    bc
271
        ldax    (bc)
272
        ldax    d       ; original
273
        ldax    (d)
274
        ldax    de
275
        ldax    (de)
276
        ldax    h       ; original
277
        ldax    (h)
278
        ldax    hl
279
        ldax    (hl)
280
        ldax    d+      ; original
281
        ldax    (d+)
282
        ldax    de+
283
        ldax    (de+)
284
        ldax    (de)+
285
        ldax    h+      ; original
286
        ldax    (h+)
287
        ldax    hl+
288
        ldax    (hl+)
289
        ldax    (hl)+
290
        ldax    d-      ; original
291
        ldax    (d-)
292
        ldax    de-
293
        ldax    (de-)
294
        ldax    (de)-
295
        ldax    h-      ; original
296
        ldax    (h-)
297
        ldax    hl-
298
        ldax    (hl-)
299
        ldax    (hl)-
300
        ldax    h+a     ; original
301
        ldax    (h+a)
302
        ldax    hl+a
303
        ldax    (hl+a)
304
        ldax    a+h
305
        ldax    (a+h)
306
        ldax    a+hl
307
        ldax    (a+hl)
308
        ldax    h+b     ; original
309
        ldax    (h+b)
310
        ldax    hl+b
311
        ldax    (hl+b)
312
        ldax    b+h
313
        ldax    (b+h)
314
        ldax    b+hl
315
        ldax    (b+hl)
316
        ldax    h+ea    ; original
317
        ldax    (h+ea)
318
        ldax    hl+ea
319
        ldax    (hl+ea)
320
        ldax    ea+h
321
        ldax    (ea+h)
322
        ldax    ea+hl
323
        ldax    (ea+hl)
324
        ldax    h+12h   ; original
325
        ldax    (h+12h)
326
        ldax    hl+12h
327
        ldax    (hl+12h)
328
        ldax    d+12h   ; original
329
        ldax    (d+12h)
330
        ldax    de+12h
331
        ldax    (de+12h)
332
        ldeax   d++     ; original
333
        ldeax   (d++)
334
        ldeax   de++
335
        ldeax   (de++)
336
        ldeax   (de)++
337
        ldeax   h++     ; original
338
        ldeax   (h++)
339
        ldeax   hl++
340
        ldeax   (hl++)
341
        ldeax   (hl)++
342
 
343
end:
344
 
345
;-----------------------------------------------------
346
; standard Intel/MASM-style pseudo instructions
347
 
348
        include "../t_dx/t_dn.inc"
349
        include "../t_dx/t_db.inc"
350
        include "../t_dx/t_dw.inc"
351
        include "../t_dx/t_dd.inc"
352
        include "../t_dx/t_dq.inc"
353
        include "../t_dx/t_dt.inc"
354
        include "../t_dx/t_do.inc"