	PSECT	3000h

hitachi:	equ	1

N	EQU	20H		;CONSTANT
DD	EQU	05H		;ABSOLUTE DISPLACEMENT
NN	EQU	584H		;ADDRESS
MM	EQU	196H		;ADDRESS 2
LL	EQU	732H		;ADDRESS 3
EE	EQU	30H		;DISPLACEMENT

bit_test:	equ	.bit.DD

	ADC	A,(HL)		;8E
	ADC	A,(IX+DD)	;DD8E05
	ADC	A,(IY+DD)	;FD8E05
	ADC	A,A		;8F
	ADC	A,B		;88
	ADC	A,C		;89
	ADC	A,D		;8A
	ADC	A,E		;8B
	ADC	A,H		;8C
	ADC	A,L		;8D
	ADC	A,N		;CE20

	ADC	A,XH		;DD8C			**
	ADC	A,XL		;DD8D			**
	ADC	A,YH		;FD8C			**
	ADC	A,YL		;FD8D			**

	ADC	HL,BC		;ED4A
	ADC	HL,DE		;ED5A
	ADC	HL,HL		;ED6A
	ADC	HL,SP		;ED7A
;
;	ADD
;
	ADD	A,(HL)		;86
	ADD	A,(IX+DD)	;DD8605
	ADD	A,(IY+DD)	;FD8605
	ADD	A,A		;87
	ADD	A,B		;80
	ADD	A,C		;81
	ADD	A,D		;82
	ADD	A,E		;83
	ADD	A,H		;84
	ADD	A,L		;85
	ADD	A,N		;C620

	ADD	A,XH		;DD84			**
	ADD	A,XL		;DD85			**
	ADD	A,YH		;FD84			**
	ADD	A,YL		;FD85			**

	ADD	HL,BC		;09
	ADD	HL,DE		;19
	ADD	HL,HL		;29
	ADD	HL,SP		;39

	ADD	IX,BC		;DD09
	ADD	IX,DE		;DD19
	ADD	IX,IX		;DD29
	ADD	IX,SP		;DD39

	ADD	IY,BC		;FD09
	ADD	IY,DE		;FD19
	ADD	IY,IY		;FD29
	ADD	IY,SP		;FD39
;
;	LOGICAL AND
;
	AND	(HL)		;A6
	AND	(IX+DD)		;DDA605
	AND	(IY+DD)		;FDA605
	AND	A		;A7
	AND	B		;A0
	AND	C		;A1
	AND	D		;A2
	AND	E		;A3
	AND	H		;A4
	AND	L		;A5
	AND	N		;E620

	AND	XH		;DDA4			**
	AND	XL		;DDA5			**
	AND	YH		;FDA4			**
	AND	YL		;FDA5			**
;
;	BIT TEST
;
	BIT	0,(HL)		;CB46
	BIT	0,(IX+DD)	;DDCB0546
	BIT	0,(IY+DD)	;FDCB0546
	BIT	0,A		;CB47
	BIT	0,B		;CB40
	BIT	0,C		;CB41
	BIT	0,D		;CB42
	BIT	0,E		;CB43
	BIT	0,H		;CB44
	BIT	0,L		;CB45

	BIT	1,(HL)		;CB4E
	BIT	1,(IX+DD)	;DDCB054E
	BIT	1,(IY+DD)	;FDCB054E
	BIT	1,A		;CB4F
	BIT	1,B		;CB48
	BIT	1,C		;CB49
	BIT	1,D		;CB4A
	BIT	1,E		;CB4B
	BIT	1,H		;CB4C
	BIT	1,L		;CB4D

	BIT	2,(HL)		;CB56
	BIT	2,(IX+DD)	;DDCB0556
	BIT	2,(IY+DD)	;FDCB0556
	BIT	2,A		;CB57
	BIT	2,B		;CB50
	BIT	2,C		;CB51
	BIT	2,D		;CB52
	BIT	2,E		;CB53
	BIT	2,H		;CB54
	BIT	2,L		;CB55

	BIT	3,(HL)		;CB5E
	BIT	3,(IX+DD)	;DDCB055E
	BIT	3,(IY+DD)	;FDCB055E
	BIT	3,A		;CB5F
	BIT	3,B		;CB58
	BIT	3,C		;CB59
	BIT	3,D		;CB5A
	BIT	3,E		;CB5B
	BIT	3,H		;CB5C
	BIT	3,L		;CB5D

	BIT	4,(HL)		;CB66
	BIT	4,(IX+DD)	;DDCB0566
	BIT	4,(IY+DD)	;FDCB0566
	BIT	4,A		;CB67
	BIT	4,B		;CB60
	BIT	4,C		;CB61
	BIT	4,D		;CB62
	BIT	4,E		;CB63
	BIT	4,H		;CB64
	BIT	4,L		;CB65

	BIT	5,(HL)		;CB6E
	BIT	5,(IX+DD)	;DDCB056E
	BIT	5,(IY+DD)	;FDCB056E
	BIT	5,A		;CB6F
	BIT	5,B		;CB68
	BIT	5,C		;CB69
	BIT	5,D		;CB6A
	BIT	5,E		;CB6B
	BIT	5,H		;CB6C
	BIT	5,L		;CB6D

	BIT	6,(HL)		;CB76
	BIT	6,(IX+DD)	;DDCB0576
	BIT	6,(IY+DD)	;FDCB0576
	BIT	6,A		;CB77
	BIT	6,B		;CB70
	BIT	6,C		;CB71
	BIT	6,D		;CB72
	BIT	6,E		;CB73
	BIT	6,H		;CB74
	BIT	6,L		;CB75

	BIT	7,(HL)		;CB7E
	BIT	7,(IX+DD)	;DDCB057E
	BIT	7,(IY+DD)	;FDCB057E
	BIT	7,A		;CB7F
	BIT	7,B		;CB78
	BIT	7,C		;CB79
	BIT	7,D		;CB7A
	BIT	7,E		;CB7B
	BIT	7,H		;CB7C
	BIT	7,L		;CB7D
;
;	SUBROUTINE CALL
;
	CALL	C,NN		;DC8405
	CALL	M,NN		;FC8405
	CALL	NC,NN		;D48405
	CALL	NZ,NN		;C48405
	CALL	P,NN		;F48405
	CALL	V,NN		;EC8405
	CALL	PE,NN		;EC8405
	CALL	NV,NN		;E48405
	CALL	PO,NN		;E48405
	CALL	Z,NN		;CC8405
	CALL	NN		;CD8405
;
;	COMPLEMENT CARRY FLAG
;
	CCF			;3F
;
;
;	COMPARE REGISTER WITH A
;
	CP	(HL)		;BE
	CP	(IX+DD)		;DDBE05
	CP	(IY+DD)		;FDBE05
	CP	A		;BF
	CP	B		;B8
	CP	C		;B9
	CP	D		;BA
	CP	E		;BB
	CP	H		;BC
	CP	L		;BD
	CP	N		;FE20

	CP	XH		;DDBC			**
	CP	XL		;DDBD			**
	CP	YH		;FDBC			**
	CP	YL		;FDBD			**
;
;	COMPARE & DECREMENT
;
	CPD			;EDA9
;
;	COMPARE,DECREMENT, & REPEAT
;
	CPDR			;EDB9
;
;	COMPARE & INCREMENT
;
	CPI			;EDA1
;
;	COMPARE,INCREMENT, & REPEAT
;
	CPIR			;EDB1
;
;	COMPLEMENT REGISTER A
;
	CPL			;2F
;
;	COMPARE DOUBLE REGISTER
;
	CPR	BC		;E5B7ED42E1		*
	CPR	DE		;E5B7ED52E1		*
	CPR	HL		;E5B7ED62E1		*
	CPR	SP		;E5B7ED72E1		*
;
;	DECIMAL ADJUST ACCUMULATOR
;
	DAA			;27
;
;	DECREMENT
;
	DEC	(HL)		;35
	DEC	(IX+DD)		;DD3505
	DEC	(IY+DD)		;FD3505
	DEC	A		;3D
	DEC	B		;05
	DEC	BC		;0B
	DEC	C		;0D
	DEC	D		;15
	DEC	DE		;1B
	DEC	E		;1D
	DEC	H		;25
	DEC	HL		;2B
	DEC	L		;2D
	DEC	IX		;DD2B
	DEC	XH		;DD25			**
	DEC	XL		;DD2D			**
	DEC	IY		;FD2B
	DEC	YH		;FD25			**
	DEC	YL		;FD2D			**
	DEC	SP		;3B
;
;	DISABLE INTERRUPT
;
	DI			;F3
;
;	DECREMENT REG. B AND JUMP IF RESULT NOT ZERO
;
	DJNZ	$+EE		;102E
;
;	ENABLE INTERRUPT
;
	EI			;FB
;
;	EXCHANGE
;
	EX	(SP),AF		;E3F5E5F1E1E3		*
	EX	(SP),BC		;E3C5E5C1E1E3		*
	EX	(SP),DE		;EBE3EB			*
	EX	(SP),HL		;E3
	EX	(SP),IX		;DDE3
	EX	(SP),IY		;FDE3

	EX	AF,AF'		;08

	EX	AF,BC		;F5C5F1C1		*
	EX	AF,DE		;F5D5F1D1		*
	EX	AF,HL		;F5E3F1			*
	EX	AF,IX		;F5DDE3F1		*
	EX	AF,IY		;F5FDE3F1		*

	EX	BC,DE		;C5D5C1D1		*
	EX	BC,HL		;C5E3C1			*
	EX	BC,IX		;C5DDE3C1		*
	EX	BC,IY		;C5FDE3C1		*

	EX	DE,HL		;EB
	EX	DE,IX		;D5DDE3D1		*
	EX	DE,IY		;D5FDE3D1		*

	EX	HL,IX		;E5DDE3E1		*
	EX	HL,IY		;E5FDE3E1		*

	EX	IX,IY		;DDE5FDE3DDE1		*
;
;	POP REGISTERS AND RETURN
;
	EXIT			;E1D1C1C9		*
	EXIT	4		;E1D1C1F1C9		*
	EXIT	I		;E1D1C1F1FDE1DDE1C9	*
	EXIT	P		;E1D1C1F1FDE1DDE1D9E1D1
				;  C1D9C9		*
	EXIT	A		;E1D1C1F1FDE1DDE1D9E1D1
				;  C1D908F108C9		*
;
;	EXCHANGE REGISTER BANKS
;
	EXX			;D9
;
;	HALT PROCESSOR
;
	HALT			;76
;
;	SET INTERRUPT MODE
;
	IM	0		;ED46
	IM	1		;ED56
	IM	2		;ED5E
;
;	INPUT
;
	IN	F,(C)		;ED70
	IN	A,(C)		;ED78
	IN	B,(C)		;ED40
	IN	C,(C)		;ED48
	IN	D,(C)		;ED50
	IN	E,(C)		;ED58
	IN	H,(C)		;ED60
	IN	L,(C)		;ED68

	IN	A,(N)		;DB20

	if	hitachi
	IN0	A,(N)		;ED3820
	IN0	B,(N)		;ED0020
	IN0	C,(N)		;ED0820
	IN0	D,(N)		;ED1020
	IN0	E,(N)		;ED1820
	IN0	H,(N)		;ED2020
	IN0	L,(N)		;ED2820
	endif
;
;	INCREMENT
;
	INC	(HL)		;34
	INC	(IX+DD)		;DD3405
	INC	(IY+DD)		;FD3405
	INC	A		;3C
	INC	B		;04
	INC	BC		;03
	INC	C		;0C
	INC	D		;14
	INC	DE		;13
	INC	E		;1C
	INC	H		;24
	INC	HL		;23
	INC	L		;2C
	INC	IX		;DD23
	INC	XH		;DD24			**
	INC	XL		;DD2C			**
	INC	IY		;FD23
	INC	YH		;FD24			**
	INC	YL		;FD2C			**
	INC	SP		;33
;
;	INPUT & DECREMENT
;
	IND			;EDAA
;
;	INPUT, DECREMENT, & REPEAT
;
	INDR			;EDBA
;
;	INPUT  & INCREMENT
;
	INI			;EDA2
;
;	INPUT, INCREMENT, & REPEAT
;
	INIR			;EDB2
;
;	CONDITIONAL & UNCONDITIONAL JUMPS
;
	JP	NN		;C38405
	JP	(HL)		;E9
	JP	(IX)		;DDE9
	JP	(IY)		;FDE9
	JP	C,NN		;DA8405
	JP	M,NN		;FA8405
	JP	NC,NN		;D28405
	JP	NZ,NN		;C28405
	JP	P,NN		;F28405
	JP	V,NN		;EA8405
	JP	PE,NN		;EA8405
	JP	NV,NN		;E28405
	JP	PO,NN		;E28405
	JP	Z,NN		;CA8405
;
;	CONDITIONAL & UNCONDITIONAL RELATIVE JUMPS
;
	JR	C,$+EE		;382E
	JR	NC,$+EE		;302E
	JR	Z,$+EE		;282E
	JR	NZ,$+EE		;202E
	JR	$+EE		;182E
;
;	LOAD
;
	LD	(BC),A		;02
	LD	(BC),BC		;C5E3712370E3C1		* BC=BC+1 after
	LD	(BC),DE		;C5E3732372E3C1		* BC=BC+1
	LD	(BC),HL		;F57D02037C02F1		* BC=BC+1
	LD	(BC),(DE)	;1A02			* USES REG A
	LD	(BC),(HL)	;7E02			* USES REG A
	LD	(BC),(IX+DD)	;DD7E0502		* USES REG A
	LD	(BC),(IY+DD)	;FD7E0502		* USES REG A

	LD	(DE),A		;12
	LD	(DE),BC		;D5E3712370E3D1		* DE=DE+1
	LD	(DE),DE		;D5E3732372E3D1		* DE=DE+1 after
	LD	(DE),HL		;F57D12137C12F1		* DE=DE+1
	LD	(DE),(BC)	;0A12			* USES REG A
	LD	(DE),(HL)	;7E12			* USES REG A
	LD	(DE),(IX+DD)	;DD7E0512		* USES REG A
	LD	(DE),(IY+DD)	;FD7E0512		* USES REG A

	LD	(HL),A		;77
	LD	(HL),B		;70
	LD	(HL),BC		;712370			* HL=HL+1
	LD	(HL),(BC)	;0A77			* USES REG A
	LD	(HL),C		;71
	LD	(HL),D		;72
	LD	(HL),DE		;732372			* HL=HL+1
	LD	(HL),(DE)	;1A77			* USES REG A
	LD	(HL),E		;73
	LD	(HL),H		;74
	LD	(HL),HL		;F57C752377F1		* HL=HL+1 after
	LD	(HL),L		;75
	LD	(HL),N		;3620
	LD	(HL),(IX+DD)	;DD7E0577		* USES REG A
	LD	(HL),(IY+DD)	;FD7E0577		* USES REG A

	LD	(IX+DD),BC	;DD7105DD23DD7005	* IX=IX+1
	LD	(IX+DD),DE	;DD7305DD23DD7205	* IX=IX+1
	LD	(IX+DD),HL	;DD7505DD23DD7405	* IX=IX+1
	LD	(IX+DD),(BC)	;0ADD7705		* USES REG A
	LD	(IX+DD),(DE)	;1ADD7705		* USES REG A
	LD	(IX+DD),(HL)	;7EDD7705		* USES REG A
	LD	(IX+DD),(IY+DD)	;FD7E05DD7705		* USES REG A

	LD	(IY+DD),BC	;FD7105FD23FD7005	* IY=IY+1
	LD	(IY+DD),DE	;FD7305FD23FD7205	* IY=IY+1
	LD	(IY+DD),HL	;FD7505FD23FD7405	* IY=IY+1
	LD	(IY+DD),(BC)	;0AFD7705		* USES REG A
	LD	(IY+DD),(DE)	;1AFD7705		* USES REG A
	LD	(IY+DD),(HL)	;7EFD7705		* USES REG A
	LD	(IY+DD),(IX+DD)	;DD7E05FD7705		* USES REG A

	LD	(IX+DD),A	;DD7705
	LD	(IX+DD),B	;DD7005
	LD	(IX+DD),C	;DD7105
	LD	(IX+DD),D	;DD7205
	LD	(IX+DD),E	;DD7305
	LD	(IX+DD),H	;DD7405
	LD	(IX+DD),L	;DD7505
	LD	(IX+DD),N	;DD360520

	LD	(IY+DD),A	;FD7705
	LD	(IY+DD),B	;FD7005
	LD	(IY+DD),C	;FD7105
	LD	(IY+DD),D	;FD7205
	LD	(IY+DD),E	;FD7305
	LD	(IY+DD),H	;FD7405
	LD	(IY+DD),L	;FD7505
	LD	(IY+DD),N	;FD360520

	LD	(NN),A		;328405
	LD	(NN),BC		;ED438405
	LD	(NN),DE		;ED538405
	LD	(NN),HL		;228405
	LD	(NN),IX		;DD228405
	LD	(NN),IY		;FD228405
	LD	(NN),SP		;ED738405

	LD	A,(BC)		;0A
	LD	A,(DE)		;1A
	LD	A,(HL)		;7E
	LD	A,(IX+DD)	;DD7E05
	LD	A,(IY+DD)	;FD7E05
	LD	A,(NN)		;3A8405

	LD	A,A		;7F
	LD	A,B		;78
	LD	A,C		;79
	LD	A,D		;7A
	LD	A,E		;7B
	LD	A,H		;7C
	LD	A,I		;ED57
	LD	A,L		;7D
	LD	A,N		;3E20
	LD	A,R		;ED5F

	LD	A,XH		;DD7C			**
	LD	A,XL		;DD7D			**
	LD	A,YH		;FD7C			**
	LD	A,YL		;FD7D			**

	LD	AF,AF		;F5F1			*
	LD	AF,BC		;C5F1			*
	LD	AF,DE		;D5F1			*
	LD	AF,HL		;E5F1			*
	LD	AF,IX		;DDE5F1			*
	LD	AF,IY		;FDE5F1			*

	LD	B,(HL)		;46
	LD	B,(IX+DD)	;DD4605
	LD	B,(IY+DD)	;FD4605
	LD	B,A		;47
	LD	B,B		;40
	LD	B,C		;41
	LD	B,D		;42
	LD	B,E		;43
	LD	B,H		;44
	LD	B,L		;45
	LD	B,N		;0620

	LD	B,XH		;DD44			**
	LD	B,XL		;DD45			**
	LD	B,YH		;FD44			**
	LD	B,YL		;FD45			**

	LD	BC,A		;4F0600			*
	LD	BC,(BC)		;C5E34E2346E1		*
	LD	BC,(DE)		;D5E34E2346E3D1		* DE=DE+1
	LD	BC,(HL)		;4E2346			* HL=HL+1
	LD	BC,(IX+DD)	;DD4E05DD23DD4605	* IX=IX+1
	LD	BC,(IY+DD)	;FD4E05FD23FD4605	* IY=IY+1
	LD	BC,(NN)		;ED4B8405
	LD	BC,NN		;018405
	LD	BC,AF		;F5C1			*
	LD	BC,BC		;4049			*
	LD	BC,DE		;424B			*
	LD	BC,HL		;444D			*
	LD	BC,IX		;DDE5C1			*
	LD	BC,IY		;FDE5C1			*

	LD	C,(HL)		;4E
	LD	C,(IX+DD)	;DD4E05
	LD	C,(IY+DD)	;FD4E05
	LD	C,A		;4F
	LD	C,B		;48
	LD	C,C		;49
	LD	C,D		;4A
	LD	C,E		;4B
	LD	C,H		;4C
	LD	C,L		;4D
	LD	C,N		;0E20

	LD	C,XH		;DD4C			**
	LD	C,XL		;DD4D			**
	LD	C,YH		;FD4C			**
	LD	C,YL		;FD4D			**

	LD	D,(HL)		;56
	LD	D,(IX+DD)	;DD5605
	LD	D,(IY+DD)	;FD5605
	LD	D,A		;57
	LD	D,B		;50
	LD	D,C		;51
	LD	D,D		;52
	LD	D,E		;53
	LD	D,H		;54
	LD	D,L		;55
	LD	D,N		;1620

	LD	D,XH		;DD54			**
	LD	D,XL		;DD55			**
	LD	D,YH		;FD54			**
	LD	D,YL		;FD55			**

	LD	DE,A		;5F1600			*
	LD	DE,(BC)		;C5E35E2356E3C1		* BC=BC+1
	LD	DE,(DE)		;D5E35E2356E1		*
	LD	DE,(HL)		;5E2356			* HL=HL+1
	LD	DE,(IX+DD)	;DD5E05DD23DD5605	* IX=IX+1
	LD	DE,(IY+DD)	;FD5E05FD23FD5605	* IY=IY+1
	LD	DE,(NN)		;ED5B8405
	LD	DE,NN		;118405
	LD	DE,AF		;F5D1			*
	LD	DE,BC		;5059			*
	LD	DE,DE		;525B			*
	LD	DE,HL		;545D			*
	LD	DE,IX		;DDE5D1			*
	LD	DE,IY		;FDE5D1			*

	LD	E,(HL)		;5E
	LD	E,(IX+DD)	;DD5E05
	LD	E,(IY+DD)	;FD5E05
	LD	E,A		;5F
	LD	E,B		;58
	LD	E,C		;59
	LD	E,D		;5A
	LD	E,E		;5B
	LD	E,H		;5C
	LD	E,L		;5D
	LD	E,N		;1E20

	LD	E,XH		;DD5C			**
	LD	E,XL		;DD5D			**
	LD	E,YH		;FD5C			**
	LD	E,YL		;FD5D			**

	LD	H,(HL)		;66
	LD	H,(IX+DD)	;DD6605
	LD	H,(IY+DD)	;FD6605
	LD	H,A		;67
	LD	H,B		;60
	LD	H,C		;61
	LD	H,D		;62
	LD	H,E		;63
	LD	H,H		;64
	LD	H,L		;65
	LD	H,N		;2620

	LD	HL,A		;6F2600			*
	LD	HL,(BC)		;F50A6F030A67F1		* BC=BC+1
	LD	HL,(DE)		;F51A6F131A67F1		* DE=DE+1
	LD	HL,(HL)		;F57E23666FF1		*
	LD	HL,(IX+DD)	;DD6E05DD23DD6605	* IX=IX+1
	LD	HL,(IY+DD)	;FD6E05FD23FD6605	* IY=IY+1
	LD	HL,(NN)		;2A8405
	LD	HL,NN		;218405
	LD	HL,AF		;F5E1			*
	LD	HL,BC		;6069			*
	LD	HL,DE		;626B			*
	LD	HL,HL		;646D			*
	LD	HL,IX		;DDE5E1			*
	LD	HL,IY		;FDE5E1			*

	LD	I,A		;ED47

	LD	IX,A		;DD6FDD2600		*
	LD	IX,(NN)		;DD2A8405
	LD	IX,NN		;DD218405
	LD	IX,AF		;F5DDE1			*
	LD	IX,BC		;C5DDE1			*
	LD	IX,DE		;D5DDE1			*
	LD	IX,HL		;E5DDE1			*
	LD	IX,IX		;DDE5DDE1		*
	LD	IX,IY		;FDE5DDE1		*

	LD	IY,A		;FD6FFD2600		*
	LD	IY,(NN)		;FD2A8405
	LD	IY,NN		;FD218405
	LD	IY,AF		;F5FDE1			*
	LD	IY,BC		;C5FDE1			*
	LD	IY,DE		;D5FDE1			*
	LD	IY,HL		;E5FDE1			*
	LD	IY,IX		;DDE5FDE1		*
	LD	IY,IY		;FDE5FDE1		*

	LD	L,(HL)		;6E
	LD	L,(IX+DD)	;DD6E05
	LD	L,(IY+DD)	;FD6E05
	LD	L,A		;6F
	LD	L,B		;68
	LD	L,C		;69
	LD	L,D		;6A
	LD	L,E		;6B
	LD	L,H		;6C
	LD	L,L		;6D
	LD	L,N		;2E20

	LD	R,A		;ED4F

	LD	SP,(NN)		;ED7B8405
	LD	SP,HL		;F9
	LD	SP,IX		;DDF9
	LD	SP,IY		;FDF9
	LD	SP,NN		;318405

	LD	XH,A		;DD67			**
	LD	XH,B		;DD60			**
	LD	XH,C		;DD61			**
	LD	XH,D		;DD62			**
	LD	XH,E		;DD63			**
	LD	XH,N		;DD2620			**

	LD	XL,A		;DD6F			**
	LD	XL,B		;DD68			**
	LD	XL,C		;DD69			**
	LD	XL,D		;DD6A			**
	LD	XL,E		;DD6B			**
	LD	XL,N		;DD2E20			**

	LD	YH,A		;FD67			**
	LD	YH,B		;FD60			**
	LD	YH,C		;FD61			**
	LD	YH,D		;FD62			**
	LD	YH,E		;FD63			**
	LD	YH,N		;FD2620			**

	LD	YL,A		;FD6F			**
	LD	YL,B		;FD68			**
	LD	YL,C		;FD69			**
	LD	YL,D		;FD6A			**
	LD	YL,E		;FD6B			**
	LD	YL,N		;FD2E20			**
;
;	LOAD & DECREMENT
;
	LDD			;EDA8
;
;	LOAD, DECREMENT, & REPEAT
;
	LDDR			;EDB8
;
;	LOAD & INCREMENT
;
	LDI			;EDA0
;
;	LOAD, INCREMENT, & REPEAT
;
	LDIR			;EDB0

	if	hitachi
;
;	MULTIPLY Hr by Lr, result into 16 bit register
;
	MLT	BC		;ED4C
	MLT	DE		;ED5C
	MLT	HL		;ED6C

	endif

;
;	NEGATE A
;
	NEG			;ED44
;
;	NO OPERATION
;
	NOP			;00
;
;	LOGICAL OR
;
	OR	(HL)		;B6
	OR	(IX+DD)		;DDB605
	OR	(IY+DD)		;FDB605
	OR	A		;B7
	OR	B		;B0
	OR	C		;B1
	OR	D		;B2
	OR	E		;B3
	OR	H		;B4
	OR	L		;B5
	OR	N		;F620

	OR	XH		;DDB4			**
	OR	XL		;DDB5			**
	OR	YH		;FDB4			**
	OR	YL		;FDB5			**
;
;	OUTPUT, DECREMENT, & REPEAT
;
	OTDR			;EDBB
;
;	OUTPUT, INCREMENT, & REPEAT
;
	OTIR			;EDB3
;
;	OUTPUT
;
	OUT	(C),A		;ED79
	OUT	(C),B		;ED41
	OUT	(C),C		;ED49
	OUT	(C),D		;ED51
	OUT	(C),E		;ED59
	OUT	(C),H		;ED61
	OUT	(C),L		;ED69
	OUT	(N),A		;D320

	if	hitachi
	OUT0	(N),A		;ED3920
	OUT0	(N),B		;ED0120
	OUT0	(N),C		;ED0920
	OUT0	(N),D		;ED1120
	OUT0	(N),E		;ED1920
	OUT0	(N),H		;ED2120
	OUT0	(N),L		;ED2920
	endif
;
;	OUTPUT & DECREMENT
;
	OUTD			;EDAB
;
;	OUTPUT & INCREMENT
;
	OUTI			;EDA3

	if	hitachi
;
;	OUTPUT BLOCK AND DECREMENT
;
	OTDM			;ED8B

;
;	OUTPUT BLOCK, DECREMENT, AND REPEAT
;
	OTDMR			;ED9B
;
;	OUTPUT BLOCK AND INCREMENT
;
	OTIM			;ED83
;
;	OUTPUT BLOCK, INCREMENT, AND REPEAT
;
	OTIMR			;ED93

	endif

;
;	POP DATA FROM STACK
;
	POP			;3333			* SP=SP+2
	POP	AF		;F1
	POP	BC		;C1
	POP	DE		;D1
	POP	HL		;E1
	POP	IX		;DDE1
	POP	IY		;FDE1
;
;	PUSH DATA ONTO STACK
;
	PUSH	AF		;F5
	PUSH	BC		;C5
	PUSH	DE		;D5
	PUSH	HL		;E5
	PUSH	IX		;DDE5
	PUSH	IY		;FDE5
;
;	BIT RESET
;
	RES	0,(HL)		;CB86
	RES	0,(IX+DD)	;DDCB0586
	RES	0,(IY+DD)	;FDCB0586
	RES	0,A		;CB87
	RES	0,B		;CB80
	RES	0,C		;CB81
	RES	0,D		;CB82
	RES	0,E		;CB83
	RES	0,H		;CB84
	RES	0,L		;CB85

	RES	1,(HL)		;CB8E
	RES	1,(IX+DD)	;DDCB058E
	RES	1,(IY+DD)	;FDCB058E
	RES	1,A		;CB8F
	RES	1,B		;CB88
	RES	1,C		;CB89
	RES	1,D		;CB8A
	RES	1,E		;CB8B
	RES	1,H		;CB8C
	RES	1,L		;CB8D

	RES	2,(HL)		;CB96
	RES	2,(IX+DD)	;DDCB0596
	RES	2,(IY+DD)	;FDCB0596
	RES	2,A		;CB97
	RES	2,B		;CB90
	RES	2,C		;CB91
	RES	2,D		;CB92
	RES	2,E		;CB93
	RES	2,H		;CB94
	RES	2,L		;CB95

	RES	3,(HL)		;CB9E
	RES	3,(IX+DD)	;DDCB059E
	RES	3,(IY+DD)	;FDCB059E
	RES	3,A		;CB9F
	RES	3,B		;CB98
	RES	3,C		;CB99
	RES	3,D		;CB9A
	RES	3,E		;CB9B
	RES	3,H		;CB9C
	RES	3,L		;CB9D

	RES	4,(HL)		;CBA6
	RES	4,(IX+DD)	;DDCB05A6
	RES	4,(IY+DD)	;FDCB05A6
	RES	4,A		;CBA7
	RES	4,B		;CBA0
	RES	4,C		;CBA1
	RES	4,D		;CBA2
	RES	4,E		;CBA3
	RES	4,H		;CBA4
	RES	4,L		;CBA5

	RES	5,(HL)		;CBAE
	RES	5,(IX+DD)	;DDCB05AE
	RES	5,(IY+DD)	;FDCB05AE
	RES	5,A		;CBAF
	RES	5,B		;CBA8
	RES	5,C		;CBA9
	RES	5,D		;CBAA
	RES	5,E		;CBAB
	RES	5,H		;CBAC
	RES	5,L		;CBAD

	RES	6,(HL)		;CBB6
	RES	6,(IX+DD)	;DDCB05B6
	RES	6,(IY+DD)	;FDCB05B6
	RES	6,A		;CBB7
	RES	6,B		;CBB0
	RES	6,C		;CBB1
	RES	6,D		;CBB2
	RES	6,E		;CBB3
	RES	6,H		;CBB4
	RES	6,L		;CBB5

	RES	7,(HL)		;CBBE
	RES	7,(IX+DD)	;DDCB05BE
	RES	7,(IY+DD)	;FDCB05BE
	RES	7,A		;CBBF
	RES	7,B		;CBB8
	RES	7,C		;CBB9
	RES	7,D		;CBBA
	RES	7,E		;CBBB
	RES	7,H		;CBBC
	RES	7,L		;CBBD
;
;	CONDITIONAL & UNCONDITIONAL RETURN
;
	RET			;C9
	RET	C		;D8
	RET	M		;F8
	RET	NC		;D0
	RET	NZ		;C0
	RET	P		;F0
	RET	V		;E8
	RET	PE		;E8
	RET	NV		;E0
	RET	PO		;E0
	RET	Z		;C8
;
;	RETURN FROM INTERRUPT
;
	RETI			;ED4D
;
;	RETURN FROM NON-MASKABLE INTERRUPT
;
	RETN			;ED45
;
;	ROTATE LEFT
;
	RL	(HL)		;CB16
	RL	(IX+DD)		;DDCB0516
	RL	(IY+DD)		;FDCB0516
	RL	A		;CB17
	RL	B		;CB10
	RL	C		;CB11
	RL	D		;CB12
	RL	E		;CB13
	RL	H		;CB14
	RL	L		;CB15

	RLA			;17
;
;	ROTATE LEFT CIRCULAR
;
	RLC	(HL)		;CB06
	RLC	(IX+DD)		;DDCB0506
	RLC	(IY+DD)		;FDCB0506
	RLC	A		;CB07
	RLC	B		;CB00
	RLC	C		;CB01
	RLC	D		;CB02
	RLC	E		;CB03
	RLC	H		;CB04
	RLC	L		;CB05

	RLCA			;07
;
;	ROTATE LEFT CIRCULAR AND LOAD
;
	RLCLD	A,(IX+DD)	;DDCB0507		**
	RLCLD	A,(IY+DD)	;FDCB0507		**
	RLCLD	B,(IX+DD)	;DDCB0500		**
	RLCLD	B,(IY+DD)	;FDCB0500		**
	RLCLD	C,(IX+DD)	;DDCB0501		**
	RLCLD	C,(IY+DD)	;FDCB0501		**
	RLCLD	D,(IX+DD)	;DDCB0502		**
	RLCLD	D,(IY+DD)	;FDCB0502		**
	RLCLD	E,(IX+DD)	;DDCB0503		**
	RLCLD	E,(IY+DD)	;FDCB0503		**
	RLCLD	H,(IX+DD)	;DDCB0504		**
	RLCLD	H,(IY+DD)	;FDCB0504		**
	RLCLD	L,(IX+DD)	;DDCB0505		**
	RLCLD	L,(IY+DD)	;FDCB0505		**
;
;	ROTATE LEFT DECIMAL
;
	RLD			;ED6F
;
;	ROTATE LEFT & LOAD
;
	RLLD	A,(IX+DD)	;DDCB0517		**
	RLLD	A,(IY+DD)	;FDCB0517		**
	RLLD	B,(IX+DD)	;DDCB0510		**
	RLLD	B,(IY+DD)	;FDCB0510		**
	RLLD	C,(IX+DD)	;DDCB0511		**
	RLLD	C,(IY+DD)	;FDCB0511		**
	RLLD	D,(IX+DD)	;DDCB0512		**
	RLLD	D,(IY+DD)	;FDCB0512		**
	RLLD	E,(IX+DD)	;DDCB0513		**
	RLLD	E,(IY+DD)	;FDCB0513		**
	RLLD	H,(IX+DD)	;DDCB0514		**
	RLLD	H,(IY+DD)	;FDCB0514		**
	RLLD	L,(IX+DD)	;DDCB0515		**
	RLLD	L,(IY+DD)	;FDCB0515		**
;
;	ROTATE RIGHT
;
	RR	(HL)		;CB1E
	RR	(IX+DD)		;DDCB051E
	RR	(IY+DD)		;FDCB051E
	RR	A		;CB1F
	RR	B		;CB18
	RR	C		;CB19
	RR	D		;CB1A
	RR	E		;CB1B
	RR	H		;CBIC
	RR	L		;CB1D

	RRA			;1F
;
;	ROTATE RIGHT CIRCULAR
;
	RRC	(HL)		;CB0E
	RRC	(IX+DD)		;DDCB050E
	RRC	(IY+DD)		;FDCB050E
	RRC	A		;CB0F
	RRC	B		;CB08
	RRC	C		;CB09
	RRC	D		;CB0A
	RRC	E		;CB0B
	RRC	H		;CB0C
	RRC	L		;CB0D

	RRCA			;0F
;
;	ROTATE RIGHT CIRCULAR & LOAD
;
	RRCLD	A,(IX+DD)	;DDCB050F		**
	RRCLD	A,(IY+DD)	;FDCB050F		**
	RRCLD	B,(IX+DD)	;DDCB0508		**
	RRCLD	B,(IY+DD)	;FDCB0508		**
	RRCLD	C,(IX+DD)	;DDCB0509		**
	RRCLD	C,(IY+DD)	;FDCB0509		**
	RRCLD	D,(IX+DD)	;DDCB050A		**
	RRCLD	D,(IY+DD)	;FDCB050A		**
	RRCLD	E,(IX+DD)	;DDCB050B		**
	RRCLD	E,(IY+DD)	;FDCB050B		**
	RRCLD	H,(IX+DD)	;DDCB050C		**
	RRCLD	H,(IY+DD)	;FDCB050C		**
	RRCLD	L,(IX+DD)	;DDCB050D		**
	RRCLD	L,(IY+DD)	;FDCB050D		**
;
;	ROTATE RIGHT DECIMAL
;
	RRD			;ED67
;
;	ROTATE RIGHT & LOAD
;
	RRLD	A,(IX+DD)	;DDCB051F		**
	RRLD	A,(IY+DD)	;FDCB051F		**
	RRLD	B,(IX+DD)	;DDCB0518		**
	RRLD	B,(IY+DD)	;FDCB0518		**
	RRLD	C,(IX+DD)	;DDCB0519		**
	RRLD	C,(IY+DD)	;FDCB0519		**
	RRLD	D,(IX+DD)	;DDCB051A		**
	RRLD	D,(IY+DD)	;FDCB051A		**
	RRLD	E,(IX+DD)	;DDCB051B		**
	RRLD	E,(IY+DD)	;FDCB051B		**
	RRLD	H,(IX+DD)	;DDCB051C		**
	RRLD	H,(IY+DD)	;FDCB051C		**
	RRLD	L,(IX+DD)	;DDCB051D		**
	RRLD	L,(IY+DD)	;FDCB051D		**
;
;	RESTART
;
	RST	00H		;C7
	RST	08H		;CF
	RST	10H		;D7
	RST	18H		;DF
	RST	20H		;E7
	RST	28H		;EF
	RST	30H		;F7
	RST	38H		;FF

	RST	0		;C7  (00H)
	RST	1		;CF  (08H)
	RST	2		;D7  (10H)
	RST	3		;DF  (18H)
	RST	4		;E7  (20H)
	RST	5		;EF  (28H)
	RST	6		;F7  (30H)
	RST	7		;FF  (38H)
;
;	POP REGISTERS
;
	RSTR			;E1D1C1			*
	RSTR	4		;E1D1C1F1		*
	RSTR	I		;E1D1C1F1FDE1DDE1 	*
	RSTR	P		;E1D1C1F1FDE1DDE1D9E1D1C1D9 *
	RSTR	A		;E1D1C1F1FDE1DDE1D9E1D1
				;  C1D908F108		*
;
;	PUSH REGISTERS
;
	SAVE			;C5D5E5			*
	SAVE	4		;F5C5D5E5		*
	SAVE	I		;DDE5FDE5F5C5D5E5 	*
	SAVE	P		;D9C5D5E5D9DDE5FDE5F5C5D5E5 *
	SAVE	A		;08F508D9C5D5E5D9DDE5FD
				;  E5F5C5D5E5		*
;
;	SUBTRACT WITH CARRY
;
	SBC	A,N		;DE20
	SBC	A,(HL)		;9E
	SBC	A,(IX+DD)	;DD9E05
	SBC	A,(IY+DD)	;FD9E05
	SBC	A,A		;9F
	SBC	A,B		;98
	SBC	A,C		;99
	SBC	A,D		;9A
	SBC	A,E		;9B
	SBC	A,H		;9C
	SBC	A,L		;9D

	SBC	A,XH		;DD9C			**
	SBC	A,XL		;DD9D			**
	SBC	A,YH		;FD9C			**
	SBC	A,YL		;FD9D			**

	SBC	HL,BC		;ED42
	SBC	HL,DE		;ED52
	SBC	HL,HL		;ED62
	SBC	HL,SP		;ED72
;
;	SET CARRY FLAG
;
	SCF			;37
;
;	BIT SET
;
	SET	0,(HL)		;CBC6
	SET	0,(IX+DD)	;DDCB05C6
	SET	0,(IY+DD)	;FDCB05C6
	SET	0,A		;CBC7
	SET	0,B		;CBC0
	SET	0,C		;CBC1
	SET	0,D		;CBC2
	SET	0,E		;CBC3
	SET	0,H		;CBC4
	SET	0,L		;CBC5

	SET	1,(HL)		;CBCE
	SET	1,(IX+DD)	;DDCB05CE
	SET	1,(IY+DD)	;FDCB05CE
	SET	1,A		;CBCF
	SET	1,B		;CBC8
	SET	1,C		;CBC9
	SET	1,D		;CBCA
	SET	1,E		;CBCB
	SET	1,H		;CBCC
	SET	1,L		;CBCD

	SET	2,(HL)		;CBD6
	SET	2,(IX+DD)	;DDCB05D6
	SET	2,(IY+DD)	;FDCB05D6
	SET	2,A		;CBD7
	SET	2,B		;CBD0
	SET	2,C		;CBD1
	SET	2,D		;CBD2
	SET	2,E		;CBD3
	SET	2,H		;CBD4
	SET	2,L		;CBD5

	SET	3,(HL)		;CBDE
	SET	3,(IX+DD)	;DDCB05DE
	SET	3,(IY+DD)	;FDCB05DE
	SET	3,A		;CBDF
	SET	3,B		;CBD8
	SET	3,C		;CBD9
	SET	3,D		;CBDA
	SET	3,E		;CBDB
	SET	3,H		;CBDC
	SET	3,L		;CBDD

	SET	4,(HL)		;CBE6
	SET	4,(IX+DD)	;DDCB05E6
	SET	4,(IY+DD)	;FDCB05E6
	SET	4,A		;CBE7
	SET	4,B		;CBE0
	SET	4,C		;CBE1
	SET	4,D		;CBE2
	SET	4,E		;CBE3
	SET	4,H		;CBE4
	SET	4,L		;CBE5

	SET	5,(HL)		;CBEE
	SET	5,(IX+DD)	;DDCB05EE
	SET	5,(IY+DD)	;FDCB05EE
	SET	5,A		;CBEF
	SET	5,B		;CBE8
	SET	5,C		;CBE9
	SET	5,D		;CBEA
	SET	5,E		;CBEB
	SET	5,H		;CBEC
	SET	5,L		;CBED

	SET	6,(HL)		;CBF6
	SET	6,(IX+DD)	;DDCB05F6
	SET	6,(IY+DD)	;FDCB05F6
	SET	6,A		;CBF7
	SET	6,B		;CBF0
	SET	6,C		;CBF1
	SET	6,D		;CBF2
	SET	6,E		;CBF3
	SET	6,H		;CBF4
	SET	6,L		;CBF5

	SET	7,(HL)		;CBFE
	SET	7,(IX+DD)	;DDCB05FE
	SET	7,(IY+DD)	;FDCB05FE
	SET	7,A		;CBFF
	SET	7,B		;CBF8
	SET	7,C		;CBF9
	SET	7,D		;CBFA
	SET	7,E		;CBFB
	SET	7,H		;CBFC
	SET	7,L		;CBFD
;
;	BIT SET & LOAD
;
*	SETLD	A,0,(IX+DD)	;DDCB05C7		**
	SETLD	A,0,(IY+DD)	;FDCB05C7		**
	SETLD	B,0,(IX+DD)	;DDCB05C0		**
	SETLD	B,0,(IY+DD)	;FDCB05C0		**
	SETLD	C,0,(IX+DD)	;DDCB05C1		**
	SETLD	C,0,(IY+DD)	;FDCB05C1		**
	SETLD	D,0,(IX+DD)	;DDCB05C2		**
	SETLD	D,0,(IY+DD)	;FDCB05C2		**
	SETLD 	E,0,(IX+DD)	;DDCB05C3		**
	SETLD	E,0,(IY+DD)	;FDCB05C3		**
	SETLD	H,0,(IX+DD)	;DDCB05C4		**
	SETLD	H,0,(IY+DD)	;FDCB05C4		**
	SETLD	L,0,(IX+DD)	;DDCB05C5		**
	SETLD	L,0,(IY+DD)	;FDCB05C5		**

	SETLD	A,1,(IX+DD)	;DDCB05CF		**
	SETLD	A,1,(IY+DD)	;FDCB05CF		**
	SETLD	B,1,(IX+DD)	;DDCB05C8		**
	SETLD	B,1,(IY+DD)	;FDCB05C8		**
	SETLD	C,1,(IX+DD)	;DDCB05C9		**
	SETLD	C,1,(IY+DD)	;FDCB05C9		**
	SETLD	D,1,(IX+DD)	;DDCB05CA		**
	SETLD	D,1,(IY+DD)	;FDCB05CA		**
	SETLD 	E,1,(IX+DD)	;DDCB05CB		**
	SETLD	E,1,(IY+DD)	;FDCB05CB		**
	SETLD	H,1,(IX+DD)	;DDCB05CC		**
	SETLD	H,1,(IY+DD)	;FDCB05CC		**
	SETLD	L,1,(IX+DD)	;DDCB05CD		**
	SETLD	L,1,(IY+DD)	;FDCB05CD		**

	SETLD	A,2,(IX+DD)	;DDCB05D7		**
	SETLD	A,2,(IY+DD)	;FDCB05D7		**
	SETLD	B,2,(IX+DD)	;DDCB05D0		**
	SETLD	B,2,(IY+DD)	;FDCB05D0		**
	SETLD	C,2,(IX+DD)	;DDCB05D1		**
	SETLD	C,2,(IY+DD)	;FDCB05D1		**
	SETLD	D,2,(IX+DD)	;DDCB05D2		**
	SETLD	D,2,(IY+DD)	;FDCB05D2		**
	SETLD 	E,2,(IX+DD)	;DDCB05D3		**
	SETLD	E,2,(IY+DD)	;FDCB05D3		**
	SETLD	H,2,(IX+DD)	;DDCB05D4		**
	SETLD	H,2,(IY+DD)	;FDCB05D4		**
	SETLD	L,2,(IX+DD)	;DDCB05D5		**
	SETLD	L,2,(IY+DD)	;FDCB05D5		**

	SETLD	A,3,(IX+DD)	;DDCB05DF		**
	SETLD	A,3,(IY+DD)	;FDCB05DF		**
	SETLD	B,3,(IX+DD)	;DDCB05D8		**
	SETLD	B,3,(IY+DD)	;FDCB05D8		**
	SETLD	C,3,(IX+DD)	;DDCB05D9		**
	SETLD	C,3,(IY+DD)	;FDCB05D9		**
	SETLD	D,3,(IX+DD)	;DDCB05DA		**
	SETLD	D,3,(IY+DD)	;FDCB05DA		**
	SETLD 	E,3,(IX+DD)	;DDCB05DB		**
	SETLD	E,3,(IY+DD)	;FDCB05DB		**
	SETLD	H,3,(IX+DD)	;DDCB05DC		**
	SETLD	H,3,(IY+DD)	;FDCB05DC		**
	SETLD	L,3,(IX+DD)	;DDCB05DD		**
	SETLD	L,3,(IY+DD)	;FDCB05DD		**

	SETLD	A,4,(IX+DD)	;DDCB05E7		**
	SETLD	A,4,(IY+DD)	;FDCB05E7		**
	SETLD	B,4,(IX+DD)	;DDCB05E0		**
	SETLD	B,4,(IY+DD)	;FDCB05E0		**
	SETLD	C,4,(IX+DD)	;DDCB05E1		**
	SETLD	C,4,(IY+DD)	;FDCB05E1		**
	SETLD	D,4,(IX+DD)	;DDCB05E2		**
	SETLD	D,4,(IY+DD)	;FDCB05E2		**
	SETLD 	E,4,(IX+DD)	;DDCB05E3		**
	SETLD	E,4,(IY+DD)	;FDCB05E3		**
	SETLD	H,4,(IX+DD)	;DDCB05E4		**
	SETLD	H,4,(IY+DD)	;FDCB05E4		**
	SETLD	L,4,(IX+DD)	;DDCB05E5		**
	SETLD	L,4,(IY+DD)	;FDCB05E5		**

	SETLD	A,5,(IX+DD)	;DDCB05EF		**
	SETLD	A,5,(IY+DD)	;FDCB05EF		**
	SETLD	B,5,(IX+DD)	;DDCB05E8		**
	SETLD	B,5,(IY+DD)	;FDCB05E8		**
	SETLD	C,5,(IX+DD)	;DDCB05E9		**
	SETLD	C,5,(IY+DD)	;FDCB05E9		**
	SETLD	D,5,(IX+DD)	;DDCB05EA		**
	SETLD	D,5,(IY+DD)	;FDCB05EA		**
	SETLD 	E,5,(IX+DD)	;DDCB05EB		**
	SETLD	E,5,(IY+DD)	;FDCB05EB		**
	SETLD	H,5,(IX+DD)	;DDCB05EC		**
	SETLD	H,5,(IY+DD)	;FDCB05EC		**
	SETLD	L,5,(IX+DD)	;DDCB05ED		**
	SETLD	L,5,(IY+DD)	;FDCB05ED		**

	SETLD	A,6,(IX+DD)	;DDCB05F7		**
	SETLD	A,6,(IY+DD)	;FDCB05F7		**
	SETLD	B,6,(IX+DD)	;DDCB05F0		**
	SETLD	B,6,(IY+DD)	;FDCB05F0		**
	SETLD	C,6,(IX+DD)	;DDCB05F1		**
	SETLD	C,6,(IY+DD)	;FDCB05F1		**
	SETLD	D,6,(IX+DD)	;DDCB05F2		**
	SETLD	D,6,(IY+DD)	;FDCB05F2		**
	SETLD 	E,6,(IX+DD)	;DDCB05F3		**
	SETLD	E,6,(IY+DD)	;FDCB05F3		**
	SETLD	H,6,(IX+DD)	;DDCB05F4		**
	SETLD	H,6,(IY+DD)	;FDCB05F4		**
	SETLD	L,6,(IX+DD)	;DDCB05F5		**
	SETLD	L,6,(IY+DD)	;FDCB05F5		**

	SETLD	A,7,(IX+DD)	;DDCB05FF		**
	SETLD	A,7,(IY+DD)	;FDCB05FF		**
	SETLD	B,7,(IX+DD)	;DDCB05F8		**
	SETLD	B,7,(IY+DD)	;FDCB05F8		**
	SETLD	C,7,(IX+DD)	;DDCB05F9		**
	SETLD	C,7,(IY+DD)	;FDCB05F9		**
	SETLD	D,7,(IX+DD)	;DDCB05FA		**
	SETLD	D,7,(IY+DD)	;FDCB05FA		**
	SETLD 	E,7,(IX+DD)	;DDCB05FB		**
	SETLD	E,7,(IY+DD)	;FDCB05FB		**
	SETLD	H,7,(IX+DD)	;DDCB05FC		**
	SETLD	H,7,(IY+DD)	;FDCB05FC		**
	SETLD	L,7,(IX+DD)	;DDCB05FD		**
*	SETLD	L,7,(IY+DD)	;FDCB05FD		**
;
;	SHIFT LEFT ARITHMETIC
;
	SLA	(HL)		;CB26
	SLA	(IX+DD)		;DDCB0526
	SLA	(IY+DD)		;FDCB0526
	SLA	A		;CB27
	SLA	B		;CB20
	SLA	C		;CB21
	SLA	D		;CB22
	SLA	E		;CB23
	SLA	H		;CB24
	SLA	L		;CB25
;
;	SHIFT LEFT ARITHMETIC & LOAD
;
	SLALD	A,(IX+DD)	;DDCB0527		**
	SLALD	A,(IY+DD)	;FDCB0527		**
	SLALD	B,(IX+DD)	;DDCB0520		**
	SLALD	B,(IY+DD)	;FDCB0520		**
	SLALD	C,(IX+DD)	;DDCB0521		**
	SLALD	C,(IY+DD)	;FDCB0521		**
	SLALD	D,(IX+DD)	;DDCB0522		**
	SLALD	D,(IY+DD)	;FDCB0522		**
	SLALD	E,(IX+DD)	;DDCB0523		**
	SLALD	E,(IY+DD)	;FDCB0523		**
	SLALD	H,(IX+DD)	;DDCB0524		**
	SLALD	H,(IY+DD)	;FDCB0524		**
	SLALD	L,(IX+DD)	;DDCB0525		**
	SLALD	L,(IY+DD)	;FDCB0525		**
;
;	SHIFT LEFT WITH ONES FILL
;
	SLO	(HL)		;CB36			**
	SLO	(IX+DD)		;DDCB0536		**
	SLO	(IY+DD)		;FDCB0536		**
	SLO	A		;CB37			**
	SLO	B		;CB30			**
	SLO	C		;CB31			**
	SLO	D		;CB32			**
	SLO	E		;CB33			**
	SLO	H		;CB34			**
	SLO	L		;CB35			**
;
;	SHIFT LEFT WITH ONES FILL & LOAD
;
	SLOLD	A,(IX+DD)	;DDCB0537		**
	SLOLD	A,(IY+DD)	;FDCB0537		**
	SLOLD	B,(IX+DD)	;DDCB0530		**
	SLOLD	B,(IY+DD)	;FDCB0530		**
	SLOLD	C,(IX+DD)	;DDCB0531		**
	SLOLD	C,(IY+DD)	;FDCB0531		**
	SLOLD	D,(IX+DD)	;DDCB0532		**
	SLOLD	D,(IY+DD)	;FDCB0532		**
	SLOLD	E,(IX+DD)	;DDCB0533		**
	SLOLD	E,(IY+DD)	;FDCB0533		**
	SLOLD	H,(IX+DD)	;DDCB0534		**
	SLOLD	H,(IY+DD)	;FDCB0534		**
	SLOLD	L,(IX+DD)	;DDCB0535		**
	SLOLD	L,(IY+DD)	;FDCB0535		**

	if	hitachi

	SLP			;ED76

	endif

;
;	SHIFT RIGHT ARITHMETIC
;
	SRA	(HL)		;CB2E
	SRA	(IX+DD)		;DDCB052E
	SRA	(IY+DD)		;FDCB052E
	SRA	A		;CB2F
	SRA	B		;CB28
	SRA	C		;CB29
	SRA	D		;CB2A
	SRA	E		;CB2B
	SRA	H		;CB2C
	SRA	L		;CB2D
;
;	SHIFT RIGHT ARITHMETIC & LOAD
;
	SRALD	A,(IX+DD)	;DDCB052F		**
	SRALD	A,(IY+DD)	;FDCB052F		**
	SRALD	B,(IX+DD)	;DDCB0528		**
	SRALD	B,(IY+DD)	;FDCB0528		**
	SRALD	C,(IX+DD)	;DDCB0529		**
	SRALD	C,(IY+DD)	;FDCB0529		**
	SRALD	D,(IX+DD)	;DDCB052A		**
	SRALD	D,(IY+DD)	;FDCB052A		**
	SRALD	E,(IX+DD)	;DDCB052B		**
	SRALD	E,(IY+DD)	;FDCB052B		**
	SRALD	H,(IX+DD)	;DDCB052C		**
	SRALD	H,(IY+DD)	;FDCB052C		**
	SRALD	L,(IX+DD)	;DDCB052D		**
	SRALD	L,(IY+DD)	;FDCB052D		**
;
;	SHIFT RIGHT LOGICAL
;
	SRL	(HL)		;CB3E
	SRL	(IX+DD)		;DDCB053E
	SRL	(IY+DD)		;FDCB053E
	SRL	A		;CB3F
	SRL	B		;CB38
	SRL	C		;CB39
	SRL	D		;CB3A
	SRL	E		;CB3B
	SRL	H		;CB3C
	SRL	L		;CB3D
;
;	SHIFT RIGHT LOGICAL & LOAD
;
	SRLLD	A,(IX+DD)	;DDCB053F		**
	SRLLD	A,(IY+DD)	;FDCB053F		**
	SRLLD	B,(IX+DD)	;DDCB0538		**
	SRLLD	B,(IY+DD)	;FDCB0538		**
	SRLLD	C,(IX+DD)	;DDCB0539		**
	SRLLD	C,(IY+DD)	;FDCB0539		**
	SRLLD	D,(IX+DD)	;DDCB053A		**
	SRLLD	D,(IY+DD)	;FDCB053A		**
	SRLLD	E,(IX+DD)	;DDCB053B		**
	SRLLD	E,(IY+DD)	;FDCB053B		**
	SRLLD	H,(IX+DD)	;DDCB053C		**
	SRLLD	H,(IY+DD)	;FDCB053C		**
	SRLLD	L,(IX+DD)	;DDCB053D		**
	SRLLD	L,(IY+DD)	;FDCB053D		**
;
;	SUBTRACT
;
	SUB	(HL)		;96
	SUB	(IX+DD)		;DD9605
	SUB	(IY+DD)		;FD9605
	SUB	A		;97
	SUB	B		;90
	SUB	C		;91
	SUB	D		;92
	SUB	E		;93
	SUB	H		;94
	SUB	L		;95
	SUB	N		;D620

	SUB	XH		;DD94			**
	SUB	XL		;DD95			**
	SUB	YH		;FD94			**
	SUB	YL		;FD95			**
;
;	SYSTEM CALL
;
	SVC	N		;3E20CF			* MODEL II ONLY

	if	hitachi

	TST	A		;ED3C
	TST	B		;ED04
	TST	C		;ED0C
	TST	D		;ED14
	TST	E		;ED1C
	TST	H		;ED24
	TST	L		;ED2C

	TST	N		;ED6420

	TST	(HL)		;ED34

	TSTIO	N		;ED7420

	endif

;
;	TEST REGISTER FOR ZERO
;
	TZ	BC		;78B1			*
	TZ	DE		;7AB3			*
	TZ	HL		;7CB5			*
	TZ	IX		;DD7CDDB5		**
	TZ	IY		;FD7CFDB5		**
;
;	EXCLUSIVE OR
;
	XOR	(HL)		;AE
	XOR	(IX+DD)		;DDAE05
	XOR	(IY+DD)		;FDAE05
	XOR	A		;AF
	XOR	B		;A8
	XOR	C		;A9
	XOR	D		;AA
	XOR	E		;AB
	XOR	H		;AC
	XOR	L		;AD
	XOR	N		;EE20

	XOR	XH		;DDAC			**
	XOR	XL		;DDAD			**
	XOR	YH		;FDAC			**
	XOR	YL		;FDAD			**

	END
