struct / union in initializer, RFE #901.
[sdcc.git] / sdcc / sdas / asz80 / tez80.asm
blobc75aaf3918aab47c42eecb0695c12030622e86bd
1 .title Test of Z80 / HD64180 / eZ80 assembler
3 .ez80
4 .adl 1
6 offset = 0x55 ;arbitrary constants
7 n = 0x20
8 nn = 0x0584
10 ; notes:
11 ; Leading 'a' operand is optional.
12 ; If offset is ommitted 0 is assumed.
14 ;***********************************************************
15 ; add with carry to 'a'
16 adc a,(hl) ;8E
17 adc.s a,(hl) ;52 8E
18 adc a,ixh ;DD 8C
19 adc a,ixl ;DD 8D
20 adc a,iyh ;FD 8C
21 adc a,iyl ;FD 8D
22 adc a,offset(ix) ;DD 8E 55
23 adc.s a,offset(ix) ;52 DD 8E 55
24 adc a,offset(iy) ;FD 8E 55
25 adc.s a,offset(iy) ;52 FD 8E 55
26 adc a,a ;8F
27 adc a,b ;88
28 adc a,c ;89
29 adc a,d ;8A
30 adc a,e ;8B
31 adc a,h ;8C
32 adc a,l ;8D
33 adc a,#n ;CE 20
34 ;***********************************************************
35 adc (hl) ;8E
36 adc.s (hl) ;52 8E
37 adc ixh ;DD 8C
38 adc ixl ;DD 8D
39 adc iyh ;FD 8C
40 adc iyl ;FD 8D
41 adc offset(ix) ;DD 8E 55
42 adc.s offset(ix) ;52 DD 8E 55
43 adc offset(iy) ;FD 8E 55
44 adc.s offset(iy) ;52 FD 8E 55
45 adc a ;8F
46 adc b ;88
47 adc c ;89
48 adc d ;8A
49 adc e ;8B
50 adc h ;8C
51 adc l ;8D
52 adc #n ;CE 20
53 ;***********************************************************
54 ; add with carry register pair to 'hl'
55 adc hl,bc ;ED 4A
56 adc hl,de ;ED 5A
57 adc hl,hl ;ED 6A
58 adc.s hl,bc ;52 ED 4A
59 adc.s hl,de ;52 ED 5A
60 adc.s hl,hl ;52 ED 6A
61 adc hl,sp ;ED 7A
62 adc.s hl,sp ;52 ED 7A
63 ;***********************************************************
64 ; add operand to 'a'
65 add a,(hl) ;86
66 add.s a,(hl) ;52 86
67 add a,ixh ;DD 84
68 add a,ixl ;DD 85
69 add a,iyh ;FD 84
70 add a,iyl ;FD 85
71 add a,offset(ix) ;DD 86 55
72 add.s a,offset(ix) ;52 DD 86 55
73 add a,offset(iy) ;FD 86 55
74 add.s a,offset(iy) ;52 FD 86 55
75 add a,a ;87
76 add a,b ;80
77 add a,c ;81
78 add a,d ;82
79 add a,e ;83
80 add a,h ;84
81 add a,l ;85
82 add a,#n ;C6 20
83 ;***********************************************************
84 ; add register pair to 'hl'
85 add hl,bc ;09
86 add hl,de ;19
87 add hl,hl ;29
88 add.s hl,bc ;52 09
89 add.s hl,de ;52 19
90 add.s hl,hl ;52 29
91 add hl,sp ;39
92 add.s hl,sp ;52 39
93 ;***********************************************************
94 ; add register pair to 'ix'
95 add ix,bc ;DD 09
96 add ix,de ;DD 19
97 add ix,ix ;DD 29
98 add.s ix,bc ;52 DD 09
99 add.s ix,de ;52 DD 19
100 add.s ix,ix ;52 DD 29
101 add ix,sp ;DD 39
102 add.s ix,sp ;52 DD 39
103 ;***********************************************************
104 ; add register pair to 'iy'
105 add iy,bc ;FD 09
106 add iy,de ;FD 19
107 add iy,iy ;FD 29
108 add.s iy,bc ;52 FD 09
109 add.s iy,de ;52 FD 19
110 add.s iy,iy ;52 FD 29
111 add iy,sp ;FD 39
112 add.s iy,sp ;52 FD 39
113 ;***********************************************************
114 ; logical 'and' operand with 'a'
115 and a,(hl) ;A6
116 and.s a,(hl) ;52 A6
117 and a,ixh ;DD A4
118 and a,ixl ;DD A5
119 and a,iyh ;FD A4
120 and a,iyl ;FD A5
121 and a,offset(ix) ;DD A6 55
122 and.s a,offset(ix) ;52 DD A6 55
123 and a,offset(iy) ;FD A6 55
124 and.s a,offset(iy) ;52 FD A6 55
125 and a,a ;A7
126 and a,b ;A0
127 and a,c ;A1
128 and a,d ;A2
129 and a,e ;A3
130 and a,h ;A4
131 and a,l ;A5
132 and a,#n ;E6 20
133 ;***********************************************************
134 ; test bit of location or register
135 bit 0,(hl) ;CB 46
136 bit.s 0,(hl) ;52 CB 46
137 bit 0,offset(ix) ;DD CB 55 46
138 bit.s 0,offset(ix) ;52 DD CB 55 46
139 bit 0,offset(iy) ;FD CB 55 46
140 bit.s 0,offset(iy) ;52 FD CB 55 46
141 bit 0,a ;CB 47
142 bit 0,b ;CB 40
143 bit 0,c ;CB 41
144 bit 0,d ;CB 42
145 bit 0,e ;CB 43
146 bit 0,h ;CB 44
147 bit 0,l ;CB 45
148 bit 1,(hl) ;CB 4E
149 bit.s 1,(hl) ;52 CB 4E
150 bit 1,offset(ix) ;DD CB 55 4E
151 bit.s 1,offset(ix) ;52 DD CB 55 4E
152 bit 1,offset(iy) ;FD CB 55 4E
153 bit.s 1,offset(iy) ;52 FD CB 55 4E
154 bit 1,a ;CB 4F
155 bit 1,b ;CB 48
156 bit 1,c ;CB 49
157 bit 1,d ;CB 4A
158 bit 1,e ;CB 4B
159 bit 1,h ;CB 4C
160 bit 1,l ;CB 4D
161 bit 2,(hl) ;CB 56
162 bit.s 2,(hl) ;52 CB 56
163 bit 2,offset(ix) ;DD CB 55 56
164 bit.s 2,offset(ix) ;52 DD CB 55 56
165 bit 2,offset(iy) ;FD CB 55 56
166 bit.s 2,offset(iy) ;52 FD CB 55 56
167 bit 2,a ;CB 57
168 bit 2,b ;CB 50
169 bit 2,c ;CB 51
170 bit 2,d ;CB 52
171 bit 2,e ;CB 53
172 bit 2,h ;CB 54
173 bit 2,l ;CB 55
174 bit 3,(hl) ;CB 5E
175 bit.s 3,(hl) ;52 CB 5E
176 bit 3,offset(ix) ;DD CB 55 5E
177 bit.s 3,offset(ix) ;52 DD CB 55 5E
178 bit 3,offset(iy) ;FD CB 55 5E
179 bit.s 3,offset(iy) ;52 FD CB 55 5E
180 bit 3,a ;CB 5F
181 bit 3,b ;CB 58
182 bit 3,c ;CB 59
183 bit 3,d ;CB 5A
184 bit 3,e ;CB 5B
185 bit 3,h ;CB 5C
186 bit 3,l ;CB 5D
187 bit 4,(hl) ;CB 66
188 bit.s 4,(hl) ;52 CB 66
189 bit 4,offset(ix) ;DD CB 55 66
190 bit.s 4,offset(ix) ;52 DD CB 55 66
191 bit 4,offset(iy) ;FD CB 55 66
192 bit.s 4,offset(iy) ;52 FD CB 55 66
193 bit 4,a ;CB 67
194 bit 4,b ;CB 60
195 bit 4,c ;CB 61
196 bit 4,d ;CB 62
197 bit 4,e ;CB 63
198 bit 4,h ;CB 64
199 bit 4,l ;CB 65
200 bit 5,(hl) ;CB 6E
201 bit.s 5,(hl) ;52 CB 6E
202 bit 5,offset(ix) ;DD CB 55 6E
203 bit.s 5,offset(ix) ;52 DD CB 55 6E
204 bit 5,offset(iy) ;FD CB 55 6E
205 bit.s 5,offset(iy) ;52 FD CB 55 6E
206 bit 5,a ;CB 6F
207 bit 5,b ;CB 68
208 bit 5,c ;CB 69
209 bit 5,d ;CB 6A
210 bit 5,e ;CB 6B
211 bit 5,h ;CB 6C
212 bit 5,l ;CB 6D
213 bit 6,(hl) ;CB 76
214 bit.s 6,(hl) ;52 CB 76
215 bit 6,offset(ix) ;DD CB 55 76
216 bit.s 6,offset(ix) ;52 DD CB 55 76
217 bit 6,offset(iy) ;FD CB 55 76
218 bit.s 6,offset(iy) ;52 FD CB 55 76
219 bit 6,a ;CB 77
220 bit 6,b ;CB 70
221 bit 6,c ;CB 71
222 bit 6,d ;CB 72
223 bit 6,e ;CB 73
224 bit 6,h ;CB 74
225 bit 6,l ;CB 75
226 bit 7,(hl) ;CB 7E
227 bit.s 7,(hl) ;52 CB 7E
228 bit 7,offset(ix) ;DD CB 55 7E
229 bit.s 7,offset(ix) ;52 DD CB 55 7E
230 bit 7,offset(iy) ;FD CB 55 7E
231 bit.s 7,offset(iy) ;52 FD CB 55 7E
232 bit 7,a ;CB 7F
233 bit 7,b ;CB 78
234 bit 7,c ;CB 79
235 bit 7,d ;CB 7A
236 bit 7,e ;CB 7B
237 bit 7,h ;CB 7C
238 bit 7,l ;CB 7D
239 ;***********************************************************
240 ; call subroutine at nn if condition is true
241 call C,nn ;DC 84 05 00
242 call.is C,nn ;49 DC 84 05
243 call M,nn ;FC 84 05 00
244 call.is M,nn ;49 FC 84 05
245 call NC,nn ;D4 84 05 00
246 call.is NC,nn ;49 D4 84 05
247 call NZ,nn ;C4 84 05 00
248 call.is NZ,nn ;49 C4 84 05
249 call P,nn ;F4 84 05 00
250 call.is P,nn ;49 F4 84 05
251 call PE,nn ;EC 84 05 00
252 call.is PE,nn ;49 EC 84 05
253 call PO,nn ;E4 84 05 00
254 call.is PO,nn ;49 E4 84 05
255 call Z,nn ;CC 84 05 00
256 call.is Z,nn ;49 CC 84 05
257 ;***********************************************************
258 ; unconditional call to subroutine at nn
259 call nn ;CD 84 05 00
260 call.is nn ;49 CD 84 05
261 ;***********************************************************
262 ; complement carry flag
263 ccf ;3F
264 ;***********************************************************
265 ; compare operand with 'a'
266 cp a,(hl) ;BE
267 cp.s a,(hl) ;52 BE
268 cp a,ixh ;DD BC
269 cp a,ixl ;DD BD
270 cp a,iyh ;FD BC
271 cp a,iyl ;FD BD
272 cp a,offset(ix) ;DD BE 55
273 cp.s a,offset(ix) ;52 DD BE 55
274 cp a,offset(iy) ;FD BE 55
275 cp.s a,offset(iy) ;52 FD BE 55
276 cp a,a ;BF
277 cp a,b ;B8
278 cp a,c ;B9
279 cp a,d ;BA
280 cp a,e ;BB
281 cp a,h ;BC
282 cp a,l ;BD
283 cp a,#n ;FE 20
284 ;***********************************************************
285 ; compare location (hl) and 'a'
286 ; decrement 'hl' and 'bc'
287 cpd ;ED A9
288 cpd.s ;52 ED A9
289 ;***********************************************************
290 ; compare location (hl) and 'a'
291 ; decrement 'hl' and 'bc'
292 ; repeat until 'bc' = 0
293 cpdr ;ED B9
294 cpdr.s ;52 ED B9
295 ;***********************************************************
296 ; compare location (hl) and 'a'
297 ; increment 'hl' and decrement 'bc'
298 cpi ;ED A1
299 cpi.s ;52 ED A1
300 ;***********************************************************
301 ; compare location (hl) and 'a'
302 ; increment 'hl' and decrement 'bc'
303 ; repeat until 'bc' = 0
304 cpir ;ED B1
305 cpir.s ;52 ED B1
306 ;***********************************************************
307 ; 1's complement of 'a'
308 cpl ;2F
309 ;***********************************************************
310 ; decimal adjust 'a'
311 daa ;27
312 ;***********************************************************
313 ; decrement operand
314 dec (hl) ;35
315 dec.s (hl) ;52 35
316 dec ixh ;DD 25
317 dec ixl ;DD 2D
318 dec iyh ;FD 25
319 dec iyl ;FD 2D
320 dec offset(ix) ;DD 35 55
321 dec.s offset(ix) ;52 DD 35 55
322 dec offset(iy) ;FD 35 55
323 dec.s offset(iy) ;52 FD 35 55
324 dec a ;3D
325 dec b ;05
326 dec bc ;0B
327 dec.s bc ;52 0B
328 dec c ;0D
329 dec d ;15
330 dec de ;1B
331 dec.s de ;52 1B
332 dec e ;1D
333 dec h ;25
334 dec hl ;2B
335 dec.s hl ;52 2B
336 dec ix ;DD 2B
337 dec.s ix ;52 DD 2B
338 dec iy ;FD 2B
339 dec.s iy ;52 FD 2B
340 dec l ;2D
341 dec sp ;3B
342 dec.s sp ;52 3B
343 ;***********************************************************
344 ; disable interrupts
345 di ;F3
346 ;***********************************************************
347 ; decrement b and jump relative if b # 0
348 djnz .+0x12 ;10 10
349 ;***********************************************************
350 ; enable interrupts
351 ei ;FB
352 ;***********************************************************
353 ; exchange location and (sp)
354 ex (sp),hl ;E3
355 ex.s (sp),hl ;52 E3
356 ex (sp),ix ;DD E3
357 ex.s (sp),ix ;52 DD E3
358 ex (sp),iy ;FD E3
359 ex.s (sp),iy ;52 FD E3
360 ;***********************************************************
361 ; exchange af and af'
362 ex af,af' ;08
363 ;***********************************************************
364 ; exchange de and hl
365 ex de,hl ;EB
366 ;***********************************************************
367 ; exchange:
368 ; bc <-> bc'
369 ; de <-> de'
370 ; hl <-> hl'
371 exx ;D9
372 ;***********************************************************
373 ; halt (wait for interrupt or reset)
374 halt ;76
375 ;***********************************************************
376 ; set interrupt mode
377 im 0 ;ED 46
378 im 1 ;ED 56
379 im 2 ;ED 5E
380 ;***********************************************************
381 ; load 'a' with input from device n
382 in a,(n) ;DB 20
383 ;***********************************************************
384 ; load register with input from (c)
385 in a,(c) ;ED 78
386 in b,(c) ;ED 40
387 in c,(c) ;ED 48
388 in d,(c) ;ED 50
389 in e,(c) ;ED 58
390 in h,(c) ;ED 60
391 in l,(c) ;ED 68
392 ;***********************************************************
393 ; load register with input from port (n)
394 in0 a,(n) ;ED 38 20
395 in0 b,(n) ;ED 00 20
396 in0 c,(n) ;ED 08 20
397 in0 d,(n) ;ED 10 20
398 in0 e,(n) ;ED 18 20
399 in0 h,(n) ;ED 20 20
400 in0 l,(n) ;ED 28 20
401 ;***********************************************************
402 ; increment operand
403 inc (hl) ;34
404 inc.s (hl) ;52 34
405 inc ixh ;DD 24
406 inc ixl ;DD 2C
407 inc iyh ;FD 24
408 inc iyl ;FD 2C
409 inc offset(ix) ;DD 34 55
410 inc.s offset(ix) ;52 DD 34 55
411 inc offset(iy) ;FD 34 55
412 inc.s offset(iy) ;52 FD 34 55
413 inc a ;3C
414 inc b ;04
415 inc bc ;03
416 inc.s bc ;52 03
417 inc c ;0C
418 inc d ;14
419 inc de ;13
420 inc.s de ;52 13
421 inc e ;1C
422 inc h ;24
423 inc hl ;23
424 inc.s hl ;52 23
425 inc ix ;DD 23
426 inc.s ix ;52 DD 23
427 inc iy ;FD 23
428 inc.s iy ;52 FD 23
429 inc l ;2C
430 inc sp ;33
431 inc.s sp ;52 33
432 ;***********************************************************
433 ; load location (hl) with input
434 ; from port (c)
435 ; decrement 'hl' and 'b'
436 ind ;ED AA
437 ind.s ;52 ED AA
438 ;***********************************************************
439 ind2 ;ED 8C
440 ind2.s ;52 ED 8C
441 ;***********************************************************
442 ind2r ;ED 9C
443 ind2r.s ;52 ED 9C
444 ;***********************************************************
445 indm ;ED 8A
446 indm.s ;52 ED 8A
447 ;***********************************************************
448 indmr ;ED 9A
449 indmr.s ;52 ED 9A
450 ;***********************************************************
451 ; load location (hl) with input
452 ; from port (c)
453 ; decrement 'hl' and 'b'
454 ; repeat until 'b' = 0
455 indr ;ED BA
456 indr.s ;52 ED BA
457 ;***********************************************************
458 indrx ;ED CA
459 indrx.s ;52 ED CA
460 ;***********************************************************
461 ; load location (hl) with input
462 ; from port (c)
463 ; increment 'hl' and decrement 'b'
464 ini ;ED A2
465 ini.s ;52 ED A2
466 ;***********************************************************
467 ini2 ;ED 84
468 ini2.s ;52 ED 84
469 ;***********************************************************
470 ini2r ;ED 94
471 ini2r.s ;52 ED 94
472 ;***********************************************************
473 inim ;ED 82
474 inim.s ;52 ED 82
475 ;***********************************************************
476 inimr ;ED 92
477 inimr.s ;52 ED 92
478 ;***********************************************************
479 ; load location (hl) with input
480 ; from port (c)
481 ; increment 'hl' and decrement 'b'
482 ; repeat until 'b' = 0
483 inir ;ED B2
484 inir.s ;52 ED B2
485 ;***********************************************************
486 inirx ;ED C2
487 inirx.s ;52 ED C2
488 ;***********************************************************
489 ; unconditional jump to location nn
490 jp nn ;C3 84 05 00
491 jp.sis nn ;49 C3 84 05
492 jp (hl) ;E9
493 jp.s (hl) ;52 E9
494 jp (ix) ;DD E9
495 jp.s (ix) ;52 DD E9
496 jp (iy) ;FD E9
497 jp.s (iy) ;52 FD E9
498 ;***********************************************************
499 ; jump to location if condition is true
500 jp C,nn ;DA 84 05 00
501 jp.sis C,nn ;49 DA 84 05
502 jp M,nn ;FA 84 05 00
503 jp.sis M,nn ;49 FA 84 05
504 jp NC,nn ;D2 84 05 00
505 jp.sis NC,nn ;49 D2 84 05
506 jp NZ,nn ;C2 84 05 00
507 jp.sis NZ,nn ;49 C2 84 05
508 jp P,nn ;F2 84 05 00
509 jp.sis P,nn ;49 F2 84 05
510 jp PE,nn ;EA 84 05 00
511 jp.sis PE,nn ;49 EA 84 05
512 jp PO,nn ;E2 84 05 00
513 jp.sis PO,nn ;49 E2 84 05
514 jp Z,nn ;CA 84 05 00
515 jp.sis Z,nn ;49 CA 84 05
516 ;***********************************************************
517 ; unconditional jump relative to PC+e
518 jr jr1+0x10 ;18 10
519 ;***********************************************************
520 ; jump relative to PC+e if condition is true
521 jr1: jr C,jr2+0x10 ;38 10
522 jr2: jr NC,jr3+0x10 ;30 10
523 jr3: jr NZ,jr4+0x10 ;20 10
524 jr4: jr Z,jr5+0x10 ;28 10
525 jr5:
526 ;***********************************************************
527 ; load source to destination
528 ld a,(hl) ;7E
529 ld.s a,(hl) ;52 7E
530 ld a,offset(ix) ;DD 7E 55
531 ld.s a,offset(ix) ;52 DD 7E 55
532 ld a,offset(iy) ;FD 7E 55
533 ld.s a,offset(iy) ;52 FD 7E 55
534 ld a,a ;7F
535 ld a,b ;78
536 ld a,c ;79
537 ld a,d ;7A
538 ld a,e ;7B
539 ld a,h ;7C
540 ld a,l ;7D
541 ld a,#n ;3E 20
542 ld b,(hl) ;46
543 ld.s b,(hl) ;52 46
544 ld b,offset(ix) ;DD 46 55
545 ld.s b,offset(ix) ;52 DD 46 55
546 ld b,offset(iy) ;FD 46 55
547 ld.s b,offset(iy) ;52 FD 46 55
548 ld b,a ;47
549 ld b,b ;40
550 ld b,c ;41
551 ld b,d ;42
552 ld b,e ;43
553 ld b,h ;44
554 ld b,l ;45
555 ld b,#n ;06 20
556 ld c,(hl) ;4E
557 ld.s c,(hl) ;52 4E
558 ld c,offset(ix) ;DD 4E 55
559 ld.s c,offset(ix) ;52 DD 4E 55
560 ld c,offset(iy) ;FD 4E 55
561 ld.s c,offset(iy) ;52 FD 4E 55
562 ld c,a ;4F
563 ld c,b ;48
564 ld c,c ;49
565 ld c,d ;4A
566 ld c,e ;4B
567 ld c,h ;4C
568 ld c,l ;4D
569 ld c,#n ;0E 20
570 ld d,(hl) ;56
571 ld.s d,(hl) ;52 56
572 ld d,offset(ix) ;DD 56 55
573 ld.s d,offset(ix) ;52 DD 56 55
574 ld d,offset(iy) ;FD 56 55
575 ld.s d,offset(iy) ;52 FD 56 55
576 ld d,a ;57
577 ld d,b ;50
578 ld d,c ;51
579 ld d,d ;52
580 ld d,e ;53
581 ld d,h ;54
582 ld d,l ;55
583 ld d,#n ;16 20
584 ld e,(hl) ;5E
585 ld.s e,(hl) ;52 5E
586 ld e,offset(ix) ;DD 5E 55
587 ld.s e,offset(ix) ;52 DD 5E 55
588 ld e,offset(iy) ;FD 5E 55
589 ld.s e,offset(iy) ;52 FD 5E 55
590 ld e,a ;5F
591 ld e,b ;58
592 ld e,c ;59
593 ld e,d ;5A
594 ld e,e ;5B
595 ld e,h ;5C
596 ld e,l ;5D
597 ld e,#n ;1E 20
598 ld h,(hl) ;66
599 ld.s h,(hl) ;52 66
600 ld h,offset(ix) ;DD 66 55
601 ld.s h,offset(ix) ;52 DD 66 55
602 ld h,offset(iy) ;FD 66 55
603 ld.s h,offset(iy) ;52 FD 66 55
604 ld h,a ;67
605 ld h,b ;60
606 ld h,c ;61
607 ld h,d ;62
608 ld h,e ;63
609 ld h,h ;64
610 ld h,l ;65
611 ld h,#n ;26 20
612 ld l,(hl) ;6E
613 ld.s l,(hl) ;52 6E
614 ld l,offset(ix) ;DD 6E 55
615 ld.s l,offset(ix) ;52 DD 6E 55
616 ld l,offset(iy) ;FD 6E 55
617 ld.s l,offset(iy) ;52 FD 6E 55
618 ld l,a ;6F
619 ld l,b ;68
620 ld l,c ;69
621 ld l,d ;6A
622 ld l,e ;6B
623 ld l,h ;6C
624 ld l,l ;6D
625 ld l,#n ;2E 20
626 ;***********************************************************
627 ld i,a ;ED 47
628 ld r,a ;ED 4F
629 ld a,i ;ED 57
630 ld a,r ;ED 5F
631 ld a,mb ;ED 6E
632 ld mb,a ;ED 6D
633 ld hl,i ;ED D7
634 ld i,hl ;ED C7
635 ;***********************************************************
636 ld (bc),a ;02
637 ld.s (bc),a ;52 02
638 ld (de),a ;12
639 ld.s (de),a ;52 12
640 ld a,(bc) ;0A
641 ld.s a,(bc) ;52 0A
642 ld a,(de) ;1A
643 ld.s a,(de) ;52 1A
644 ;***********************************************************
645 ld (hl),a ;77
646 ld.s (hl),a ;52 77
647 ld (hl),b ;70
648 ld.s (hl),b ;52 70
649 ld (hl),c ;71
650 ld.s (hl),c ;52 71
651 ld (hl),d ;72
652 ld.s (hl),d ;52 72
653 ld (hl),e ;73
654 ld.s (hl),e ;52 73
655 ld (hl),h ;74
656 ld.s (hl),h ;52 74
657 ld (hl),l ;75
658 ld.s (hl),l ;52 75
659 ld (hl),#n ;36 20
660 ld.s (hl),#n ;52 36 20
661 ;***********************************************************
662 ld offset(ix),a ;DD 77 55
663 ld.s offset(ix),a ;52 DD 77 55
664 ld offset(ix),b ;DD 70 55
665 ld.s offset(ix),b ;52 DD 70 55
666 ld offset(ix),c ;DD 71 55
667 ld.s offset(ix),c ;52 DD 71 55
668 ld offset(ix),d ;DD 72 55
669 ld.s offset(ix),d ;52 DD 72 55
670 ld offset(ix),e ;DD 73 55
671 ld.s offset(ix),e ;52 DD 73 55
672 ld offset(ix),h ;DD 74 55
673 ld.s offset(ix),h ;52 DD 74 55
674 ld offset(ix),l ;DD 75 55
675 ld.s offset(ix),l ;52 DD 75 55
676 ld offset(ix),#n ;DD 36 55 20
677 ld.s offset(ix),#n ;52 DD 36 55 20
678 ;***********************************************************
679 ld offset(iy),a ;FD 77 55
680 ld.s offset(iy),a ;52 FD 77 55
681 ld offset(iy),b ;FD 70 55
682 ld.s offset(iy),b ;52 FD 70 55
683 ld offset(iy),c ;FD 71 55
684 ld.s offset(iy),c ;52 FD 71 55
685 ld offset(iy),d ;FD 72 55
686 ld.s offset(iy),d ;52 FD 72 55
687 ld offset(iy),e ;FD 73 55
688 ld.s offset(iy),e ;52 FD 73 55
689 ld offset(iy),h ;FD 74 55
690 ld.s offset(iy),h ;52 FD 74 55
691 ld offset(iy),l ;FD 75 55
692 ld.s offset(iy),l ;52 FD 75 55
693 ld offset(iy),#n ;FD 36 55 20
694 ld.s offset(iy),#n ;52 FD 36 55 20
695 ;***********************************************************
696 ld (nn),a ;32 84 05 00
697 ld.is (nn),a ;49 32 84 05
698 ld (nn),bc ;ED 43 84 05 00
699 ld.is (nn),bc ;49 ED 43 84 05
700 ld (nn),de ;ED 53 84 05 00
701 ld.is (nn),de ;49 ED 53 84 05
702 ld (nn),hl ;22 84 05 00
703 ld.is (nn),hl ;49 22 84 05
704 ld (nn),sp ;ED 73 84 05 00
705 ld.is (nn),sp ;49 ED 73 84 05
706 ld (nn),ix ;DD 22 84 05 00
707 ld.is (nn),ix ;49 DD 22 84 05
708 ld (nn),iy ;FD 22 84 05 00
709 ld.is (nn),iy ;49 FD 22 84 05
710 ;***********************************************************
711 ld a,(nn) ;3A 84 05 00
712 ld.is a,(nn) ;49 3A 84 05
713 ld bc,(nn) ;ED 4B 84 05 00
714 ld.is bc,(nn) ;49 ED 4B 84 05
715 ld de,(nn) ;ED 5B 84 05 00
716 ld.is de,(nn) ;49 ED 5B 84 05
717 ld hl,(nn) ;2A 84 05 00
718 ld.is hl,(nn) ;49 2A 84 05
719 ld sp,(nn) ;ED 7B 84 05 00
720 ld.is sp,(nn) ;49 ED 7B 84 05
721 ld ix,(nn) ;DD 2A 84 05 00
722 ld.is ix,(nn) ;49 DD 2A 84 05
723 ld iy,(nn) ;FD 2A 84 05 00
724 ld.is iy,(nn) ;49 FD 2A 84 05
725 ;***********************************************************
726 ld bc,#nn ;01 84 05 00
727 ld.is bc,#nn ;49 01 84 05
728 ld de,#nn ;11 84 05 00
729 ld.is de,#nn ;49 11 84 05
730 ld hl,#nn ;21 84 05 00
731 ld.is hl,#nn ;49 21 84 05
732 ld sp,#nn ;31 84 05 00
733 ld.is sp,#nn ;49 31 84 05
734 ld ix,#nn ;DD 21 84 05 00
735 ld.is ix,#nn ;49 DD 21 84 05
736 ld iy,#nn ;FD 21 84 05 00
737 ld.is iy,#nn ;49 FD 21 84 05
738 ;***********************************************************
739 ld sp,hl ;F9
740 ld sp,ix ;DD F9
741 ld sp,iy ;FD F9
742 ;***********************************************************
743 ld (hl),ix ;ED 3F
744 ld.s (hl),ix ;52 ED 3F
745 ld (hl),iy ;ED 3E
746 ld.s (hl),iy ;52 ED 3E
747 ld (hl),bc ;ED 0F
748 ld.s (hl),bc ;52 ED 0F
749 ld (hl),de ;ED 1F
750 ld.s (hl),de ;52 ED 1F
751 ld (hl),hl ;ED 2F
752 ld.s (hl),hl ;52 ED 2F
753 ld bc,(hl) ;ED 07
754 ld.s bc,(hl) ;52 ED 07
755 ld de,(hl) ;ED 17
756 ld.s de,(hl) ;52 ED 17
757 ld hl,(hl) ;ED 27
758 ld.s hl,(hl) ;52 ED 27
759 ld ix,(hl) ;ED 37
760 ld.s ix,(hl) ;52 ED 37
761 ld iy,(hl) ;ED 31
762 ld.s iy,(hl) ;52 ED 31
763 ;***********************************************************
764 ld ixh,ixh ;DD 64
765 ld ixh,ixl ;DD 65
766 ld ixl,ixh ;DD 6C
767 ld ixl,ixl ;DD 6D
768 ld iyh,iyh ;FD 64
769 ld iyh,iyl ;FD 65
770 ld iyl,iyh ;FD 6C
771 ld iyl,iyl ;FD 6D
772 ld ixh,#n ;DD 26 20
773 ld ixl,#n ;DD 2E 20
774 ld iyh,#n ;FD 26 20
775 ld iyl,#n ;FD 2E 20
776 ld ixh,a ;DD 67
777 ld ixh,b ;DD 60
778 ld ixh,c ;DD 61
779 ld ixh,d ;DD 62
780 ld ixh,e ;DD 63
781 ld ixl,a ;DD 6F
782 ld ixl,b ;DD 68
783 ld ixl,c ;DD 69
784 ld ixl,d ;DD 6A
785 ld ixl,e ;DD 6B
786 ld iyh,a ;FD 67
787 ld iyh,b ;FD 60
788 ld iyh,c ;FD 61
789 ld iyh,d ;FD 62
790 ld iyh,e ;FD 63
791 ld iyl,a ;FD 6F
792 ld iyl,b ;FD 68
793 ld iyl,c ;FD 69
794 ld iyl,d ;FD 6A
795 ld iyl,e ;FD 6B
796 ld a,ixh ;DD 7C
797 ld a,ixl ;DD 7D
798 ld a,iyh ;FD 7C
799 ld a,iyl ;FD 7D
800 ld b,ixh ;DD 44
801 ld b,ixl ;DD 45
802 ld b,iyh ;FD 44
803 ld b,iyl ;FD 45
804 ld c,ixh ;DD 4C
805 ld c,ixl ;DD 4D
806 ld c,iyh ;FD 4C
807 ld c,iyl ;FD 4D
808 ld d,ixh ;DD 54
809 ld d,ixl ;DD 55
810 ld d,iyh ;FD 54
811 ld d,iyl ;FD 55
812 ld e,ixh ;DD 5C
813 ld e,ixl ;DD 5D
814 ld e,iyh ;FD 5C
815 ld e,iyl ;FD 5D
816 ;***********************************************************
817 ld bc,offset(ix) ;DD 07 55
818 ld.s bc,offset(ix) ;52 DD 07 55
819 ld de,offset(ix) ;DD 17 55
820 ld.s de,offset(ix) ;52 DD 17 55
821 ld hl,offset(ix) ;DD 27 55
822 ld.s hl,offset(ix) ;52 DD 27 55
823 ld bc,offset(iy) ;FD 07 55
824 ld.s bc,offset(iy) ;52 FD 07 55
825 ld de,offset(iy) ;FD 17 55
826 ld.s de,offset(iy) ;52 FD 17 55
827 ld hl,offset(iy) ;FD 27 55
828 ld.s hl,offset(iy) ;52 FD 27 55
829 ld ix,offset(ix) ;DD 37 55
830 ld.s ix,offset(ix) ;52 DD 37 55
831 ld iy,offset(ix) ;DD 31 55
832 ld.s iy,offset(ix) ;52 DD 31 55
833 ld ix,offset(iy) ;FD 31 55
834 ld.s ix,offset(iy) ;52 FD 31 55
835 ld iy,offset(iy) ;FD 37 55
836 ld.s iy,offset(iy) ;52 FD 37 55
837 ld offset(ix),bc ;DD 0F 55
838 ld.s offset(ix),bc ;52 DD 0F 55
839 ld offset(ix),de ;DD 1F 55
840 ld.s offset(ix),de ;52 DD 1F 55
841 ld offset(ix),hl ;DD 2F 55
842 ld.s offset(ix),hl ;52 DD 2F 55
843 ld offset(iy),bc ;FD 0F 55
844 ld.s offset(iy),bc ;52 FD 0F 55
845 ld offset(iy),de ;FD 1F 55
846 ld.s offset(iy),de ;52 FD 1F 55
847 ld offset(iy),hl ;FD 2F 55
848 ld.s offset(iy),hl ;52 FD 2F 55
849 ld offset(ix),ix ;DD 3F 55
850 ld.s offset(ix),ix ;52 DD 3F 55
851 ld offset(ix),iy ;DD 3E 55
852 ld.s offset(ix),iy ;52 DD 3E 55
853 ld offset(iy),ix ;FD 3E 55
854 ld.s offset(iy),ix ;52 FD 3E 55
855 ld offset(iy),iy ;FD 3F 55
856 ld.s offset(iy),iy ;52 FD 3F 55
857 ;***********************************************************
858 ; load location (hl)
859 ; with location (de)
860 ; decrement de, hl
861 ; decrement bc
862 ldd ;ED A8
863 ldd.s ;52 ED A8
864 ;***********************************************************
865 ; load location (hl)
866 ; with location (de)
867 ; decrement de, hl
868 ; decrement bc
869 ; repeat until bc = 0
870 lddr ;ED B8
871 lddr.s ;52 ED B8
872 ;***********************************************************
873 ; load location (hl)
874 ; with location (de)
875 ; increment de, hl
876 ; decrement bc
877 ldi ;ED A0
878 ldi.s ;52 ED A0
879 ;***********************************************************
880 ; load location (hl)
881 ; with location (de)
882 ; increment de, hl
883 ; decrement bc
884 ; repeat until bc = 0
885 ldir ;ED B0
886 ldir.s ;52 ED B0
887 ;***********************************************************
888 lea ix,ix,#offset ;ED 32 55
889 lea.s ix,ix,#offset ;52 ED 32 55
890 lea iy,ix,#offset ;ED 55 55
891 lea.s iy,ix,#offset ;52 ED 55 55
892 lea ix,iy,#offset ;ED 54 55
893 lea.s ix,iy,#offset ;52 ED 54 55
894 lea iy,iy,#offset ;ED 33 55
895 lea.s iy,iy,#offset ;52 ED 33 55
896 lea bc,ix,#offset ;ED 02 55
897 lea de,ix,#offset ;ED 12 55
898 lea hl,ix,#offset ;ED 22 55
899 lea.s bc,ix,#offset ;52 ED 02 55
900 lea.s de,ix,#offset ;52 ED 12 55
901 lea.s hl,ix,#offset ;52 ED 22 55
902 lea bc,iy,#offset ;ED 03 55
903 lea de,iy,#offset ;ED 13 55
904 lea hl,iy,#offset ;ED 23 55
905 lea.s bc,iy,#offset ;52 ED 03 55
906 lea.s de,iy,#offset ;52 ED 13 55
907 lea.s hl,iy,#offset ;52 ED 23 55
908 ;***********************************************************
909 ; multiplication of each half
910 ; of the specified register pair
911 ; with the 16-bit result going to
912 ; the specified register pair
913 mlt bc ;ED 4C
914 mlt de ;ED 5C
915 mlt hl ;ED 6C
916 mlt sp ;ED 7C
917 mlt.s sp ;52 ED 7C
918 ;***********************************************************
919 ; 2's complement of 'a'
920 neg ;ED 44
921 ;***********************************************************
922 ; no operation
923 nop ;00
924 ;***********************************************************
925 ; logical 'or' operand with 'a'
926 or a,(hl) ;B6
927 or.s a,(hl) ;52 B6
928 or a,ixh ;DD B4
929 or a,ixl ;DD B5
930 or a,iyh ;FD B4
931 or a,iyl ;FD B5
932 or a,offset(ix) ;DD B6 55
933 or.s a,offset(ix) ;52 DD B6 55
934 or a,offset(iy) ;FD B6 55
935 or.s a,offset(iy) ;52 FD B6 55
936 or a,a ;B7
937 or a,b ;B0
938 or a,c ;B1
939 or a,d ;B2
940 or a,e ;B3
941 or a,h ;B4
942 or a,l ;B5
943 or a,#n ;F6 20
944 ;***********************************************************
945 otd2r ;ED BC
946 otd2r.s ;52 ED BC
947 ;***********************************************************
948 ; load output port (c) with
949 ; location (hl),
950 ; decrement hl and b
951 ; decrement c
952 otdm ;ED 8B
953 otdm.s ;52 ED 8B
954 ;***********************************************************
955 ; load output port (c) with
956 ; location (hl),
957 ; decrement hl and c
958 ; decrement b
959 ; repeat until b = 0
960 otdmr ;ED 9B
961 otdmr.s ;52 ED 9B
962 ;***********************************************************
963 ; load output port (c)
964 ; with location (hl)
965 ; decrement hl and decrement b
966 ; repeat until b = 0
967 otdr ;ED BB
968 otdr.s ;52 ED BB
969 ;***********************************************************
970 otdrx ;ED CB
971 otdrx.s ;52 ED CB
972 ;***********************************************************
973 oti2r ;ED B4
974 oti2r.s ;52 ED B4
975 ;***********************************************************
976 ; load output port (c) with
977 ; location (hl),
978 ; increment hl and b
979 ; decrement c
980 otim ;ED 83
981 otim.s ;52 ED 83
982 ;***********************************************************
983 ; load output port (c) with
984 ; location (hl),
985 ; increment hl and c
986 ; decrement b
987 ; repeat until b = 0
988 otimr ;ED 93
989 otimr.s ;52 ED 93
990 ;***********************************************************
991 ; load output port (c)
992 ; with location (hl)
993 ; increment hl and decrement b
994 ; repeat until b = 0
995 otir ;ED B3
996 otir.s ;52 ED B3
997 ;***********************************************************
998 otirx ;ED C3
999 otirx.s ;52 ED C3
1000 ;***********************************************************
1001 ; load output port (c) with reg
1002 out (c),a ;ED 79
1003 out (c),b ;ED 41
1004 out (c),c ;ED 49
1005 out (c),d ;ED 51
1006 out (c),e ;ED 59
1007 out (c),h ;ED 61
1008 out (c),l ;ED 69
1009 ;***********************************************************
1010 ; load output port (n) with 'a'
1011 out (n),a ;D3 20
1012 ;***********************************************************
1013 ; load output port (n) from register
1014 out0 (n),a ;ED 39 20
1015 out0 (n),b ;ED 01 20
1016 out0 (n),c ;ED 09 20
1017 out0 (n),d ;ED 11 20
1018 out0 (n),e ;ED 19 20
1019 out0 (n),h ;ED 21 20
1020 out0 (n),l ;ED 29 20
1021 ;***********************************************************
1022 ; load output port (c)
1023 ; with location (hl)
1024 ; decrement hl and decrement b
1025 outd ;ED AB
1026 outd.s ;52 ED AB
1027 ;***********************************************************
1028 outd2 ;ED AC
1029 outd2.s ;52 ED AC
1030 ;***********************************************************
1031 ; load output port (c)
1032 ; with location (hl)
1033 ; increment hl and decrement b
1034 outi ;ED A3
1035 outi.s ;52 ED A3
1036 ;***********************************************************
1037 outi2 ;ED A4
1038 outi2.s ;52 ED A4
1039 ;***********************************************************
1040 pea ix,#offset ;ED 65 55
1041 pea.s ix,#offset ;52 ED 65 55
1042 pea iy,#offset ;ED 66 55
1043 pea.s iy,#offset ;52 ED 66 55
1044 ;***********************************************************
1045 ; load destination with top of stack
1046 pop af ;F1
1047 pop.s af ;52 F1
1048 pop bc ;C1
1049 pop.s bc ;52 C1
1050 pop de ;D1
1051 pop.s de ;52 D1
1052 pop hl ;E1
1053 pop.s hl ;52 E1
1054 pop ix ;DD E1
1055 pop.s ix ;52 DD E1
1056 pop iy ;FD E1
1057 pop.s iy ;52 FD E1
1058 ;***********************************************************
1059 ; put source on stack
1060 push af ;F5
1061 push.s af ;52 F5
1062 push bc ;C5
1063 push.s bc ;52 C5
1064 push de ;D5
1065 push.s de ;52 D5
1066 push hl ;E5
1067 push.s hl ;52 E5
1068 push ix ;DD E5
1069 push.s ix ;52 DD E5
1070 push iy ;FD E5
1071 push.s iy ;52 FD E5
1072 ;***********************************************************
1073 ; reset bit of location or register
1074 res 0,(hl) ;CB 86
1075 res.s 0,(hl) ;52 CB 86
1076 res 0,offset(ix) ;DD CB 55 86
1077 res.s 0,offset(ix) ;52 DD CB 55 86
1078 res 0,offset(iy) ;FD CB 55 86
1079 res.s 0,offset(iy) ;52 FD CB 55 86
1080 res 0,a ;CB 87
1081 res 0,b ;CB 80
1082 res 0,c ;CB 81
1083 res 0,d ;CB 82
1084 res 0,e ;CB 83
1085 res 0,h ;CB 84
1086 res 0,l ;CB 85
1087 res 1,(hl) ;CB 8E
1088 res.s 1,(hl) ;52 CB 8E
1089 res 1,offset(ix) ;DD CB 55 8E
1090 res.s 1,offset(ix) ;52 DD CB 55 8E
1091 res 1,offset(iy) ;FD CB 55 8E
1092 res.s 1,offset(iy) ;52 FD CB 55 8E
1093 res 1,a ;CB 8F
1094 res 1,b ;CB 88
1095 res 1,c ;CB 89
1096 res 1,d ;CB 8A
1097 res 1,e ;CB 8B
1098 res 1,h ;CB 8C
1099 res 1,l ;CB 8D
1100 res 2,(hl) ;CB 96
1101 res.s 2,(hl) ;52 CB 96
1102 res 2,offset(ix) ;DD CB 55 96
1103 res.s 2,offset(ix) ;52 DD CB 55 96
1104 res 2,offset(iy) ;FD CB 55 96
1105 res.s 2,offset(iy) ;52 FD CB 55 96
1106 res 2,a ;CB 97
1107 res 2,b ;CB 90
1108 res 2,c ;CB 91
1109 res 2,d ;CB 92
1110 res 2,e ;CB 93
1111 res 2,h ;CB 94
1112 res 2,l ;CB 95
1113 res 3,(hl) ;CB 9E
1114 res.s 3,(hl) ;52 CB 9E
1115 res 3,offset(ix) ;DD CB 55 9E
1116 res.s 3,offset(ix) ;52 DD CB 55 9E
1117 res 3,offset(iy) ;FD CB 55 9E
1118 res.s 3,offset(iy) ;52 FD CB 55 9E
1119 res 3,a ;CB 9F
1120 res 3,b ;CB 98
1121 res 3,c ;CB 99
1122 res 3,d ;CB 9A
1123 res 3,e ;CB 9B
1124 res 3,h ;CB 9C
1125 res 3,l ;CB 9D
1126 res 4,(hl) ;CB A6
1127 res.s 4,(hl) ;52 CB A6
1128 res 4,offset(ix) ;DD CB 55 A6
1129 res.s 4,offset(ix) ;52 DD CB 55 A6
1130 res 4,offset(iy) ;FD CB 55 A6
1131 res.s 4,offset(iy) ;52 FD CB 55 A6
1132 res 4,a ;CB A7
1133 res 4,b ;CB A0
1134 res 4,c ;CB A1
1135 res 4,d ;CB A2
1136 res 4,e ;CB A3
1137 res 4,h ;CB A4
1138 res 4,l ;CB A5
1139 res 5,(hl) ;CB AE
1140 res.s 5,(hl) ;52 CB AE
1141 res 5,offset(ix) ;DD CB 55 AE
1142 res.s 5,offset(ix) ;52 DD CB 55 AE
1143 res 5,offset(iy) ;FD CB 55 AE
1144 res.s 5,offset(iy) ;52 FD CB 55 AE
1145 res 5,a ;CB AF
1146 res 5,b ;CB A8
1147 res 5,c ;CB A9
1148 res 5,d ;CB AA
1149 res 5,e ;CB AB
1150 res 5,h ;CB AC
1151 res 5,l ;CB AD
1152 res 6,(hl) ;CB B6
1153 res.s 6,(hl) ;52 CB B6
1154 res 6,offset(ix) ;DD CB 55 B6
1155 res.s 6,offset(ix) ;52 DD CB 55 B6
1156 res 6,offset(iy) ;FD CB 55 B6
1157 res.s 6,offset(iy) ;52 FD CB 55 B6
1158 res 6,a ;CB B7
1159 res 6,b ;CB B0
1160 res 6,c ;CB B1
1161 res 6,d ;CB B2
1162 res 6,e ;CB B3
1163 res 6,h ;CB B4
1164 res 6,l ;CB B5
1165 res 7,(hl) ;CB BE
1166 res.s 7,(hl) ;52 CB BE
1167 res 7,offset(ix) ;DD CB 55 BE
1168 res.s 7,offset(ix) ;52 DD CB 55 BE
1169 res 7,offset(iy) ;FD CB 55 BE
1170 res.s 7,offset(iy) ;52 FD CB 55 BE
1171 res 7,a ;CB BF
1172 res 7,b ;CB B8
1173 res 7,c ;CB B9
1174 res 7,d ;CB BA
1175 res 7,e ;CB BB
1176 res 7,h ;CB BC
1177 res 7,l ;CB BD
1178 ;***********************************************************
1179 ; return from subroutine
1180 ret ;C9
1181 ret.s ;52 C9
1182 ;***********************************************************
1183 ; return from subroutine if condition is true
1184 ret C ;D8
1185 ret.s C ;52 D8
1186 ret M ;F8
1187 ret.s M ;52 F8
1188 ret NC ;D0
1189 ret.s NC ;52 D0
1190 ret NZ ;C0
1191 ret.s NZ ;52 C0
1192 ret P ;F0
1193 ret.s P ;52 F0
1194 ret PE ;E8
1195 ret.s PE ;52 E8
1196 ret PO ;E0
1197 ret.s PO ;52 E0
1198 ret Z ;C8
1199 ret.s Z ;52 C8
1200 ;***********************************************************
1201 ; return from interrupt
1202 reti ;ED 4D
1203 reti.s ;52 ED 4D
1204 ;***********************************************************
1205 ; return from non-maskable interrupt
1206 retn ;ED 45
1207 retn.s ;52 ED 45
1208 ;***********************************************************
1209 ; rotate left through carry
1210 rl a,(hl) ;CB 16
1211 rl.s a,(hl) ;52 CB 16
1212 rl a,offset(ix) ;DD CB 55 16
1213 rl.s a,offset(ix) ;52 DD CB 55 16
1214 rl a,offset(iy) ;FD CB 55 16
1215 rl.s a,offset(iy) ;52 FD CB 55 16
1216 rl a,a ;CB 17
1217 rl a,b ;CB 10
1218 rl a,c ;CB 11
1219 rl a,d ;CB 12
1220 rl a,e ;CB 13
1221 rl a,h ;CB 14
1222 rl a,l ;CB 15
1223 ;***********************************************************
1224 ; rotate left 'a' with carry
1225 rla ;17
1226 ;***********************************************************
1227 ; rotate left circular
1228 rlc a,(hl) ;CB 06
1229 rlc.s a,(hl) ;52 CB 06
1230 rlc a,offset(ix) ;DD CB 55 06
1231 rlc.s a,offset(ix) ;52 DD CB 55 06
1232 rlc a,offset(iy) ;FD CB 55 06
1233 rlc.s a,offset(iy) ;52 FD CB 55 06
1234 rlc a,a ;CB 07
1235 rlc a,b ;CB 00
1236 rlc a,c ;CB 01
1237 rlc a,d ;CB 02
1238 rlc a,e ;CB 03
1239 rlc a,h ;CB 04
1240 rlc a,l ;CB 05
1241 ;***********************************************************
1242 ; rotate left 'a' circular
1243 rlca ;07
1244 ;***********************************************************
1245 ; rotate digit left and right
1246 ; between 'a' and location (hl)
1247 rld ;ED 6F
1248 ;***********************************************************
1249 ; rotate right through carry
1250 rr a,(hl) ;CB 1E
1251 rr.s a,(hl) ;52 CB 1E
1252 rr a,offset(ix) ;DD CB 55 1E
1253 rr.s a,offset(ix) ;52 DD CB 55 1E
1254 rr a,offset(iy) ;FD CB 55 1E
1255 rr.s a,offset(iy) ;52 FD CB 55 1E
1256 rr a,a ;CB 1F
1257 rr a,b ;CB 18
1258 rr a,c ;CB 19
1259 rr a,d ;CB 1A
1260 rr a,e ;CB 1B
1261 rr a,h ;CB 1C
1262 rr a,l ;CB 1D
1263 ;***********************************************************
1264 ; rotate 'a' right with carry
1265 rra ;1F
1266 ;***********************************************************
1267 ; rotate right circular
1268 rrc a,(hl) ;CB 0E
1269 rrc.s a,(hl) ;52 CB 0E
1270 rrc a,offset(ix) ;DD CB 55 0E
1271 rrc.s a,offset(ix) ;52 DD CB 55 0E
1272 rrc a,offset(iy) ;FD CB 55 0E
1273 rrc.s a,offset(iy) ;52 FD CB 55 0E
1274 rrc a,a ;CB 0F
1275 rrc a,b ;CB 08
1276 rrc a,c ;CB 09
1277 rrc a,d ;CB 0A
1278 rrc a,e ;CB 0B
1279 rrc a,h ;CB 0C
1280 rrc a,l ;CB 0D
1281 ;***********************************************************
1282 ; rotate 'a' right circular
1283 rrca ;0F
1284 ;***********************************************************
1285 ; rotate digit right and left
1286 ; between 'a' and location (hl)
1287 rrd ;ED 67
1288 ;***********************************************************
1289 rsmix ;ED 7E
1290 ;***********************************************************
1291 ; restart location
1292 rst 0x00 ;C7
1293 rst 0x08 ;CF
1294 rst 0x10 ;D7
1295 rst 0x18 ;DF
1296 rst 0x20 ;E7
1297 rst 0x28 ;EF
1298 rst 0x30 ;F7
1299 rst 0x38 ;FF
1300 rst.s 0x00 ;52 C7
1301 rst.s 0x08 ;52 CF
1302 rst.s 0x10 ;52 D7
1303 rst.s 0x18 ;52 DF
1304 rst.s 0x20 ;52 E7
1305 rst.s 0x28 ;52 EF
1306 rst.s 0x30 ;52 F7
1307 rst.s 0x38 ;52 FF
1308 ;***********************************************************
1309 ; subtract with carry to 'a'
1310 sbc a,(hl) ;9E
1311 sbc.s a,(hl) ;52 9E
1312 sbc a,ixh ;DD 9C
1313 sbc a,ixl ;DD 9D
1314 sbc a,iyh ;FD 9C
1315 sbc a,iyl ;FD 9D
1316 sbc a,offset(ix) ;DD 9E 55
1317 sbc.s a,offset(ix) ;52 DD 9E 55
1318 sbc a,offset(iy) ;FD 9E 55
1319 sbc.s a,offset(iy) ;52 FD 9E 55
1320 sbc a,a ;9F
1321 sbc a,b ;98
1322 sbc a,c ;99
1323 sbc a,d ;9A
1324 sbc a,e ;9B
1325 sbc a,h ;9C
1326 sbc a,l ;9D
1327 sbc a,#n ;DE 20
1328 ;***********************************************************
1329 ; add with carry register pair to 'hl'
1330 sbc hl,bc ;ED 42
1331 sbc hl,de ;ED 52
1332 sbc hl,hl ;ED 62
1333 sbc.s hl,bc ;52 ED 42
1334 sbc.s hl,de ;52 ED 52
1335 sbc.s hl,hl ;52 ED 62
1336 sbc hl,sp ;ED 72
1337 sbc.s hl,sp ;52 ED 72
1338 ;***********************************************************
1339 ; set carry flag (C=1)
1340 scf ;37
1341 ;***********************************************************
1342 ; set bit of location or register
1343 set 0,(hl) ;CB C6
1344 set.s 0,(hl) ;52 CB C6
1345 set 0,offset(ix) ;DD CB 55 C6
1346 set.s 0,offset(ix) ;52 DD CB 55 C6
1347 set 0,offset(iy) ;FD CB 55 C6
1348 set.s 0,offset(iy) ;52 FD CB 55 C6
1349 set 0,a ;CB C7
1350 set 0,b ;CB C0
1351 set 0,c ;CB C1
1352 set 0,d ;CB C2
1353 set 0,e ;CB C3
1354 set 0,h ;CB C4
1355 set 0,l ;CB C5
1356 set 1,(hl) ;CB CE
1357 set.s 1,(hl) ;52 CB CE
1358 set 1,offset(ix) ;DD CB 55 CE
1359 set.s 1,offset(ix) ;52 DD CB 55 CE
1360 set 1,offset(iy) ;FD CB 55 CE
1361 set.s 1,offset(iy) ;52 FD CB 55 CE
1362 set 1,a ;CB CF
1363 set 1,b ;CB C8
1364 set 1,c ;CB C9
1365 set 1,d ;CB CA
1366 set 1,e ;CB CB
1367 set 1,h ;CB CC
1368 set 1,l ;CB CD
1369 set 2,(hl) ;CB D6
1370 set.s 2,(hl) ;52 CB D6
1371 set 2,offset(ix) ;DD CB 55 D6
1372 set.s 2,offset(ix) ;52 DD CB 55 D6
1373 set 2,offset(iy) ;FD CB 55 D6
1374 set.s 2,offset(iy) ;52 FD CB 55 D6
1375 set 2,a ;CB D7
1376 set 2,b ;CB D0
1377 set 2,c ;CB D1
1378 set 2,d ;CB D2
1379 set 2,e ;CB D3
1380 set 2,h ;CB D4
1381 set 2,l ;CB D5
1382 set 3,(hl) ;CB DE
1383 set.s 3,(hl) ;52 CB DE
1384 set 3,offset(ix) ;DD CB 55 DE
1385 set.s 3,offset(ix) ;52 DD CB 55 DE
1386 set 3,offset(iy) ;FD CB 55 DE
1387 set.s 3,offset(iy) ;52 FD CB 55 DE
1388 set 3,a ;CB DF
1389 set 3,b ;CB D8
1390 set 3,c ;CB D9
1391 set 3,d ;CB DA
1392 set 3,e ;CB DB
1393 set 3,h ;CB DC
1394 set 3,l ;CB DD
1395 set 4,(hl) ;CB E6
1396 set.s 4,(hl) ;52 CB E6
1397 set 4,offset(ix) ;DD CB 55 E6
1398 set.s 4,offset(ix) ;52 DD CB 55 E6
1399 set 4,offset(iy) ;FD CB 55 E6
1400 set.s 4,offset(iy) ;52 FD CB 55 E6
1401 set 4,a ;CB E7
1402 set 4,b ;CB E0
1403 set 4,c ;CB E1
1404 set 4,d ;CB E2
1405 set 4,e ;CB E3
1406 set 4,h ;CB E4
1407 set 4,l ;CB E5
1408 set 5,(hl) ;CB EE
1409 set.s 5,(hl) ;52 CB EE
1410 set 5,offset(ix) ;DD CB 55 EE
1411 set.s 5,offset(ix) ;52 DD CB 55 EE
1412 set 5,offset(iy) ;FD CB 55 EE
1413 set.s 5,offset(iy) ;52 FD CB 55 EE
1414 set 5,a ;CB EF
1415 set 5,b ;CB E8
1416 set 5,c ;CB E9
1417 set 5,d ;CB EA
1418 set 5,e ;CB EB
1419 set 5,h ;CB EC
1420 set 5,l ;CB ED
1421 set 6,(hl) ;CB F6
1422 set.s 6,(hl) ;52 CB F6
1423 set 6,offset(ix) ;DD CB 55 F6
1424 set.s 6,offset(ix) ;52 DD CB 55 F6
1425 set 6,offset(iy) ;FD CB 55 F6
1426 set.s 6,offset(iy) ;52 FD CB 55 F6
1427 set 6,a ;CB F7
1428 set 6,b ;CB F0
1429 set 6,c ;CB F1
1430 set 6,d ;CB F2
1431 set 6,e ;CB F3
1432 set 6,h ;CB F4
1433 set 6,l ;CB F5
1434 set 7,(hl) ;CB FE
1435 set.s 7,(hl) ;52 CB FE
1436 set 7,offset(ix) ;DD CB 55 FE
1437 set.s 7,offset(ix) ;52 DD CB 55 FE
1438 set 7,offset(iy) ;FD CB 55 FE
1439 set.s 7,offset(iy) ;52 FD CB 55 FE
1440 set 7,a ;CB FF
1441 set 7,b ;CB F8
1442 set 7,c ;CB F9
1443 set 7,d ;CB FA
1444 set 7,e ;CB FB
1445 set 7,h ;CB FC
1446 set 7,l ;CB FD
1447 ;***********************************************************
1448 ; shift operand left arithmetic
1449 sla a,(hl) ;CB 26
1450 sla.s a,(hl) ;52 CB 26
1451 sla a,offset(ix) ;DD CB 55 26
1452 sla.s a,offset(ix) ;52 DD CB 55 26
1453 sla a,offset(iy) ;FD CB 55 26
1454 sla.s a,offset(iy) ;52 FD CB 55 26
1455 sla a,a ;CB 27
1456 sla a,b ;CB 20
1457 sla a,c ;CB 21
1458 sla a,d ;CB 22
1459 sla a,e ;CB 23
1460 sla a,h ;CB 24
1461 sla a,l ;CB 25
1462 ;***********************************************************
1463 ; enter sleep mode
1464 slp ;ED 76
1465 ;***********************************************************
1466 ; shift operand right arithmetic
1467 sra a,(hl) ;CB 2E
1468 sra.s a,(hl) ;52 CB 2E
1469 sra a,offset(ix) ;DD CB 55 2E
1470 sra.s a,offset(ix) ;52 DD CB 55 2E
1471 sra a,offset(iy) ;FD CB 55 2E
1472 sra.s a,offset(iy) ;52 FD CB 55 2E
1473 sra a,a ;CB 2F
1474 sra a,b ;CB 28
1475 sra a,c ;CB 29
1476 sra a,d ;CB 2A
1477 sra a,e ;CB 2B
1478 sra a,h ;CB 2C
1479 sra a,l ;CB 2D
1480 ;***********************************************************
1481 ; shift operand right logical
1482 srl a,(hl) ;CB 3E
1483 srl.s a,(hl) ;52 CB 3E
1484 srl a,offset(ix) ;DD CB 55 3E
1485 srl.s a,offset(ix) ;52 DD CB 55 3E
1486 srl a,offset(iy) ;FD CB 55 3E
1487 srl.s a,offset(iy) ;52 FD CB 55 3E
1488 srl a,a ;CB 3F
1489 srl a,b ;CB 38
1490 srl a,c ;CB 39
1491 srl a,d ;CB 3A
1492 srl a,e ;CB 3B
1493 srl a,h ;CB 3C
1494 srl a,l ;CB 3D
1495 ;***********************************************************
1496 stmix ;ED 7D
1497 ;***********************************************************
1498 ; subtract operand from 'a'
1499 sub a,(hl) ;96
1500 sub.s a,(hl) ;52 96
1501 sub a,ixh ;DD 94
1502 sub a,ixl ;DD 95
1503 sub a,iyh ;FD 94
1504 sub a,iyl ;FD 95
1505 sub a,offset(ix) ;DD 96 55
1506 sub.s a,offset(ix) ;52 DD 96 55
1507 sub a,offset(iy) ;FD 96 55
1508 sub.s a,offset(iy) ;52 FD 96 55
1509 sub a,a ;97
1510 sub a,b ;90
1511 sub a,c ;91
1512 sub a,d ;92
1513 sub a,e ;93
1514 sub a,h ;94
1515 sub a,l ;95
1516 sub a,#n ;D6 20
1517 ;***********************************************************
1518 ; non-destructive'and' with accumulator and specified operand
1519 tst a ;ED 3C
1520 tst b ;ED 04
1521 tst c ;ED 0C
1522 tst d ;ED 14
1523 tst e ;ED 1C
1524 tst h ;ED 24
1525 tst l ;ED 2C
1526 tst #n ;ED 64 20
1527 tst (hl) ;ED 34
1528 tst.s (hl) ;52 ED 34
1529 ;***********************************************************
1530 ; non-destructive 'and' of n and the contents of port (c)
1531 tstio #n ;ED 74 20
1532 ;***********************************************************
1533 ; logical 'xor' operand with 'a'
1534 xor a,(hl) ;AE
1535 xor.s a,(hl) ;52 AE
1536 xor a,ixh ;DD AC
1537 xor a,ixl ;DD AD
1538 xor a,iyh ;FD AC
1539 xor a,iyl ;FD AD
1540 xor a,offset(ix) ;DD AE 55
1541 xor.s a,offset(ix) ;52 DD AE 55
1542 xor a,offset(iy) ;FD AE 55
1543 xor.s a,offset(iy) ;52 FD AE 55
1544 xor a,a ;AF
1545 xor a,b ;A8
1546 xor a,c ;A9
1547 xor a,d ;AA
1548 xor a,e ;AB
1549 xor a,h ;AC
1550 xor a,l ;AD
1551 xor a,#n ;EE 20
1553 ;***********************************************************
1554 ; eZ80 short mode
1555 ;***********************************************************
1557 .adl 0
1559 ;***********************************************************
1560 adc.l a,(hl) ;49 8E
1561 adc.l a,offset(ix) ;49 DD 8E 55
1562 adc.l a,offset(iy) ;49 FD 8E 55
1563 ;***********************************************************
1564 adc.l (hl) ;49 8E
1565 adc.l offset(ix) ;49 DD 8E 55
1566 adc.l offset(iy) ;49 FD 8E 55
1567 ;***********************************************************
1568 ; add with carry register pair to 'hl'
1569 adc.l hl,bc ;49 ED 4A
1570 adc.l hl,de ;49 ED 5A
1571 adc.l hl,hl ;49 ED 6A
1572 adc.l hl,sp ;49 ED 7A
1573 ;***********************************************************
1574 ; add operand to 'a'
1575 add.l a,(hl) ;49 86
1576 add.l a,offset(ix) ;49 DD 86 55
1577 add.l a,offset(iy) ;49 FD 86 55
1578 ;***********************************************************
1579 ; add register pair to 'hl'
1580 add.l hl,bc ;49 09
1581 add.l hl,de ;49 19
1582 add.l hl,hl ;49 29
1583 add.l hl,sp ;49 39
1584 ;***********************************************************
1585 ; add register pair to 'ix'
1586 add.l ix,bc ;49 DD 09
1587 add.l ix,de ;49 DD 19
1588 add.l ix,ix ;49 DD 29
1589 add.l ix,sp ;49 DD 39
1590 ;***********************************************************
1591 ; add register pair to 'iy'
1592 add.l iy,bc ;49 FD 09
1593 add.l iy,de ;49 FD 19
1594 add.l iy,iy ;49 FD 29
1595 add.l iy,sp ;49 FD 39
1596 ;***********************************************************
1597 ; logical 'and' operand with 'a'
1598 and.l a,(hl) ;49 A6
1599 and.l a,offset(ix) ;49 DD A6 55
1600 and.l a,offset(iy) ;49 FD A6 55
1601 ;***********************************************************
1602 ; test bit of location or register
1603 bit.l 0,(hl) ;49 CB 46
1604 bit.l 0,offset(ix) ;49 DD CB 55 46
1605 bit.l 0,offset(iy) ;49 FD CB 55 46
1606 bit.l 1,(hl) ;49 CB 4E
1607 bit.l 1,offset(ix) ;49 DD CB 55 4E
1608 bit.l 1,offset(iy) ;49 FD CB 55 4E
1609 bit.l 2,(hl) ;49 CB 56
1610 bit.l 2,offset(ix) ;49 DD CB 55 56
1611 bit.l 2,offset(iy) ;49 FD CB 55 56
1612 bit.l 3,(hl) ;49 CB 5E
1613 bit.l 3,offset(ix) ;49 DD CB 55 5E
1614 bit.l 3,offset(iy) ;49 FD CB 55 5E
1615 bit.l 4,(hl) ;49 CB 66
1616 bit.l 4,offset(ix) ;49 DD CB 55 66
1617 bit.l 4,offset(iy) ;49 FD CB 55 66
1618 bit.l 5,(hl) ;49 CB 6E
1619 bit.l 5,offset(ix) ;49 DD CB 55 6E
1620 bit.l 5,offset(iy) ;49 FD CB 55 6E
1621 bit.l 6,(hl) ;49 CB 76
1622 bit.l 6,offset(ix) ;49 DD CB 55 76
1623 bit.l 6,offset(iy) ;49 FD CB 55 76
1624 bit.l 7,(hl) ;49 CB 7E
1625 bit.l 7,offset(ix) ;49 DD CB 55 7E
1626 bit.l 7,offset(iy) ;49 FD CB 55 7E
1627 ;***********************************************************
1628 ; call subroutine at nn if condition is true
1629 call.il C,nn ;52 DC 84 05 00
1630 call.il M,nn ;52 FC 84 05 00
1631 call.il NC,nn ;52 D4 84 05 00
1632 call.il NZ,nn ;52 C4 84 05 00
1633 call.il P,nn ;52 F4 84 05 00
1634 call.il PE,nn ;52 EC 84 05 00
1635 call.il PO,nn ;52 E4 84 05 00
1636 call.il Z,nn ;52 CC 84 05 00
1637 ;***********************************************************
1638 ; unconditional call to subroutine at nn
1639 call.il nn ;52 CD 84 05 00
1640 ;***********************************************************
1641 ; compare operand with 'a'
1642 cp.l a,(hl) ;49 BE
1643 cp.l a,offset(ix) ;49 DD BE 55
1644 cp.l a,offset(iy) ;49 FD BE 55
1645 ;***********************************************************
1646 ; compare location (hl) and 'a'
1647 ; decrement 'hl' and 'bc'
1648 cpd.l ;49 ED A9
1649 ;***********************************************************
1650 ; compare location (hl) and 'a'
1651 ; decrement 'hl' and 'bc'
1652 ; repeat until 'bc' = 0
1653 cpdr.l ;49 ED B9
1654 ;***********************************************************
1655 ; compare location (hl) and 'a'
1656 ; increment 'hl' and decrement 'bc'
1657 cpi.l ;49 ED A1
1658 ;***********************************************************
1659 ; compare location (hl) and 'a'
1660 ; increment 'hl' and decrement 'bc'
1661 ; repeat until 'bc' = 0
1662 cpir.l ;49 ED B1
1663 ;***********************************************************
1664 ; decrement operand
1665 dec.l (hl) ;49 35
1666 dec.l offset(ix) ;49 DD 35 55
1667 dec.l offset(iy) ;49 FD 35 55
1668 dec.l bc ;49 0B
1669 dec.l de ;49 1B
1670 dec.l hl ;49 2B
1671 dec.l ix ;49 DD 2B
1672 dec.l iy ;49 FD 2B
1673 dec.l sp ;49 3B
1674 ;***********************************************************
1675 ; exchange location and (sp)
1676 ex.l (sp),hl ;49 E3
1677 ex.l (sp),ix ;49 DD E3
1678 ex.l (sp),iy ;49 FD E3
1679 ;***********************************************************
1680 ; increment operand
1681 inc.l (hl) ;49 34
1682 inc.l offset(ix) ;49 DD 34 55
1683 inc.l offset(iy) ;49 FD 34 55
1684 inc.l bc ;49 03
1685 inc.l de ;49 13
1686 inc.l hl ;49 23
1687 inc.l ix ;49 DD 23
1688 inc.l iy ;49 FD 23
1689 inc.l sp ;49 33
1690 ;***********************************************************
1691 ; load location (hl) with input
1692 ; from port (c)
1693 ; decrement 'hl' and 'b'
1694 ind.l ;49 ED AA
1695 ;***********************************************************
1696 ind2.l ;49 ED 8C
1697 ;***********************************************************
1698 ind2r.l ;49 ED 9C
1699 ;***********************************************************
1700 indm.l ;49 ED 8A
1701 ;***********************************************************
1702 indmr.l ;49 ED 9A
1703 ;***********************************************************
1704 ; load location (hl) with input
1705 ; from port (c)
1706 ; decrement 'hl' and 'b'
1707 ; repeat until 'b' = 0
1708 indr.l ;49 ED BA
1709 ;***********************************************************
1710 indrx.l ;49 ED CA
1711 ;***********************************************************
1712 ; load location (hl) with input
1713 ; from port (c)
1714 ; increment 'hl' and decrement 'b'
1715 ini.l ;49 ED A2
1716 ;***********************************************************
1717 ini2.l ;49 ED 84
1718 ;***********************************************************
1719 ini2r.l ;49 ED 94
1720 ;***********************************************************
1721 inim.l ;49 ED 82
1722 ;***********************************************************
1723 inimr.l ;49 ED 92
1724 ;***********************************************************
1725 ; load location (hl) with input
1726 ; from port (c)
1727 ; increment 'hl' and decrement 'b'
1728 ; repeat until 'b' = 0
1729 inir.l ;49 ED B2
1730 ;***********************************************************
1731 inirx.l ;49 ED C2
1732 ;***********************************************************
1733 ; unconditional jump to location nn
1734 jp.lil nn ;52 C3 84 05 00
1735 jp.l (hl) ;49 E9
1736 jp.l (ix) ;49 DD E9
1737 jp.l (iy) ;49 FD E9
1738 ;***********************************************************
1739 ; jump to location if condition is true
1740 jp.lil C,nn ;52 DA 84 05 00
1741 jp.lil M,nn ;52 FA 84 05 00
1742 jp.lil NC,nn ;52 D2 84 05 00
1743 jp.lil NZ,nn ;52 C2 84 05 00
1744 jp.lil P,nn ;52 F2 84 05 00
1745 jp.lil PE,nn ;52 EA 84 05 00
1746 jp.lil PO,nn ;52 E2 84 05 00
1747 jp.lil Z,nn ;52 CA 84 05 00
1748 ;***********************************************************
1749 ; load source to destination
1750 ld.l a,(hl) ;49 7E
1751 ld.l a,offset(ix) ;49 DD 7E 55
1752 ld.l a,offset(iy) ;49 FD 7E 55
1753 ld.l b,(hl) ;49 46
1754 ld.l b,offset(ix) ;49 DD 46 55
1755 ld.l b,offset(iy) ;49 FD 46 55
1756 ld.l c,(hl) ;49 4E
1757 ld.l c,offset(ix) ;49 DD 4E 55
1758 ld.l c,offset(iy) ;49 FD 4E 55
1759 ld.l d,(hl) ;49 56
1760 ld.l d,offset(ix) ;49 DD 56 55
1761 ld.l d,offset(iy) ;49 FD 56 55
1762 ld.l e,(hl) ;49 5E
1763 ld.l e,offset(ix) ;49 DD 5E 55
1764 ld.l e,offset(iy) ;49 FD 5E 55
1765 ld.l h,(hl) ;49 66
1766 ld.l h,offset(ix) ;49 DD 66 55
1767 ld.l h,offset(iy) ;49 FD 66 55
1768 ld.l l,(hl) ;49 6E
1769 ld.l l,offset(ix) ;49 DD 6E 55
1770 ld.l l,offset(iy) ;49 FD 6E 55
1771 ;***********************************************************
1772 ld.l (bc),a ;49 02
1773 ld.l (de),a ;49 12
1774 ld.l a,(bc) ;49 0A
1775 ld.l a,(de) ;49 1A
1776 ;***********************************************************
1777 ld.l (hl),a ;49 77
1778 ld.l (hl),b ;49 70
1779 ld.l (hl),c ;49 71
1780 ld.l (hl),d ;49 72
1781 ld.l (hl),e ;49 73
1782 ld.l (hl),h ;49 74
1783 ld.l (hl),l ;49 75
1784 ld.l (hl),#n ;49 36 20
1785 ;***********************************************************
1786 ld.l offset(ix),a ;49 DD 77 55
1787 ld.l offset(ix),b ;49 DD 70 55
1788 ld.l offset(ix),c ;49 DD 71 55
1789 ld.l offset(ix),d ;49 DD 72 55
1790 ld.l offset(ix),e ;49 DD 73 55
1791 ld.l offset(ix),h ;49 DD 74 55
1792 ld.l offset(ix),l ;49 DD 75 55
1793 ld.l offset(ix),#n ;49 DD 36 55 20
1794 ;***********************************************************
1795 ld.l offset(iy),a ;49 FD 77 55
1796 ld.l offset(iy),b ;49 FD 70 55
1797 ld.l offset(iy),c ;49 FD 71 55
1798 ld.l offset(iy),d ;49 FD 72 55
1799 ld.l offset(iy),e ;49 FD 73 55
1800 ld.l offset(iy),h ;49 FD 74 55
1801 ld.l offset(iy),l ;49 FD 75 55
1802 ld.l offset(iy),#n ;49 FD 36 55 20
1803 ;***********************************************************
1804 ld.il (nn),a ;52 32 84 05 00
1805 ld.il (nn),bc ;52 ED 43 84 05 00
1806 ld.il (nn),de ;52 ED 53 84 05 00
1807 ld.il (nn),hl ;52 22 84 05 00
1808 ld.il (nn),sp ;52 ED 73 84 05 00
1809 ld.il (nn),ix ;52 DD 22 84 05 00
1810 ld.il (nn),iy ;52 FD 22 84 05 00
1811 ;***********************************************************
1812 ld.il a,(nn) ;52 3A 84 05 00
1813 ld.il bc,(nn) ;52 ED 4B 84 05 00
1814 ld.il de,(nn) ;52 ED 5B 84 05 00
1815 ld.il hl,(nn) ;52 2A 84 05 00
1816 ld.il sp,(nn) ;52 ED 7B 84 05 00
1817 ld.il ix,(nn) ;52 DD 2A 84 05 00
1818 ld.il iy,(nn) ;52 FD 2A 84 05 00
1819 ;***********************************************************
1820 ld.il bc,#nn ;52 01 84 05 00
1821 ld.il de,#nn ;52 11 84 05 00
1822 ld.il hl,#nn ;52 21 84 05 00
1823 ld.il sp,#nn ;52 31 84 05 00
1824 ld.il ix,#nn ;52 DD 21 84 05 00
1825 ld.il iy,#nn ;52 FD 21 84 05 00
1826 ;***********************************************************
1827 ld.l (hl),ix ;49 ED 3F
1828 ld.l (hl),iy ;49 ED 3E
1829 ld.l (hl),bc ;49 ED 0F
1830 ld.l (hl),de ;49 ED 1F
1831 ld.l (hl),hl ;49 ED 2F
1832 ld.l bc,(hl) ;49 ED 07
1833 ld.l de,(hl) ;49 ED 17
1834 ld.l hl,(hl) ;49 ED 27
1835 ld.l ix,(hl) ;49 ED 37
1836 ld.l iy,(hl) ;49 ED 31
1837 ;***********************************************************
1838 ld.l bc,offset(ix) ;49 DD 07 55
1839 ld.l de,offset(ix) ;49 DD 17 55
1840 ld.l hl,offset(ix) ;49 DD 27 55
1841 ld.l bc,offset(iy) ;49 FD 07 55
1842 ld.l de,offset(iy) ;49 FD 17 55
1843 ld.l hl,offset(iy) ;49 FD 27 55
1844 ld.l ix,offset(ix) ;49 DD 37 55
1845 ld.l iy,offset(ix) ;49 DD 31 55
1846 ld.l ix,offset(iy) ;49 FD 31 55
1847 ld.l iy,offset(iy) ;49 FD 37 55
1848 ld.l offset(ix),bc ;49 DD 0F 55
1849 ld.l offset(ix),de ;49 DD 1F 55
1850 ld.l offset(ix),hl ;49 DD 2F 55
1851 ld.l offset(iy),bc ;49 FD 0F 55
1852 ld.l offset(iy),de ;49 FD 1F 55
1853 ld.l offset(iy),hl ;49 FD 2F 55
1854 ld.l offset(ix),ix ;49 DD 3F 55
1855 ld.l offset(ix),iy ;49 DD 3E 55
1856 ld.l offset(iy),ix ;49 FD 3E 55
1857 ld.l offset(iy),iy ;49 FD 3F 55
1858 ;***********************************************************
1859 ; load location (hl)
1860 ; with location (de)
1861 ; decrement de, hl
1862 ; decrement bc
1863 ldd.l ;49 ED A8
1864 ;***********************************************************
1865 ; load location (hl)
1866 ; with location (de)
1867 ; decrement de, hl
1868 ; decrement bc
1869 ; repeat until bc = 0
1870 lddr.l ;49 ED B8
1871 ;***********************************************************
1872 ; load location (hl)
1873 ; with location (de)
1874 ; increment de, hl
1875 ; decrement bc
1876 ldi.l ;49 ED A0
1877 ;***********************************************************
1878 ; load location (hl)
1879 ; with location (de)
1880 ; increment de, hl
1881 ; decrement bc
1882 ; repeat until bc = 0
1883 ldir.l ;49 ED B0
1884 ;***********************************************************
1885 lea.l ix,ix,#offset ;49 ED 32 55
1886 lea.l iy,ix,#offset ;49 ED 55 55
1887 lea.l ix,iy,#offset ;49 ED 54 55
1888 lea.l iy,iy,#offset ;49 ED 33 55
1889 lea.l bc,ix,#offset ;49 ED 02 55
1890 lea.l de,ix,#offset ;49 ED 12 55
1891 lea.l hl,ix,#offset ;49 ED 22 55
1892 lea.l bc,iy,#offset ;49 ED 03 55
1893 lea.l de,iy,#offset ;49 ED 13 55
1894 lea.l hl,iy,#offset ;49 ED 23 55
1895 ;***********************************************************
1896 ; multiplication of each half
1897 ; of the specified register pair
1898 ; with the 16-bit result going to
1899 ; the specified register pair
1900 mlt.l sp ;49 ED 7C
1901 ;***********************************************************
1902 ; logical 'or' operand with 'a'
1903 or.l a,(hl) ;49 B6
1904 or.l a,offset(ix) ;49 DD B6 55
1905 or.l a,offset(iy) ;49 FD B6 55
1906 ;***********************************************************
1907 otd2r.l ;49 ED BC
1908 ;***********************************************************
1909 ; load output port (c) with
1910 ; location (hl),
1911 ; decrement hl and b
1912 ; decrement c
1913 otdm.l ;49 ED 8B
1914 ;***********************************************************
1915 ; load output port (c) with
1916 ; location (hl),
1917 ; decrement hl and c
1918 ; decrement b
1919 ; repeat until b = 0
1920 otdmr.l ;49 ED 9B
1921 ;***********************************************************
1922 ; load output port (c)
1923 ; with location (hl)
1924 ; decrement hl and decrement b
1925 ; repeat until b = 0
1926 otdr.l ;49 ED BB
1927 ;***********************************************************
1928 otdrx.l ;49 ED CB
1929 ;***********************************************************
1930 oti2r.l ;49 ED B4
1931 ;***********************************************************
1932 ; load output port (c) with
1933 ; location (hl),
1934 ; increment hl and b
1935 ; decrement c
1936 otim.l ;49 ED 83
1937 ;***********************************************************
1938 ; load output port (c) with
1939 ; location (hl),
1940 ; increment hl and c
1941 ; decrement b
1942 ; repeat until b = 0
1943 otimr.l ;49 ED 93
1944 ;***********************************************************
1945 ; load output port (c)
1946 ; with location (hl)
1947 ; increment hl and decrement b
1948 ; repeat until b = 0
1949 otir.l ;49 ED B3
1950 ;***********************************************************
1951 otirx.l ;49 ED C3
1952 ;***********************************************************
1953 ; load output port (c)
1954 ; with location (hl)
1955 ; decrement hl and decrement b
1956 outd.l ;49 ED AB
1957 ;***********************************************************
1958 outd2.l ;49 ED AC
1959 ;***********************************************************
1960 ; load output port (c)
1961 ; with location (hl)
1962 ; increment hl and decrement b
1963 outi.l ;49 ED A3
1964 ;***********************************************************
1965 outi2.l ;49 ED A4
1966 ;***********************************************************
1967 pea.l ix,#offset ;52 ED 65 55
1968 pea.l iy,#offset ;52 ED 66 55
1969 ;***********************************************************
1970 ; load destination with top of stack
1971 pop.l af ;49 F1
1972 pop.l bc ;49 C1
1973 pop.l de ;49 D1
1974 pop.l hl ;49 E1
1975 pop.l ix ;49 DD E1
1976 pop.l iy ;49 FD E1
1977 ;***********************************************************
1978 ; put source on stack
1979 push.l af ;49 F5
1980 push.l bc ;49 C5
1981 push.l de ;49 D5
1982 push.l hl ;49 E5
1983 push.l ix ;49 DD E5
1984 push.l iy ;49 FD E5
1985 ;***********************************************************
1986 ; reset bit of location or register
1987 res.l 0,(hl) ;49 CB 86
1988 res.l 0,offset(ix) ;49 DD CB 55 86
1989 res.l 0,offset(iy) ;49 FD CB 55 86
1990 res.l 1,(hl) ;49 CB 8E
1991 res.l 1,offset(ix) ;49 DD CB 55 8E
1992 res.l 1,offset(iy) ;49 FD CB 55 8E
1993 res.l 2,(hl) ;49 CB 96
1994 res.l 2,offset(ix) ;49 DD CB 55 96
1995 res.l 2,offset(iy) ;49 FD CB 55 96
1996 res.l 3,(hl) ;49 CB 9E
1997 res.l 3,offset(ix) ;49 DD CB 55 9E
1998 res.l 3,offset(iy) ;49 FD CB 55 9E
1999 res.l 4,(hl) ;49 CB A6
2000 res.l 4,offset(ix) ;49 DD CB 55 A6
2001 res.l 4,offset(iy) ;49 FD CB 55 A6
2002 res.l 5,(hl) ;49 CB AE
2003 res.l 5,offset(ix) ;49 DD CB 55 AE
2004 res.l 5,offset(iy) ;49 FD CB 55 AE
2005 res.l 6,(hl) ;49 CB B6
2006 res.l 6,offset(ix) ;49 DD CB 55 B6
2007 res.l 6,offset(iy) ;49 FD CB 55 B6
2008 res.l 7,(hl) ;49 CB BE
2009 res.l 7,offset(ix) ;49 DD CB 55 BE
2010 res.l 7,offset(iy) ;49 FD CB 55 BE
2011 ;***********************************************************
2012 ; return from subroutine
2013 ret.l ;49 C9
2014 ;***********************************************************
2015 ; return from subroutine if condition is true
2016 ret.l C ;49 D8
2017 ret.l M ;49 F8
2018 ret.l NC ;49 D0
2019 ret.l NZ ;49 C0
2020 ret.l P ;49 F0
2021 ret.l PE ;49 E8
2022 ret.l PO ;49 E0
2023 ret.l Z ;49 C8
2024 ;***********************************************************
2025 ; return from interrupt
2026 reti.l ;49 ED 4D
2027 ;***********************************************************
2028 ; return from non-maskable interrupt
2029 retn.l ;49 ED 45
2030 ;***********************************************************
2031 ; rotate left through carry
2032 rl.l a,(hl) ;49 CB 16
2033 rl.l a,offset(ix) ;49 DD CB 55 16
2034 rl.l a,offset(iy) ;49 FD CB 55 16
2035 ;***********************************************************
2036 ; rotate left circular
2037 rlc.l a,(hl) ;49 CB 06
2038 rlc.l a,offset(ix) ;49 DD CB 55 06
2039 rlc.l a,offset(iy) ;49 FD CB 55 06
2040 ;***********************************************************
2041 ; rotate right through carry
2042 rr.l a,(hl) ;49 CB 1E
2043 rr.l a,offset(ix) ;49 DD CB 55 1E
2044 rr.l a,offset(iy) ;49 FD CB 55 1E
2045 ;***********************************************************
2046 ; rotate right circular
2047 rrc.l a,(hl) ;49 CB 0E
2048 rrc.l a,offset(ix) ;49 DD CB 55 0E
2049 rrc.l a,offset(iy) ;49 FD CB 55 0E
2050 ;***********************************************************
2051 ; restart location
2052 rst.l 0x00 ;49 C7
2053 rst.l 0x08 ;49 CF
2054 rst.l 0x10 ;49 D7
2055 rst.l 0x18 ;49 DF
2056 rst.l 0x20 ;49 E7
2057 rst.l 0x28 ;49 EF
2058 rst.l 0x30 ;49 F7
2059 rst.l 0x38 ;49 FF
2060 ;***********************************************************
2061 ; subtract with carry to 'a'
2062 sbc.l a,(hl) ;49 9E
2063 sbc.l a,offset(ix) ;49 DD 9E 55
2064 sbc.l a,offset(iy) ;49 FD 9E 55
2065 ;***********************************************************
2066 ; add with carry register pair to 'hl'
2067 sbc.l hl,bc ;49 ED 42
2068 sbc.l hl,de ;49 ED 52
2069 sbc.l hl,hl ;49 ED 62
2070 sbc.l hl,sp ;49 ED 72
2071 ;***********************************************************
2072 ; set bit of location or register
2073 set.l 0,(hl) ;49 CB C6
2074 set.l 0,offset(ix) ;49 DD CB 55 C6
2075 set.l 0,offset(iy) ;49 FD CB 55 C6
2076 set.l 1,(hl) ;49 CB CE
2077 set.l 1,offset(ix) ;49 DD CB 55 CE
2078 set.l 1,offset(iy) ;49 FD CB 55 CE
2079 set.l 2,(hl) ;49 CB D6
2080 set.l 2,offset(ix) ;49 DD CB 55 D6
2081 set.l 2,offset(iy) ;49 FD CB 55 D6
2082 set.l 3,(hl) ;49 CB DE
2083 set.l 3,offset(ix) ;49 DD CB 55 DE
2084 set.l 3,offset(iy) ;49 FD CB 55 DE
2085 set.l 4,(hl) ;49 CB E6
2086 set.l 4,offset(ix) ;49 DD CB 55 E6
2087 set.l 4,offset(iy) ;49 FD CB 55 E6
2088 set.l 5,(hl) ;49 CB EE
2089 set.l 5,offset(ix) ;49 DD CB 55 EE
2090 set.l 5,offset(iy) ;49 FD CB 55 EE
2091 set.l 6,(hl) ;49 CB F6
2092 set.l 6,offset(ix) ;49 DD CB 55 F6
2093 set.l 6,offset(iy) ;49 FD CB 55 F6
2094 set.l 7,(hl) ;49 CB FE
2095 set.l 7,offset(ix) ;49 DD CB 55 FE
2096 set.l 7,offset(iy) ;49 FD CB 55 FE
2097 ;***********************************************************
2098 ; shift operand left arithmetic
2099 sla.l a,(hl) ;49 CB 26
2100 sla.l a,offset(ix) ;49 DD CB 55 26
2101 sla.l a,offset(iy) ;49 FD CB 55 26
2102 ;***********************************************************
2103 ; shift operand right arithmetic
2104 sra.l a,(hl) ;49 CB 2E
2105 sra.l a,offset(ix) ;49 DD CB 55 2E
2106 sra.l a,offset(iy) ;49 FD CB 55 2E
2107 ;***********************************************************
2108 ; shift operand right logical
2109 srl.l a,(hl) ;49 CB 3E
2110 srl.l a,offset(ix) ;49 DD CB 55 3E
2111 srl.l a,offset(iy) ;49 FD CB 55 3E
2112 ;***********************************************************
2113 ; subtract operand from 'a'
2114 sub.l a,(hl) ;49 96
2115 sub.l a,offset(ix) ;49 DD 96 55
2116 sub.l a,offset(iy) ;49 FD 96 55
2117 ;***********************************************************
2118 ; non-destructive'and' with accumulator and specified operand
2119 tst.l (hl) ;49 ED 34
2120 ;***********************************************************
2121 ; logical 'xor' operand with 'a'
2122 xor.l a,(hl) ;49 AE
2123 xor.l a,offset(ix) ;49 DD AE 55
2124 xor.l a,offset(iy) ;49 FD AE 55
2125 ;***********************************************************