	title	'DISZ80 disassembler Z80 mnemonics'

;----------------------------------------------------------------;
; Author:	D. Powys-Lybbe
; Written:	Summer 1984
; Revisions:
;  Nov 1984 - various corrections
;
;----------------------------------------------------------------;
; Module 10 - Tables of operand types and mnemonics
;----------------------------------------------------------------;

	page

	public	sets		; 1st op byte types
	public	set$cb		; 0CBH double op byte types
	public	sets$dd		; 0DDH double op byte types and mnemonics
	public	sets$ed		; 0EDH double op byte types and mnemonics
	public	sets$fd		; 0FDH double op byte types and mnemonics
;-----	public	nemon		; 1st op byte mnemonics
;-----	public	nemon$cb	; 0CBH double op byte mnemonics
	public	set$ddcb	; 0DDH,0CBH triple op byte types and mnemonics
	public	set$fdcb	; 0FDH,0CBH triple op byte types and mnemonics

;-----------------------------------
;-----BOUND	MACRO	A1,A2,A3,A4,A5,A6,A7
;-----------------------------------

;-----OGN	SET	$

;-----	IF	NOT NUL A7
;-----	DB	a1,a2,a3,a4,a5,a6,a7
;-----	else
;-----	IF	NOT NUL A6
;-----	DB	a1,a2,a3,a4,a5,a6
;-----	else
;-----	IF	NOT NUL A5
;-----	DB	a1,a2,a3,a4,a5
;-----	else
;-----	IF	NOT NUL A4
;-----	DB	a1,a2,a3,a4
;-----	else
;-----	IF	NOT NUL A3
;-----	DB	a1,a2,a3
;-----	else
;-----	IF	NOT NUL A2
;-----	DB	a1,a2
;-----	else
;-----	IF	NOT NUL A1
;-----	DB	a1
;-----	ENDIF
;-----	ENDIF
;-----	ENDIF
;-----	ENDIF
;-----	ENDIF
;-----	ENDIF
;-----	ENDIF
;-----
;-----	ORG	OGN+16		; Change from 8 bit
;-----	ENDM


CR	EQU	0DH	; <return>
LF	EQU	0AH	; <line feed>
TAB	EQU	09H	; <tab>

;----------- start of tables --------------------

	cseg

tables	equ	$

;-------------------------------------------------------------------------
;SETS
;
; Table of OPERAND types
; Low nibble (bits 0-3) - number of bytes of command
;	0 - Illegal instruction
;	1 - Single byte or data
;	2 - Immediate byte instruction
;	3 - Immediate word or branch instruction, or dual data (Z80 only)
;	7 - multiple byte operand (Z80 only)
; High nibble (bits 4-7) - Type of OPERAND:
;	0 - No BRANCH
;	1 - Conditional BRANCH or CALL
;	2 - Unconditional BRANCH (JMP)
;	3 - End of program segment (RET or PCHL)
;	4 - Data area
;	5 - Data address
;	8 - Unconditional CALL
;	9 - Conditional BRANCH relative (Z80 only)
;	a - Unconditional BRANCH (JMP) relative (Z80 only)
;	c - Dual data byte (Z80 only)
; NOTE: Bit 5 indicates program code terminator
;--------------------------------------------------------------------------
SETS:
	db	001h
	dw	nem000	; 00h
	db	043h
	dw	nem001
	db	001h
	dw	nem002
	db	001h
	dw	nem003
	db	001h
	dw	nem004
	db	001h
	dw	nem005
	db	042h
	dw	nem006
	db	001h
	dw	nem007
	db	001h
	dw	nem010	; 08h Z80 only
	db	001h
	dw	nem011
	db	001h
	dw	nem012
	db	001h
	dw	nem013
	db	001h
	dw	nem014
	db	001h
	dw	nem015
	db	042h
	dw	nem016
	db	001h
	dw	nem017
	db	092h
	dw	nem020	; 10h Z80 only
	db	043h
	dw	nem021
	db	001h
	dw	nem022
	db	001h
	dw	nem023
	db	001h
	dw	nem024
	db	001h
	dw	nem025
	db	042h
	dw	nem026
	db	001h
	dw	nem027
	db	0a2h
	dw	nem030	;18h Z80 only
	db	001h
	dw	nem031
	db	001h
	dw	nem032
	db	001h
	dw	nem033
	db	001h
	dw	nem034
	db	001h
	dw	nem035
	db	042h
	dw	nem036
	db	001h
	dw	nem037
	db	092h
	dw	nem040	;20h Z80 only
	db	043h
	dw	nem041
	db	053h
	dw	nem042
	db	001h
	dw	nem043
	db	001h
	dw	nem044
	db	001h
	dw	nem045
	db	042h
	dw	nem046
	db	001h
	dw	nem047
	db	092h
	dw	nem050	;28h Z80 only
	db	001h
	dw	nem051
	db	053h
	dw	nem052
	db	001h
	dw	nem053
	db	001h
	dw	nem054
	db	001h
	dw	nem055
	db	042h
	dw	nem056
	db	001h
	dw	nem057
	db	092h
	dw	nem060	;30h Z80 only
	db	043h
	dw	nem061
	db	043h
	dw	nem062
	db	001h
	dw	nem063
	db	001h
	dw	nem064
	db	001h
	dw	nem065
	db	042h
	dw	nem066
	db	001h
	dw	nem067
	db	092h
	dw	nem070	;38h Z80 only
	db	001h
	dw	nem071
	db	043h
	dw	nem072
	db	001h
	dw	nem073
	db	001h
	dw	nem074
	db	001h
	dw	nem075
	db	042h
	dw	nem076
	db	001h
	dw	nem077
	db	001h
	dw	nem100	;40h
	db	001h
	dw	nem101
	db	001h
	dw	nem102
	db	001h
	dw	nem103
	db	001h
	dw	nem104
	db	001h
	dw	nem105
	db	001h
	dw	nem106
	db	001h
	dw	nem107
	db	001h
	dw	nem110	;48h
	db	001h
	dw	nem111
	db	001h
	dw	nem112
	db	001h
	dw	nem113
	db	001h
	dw	nem114
	db	001h
	dw	nem115
	db	001h
	dw	nem116
	db	001h
	dw	nem117
	db	001h
	dw	nem120	;50h
	db	001h
	dw	nem121
	db	001h
	dw	nem122
	db	001h
	dw	nem123
	db	001h
	dw	nem124
	db	001h
	dw	nem125
	db	001h
	dw	nem126
	db	001h
	dw	nem127
	db	001h
	dw	nem130	;58h
	db	001h
	dw	nem131
	db	001h
	dw	nem132
	db	001h
	dw	nem133
	db	001h
	dw	nem134
	db	001h
	dw	nem135
	db	001h
	dw	nem136
	db	001h
	dw	nem137
	db	001h
	dw	nem140	;60h
	db	001h
	dw	nem141
	db	001h
	dw	nem142
	db	001h
	dw	nem143
	db	001h
	dw	nem144
	db	001h
	dw	nem145
	db	001h
	dw	nem146
	db	001h
	dw	nem147
	db	001h
	dw	nem150	;68h
	db	001h
	dw	nem151
	db	001h
	dw	nem152
	db	001h
	dw	nem153
	db	001h
	dw	nem154
	db	001h
	dw	nem155
	db	001h
	dw	nem156
	db	001h
	dw	nem157
	db	001h
	dw	nem160	;70h
	db	001h
	dw	nem161
	db	001h
	dw	nem162
	db	001h
	dw	nem163
	db	001h
	dw	nem164
	db	001h
	dw	nem165
	db	001h
	dw	nem166
	db	001h
	dw	nem167
	db	001h
	dw	nem170	;78h
	db	001h
	dw	nem171
	db	001h
	dw	nem172
	db	001h
	dw	nem173
	db	001h
	dw	nem174
	db	001h
	dw	nem175
	db	001h
	dw	nem176
	db	001h
	dw	nem177
	db	001h
	dw	nem200	;80h
	db	001h
	dw	nem201
	db	001h
	dw	nem202
	db	001h
	dw	nem203
	db	001h
	dw	nem204
	db	001h
	dw	nem205
	db	001h
	dw	nem206
	db	001h
	dw	nem207
	db	001h
	dw	nem210	;88h
	db	001h
	dw	nem211
	db	001h
	dw	nem212
	db	001h
	dw	nem213
	db	001h
	dw	nem214
	db	001h
	dw	nem215
	db	001h
	dw	nem216
	db	001h
	dw	nem217
	db	001h
	dw	nem220	;90h
	db	001h
	dw	nem221
	db	001h
	dw	nem222
	db	001h
	dw	nem223
	db	001h
	dw	nem224
	db	001h
	dw	nem225
	db	001h
	dw	nem226
	db	001h
	dw	nem227
	db	001h
	dw	nem230	;98h
	db	001h
	dw	nem231
	db	001h
	dw	nem232
	db	001h
	dw	nem233
	db	001h
	dw	nem234
	db	001h
	dw	nem235
	db	001h
	dw	nem236
	db	001h
	dw	nem237
	db	001h
	dw	nem240	;a0h
	db	001h
	dw	nem241
	db	001h
	dw	nem242
	db	001h
	dw	nem243
	db	001h
	dw	nem244
	db	001h
	dw	nem245
	db	001h
	dw	nem246
	db	001h
	dw	nem247
	db	001h
	dw	nem250	;a8h
	db	001h
	dw	nem251
	db	001h
	dw	nem252
	db	001h
	dw	nem253
	db	001h
	dw	nem254
	db	001h
	dw	nem255
	db	001h
	dw	nem256
	db	001h
	dw	nem257
	db	001h
	dw	nem260	;b0h
	db	001h
	dw	nem261
	db	001h
	dw	nem262
	db	001h
	dw	nem263
	db	001h
	dw	nem264
	db	001h
	dw	nem265
	db	001h
	dw	nem266
	db	001h
	dw	nem267
	db	001h
	dw	nem270	;b8h
	db	001h
	dw	nem271
	db	001h
	dw	nem272
	db	001h
	dw	nem273
	db	001h
	dw	nem274
	db	001h
	dw	nem275
	db	001h
	dw	nem276
	db	001h
	dw	nem277
	db	001h
	dw	nem300	;c0h
	db	001h
	dw	nem301
	db	013h
	dw	nem302
	db	023h
	dw	nem303
	db	013h
	dw	nem304
	db	001h
	dw	nem305
	db	042h
	dw	nem306
	db	001h
	dw	nem307
	db	001h
	dw	nem310	;c8h
	db	031h
	dw	nem311
	db	013h
	dw	nem312
	db	007h
	dw	nem313	;Z80 only - cbh double byte instruction
	db	013h
	dw	nem314
	db	083h
	dw	nem315	; CALL
	db	042h
	dw	nem316
	db	001h
	dw	nem317
	db	001h
	dw	nem320	;d0h
	db	001h
	dw	nem321
	db	013h
	dw	nem322
	db	042h
	dw	nem323
	db	013h
	dw	nem324
	db	001h
	dw	nem325
	db	042h
	dw	nem326
	db	001h
	dw	nem327
	db	001h
	dw	nem330	;d8h
	db	001h
	dw	nem331	;Z80 only
	db	013h
	dw	nem332
	db	042h
	dw	nem333
	db	013h
	dw	nem334
	db	007h
	dw	nem335	;Z80 only - ddh double byte instruction
	db	042h
	dw	nem336
	db	001h
	dw	nem337
	db	001h
	dw	nem340	;e0h
	db	001h
	dw	nem341
	db	013h
	dw	nem342
	db	001h
	dw	nem343
	db	013h
	dw	nem344
	db	001h
	dw	nem345
	db	042h
	dw	nem346
	db	001h
	dw	nem347
	db	001h
	dw	nem350	;e8h
	db	031h
	dw	nem351
	db	013h
	dw	nem352
	db	001h
	dw	nem353
	db	013h
	dw	nem354
	db	007h
	dw	nem355	;Z80 only - edh double byte instruction
	db	042h
	dw	nem356
	db	001h
	dw	nem357
	db	001h
	dw	nem360	;f0h
	db	001h
	dw	nem361
	db	013h
	dw	nem362
	db	001h
	dw	nem363
	db	013h
	dw	nem364
	db	001h
	dw	nem365
	db	042h
	dw	nem366
	db	001h
	dw	nem367
	db	001h
	dw	nem370	;f8h
	db	001h
	dw	nem371
	db	013h
	dw	nem372
	db	001h
	dw	nem373
	db	013h
	dw	nem374
	db	007h
	dw	nem375	;Z80 only - fdh double byte instruction
	db	042h
	dw	nem376
	db	001h
	dw	nem377


;-----------------------------------------------;
;NEMON						;
;						;
;	Table of MNEMONICS text strings		;
;	terminated by a 00h byte		;
;	Note ?  replaced by byte		;
;	     ?? replaced by word		;
;	     @  replaced by relative byte	;
;	     !  signifies skip op code byte	;
;-----------------------------------------------;
NEMON:
nem000:	db	'nop',0			; 000
nem001:	db	'ld',TAB,'bc,??',0	; 001
nem002:	db	'ld',TAB,'(bc),a',0	; 002
nem003:	db	'inc',TAB,'bc',0	; 003
nem004:	db	'inc',TAB,'b',0 	; 004
nem005:	db	'dec',TAB,'b',0 	; 005
nem006:	db	'ld',TAB,'b,?',0	; 006
nem007:	db	'rlca',0		; 007
nem010:	db	'ex',tab,'af,af',27h,0	; 010 Z80 only
nem011:	db	'add',TAB,'hl,bc',0	; 011
nem012:	db	'ld',TAB,'a,(bc)',0	; 012
nem013:	db	'dec',TAB,'bc',0	; 013
nem014:	db	'inc',TAB,'c',0		; 014
nem015:	db	'dec',TAB,'c',0		; 015
nem016:	db	'ld',TAB,'c,?',0	; 016
nem017:	db	'rrca',0		; 017
nem020:	db	'djnz',tab,'@',0	; 020 010h Z80 only
nem021:	db	'ld',TAB,'de,??',0	; 021
nem022:	db	'ld',TAB,'(de),a',0	; 022
nem023:	db	'inc',TAB,'de',0	; 023
nem024:	db	'inc',TAB,'d',0		; 024
nem025:	db	'dec',TAB,'d',0		; 025
nem026:	db	'ld',TAB,'d,?',0	; 026
nem027:	db	'rla',0			; 027
nem030:	db	'jr',tab,'@',0		; 030 Z80 only
nem031:	db	'add',tab,'hl,de',0	; 031
nem032:	db	'ld',TAB,'a,(de)',0	; 032
nem033:	db	'dec',TAB,'de',0	; 033
nem034:	db	'inc',TAB,'e',0		; 034
nem035:	db	'dec',TAB,'e',0		; 035
nem036:	db	'ld',TAB,'e,?',0	; 036
nem037:	db	'rra',0			; 037
nem040:	db	'jr',tab,'nz,@',0	; 040 020h Z80 only
nem041:	db	'ld',TAB,'hl,??',0	; 041
nem042:	db	'ld',TAB,'(??),hl',0	; 042
nem043:	db	'inc',TAB,'hl',0	; 043
nem044:	db	'inc',TAB,'h',0		; 044
nem045:	db	'dec',TAB,'h',0		; 045
nem046:	db	'ld',TAB,'h,?',0	; 046
nem047:	db	'daa',0			; 047
nem050:	db	'jr',tab,'z,@',0	; 050 Z80 only
nem051:	db	'add',tab,'hl,hl',0	; 051
nem052:	db	'ld',TAB,'hl,(??)',0	; 052
nem053:	db	'dec',TAB,'hl',0	; 053
nem054:	db	'inc',TAB,'l',0		; 054
nem055:	db	'dec',TAB,'l',0		; 055
nem056:	db	'ld',TAB,'l,?',0	; 056
nem057:	db	'cpl',0			; 057
nem060:	db	'jr',tab,'nc,@',0	; 060 030h Z80 only
nem061:	db	'ld',TAB,'sp,??',0	; 061
nem062:	db	'ld',TAB,'(??),a',0	; 062
nem063:	db	'inc',TAB,'sp',0	; 063
nem064:	db	'inc',TAB,'(hl)',0	; 064
nem065:	db	'dec',TAB,'(hl)',0	; 065
nem066:	db	'ld',TAB,'(hl),?',0	; 066
nem067:	db	'scf',0			; 067
nem070:	db	'jr',tab,'c,@',0	; 070 Z80 only
nem071:	db	'add',tab,'hl,sp',0	; 071
nem072:	db	'ld',TAB,'a,(??)',0	; 072
nem073:	db	'dec',TAB,'sp',0	; 073
nem074:	db	'inc',TAB,'a',0		; 074
nem075:	db	'dec',TAB,'a',0		; 075
nem076:	db	'ld',TAB,'a,?',0	; 076
nem077:	db	'ccf',0			; 077
nem100:	db	'ld',TAB,'b,b',0 	; 100 040h
nem101:	db	'ld',TAB,'b,c',0	; 101
nem102:	db	'ld',TAB,'b,d',0	; 102
nem103:	db	'ld',TAB,'b,e',0	; 103
nem104:	db	'ld',TAB,'b,h',0	; 104
nem105:	db	'ld',TAB,'b,l',0	; 105
nem106:	db	'ld',TAB,'b,(hl)',0	; 106
nem107:	db	'ld',TAB,'b,a',0	; 107
nem110:	db	'ld',TAB,'c,b',0	; 110
nem111:	db	'ld',TAB,'c,c',0	; 111
nem112:	db	'ld',TAB,'c,d',0	; 112
nem113:	db	'ld',TAB,'c,e',0	; 113
nem114:	db	'ld',TAB,'c,h',0	; 114
nem115:	db	'ld',TAB,'c,l',0	; 115
nem116:	db	'ld',TAB,'c,(hl)',0	; 116
nem117:	db	'ld',TAB,'c,a',0	; 117
nem120:	db	'ld',TAB,'d,b',0	; 120 050h
nem121:	db	'ld',TAB,'d,c',0	; 121
nem122:	db	'ld',TAB,'d,d',0	; 122
nem123:	db	'ld',TAB,'d,e',0	; 123
nem124:	db	'ld',TAB,'d,h',0	; 124
nem125:	db	'ld',TAB,'d,l',0	; 125
nem126:	db	'ld',TAB,'d,(hl)',0	; 126
nem127:	db	'ld',TAB,'d,a',0	; 127
nem130:	db	'ld',TAB,'e,b',0	; 130
nem131:	db	'ld',TAB,'e,c',0	; 131
nem132:	db	'ld',TAB,'e,d',0	; 132
nem133:	db	'ld',TAB,'e,e',0	; 133
nem134:	db	'ld',TAB,'e,h',0	; 134
nem135:	db	'ld',TAB,'e,l',0	; 135
nem136:	db	'ld',TAB,'e,(hl)',0	; 136
nem137:	db	'ld',TAB,'e,a',0	; 137
nem140:	db	'ld',TAB,'h,b',0	; 140 060h
nem141:	db	'ld',TAB,'h,c',0	; 141
nem142:	db	'ld',TAB,'h,d',0	; 142
nem143:	db	'ld',TAB,'h,e',0	; 143
nem144:	db	'ld',TAB,'h,h',0	; 144
nem145:	db	'ld',TAB,'h,l',0	; 145
nem146:	db	'ld',TAB,'h,(hl)',0	; 146
nem147:	db	'ld',TAB,'h,a',0	; 147
nem150:	db	'ld',TAB,'l,b',0	; 150
nem151:	db	'ld',TAB,'l,c',0	; 151
nem152:	db	'ld',TAB,'l,d',0	; 152
nem153:	db	'ld',TAB,'l,e',0	; 153
nem154:	db	'ld',TAB,'l,h',0	; 154
nem155:	db	'ld',TAB,'l,l',0	; 155
nem156:	db	'ld',TAB,'l,(hl)',0	; 156
nem157:	db	'ld',TAB,'l,a',0	; 157
nem160:	db	'ld',TAB,'(hl),b',0	; 160 070h
nem161:	db	'ld',TAB,'(hl),c',0	; 161
nem162:	db	'ld',TAB,'(hl),d',0	; 162
nem163:	db	'ld',TAB,'(hl),e',0	; 163
nem164:	db	'ld',TAB,'(hl),h',0	; 164
nem165:	db	'ld',TAB,'(hl),l',0	; 165
nem166:	db	'halt',0		; 166
nem167:	db	'ld',TAB,'(hl),a',0	; 167
nem170:	db	'ld',TAB,'a,b',0	; 170
nem171:	db	'ld',TAB,'a,c',0	; 171
nem172:	db	'ld',TAB,'a,d',0	; 172
nem173:	db	'ld',TAB,'a,e',0	; 173
nem174:	db	'ld',TAB,'a,h',0	; 174
nem175:	db	'ld',TAB,'a,l',0	; 175
nem176:	db	'ld',TAB,'a,(hl)',0	; 176
nem177:	db	'ld',TAB,'a,a',0	; 177
nem200:	db	'add',TAB,'a,b',0	; 200 080h
nem201:	db	'add',TAB,'a,c',0	; 201
nem202:	db	'add',TAB,'a,d',0	; 202
nem203:	db	'add',TAB,'a,e',0	; 203
nem204:	db	'add',TAB,'a,h',0	; 204
nem205:	db	'add',TAB,'a,l',0	; 205
nem206:	db	'add',TAB,'a,(hl)',0	; 206
nem207:	db	'add',TAB,'a,a',0	; 207
nem210:	db	'adc',TAB,'a,b',0	; 210
nem211:	db	'adc',TAB,'a,c',0	; 211
nem212:	db	'adc',TAB,'a,d',0	; 212
nem213:	db	'adc',TAB,'a,e',0	; 213
nem214:	db	'adc',TAB,'a,h',0	; 214
nem215:	db	'adc',TAB,'a,l',0	; 215
nem216:	db	'adc',TAB,'a,(hl)',0	; 216
nem217:	db	'adc',TAB,'a,a',0	; 217
nem220:	db	'sub',TAB,'b',0		; 220 090h
nem221:	db	'sub',TAB,'c',0		; 221
nem222:	db	'sub',TAB,'d',0		; 222
nem223:	db	'sub',TAB,'e',0		; 223
nem224:	db	'sub',TAB,'h',0		; 224
nem225:	db	'sub',TAB,'l',0		; 225
nem226:	db	'sub',TAB,'(hl)',0	; 226
nem227:	db	'sub',TAB,'a',0		; 227
nem230:	db	'sbc',TAB,'a,b',0	; 230
nem231:	db	'sbc',TAB,'a,c',0	; 231
nem232:	db	'sbc',TAB,'a,d',0	; 232
nem233:	db	'sbc',TAB,'a,e',0	; 233
nem234:	db	'sbc',TAB,'a,h',0	; 234
nem235:	db	'sbc',TAB,'a,l',0	; 235
nem236:	db	'sbc',TAB,'a,(hl)',0	; 236
nem237:	db	'sbc',TAB,'a,a',0	; 237
nem240:	db	'and',TAB,'b',0		; 240 0a0h
nem241:	db	'and',TAB,'c',0		; 241
nem242:	db	'and',TAB,'d',0		; 242
nem243:	db	'and',TAB,'e',0		; 243
nem244:	db	'and',TAB,'h',0		; 244
nem245:	db	'and',TAB,'l',0		; 245
nem246:	db	'and',TAB,'(hl)',0	; 246
nem247:	db	'and',TAB,'a',0		; 247
nem250:	db	'xor',TAB,'b',0		; 250
nem251:	db	'xor',TAB,'c',0		; 251
nem252:	db	'xor',TAB,'d',0		; 252
nem253:	db	'xor',TAB,'e',0		; 253
nem254:	db	'xor',TAB,'h',0		; 254
nem255:	db	'xor',TAB,'l',0		; 255
nem256:	db	'xor',TAB,'(hl)',0	; 256
nem257:	db	'xor',TAB,'a',0		; 257
nem260:	db	'or',TAB,'b',0		; 260 0b0h
nem261:	db	'or',TAB,'c',0		; 261
nem262:	db	'or',TAB,'d',0		; 262
nem263:	db	'or',TAB,'e',0		; 263
nem264:	db	'or',TAB,'h',0		; 264
nem265:	db	'or',TAB,'l',0		; 265
nem266:	db	'or',TAB,'(hl)',0	; 266
nem267:	db	'or',TAB,'a',0		; 267
nem270:	db	'cp',TAB,'b',0		; 270
nem271:	db	'cp',TAB,'c',0		; 271
nem272:	db	'cp',TAB,'d',0		; 272
nem273:	db	'cp',TAB,'e',0		; 273
nem274:	db	'cp',TAB,'h',0		; 274
nem275:	db	'cp',TAB,'l',0		; 275
nem276:	db	'cp',TAB,'(hl)',0	; 276
nem277:	db	'cp',TAB,'a',0		; 277
nem300:	db	'ret',TAB,'nz',0	; 300 0c0h
nem301:	db	'pop',TAB,'bc',0	; 301
nem302:	db	'jp',TAB,'nz,??',0	; 302
nem303:	db	'jp',TAB,'??',0		; 303
nem304:	db	'call',TAB,'nz,??',0	; 304
nem305:	db	'push',TAB,'bc',0	; 305
nem306:	db	'add',TAB,'a,?',0	; 306
nem307:	db	'rst',TAB,'00h',0	; 307
nem310:	db	'ret',TAB,'z',0		; 310
nem311:	db	'ret',0			; 311
nem312:	db	'jp',TAB,'z,??',0	; 312
nem313:	db	0			; 313 0cbh multi byte instruction
nem314:	db	'call',TAB,'z,??',0	; 314
nem315:	db	'call',TAB,'??',0	; 315
nem316:	db	'adc',TAB,'a,?',0	; 316
nem317:	db	'rst',TAB,'08h',0	; 317
nem320:	db	'ret',TAB,'nc',0	; 320 0d0h
nem321:	db	'pop',TAB,'de',0	; 321
nem322:	db	'jp',TAB,'nc,??',0	; 322
nem323:	db	'out',TAB,'(?),a',0	; 323
nem324:	db	'call',TAB,'nc,??',0	; 324
nem325:	db	'push',TAB,'de',0	; 325
nem326:	db	'sub',TAB,'?',0		; 326
nem327:	db	'rst',TAB,'10h',0	; 327
nem330:	db	'ret',TAB,'c',0		; 330
nem331:	db	'exx',0			; 331 Z80 only
nem332:	db	'jp',TAB,'c,??',0	; 332
nem333:	db	'in',TAB,'a,(?)',0	; 333
nem334:	db	'call',TAB,'c,??',0	; 334
nem335:	db	0			; 335 0ddh multi byte instruction
nem336:	db	'sbc',TAB,'a,?',0	; 336
nem337:	db	'rst',TAB,'18h',0	; 337
nem340:	db	'ret',TAB,'po',0	; 340 0e0h
nem341:	db	'pop',TAB,'hl',0	; 341
nem342:	db	'jp',TAB,'po,??',0	; 342
nem343:	db	'ex',TAB,'(sp),hl',0	; 343
nem344:	db	'call',TAB,'po,??',0	; 344
nem345:	db	'push',TAB,'hl',0	; 345
nem346:	db	'and',TAB,'?',0		; 346
nem347:	db	'rst',TAB,'20h',0	; 347
nem350:	db	'ret',TAB,'pe',0	; 350
nem351:	db	'jp',TAB,'(hl)',0	; 351
nem352:	db	'jp',TAB,'pe,??',0	; 352
nem353:	db	'ex',TAB,'de,hl',0	; 353
nem354:	db	'call',TAB,'pe,??',0	; 354
nem355:	db	0			; 355 0edh multi byte instruction
nem356:	db	'xor',TAB,'?',0		; 356
nem357:	db	'rst',TAB,'28h',0	; 357
nem360:	db	'ret',TAB,'p',0		; 360 0f0h
nem361:	db	'pop',TAB,'af',0	; 361
nem362:	db	'jp',TAB,'p,??',0	; 362
nem363:	db	'di',0			; 363
nem364:	db	'call',TAB,'p,??',0	; 364
nem365:	db	'push',TAB,'af',0	; 365
nem366:	db	'or',TAB,'?',0		; 366
nem367:	db	'rst',TAB,'30h',0	; 367
nem370:	db	'ret',TAB,'m',0		; 370
nem371:	db	'ld',TAB,'sp,hl',0	; 371
nem372:	db	'jp',TAB,'m,??',0	; 372
nem373:	db	'ei',0			; 373
nem374:	db	'call',TAB,'m,??',0	; 374
nem375:	db	0			; 375 0fdh multi byte instruction
nem376:	db	'cp',TAB,'?',0		; 376
nem377:	db	'rst',TAB,'38h',0	; 377

; Z80 2nd instruction byte to 0cbh
set$cb:
	db	001h
	dw	cb$000	; 00h RLC b
	db	001h
	dw	cb$001	; 01h RLC c
	db	001h
	dw	cb$002	; 02h RLC d
	db	001h
	dw	cb$003	; 03h RLC e
	db	001h
	dw	cb$004	; 04h RLC h
	db	001h
	dw	cb$005	; 05h RLC l
	db	001h
	dw	cb$006	; 06h RLC (hl)
	db	001h
	dw	cb$007	; 07h RLC a
	db	001h
	dw	cb$010	; 08h RRC b
	db	001h
	dw	cb$011	; 09h RRC c
	db	001h
	dw	cb$012	; 0ah RRC d
	db	001h
	dw	cb$013	; 0bh RRC e
	db	001h
	dw	cb$014	; 0ch RRC h
	db	001h
	dw	cb$015	; 0dh RRC l
	db	001h
	dw	cb$016	; 0eh RRC (hl)
	db	001h
	dw	cb$017	; 0fh RRC a
	db	001h
	dw	cb$020	; 10h RL b
	db	001h
	dw	cb$021	; 11h RL c
	db	001h
	dw	cb$022	; 12h RL d
	db	001h
	dw	cb$023	; 13h RL e
	db	001h
	dw	cb$024	; 14h RL h
	db	001h
	dw	cb$025	; 15h RL l
	db	001h
	dw	cb$026	; 16h RL (hl)
	db	001h
	dw	cb$027	; 17h RL a
	db	001h
	dw	cb$03°	; 18h RR b
	db	001h
	dw	cb$031	; 19h RR c
	db	001h
	dw	cb$032	; 1ah RR d
	db	001h
	dw	cb$033	; 1bh RR e
	db	001h
	dw	cb$034	; 1ch RR h
	db	001h
	dw	cb$035	; 1dh RR l
	db	001h
	dw	cb$036	; 1eh RR (hl)
	db	001h
	dw	cb$037	; 1fh RR a
	db	001h
	dw	cb$040	; 20h SLA b
	db	001h
	dw	cb$041	; 21h SLA c
	db	001h
	dw	cb$042	; 22h SLA d
	db	001h
	dw	cb$043	; 23h SLA e
	db	001h
	dw	cb$044	; 24h SLA h
	db	001h
	dw	cb$045	; 25h SLA l
	db	001h
	dw	cb$046	; 26h SLA (hl)
	db	001h
	dw	cb$047	; 27h SLA a
	db	001h
	dw	cb$050	; 28h SRA b
	db	001h
	dw	cb$051	; 29h SRA c
	db	001h
	dw	cb$052	; 2ah SRA d
	db	001h
	dw	cb$053	; 2bh SRA e
	db	001h
	dw	cb$054	; 2ch SRA h
	db	001h
	dw	cb$055	; 2dh SRA l
	db	001h
	dw	cb$056	; 2eh SRA (hl)
	db	001h
	dw	cb$057	; 2fh SRA a
	db	000h
	dw	cb$060	; 30h
	db	000h
	dw	cb$061	; 31h
	db	000h
	dw	cb$062	; 32h
	db	000h
	dw	cb$063	; 33h
	db	000h
	dw	cb$064	; 34h
	db	000h
	dw	cb$065	; 35h
	db	000h
	dw	cb$066	; 36h
	db	000h
	dw	cb$067	; 37h
	db	001h
	dw	cb$070	; 38h SRL b
	db	001h
	dw	cb$071	; 39h SRL c
	db	001h
	dw	cb$072	; 3ah SRL d
	db	001h
	dw	cb$073	; 3bh SRL e
	db	001h
	dw	cb$074	; 3ch SRL h
	db	001h
	dw	cb$075	; 3dh SRL l
	db	001h
	dw	cb$076	; 3eh SRL (hl)
	db	001h
	dw	cb$077	; 3fh SRL a
	db	001h
	dw	cb$100	; 40h bit 0,b
	db	001h
	dw	cb$101	; 41h bit 0,c
	db	001h
	dw	cb$102	; 42h bit 0,d
	db	001h
	dw	cb$103	; 43h bit 0,e
	db	001h
	dw	cb$104	; 44h bit 0,h
	db	001h
	dw	cb$105	; 45h bit 0,l
	db	001h
	dw	cb$106	; 46h bit 0,(hl)
	db	001h
	dw	cb$107	; 47h bit 0,a
	db	001h
	dw	cb$110	; 48h bit 1,b
	db	001h
	dw	cb$111	; 49h bit 1,c
	db	001h
	dw	cb$112	; 4ah bit 1,d
	db	001h
	dw	cb$113	; 4bh bit 1,e
	db	001h
	dw	cb$114	; 4ch bit 1,h
	db	001h
	dw	cb$115	; 4dh bit 1,l
	db	001h
	dw	cb$116	; 4eh bit 1,(hl)
	db	001h
	dw	cb$117	; 4fh bit 1,a
	db	001h
	dw	cb$120	; 50h bit 2,b
	db	001h
	dw	cb$121	; 51h bit 2,c
	db	001h
	dw	cb$122	; 52h bit 2,d
	db	001h
	dw	cb$123	; 53h bit 2,e
	db	001h
	dw	cb$124	; 54h bit 2,h
	db	001h
	dw	cb$125	; 55h bit 2,l
	db	001h
	dw	cb$126	; 56h bit 2,(hl)
	db	001h
	dw	cb$127	; 57h bit 2,a
	db	001h
	dw	cb$130	; 58h bit 3,b
	db	001h
	dw	cb$131	; 59h bit 3,c
	db	001h
	dw	cb$132	; 5ah bit 3,d
	db	001h
	dw	cb$133	; 5bh bit 3,e
	db	001h
	dw	cb$134	; 5ch bit 3,h
	db	001h
	dw	cb$135	; 5dh bit 3,l
	db	001h
	dw	cb$136	; 5eh bit 3,(hl)
	db	001h
	dw	cb$137	; 5fh bit 3,a
	db	001h
	dw	cb$140	; 60h bit 4,b
	db	001h
	dw	cb$141	; 61h bit 4,c
	db	001h
	dw	cb$142	; 62h bit 4,d
	db	001h
	dw	cb$143	; 63h bit 4,e
	db	001h
	dw	cb$144	; 64h bit 4,h
	db	001h
	dw	cb$145	; 65h bit 4,l
	db	001h
	dw	cb$146	; 66h bit 4,(hl)
	db	001h
	dw	cb$147	; 67h bit 4,a
	db	001h
	dw	cb$150	; 68h bit 5,b
	db	001h
	dw	cb$151	; 69h bit 5,c
	db	001h
	dw	cb$152	; 6ah bit 5,d
	db	001h
	dw	cb$153	; 6bh bit 5,e
	db	001h
	dw	cb$154	; 6ch bit 5,h
	db	001h
	dw	cb$155	; 6dh bit 5,l
	db	001h
	dw	cb$156	; 6eh bit 5,(hl)
	db	001h
	dw	cb$157	; 6fh bit 5,a
	db	001h
	dw	cb$160	; 70h bit 6,b
	db	001h
	dw	cb$161	; 71h bit 6,c
	db	001h
	dw	cb$162	; 72h bit 6,d
	db	001h
	dw	cb$163	; 73h bit 6,e
	db	001h
	dw	cb$164	; 74h bit 6,h
	db	001h
	dw	cb$165	; 75h bit 6,l
	db	001h
	dw	cb$166	; 76h bit 6,(hl)
	db	001h
	dw	cb$167	; 77h bit 6,a
	db	001h
	dw	cb$170	; 78h bit 7,b
	db	001h
	dw	cb$171	; 79h bit 7,c
	db	001h
	dw	cb$172	; 7ah bit 7,d
	db	001h
	dw	cb$173	; 7bh bit 7,e
	db	001h
	dw	cb$174	; 7ch bit 7,h
	db	001h
	dw	cb$175	; 7dh bit 7,l
	db	001h
	dw	cb$176	; 7eh bit 7,(hl)
	db	001h
	dw	cb$177	; 7fh bit 7,a
	db	001h
	dw	cb$200	; 80h res 0,b
	db	001h
	dw	cb$201	; 81h res 0,c
	db	001h
	dw	cb$202	; 82h res 0,d
	db	001h
	dw	cb$203	; 83h res 0,e
	db	001h
	dw	cb$204	; 84h res 0,h
	db	001h
	dw	cb$205	; 85h res 0,l
	db	001h
	dw	cb$206	; 86h res 0,(hl)
	db	001h
	dw	cb$207	; 87h res 0,a
	db	001h
	dw	cb$210	; 88h res 1,b
	db	001h
	dw	cb$211	; 89h res 1,c
	db	001h
	dw	cb$212	; 8ah res 1,d
	db	001h
	dw	cb$213	; 8bh res 1,e
	db	001h
	dw	cb$214	; 8ch res 1,h
	db	001h
	dw	cb$215	; 8dh res 1,l
	db	001h
	dw	cb$216	; 8eh res 1,(hl)
	db	001h
	dw	cb$217	; 8fh res 1,a
	db	001h
	dw	cb$220	; 90h res 2,b
	db	001h
	dw	cb$221	; 91h res 2,c
	db	001h
	dw	cb$222	; 92h res 2,d
	db	001h
	dw	cb$223	; 93h res 2,e
	db	001h
	dw	cb$224	; 94h res 2,h
	db	001h
	dw	cb$225	; 95h res 2,l
	db	001h
	dw	cb$226	; 96h res 2,(hl)
	db	001h
	dw	cb$227	; 97h res 2,a
	db	001h
	dw	cb$230	; 98h res 3,b
	db	001h
	dw	cb$231	; 99h res 3,c
	db	001h
	dw	cb$232	; 9ah res 3,d
	db	001h
	dw	cb$233	; 9bh res 3,e
	db	001h
	dw	cb$234	; 9ch res 3,h
	db	001h
	dw	cb$235	; 9dh res 3,l
	db	001h
	dw	cb$236	; 9eh res 3,(hl)
	db	001h
	dw	cb$237	; 9fh res 3,a
	db	001h
	dw	cb$240	; 0a0h res 4,b
	db	001h
	dw	cb$241	; 0a1h res 4,c
	db	001h
	dw	cb$242	; 0a2h res 4,d
	db	001h
	dw	cb$243	; 0a3h res 4,e
	db	001h
	dw	cb$244	; 0a4h res 4,h
	db	001h
	dw	cb$245	; 0a5h res 4,l
	db	001h
	dw	cb$246	; 0a6h res 4,(hl)
	db	001h
	dw	cb$247	; 0a7h res 4,a
	db	001h
	dw	cb$250	; 0a8h res 5,b
	db	001h
	dw	cb$251	; 0a9h res 5,c
	db	001h
	dw	cb$252	; 0aah res 5,d
	db	001h
	dw	cb$253	; 0abh res 5,e
	db	001h
	dw	cb$254	; 0ach res 5,h
	db	001h
	dw	cb$255	; 0adh res 5,l
	db	001h
	dw	cb$256	; 0aeh res 5,(hl)
	db	001h
	dw	cb$257	; 0afh res 5,a
	db	001h
	dw	cb$260	; 0b0h res 6,b
	db	001h
	dw	cb$261	; 0b1h res 6,c
	db	001h
	dw	cb$262	; 0b2h res 6,d
	db	001h
	dw	cb$263	; 0b3h res 6,e
	db	001h
	dw	cb$264	; 0b4h res 6,h
	db	001h
	dw	cb$265	; 0b5h res 6,l
	db	001h
	dw	cb$266	; 0b6h res 6,(hl)
	db	001h
	dw	cb$267	; 0b7h res 6,a
	db	001h
	dw	cb$270	; 0b8h res 7,b
	db	001h
	dw	cb$271	; 0b9h res 7,c
	db	001h
	dw	cb$272	; 0bah res 7,d
	db	001h
	dw	cb$273	; 0bbh res 7,e
	db	001h
	dw	cb$274	; 0bch res 7,h
	db	001h
	dw	cb$275	; 0bdh res 7,l
	db	001h
	dw	cb$276	; 0beh res 7,(hl)
	db	001h
	dw	cb$277	; 0bfh res 7,a
	db	001h
	dw	cb$300	; 0c0h set 0,b
	db	001h
	dw	cb$301	; 0c1h set 0,c
	db	001h
	dw	cb$302	; 0c2h set 0,d
	db	001h
	dw	cb$303	; 0c3h set 0,e
	db	001h
	dw	cb$304	; 0c4h set 0,h
	db	001h
	dw	cb$305	; 0c5h set 0,l
	db	001h
	dw	cb$306	; 0c6h set 0,(hl)
	db	001h
	dw	cb$307	; 0c7h set 0,a
	db	001h
	dw	cb$310	; 0c8h set 1,b
	db	001h
	dw	cb$311	; 0c9h set 1,c
	db	001h
	dw	cb$312	; 0cah set 1,d
	db	001h
	dw	cb$313	; 0cbh set 1,e
	db	001h
	dw	cb$314	; 0cch set 1,h
	db	001h
	dw	cb$315	; 0cdh set 1,l
	db	001h
	dw	cb$316	; 0ceh set 1,(hl)
	db	001h
	dw	cb$317	; 0cfh set 1,a
	db	001h
	dw	cb$320	; 0d0h set 2,b
	db	001h
	dw	cb$321	; 0d1h set 2,c
	db	001h
	dw	cb$322	; 0d2h set 2,d
	db	001h
	dw	cb$323	; 0d3h set 2,e
	db	001h
	dw	cb$324	; 0d4h set 2,h
	db	001h
	dw	cb$325	; 0d5h set 2,l
	db	001h
	dw	cb$326	; 0d6h set 2,(hl)
	db	001h
	dw	cb$327	; 0d7h set 2,a
	db	001h
	dw	cb$330	; 0d8h set 3,b
	db	001h
	dw	cb$331	; 0d9h set 3,c
	db	001h
	dw	cb$332	; 0dah set 3,d
	db	001h
	dw	cb$333	; 0dbh set 3,e
	db	001h
	dw	cb$334	; 0dch set 3,h
	db	001h
	dw	cb$335	; 0ddh set 3,l
	db	001h
	dw	cb$336	; 0deh set 3,(hl)
	db	001h
	dw	cb$337	; 0dfh set 3,a
	db	001h
	dw	cb$340	; 0e0h set 4,b
	db	001h
	dw	cb$341	; 0e1h set 4,c
	db	001h
	dw	cb$342	; 0e2h set 4,d
	db	001h
	dw	cb$343	; 0e3h set 4,e
	db	001h
	dw	cb$344	; 0e4h set 4,h
	db	001h
	dw	cb$345	; 0e5h set 4,l
	db	001h
	dw	cb$346	; 0e6h set 4,(hl)
	db	001h
	dw	cb$347	; 0e7h set 4,a
	db	001h
	dw	cb$350	; 0e8h set 5,b
	db	001h
	dw	cb$351	; 0e9h set 5,c
	db	001h
	dw	cb$352	; 0eah set 5,d
	db	001h
	dw	cb$353	; 0ebh set 5,e
	db	001h
	dw	cb$354	; 0ech set 5,h
	db	001h
	dw	cb$355	; 0edh set 5,l
	db	001h
	dw	cb$356	; 0eeh set 5,(hl)
	db	001h
	dw	cb$357	; 0efh set 5,a
	db	001h
	dw	cb$360	; 0f0h set 6,b
	db	001h
	dw	cb$361	; 0f1h set 6,c
	db	001h
	dw	cb$362	; 0f2h set 6,d
	db	001h
	dw	cb$363	; 0f3h set 6,e
	db	001h
	dw	cb$364	; 0f4h set 6,h
	db	001h
	dw	cb$365	; 0f5h set 6,l
	db	001h
	dw	cb$366	; 0f6h set 6,(hl)
	db	001h
	dw	cb$367	; 0f7h set 6,a
	db	001h
	dw	cb$370	; 0f8h set 7,b
	db	001h
	dw	cb$371	; 0f9h set 7,c
	db	001h
	dw	cb$372	; 0fah set 7,d
	db	001h
	dw	cb$373	; 0fbh set 7,e
	db	001h
	dw	cb$374	; 0fch set 7,h
	db	001h
	dw	cb$375	; 0fdh set 7,l
	db	001h
	dw	cb$376	; 0feh set 7,(hl)
	db	001h
	dw	cb$377	; 0ffh set 7,a

;-----------------------------------------------;
;	Table of MNEMONICS text strings		;
;	- 2nd instruction byte to 0cbh -	;
;	terminated by a 00h byte		;
;	Note ?  replaced by byte		;
;	     ?? replaced by word		;
;	     @  replaced by relative byte	;
;	     !  signifies skip op code byte	;
;-----------------------------------------------;

cb$000:	db	'rlc',TAB,'b',0		; 000 0cbh + 000h
cb$001:	db	'rlc',TAB,'c',0		; 001
cb$002:	db	'rlc',TAB,'d',0		; 002
cb$003:	db	'rlc',TAB,'e',0		; 003
cb$004:	db	'rlc',TAB,'h',0		; 004
cb$005:	db	'rlc',TAB,'l',0		; 005
cb$006:	db	'rlc',TAB,'(hl)',0	; 006
cb$007:	db	'rlc',TAB,'a',0		; 007
cb$010:	db	'rrc',TAB,'b',0		; 010 008h
cb$011:	db	'rrc',TAB,'c',0		; 011
cb$012:	db	'rrc',TAB,'d',0		; 012
cb$013:	db	'rrc',TAB,'e',0		; 013
cb$014:	db	'rrc',TAB,'h',0		; 014
cb$015:	db	'rrc',TAB,'l',0		; 015
cb$016:	db	'rrc',TAB,'(hl)',0	; 016
cb$017:	db	'rrc',TAB,'a',0		; 017
cb$020:	db	'rl',TAB,'b',0		; 020 010h
cb$021:	db	'rl',TAB,'c',0		; 021
cb$022:	db	'rl',TAB,'d',0		; 022
cb$023:	db	'rl',TAB,'e',0		; 023
cb$024:	db	'rl',TAB,'h',0		; 024
cb$025:	db	'rl',TAB,'l',0		; 025
cb$026:	db	'rl',TAB,'(hl)',0	; 026
cb$027:	db	'rl',TAB,'a',0		; 027
cb$03°:	db	'rr',TAB,'b',°		; 03° 018h
cb$031:	db	'rr',TAB,'c',0		; 031
cb$032:	db	'rr',TAB,'d',0		; 032
cb$033:	db	'rr',TAB,'e',0		; 033
cb$034:	db	'rr',TAB,'h',0		; 034
cb$035:	db	'rr',TAB,'l',0		; 035
cb$036:	db	'rr',TAB,'(hl)',0	; 036
cb$037:	db	'rr',TAB,'a',0		; 037
cb$040:	db	'sla',TAB,'b',0		; 040 020h
cb$041:	db	'sla',TAB,'c',0		; 041
cb$042:	db	'sla',TAB,'d',0		; 042
cb$043:	db	'sla',TAB,'e',0		; 043
cb$044:	db	'sla',TAB,'h',0		; 044
cb$045:	db	'sla',TAB,'l',0		; 045
cb$046:	db	'sla',TAB,'(hl)',0	; 046
cb$047:	db	'sla',TAB,'a',0		; 047
cb$050:	db	'sra',TAB,'b',0		; 050 028h
cb$051:	db	'sra',TAB,'c',0		; 051
cb$052:	db	'sra',TAB,'d',0		; 052
cb$053:	db	'sra',TAB,'e',0		; 053
cb$054:	db	'sra',TAB,'h',0		; 054
cb$055:	db	'sra',TAB,'l',0		; 055
cb$056:	db	'sra',TAB,'(hl)',0	; 056
cb$057:	db	'sra',TAB,'a',0		; 057
cb$060:	db	0			; 060 030h
cb$061:	db	0			; 061
cb$062:	db	0			; 062
cb$063:	db	0			; 063
cb$064:	db	0			; 064
cb$065:	db	0			; 065
cb$066:	db	0			; 066
cb$067:	db	0			; 067
cb$070:	db	'srl',TAB,'b',0		; 070 038h
cb$071:	db	'srl',TAB,'c',0		; 071
cb$072:	db	'srl',TAB,'d',0		; 072
cb$073:	db	'srl',TAB,'e',0		; 073
cb$074:	db	'srl',TAB,'h',0		; 074
cb$075:	db	'srl',TAB,'l',0		; 075
cb$076:	db	'srl',TAB,'(hl)',0	; 076
cb$077:	db	'srl',TAB,'a',0		; 077
cb$100:	db	'bit',TAB,'0,b',0	; 100 040h
cb$101:	db	'bit',TAB,'0,c',0	; 101
cb$102:	db	'bit',TAB,'0,d',0	; 102
cb$103:	db	'bit',TAB,'0,e',0	; 103
cb$104:	db	'bit',TAB,'0,h',0	; 104
cb$105:	db	'bit',TAB,'0,l',0	; 105
cb$106:	db	'bit',TAB,'0,(hl)',0	; 106
cb$107:	db	'bit',TAB,'0,a',0	; 107
cb$110:	db	'bit',TAB,'1,b',0	; 110 048h
cb$111:	db	'bit',TAB,'1,c',0	; 111
cb$112:	db	'bit',TAB,'1,d',0	; 112
cb$113:	db	'bit',TAB,'1,e',0	; 113
cb$114:	db	'bit',TAB,'1,h',0	; 114
cb$115:	db	'bit',TAB,'1,l',0	; 115
cb$116:	db	'bit',TAB,'1,(hl)',0	; 116
cb$117:	db	'bit',TAB,'1,a',0	; 117
cb$120:	db	'bit',TAB,'2,b',0	; 120 050h
cb$121:	db	'bit',TAB,'2,c',0	; 121
cb$122:	db	'bit',TAB,'2,d',0	; 122
cb$123:	db	'bit',TAB,'2,e',0	; 123
cb$124:	db	'bit',TAB,'2,h',0	; 124
cb$125:	db	'bit',TAB,'2,l',0	; 125
cb$126:	db	'bit',TAB,'2,(hl)',0	; 126
cb$127:	db	'bit',TAB,'2,a',0	; 127
cb$130:	db	'bit',TAB,'3,b',0	; 130 058h
cb$131:	db	'bit',TAB,'3,c',0	; 131
cb$132:	db	'bit',TAB,'3,d',0	; 132
cb$133:	db	'bit',TAB,'3,e',0	; 133
cb$134:	db	'bit',TAB,'3,h',0	; 134
cb$135:	db	'bit',TAB,'3,l',0	; 135
cb$136:	db	'bit',TAB,'3,(hl)',0	; 136
cb$137:	db	'bit',TAB,'3,a',0	; 137
cb$140:	db	'bit',TAB,'4,b',0	; 140 060h
cb$141:	db	'bit',TAB,'4,c',0	; 141
cb$142:	db	'bit',TAB,'4,d',0	; 142
cb$143:	db	'bit',TAB,'4,e',0	; 143
cb$144:	db	'bit',TAB,'4,h',0	; 144
cb$145:	db	'bit',TAB,'4,l',0	; 145
cb$146:	db	'bit',TAB,'4,(hl)',0	; 146
cb$147:	db	'bit',TAB,'4,a',0	; 147
cb$150:	db	'bit',TAB,'5,b',0	; 150 068h
cb$151:	db	'bit',TAB,'5,c',0	; 151
cb$152:	db	'bit',TAB,'5,d',0	; 152
cb$153:	db	'bit',TAB,'5,e',0	; 153
cb$154:	db	'bit',TAB,'5,h',0	; 154
cb$155:	db	'bit',TAB,'5,l',0	; 155
cb$156:	db	'bit',TAB,'5,(hl)',0	; 156
cb$157:	db	'bit',TAB,'5,a',0	; 157
cb$160:	db	'bit',TAB,'6,b',0	; 160 070h
cb$161:	db	'bit',TAB,'6,c',0	; 161
cb$162:	db	'bit',TAB,'6,d',0	; 162
cb$163:	db	'bit',TAB,'6,e',0	; 163
cb$164:	db	'bit',TAB,'6,h',0	; 164
cb$165:	db	'bit',TAB,'6,l',0	; 165
cb$166:	db	'bit',TAB,'6,(hl)',0	; 166
cb$167:	db	'bit',TAB,'6,a',0	; 167
cb$170:	db	'bit',TAB,'7,b',0	; 170 070h
cb$171:	db	'bit',TAB,'7,c',0	; 171
cb$172:	db	'bit',TAB,'7,d',0	; 172
cb$173:	db	'bit',TAB,'7,e',0	; 173
cb$174:	db	'bit',TAB,'7,h',0	; 174
cb$175:	db	'bit',TAB,'7,l',0	; 175
cb$176:	db	'bit',TAB,'7,(hl)',0	; 176
cb$177:	db	'bit',TAB,'7,a',0	; 177
cb$200:	db	'res',TAB,'0,b',0	; 200 080h
cb$201:	db	'res',TAB,'0,c',0	; 201
cb$202:	db	'res',TAB,'0,d',0	; 202
cb$203:	db	'res',TAB,'0,e',0	; 203
cb$204:	db	'res',TAB,'0,h',0	; 204
cb$205:	db	'res',TAB,'0,l',0	; 205
cb$206:	db	'res',TAB,'0,(hl)',0	; 206
cb$207:	db	'res',TAB,'0,a',0	; 207
cb$210:	db	'res',TAB,'1,b',0	; 210 088h
cb$211:	db	'res',TAB,'1,c',0	; 211
cb$212:	db	'res',TAB,'1,d',0	; 212
cb$213:	db	'res',TAB,'1,e',0	; 213
cb$214:	db	'res',TAB,'1,h',0	; 214
cb$215:	db	'res',TAB,'1,l',0	; 215
cb$216:	db	'res',TAB,'1,(hl)',0	; 216
cb$217:	db	'res',TAB,'1,a',0	; 217
cb$220:	db	'res',TAB,'2,b',0	; 220 090h
cb$221:	db	'res',TAB,'2,c',0	; 221
cb$222:	db	'res',TAB,'2,d',0	; 222
cb$223:	db	'res',TAB,'2,e',0	; 223
cb$224:	db	'res',TAB,'2,h',0	; 224
cb$225:	db	'res',TAB,'2,l',0	; 225
cb$226:	db	'res',TAB,'2,(hl)',0	; 226
cb$227:	db	'res',TAB,'2,a',0	; 227
cb$230:	db	'res',TAB,'3,b',0	; 230 098h
cb$231:	db	'res',TAB,'3,c',0	; 231
cb$232:	db	'res',TAB,'3,d',0	; 232
cb$233:	db	'res',TAB,'3,e',0	; 233
cb$234:	db	'res',TAB,'3,h',0	; 234
cb$235:	db	'res',TAB,'3,l',0	; 235
cb$236:	db	'res',TAB,'3,(hl)',0	; 236
cb$237:	db	'res',TAB,'3,a',0	; 237
cb$240:	db	'res',TAB,'4,b',0	; 240 0A0h
cb$241:	db	'res',TAB,'4,c',0	; 241
cb$242:	db	'res',TAB,'4,d',0	; 242
cb$243:	db	'res',TAB,'4,e',0	; 243
cb$244:	db	'res',TAB,'4,h',0	; 244
cb$245:	db	'res',TAB,'4,l',0	; 245
cb$246:	db	'res',TAB,'4,(hl)',0	; 246
cb$247:	db	'res',TAB,'4,a',0	; 247
cb$250:	db	'res',TAB,'5,b',0	; 250 0A8h
cb$251:	db	'res',TAB,'5,c',0	; 251
cb$252:	db	'res',TAB,'5,d',0	; 252
cb$253:	db	'res',TAB,'5,e',0	; 253
cb$254:	db	'res',TAB,'5,h',0	; 254
cb$255:	db	'res',TAB,'5,l',0	; 255
cb$256:	db	'res',TAB,'5,(hl)',0	; 256
cb$257:	db	'res',TAB,'5,a',0	; 257
cb$260:	db	'res',TAB,'6,b',0	; 260 0B0h
cb$261:	db	'res',TAB,'6,c',0	; 261
cb$262:	db	'res',TAB,'6,d',0	; 262
cb$263:	db	'res',TAB,'6,e',0	; 263
cb$264:	db	'res',TAB,'6,h',0	; 264
cb$265:	db	'res',TAB,'6,l',0	; 265
cb$266:	db	'res',TAB,'6,(hl)',0	; 266
cb$267:	db	'res',TAB,'6,a',0	; 267
cb$270:	db	'res',TAB,'7,b',0	; 270 0B0h
cb$271:	db	'res',TAB,'7,c',0	; 271
cb$272:	db	'res',TAB,'7,d',0	; 272
cb$273:	db	'res',TAB,'7,e',0	; 273
cb$274:	db	'res',TAB,'7,h',0	; 274
cb$275:	db	'res',TAB,'7,l',0	; 275
cb$276:	db	'res',TAB,'7,(hl)',0	; 276
cb$277:	db	'res',TAB,'7,a',0	; 277
cb$300:	db	'set',TAB,'0,b',0	; 300 0C0h
cb$301:	db	'set',TAB,'0,c',0	; 301
cb$302:	db	'set',TAB,'0,d',0	; 302
cb$303:	db	'set',TAB,'0,e',0	; 303
cb$304:	db	'set',TAB,'0,h',0	; 304
cb$305:	db	'set',TAB,'0,l',0	; 305
cb$306:	db	'set',TAB,'0,(hl)',0	; 306
cb$307:	db	'set',TAB,'0,a',0	; 307
cb$310:	db	'set',TAB,'1,b',0	; 310 0C8h
cb$311:	db	'set',TAB,'1,c',0	; 311
cb$312:	db	'set',TAB,'1,d',0	; 312
cb$313:	db	'set',TAB,'1,e',0	; 313
cb$314:	db	'set',TAB,'1,h',0	; 314
cb$315:	db	'set',TAB,'1,l',0	; 315
cb$316:	db	'set',TAB,'1,(hl)',0	; 316
cb$317:	db	'set',TAB,'1,a',0	; 317
cb$320:	db	'set',TAB,'2,b',0	; 320 0D0h
cb$321:	db	'set',TAB,'2,c',0	; 321
cb$322:	db	'set',TAB,'2,d',0	; 322
cb$323:	db	'set',TAB,'2,e',0	; 323
cb$324:	db	'set',TAB,'2,h',0	; 324
cb$325:	db	'set',TAB,'2,l',0	; 325
cb$326:	db	'set',TAB,'2,(hl)',0	; 326
cb$327:	db	'set',TAB,'2,a',0	; 327
cb$330:	db	'set',TAB,'3,b',0	; 330 0D8h
cb$331:	db	'set',TAB,'3,c',0	; 331
cb$332:	db	'set',TAB,'3,d',0	; 332
cb$333:	db	'set',TAB,'3,e',0	; 333
cb$334:	db	'set',TAB,'3,h',0	; 334
cb$335:	db	'set',TAB,'3,l',0	; 335
cb$336:	db	'set',TAB,'3,(hl)',0	; 336
cb$337:	db	'set',TAB,'3,a',0	; 337
cb$340:	db	'set',TAB,'4,b',0	; 340 0E0h
cb$341:	db	'set',TAB,'4,c',0	; 341
cb$342:	db	'set',TAB,'4,d',0	; 342
cb$343:	db	'set',TAB,'4,e',0	; 343
cb$344:	db	'set',TAB,'4,h',0	; 344
cb$345:	db	'set',TAB,'4,l',0	; 345
cb$346:	db	'set',TAB,'4,(hl)',0	; 346
cb$347:	db	'set',TAB,'4,a',0	; 347
cb$350:	db	'set',TAB,'5,b',0	; 350 0E8h
cb$351:	db	'set',TAB,'5,c',0	; 351
cb$352:	db	'set',TAB,'5,d',0	; 352
cb$353:	db	'set',TAB,'5,e',0	; 353
cb$354:	db	'set',TAB,'5,h',0	; 354
cb$355:	db	'set',TAB,'5,l',0	; 355
cb$356:	db	'set',TAB,'5,(hl)',0	; 356
cb$357:	db	'set',TAB,'5,a',0	; 357
cb$360:	db	'set',TAB,'6,b',0	; 360 0F0h
cb$361:	db	'set',TAB,'6,c',0	; 361
cb$362:	db	'set',TAB,'6,d',0	; 362
cb$363:	db	'set',TAB,'6,e',0	; 363
cb$364:	db	'set',TAB,'6,h',0	; 364
cb$365:	db	'set',TAB,'6,l',0	; 365
cb$366:	db	'set',TAB,'6,(hl)',0	; 366
cb$367:	db	'set',TAB,'6,a',0	; 367
cb$370:	db	'set',TAB,'7,b',0	; 370 0F0h
cb$371:	db	'set',TAB,'7,c',0	; 371
cb$372:	db	'set',TAB,'7,d',0	; 372
cb$373:	db	'set',TAB,'7,e',0	; 373
cb$374:	db	'set',TAB,'7,h',0	; 374
cb$375:	db	'set',TAB,'7,l',0	; 375
cb$376:	db	'set',TAB,'7,(hl)',0	; 376
cb$377:	db	'set',TAB,'7,a',0	; 377

;----------------------------------------------;
; tables of multi byte operands with mnemonics ;
; 1st Byte - operand, 2nd byte - operand type  ;
; 3rd & 4th byte pointer to mnemonic text      ;
;----------------------------------------------;

; Z80 2nd instruction byte to 0ddh

sets$dd:
	db	009h,01h
	dw	dd$09	; 011
	db	019h,01h
	dw	dd$19	; 031
	db	021h,53h
	dw	dd$21	; 041
	db	022h,53h
	dw	dd$22	; 042
	db	023h,01h
	dw	dd$23	; 043
	db	029h,01h
	dw	dd$29	; 051
	db	02ah,53h
	dw	dd$2a	; 052
	db	02bh,01h
	dw	dd$2b	; 053
	db	034h,42h
	dw	dd$34	; 064
	db	035h,42h
	dw	dd$35	; 065
	db	036h,0c3h
	dw	dd$36	; 066
	db	039h,01h
	dw	dd$39	; 071
	db	046h,42h
	dw	dd$46	; 106
	db	04eh,42h
	dw	dd$4e	; 116
	db	056h,42h
	dw	dd$56	; 126
	db	05eh,42h
	dw	dd$5e	; 136
	db	066h,42h
	dw	dd$66	; 146
	db	06eh,42h
	dw	dd$6e	; 156
	db	070h,42h
	dw	dd$70	; 160 070h
	db	071h,42h
	dw	dd$71	; 161
	db	072h,42h
	dw	dd$72	; 162
	db	073h,42h
	dw	dd$73	; 163
	db	074h,42h
	dw	dd$74	; 164
	db	075h,42h
	dw	dd$75	; 165
	db	077h,42h
	dw	dd$77	; 167
	db	07eh,42h
	dw	dd$7e	; 176
	db	086h,42h
	dw	dd$86	; 206
	db	08eh,42h
	dw	dd$8e	; 216
	db	096h,42h
	dw	dd$96	; 226
	db	09eh,42h
	dw	dd$9e	; 236
	db	0a6h,42h
	dw	dd$a6	; 246
	db	0aeh,42h
	dw	dd$ae	; 256
	db	0b6h,42h
	dw	dd$b6	; 266
	db	0beh,42h
	dw	dd$be	; 276
	db	0cbh,07h; multi byte operand
	dw	dd$cb	; 313
	db	0e1h,01h
	dw	dd$e1	; 341
	db	0e3h,01h
	dw	dd$e3	; 343
	db	0e5h,01h
	dw	dd$e5	; 345
	db	0e9h,31h
	dw	dd$e9	; 351
	db	0f9h,01h
	dw	dd$f9	; 371

	db	0,0,0,0

;-----------------------------------------------;
;	Table of MNEMONICS text strings		;
;	- 2nd instruction byte to 0ddh -	;
;	terminated by a 00h byte		;
;	Note ?  replaced by byte		;
;	     ?? replaced by word		;
;	     @  replaced by relative byte	;
;	     !  signifies skip op code byte	;
;-----------------------------------------------;

dd$09:	db	'add',TAB,'ix,bc',0	; 011
dd$19:	db	'add',TAB,'ix,de',0	; 031
dd$21:	db	'ld',TAB,'ix,??',0	; 041
dd$22:	db	'ld',TAB,'(??),ix',0	; 042
dd$23:	db	'inc',TAB,'ix',0	; 043
dd$29:	db	'add',TAB,'ix,ix',0	; 051
dd$2a:	db	'ld',TAB,'ix,(??)',0	; 052
dd$2b:	db	'dec',TAB,'ix',0	; 053
dd$34:	db	'inc',TAB,'(ix+?)',0	; 064
dd$35:	db	'dec',TAB,'(ix+?)',0	; 065
dd$36:	db	'ld',TAB,'(ix+?),?',0	; 066
dd$39:	db	'add',TAB,'ix,sp',0	; 071
dd$46:	db	'ld',TAB,'b,(ix+?)',0	; 106
dd$4e:	db	'ld',TAB,'c,(ix+?)',0	; 116
dd$56:	db	'ld',TAB,'d,(ix+?)',0	; 126
dd$5e:	db	'ld',TAB,'e,(ix+?)',0	; 136
dd$66:	db	'ld',TAB,'h,(ix+?)',0	; 146
dd$6e:	db	'ld',TAB,'l,(ix+?)',0	; 156
dd$70:	db	'ld',TAB,'(ix+?),b',0	; 160 070h
dd$71:	db	'ld',TAB,'(ix+?),c',0	; 161
dd$72:	db	'ld',TAB,'(ix+?),d',0	; 162
dd$73:	db	'ld',TAB,'(ix+?),e',0	; 163
dd$74:	db	'ld',TAB,'(ix+?),h',0	; 164
dd$75:	db	'ld',TAB,'(ix+?),l',0	; 165
dd$77:	db	'ld',TAB,'(ix+?),a',0	; 167
dd$7e:	db	'ld',TAB,'a,(ix+?)',0	; 176
dd$86:	db	'add',TAB,'a,(ix+?)',0	; 206
dd$8e:	db	'adc',TAB,'a,(ix+?)',0	; 216
dd$96:	db	'sub',TAB,'(ix+?)',0	; 226
dd$9e:	db	'sbc',TAB,'a,(ix+?)',0	; 236
dd$a6:	db	'and',TAB,'(ix+?)',0	; 246
dd$ae:	db	'xor',TAB,'(ix+?)',0	; 256
dd$b6:	db	'or',TAB,'(ix+?)',0	; 266
dd$be:	db	'cp',TAB,'(ix+?)',0	; 276
dd$cb:	db	0			; 313	; multi byte operand
dd$e1:	db	'pop',TAB,'ix',0	; 341
dd$e3:	db	'ex',TAB,'(sp),ix',0	; 343
dd$e5:	db	'push',TAB,'ix',0	; 345
dd$e9:	db	'jp',TAB,'(ix)',0	; 351
dd$f9:	db	'ld',TAB,'sp,ix',0	; 371

; Z80 2nd instruction byte to 0edh

sets$ed:
	db	040h,01h
	dw	ed$40	; 100 040h
	db	041h,01h
	dw	ed$41	; 101
	db	042h,01h
	dw	ed$42	; 102
	db	043h,53h
	dw	ed$43	; 103
	db	044h,01h
	dw	ed$44	; 104
	db	045h,01h
	dw	ed$45	; 105
	db	046h,01h
	dw	ed$46	; 106
	db	047h,01h
	dw	ed$47	; 107
	db	048h,01h
	dw	ed$48	; 110 048h
	db	049h,01h
	dw	ed$49	; 111
	db	04ah,01h
	dw	ed$4a	; 112
	db	04bh,53h
	dw	ed$4b	; 113
	db	04dh,01h
	dw	ed$4d	; 115
	db	04fh,01h
	dw	ed$4f	; 117
	db	050h,01h
	dw	ed$50	; 120 050h
	db	051h,01h
	dw	ed$51	; 121
	db	052h,01h
	dw	ed$52	; 122
	db	053h,53h
	dw	ed$53	; 123
	db	056h,01h
	dw	ed$56	; 126
	db	057h,01h
	dw	ed$57	; 127
	db	058h,01h
	dw	ed$58	; 130 058h
	db	059h,01h
	dw	ed$59	; 131
	db	05ah,01h
	dw	ed$5a	; 132
	db	05bh,53h
	dw	ed$5b	; 133
	db	05eh,01h
	dw	ed$5e	; 136
	db	05fh,01h
	dw	ed$5f	; 137
	db	060h,01h
	dw	ed$60	; 140 060h
	db	061h,01h
	dw	ed$61	; 141
	db	062h,01h
	dw	ed$62	; 142
	db	067h,01h
	dw	ed$67	; 147
	db	068h,01h
	dw	ed$68	; 150 068h
	db	069h,01h
	dw	ed$69	; 151
	db	06ah,01h
	dw	ed$6a	; 152
	db	06fh,01h
	dw	ed$6f	; 157
	db	072h,01h
	dw	ed$72	; 162
	db	073h,53h
	dw	ed$73	; 163
	db	078h,01h
	dw	ed$78	; 170 078h
	db	079h,01h
	dw	ed$79	; 171
	db	07ah,01h
	dw	ed$7a	; 172
	db	07bh,53h
	dw	ed$7b	; 173
	db	0a0h,01h
	dw	ed$a0	; 240 0a0h
	db	0a1h,01h
	dw	ed$a1	; 241
	db	0a2h,01h
	dw	ed$a2	; 242
	db	0a3h,01h
	dw	ed$a3	; 243
	db	0a8h,01h
	dw	ed$a8	; 250 0a8h
	db	0a9h,01h
	dw	ed$a9	; 251
	db	0aah,01h
	dw	ed$aa	; 252
	db	0abh,01h
	dw	ed$ab	; 253
	db	0b0h,01h
	dw	ed$b0	; 260 0b0h
	db	0b1h,01h
	dw	ed$b1	; 261
	db	0b2h,01h
	dw	ed$b2	; 262
	db	0b3h,01h
	dw	ed$b3	; 263
	db	0b8h,01h
	dw	ed$b8	; 270 0b8h
	db	0b9h,01h
	dw	ed$b9	; 271
	db	0bah,01h
	dw	ed$ba	; 272
	db	0bbh,01h
	dw	ed$bb	; 273

	db	0,0,0,0

;-----------------------------------------------;
;	Table of MNEMONICS text strings		;
;	- 2nd instruction byte to 0edh -	;
;	terminated by a 00h byte		;
;	Note ?  replaced by byte		;
;	     ?? replaced by word		;
;	     @  replaced by relative byte	;
;	     !  signifies skip op code byte	;
;-----------------------------------------------;

ed$40:	db	'in',TAB,'b,(c)',0	; 100 040h
ed$41:	db	'out',TAB,'(c),b',0	; 101
ed$42:	db	'sbc',TAB,'hl,bc',0	; 102
ed$43:	db	'ld',TAB,'(??),bc',0	; 103
ed$44:	db	'neg',0			; 104
ed$45:	db	'retn',0		; 105
ed$46:	db	'im',TAB,'0',0		; 106
ed$47:	db	'ld',tab,'i,a',0	; 107
ed$48:	db	'in',TAB,'c,(c)',0	; 110 048h
ed$49:	db	'out',TAB,'(c),c',0	; 111
ed$4a:	db	'adc',TAB,'hl,bc',0	; 112
ed$4b:	db	'ld',TAB,'bc,(??)',0	; 113
ed$4d:	db	'reti',0		; 115
ed$4f:	db	'ld',tab,'r,a',0	; 117
ed$50:	db	'in',TAB,'d,(c)',0	; 120 050h
ed$51:	db	'out',TAB,'(c),d',0	; 121
ed$52:	db	'sbc',TAB,'hl,de',0	; 122
ed$53:	db	'ld',TAB,'(??),de',0	; 123
ed$56:	db	'im',TAB,'1',0		; 126
ed$57:	db	'ld',tab,'a,i',0	; 127
ed$58:	db	'in',TAB,'e,(c)',0	; 130 058h
ed$59:	db	'out',TAB,'(c),e',0	; 131
ed$5a:	db	'adc',TAB,'hl,de',0	; 132
ed$5b:	db	'ld',TAB,'de,(??)',0	; 133
ed$5e:	db	'im',TAB,'2',0		; 136
ed$5f:	db	'ld',TAB,'a,r',0	; 137
ed$60:	db	'in',TAB,'h,(c)',0	; 140 060h
ed$61:	db	'out',TAB,'(c),h',0	; 141
ed$62:	db	'sbc',TAB,'hl,hl',0	; 142
ed$67:	db	'rrd',0			; 147
ed$68:	db	'in',TAB,'l,(c)',0	; 150 068h
ed$69:	db	'out',TAB,'(c),l',0	; 151
ed$6a:	db	'adc',TAB,'hl,hl',0	; 152
ed$6f:	db	'rld',0			; 157
ed$72:	db	'sbc',TAB,'hl,sp',0	; 162
ed$73:	db	'ld',TAB,'(??),sp',0	; 163
ed$78:	db	'in',TAB,'a,(c)',0	; 170 078h
ed$79:	db	'out',TAB,'(c),a',0	; 171
ed$7a:	db	'adc',TAB,'hl,sp',0	; 172
ed$7b:	db	'ld',TAB,'sp,(??)',0	; 173
ed$a0:	db	'ldi',0			; 240 0a0h
ed$a1:	db	'cpi',0			; 241
ed$a2:	db	'ini',0			; 242
ed$a3:	db	'outi',0		; 243
ed$a8:	db	'ldd',0			; 250 0a8h
ed$a9:	db	'cpd',0			; 251
ed$aa:	db	'ind',0			; 252
ed$ab:	db	'outd',0		; 253
ed$b0:	db	'ldir',0		; 260 0b0h
ed$b1:	db	'cpir',0		; 261
ed$b2:	db	'inir',0		; 262
ed$b3:	db	'otir',0		; 263
ed$b8:	db	'lddr',0		; 270 0b8h
ed$b9:	db	'cpdr',0		; 271
ed$ba:	db	'indr',0		; 272
ed$bb:	db	'otdr',0		; 273

; Z80 2nd instruction byte to 0fdh

sets$fd:
	db	009h,01h
	dw	fd$09	; 011
	db	019h,01h
	dw	fd$19	; 031
	db	021h,53h
	dw	fd$21	; 041
	db	022h,53h
	dw	fd$22	; 042
	db	023h,01h
	dw	fd$23	; 043
	db	029h,01h
	dw	fd$29	; 051
	db	02ah,53h
	dw	fd$2a	; 052
	db	02bh,01h
	dw	fd$2b	; 053
	db	034h,42h
	dw	fd$34	; 064
	db	035h,42h
	dw	fd$35	; 065
	db	036h,0c3h
	dw	fd$36	; 066
	db	039h,01h
	dw	fd$39	; 071
	db	046h,42h
	dw	fd$46	; 106
	db	04eh,42h
	dw	fd$4e	; 116
	db	056h,42h
	dw	fd$56	; 126
	db	05eh,42h
	dw	fd$5e	; 136
	db	066h,42h
	dw	fd$66	; 146
	db	06eh,42h
	dw	fd$6e	; 156
	db	070h,42h
	dw	fd$70	; 160 070h
	db	071h,42h
	dw	fd$71	; 161
	db	072h,42h
	dw	fd$72	; 162
	db	073h,42h
	dw	fd$73	; 163
	db	074h,42h
	dw	fd$74	; 164
	db	075h,42h
	dw	fd$75	; 165
	db	077h,42h
	dw	fd$77	; 167
	db	07eh,42h
	dw	fd$7e	; 176
	db	086h,42h
	dw	fd$86	; 206
	db	08eh,42h
	dw	fd$8e	; 216
	db	096h,42h
	dw	fd$96	; 226
	db	09eh,42h
	dw	fd$9e	; 236
	db	0a6h,42h
	dw	fd$a6	; 246
	db	0aeh,42h
	dw	fd$ae	; 256
	db	0b6h,42h
	dw	fd$b6	; 266
	db	0beh,42h
	dw	fd$be	; 276
	db	0cbh,07h; multi byte operand
	dw	fd$cb	; 313
	db	0e1h,01h
	dw	fd$e1	; 341
	db	0e3h,01h
	dw	fd$e3	; 343
	db	0e5h,01h
	dw	fd$e5	; 345
	db	0e9h,31h
	dw	fd$e9	; 351
	db	0f9h,01h
	dw	fd$f9	; 371

	db	0,0,0,0

;-----------------------------------------------;
;	Table of MNEMONICS text strings		;
;	- 2nd instruction byte to 0fdh -	;
;	terminated by a 00h byte		;
;	Note ?  replaced by byte		;
;	     ?? replaced by word		;
;	     @  replaced by relative byte	;
;	     !  signifies skip op code byte	;
;-----------------------------------------------;

fd$09:	db	'add',TAB,'iy,bc',0	; 011
fd$19:	db	'add',TAB,'iy,de',0	; 031
fd$21:	db	'ld',TAB,'iy,??',0	; 041
fd$22:	db	'ld',TAB,'(??),iy',0	; 042
fd$23:	db	'inc',TAB,'iy',0	; 043
fd$29:	db	'add',TAB,'iy,iy',0	; 051
fd$2a:	db	'ld',TAB,'iy,(??)',0	; 052
fd$2b:	db	'dec',TAB,'iy',0	; 053
fd$34:	db	'inc',TAB,'(iy+?)',0	; 064
fd$35:	db	'dec',TAB,'(iy+?)',0	; 065
fd$36:	db	'ld',TAB,'(iy+?),?',0	; 066
fd$39:	db	'add',TAB,'iy,sp',0	; 071
fd$46:	db	'ld',TAB,'b,(iy+?)',0	; 106
fd$4e:	db	'ld',TAB,'c,(iy+?)',0	; 116
fd$56:	db	'ld',TAB,'d,(iy+?)',0	; 126
fd$5e:	db	'ld',TAB,'e,(iy+?)',0	; 136
fd$66:	db	'ld',TAB,'h,(iy+?)',0	; 146
fd$6e:	db	'ld',TAB,'l,(iy+?)',0	; 156
fd$70:	db	'ld',TAB,'(iy+?),b',0	; 160 070h
fd$71:	db	'ld',TAB,'(iy+?),c',0	; 161
fd$72:	db	'ld',TAB,'(iy+?),d',0	; 162
fd$73:	db	'ld',TAB,'(iy+?),e',0	; 163
fd$74:	db	'ld',TAB,'(iy+?),h',0	; 164
fd$75:	db	'ld',TAB,'(iy+?),l',0	; 165
fd$77:	db	'ld',TAB,'(iy+?),a',0	; 167
fd$7e:	db	'ld',TAB,'a,(iy+?)',0	; 176
fd$86:	db	'add',TAB,'a,(iy+?)',0	; 206
fd$8e:	db	'adc',TAB,'a,(iy+?)',0	; 216
fd$96:	db	'sub',TAB,'(iy+?)',0	; 226
fd$9e:	db	'sbc',TAB,'a,(iy+?)',0	; 236
fd$a6:	db	'and',TAB,'(iy+?)',0	; 246
fd$ae:	db	'xor',TAB,'(iy+?)',0	; 256
fd$b6:	db	'or',TAB,'(iy+?)',0	; 266
fd$be:	db	'cp',TAB,'(iy+?)',0	; 276
fd$cb:	db	0			; 313	; multi byte operand
fd$e1:	db	'pop',TAB,'iy',0	; 341
fd$e3:	db	'ex',TAB,'(sp),iy',0	; 343
fd$e5:	db	'push',TAB,'iy',0	; 345
fd$e9:	db	'jp',TAB,'(iy)',0	; 351
fd$f9:	db	'ld',TAB,'sp,iy',0	; 371

;-------------------------------------------------------;
; tables of -3- byte operands with mnemonics		;
; 1st Byte = 3rd operand, 2nd byte = operand type	;
; 3rd & 4th byte pointer to mnemonic text		;
;-------------------------------------------------------;

; Z80 3rd instruction byte to 0ddh,0cbh

set$ddcb:	; Table of instruction
	db	006h,0c3h
	dw	ddcb$06
	db	00eh,0c3h
	dw	ddcb$0e
	db	016h,0c3h
	dw	ddcb$16
	db	01eh,0c3h
	dw	ddcb$1e
	db	026h,0c3h
	dw	ddcb$26
	db	02eh,0c3h
	dw	ddcb$2e
	db	03eh,0c3h
	dw	ddcb$3e
	db	046h,0c3h
	dw	ddcb$46
	db	04eh,0c3h
	dw	ddcb$4e
	db	056h,0c3h
	dw	ddcb$56
	db	05eh,0c3h
	dw	ddcb$5e
	db	066h,0c3h
	dw	ddcb$66
	db	06eh,0c3h
	dw	ddcb$6e
	db	076h,0c3h
	dw	ddcb$76
	db	07eh,0c3h
	dw	ddcb$7e
	db	086h,0c3h
	dw	ddcb$86
	db	08eh,0c3h
	dw	ddcb$8e
	db	096h,0c3h
	dw	ddcb$96
	db	09eh,0c3h
	dw	ddcb$9e
	db	0a6h,0c3h
	dw	ddcb$a6
	db	0aeh,0c3h
	dw	ddcb$ae
	db	0b6h,0c3h
	dw	ddcb$b6
	db	0beh,0c3h
	dw	ddcb$be
	db	0c6h,0c3h
	dw	ddcb$c6
	db	0ceh,0c3h
	dw	ddcb$ce
	db	0d6h,0c3h
	dw	ddcb$d6
	db	0deh,0c3h
	dw	ddcb$de
	db	0e6h,0c3h
	dw	ddcb$e6
	db	0eeh,0c3h
	dw	ddcb$ee
	db	0f6h,0c3h
	dw	ddcb$f6
	db	0feh,0c3h
	dw	ddcb$fe

	db	0,0,0,0

;-----------------------------------------------;
;	Table of MNEMONICS text strings		;
;	- 3rd instruction byte to 0ddh,0cbh -	;
;	terminated by a 00h byte		;
;	Note ?  replaced by byte		;
;	     ?? replaced by word		;
;	     @  replaced by relative byte	;
;	     !  signifies skip op code byte	;
;-----------------------------------------------;

ddcb$06:	db	'rlc',tab,'(ix+?!)',0  	; 06h
ddcb$0e:	db	'rrc',tab,'(ix+?!)',0  	; 0eh
ddcb$16:	db	'rl',tab,'(ix+?!)',0   	; 16h
ddcb$1e:	db	'rr',tab,'(ix+?!)',0   	; 1eh
ddcb$26:	db	'sla',tab,'(ix+?!)',0  	; 26h
ddcb$2e:	db	'sra',tab,'(ix+?!)',0  	; 2eh
ddcb$3e:	db	'srl',tab,'(ix+?!)',0  	; 3eh
ddcb$46:	db	'bit',tab,'0,(ix+?!)',0	; 46h
ddcb$4e:	db	'bit',tab,'1,(ix+?!)',0	; 4eh
ddcb$56:	db	'bit',tab,'2,(ix+?!)',0	; 56h
ddcb$5e:	db	'bit',tab,'3,(ix+?!)',0	; 5eh
ddcb$66:	db	'bit',tab,'4,(ix+?!)',0	; 66h
ddcb$6e:	db	'bit',tab,'5,(ix+?!)',0	; 6eh
ddcb$76:	db	'bit',tab,'6,(ix+?!)',0	; 76h
ddcb$7e:	db	'bit',tab,'7,(ix+?!)',0	; 7eh
ddcb$86:	db	'res',tab,'0,(ix+?!)',0	; 86h
ddcb$8e:	db	'res',tab,'1,(ix+?!)',0	; 8eh
ddcb$96:	db	'res',tab,'2,(ix+?!)',0	; 96h
ddcb$9e:	db	'res',tab,'3,(ix+?!)',0	; 9eh
ddcb$a6:	db	'res',tab,'4,(ix+?!)',0	; a6h
ddcb$ae:	db	'res',tab,'5,(ix+?!)',0	; aeh
ddcb$b6:	db	'res',tab,'6,(ix+?!)',0	; b6h
ddcb$be:	db	'res',tab,'7,(ix+?!)',0	; beh
ddcb$c6:	db	'set',tab,'0,(ix+?!)',0	; c6h
ddcb$ce:	db	'set',tab,'1,(ix+?!)',0	; ceh
ddcb$d6:	db	'set',tab,'2,(ix+?!)',0	; d6h
ddcb$de:	db	'set',tab,'3,(ix+?!)',0	; deh
ddcb$e6:	db	'set',tab,'4,(ix+?!)',0	; e6h
ddcb$ee:	db	'set',tab,'5,(ix+?!)',0	; eeh
ddcb$f6:	db	'set',tab,'6,(ix+?!)',0	; f6h
ddcb$fe:	db	'set',tab,'7,(ix+?!)',0	; feh

; Z80 3rd instruction byte to 0fdh,0cbh

set$fdcb:	; Table of instruction
	db	006h,0c3h
	dw	fdcb$06
	db	00eh,0c3h
	dw	fdcb$0e
	db	016h,0c3h
	dw	fdcb$16
	db	01eh,0c3h
	dw	fdcb$1e
	db	026h,0c3h
	dw	fdcb$26
	db	02eh,0c3h
	dw	fdcb$2e
	db	03eh,0c3h
	dw	fdcb$3e
	db	046h,0c3h
	dw	fdcb$46
	db	04eh,0c3h
	dw	fdcb$4e
	db	056h,0c3h
	dw	fdcb$56
	db	05eh,0c3h
	dw	fdcb$5e
	db	066h,0c3h
	dw	fdcb$66
	db	06eh,0c3h
	dw	fdcb$6e
	db	076h,0c3h
	dw	fdcb$76
	db	07eh,0c3h
	dw	fdcb$7e
	db	086h,0c3h
	dw	fdcb$86
	db	08eh,0c3h
	dw	fdcb$8e
	db	096h,0c3h
	dw	fdcb$96
	db	09eh,0c3h
	dw	fdcb$9e
	db	0a6h,0c3h
	dw	fdcb$a6
	db	0aeh,0c3h
	dw	fdcb$ae
	db	0b6h,0c3h
	dw	fdcb$b6
	db	0beh,0c3h
	dw	fdcb$be
	db	0c6h,0c3h
	dw	fdcb$c6
	db	0ceh,0c3h
	dw	fdcb$ce
	db	0d6h,0c3h
	dw	fdcb$d6
	db	0deh,0c3h
	dw	fdcb$de
	db	0e6h,0c3h
	dw	fdcb$e6
	db	0eeh,0c3h
	dw	fdcb$ee
	db	0f6h,0c3h
	dw	fdcb$f6
	db	0feh,0c3h
	dw	fdcb$fe

	db	0,0,0,0

;-----------------------------------------------;
;	Table of MNEMONICS text strings		;
;	- 3rd instruction byte to 0fdh,0cbh -	;
;	terminated by a 00h byte		;
;	Note ?  replaced by byte		;
;	     ?? replaced by word		;
;	     @  replaced by relative byte	;
;	     !  signifies skip op code byte	;
;-----------------------------------------------;

fdcb$06:	db	'rlc',tab,'(iy+?!)',0  	; 06h
fdcb$0e:	db	'rrc',tab,'(iy+?!)',0  	; 0eh
fdcb$16:	db	'rl',tab,'(iy+?!)',0   	; 16h
fdcb$1e:	db	'rr',tab,'(iy+?!)',0   	; 1eh
fdcb$26:	db	'sla',tab,'(iy+?!)',0  	; 26h
fdcb$2e:	db	'sra',tab,'(iy+?!)',0  	; 2eh
fdcb$3e:	db	'srl',tab,'(iy+?!)',0  	; 3eh
fdcb$46:	db	'bit',tab,'0,(iy+?!)',0	; 46h
fdcb$4e:	db	'bit',tab,'1,(iy+?!)',0	; 4eh
fdcb$56:	db	'bit',tab,'2,(iy+?!)',0	; 56h
fdcb$5e:	db	'bit',tab,'3,(iy+?!)',0	; 5eh
fdcb$66:	db	'bit',tab,'4,(iy+?!)',0	; 66h
fdcb$6e:	db	'bit',tab,'5,(iy+?!)',0	; 6eh
fdcb$76:	db	'bit',tab,'6,(iy+?!)',0	; 76h
fdcb$7e:	db	'bit',tab,'7,(iy+?!)',0	; 7eh
fdcb$86:	db	'res',tab,'0,(iy+?!)',0	; 86h
fdcb$8e:	db	'res',tab,'1,(iy+?!)',0	; 8eh
fdcb$96:	db	'res',tab,'2,(iy+?!)',0	; 96h
fdcb$9e:	db	'res',tab,'3,(iy+?!)',0	; 9eh
fdcb$a6:	db	'res',tab,'4,(iy+?!)',0	; a6h
fdcb$ae:	db	'res',tab,'5,(iy+?!)',0	; aeh
fdcb$b6:	db	'res',tab,'6,(iy+?!)',0	; b6h
fdcb$be:	db	'res',tab,'7,(iy+?!)',0	; beh
fdcb$c6:	db	'set',tab,'0,(iy+?!)',0	; c6h
fdcb$ce:	db	'set',tab,'1,(iy+?!)',0	; ceh
fdcb$d6:	db	'set',tab,'2,(iy+?!)',0	; d6h
fdcb$de:	db	'set',tab,'3,(iy+?!)',0	; deh
fdcb$e6:	db	'set',tab,'4,(iy+?!)',0	; e6h
fdcb$ee:	db	'set',tab,'5,(iy+?!)',0	; eeh
fdcb$f6:	db	'set',tab,'6,(iy+?!)',0	; f6h
fdcb$fe:	db	'set',tab,'7,(iy+?!)',0	; feh

;-------------------------------;
; load program on page boundary ;
;-------------------------------;

lentble	equ	($-tables)
bound	equ	(lentble + 0ffh) and not 0ffh
	ds	bound - lentble

	END
