; Z80 opcodes, numerical order, from Zilog manual, TDL mnems.
; Prefixed follow 0ffh = rst 7
;
; SLRMAC bug - operands of MVIX and MVIY interchanged
;
	maclib	z80
b	equ	0
c	equ	1
d	equ	2
e	equ	3
h	equ	4
l	equ	5
m	equ	6
a	equ	7
;
sllr	macro	reg
	db	0cbh,030h+reg
	endm

;
ind	equ	5
n	equ	20h
;
	nop
	lxi	b,nn
	stax	b
	inx	b
	inr	b
	dcr	b
	mvi	b,n
	rlc
	exaf
	dad	b
	ldax	b
	dcx	b
	inr	c
	dcr	c
	mvi	c,n
	rrc
	djnz	dis
	lxi	d,nn
	stax	d
	inx	d
	inr	d
	dcr	d
	mvi	d,n
	ral
	jr	dis
	dad	d
	ldax	d
	dcx	d
	inr	e
	dcr	e
	mvi	e,n
	rar
	jrnz	dis
	lxi	h,nn
	shld	nn	
	inx	h
	inr	h
dis:	dcr	h
	mvi	h,n
	daa
	jrz	dis
	dad	h
	lhld	nn
	dcx	h
	inr	l
	dcr	l
	mvi	l,n
	cma
	jrnc	dis
	lxi	sp,nn
	sta	nn	
	inx	sp
	inr	m
	dcr	m
	mvi	m,n
	stc
	jrc	dis
	dad	sp
	lda	nn
	dcx	sp
	inr	a
	dcr	a
	mvi	a,n
	cmc
	mov	b,b
	mov	b,c
	mov	b,d
	mov	b,e
	mov	b,h
	mov	b,l
	mov	b,m
	mov	b,a

	mov	c,b
	mov	c,c
	mov	c,d
	mov	c,e
	mov	c,h
	mov	c,l
	mov	c,m
	mov	c,a

	mov	d,b
	mov	d,c
	mov	d,d
	mov	d,e
	mov	d,h
	mov	d,l
	mov	d,m
	mov	d,a

	mov	e,b
	mov	e,c
	mov	e,d
	mov	e,e
	mov	e,h
	mov	e,l
	mov	e,m
	mov	e,a

	mov	h,b
	mov	h,c
	mov	h,d
	mov	h,e
	mov	h,h
	mov	h,l
	mov	h,m
	mov	h,a

	mov	l,b
	mov	l,c
	mov	l,d
	mov	l,e
	mov	l,h
	mov	l,l
	mov	l,m
	mov	l,a

	mov	m,b
	mov	m,c
	mov	m,d
	mov	m,e
	mov	m,h
	mov	m,l
	hlt
	mov	m,a

	mov	a,b
	mov	a,c
	mov	a,d
	mov	a,e
	mov	a,h
	mov	a,l
	mov	a,m
	mov	a,a

	add	b
	add	c
	add	d
	add	e
	add	h
	add	l
	add	m
	add	a

	adc	b
	adc	c
	adc	d
	adc	e
	adc	h
	adc	l
	adc	m
	adc	a

	sub	b
	sub	c
	sub	d
	sub	e
	sub	h
	sub	l
	sub	m
	sub	a

	sbb	b
	sbb	c
	sbb	d
	sbb	e
	sbb	h
	sbb	l
	sbb	m
	sbb	a

	ana	b
	ana	c
	ana	d
	ana	e
	ana	h
	ana	l
	ana	m
	ana	a

	xra	b
	xra	c
	xra	d
	xra	e
	xra	h
	xra	l
	xra	m
	xra	a

	ora	b
	ora	c
	ora	d
	ora	e
	ora	h
	ora	l
	ora	m
	ora	a

	cmp	b
	cmp	c
	cmp	d
	cmp	e
	cmp	h
	cmp	l
	cmp	m
	cmp	a

	rnz	
	pop	b
	jnz	nn
	jmp	nn
	cnz	nn
	push	b
	adi	n
	rst	0

	rz	
	ret
	jz	nn
	cz	nn
	call	nn
	aci	n
	rst	1

	rnc	
	pop	d
	jnc	nn
	out	n
	cnc	nn
	push	d
	sui	n
	rst	2

	rc	
	exx
	jc	nn
	in	n
	cc	nn
	sbi	n
	rst	3

	rpo
	pop	h
	jpo	nn
	xthl	
	cpo	nn
	push	h
	ani	n
	rst	4

	rpe
	pchl
	jpe	nn
	xchg	
	cpe	nn
	xri	n
	rst	5

	rp	
	pop	psw
	jp	nn
	di
	cp	nn
	push	psw
	ori	n
	rst	6

	rm	
	sphl	
	jm	nn
	ei
	cm	nn
	cpi	n
	rst	7

	rlcr	b
	rlcr	c
	rlcr	d
	rlcr	e
	rlcr	h
	rlcr	l
	rlcr	m
	rlcr	a

	rrcr	b
	rrcr	c
	rrcr	d
	rrcr	e
	rrcr	h
	rrcr	l
	rrcr	m
	rrcr	a

	ralr	b
	ralr	c
	ralr	d
	ralr	e
	ralr	h
	ralr	l
	ralr	m
	ralr	a

	rarr	b
	rarr	c
	rarr	d
	rarr	e
	rarr	h
	rarr	l
	rarr	m
	rarr	a

	slar	b
	slar	c
	slar	d
	slar	e
	slar	h
	slar	l
	slar	m
	slar	a

	srar	b
	srar	c
	srar	d
	srar	e
	srar	h
	srar	l
	srar	m
	srar	a

	sllr	b
	sllr	c
	sllr	d
	sllr	e
	sllr	h
	sllr	l
	sllr	m
	sllr	a

	srlr	b
	srlr	c
	srlr	d
	srlr	e
	srlr	h
	srlr	l
	srlr	m
	srlr	a

	bit	0,b
	bit	0,c
	bit	0,d
	bit	0,e
	bit	0,h
	bit	0,l
	bit	0,m
	bit	0,a

	bit	1,b
	bit	1,c
	bit	1,d
	bit	1,e
	bit	1,h
	bit	1,l
	bit	1,m
	bit	1,a

	bit	2,b
	bit	2,c
	bit	2,d
	bit	2,e
	bit	2,h
	bit	2,l
	bit	2,m
	bit	2,a

	bit	3,b
	bit	3,c
	bit	3,d
	bit	3,e
	bit	3,h
	bit	3,l
	bit	3,m
	bit	3,a

	bit	4,b
	bit	4,c
	bit	4,d
	bit	4,e
	bit	4,h
	bit	4,l
	bit	4,m
	bit	4,a

	bit	5,b
	bit	5,c
	bit	5,d
	bit	5,e
	bit	5,h
	bit	5,l
	bit	5,m
	bit	5,a

	bit	6,b
	bit	6,c
	bit	6,d
	bit	6,e
	bit	6,h
	bit	6,l
	bit	6,m
	bit	6,a

	bit	7,b
	bit	7,c
	bit	7,d
	bit	7,e
	bit	7,h
	bit	7,l
	bit	7,m
	bit	7,a

	res	0,b
	res	0,c
	res	0,d
	res	0,e
	res	0,h
	res	0,l
	res	0,m
	res	0,a

	res	1,b
	res	1,c
	res	1,d
	res	1,e
	res	1,h
	res	1,l
	res	1,m
	res	1,a

	res	2,b
	res	2,c
	res	2,d
	res	2,e
	res	2,h
	res	2,l
	res	2,m
	res	2,a

	res	3,b
	res	3,c
	res	3,d
	res	3,e
	res	3,h
	res	3,l
	res	3,m
	res	3,a

	res	4,b
	res	4,c
	res	4,d
	res	4,e
	res	4,h
	res	4,l
	res	4,m
	res	4,a

	res	5,b
	res	5,c
	res	5,d
	res	5,e
	res	5,h
	res	5,l
	res	5,m
	res	5,a

	res	6,b
	res	6,c
	res	6,d
	res	6,e
	res	6,h
	res	6,l
	res	6,m
	res	6,a

	res	7,b
	res	7,c
	res	7,d
	res	7,e
	res	7,h
	res	7,l
	res	7,m
	res	7,a

	setb	0,b
	setb	0,c
	setb	0,d
	setb	0,e
	setb	0,h
	setb	0,l
	setb	0,m
	setb	0,a

	setb	1,b
	setb	1,c
	setb	1,d
	setb	1,e
	setb	1,h
	setb	1,l
	setb	1,m
	setb	1,a

	setb	2,b
	setb	2,c
	setb	2,d
	setb	2,e
	setb	2,h
	setb	2,l
	setb	2,m
	setb	2,a

	setb	3,b
	setb	3,c
	setb	3,d
	setb	3,e
	setb	3,h
	setb	3,l
	setb	3,m
	setb	3,a

	setb	4,b
	setb	4,c
	setb	4,d
	setb	4,e
	setb	4,h
	setb	4,l
	setb	4,m
	setb	4,a

	setb	5,b
	setb	5,c
	setb	5,d
	setb	5,e
	setb	5,h
	setb	5,l
	setb	5,m
	setb	5,a

	setb	6,b
	setb	6,c
	setb	6,d
	setb	6,e
	setb	6,h
	setb	6,l
	setb	6,m
	setb	6,a

	setb	7,b
	setb	7,c
	setb	7,d
	setb	7,e
	setb	7,h
	setb	7,l
	setb	7,m
	setb	7,a

	dadx	b
	dadx	d
	lxix	nn
	sixd	nn
	inxix
	dadx	ix
	lixd	nn
	dcxix

	inrx	ind
	dcrx	ind
	mvix	ind,n
	dadx	sp
	
	ldx	b,ind
	ldx	c,ind
	ldx	d,ind
	ldx	e,ind
	ldx	h,ind
	ldx	l,ind

	stx	b,ind
	stx	c,ind	
	stx	d,ind	
	stx	e,ind	
	stx	h,ind	
	stx	l,ind
	stx	a,ind

	ldx	a,ind

	addx	ind
	adcx	ind
	subx	ind	
	sbcx	ind
	andx	ind
	xorx	ind	
	orx	ind
	cmpx	ind

	popix
	xtix
	pushix
	pcix
	spix

	rlcx	ind
	rrcx	ind
	ralx	ind
	rarx	ind
	slax	ind
	srax	ind
	srlx	ind

	bitx	0,ind
	bitx	1,ind
	bitx	2,ind
	bitx	3,ind
	bitx	4,ind
	bitx	5,ind
	bitx	6,ind
	bitx	7,ind

	resx	0,ind
	resx	1,ind
	resx	2,ind
	resx	3,ind
	resx	4,ind
	resx	5,ind
	resx	6,ind
	resx	7,ind

	setx	0,ind
	setx	1,ind
	setx	2,ind
	setx	3,ind
	setx	4,ind
	setx	5,ind
	setx	6,ind
	setx	7,ind

	inp	b
	outp	b
	dsbc	b
	sbcd	nn	
	neg
	retn
	im0
	stai
	inp	c
	outp	c
	dadc	b
	lbcd	nn
	reti
	star
	inp	d
	outp	d
	dsbc	d
	sded	nn	
	im1
	ldai
	inp	e
	outp	e
	dadc	d
	lded	nn
	im2
	ldar
	inp	h
	outp	h
	dsbc	h
 dw	063edh,nn;	shld nn (useless)
	rrd
	inp	l
	outp	l
	dadc	h
 dw	06bedh,nn;	lhld nn (useless)
	rld
	inp	m
	outp	m
	dsbc	sp
	sspd	nn
	inp	a
	outp	a
	dadc	sp
	lspd	nn
	ldi
	cci
	ini
	outi
	ldd
	ccd
	ind
	outd
	ldir
	ccir
	inir
	outir
	lddr
	ccdr
	indr
	outdr

	dady	b
	dady	d
	lxiy	nn
	siyd	nn
	inxiy
	dady	iy
	liyd	nn
	dcxiy

	inry	ind
	dcry	ind
	mviy	ind,n
	dady	sp
	
	ldy	b,ind
	ldy	c,ind
	ldy	d,ind
	ldy	e,ind
	ldy	h,ind
	ldy	l,ind

	sty	b,ind
	sty	c,ind	
	sty	d,ind	
	sty	e,ind	
	sty	h,ind	
	sty	l,ind
	sty	a,ind

	ldy	a,ind

	addy	ind
	adcy	ind
	suby	ind	
	sbcy	ind
	andy	ind
	xory	ind	
	ory	ind
	cmpy	ind

	popiy
	xtiy
	pushiy
	pciy
	spiy

	rlcy	ind
	rrcy	ind
	raly	ind
	rary	ind
	slay	ind
	sray	ind
	srly	ind

	bity	0,ind
	bity	1,ind
	bity	2,ind
	bity	3,ind
	bity	4,ind
	bity	5,ind
	bity	6,ind
	bity	7,ind

	resy	0,ind
	resy	1,ind
	resy	2,ind
	resy	3,ind
	resy	4,ind
	resy	5,ind
	resy	6,ind
	resy	7,ind

	sety	0,ind
	sety	1,ind
	sety	2,ind
	sety	3,ind
	sety	4,ind
	sety	5,ind
	sety	6,ind
	sety	7,ind

nn	ds	2
C]