1 .title Test Module for the Zilog eZ80 processor
\r
8 .ascii /Hello, world/
\r
11 .define var1, "varx + 10"
\r
16 .define _bit7, "varx + 7"
\r
20 adc.s a,(hl) ; 52 8E
\r
25 adc a,(ix+var2) ; DD 8E 20
\r
26 adc.s a,(ix+19) ; 52 DD 8E 19
\r
27 adc a,(iy+var2) ; FD 8E 20
\r
28 adc.s a,(iy+19) ; 52 FD 8E 19
\r
38 ;These are added for backward compatibility with
\r
39 ;the original Z80 assembler which optionally
\r
40 ;does not require the 'A' register to be named.
\r
48 adc (ix+var2) ; DD 8E 20
\r
49 adc.s (ix+19) ; 52 DD 8E 19
\r
50 adc (iy+var2) ; FD 8E 20
\r
51 adc.s (iy+19) ; 52 FD 8E 19
\r
61 ;End of Z80 compatibility section
\r
66 adc.s hl,bc ; 52 ED 4A
\r
67 adc.s hl,de ; 52 ED 5A
\r
68 adc.s hl,hl ; 52 ED 6A
\r
70 adc.s hl,sp ; 52 ED 7A
\r
73 add.s a,(hl) ; 52 86
\r
78 add a,(ix+var2) ; DD 86 20
\r
79 add.s a,(ix+19) ; 52 DD 86 19
\r
80 add a,(iy+var2) ; FD 86 20
\r
81 add.s a,(iy+19) ; 52 FD 86 19
\r
101 add.s ix,bc ; 52 DD 09
\r
102 add.s ix,de ; 52 DD 19
\r
103 add.s ix,ix ; 52 DD 29
\r
107 add.s iy,bc ; 52 FD 09
\r
108 add.s iy,de ; 52 FD 19
\r
109 add.s iy,iy ; 52 FD 29
\r
111 add.s ix,sp ; 52 DD 39
\r
113 add.s iy,sp ; 52 FD 39
\r
116 and.s a,(hl) ; 52 A6
\r
121 and a,(ix+var2) ; DD A6 20
\r
122 and.s a,(ix+19) ; 52 DD A6 19
\r
123 and a,(iy+var2) ; FD A6 20
\r
124 and.s a,(iy+19) ; 52 FD A6 19
\r
141 bit _bit7,(hl) ; CBu7E
\r
142 bit.s 0,(hl) ; 52 CB 46
\r
143 bit.s 1,(hl) ; 52 CB 4E
\r
144 bit.s 2,(hl) ; 52 CB 56
\r
145 bit.s 3,(hl) ; 52 CB 5E
\r
146 bit.s 4,(hl) ; 52 CB 66
\r
147 bit.s 5,(hl) ; 52 CB 6E
\r
148 bit.s 6,(hl) ; 52 CB 76
\r
149 bit.s _bit7,(hl) ; 52 CBu7E
\r
150 bit 0,(ix+var1) ; DD CBr10 46
\r
151 bit 1,(ix+var2) ; DD CB 20 4E
\r
152 bit 2,(ix+19) ; DD CB 19 56
\r
153 bit 3,(ix+var1) ; DD CBr10 5E
\r
154 bit 4,(ix+var2) ; DD CB 20 66
\r
155 bit 5,(ix+19) ; DD CB 19 6E
\r
156 bit 6,(ix+var1) ; DD CBr10 76
\r
157 bit _bit7,(ix+var2) ; DD CB 20u7E
\r
158 bit.s 0,(ix+19) ; 52 DD CB 19 46
\r
159 bit.s 1,(ix+var1) ; 52 DD CBr10 4E
\r
160 bit.s 2,(ix+var2) ; 52 DD CB 20 56
\r
161 bit.s 3,(ix+19) ; 52 DD CB 19 5E
\r
162 bit.s 4,(ix+var1) ; 52 DD CBr10 66
\r
163 bit.s 5,(ix+var2) ; 52 DD CB 20 6E
\r
164 bit.s 6,(ix+19) ; 52 DD CB 19 76
\r
165 bit.s _bit7,(ix+var1) ; 52 DD CBr10u7E
\r
166 bit 0,(iy+var1) ; FD CBr10 46
\r
167 bit 1,(iy+var2) ; FD CB 20 4E
\r
168 bit 2,(iy+19) ; FD CB 19 56
\r
169 bit 3,(iy+var1) ; FD CBr10 5E
\r
170 bit 4,(iy+var2) ; FD CB 20 66
\r
171 bit 5,(iy+19) ; FD CB 19 6E
\r
172 bit 6,(iy+var1) ; FD CBr10 76
\r
173 bit _bit7,(iy+var2) ; FD CB 20u7E
\r
174 bit.s 0,(iy+19) ; 52 FD CB 19 46
\r
175 bit.s 1,(iy+var1) ; 52 FD CBr10 4E
\r
176 bit.s 2,(iy+var2) ; 52 FD CB 20 56
\r
177 bit.s 3,(iy+19) ; 52 FD CB 19 5E
\r
178 bit.s 4,(iy+var1) ; 52 FD CBr10 66
\r
179 bit.s 5,(iy+var2) ; 52 FD CB 20 6E
\r
180 bit.s 6,(iy+19) ; 52 FD CB 19 76
\r
181 bit.s _bit7,(iy+var1) ; 52 FD CBr10u7E
\r
231 bit _bit7,a ; CBu7F
\r
232 bit _bit7,b ; CBu78
\r
233 bit _bit7,c ; CBu79
\r
234 bit _bit7,d ; CBu7A
\r
235 bit _bit7,e ; CBu7B
\r
236 bit _bit7,h ; CBu7C
\r
237 bit _bit7,l ; CBu7D
\r
239 call nz,var1 ; C4r10s00R00
\r
240 call.il nz,var2 ; 5B C4 20 00 00
\r
241 call z,var1 ; CCr10s00R00
\r
242 call.il z,var2 ; 5B CC 20 00 00
\r
243 call nc,var1 ; D4r10s00R00
\r
244 call.il nc,var2 ; 5B D4 20 00 00
\r
245 call c,var1 ; DCr10s00R00
\r
246 call.il c,var2 ; 5B DC 20 00 00
\r
247 call po,var1 ; E4r10s00R00
\r
248 call.il po,var2 ; 5B E4 20 00 00
\r
249 call pe,var1 ; ECr10s00R00
\r
250 call.il pe,var2 ; 5B EC 20 00 00
\r
251 call p,var1 ; F4r10s00R00
\r
252 call.il p,var2 ; 5B F4 20 00 00
\r
253 call m,var1 ; FCr10s00R00
\r
254 call.il m,var2 ; 5B FC 20 00 00
\r
255 call var1 ; CDr10s00R00
\r
256 call.il var2 ; 5B CD 20 00 00
\r
261 cp.s a,(hl) ; 52 BE
\r
266 cp a,(ix+var2) ; DD BE 20
\r
267 cp.s a,(ix+19) ; 52 DD BE 19
\r
268 cp a,(iy+var2) ; FD BE 20
\r
269 cp.s a,(iy+19) ; 52 FD BE 19
\r
302 dec.s ix ; 52 DD 2B
\r
304 dec.s iy ; 52 FD 2B
\r
305 dec (ix+var1) ; DD 35r10
\r
306 dec.s (ix+var2) ; 52 DD 35 20
\r
307 dec (iy+var1) ; FD 35r10
\r
308 dec.s (iy+var2) ; 52 FD 35 20
\r
327 djnz jr0adl ; 10 00
\r
335 ex.s (sp),hl ; 52 E3
\r
337 ex.s (sp),ix ; 52 DD E3
\r
339 ex.s (sp),iy ; 52 FD E3
\r
365 in0 a,(19) ; ED 38 19
\r
366 in0 b,(var1) ; ED 00u10
\r
367 in0 c,(var2) ; ED 08 20
\r
368 in0 d,(19) ; ED 10 19
\r
369 in0 e,(var1) ; ED 18u10
\r
370 in0 h,(var2) ; ED 20 20
\r
371 in0 l,(19) ; ED 28 19
\r
380 inc.s ix ; 52 DD 23
\r
382 inc.s iy ; 52 FD 23
\r
383 inc (ix+var2) ; DD 34 20
\r
384 inc.s (ix+19) ; 52 DD 34 19
\r
385 inc (iy+var2) ; FD 34 20
\r
386 inc.s (iy+19) ; 52 FD 34 19
\r
445 jp nz,var2 ; C2 20 00 00
\r
446 jp z,19 ; CA 19 00 00
\r
447 jp nc,var1 ; D2r10s00R00
\r
448 jp c,var2 ; DA 20 00 00
\r
449 jp po,19 ; E2 19 00 00
\r
450 jp pe,var1 ; EAr10s00R00
\r
451 jp p,var2 ; F2 20 00 00
\r
452 jp m,19 ; FA 19 00 00
\r
453 jp.lil nz,19 ; 5B C2 19 00 00
\r
454 jp.lil z,var1 ; 5B CAr10s00R00
\r
455 jp.lil nc,var2 ; 5B D2 20 00 00
\r
456 jp.lil c,19 ; 5B DA 19 00 00
\r
457 jp.lil po,var1 ; 5B E2r10s00R00
\r
458 jp.lil pe,var2 ; 5B EA 20 00 00
\r
459 jp.lil p,19 ; 5B F2 19 00 00
\r
460 jp.lil m,var1 ; 5B FAr10s00R00
\r
464 jp.s (ix) ; 40 DD E9
\r
465 jp.l (ix) ; 5B DD E9
\r
467 jp.s (iy) ; 40 FD E9
\r
468 jp.l (iy) ; 5B FD E9
\r
469 jp 19 ; C3 19 00 00
\r
470 jp.lil var2 ; 5B C3 20 00 00
\r
472 jr nz,jr1adl ; 20 08
\r
473 jr z,jr2adl ; 28 06
\r
474 jr nc,jr3adl ; 30 04
\r
475 jr c,jr4adl ; 38 02
\r
478 jr1adl: jr2adl: jr3adl: jr4adl: jr5adl:
\r
481 ld a,(ix+19) ; DD 7E 19
\r
482 ld.s a,(ix+var1) ; 52 DD 7Er10
\r
483 ld a,(iy+19) ; FD 7E 19
\r
484 ld.s a,(iy+var1) ; 52 FD 7Er10
\r
486 ld a,(var2) ; 3A 20 00 00
\r
489 ld.s a,(bc) ; 52 0A
\r
491 ld.s a,(de) ; 52 1A
\r
493 ld.s a,(hl) ; 52 7E
\r
496 ld.s (hl),ix ; 52 ED 3F
\r
498 ld.s (hl),iy ; 52 ED 3E
\r
499 ld (hl),var1 ; 36r10
\r
500 ld.s (hl),var2 ; 52 36 20
\r
508 ld.s (hl),a ; 52 77
\r
509 ld.s (hl),b ; 52 70
\r
510 ld.s (hl),c ; 52 71
\r
511 ld.s (hl),d ; 52 72
\r
512 ld.s (hl),e ; 52 73
\r
513 ld.s (hl),h ; 52 74
\r
514 ld.s (hl),l ; 52 75
\r
516 ld.s (hl),bc ; 52 ED 0F
\r
518 ld.s (hl),de ; 52 ED 1F
\r
520 ld.s (hl),hl ; 52 ED 2F
\r
531 ld ixh,var2 ; DD 26 20
\r
532 ld ixl,19 ; DD 2E 19
\r
533 ld iyh,var1 ; FD 26r10
\r
534 ld iyl,var2 ; FD 2E 20
\r
556 ld.s ix,(hl) ; 52 ED 37
\r
558 ld.s iy,(hl) ; 52 ED 31
\r
559 ld ix,(ix+var2) ; DD 37 20
\r
560 ld.s ix,(ix+19) ; 52 DD 37 19
\r
561 ld iy,(ix+var2) ; DD 31 20
\r
562 ld.s iy,(ix+19) ; 52 DD 31 19
\r
563 ld ix,(iy+var2) ; FD 31 20
\r
564 ld.s ix,(iy+19) ; 52 FD 31 19
\r
565 ld iy,(iy+var2) ; FD 37 20
\r
566 ld.s iy,(iy+19) ; 52 FD 37 19
\r
567 ld ix,19 ; DD 21 19 00 00
\r
568 ld iy,var1 ; FD 21r10s00R00
\r
569 ld ix,(var2) ; DD 2A 20 00 00
\r
570 ld iy,(19) ; FD 2A 19 00 00
\r
571 ld (ix+19),ix ; DD 3F 19
\r
572 ld.s (ix+var1),ix ; 52 DD 3Fr10
\r
573 ld (ix+19),iy ; DD 3E 19
\r
574 ld.s (ix+var1),iy ; 52 DD 3Er10
\r
575 ld (iy+19),ix ; FD 3E 19
\r
576 ld.s (iy+var1),ix ; 52 FD 3Er10
\r
577 ld (iy+19),iy ; FD 3F 19
\r
578 ld.s (iy+var1),iy ; 52 FD 3Fr10
\r
579 ld (ix+19),#19 ; DD 36 19 19
\r
580 ld.s (ix+var1),var1 ; 52 DD 36r10r10
\r
581 ld (iy+19),#19 ; FD 36 19 19
\r
582 ld.s (iy+var1),var1 ; 52 FD 36r10r10
\r
583 ld (ix+19),a ; DD 77 19
\r
584 ld (ix+var1),b ; DD 70r10
\r
585 ld (ix+var2),c ; DD 71 20
\r
586 ld (ix+19),d ; DD 72 19
\r
587 ld (ix+var1),e ; DD 73r10
\r
588 ld (ix+var2),h ; DD 74 20
\r
589 ld (ix+19),l ; DD 75 19
\r
590 ld.s (ix+var1),a ; 52 DD 77r10
\r
591 ld.s (ix+var2),b ; 52 DD 70 20
\r
592 ld.s (ix+19),c ; 52 DD 71 19
\r
593 ld.s (ix+var1),d ; 52 DD 72r10
\r
594 ld.s (ix+var2),e ; 52 DD 73 20
\r
595 ld.s (ix+19),h ; 52 DD 74 19
\r
596 ld.s (ix+var1),l ; 52 DD 75r10
\r
597 ld (iy+19),a ; FD 77 19
\r
598 ld (iy+var1),b ; FD 70r10
\r
599 ld (iy+var2),c ; FD 71 20
\r
600 ld (iy+19),d ; FD 72 19
\r
601 ld (iy+var1),e ; FD 73r10
\r
602 ld (iy+var2),h ; FD 74 20
\r
603 ld (iy+19),l ; FD 75 19
\r
604 ld.s (iy+var1),a ; 52 FD 77r10
\r
605 ld.s (iy+var2),b ; 52 FD 70 20
\r
606 ld.s (iy+19),c ; 52 FD 71 19
\r
607 ld.s (iy+var1),d ; 52 FD 72r10
\r
608 ld.s (iy+var2),e ; 52 FD 73 20
\r
609 ld.s (iy+19),h ; 52 FD 74 19
\r
610 ld.s (iy+var1),l ; 52 FD 75r10
\r
611 ld (ix+19),bc ; DD 0F 19
\r
612 ld.s (ix+var1),bc ; 52 DD 0Fr10
\r
613 ld (ix+19),de ; DD 1F 19
\r
614 ld.s (ix+var1),de ; 52 DD 1Fr10
\r
615 ld (ix+19),hl ; DD 2F 19
\r
616 ld.s (ix+var1),hl ; 52 DD 2Fr10
\r
617 ld (iy+19),bc ; FD 0F 19
\r
618 ld.s (iy+var1),bc ; 52 FD 0Fr10
\r
619 ld (iy+19),de ; FD 1F 19
\r
620 ld.s (iy+var1),de ; 52 FD 1Fr10
\r
621 ld (iy+19),hl ; FD 2F 19
\r
622 ld.s (iy+var1),hl ; 52 FD 2Fr10
\r
624 ld (var2),a ; 32 20 00 00
\r
625 ld (19),ix ; DD 22 19 00 00
\r
626 ld (var1),iy ; FD 22r10s00R00
\r
627 ld (var2),bc ; ED 43 20 00 00
\r
628 ld (19),de ; ED 53 19 00 00
\r
629 ld (var1),hl ; 22r10s00R00
\r
630 ld (var2),sp ; ED 73 20 00 00
\r
638 ld.s b,(hl) ; 52 46
\r
639 ld.s c,(hl) ; 52 4E
\r
640 ld.s d,(hl) ; 52 56
\r
641 ld.s e,(hl) ; 52 5E
\r
642 ld.s h,(hl) ; 52 66
\r
643 ld.s l,(hl) ; 52 6E
\r
664 ld b,(ix+var2) ; DD 46 20
\r
665 ld c,(ix+19) ; DD 4E 19
\r
666 ld d,(ix+var1) ; DD 56r10
\r
667 ld e,(ix+var2) ; DD 5E 20
\r
668 ld h,(ix+19) ; DD 66 19
\r
669 ld l,(ix+var1) ; DD 6Er10
\r
670 ld.s b,(ix+var2) ; 52 DD 46 20
\r
671 ld.s c,(ix+19) ; 52 DD 4E 19
\r
672 ld.s d,(ix+var1) ; 52 DD 56r10
\r
673 ld.s e,(ix+var2) ; 52 DD 5E 20
\r
674 ld.s h,(ix+19) ; 52 DD 66 19
\r
675 ld.s l,(ix+var1) ; 52 DD 6Er10
\r
676 ld b,(iy+var2) ; FD 46 20
\r
677 ld c,(iy+19) ; FD 4E 19
\r
678 ld d,(iy+var1) ; FD 56r10
\r
679 ld e,(iy+var2) ; FD 5E 20
\r
680 ld h,(iy+19) ; FD 66 19
\r
681 ld l,(iy+var1) ; FD 6Er10
\r
682 ld.s b,(iy+var2) ; 52 FD 46 20
\r
683 ld.s c,(iy+19) ; 52 FD 4E 19
\r
684 ld.s d,(iy+var1) ; 52 FD 56r10
\r
685 ld.s e,(iy+var2) ; 52 FD 5E 20
\r
686 ld.s h,(iy+19) ; 52 FD 66 19
\r
688 ;intentional error here
\r
690 ld.s l,(iy+var1) ; 52 FD 6Er10
\r
748 ld.s bc,(hl) ; 52 ED 07
\r
750 ld.s de,(hl) ; 52 ED 17
\r
752 ld.s hl,(hl) ; 52 ED 27
\r
753 ld bc,(ix+var1) ; DD 07r10
\r
754 ld.s bc,(ix+var2) ; 52 DD 07 20
\r
755 ld de,(ix+var1) ; DD 17r10
\r
756 ld.s de,(ix+var2) ; 52 DD 17 20
\r
757 ld hl,(ix+var1) ; DD 27r10
\r
758 ld.s hl,(ix+var2) ; 52 DD 27 20
\r
759 ld bc,(iy+var1) ; FD 07r10
\r
760 ld.s bc,(iy+var2) ; 52 FD 07 20
\r
761 ld de,(iy+var1) ; FD 17r10
\r
762 ld.s de,(iy+var2) ; 52 FD 17 20
\r
763 ld hl,(iy+var1) ; FD 27r10
\r
764 ld.s hl,(iy+var2) ; 52 FD 27 20
\r
765 ld bc,var1 ; 01r10s00R00
\r
766 ld de,var2 ; 11 20 00 00
\r
767 ld hl,19 ; 21 19 00 00
\r
768 ld bc,(19) ; ED 4B 19 00 00
\r
769 ld de,(var1) ; ED 5Br10s00R00
\r
770 ld hl,(var1) ; 2Ar10s00R00
\r
772 ld.s (bc),a ; 52 02
\r
774 ld.s (de),a ; 52 12
\r
778 ld.s sp,ix ; 52 DD F9
\r
780 ld.s sp,iy ; 52 FD F9
\r
781 ld sp,var2 ; 31 20 00 00
\r
782 ld sp,(19) ; ED 7B 19 00 00
\r
791 lea ix,ix+19 ; ED 32 19
\r
792 lea.s ix,ix+var1 ; 52 ED 32r10
\r
793 lea iy,ix+19 ; ED 55 19
\r
794 lea.s iy,ix+var1 ; 52 ED 55r10
\r
795 lea ix,iy+19 ; ED 54 19
\r
796 lea.s ix,iy+var1 ; 52 ED 54r10
\r
797 lea iy,iy+19 ; ED 33 19
\r
798 lea.s iy,iy+var1 ; 52 ED 33r10
\r
799 lea bc,ix+19 ; ED 02 19
\r
800 lea de,ix+var1 ; ED 12r10
\r
801 lea hl,ix+var2 ; ED 22 20
\r
802 lea.s bc,ix+19 ; 52 ED 02 19
\r
803 lea.s de,ix+var1 ; 52 ED 12r10
\r
804 lea.s hl,ix+var2 ; 52 ED 22 20
\r
805 lea bc,iy+19 ; ED 03 19
\r
806 lea de,iy+var1 ; ED 13r10
\r
807 lea hl,iy+var2 ; ED 23 20
\r
808 lea.s bc,iy+19 ; 52 ED 03 19
\r
809 lea.s de,iy+var1 ; 52 ED 13r10
\r
810 lea.s hl,iy+var2 ; 52 ED 23 20
\r
816 mlt.s sp ; 52 ED 7C
\r
823 or.s a,(hl) ; 52 B6
\r
828 or a,(ix+19) ; DD B6 19
\r
829 or.s a,(ix+var1) ; 52 DD B6r10
\r
830 or a,(iy+19) ; FD B6 19
\r
831 or.s a,(iy+var1) ; 52 FD B6r10
\r
871 ;Z80 assembler variant section
\r
881 ;End of Z80 assembler variant section
\r
890 out (var1),a ; D3u10
\r
892 out0 (var2),a ; ED 39 20
\r
893 out0 (19),b ; ED 01 19
\r
894 out0 (var1),c ; ED 09u10
\r
895 out0 (var2),d ; ED 11 20
\r
896 out0 (19),e ; ED 19 19
\r
897 out0 (var1),h ; ED 21u10
\r
898 out0 (var2),l ; ED 29 20
\r
912 pea ix+19 ; ED 65 19
\r
913 pea.s ix+var1 ; 52 ED 65r10
\r
915 pea iy+19 ; ED 66 19
\r
916 pea.s iy+var1 ; 52 ED 66r10
\r
921 pop.s ix ; 52 DD E1
\r
923 pop.s iy ; 52 FD E1
\r
934 push.s ix ; 52 DD E5
\r
936 push.s iy ; 52 FD E5
\r
945 res.s 0,(hl) ; 52 CB 86
\r
947 res.s 1,(hl) ; 52 CB 8E
\r
949 res.s 2,(hl) ; 52 CB 96
\r
951 res.s 3,(hl) ; 52 CB 9E
\r
953 res.s 4,(hl) ; 52 CB A6
\r
955 res.s 5,(hl) ; 52 CB AE
\r
957 res.s 6,(hl) ; 52 CB B6
\r
958 res _bit7,(hl) ; CBuBE
\r
959 res.s _bit7,(hl) ; 52 CBuBE
\r
960 res 0,(ix+19) ; DD CB 19 86
\r
961 res.s 0,(ix+var1) ; 52 DD CBr10 86
\r
962 res 0,(iy+19) ; FD CB 19 86
\r
963 res.s 0,(iy+var1) ; 52 FD CBr10 86
\r
964 res 1,(ix+19) ; DD CB 19 8E
\r
965 res.s 1,(ix+var1) ; 52 DD CBr10 8E
\r
966 res 1,(iy+19) ; FD CB 19 8E
\r
967 res.s 1,(iy+var1) ; 52 FD CBr10 8E
\r
968 res 2,(ix+19) ; DD CB 19 96
\r
969 res.s 2,(ix+var1) ; 52 DD CBr10 96
\r
970 res 2,(iy+19) ; FD CB 19 96
\r
971 res.s 2,(iy+var1) ; 52 FD CBr10 96
\r
972 res 3,(ix+19) ; DD CB 19 9E
\r
973 res.s 3,(ix+var1) ; 52 DD CBr10 9E
\r
974 res 3,(iy+19) ; FD CB 19 9E
\r
975 res.s 3,(iy+var1) ; 52 FD CBr10 9E
\r
976 res 4,(ix+19) ; DD CB 19 A6
\r
977 res.s 4,(ix+var1) ; 52 DD CBr10 A6
\r
978 res 4,(iy+19) ; FD CB 19 A6
\r
979 res.s 4,(iy+var1) ; 52 FD CBr10 A6
\r
980 res 5,(ix+19) ; DD CB 19 AE
\r
981 res.s 5,(ix+var1) ; 52 DD CBr10 AE
\r
982 res 5,(iy+19) ; FD CB 19 AE
\r
983 res.s 5,(iy+var1) ; 52 FD CBr10 AE
\r
984 res 6,(ix+19) ; DD CB 19 B6
\r
985 res.s 6,(ix+var1) ; 52 DD CBr10 B6
\r
986 res 6,(iy+19) ; FD CB 19 B6
\r
987 res.s 6,(iy+var1) ; 52 FD CBr10 B6
\r
988 res _bit7,(ix+19) ; DD CB 19uBE
\r
989 res.s _bit7,(ix+var1) ; 52 DD CBr10uBE
\r
990 res _bit7,(iy+19) ; FD CB 19uBE
\r
991 res.s _bit7,(iy+var1) ; 52 FD CBr10uBE
\r
1041 res _bit7,a ; CBuBF
\r
1042 res _bit7,b ; CBuB8
\r
1043 res _bit7,c ; CBuB9
\r
1044 res _bit7,d ; CBuBA
\r
1045 res _bit7,e ; CBuBB
\r
1046 res _bit7,h ; CBuBC
\r
1047 res _bit7,l ; CBuBD
\r
1075 rl.s (hl) ; 52 CB 16
\r
1076 rl (ix+var2) ; DD CB 20 16
\r
1077 rl.s (ix+19) ; 52 DD CB 19 16
\r
1078 rl (iy+var2) ; FD CB 20 16
\r
1079 rl.s (iy+19) ; 52 FD CB 19 16
\r
1091 rlc.s (hl) ; 52 CB 06
\r
1092 rlc (ix+var2) ; DD CB 20 06
\r
1093 rlc.s (ix+19) ; 52 DD CB 19 06
\r
1094 rlc (iy+var2) ; FD CB 20 06
\r
1095 rlc.s (iy+19) ; 52 FD CB 19 06
\r
1109 rr.s (hl) ; 52 CB 1E
\r
1110 rr (ix+19) ; DD CB 19 1E
\r
1111 rr.s (ix+var1) ; 52 DD CBr10 1E
\r
1112 rr (iy+19) ; FD CB 19 1E
\r
1113 rr.s (iy+var1) ; 52 FD CBr10 1E
\r
1125 rrc.s (hl) ; 52 CB 0E
\r
1126 rrc (ix+19) ; DD CB 19 0E
\r
1127 rrc.s (ix+var1) ; 52 DD CBr10 0E
\r
1128 rrc (iy+19) ; FD CB 19 0E
\r
1129 rrc.s (iy+var1) ; 52 FD CBr10 0E
\r
1162 sbc.s a,(hl) ; 52 9E
\r
1167 sbc a,(ix+19) ; DD 9E 19
\r
1168 sbc.s a,(ix+var1) ; 52 DD 9Er10
\r
1169 sbc a,(iy+19) ; FD 9E 19
\r
1170 sbc.s a,(iy+var1) ; 52 FD 9Er10
\r
1182 sbc.s hl,bc ; 52 ED 42
\r
1183 sbc.s hl,de ; 52 ED 52
\r
1184 sbc.s hl,hl ; 52 ED 62
\r
1186 sbc.s hl,sp ; 52 ED 72
\r
1190 set 0,(hl) ; CB C6
\r
1191 set.s 0,(hl) ; 52 CB C6
\r
1192 set 0,(ix+19) ; DD CB 19 C6
\r
1193 set.s 0,(ix+var1) ; 52 DD CBr10 C6
\r
1194 set 0,(iy+19) ; FD CB 19 C6
\r
1195 set.s 0,(iy+var1) ; 52 FD CBr10 C6
\r
1196 set 1,(hl) ; CB CE
\r
1197 set.s 1,(hl) ; 52 CB CE
\r
1198 set 1,(ix+19) ; DD CB 19 CE
\r
1199 set.s 1,(ix+var1) ; 52 DD CBr10 CE
\r
1200 set 1,(iy+19) ; FD CB 19 CE
\r
1201 set.s 1,(iy+var1) ; 52 FD CBr10 CE
\r
1202 set 2,(hl) ; CB D6
\r
1203 set.s 2,(hl) ; 52 CB D6
\r
1204 set 2,(ix+19) ; DD CB 19 D6
\r
1205 set.s 2,(ix+var1) ; 52 DD CBr10 D6
\r
1206 set 2,(iy+19) ; FD CB 19 D6
\r
1207 set.s 2,(iy+var1) ; 52 FD CBr10 D6
\r
1208 set 3,(hl) ; CB DE
\r
1209 set.s 3,(hl) ; 52 CB DE
\r
1210 set 3,(ix+19) ; DD CB 19 DE
\r
1211 set.s 3,(ix+var1) ; 52 DD CBr10 DE
\r
1212 set 3,(iy+19) ; FD CB 19 DE
\r
1213 set.s 3,(iy+var1) ; 52 FD CBr10 DE
\r
1214 set 4,(hl) ; CB E6
\r
1215 set.s 4,(hl) ; 52 CB E6
\r
1216 set 4,(ix+19) ; DD CB 19 E6
\r
1217 set.s 4,(ix+var1) ; 52 DD CBr10 E6
\r
1218 set 4,(iy+19) ; FD CB 19 E6
\r
1219 set.s 4,(iy+var1) ; 52 FD CBr10 E6
\r
1220 set 5,(hl) ; CB EE
\r
1221 set.s 5,(hl) ; 52 CB EE
\r
1222 set 5,(ix+19) ; DD CB 19 EE
\r
1223 set.s 5,(ix+var1) ; 52 DD CBr10 EE
\r
1224 set 5,(iy+19) ; FD CB 19 EE
\r
1225 set.s 5,(iy+var1) ; 52 FD CBr10 EE
\r
1226 set 6,(hl) ; CB F6
\r
1227 set.s 6,(hl) ; 52 CB F6
\r
1228 set 6,(ix+19) ; DD CB 19 F6
\r
1229 set.s 6,(ix+var1) ; 52 DD CBr10 F6
\r
1230 set 6,(iy+19) ; FD CB 19 F6
\r
1231 set.s 6,(iy+var1) ; 52 FD CBr10 F6
\r
1232 set _bit7,(hl) ; CBuFE
\r
1233 set.s _bit7,(hl) ; 52 CBuFE
\r
1234 set _bit7,(ix+19) ; DD CB 19uFE
\r
1235 set.s _bit7,(ix+var1) ; 52 DD CBr10uFE
\r
1236 set _bit7,(iy+19) ; FD CB 19uFE
\r
1237 set.s _bit7,(iy+var1) ; 52 FD CBr10uFE
\r
1287 set _bit7,a ; CBuFF
\r
1288 set _bit7,b ; CBuF8
\r
1289 set _bit7,c ; CBuF9
\r
1290 set _bit7,d ; CBuFA
\r
1291 set _bit7,e ; CBuFB
\r
1292 set _bit7,h ; CBuFC
\r
1293 set _bit7,l ; CBuFD
\r
1296 sla.s (hl) ; 52 CB 26
\r
1297 sla (ix+var2) ; DD CB 20 26
\r
1298 sla.s (ix+19) ; 52 DD CB 19 26
\r
1299 sla (iy+var2) ; FD CB 20 26
\r
1300 sla.s (iy+19) ; 52 FD CB 19 26
\r
1312 sra.s (hl) ; 52 CB 2E
\r
1313 sra (ix+var2) ; DD CB 20 2E
\r
1314 sra.s (ix+19) ; 52 DD CB 19 2E
\r
1315 sra (iy+var2) ; FD CB 20 2E
\r
1316 sra.s (iy+19) ; 52 FD CB 19 2E
\r
1326 srl.s (hl) ; 52 CB 3E
\r
1327 srl (ix+var1) ; DD CBr10 3E
\r
1328 srl.s (ix+var2) ; 52 DD CB 20 3E
\r
1329 srl (iy+var1) ; FD CBr10 3E
\r
1330 srl.s (iy+var2) ; 52 FD CB 20 3E
\r
1342 sub.s a,(hl) ; 52 96
\r
1347 sub a,(ix+var2) ; DD 96 20
\r
1348 sub.s a,(ix+19) ; 52 DD 96 19
\r
1349 sub a,(iy+var2) ; FD 96 20
\r
1350 sub.s a,(iy+19) ; 52 FD 96 19
\r
1351 sub a,var2 ; D6 20
\r
1359 tst a,(hl) ; ED 34
\r
1361 tst.s a,(hl) ; 52 ED 34
\r
1363 ; The following line has errata in
\r
1364 ; manual codes (49,ed,73), the ones
\r
1365 ; listed here are correct
\r
1367 tst a,19 ; ED 64 19
\r
1376 tstio var2 ; ED 74 20
\r
1379 xor.s a,(hl) ; 52 AE
\r
1384 xor a,(ix+var1) ; DD AEr10
\r
1385 xor.s a,(ix+var2) ; 52 DD AE 20
\r
1386 xor a,(iy+var1) ; FD AEr10
\r
1387 xor.s a,(iy+var2) ; 52 FD AE 20
\r
1388 xor a,var1 ; EEr10
\r
1402 .ascii /Hello, world/
\r
1405 .define var1, "varx + 10"
\r
1410 adc.l a,(hl) ; 49 8E
\r
1415 adc a,(ix+var2) ; DD 8E 20
\r
1416 adc.l a,(ix+var1) ; 49 DD 8Er10
\r
1417 adc a,(iy+var2) ; FD 8E 20
\r
1418 adc.l a,(iy+var1) ; 49 FD 8Er10
\r
1419 adc a,var2 ; CE 20
\r
1428 ;These are added for backward compatibility with
\r
1429 ;the original Z80 assembler which optionally
\r
1430 ;does not require the 'A' register to be named.
\r
1433 adc.l (hl) ; 49 8E
\r
1438 adc (ix+var2) ; DD 8E 20
\r
1439 adc.l (ix+var1) ; 49 DD 8Er10
\r
1440 adc (iy+var2) ; FD 8E 20
\r
1441 adc.l (iy+var1) ; 49 FD 8Er10
\r
1451 ;End of Z80 compatibility section
\r
1456 adc.l hl,bc ; 49 ED 4A
\r
1457 adc.l hl,de ; 49 ED 5A
\r
1458 adc.l hl,hl ; 49 ED 6A
\r
1460 adc.l hl,sp ; 49 ED 7A
\r
1463 add.l a,(hl) ; 49 86
\r
1468 add a,(ix+var2) ; DD 86 20
\r
1469 add.l a,(ix+var1) ; 49 DD 86r10
\r
1470 add a,(iy+var2) ; FD 86 20
\r
1471 add.l a,(iy+var1) ; 49 FD 86r10
\r
1472 add a,var2 ; C6 20
\r
1483 add.l hl,bc ; 49 09
\r
1484 add.l hl,de ; 49 19
\r
1485 add.l hl,hl ; 49 29
\r
1487 add.l hl,sp ; 49 39
\r
1491 add.l ix,bc ; 49 DD 09
\r
1492 add.l ix,de ; 49 DD 19
\r
1493 add.l ix,ix ; 49 DD 29
\r
1497 add.l iy,bc ; 49 FD 09
\r
1498 add.l iy,de ; 49 FD 19
\r
1499 add.l iy,iy ; 49 FD 29
\r
1501 add.l ix,sp ; 49 DD 39
\r
1503 add.l iy,sp ; 49 FD 39
\r
1506 and.l a,(hl) ; 49 A6
\r
1511 and a,(ix+var2) ; DD A6 20
\r
1512 and.l a,(ix+var1) ; 49 DD A6r10
\r
1513 and a,(iy+var2) ; FD A6 20
\r
1514 and.l a,(iy+var1) ; 49 FD A6r10
\r
1515 and a,var2 ; E6 20
\r
1524 bit 0,(hl) ; CB 46
\r
1525 bit 1,(hl) ; CB 4E
\r
1526 bit 2,(hl) ; CB 56
\r
1527 bit 3,(hl) ; CB 5E
\r
1528 bit 4,(hl) ; CB 66
\r
1529 bit 5,(hl) ; CB 6E
\r
1530 bit 6,(hl) ; CB 76
\r
1531 bit _bit7,(hl) ; CBu7E
\r
1532 bit.l 0,(hl) ; 49 CB 46
\r
1533 bit.l 1,(hl) ; 49 CB 4E
\r
1534 bit.l 2,(hl) ; 49 CB 56
\r
1535 bit.l 3,(hl) ; 49 CB 5E
\r
1536 bit.l 4,(hl) ; 49 CB 66
\r
1537 bit.l 5,(hl) ; 49 CB 6E
\r
1538 bit.l 6,(hl) ; 49 CB 76
\r
1539 bit.l _bit7,(hl) ; 49 CBu7E
\r
1540 bit 0,(ix+var1) ; DD CBr10 46
\r
1541 bit 1,(ix+var2) ; DD CB 20 4E
\r
1542 bit 2,(ix+19) ; DD CB 19 56
\r
1543 bit 3,(ix+var1) ; DD CBr10 5E
\r
1544 bit 4,(ix+var2) ; DD CB 20 66
\r
1545 bit 5,(ix+19) ; DD CB 19 6E
\r
1546 bit 6,(ix+var1) ; DD CBr10 76
\r
1547 bit _bit7,(ix+var2) ; DD CB 20u7E
\r
1548 bit.l 0,(ix+var2) ; 49 DD CB 20 46
\r
1549 bit.l 1,(ix+19) ; 49 DD CB 19 4E
\r
1550 bit.l 2,(ix+var1) ; 49 DD CBr10 56
\r
1551 bit.l 3,(ix+var2) ; 49 DD CB 20 5E
\r
1552 bit.l 4,(ix+19) ; 49 DD CB 19 66
\r
1553 bit.l 5,(ix+var1) ; 49 DD CBr10 6E
\r
1554 bit.l 6,(ix+var2) ; 49 DD CB 20 76
\r
1555 bit.l _bit7,(ix+19) ; 49 DD CB 19u7E
\r
1556 bit 0,(iy+var1) ; FD CBr10 46
\r
1557 bit 1,(iy+var2) ; FD CB 20 4E
\r
1558 bit 2,(iy+19) ; FD CB 19 56
\r
1559 bit 3,(iy+var1) ; FD CBr10 5E
\r
1560 bit 4,(iy+var2) ; FD CB 20 66
\r
1561 bit 5,(iy+19) ; FD CB 19 6E
\r
1562 bit 6,(iy+var1) ; FD CBr10 76
\r
1563 bit _bit7,(iy+var2) ; FD CB 20u7E
\r
1564 bit.l 0,(iy+var2) ; 49 FD CB 20 46
\r
1565 bit.l 1,(iy+19) ; 49 FD CB 19 4E
\r
1566 bit.l 2,(iy+var1) ; 49 FD CBr10 56
\r
1567 bit.l 3,(iy+var2) ; 49 FD CB 20 5E
\r
1568 bit.l 4,(iy+19) ; 49 FD CB 19 66
\r
1569 bit.l 5,(iy+var1) ; 49 FD CBr10 6E
\r
1570 bit.l 6,(iy+var2) ; 49 FD CB 20 76
\r
1571 bit.l _bit7,(iy+19) ; 49 FD CB 19u7E
\r
1621 bit _bit7,a ; CBu7F
\r
1622 bit _bit7,b ; CBu78
\r
1623 bit _bit7,c ; CBu79
\r
1624 bit _bit7,d ; CBu7A
\r
1625 bit _bit7,e ; CBu7B
\r
1626 bit _bit7,h ; CBu7C
\r
1627 bit _bit7,l ; CBu7D
\r
1629 call nz,19 ; C4 19 00
\r
1630 call.is nz,var2 ; 40 C4 20 00
\r
1631 call z,19 ; CC 19 00
\r
1632 call.is z,var2 ; 40 CC 20 00
\r
1633 call nc,19 ; D4 19 00
\r
1634 call.is nc,var2 ; 40 D4 20 00
\r
1635 call c,19 ; DC 19 00
\r
1636 call.is c,var2 ; 40 DC 20 00
\r
1637 call po,19 ; E4 19 00
\r
1638 call.is po,var2 ; 40 E4 20 00
\r
1639 call pe,19 ; EC 19 00
\r
1640 call.is pe,var2 ; 40 EC 20 00
\r
1641 call p,19 ; F4 19 00
\r
1642 call.is p,var2 ; 40 F4 20 00
\r
1643 call m,19 ; FC 19 00
\r
1644 call.is m,var2 ; 40 FC 20 00
\r
1645 call 19 ; CD 19 00
\r
1646 call.is var2 ; 40 CD 20 00
\r
1651 cp.l a,(hl) ; 49 BE
\r
1656 cp a,(ix+var2) ; DD BE 20
\r
1657 cp.l a,(ix+var1) ; 49 DD BEr10
\r
1658 cp a,(iy+var2) ; FD BE 20
\r
1659 cp.l a,(iy+var1) ; 49 FD BEr10
\r
1686 dec.l (hl) ; 49 35
\r
1692 dec.l ix ; 49 DD 2B
\r
1694 dec.l iy ; 49 FD 2B
\r
1695 dec (ix+var1) ; DD 35r10
\r
1696 dec.l (ix+19) ; 49 DD 35 19
\r
1697 dec (iy+var1) ; FD 35r10
\r
1698 dec.l (iy+19) ; 49 FD 35 19
\r
1717 djnz jr0z80 ; 10 00
\r
1725 ex.l (sp),hl ; 49 E3
\r
1726 ex (sp),ix ; DD E3
\r
1727 ex.l (sp),ix ; 49 DD E3
\r
1728 ex (sp),iy ; FD E3
\r
1729 ex.l (sp),iy ; 49 FD E3
\r
1755 in0 a,(19) ; ED 38 19
\r
1756 in0 b,(var1) ; ED 00u10
\r
1757 in0 c,(var2) ; ED 08 20
\r
1758 in0 d,(19) ; ED 10 19
\r
1759 in0 e,(var1) ; ED 18u10
\r
1760 in0 h,(var2) ; ED 20 20
\r
1761 in0 l,(19) ; ED 28 19
\r
1764 inc.l (hl) ; 49 34
\r
1770 inc.l ix ; 49 DD 23
\r
1772 inc.l iy ; 49 FD 23
\r
1773 inc (ix+var2) ; DD 34 20
\r
1774 inc.l (ix+var1) ; 49 DD 34r10
\r
1775 inc (iy+var2) ; FD 34 20
\r
1776 inc.l (iy+var1) ; 49 FD 34r10
\r
1800 ind2r.l ; 49 ED 9C
\r
1806 indmr.l ; 49 ED 9A
\r
1812 indrx.l ; 49 ED CA
\r
1821 ini2r.l ; 49 ED 94
\r
1827 inimr.l ; 49 ED 92
\r
1833 inirx.l ; 49 ED C2
\r
1835 jp nz,19 ; C2 19 00
\r
1836 jp z,var1 ; CA*10n00
\r
1837 jp nc,var2 ; D2 20 00
\r
1838 jp c,19 ; DA 19 00
\r
1839 jp po,var1 ; E2*10n00
\r
1840 jp pe,var2 ; EA 20 00
\r
1841 jp p,19 ; F2 19 00
\r
1842 jp m,var1 ; FA*10n00
\r
1843 jp.sis nz,var1 ; 40 C2*10n00
\r
1844 jp.sis z,var2 ; 40 CA 20 00
\r
1845 jp.sis nc,19 ; 40 D2 19 00
\r
1846 jp.sis c,var1 ; 40 DA*10n00
\r
1847 jp.sis po,var2 ; 40 E2 20 00
\r
1848 jp.sis pe,19 ; 40 EA 19 00
\r
1849 jp.sis p,var1 ; 40 F2*10n00
\r
1850 jp.sis m,var2 ; 40 FA 20 00
\r
1854 jp.s (ix) ; 40 DD E9
\r
1855 jp.l (ix) ; 5B DD E9
\r
1857 jp.s (iy) ; 40 FD E9
\r
1858 jp.l (iy) ; 5B FD E9
\r
1859 jp var2 ; C3 20 00
\r
1860 jp.sis var1 ; 40 C3*10n00
\r
1862 jr nz,jr1z80 ; 20 08
\r
1863 jr z,jr2z80 ; 28 06
\r
1864 jr nc,jr3z80 ; 30 04
\r
1865 jr c,jr4z80 ; 38 02
\r
1868 jr1z80: jr2z80: jr3z80: jr4z80: jr5z80:
\r
1871 ld a,(ix+19) ; DD 7E 19
\r
1872 ld.l a,(ix+var2) ; 49 DD 7E 20
\r
1873 ld a,(iy+19) ; FD 7E 19
\r
1874 ld.l a,(iy+var2) ; 49 FD 7E 20
\r
1876 ld a,(var1) ; 3A*10n00
\r
1879 ld.l a,(bc) ; 49 0A
\r
1881 ld.l a,(de) ; 49 1A
\r
1883 ld.l a,(hl) ; 49 7E
\r
1885 ld (hl),ix ; ED 3F
\r
1886 ld.l (hl),ix ; 49 ED 3F
\r
1887 ld (hl),iy ; ED 3E
\r
1888 ld.l (hl),iy ; 49 ED 3E
\r
1889 ld (hl),var1 ; 36r10
\r
1890 ld.l (hl),19 ; 49 36 19
\r
1898 ld.l (hl),a ; 49 77
\r
1899 ld.l (hl),b ; 49 70
\r
1900 ld.l (hl),c ; 49 71
\r
1901 ld.l (hl),d ; 49 72
\r
1902 ld.l (hl),e ; 49 73
\r
1903 ld.l (hl),h ; 49 74
\r
1904 ld.l (hl),l ; 49 75
\r
1905 ld (hl),bc ; ED 0F
\r
1906 ld.l (hl),bc ; 49 ED 0F
\r
1907 ld (hl),de ; ED 1F
\r
1908 ld.l (hl),de ; 49 ED 1F
\r
1909 ld (hl),hl ; ED 2F
\r
1910 ld.l (hl),hl ; 49 ED 2F
\r
1913 ld ixh,ixh ; DD 64
\r
1914 ld ixh,ixl ; DD 65
\r
1915 ld ixl,ixh ; DD 6C
\r
1916 ld ixl,ixl ; DD 6D
\r
1917 ld iyh,iyh ; FD 64
\r
1918 ld iyh,iyl ; FD 65
\r
1919 ld iyl,iyh ; FD 6C
\r
1920 ld iyl,iyl ; FD 6D
\r
1921 ld ixh,var2 ; DD 26 20
\r
1922 ld ixl,19 ; DD 2E 19
\r
1923 ld iyh,var1 ; FD 26r10
\r
1924 ld iyl,var2 ; FD 2E 20
\r
1945 ld ix,(hl) ; ED 37
\r
1946 ld.l ix,(hl) ; 49 ED 37
\r
1947 ld iy,(hl) ; ED 31
\r
1948 ld.l iy,(hl) ; 49 ED 31
\r
1949 ld ix,(ix+var2) ; DD 37 20
\r
1950 ld.l ix,(ix+var1) ; 49 DD 37r10
\r
1951 ld iy,(ix+var2) ; DD 31 20
\r
1952 ld.l iy,(ix+var1) ; 49 DD 31r10
\r
1953 ld ix,(iy+var2) ; FD 31 20
\r
1954 ld.l ix,(iy+var1) ; 49 FD 31r10
\r
1955 ld iy,(iy+var2) ; FD 37 20
\r
1956 ld.l iy,(iy+var1) ; 49 FD 37r10
\r
1957 ld ix,var2 ; DD 21 20 00
\r
1958 ld iy,19 ; FD 21 19 00
\r
1959 ld ix,(var1) ; DD 2A*10n00
\r
1960 ld iy,(var2) ; FD 2A 20 00
\r
1961 ld (ix+19),ix ; DD 3F 19
\r
1962 ld.l (ix+var2),ix ; 49 DD 3F 20
\r
1963 ld (ix+19),iy ; DD 3E 19
\r
1964 ld.l (ix+var2),iy ; 49 DD 3E 20
\r
1965 ld (iy+19),ix ; FD 3E 19
\r
1966 ld.l (iy+var2),ix ; 49 FD 3E 20
\r
1967 ld (iy+19),iy ; FD 3F 19
\r
1968 ld.l (iy+var2),iy ; 49 FD 3F 20
\r
1969 ld (ix+19),#29 ; DD 36 19 29
\r
1970 ld.l (ix+var2),var2 ; 49 DD 36 20 20
\r
1971 ld (iy+19),#29 ; FD 36 19 29
\r
1972 ld.l (iy+var2),var2 ; 49 FD 36 20 20
\r
1973 ld (ix+19),a ; DD 77 19
\r
1974 ld (ix+var1),b ; DD 70r10
\r
1975 ld (ix+var2),c ; DD 71 20
\r
1976 ld (ix+19),d ; DD 72 19
\r
1977 ld (ix+var1),e ; DD 73r10
\r
1978 ld (ix+var2),h ; DD 74 20
\r
1979 ld (ix+19),l ; DD 75 19
\r
1980 ld.l (ix+var2),a ; 49 DD 77 20
\r
1981 ld.l (ix+19),b ; 49 DD 70 19
\r
1982 ld.l (ix+var1),c ; 49 DD 71r10
\r
1983 ld.l (ix+var2),d ; 49 DD 72 20
\r
1984 ld.l (ix+19),e ; 49 DD 73 19
\r
1985 ld.l (ix+var1),h ; 49 DD 74r10
\r
1986 ld.l (ix+var2),l ; 49 DD 75 20
\r
1987 ld (iy+19),a ; FD 77 19
\r
1988 ld (iy+var1),b ; FD 70r10
\r
1989 ld (iy+var2),c ; FD 71 20
\r
1990 ld (iy+19),d ; FD 72 19
\r
1991 ld (iy+var1),e ; FD 73r10
\r
1992 ld (iy+var2),h ; FD 74 20
\r
1993 ld (iy+19),l ; FD 75 19
\r
1994 ld.l (iy+var2),a ; 49 FD 77 20
\r
1995 ld.l (iy+19),b ; 49 FD 70 19
\r
1996 ld.l (iy+var1),c ; 49 FD 71r10
\r
1997 ld.l (iy+var2),d ; 49 FD 72 20
\r
1998 ld.l (iy+19),e ; 49 FD 73 19
\r
1999 ld.l (iy+var1),h ; 49 FD 74r10
\r
2000 ld.l (iy+var2),l ; 49 FD 75 20
\r
2001 ld (ix+19),bc ; DD 0F 19
\r
2002 ld.l (ix+var2),bc ; 49 DD 0F 20
\r
2003 ld (ix+19),de ; DD 1F 19
\r
2004 ld.l (ix+var2),de ; 49 DD 1F 20
\r
2005 ld (ix+19),hl ; DD 2F 19
\r
2006 ld.l (ix+var2),hl ; 49 DD 2F 20
\r
2007 ld (iy+19),bc ; FD 0F 19
\r
2008 ld.l (iy+var2),bc ; 49 FD 0F 20
\r
2009 ld (iy+19),de ; fD 1F 19
\r
2010 ld.l (iy+var2),de ; 49 FD 1F 20
\r
2011 ld (iy+19),hl ; FD 2F 19
\r
2012 ld.l (iy+var2),hl ; 49 FD 2F 20
\r
2014 ld (var1),a ; 32*10n00
\r
2015 ld (var2),ix ; DD 22 20 00
\r
2016 ld (19),iy ; FD 22 19 00
\r
2017 ld (var1),bc ; ED 43*10n00
\r
2018 ld (var2),de ; ED 53 20 00
\r
2019 ld (19),hl ; 22 19 00
\r
2020 ld (var1),sp ; ED 73*10n00
\r
2028 ld.l b,(hl) ; 49 46
\r
2029 ld.l c,(hl) ; 49 4E
\r
2030 ld.l d,(hl) ; 49 56
\r
2031 ld.l e,(hl) ; 49 5E
\r
2032 ld.l h,(hl) ; 49 66
\r
2033 ld.l l,(hl) ; 49 6E
\r
2054 ld b,(ix+var2) ; DD 46 20
\r
2055 ld c,(ix+19) ; DD 4E 19
\r
2056 ld d,(ix+var1) ; DD 56r10
\r
2057 ld e,(ix+var2) ; DD 5E 20
\r
2058 ld h,(ix+19) ; DD 66 19
\r
2059 ld l,(ix+var1) ; DD 6Er10
\r
2060 ld.l b,(ix+var2) ; 49 DD 46 20
\r
2061 ld.l c,(ix+19) ; 49 DD 4E 19
\r
2062 ld.l d,(ix+var1) ; 49 DD 56r10
\r
2063 ld.l e,(ix+var2) ; 49 DD 5E 20
\r
2064 ld.l h,(ix+19) ; 49 DD 66 19
\r
2065 ld.l l,(ix+var1) ; 49 DD 6Er10
\r
2066 ld b,(iy+var2) ; FD 46 20
\r
2067 ld c,(iy+19) ; FD 4E 19
\r
2068 ld d,(iy+var1) ; FD 56r10
\r
2069 ld e,(iy+var2) ; FD 5E 20
\r
2070 ld h,(iy+19) ; FD 66 19
\r
2071 ld l,(iy+var1) ; FD 6Er10
\r
2073 ;intentional error here
\r
2075 ld.l b,(iy+var2) ; 49 FD 46 20
\r
2076 ld.l c,(iy+19) ; 49 FD 4E 19
\r
2077 ld.l d,(iy+var1) ; 49 FD 56r10
\r
2078 ld.l e,(iy+var2) ; 49 FD 5E 20
\r
2079 ld.l h,(iy+19) ; 49 FD 66 19
\r
2080 ld.l l,(iy+var1) ; 49 FD 6Er10
\r
2137 ld bc,(hl) ; ED 07
\r
2138 ld.l bc,(hl) ; 49 ED 07
\r
2139 ld de,(hl) ; ED 17
\r
2140 ld.l de,(hl) ; 49 ED 17
\r
2141 ld hl,(hl) ; ED 27
\r
2142 ld.l hl,(hl) ; 49 ED 27
\r
2143 ld bc,(ix+var1) ; DD 07r10
\r
2144 ld.l bc,(ix+19) ; 49 DD 07 19
\r
2145 ld de,(ix+var1) ; DD 17r10
\r
2146 ld.l de,(ix+19) ; 49 DD 17 19
\r
2147 ld hl,(ix+var1) ; DD 27r10
\r
2148 ld.l hl,(ix+19) ; 49 DD 27 19
\r
2149 ld bc,(iy+var1) ; FD 07r10
\r
2150 ld.l bc,(iy+19) ; 49 FD 07 19
\r
2151 ld de,(iy+var1) ; FD 17r10
\r
2152 ld.l de,(iy+19) ; 49 FD 17 19
\r
2153 ld hl,(iy+var1) ; FD 27r10
\r
2154 ld.l hl,(iy+19) ; 49 FD 27 19
\r
2155 ld bc,var1 ; 01*10n00
\r
2156 ld de,var2 ; 11 20 00
\r
2157 ld hl,19 ; 21 19 00
\r
2158 ld bc,(var1) ; ED 4B*10n00
\r
2159 ld de,(var2) ; ED 5B 20 00
\r
2160 ld hl,(19) ; 2A 19 00
\r
2162 ld.l (bc),a ; 49 02
\r
2164 ld.l (de),a ; 49 12
\r
2166 ld.l sp,hl ; 49 F9
\r
2168 ld.l sp,ix ; 49 DD F9
\r
2170 ld.l sp,iy ; 49 FD F9
\r
2171 ld sp,var1 ; 31*10n00
\r
2172 ld sp,(var2) ; ED 7B 20 00
\r
2181 lea ix,ix+19 ; ED 32 19
\r
2182 lea.l ix,ix+var2 ; 49 ED 32 20
\r
2183 lea iy,ix+19 ; ED 55 19
\r
2184 lea.l iy,ix+var2 ; 49 ED 55 20
\r
2185 lea ix,iy+19 ; ED 54 19
\r
2186 lea.l ix,iy+var2 ; 49 ED 54 20
\r
2187 lea iy,iy+19 ; ED 33 19
\r
2188 lea.l iy,iy+var2 ; 49 ED 33 20
\r
2189 lea bc,ix+19 ; ED 02 19
\r
2190 lea de,ix+var1 ; ED 12r10
\r
2191 lea hl,ix+var2 ; ED 22 20
\r
2192 lea.l bc,ix+19 ; 49 ED 02 19
\r
2193 lea.l de,ix+var1 ; 49 ED 12r10
\r
2194 lea.l hl,ix+var2 ; 49 ED 22 20
\r
2195 lea bc,iy+19 ; ED 03 19
\r
2196 lea de,iy+var1 ; ED 13r10
\r
2197 lea hl,iy+var2 ; ED 23 20
\r
2198 lea.l bc,iy+19 ; 49 ED 03 19
\r
2199 lea.l de,iy+var1 ; 49 ED 13r10
\r
2200 lea.l hl,iy+var2 ; 49 ED 23 20
\r
2206 mlt.l sp ; 49 ED 7C
\r
2213 or.l a,(hl) ; 49 B6
\r
2218 or a,(ix+19) ; DD B6 19
\r
2219 or.l a,(ix+var2) ; 49 DD B6 20
\r
2220 or a,(iy+19) ; FD B6 19
\r
2221 or.l a,(iy+var2) ; 49 FD B6 20
\r
2232 otd2r.l ; 49 ED BC
\r
2238 otdmr.l ; 49 ED 9B
\r
2244 otdrx.l ; 49 ED CB
\r
2247 oti2r.l ; 49 ED B4
\r
2253 otimr.l ; 49 ED 93
\r
2259 otirx.l ; 49 ED C3
\r
2261 ;Z80 assembler variant section
\r
2271 ;End of Z80 assembler variant section
\r
2273 out (bc),a ; ED 79
\r
2274 out (bc),b ; ED 41
\r
2275 out (bc),c ; ED 49
\r
2276 out (bc),d ; ED 51
\r
2277 out (bc),e ; ED 59
\r
2278 out (bc),h ; ED 61
\r
2279 out (bc),l ; ED 69
\r
2280 out (var1),a ; D3u10
\r
2282 out0 (var2),a ; ED 39 20
\r
2283 out0 (19),b ; ED 01 19
\r
2284 out0 (var1),c ; ED 09u10
\r
2285 out0 (var2),d ; ED 11 20
\r
2286 out0 (19),e ; ED 19 19
\r
2287 out0 (var1),h ; ED 21u10
\r
2288 out0 (var2),l ; ED 29 20
\r
2294 outd2.l ; 49 ED AC
\r
2300 outi2.l ; 49 ED A4
\r
2302 pea ix+19 ; ED 65 19
\r
2303 pea.l ix+var2 ; 49 ED 65 20
\r
2304 pea iy+19 ; ED 66 19
\r
2305 pea.l iy+var2 ; 49 ED 66 20
\r
2310 pop.l ix ; 49 DD E1
\r
2312 pop.l iy ; 49 FD E1
\r
2323 push.l ix ; 49 DD E5
\r
2325 push.l iy ; 49 FD E5
\r
2333 res 0,(hl) ; CB 86
\r
2334 res.l 0,(hl) ; 49 CB 86
\r
2335 res 1,(hl) ; CB 8E
\r
2336 res.l 1,(hl) ; 49 CB 8E
\r
2337 res 2,(hl) ; CB 96
\r
2338 res.l 2,(hl) ; 49 CB 96
\r
2339 res 3,(hl) ; CB 9E
\r
2340 res.l 3,(hl) ; 49 CB 9E
\r
2341 res 4,(hl) ; CB A6
\r
2342 res.l 4,(hl) ; 49 CB A6
\r
2343 res 5,(hl) ; CB AE
\r
2344 res.l 5,(hl) ; 49 CB AE
\r
2345 res 6,(hl) ; CB B6
\r
2346 res.l 6,(hl) ; 49 CB B6
\r
2347 res _bit7,(hl) ; CBuBE
\r
2348 res.l _bit7,(hl) ; 49 CBuBE
\r
2349 res 0,(ix+19) ; DD CB 19 86
\r
2350 res.l 0,(ix+var2) ; 49 DD CB 20 86
\r
2351 res 0,(iy+19) ; FD CB 19 86
\r
2352 res.l 0,(iy+var2) ; 49 FD CB 20 86
\r
2353 res 1,(ix+19) ; DD CB 19 8E
\r
2354 res.l 1,(ix+var2) ; 49 DD CB 20 8E
\r
2355 res 1,(iy+19) ; FD CB 19 8E
\r
2356 res.l 1,(iy+var2) ; 49 FD CB 20 8E
\r
2357 res 2,(ix+19) ; dD CB 19 96
\r
2358 res.l 2,(ix+var2) ; 49 DD CB 20 96
\r
2359 res 2,(iy+19) ; FD CB 19 96
\r
2360 res.l 2,(iy+var2) ; 49 FD CB 20 96
\r
2361 res 3,(ix+19) ; DD CB 19 9E
\r
2362 res.l 3,(ix+var2) ; 49 DD CB 20 9E
\r
2363 res 3,(iy+19) ; fD CB 19 9E
\r
2364 res.l 3,(iy+var2) ; 49 FD CB 20 9E
\r
2365 res 4,(ix+19) ; DD CB 19 A6
\r
2366 res.l 4,(ix+var2) ; 49 DD CB 20 A6
\r
2367 res 4,(iy+19) ; FD CB 19 A6
\r
2368 res.l 4,(iy+var2) ; 49 FD CB 20 A6
\r
2369 res 5,(ix+19) ; DD CB 19 AE
\r
2370 res.l 5,(ix+var2) ; 49 DD CB 20 AE
\r
2371 res 5,(iy+19) ; fD CB 19 AE
\r
2372 res.l 5,(iy+var2) ; 49 FD CB 20 AE
\r
2373 res 6,(ix+19) ; DD CB 19 B6
\r
2374 res.l 6,(ix+var2) ; 49 DD CB 20 B6
\r
2375 res 6,(iy+19) ; FD CB 19 B6
\r
2376 res.l 6,(iy+var2) ; 49 FD CB 20 B6
\r
2377 res _bit7,(ix+19) ; DD CB 19uBE
\r
2378 res.l _bit7,(ix+var2) ; 49 DD CB 20uBE
\r
2379 res _bit7,(iy+19) ; FD CB 19uBE
\r
2380 res.l _bit7,(iy+var2) ; 49 FD CB 20uBE
\r
2430 res _bit7,a ; CBuBF
\r
2431 res _bit7,b ; CBuB8
\r
2432 res _bit7,c ; CBuB9
\r
2433 res _bit7,d ; CBuBA
\r
2434 res _bit7,e ; CBuBB
\r
2435 res _bit7,h ; CBuBC
\r
2436 res _bit7,l ; CBuBD
\r
2464 rl.l (hl) ; 49 CB 16
\r
2465 rl (ix+var2) ; DD CB 20 16
\r
2466 rl.l (ix+var1) ; 49 DD CBr10 16
\r
2467 rl (iy+var2) ; FD CB 20 16
\r
2468 rl.l (iy+var1) ; 49 FD CBr10 16
\r
2480 rlc.l (hl) ; 49 CB 06
\r
2481 rlc (ix+var2) ; DD CB 20 06
\r
2482 rlc.l (ix+var1) ; 49 DD CBr10 06
\r
2483 rlc (iy+var2) ; FD CB 20 06
\r
2484 rlc.l (iy+var1) ; 49 FD CBr10 06
\r
2497 rr.l (hl) ; 49 CB 1E
\r
2498 rr (ix+19) ; DD CB 19 1E
\r
2499 rr.l (ix+var2) ; 49 DD CB 20 1E
\r
2500 rr (iy+19) ; FD CB 19 1E
\r
2501 rr.l (iy+var2) ; 49 FD CB 20 1E
\r
2513 rrc.l (hl) ; 49 CB 0E
\r
2514 rrc (ix+19) ; DD CB 19 0E
\r
2515 rrc.l (ix+var2) ; 49 DD CB 20 0E
\r
2516 rrc (iy+19) ; fD CB 19 0E
\r
2517 rrc.l (iy+var2) ; 49 FD CB 20 0E
\r
2550 sbc.l a,(hl) ; 49 9E
\r
2555 sbc a,(ix+19) ; DD 9E 19
\r
2556 sbc.l a,(ix+var2) ; 49 DD 9E 20
\r
2557 sbc a,(iy+19) ; FD 9E 19
\r
2558 sbc.l a,(iy+var2) ; 49 FD 9E 20
\r
2570 sbc.l hl,bc ; 49 ED 42
\r
2571 sbc.l hl,de ; 49 ED 52
\r
2572 sbc.l hl,hl ; 49 ED 62
\r
2574 sbc.l hl,sp ; 49 ED 72
\r
2578 set 0,(hl) ; cb c6
\r
2579 set.l 0,(hl) ; 49 CB C6
\r
2580 set 0,(ix+19) ; DD CB 19 C6
\r
2581 set.l 0,(ix+var2) ; 49 DD CB 20 C6
\r
2582 set 0,(iy+19) ; FD CB 19 C6
\r
2583 set.l 0,(iy+var2) ; 49 FD CB 20 C6
\r
2584 set 1,(hl) ; CB CE
\r
2585 set.l 1,(hl) ; 49 CB CE
\r
2586 set 1,(ix+19) ; DD CB 19 CE
\r
2587 set.l 1,(ix+var2) ; 49 DD CB 20 CE
\r
2588 set 1,(iy+19) ; FD CB 19 CE
\r
2589 set.l 1,(iy+var2) ; 49 FD CB 20 CE
\r
2590 set 2,(hl) ; CB D6
\r
2591 set.l 2,(hl) ; 49 CB D6
\r
2592 set 2,(ix+19) ; DD CB 19 D6
\r
2593 set.l 2,(ix+var2) ; 49 DD CB 20 D6
\r
2594 set 2,(iy+19) ; FD CB 19 D6
\r
2595 set.l 2,(iy+var2) ; 49 FD CB 20 D6
\r
2596 set 3,(hl) ; CB DE
\r
2597 set.l 3,(hl) ; 49 CB DE
\r
2598 set 3,(ix+19) ; DD CB 19 DE
\r
2599 set.l 3,(ix+var2) ; 49 DD CB 20 DE
\r
2600 set 3,(iy+19) ; FD CB 19 DE
\r
2601 set.l 3,(iy+var2) ; 49 FD CB 20 DE
\r
2602 set 4,(hl) ; CB E6
\r
2603 set.l 4,(hl) ; 49 CB E6
\r
2604 set 4,(ix+19) ; DD CB 19 E6
\r
2605 set.l 4,(ix+var2) ; 49 DD CB 20 E6
\r
2606 set 4,(iy+19) ; FD CB 19 E6
\r
2607 set.l 4,(iy+var2) ; 49 FD CB 20 E6
\r
2608 set 5,(hl) ; CB EE
\r
2609 set.l 5,(hl) ; 49 CB EE
\r
2610 set 5,(ix+19) ; DD CB 19 EE
\r
2611 set.l 5,(ix+var2) ; 49 DD CB 20 EE
\r
2612 set 5,(iy+19) ; FD CB 19 EE
\r
2613 set.l 5,(iy+var2) ; 49 FD CB 20 EE
\r
2614 set 6,(hl) ; CB F6
\r
2615 set.l 6,(hl) ; 49 CB F6
\r
2616 set 6,(ix+19) ; DD CB 19 F6
\r
2617 set.l 6,(ix+var2) ; 49 DD CB 20 F6
\r
2618 set 6,(iy+19) ; FD CB 19 F6
\r
2619 set.l 6,(iy+var2) ; 49 FD CB 20 F6
\r
2620 set _bit7,(hl) ; CBuFE
\r
2621 set.l _bit7,(hl) ; 49 CBuFE
\r
2622 set _bit7,(ix+19) ; DD CB 19uFE
\r
2623 set.l _bit7,(ix+var2) ; 49 DD CB 20uFE
\r
2624 set _bit7,(iy+19) ; FD CB 19uFE
\r
2625 set.l _bit7,(iy+var2) ; 49 FD CB 20uFE
\r
2675 set _bit7,a ; CBuFF
\r
2676 set _bit7,b ; CBuF8
\r
2677 set _bit7,c ; CBuF9
\r
2678 set _bit7,d ; CBuFA
\r
2679 set _bit7,e ; CBuFB
\r
2680 set _bit7,h ; CBuFC
\r
2681 set _bit7,l ; CBuFD
\r
2684 sla.l (hl) ; 49 CB 26
\r
2685 sla (ix+var2) ; DD CB 20 26
\r
2686 sla.l (ix+var1) ; 49 DD CBr10 26
\r
2687 sla (iy+var2) ; FD CB 20 26
\r
2688 sla.l (iy+var1) ; 49 FD CBr10 26
\r
2700 sra.l (hl) ; 49 CB 2E
\r
2701 sra (ix+var2) ; DD CB 20 2E
\r
2702 sra.l (ix+var1) ; 49 DD CBr10 2E
\r
2703 sra (iy+var2) ; FD CB 20 2E
\r
2704 sra.l (iy+var1) ; 49 fD CBr10 2E
\r
2714 srl.l (hl) ; 49 CB 3E
\r
2715 srl (ix+var1) ; DD CBr10 3E
\r
2716 srl.l (ix+19) ; 49 DD CB 19 3E
\r
2717 srl (iy+var1) ; fD CBr10 3E
\r
2718 srl.l (iy+19) ; 49 FD CB 19 3E
\r
2730 sub.l a,(hl) ; 49 96
\r
2735 sub a,(ix+var2) ; DD 96 20
\r
2736 sub.l a,(ix+var1) ; 49 DD 96r10
\r
2737 sub a,(iy+var2) ; FD 96 20
\r
2738 sub.l a,(iy+var1) ; 49 FD 96r10
\r
2739 sub a,var2 ; D6 20
\r
2748 tst a,(hl) ; ED 34
\r
2750 ; The following line has errata in
\r
2751 ; manual codes (49,ed,73), the ones
\r
2752 ; listed here are correct
\r
2754 tst.l a,(hl) ; 49 ED 34
\r
2755 tst a,19 ; ED 64 19
\r
2764 tstio var2 ; ED 74 20
\r
2767 xor.l a,(hl) ; 49 AE
\r
2772 xor a,(ix+var1) ; DD AEr10
\r
2773 xor.l a,(ix+19) ; 49 DD AE 19
\r
2774 xor a,(iy+var1) ; FD AEr10
\r
2775 xor.l a,(iy+19) ; 49 FD AE 19
\r
2776 xor a,var1 ; EEr10
\r