head	1.6;
access;
symbols;
locks; strict;
comment	@;; @;


1.6
date	2007.10.12.17.43.12;	author bporcella;	state Exp;
branches;
next	1.5;
commitid	595f470fb22c4567;

1.5
date	2007.10.02.20.25.12;	author bporcella;	state Exp;
branches;
next	1.4;
commitid	19474702a90d4567;

1.4
date	2004.05.27.14.33.59;	author bporcella;	state Exp;
branches;
next	1.3;

1.3
date	2004.05.21.02.51.56;	author bporcella;	state Exp;
branches;
next	1.2;

1.2
date	2004.05.18.22.32.22;	author bporcella;	state Exp;
branches;
next	1.1;

1.1
date	2004.05.13.14.49.38;	author bporcella;	state Exp;
branches;
next	;


desc
@@


1.6
log
@added test for HH's IN bug
@
text
@; bjp   modified to assemble on as80 assembler (needs different syntax).
; minor mods to account for changes in interrupt structure  and I/O
; all such are flagged with my initials..... 
;
; The origional code used operators <   and  >  on symbols to extract the 
; lower and higher bytes respectively.   It appears that as80 has no equivalent.
; I have hand coded such ---- hopefully correctly.   
; This is only a significant issue with such constructs as <stack_end.   
; My solution forces the stack to remain in its present location.   
;
; WARNING   If you must move the stack  --   check comments and fix code for my kludges
;
; Origional Code also had a pretty strange "passed" macro.  Removed it and 
; output a more useful message.	along with the bist controls
;
;z80 simulator test routine
;total error count is left in a at end of test routine
;

		code
		org	#0000
;
rst_0000:	jp	rst_0000_1
;
		org	#0008
;
rst_0008:	ld	a,2
		ret
;
		org	#0010
;
rst_0010:	ld	a,3
		ret
;
		org	#0018
;
rst_0018:	ld	a,4
		ret
;
		org	#0020
;
rst_0020:	ld	a,5
		ret
;
		org	#0028
;
rst_0028:	ld	a,6
		ret
;
		org	#0030
;
rst_0030:	ld	a,7
		ret
;
		org	#0038
;
rst_0038:	ld	a,8
		ret
;
		code
;

in_port:	equ	#20
out_port:	equ	#20
bist_adr:       equ     #ffff   ;last memory address for bist controll register
bist_ack:       equ	#01
bist_err:	equ	#02
bist_ei:        equ     #04     ;interrupt enable register for bist 
;
data_55:	equ	#55
data_7f:	equ	#7f
data_80:	equ	#80
data_aa:	equ	#aa
data_ff:	equ	#ff
;
data_1234:	equ	#1234
data_55aa:	equ	#55aa
data_7fff:	equ	#7fff
data_8000:	equ	#8000
data_aa55:	equ	#aa55
data_ffff:	equ	#ffff
cr:             equ     #0d
lf:             equ     #0a
bell:           equ     #07
;
;inc_error_cnt	macro	     ;bjp   change for initial test to halt on error
;		ld	hl,error_cnt
;		inc	(hl)
;		endm
inc_error_cnt	macro
		halt
		endm

;
;passed		macro
;		push	bc
;		ld 	bc,(pass)
;		ld	(message_addr),bc
;		ld 	bc,(pass+2)
;		ld	(message_addr+2),bc
;		ld 	bc,(pass+4)
;		ld	(message_addr+4),bc
;		pop	bc
;		endm
;
;failed		macro
;		push	bc
;		ld 	bc,(fail)
;		ld	(message_addr),bc
;		ld 	bc,(fail+2)
;		ld	(message_addr+2),bc
;		ld 	bc,(fail+4)
;		ld	(message_addr+4),bc
;		pop	bc
;		endm
;
;

start:		xor	a
		ld	(pass_count),a
		ld	hl,error_cnt
		ld	(hl),a			;clear error count
nop_1:		nop
		nop

ld_167:		ld	a,data_55
		cp	data_55
		jr	z,ld_1
		inc_error_cnt
ld_1:		ld	b,data_7f
		ld	a,data_7f
		cp	b
		jr	z,ld_2
		inc_error_cnt
ld_2:		ld	c,data_80
		ld	a,data_80
		cp	c
		jr	z,ld_3
		inc_error_cnt
ld_3:		ld	d,data_aa
		ld	a,data_aa
		cp	d
		jr	z,ld_4
		inc_error_cnt
ld_4:		ld	e,data_55
		ld	a,data_55
		cp	e
		jr	z,ld_5
		inc_error_cnt
ld_5:		ld	h,data_7f
		ld	a,data_7f
		cp	h
		jr	z,ld_6
		inc_error_cnt
ld_6:		ld	l,data_80
		ld	a,data_80
		cp	l
		jr	z,ld_7
		inc_error_cnt
ld_7:		ld	a,data_55
		ld	b,a
		cp	b
		jr	z,ld_8
		inc_error_cnt
ld_8:		ld	c,b
		cp	c
		jr	z,ld_9
		inc_error_cnt
ld_9:		ld	d,c
		cp	d
		jr	z,ld_10
		inc_error_cnt
ld_10:		ld	e,d
		cp	e
		jr	z,ld_11
		inc_error_cnt
ld_11:		ld	h,e
		cp	h
		jr	z,ld_12
		inc_error_cnt
ld_12:		ld	l,h
		cp	l
		jr	z,ld_13
		inc_error_cnt
ld_13:		ld	l,data_80
		ld	a,l
		cp	l
		jr	z,ld_14
		inc_error_cnt
ld_14:		ld	h,l
		cp	h
		jr	z,ld_15
		inc_error_cnt
ld_15:		ld	e,h
		cp	e
		jr	z,ld_16
		inc_error_cnt
ld_16:		ld	d,e
		cp	d
		jr	z,ld_17
		inc_error_cnt
ld_17:		ld	c,d
		cp	c
		jr	z,ld_18
		inc_error_cnt
ld_18:		ld	b,c
		cp	b
		jr	z,ld_19
		inc_error_cnt
ld_19:		ld	hl,var1
		ld	a,(hl)
		cp	data_ff
		jr	z,ld_20
		inc_error_cnt
ld_20:		ld	hl,var2
		ld	a,data_55
		ld	b,(hl)
		cp	b
		jr	z,ld_21
		inc_error_cnt
ld_21:		ld	hl,var1
		ld	c,(hl)
		ld	a,(hl)
		cp	c
		jr	z,ld_22
		inc_error_cnt
ld_22:		ld	hl,var2
		ld	d,(hl)
		ld	a,(hl)
		cp	d
		jr	z,ld_23
		inc_error_cnt
ld_23:		ld	hl,var1
		ld	e,(hl)
		ld	a,(hl)
		cp	e
		jr	z,ld_24
		inc_error_cnt
ld_24:		ld	hl,var2
		ld	a,(hl)
		ld	h,(hl)
		cp	h
		jr	z,ld_25
		inc_error_cnt
ld_25:		ld	hl,var1
		ld	a,(hl)
		ld	l,(hl)
		cp	l
		jr	z,ld_26
		inc_error_cnt
ld_26:		ld	ix,var3
		ld	a,(ix-2)
		cp	data_ff
		jr	z,ld_27
		inc_error_cnt
ld_27:		ld	a,(ix+2)
		cp	data_7f
		jr	z,ld_28
		inc_error_cnt
ld_28:		ld	a,(ix-1)
		ld	b,(ix-1)
		cp	b
		jr	z,ld_29
		inc_error_cnt
ld_29:		cp	data_55
		jr	z,ld_30
		inc_error_cnt
ld_30:		ld	a,(ix+1)
		ld	c,(ix+1)
		cp	c
		jr	z,ld_31
		inc_error_cnt
ld_31:		cp	data_aa
		jr	z,ld_32
		inc_error_cnt
ld_32:		ld	d,(ix-2)
		ld	a,(ix-2)
		cp	d
		jr	z,ld_33
		inc_error_cnt
ld_33:		cp	data_ff
		jr	z,ld_34
		inc_error_cnt
ld_34:		ld	e,(ix+2)
		ld	a,(ix+2)
		cp	e
		jr	z,ld_35
		inc_error_cnt
ld_35:		cp	data_7f
		jr	z,ld_36
		inc_error_cnt
ld_36:		ld	h,(ix+0)
		ld	a,(ix+0)
		cp	h
		jr	z,ld_37
		inc_error_cnt
ld_37:		cp	data_80
		jr	z,ld_38
		inc_error_cnt
ld_38:		ld	l,(ix-1)
		ld	a,(ix-1)
		cp	l
		jr	z,ld_39
		inc_error_cnt
ld_39:		cp	data_55
		jr	z,ld_40
		inc_error_cnt
ld_40:		ld	iy,var3
		ld	a,(iy-2)
		cp	data_ff
		jr	z,ld_41
		inc_error_cnt
ld_41:		ld	a,(iy+2)
		cp	data_7f
		jr	z,ld_42
		inc_error_cnt
ld_42:		ld	b,(iy-1)
		ld	a,(iy-1)
		cp	b
		jr	z,ld_43
		inc_error_cnt
ld_43:		cp	data_55
		jr	z,ld_44
		inc_error_cnt
ld_44:		ld	c,(iy+1)
		ld	a,(iy+1)
		cp	c
		jr	z,ld_45
		inc_error_cnt
ld_45:		cp	data_aa
		jr	z,ld_46
		inc_error_cnt
ld_46:		ld	d,(iy-2)
		ld	a,(iy-2)
		cp	d
		jr	z,ld_47
		inc_error_cnt
ld_47:		cp	data_ff
		jr	z,ld_48
		inc_error_cnt
ld_48:		ld	e,(iy+2)
		ld	a,(iy+2)
		cp	e
		jr	z,ld_49
		inc_error_cnt
ld_49:		cp	data_7f
		jr	z,ld_50
		inc_error_cnt
ld_50:		ld	h,(iy+0)
		ld	a,(iy+0)
		cp	h
		jr	z,ld_51
		inc_error_cnt
ld_51:		cp	data_80
		jr	z,ld_52
		inc_error_cnt
ld_52:		ld	l,(iy-2)
		ld	a,(iy-2)
		cp	l
		jr	z,ld_53
		inc_error_cnt
ld_53:		cp	data_ff
		jr	z,ld_54
		inc_error_cnt
ld_54:		ld	hl,t_var1
		ld	a,data_aa+1
		ld	(hl),a
		ld	b,(hl)
		cp	b
		jr	z,ld_55
		inc_error_cnt
ld_55:		cp	data_aa+1
		jr	z,ld_56
		inc_error_cnt
ld_56:		ld	b,data_80+1
		ld	(hl),b
		ld	a,(hl)
		cp	b
		jr	z,ld_57
		inc_error_cnt
ld_57:		cp	data_80+1
		jr	z,ld_58
		inc_error_cnt
ld_58:		ld	c,data_55-1
		ld	(hl),c
		ld	a,(hl)
		cp	c
		jr	z,ld_59
		inc_error_cnt
ld_59:		cp	data_55-1
		jr	z,ld_60
		inc_error_cnt
ld_60:		ld	d,data_ff-1
		ld	(hl),d
		ld	a,(hl)
		cp	d
		jr	z,ld_61
		inc_error_cnt
ld_61:		cp	data_ff-1
		jr	z,ld_62
		inc_error_cnt
ld_62:		ld	e,data_55+1
		ld	(hl),e
		ld	a,(hl)
		cp	e
		jr	z,ld_63
		inc_error_cnt
ld_63:		cp	data_55+1
		jr	z,ld_64
		inc_error_cnt
ld_64:		ld	(hl),h
		ld	a,(hl)
		cp	h
		jr	z,ld_65
		inc_error_cnt
ld_65:		cp	#70		;bjp  guess  >t_var1
		jr	z,ld_66
		inc_error_cnt
ld_66:		ld	(hl),l
		ld	a,(hl)
		cp	l
		jr	z,ld_67
		inc_error_cnt
ld_67:		cp	a, #00		;bjp  guess <t_var1
		jr	z,ld_68
		inc_error_cnt
ld_68:		ld	ix,t_var3
		ld	a,data_55
		ld	(ix-2),a
		ld	a,0
		ld	a,(ix-2)
		cp	data_55
		jr	z,ld_69
		inc_error_cnt
ld_69:		ld	a,data_80
		ld	(ix+2),a
		ld	a,0
		ld	a,(ix+2)
		cp	data_80
		jr	z,ld_70
		inc_error_cnt
ld_70:		ld	b,data_7f
		ld	(ix-1),b
		ld	a,(ix-1)
		cp	b
		jr	z,ld_71
		inc_error_cnt
ld_71:		cp	data_7f
		jr	z,ld_72
		inc_error_cnt
ld_72:		ld	c,data_aa
		ld	(ix+1),c
		ld	a,(ix+1)
		cp	c
		jr	z,ld_73
		inc_error_cnt
ld_73:		cp	data_aa
		jr	z,ld_74
		inc_error_cnt
ld_74:		ld	d,data_80
		ld	(ix+0),d
		ld	a,(ix+0)
		cp	d
		jr	z,ld_75
		inc_error_cnt
ld_75:		cp	data_80
		jr	z,ld_76
		inc_error_cnt
ld_76:		ld	e,data_55+2
		ld	(ix-2),e
		ld	a,(ix-2)
		cp	e
		jr	z,ld_77
		inc_error_cnt
ld_77:		cp	data_55+2
		jr	z,ld_78
		inc_error_cnt
ld_78:		ld	h,data_aa-2
		ld	(ix+2),h
		ld	a,(ix+2)
		cp	h
		jr	z,ld_79
		inc_error_cnt
ld_79:		cp	data_aa-2
		jr	z,ld_80
		inc_error_cnt
ld_80:		ld	l,data_aa+2
		ld	(ix-1),l
		ld	a,(ix-1)
		cp	l
		jr	z,ld_81
		inc_error_cnt
ld_81:		cp	data_aa+2
		jr	z,ld_82
		inc_error_cnt
ld_82:		ld	iy,t_var3
		ld	a,data_ff
		ld	(iy-2),a
		ld	a,0
		ld	a,(iy-2)
		cp	data_ff
		jr	z,ld_83
		inc_error_cnt
ld_83:		ld	a,data_7f
		ld	(iy+2),a
		ld	a,0
		ld	a,(iy+2)
		cp	data_7f
		jr	z,ld_84
		inc_error_cnt
ld_84:		ld	b,data_55
		ld	(iy-1),b
		ld	a,(iy-1)
		cp	b
		jr	z,ld_85
		inc_error_cnt
ld_85:		cp	data_55
		jr	z,ld_86
		inc_error_cnt
ld_86:		ld	c,data_aa
		ld	(iy+1),c
		ld	a,(iy+1)
		cp	c
		jr	z,ld_87
		inc_error_cnt
ld_87:		cp	data_aa
		jr	z,ld_88
		inc_error_cnt
ld_88:		ld	d,data_80
		ld	(iy+0),d
		ld	a,(iy+0)
		cp	d
		jr	z,ld_89
		inc_error_cnt
ld_89:		cp	data_80
		jr	z,ld_90
		inc_error_cnt
ld_90:		ld	e,data_ff-2
		ld	(iy-2),e
		ld	a,(iy-2)
		cp	e
		jr	z,ld_91
		inc_error_cnt
ld_91:		cp	data_ff-2
		jr	z,ld_92
		inc_error_cnt
ld_92:		ld	h,data_7f-3
		ld	(iy+2),h
		ld	a,(iy+2)
		cp	h
		jr	z,ld_93
		inc_error_cnt
ld_93:		cp	data_7f-3
		jr	z,ld_94
		inc_error_cnt
ld_94:		ld	l,data_55-5
		ld	(iy-1),l
		ld	a,(iy-1)
		cp	l
		jr	z,ld_95
		inc_error_cnt
ld_95:		cp	data_55-5
		jr	z,ld_96
		inc_error_cnt
ld_96:		ld	hl,t_var1
		ld	(hl),data_80+10
		ld	a,(hl)
		cp	data_80+10
		jr	z,ld_97
		inc_error_cnt
ld_97:		ld	ix,t_var3
		ld	(ix-2),data_55-10
		ld	a,(ix-2)
		cp	data_55-10
		jr	z,ld_98
		inc_error_cnt
ld_98:		ld	(ix+2),data_55+10
		ld	a,(ix+2)
		cp	data_55+10
		jr	z,ld_99
		inc_error_cnt
ld_99:		ld	iy,t_var2
		ld	(iy-1),data_80+17
		ld	a,(iy-1)
		cp	data_80+17
		jr	z,ld_100
		inc_error_cnt
ld_100:		ld	(iy+1),data_80-17
		ld	a,(iy+1)
		cp	data_80-17
		jr	z,ld_101
		inc_error_cnt
ld_101:		ld	hl,t_var5
		ld	bc,t_var5
		ld	(hl),data_aa-10
		ld	a,(bc)
		cp	data_aa-10
		jr	z,ld_102
		inc_error_cnt
ld_102:		ld	hl,t_var3
		ld	de,t_var3
		ld	(hl),data_aa+10
		ld	a,(de)
		cp	data_aa+10
		jr	z,ld_103
		inc_error_cnt
ld_103:		ld	hl,t_var2
		ld	(hl),data_7f-25
		ld	a,(t_var2)
		cp	data_7f-25
		jr	z,ld_104
		inc_error_cnt
ld_104:		ld	hl,t_var4
		ld	bc,t_var4
		ld	a,data_55-20
		ld	(bc),a
		ld	b,(hl)
		cp	b
		jr	z,ld_105
		inc_error_cnt
ld_105:		ld	a,b
		cp	data_55-20
		jr	z,ld_106
		inc_error_cnt
ld_106:		ld	hl,t_var5
		ld	de,t_var5
		ld	a,data_55+20
		ld	(de),a
		ld	c,(hl)
		cp	c
		jr	z,ld_107
		inc_error_cnt
ld_107:		ld	a,c
		cp	data_55+20
		jr	z,ld_108
		inc_error_cnt
ld_108:		ld	hl,t_var4
		ld	a,data_ff-24
		ld	(t_var4),a
		ld	e,(hl)
		cp	e
		jr	z,ld_109
		inc_error_cnt
ld_109:		ld	a,e
		cp	data_ff-24
		jr	z,ld_110
		inc_error_cnt
ld_110:		ld	a,data_55
		ld	i,a
		ld	a,0
		ld	a,i
		jr	nz,ld_111
		inc_error_cnt
ld_111:		jp	p,ld_112
		inc_error_cnt
ld_112:		cp	data_55
		jr	z,ld_113
		inc_error_cnt
ld_113:		ld	a,data_80
		ld	i,a
		ld	a,0
		ld	a,i
		jr	nz,ld_114
		inc_error_cnt
ld_114:		jp	m,ld_115
		inc_error_cnt
ld_115:		cp	data_80
		jr	z,ld_116
		inc_error_cnt
ld_116:		ld	a,0
		ld	i,a
		ld	a,data_55
		ld	a,i
		jr	z,ld_125
		inc_error_cnt
;   refresh register not implemented    
;   test for ie ?  
;ld_117:		ld	a,data_55
;		ld	r,a
;		ld	a,0
;		ld	a,r
;		jp	p,ld_118
;		inc_error_cnt
;ld_118:		jr	nz,ld_119
;		inc_error_cnt
;ld_119:		ld	a,data_ff
;		ld	r,a
;		ld	a,0
;		ld	a,r
;		jp	m,ld_120
;		inc_error_cnt
;ld_120:		ld	a,4			;totally sequence dependent
;		ld	r,a
;		ld	a,data_55
;		ld	a,r
;		jr	z,ld_121
;		inc_error_cnt
;ld_121:		ei				;set iff2
;		ld	a,i
;		jp	pe,ld_122		;iff2 was set
;		inc_error_cnt
;ld_122:		di				;clear iff2
;		ld	a,i
;		jp	po,ld_123		;iff2 was cleared
;		inc_error_cnt
;ld_123:		ei				;set iff2
;		ld	a,r
;		jp	pe,ld_124		;iff2 was set
;		inc_error_cnt
;ld_124:		di				;clear iff2
;		ld	a,r
;		jp	po,ld_125		;iff2 was cleared
;		inc_error_cnt
;
ld_125:		ld	bc,data_1234
		ld	a, #12			;bjp  guess >data_1234
		cp	b
		jr	z,ld_126
		inc_error_cnt
ld_126:		ld	a, #34			;bjp  guess  <data_1234
		cp	c
		jr	z,ld_127
		inc_error_cnt
ld_127:		ld	de,data_55aa
		ld	a,data_55
		cp	d
		jr	z,ld_128
		inc_error_cnt
ld_128:		ld	a,data_aa
		cp	e
		jr	z,ld_129
		inc_error_cnt
ld_129:		ld	hl,data_7fff
		ld	a,data_7f
		cp	h
		jr	z,ld_130
		inc_error_cnt
ld_130:		ld	a,data_ff
		cp	l
		jr	z,ld_131
		inc_error_cnt
ld_131:		ld	sp,data_aa55
		ld	hl,0
		add	hl,sp
		ld	a,data_aa
		cp	h
		jr	z,ld_132
		inc_error_cnt
ld_132:		ld	a,data_55
		cp	l
		jr	z,ld_133
		inc_error_cnt
ld_133:		ld	ix,data_ffff
		ld	hl,0
		ld	sp,ix
		add	hl,sp
		ld	a,data_ff
		cp	h
		jr	z,ld_134
		inc_error_cnt
ld_134:		cp	l
		jr	z,ld_135
		inc_error_cnt
ld_135:		ld	iy,data_1234
		ld	hl,0
		ld	sp,iy
		add	hl,sp
		ld	a,#12      ;bjp was >data_1234
		cp	h
		jr	z,ld_136
		inc_error_cnt
ld_136:		ld	a,#34      ;bjp was >data_1234
		cp	l
		jr	z,ld_137
		inc_error_cnt
ld_137:		ld	hl,(w_var2)
		ld	a,data_55
		cp	h
		jr	z,ld_138
		inc_error_cnt
ld_138:		ld	a,data_aa
		cp	l
		jr	z,ld_139
		inc_error_cnt
ld_139:		ld	bc,(w_var1)
		ld	a,#12      ;bjp was >data_1234
		cp	b
		jr	z,ld_140
		inc_error_cnt
ld_140:		ld	a,#34      ;bjp was >data_1234
		cp	c
		jr	z,ld_141
		inc_error_cnt
ld_141:		ld	de,(w_var3)
		ld	a,data_7f
		cp	d
		jr	z,ld_142
		inc_error_cnt
ld_142:		ld	a,data_ff
		cp	e
		jr	z,ld_143
		inc_error_cnt
ld_143:		ld	hl,(w_var4)
		ld	a,data_80
		cp	h
		jr	z,ld_144
		inc_error_cnt
ld_144:		ld	a,0
		cp	l
		jr	z,ld_145
		inc_error_cnt
ld_145:		ld	sp,(w_var5)
		ld	hl,0
		add	hl,sp
		ld	a,data_aa
		cp	h
		jr	z,ld_146
		inc_error_cnt
ld_146:		ld	a,data_55
		cp	l
		jr	z,ld_147
		inc_error_cnt
ld_147:		ld	ix,(w_var6)
		ld	hl,0
		ld	sp,ix
		add	hl,sp
		ld	a,data_ff
		cp	h
		jr	z,ld_148
		inc_error_cnt
ld_148:		cp	l
		jr	z,ld_149
		inc_error_cnt
ld_149:		ld	iy,(w_var1)
		ld	hl,0
		ld	sp,iy
		add	hl,sp
		ld	a,#12      ;bjp was >data_1234
		cp	h
		jr	z,ld_150
		inc_error_cnt
ld_150:		ld	a,#34      ;bjp was >data_1234
		cp	l
		jr	z,ld_151
		inc_error_cnt
ld_151:		ld	hl,data_1234
		ld	(tw_var1),hl
		ld	bc,(tw_var1)
		ld	a,#12      ;bjp was >data_1234
		cp	b
		jr	z,ld_152
		inc_error_cnt
ld_152:		ld	a,#34      ;bjp was >data_1234
		cp	c
		jr	z,ld_153
		inc_error_cnt
ld_153:		ld	bc,data_55aa
		ld	(tw_var2),bc
		ld	hl,(tw_var2)
		ld	a,data_55
		cp	h
		jr	z,ld_154
		inc_error_cnt
ld_154:		ld	a,data_aa
		cp	l
		jr	z,ld_155
		inc_error_cnt
ld_155:		ld	de,data_7fff
		ld	(tw_var3),de
		ld	hl,(tw_var3)
		ld	a,data_7f
		cp	h
		jr	z,ld_156
		inc_error_cnt
ld_156:		ld	a,data_ff
		cp	l
		jr	z,ld_157
		inc_error_cnt
ld_157:		ld	hl,data_8000
		ld	(tw_var4),hl
		ld	bc,(tw_var4)
		ld	a,data_80
		cp	b
		jr	z,ld_158
		inc_error_cnt
ld_158:		ld	a,0
		cp	c
		jr	z,ld_159
		inc_error_cnt
ld_159:		ld	sp,data_aa55
		ld	(tw_var5),sp
		ld	hl,(tw_var5)
		ld	a,data_aa
		cp	h
		jr	z,ld_160
		inc_error_cnt
ld_160:		ld	a,data_55
		cp	l
		jr	z,ld_161
		inc_error_cnt
ld_161:		ld	ix,data_ffff
		ld	(tw_var6),ix
		ld	hl,(tw_var6)
		ld	a,data_ff
		cp	h
		jr	z,ld_162
		inc_error_cnt
ld_162:		cp	l
		jr	z,ld_163
		inc_error_cnt
ld_163:		ld	iy,data_1234
		ld	(tw_var7),iy
		ld	hl,(tw_var7)
		ld	a,#12      ;bjp was >data_1234
		cp	h
		jr	z,ld_164
		inc_error_cnt
ld_164:		ld	a,#34      ;bjp was >data_1234
		cp	l
		jr	z,ld_165
		inc_error_cnt
ld_165:		ld	hl,data_55aa
		ld	sp,hl
		ld	hl,0
		add	hl,sp
		ld	a,data_55
		cp	h
		jr	z,ld_166
		inc_error_cnt
ld_166:		ld	a,data_aa
		cp	l
		jr	z,push_0
		inc_error_cnt
push_0:		ld	sp,stack_end
		ld	bc,data_1234
		push	bc
		ld	bc,0
		pop	bc
		ld	a,#12      ;bjp was >data_1234
		cp	b
		jr	z,push_1
		inc_error_cnt
push_1:		ld	a,#34      ;bjp was >data_1234
		cp	c
		jr	z,push_2
		inc_error_cnt
push_2:		ld	de,data_55aa
		push	de
		ld	de,0
		pop	de
		ld	a,data_55
		cp	d
		jr	z,push_3
		inc_error_cnt
push_3:		ld	a,data_aa
		cp	e
		jr	z,push_4
		inc_error_cnt
push_4:		ld	hl,data_7fff
		push	hl
		ld	hl,0
		pop	hl
		ld	a,data_7f
		cp	h
		jr	z,push_5
		inc_error_cnt
push_5:		ld	a,data_ff
		cp	l
		jr	z,push_6
		inc_error_cnt
push_6:		ld	a,data_80
		push	af			;f depends on previous compare
		ld	hl,0
		pop	hl
		cp	h
		jr	z,push_7
		inc_error_cnt
push_7:		ld	a,l
		cp	#42
		jr	z,push_8
push_8:		ld	h,data_55
		ld	l,data_80+#41
		ld	a,0
		push	hl
		pop	af
		jp	m,push_9
		inc_error_cnt
push_9:		jr	z,push_10
		inc_error_cnt
push_10:	jr	c,push_11
		inc_error_cnt
push_11:	cp	data_55
		jr	z,push_12
		inc_error_cnt
push_12:	ld	ix,data_aa55
		ld	bc,0
		push	ix
		pop	bc
		ld	a,data_aa
		cp	b
		jr	z,push_13
		inc_error_cnt
push_13:	ld	a,data_55
		cp	c
		jr	z,push_14
		inc_error_cnt
push_14:	ld	iy,data_7fff
		ld	de,0
		push	iy
		pop	de
		ld	a,data_7f
		cp	d
		jr	z,push_15
		inc_error_cnt
push_15:	ld	a,data_ff
		cp	e
		jr	z,push_16
		inc_error_cnt
push_16:	ld	de,data_1234
		ld	ix,0
		ld	hl,0
		push	de
		pop	ix
		ld	sp,ix
		add	hl,sp
		ld	a,#12      ;bjp was >data_1234
		cp	h
		jr	z,push_17
		inc_error_cnt
push_17:	ld	a,#34      ;bjp was >data_1234
		cp	l
		jr	z,push_18
		inc_error_cnt
push_18:	ld	sp,stack_end
		ld	bc,data_55aa
		ld	iy,0
		ld	hl,0
		push	bc
		pop	iy
		ld	sp,iy
		add	hl,sp
		ld	a,data_55
		cp	h
		jr	z,push_19
		inc_error_cnt
push_19:	ld	a,data_aa
		cp	l
		jr	z,push_20
		inc_error_cnt
push_20:	ld	sp,stack_end
ex_0:		ld	de,data_1234
		ld	hl,data_55aa   ; 10/2/2007 was ffff  need to check all bytes (missed a bug)
		ex	de,hl
		ld	a,data_55
		cp	d
		jr	z,ex_1
		inc_error_cnt
ex_1:		ld	a,data_aa
		cp	e
		jr	z,ex_2
		inc_error_cnt
ex_2:		ld	a,#12      ;bjp was >data_1234
		cp	h
		jr	z,ex_3
		inc_error_cnt
ex_3:		ld	a,#34      ;bjp was >data_1234
		cp	l
		jr	z,ex_4
		inc_error_cnt
ex_4:		ld	h,0
		ld	l,0
		push	hl
		pop	af
		ex	af,af'
		ld	h,data_7f
		ld	l,data_80+#41
		push	hl
		pop	af
		ex	af,af'
		cp	0
		jr	z,ex_5
		inc_error_cnt
ex_5:		ex	af,af'
		jp	m,ex_6
		inc_error_cnt
ex_6:		jr	z,ex_7
		inc_error_cnt
ex_7:		cp	data_7f
		jr	z,ex_8
		inc_error_cnt
ex_8:		ld	hl,0
		ld	bc,0
		ld	de,0
		exx
		ld	hl,data_1234
		ld	bc,data_7fff
		ld	de,data_aa55
		exx
		ld	a,0
		cp	h
		jr	z,ex_9
		inc_error_cnt
ex_9:		cp	l
		jr	z,ex_10
		inc_error_cnt
ex_10:		cp	d
		jr	z,ex_11
		inc_error_cnt
ex_11:		cp	e
		jr	z,ex_12
		inc_error_cnt
ex_12:		cp	b
		jr	z,ex_13
		inc_error_cnt
ex_13:		cp	c
		jr	z,ex_14
		inc_error_cnt
ex_14:		exx
		ld	a,#12      ;bjp was >data_1234
		cp	h
		jr	z,ex_15
		inc_error_cnt
ex_15:		ld	a,#34      ;bjp was >data_1234
		cp	l
		jr	z,ex_16
		inc_error_cnt
ex_16:		ld	a,data_aa
		cp	d
		jr	z,ex_17
		inc_error_cnt
ex_17:		ld	a,data_55
		cp	e
		jr	z,ex_18
		inc_error_cnt
ex_18:		ld	a,data_7f
		cp	b
		jr	z,ex_19
		inc_error_cnt
ex_19:		ld	a,data_ff
		cp	c
		jr	z,ex_20
		inc_error_cnt
ex_20:		ld	bc,data_55aa
		ld	hl,data_7fff
		push	bc
		ex	(sp),hl
		pop	bc
		ld	a,data_7f
		cp	b
		jr	z,ex_21
		inc_error_cnt
ex_21:		ld	a,data_ff
		cp	c
		jr	z,ex_22
		inc_error_cnt
ex_22:		ld	a,data_55
		cp	h
		jr	z,ex_23
		inc_error_cnt
ex_23:		ld	a,data_aa
		cp	l
		jr	z,ex_24
		inc_error_cnt
ex_24:		ld	bc,data_ffff
		ld	ix,data_8000
		ld	hl,0
		push	bc
		ex	(sp),ix
		pop	bc
		ld	sp,ix
		add	hl,sp
		ld	a,data_80
		cp	b
		jr	z,ex_25
		inc_error_cnt
ex_25:		ld	a,0
		cp	c
		jr	z,ex_26
		inc_error_cnt
ex_26:		ld	a,data_ff
		cp	h
		jr	z,ex_27
		inc_error_cnt
ex_27:		cp	l
		jr	z,ex_28
		inc_error_cnt
ex_28:		ld	sp,stack_end
		ld	bc,data_1234
		ld	iy,data_7fff
		ld	hl,0
		push	bc
		ex	(sp),iy
		pop	bc
		ld	sp,iy
		add	hl,sp
		ld	a,data_7f
		cp	b
		jr	z,ex_29
		inc_error_cnt
ex_29:		ld	a,data_ff
		cp	c
		jr	z,ex_30
		inc_error_cnt
ex_30:		ld	a,#12      ;bjp was >data_1234
		cp	h
		jr	z,ex_31
		inc_error_cnt
ex_31:		ld	a,#34      ;bjp was >data_1234
		cp	l
		jr	z,add_0
		inc_error_cnt
add_0:		ld	a,0
		ld	b,data_7f
		add	a,b
		cp	data_7f
		jr	z,add_1
		inc_error_cnt
add_1:		ld	a,0
		ld	b,0
		add	a,b
		jr	z,add_2
		inc_error_cnt
add_2:		ld	b,data_55
		add	a,b
		jr	nz,add_3
		inc_error_cnt
add_3:		cp	data_55
		jr	z,add_4
		inc_error_cnt
add_4:		ld	a,data_ff
		ld	b,1
		add	a,b
		jr	c,add_5
		inc_error_cnt
add_5:		add	a,b
		jr	nc,add_6
		inc_error_cnt
add_6:		ld	a,data_ff
		ld	b,0
		add	a,b
		jp	m,add_7
		inc_error_cnt
add_7:		ld	b,1
		add	a,b
		jp	p,add_8
		inc_error_cnt
add_8:		ld	a,data_7f
		ld	b,1
		add	a,b
		jp	pe,add_9
		inc_error_cnt
add_9:		add	a,b
		jp	po,add_10
		inc_error_cnt
add_10:		ld	a,data_55
		ld	c,2
		add	a,c
		cp	data_55+2
		jr	z,add_11
		inc_error_cnt
add_11:		ld	a,data_80
		add	a,c
		cp	data_80+2
		jr	z,add_12
		inc_error_cnt
add_12:		ld	a,data_aa
		ld	d,data_55
		add	a,d
		cp	data_aa+data_55
		jr	z,add_13
		inc_error_cnt
add_13:		ld	a,data_aa
		ld	e,2
		add	a,e
		cp	data_aa+2
		jr	z,add_14
		inc_error_cnt
add_14:		ld	a,data_55
		ld	h,24
		add	a,h
		cp	data_55+24
		jr	z,add_15
		inc_error_cnt
add_15:		ld	a,data_7f-10
		ld	l,10
		add	a,l
		cp	data_7f
		jr	z,add_16
		inc_error_cnt
add_16:		ld	a,1
		add	a,data_7f
		jp	pe,add_17
		inc_error_cnt
add_17:		jp	m,add_18
		inc_error_cnt
add_18:		jr	nz,add_19
		inc_error_cnt
add_19:		cp	data_80
		jr	z,add_20
		inc_error_cnt
add_20:		ld	a,data_55
		add	a,1
		jp	po,add_21
		inc_error_cnt
add_21:		jp	p,add_22
		inc_error_cnt
add_22:		jr	nc,add_23
		inc_error_cnt
add_23:		cp	data_55+1
		jr	z,add_24
		inc_error_cnt
add_24:		ld	a,data_ff
		add	a,1
		jr	c,add_25
		inc_error_cnt
add_25:		jr	z,add_26
		inc_error_cnt
add_26:		add	a,1
		jr	nc,add_27
		inc_error_cnt
add_27:		jr	nz,add_28
		inc_error_cnt
add_28:		cp	1
		jr	z,add_29
		inc_error_cnt
add_29:		ld	hl,var2
		ld	a,2
		add	a,(hl)
		jp	po,add_30
		inc_error_cnt
add_30:		jp	p,add_31
		inc_error_cnt
add_31:		jr	nz,add_32
		inc_error_cnt
add_32:		jr	nc,add_33
		inc_error_cnt
add_33:		cp	data_55+2
		jr	z,add_34
		inc_error_cnt
add_34:		ld	hl,var1
		ld	a,1
		add	a,(hl)
		jr	c,add_35
		inc_error_cnt
add_35:		jr	z,add_36
		inc_error_cnt
add_36:		ld	hl,var5
		ld	a,1
		add	a,(hl)
		jp	m,add_37
		inc_error_cnt
add_37:		jp	pe,add_38
		inc_error_cnt
add_38:		cp	data_80
		jr	z,add_39
		inc_error_cnt
add_39:		ld	ix,var3
		ld	a,1
		add	a,(ix-1)
		jp	po,add_40
		inc_error_cnt
add_40:		jp	p,add_41
		inc_error_cnt
add_41:		jr	nz,add_42
		inc_error_cnt
add_42:		jr	nc,add_43
		inc_error_cnt
add_43:		cp	data_55+1
		jr	z,add_44
		inc_error_cnt
add_44:		ld	a,1
		add	a,(ix+2)
		jp	pe,add_45
		inc_error_cnt
add_45:		jp	m,add_46
		inc_error_cnt
add_46:		cp	data_80
		jr	z,add_47
		inc_error_cnt
add_47:		ld	a,1
		add	a,(ix-2)
		jr	c,add_48
		inc_error_cnt
add_48:		jr	z,add_49
		inc_error_cnt
add_49:		add	a,1
		jr	nc,add_50
		inc_error_cnt
add_50:		jr	nz,add_51
		inc_error_cnt
add_51:		cp	1
		jr	z,add_52
		inc_error_cnt
add_52:		ld	iy,var3
		ld	a,10
		add	a,(iy-1)
		jp	po,add_53
		inc_error_cnt
add_53:		jp	p,add_54
		inc_error_cnt
add_54:		jr	nz,add_55
		inc_error_cnt
add_55:		jr	nc,add_56
		inc_error_cnt
add_56:		cp	data_55+10
		jr	z,add_57
		inc_error_cnt
add_57:		ld	a,1
		add	a,(iy+2)
		jp	pe,add_58
		inc_error_cnt
add_58:		jp	m,add_59
		inc_error_cnt
add_59:		add	a,1
		jp	po,add_60
		inc_error_cnt
add_60: 	cp	data_80+1
		jr	z,add_61
		inc_error_cnt
add_61:		ld	a,1
		add	a,(iy-2)
		jr	z,add_62
		inc_error_cnt
add_62:		jr	c,add_63
		inc_error_cnt
add_63:		add	a,1
		jr	nc,add_64
		inc_error_cnt
add_64:		jr	nz,add_65
		inc_error_cnt
add_65:		cp	1
		jr	z,add_66
		inc_error_cnt
add_66:		ld	a,data_ff
		add	a,data_80
		jp	p,add_67
		inc_error_cnt
add_67:		jp	pe,add_68
		inc_error_cnt
add_68:		jr	c,add_69
		inc_error_cnt
add_69:		add	a,1
		jp	pe,add_70
		inc_error_cnt
add_70:		jp	m,add_71
		inc_error_cnt
add_71:		jr	nc,add_72
		inc_error_cnt
add_72:		add	a,1
		jp	po,add_73
		inc_error_cnt
add_73:		cp	data_80+1
		jr	z,adc_0
		inc_error_cnt
adc_0:		ld	a,0                 ;clear cry 
		add	a,0
		ld	b,data_7f
		adc	a,b                  ;a=7f cry=0
		jp	p,adc_1
		inc_error_cnt
adc_1:		jp	po,adc_2
		inc_error_cnt
adc_2:		jr	nc,adc_3
		inc_error_cnt
adc_3:		jr	nz,adc_4
		inc_error_cnt
adc_4:		ld	b,1
		adc	a,b                     ;a=80 cry=0  
		jp	pe,adc_5                ;jp  ofl
		inc_error_cnt
adc_5:		jp	m,adc_6
		inc_error_cnt
adc_6:		cp	data_80
		jr	z,adc_7                 ;z=0  ofl=0 cry=0 (borrow)
		inc_error_cnt
adc_7:		ld	a,data_ff
		ld	b,1
		adc	a,b                      ;ff+1+0
		jr	c,adc_8
		inc_error_cnt
adc_8:		jr	z,adc_9
		inc_error_cnt
adc_9:		adc	a,b
		jr	nc,adc_10
		inc_error_cnt
adc_10:		jr	nz,adc_11
		inc_error_cnt
adc_11:		cp	2
		jr	z,adc_12
		inc_error_cnt
adc_12:		ld	a,data_ff
		ld	c,0
		adc	a,c
		jp	m,adc_13
		inc_error_cnt
adc_13:		jr	nc,adc_14
		inc_error_cnt
adc_14:		ld	c,2
		adc	a,c
		jp	p,adc_15
		inc_error_cnt
adc_15:		jr	c,adc_16
		inc_error_cnt
adc_16:		ld	c,0
		adc	a,c
		cp	2
		jr	z,adc_17
		inc_error_cnt
adc_17:		ld	a,data_ff
		ld	d,1
		adc	a,d
		jr	c,adc_18
		inc_error_cnt
adc_18:		ld	d,0
		adc	a,d
		jr	nc,adc_19
		inc_error_cnt
adc_19:		cp	1
		jr	z,adc_20
		inc_error_cnt
adc_20:		ld	a,data_aa
		ld	e,data_7f
		adc	a,e
		jr	c,adc_21
		inc_error_cnt
adc_21:		ld	e,#2b
		adc	a,e
		cp	data_55
		jr	z,adc_22
		inc_error_cnt
adc_22:		ld	a,data_ff
		ld	h,1
		adc	a,h
		jr	c,adc_23
		inc_error_cnt
adc_23:		adc	a,h
		cp	2
		jr	z,adc_24
		inc_error_cnt
adc_24:		ld	a,data_ff
		ld	l,1
		adc	a,l
		jr	c,adc_25
		inc_error_cnt
adc_25:		adc	a,l
		cp	2
		jr	z,adc_26
		inc_error_cnt
adc_26:		ld	a,0
		adc	a,data_7f
		jp	po,adc_27
		inc_error_cnt
adc_27:		jp	p,adc_28
		inc_error_cnt
adc_28:		jr	nc,adc_29
		inc_error_cnt
adc_29:		jr	nz,adc_30
		inc_error_cnt
adc_30:		adc	a,1
		jp	pe,adc_31
		inc_error_cnt
adc_31:		jp	m,adc_32
		inc_error_cnt
adc_32:		cp	data_80
		jr	z,adc_33
		inc_error_cnt
adc_33:		ld	a,data_ff
		adc	a,1
		jr	c,adc_34
		inc_error_cnt
adc_34:		jr	z,adc_35
		inc_error_cnt
adc_35:		adc	a,1
		jr	nc,adc_36
		inc_error_cnt
adc_36:		jr	nz,adc_37
		inc_error_cnt
adc_37:		cp	2
		jr	z,adc_38
		inc_error_cnt
adc_38:		ld	hl,var5
		ld	a,0
		adc	a,(hl)
		jp	p,adc_39
		inc_error_cnt
adc_39:		jp	po,adc_40
		inc_error_cnt
adc_40:		jr	nz,adc_41
		inc_error_cnt
adc_41:		jr	nc,adc_42
		inc_error_cnt
adc_42:		ld	a,1
		adc	a,(hl)
		jp	m,adc_43
		inc_error_cnt
adc_43:		jp	pe,adc_44
		inc_error_cnt
adc_44:		cp	data_80
		jr	z,adc_45
		inc_error_cnt
adc_45:		ld	hl,var1
		ld	a,1
		adc	a,(hl)
		jr	z,adc_46
		inc_error_cnt
adc_46:		jr	c,adc_47
		inc_error_cnt
adc_47:		ld	hl,var2
		adc	a,(hl)
		jr	nc,adc_48
		inc_error_cnt
adc_48:		jr	nz,adc_49
		inc_error_cnt
adc_49:		cp	data_55+1
		jr	z,adc_50
		inc_error_cnt
adc_50:		ld	ix,var3
		ld	a,0
		adc	a,(ix+2)
		jp	p,adc_51
		inc_error_cnt
adc_51:		jp	po,adc_52
		inc_error_cnt
adc_52:		jr	nc,adc_53
		inc_error_cnt
adc_53:		jr	nz,adc_54
		inc_error_cnt
adc_54:		ld	a,1
		adc	a,(ix+2)
		jp	m,adc_55
		inc_error_cnt
adc_55:		jp	pe,adc_56
		inc_error_cnt
adc_56:		cp	data_80
		jr	z,adc_57
		inc_error_cnt
adc_57:		ld	a,1
		adc	a,(ix-2)
		jr	c,adc_58
		inc_error_cnt
adc_58:		jr	z,adc_59
		inc_error_cnt
adc_59:		adc	a,(ix-1)
		jr	nc,adc_60
		inc_error_cnt
adc_60:		jr	nz,adc_61
		inc_error_cnt
adc_61:		cp	data_55+1
		jr	z,adc_62
		inc_error_cnt
adc_62:		ld	iy,var3
		ld	a,0
		adc	a,(ix+2)
		jp	p,adc_63
		inc_error_cnt
adc_63:		jp	po,adc_64
		inc_error_cnt
adc_64:		jr	nc,adc_65
		inc_error_cnt
adc_65:		jr	nz,adc_66
		inc_error_cnt
adc_66:		ld	a,1
		adc	a,(iy+2)
		jp	m,adc_67
		inc_error_cnt
adc_67:		jp	pe,adc_68
		inc_error_cnt
adc_68:		cp	data_80
		jr	z,adc_69
		inc_error_cnt
adc_69:		ld	a,1
		adc	a,(iy-2)
		jr	c,adc_70
		inc_error_cnt
adc_70:		jr	z,adc_71
		inc_error_cnt
adc_71:		adc	a,(iy-1)
		jr	nc,adc_72
		inc_error_cnt
adc_72:		jr	nz,adc_73
		inc_error_cnt
adc_73:		cp	data_55+1
		jr	z,adc_74
		inc_error_cnt
adc_74:		ld	a,data_ff
		add	a,0
		adc	a,data_80
		jp	p,adc_75
		inc_error_cnt
adc_75:		jp	pe,adc_76
		inc_error_cnt
adc_76:		jr	nz,adc_77
		inc_error_cnt
adc_77:		adc	a,0
		jp	m,adc_78
		inc_error_cnt
adc_78:		jp	pe,adc_79
		inc_error_cnt
adc_79:		adc	a,1
		jp	po,adc_80
		inc_error_cnt
adc_80:		cp	data_80+1
		jr	z,sub_0
		inc_error_cnt
sub_0:		ld	a,0
		ld	b,1
		sub	a,b
		jp	m,sub_1
		inc_error_cnt
sub_1:		jp	po,sub_2
		inc_error_cnt
sub_2:		jr	c,sub_3
		inc_error_cnt
sub_3:		jr	nz,sub_4
		inc_error_cnt
sub_4:		sub	a,b
		jr	nc,sub_5
		inc_error_cnt
sub_5:		cp	data_ff-1
		jr	z,sub_6
		inc_error_cnt
sub_6:		ld	a,1
		ld	b,0
		sub	a,b
		jr	nz,sub_7
		inc_error_cnt
sub_7:		jp	p,sub_8
		inc_error_cnt
sub_8:		ld	b,1
		sub	a,b
		jr	z,sub_9
		inc_error_cnt
sub_9:		sub	a,b
		jp	m,sub_10
		inc_error_cnt
sub_10:		cp	data_ff
		jr	z,sub_11
		inc_error_cnt
sub_11:		ld	a,data_80
		ld	b,data_7f
		sub	a,b
		jp	pe,sub_12
		inc_error_cnt
sub_12:		sub	a,b
		jp	po,sub_13
		inc_error_cnt
sub_13:		cp	data_80+2
		jr	z,sub_14
		inc_error_cnt
sub_14:		ld	a,data_55
		ld	c,data_55
		sub	a,c
		jr	z,sub_15
		inc_error_cnt
sub_15:		ld	c,1
		sub	a,c
		jp	m,sub_16
		inc_error_cnt
sub_16:		jr	c,sub_17
		inc_error_cnt
sub_17:		cp	data_ff
		jr	z,sub_18
		inc_error_cnt
sub_18:		ld	a,data_55
		ld	d,data_7f
		sub	a,d
		jr	c,sub_19
		inc_error_cnt
sub_19:		cp	data_55-data_7f
		jr	z,sub_20
		inc_error_cnt
sub_20:		ld	a,0
		ld	e,data_ff
		sub	a,e
		jr	c,sub_21
		inc_error_cnt
sub_21:		cp	1
		jr	z,sub_22
		inc_error_cnt
sub_22:		ld	a,data_ff
		ld	h,data_80
		sub	a,h
		jp	p,sub_23
		inc_error_cnt
sub_23:		cp	data_7f
		jr	z,sub_24
		inc_error_cnt
sub_24:		ld	a,data_aa
		ld	l,data_ff
		sub	a,l
		jr	c,sub_25
		inc_error_cnt
sub_25:		cp	data_aa+1
		jr	z,sub_26
		inc_error_cnt
sub_26:		ld	a,data_7f
		sub	a,data_ff
		jp	pe,sub_27
		inc_error_cnt
sub_27:		jp	m,sub_28
		inc_error_cnt
sub_28:		sub	a,1
		jp	p,sub_29
		inc_error_cnt
sub_29:		sub	a,1
		jp	po,sub_30
		inc_error_cnt
sub_30:		jr	nz,sub_31
		inc_error_cnt
sub_31:		sub	a,data_7f-1
		jr	z,sub_32
		inc_error_cnt
sub_32:		ld	a,0
		sub	a,data_ff
		jr	c,sub_33
		inc_error_cnt
sub_33:		sub	a,1
		jr	z,sub_34
		inc_error_cnt
sub_34:		jr	nc,sub_35
		inc_error_cnt
sub_35:		ld	hl,var1
		ld	a,data_7f
		sub	a,(hl)
		jp	m,sub_36
		inc_error_cnt
sub_36:		jp	pe,sub_37
		inc_error_cnt
sub_37:		jr	c,sub_38
		inc_error_cnt
sub_38:		ld	hl,var3
		sub	a,(hl)
		jp	p,sub_39
		inc_error_cnt
sub_39:		jp	po,sub_40
		inc_error_cnt
sub_40:		jr	nc,sub_41
		inc_error_cnt
sub_41		jr	z,sub_42
		inc_error_cnt
sub_42:		ld	hl,var2
		sub	a,(hl)
		jr	nz,sub_43
		inc_error_cnt
sub_43:		cp	data_aa+1
		jr	z,sub_44
		inc_error_cnt
sub_44:		ld	ix,var3
		ld	a,data_7f
		sub	a,(ix-2)
		jp	m,sub_45
		inc_error_cnt
sub_45:		jp	pe,sub_46
		inc_error_cnt
sub_46:		jr	c,sub_47
		inc_error_cnt
sub_47:		sub	a,(ix+0)
		jp	p,sub_48
		inc_error_cnt
sub_48:		jp	po,sub_49
		inc_error_cnt
sub_49:		jr	nc,sub_50
		inc_error_cnt
sub_50:		jr	z,sub_51
		inc_error_cnt
sub_51:		sub	a,(ix+2)
		jr	nz,sub_52
		inc_error_cnt
sub_52:		cp	data_80+1
		jr	z,sub_53
		inc_error_cnt
sub_53:		ld	iy,var3
		ld	a,data_7f
		sub	a,(iy-2)
		jp	m,sub_54
		inc_error_cnt
sub_54:		jp	pe,sub_55
		inc_error_cnt
sub_55:		jr	c,sub_56
		inc_error_cnt
sub_56:		jr	nz,sub_57
		inc_error_cnt
sub_57:		sub	a,(iy+0)
		jp	p,sub_58
		inc_error_cnt
sub_58:		jp	po,sub_59
		inc_error_cnt
sub_59:		jr	nc,sub_60
		inc_error_cnt
sub_60:		jr	z,sub_61
		inc_error_cnt
sub_61:		sub	a,(iy+2)
		jr	nz,sub_62
		inc_error_cnt
sub_62:		cp	data_80+1
		jr	z,sbc_0
		inc_error_cnt
sbc_0:		ld	a,data_7f
		ld	b,0
		sub	a,b			;clear carry flag
		ld	b,data_ff
		sbc	a,b
		jp	m,sbc_1
		inc_error_cnt
sbc_1:		jp	pe,sbc_2
		inc_error_cnt
sbc_2:		jr	c,sbc_3
		inc_error_cnt
sbc_3:		jr	nz,sbc_4
		inc_error_cnt
sbc_4:		ld	b,data_7f
		sbc	a,b
		jp	p,sbc_5
		inc_error_cnt
sbc_5:		jp	pe,sbc_6
		inc_error_cnt
sbc_6:		jr	nc,sbc_7
		inc_error_cnt
sbc_7:		jr	z,sbc_8
		inc_error_cnt
sbc_8:		ld	b,data_ff
		sbc	a,b
		jp	po,sbc_9
		inc_error_cnt
sbc_9:		jr	nz,sbc_10
		inc_error_cnt
sbc_10:		ld	b,0
		sbc	a,b
		jr	z,sbc_11
		inc_error_cnt
sbc_11:		ld	a,data_aa
		ld	c,data_ff
		sbc	a,c
		jr	c,sbc_12
		inc_error_cnt
sbc_12:		ld	c,0
		sbc	a,c
		jr	nc,sbc_13
		inc_error_cnt
sbc_13:		cp	data_aa
		jr	z,sbc_14
		inc_error_cnt
sbc_14:		ld	a,data_55
		ld	d,data_ff
		sbc	a,d
		jr	c,sbc_15
		inc_error_cnt
sbc_15:		ld	d,0
		sbc	a,d
		jr	nc,sbc_16
		inc_error_cnt
sbc_16:		cp	data_55
		jr	z,sbc_17
		inc_error_cnt
sbc_17:		ld	a,data_aa
		ld	e,data_ff
		sbc	a,e
		jr	c,sbc_18
		inc_error_cnt
sbc_18:		ld	e,0
		sbc	a,e
		jr	nc,sbc_19
		inc_error_cnt
sbc_19:		cp	data_aa
		jr	z,sbc_20
		inc_error_cnt
sbc_20:		ld	a,data_55
		ld	h,data_ff
		sbc	a,h
		jr	c,sbc_21
		inc_error_cnt
sbc_21:		ld	h,0
		sbc	a,h
		jr	nc,sbc_22
		inc_error_cnt
sbc_22:		cp	data_55
		jr	z,sbc_23
		inc_error_cnt
sbc_23:		ld	a,data_aa
		ld	l,data_ff
		sbc	a,l
		jr	c,sbc_24
		inc_error_cnt
sbc_24:		ld	l,0
		sbc	a,l
		jr	nc,sbc_25
		inc_error_cnt
sbc_25:		cp	data_aa
		jr	z,sbc_26
		inc_error_cnt
sbc_26:		ld	a,data_7f
		sbc	a,data_ff
		jp	m,sbc_27
		inc_error_cnt
sbc_27:		jp	pe,sbc_28
		inc_error_cnt
sbc_28:		jr	c,sbc_29
		inc_error_cnt
sbc_29:		jr	nz,sbc_30
		inc_error_cnt
sbc_30:		sbc	a,data_7f
		jp	p,sbc_31
		inc_error_cnt
sbc_31:		jp	pe,sbc_32
		inc_error_cnt
sbc_32:		jr	nc,sbc_33
		inc_error_cnt
sbc_33:		jr	z,sbc_34
		inc_error_cnt
sbc_34:		sbc	a,data_ff
		jr	nz,sbc_35
		inc_error_cnt
sbc_35:		cp	1
		jr	z,sbc_36
		inc_error_cnt
sbc_36:		ld	hl,var1
		ld	a,data_7f
		sbc	a,(hl)
		jp	m,sbc_37
		inc_error_cnt
sbc_37:		jp	pe,sbc_38
		inc_error_cnt
sbc_38:		jr	c,sbc_39
		inc_error_cnt
sbc_39:		jr	nz,sbc_40
		inc_error_cnt
sbc_40:		ld	hl,var5
		sbc	a,(hl)
		jp	p,sbc_41
		inc_error_cnt
sbc_41:		jp	pe,sbc_42
		inc_error_cnt
sbc_42:		jr	nc,sbc_43
		inc_error_cnt
sbc_43:		jr	z,sbc_44
		inc_error_cnt
sbc_44:		ld	hl,var2
		sbc	a,(hl)
		jr	nz,sbc_45
		inc_error_cnt
sbc_45:		cp	data_aa+1
		jr	z,sbc_46
		inc_error_cnt
sbc_46:		ld	ix,var3
		ld	a,data_7f
		sbc	a,(ix-2)
		jp	m,sbc_47
		inc_error_cnt
sbc_47:		jp	pe,sbc_48
		inc_error_cnt
sbc_48:		jr	c,sbc_49
		inc_error_cnt
sbc_49:		jr	nz,sbc_50
		inc_error_cnt
sbc_50:		sbc	a,(ix+2)
		jp	p,sbc_51
		inc_error_cnt
sbc_51:		jp	pe,sbc_52
		inc_error_cnt
sbc_52:		jr	nc,sbc_53
		inc_error_cnt
sbc_53:		jr	z,sbc_54
		inc_error_cnt
sbc_54:		sbc	a,(ix-1)
		jr	nz,sbc_55
		inc_error_cnt
sbc_55:		cp	data_aa+1
		jr	z,sbc_56
		inc_error_cnt
sbc_56:		ld	iy,var3
		ld	a,data_7f
		sbc	a,(ix-2)
		jp	m,sbc_57
		inc_error_cnt
sbc_57:		jp	pe,sbc_58
		inc_error_cnt
sbc_58:		jr	c,sbc_59
		inc_error_cnt
sbc_59:		jr	nz,sbc_60
		inc_error_cnt
sbc_60:		sbc	a,(ix+2)
		jp	p,sbc_61
		inc_error_cnt
sbc_61:		jp	pe,sbc_62
		inc_error_cnt
sbc_62:		jr	nc,sbc_63
		inc_error_cnt
sbc_63:		jr	z,sbc_64
		inc_error_cnt
sbc_64:		sbc	a,(ix+1)
		jr	nz,sbc_65
		inc_error_cnt
sbc_65:		cp	data_55+1
		jr	z,and_0
		inc_error_cnt
and_0:		ld	a,data_ff
		add	a,1			;set carry
		ld	a,data_ff
		ld	b,data_aa
		and	a,b
		jr	nc,and_1
		inc_error_cnt
and_1:		jp	m,and_2
		inc_error_cnt
and_2:		jp	pe,and_3
		inc_error_cnt
and_3:		jr	nz,and_4
		inc_error_cnt
and_4:		ld	b,data_55
		and	a,b
		jp	p,and_5
		inc_error_cnt
and_5:		jr	z,and_6
		inc_error_cnt
and_6:		ld	a,data_ff
		ld	b,data_7f
		and	a,b
		jp	po,and_7
		inc_error_cnt
and_7:		ld	b,data_55
		and	a,b
		jp	pe,and_8
		inc_error_cnt
and_8:		ld	a,data_ff
		ld	c,data_80
		and	a,c
		jp	m,and_9
		inc_error_cnt
and_9:		cp	data_80
		jr	z,and_10
		inc_error_cnt
and_10:		ld	a,data_ff
		ld	d,data_7f
		and	a,d
		jp	p,and_11
		inc_error_cnt
and_11:		cp	data_7f
		jr	z,and_12
		inc_error_cnt
and_12:		ld	a,data_ff
		ld	e,data_aa
		and	a,e
		jp	m,and_13
		inc_error_cnt
and_13:		cp	data_aa
		jr	z,and_14
		inc_error_cnt
and_14:		ld	a,data_ff
		ld	h,data_55
		and	a,h
		jp	p,and_15
		inc_error_cnt
and_15:		cp	data_55
		jr	z,and_16
		inc_error_cnt
and_16:		ld	a,data_ff
		ld	l,data_aa
		and	a,l
		jp	m,and_17
		inc_error_cnt
and_17:		cp	data_aa
		jr	z,and_18
		inc_error_cnt
and_18:		ld	a,data_ff
		and	a,data_aa
		jp	m,and_19
		inc_error_cnt
and_19:		jr	nz,and_20
		inc_error_cnt
and_20:		and	a,data_55
		jp	p,and_21
		inc_error_cnt
and_21:		jr	z,and_22
		inc_error_cnt
and_22:		ld	a,data_ff
		and	a,data_7f
		jp	po,and_23
		inc_error_cnt
and_23:		and	a,data_55
		jp	pe,and_24
		inc_error_cnt
and_24:		jr	nz,and_25
		inc_error_cnt
and_25:		and	a,data_aa
		jr	z,and_26
		inc_error_cnt
and_26:		ld	a,data_ff
		and	a,data_aa
		cp	data_aa
		jr	z,and_27
		inc_error_cnt
and_27:		ld	hl,var4
		ld	a,data_ff
		and	a,(hl)
		jp	m,and_28
		inc_error_cnt
and_28:		jr	nz,and_29
		inc_error_cnt
and_29:		ld	hl,var2
		and	a,(hl)
		jp	p,and_30
		inc_error_cnt
and_30:		jr	z,and_31
		inc_error_cnt
and_31:		ld	a,data_ff
		ld	hl,var5
		and	a,(hl)
		jp	po,and_32
		inc_error_cnt
and_32:		ld	hl,var2
		and	a,(hl)
		jp	pe,and_33
		inc_error_cnt
and_33:		cp	data_55
		jr	z,and_34
		inc_error_cnt
and_34:		ld	ix,var3
		ld	a,data_ff
		and	a,(ix+1)
		jp	m,and_35
		inc_error_cnt
and_35:		jr	nz,and_36
		inc_error_cnt
and_36:		and	a,(ix-1)
		jp	p,and_37
		inc_error_cnt
and_37:		jr	z,and_38
		inc_error_cnt
and_38:		ld	a,data_ff
		and	a,(ix+2)
		jp	po,and_39
		inc_error_cnt
and_39:		and	a,(ix-1)
		jp	pe,and_40
		inc_error_cnt
and_40:		cp	data_55
		jr	z,and_41
		inc_error_cnt
and_41:		ld	iy,var3
		ld	a,data_ff
		and	a,(iy+1)
		jp	m,and_42
		inc_error_cnt
and_42:		jr	nz,and_43
		inc_error_cnt
and_43:		and	a,(iy-1)
		jp	p,and_44
		inc_error_cnt
and_44:		jr	z,and_45
		inc_error_cnt
and_45:		ld	a,data_ff
		and	a,(iy+2)
		jp	po,and_46
		inc_error_cnt
and_46:		and	a,(iy-1)
		jp	pe,and_47
		inc_error_cnt
and_47:		cp	data_55
		jr	z,or_0
		inc_error_cnt
or_0:		ld	a,0
		ld	b,data_7f
		or	a,b
		jp	p,or_1
		inc_error_cnt
or_1:		jp	po,or_2
		inc_error_cnt
or_2:		ld	b,data_80
		or	a,b
		jp	m,or_3
		inc_error_cnt
or_3:		jp	pe,or_4
		inc_error_cnt
or_4:		cp	data_ff
		jr	z,or_5
		inc_error_cnt
or_5:		ld	a,0
		ld	b,0
		or	a,b
		jr	z,or_6
		inc_error_cnt
or_6:		ld	b,data_55
		or	a,b
		jr	nz,or_7
		inc_error_cnt
or_7:		cp	data_55
		jr	z,or_8
		inc_error_cnt
or_8:		ld	a,data_ff
		add	a,1
		jr	c,or_9
		inc_error_cnt
or_9:		ld	b,data_7f
		or	a,b
		jr	nc,or_10
		inc_error_cnt
or_10:		cp	data_7f
		jr	z,or_11
		inc_error_cnt
or_11:		ld	a,0
		ld	c,data_55
		or	a,c
		cp	data_55
		jr	z,or_12
		inc_error_cnt
or_12:		ld	c,data_aa
		or	a,c
		cp	data_ff
		jr	z,or_13
		inc_error_cnt
or_13:		ld	a,0
		ld	d,data_aa
		or	a,d
		cp	data_aa
		jr	z,or_14
		inc_error_cnt
or_14:		ld	e,data_55
		or	a,e
		cp	data_ff
		jr	z,or_15
		inc_error_cnt
or_15:		ld	a,0
		ld	h,data_80
		or	a,h
		cp	data_80
		jr	z,or_16
		inc_error_cnt
or_16:		ld	l,data_7f
		or	a,l
		cp	data_ff
		jr	z,or_17
		inc_error_cnt
or_17:		ld	a,0
		or	a,data_7f
		jp	p,or_18
		inc_error_cnt
or_18:		jp	po,or_19
		inc_error_cnt
or_19:		or	a,data_80
		jp	m,or_20
		inc_error_cnt
or_20:		jp	pe,or_21
		inc_error_cnt
or_21:		cp	data_ff
		jr	z,or_22
		inc_error_cnt
or_22:		ld	a,0
		or	a,0
		jr	z,or_23
		inc_error_cnt
or_23:		or	a,data_7f
		jr	nz,or_24
		inc_error_cnt
or_24:		ld	a,data_ff
		add	a,1
		jr	c,or_25
		inc_error_cnt
or_25:		or	a,data_55
		jr	nc,or_26
		inc_error_cnt
or_26:		cp	data_55
		jr	z,or_27
		inc_error_cnt
or_27:		ld	hl,var5
		ld	a,0
		or	a,(hl)
		jp	p,or_28
		inc_error_cnt
or_28:		jp	po,or_29
		inc_error_cnt
or_29:		ld	hl,var3
		or	a,(hl)
		jp	m,or_30
		inc_error_cnt
or_30:		jp	pe,or_31
		inc_error_cnt
or_31:		cp	data_ff
		jr	z,or_32
		inc_error_cnt
or_32:		ld	hl,t_var1
		ld	a,0
		ld	(hl),a
		or	a,(hl)
		jr	z,or_33
		inc_error_cnt
or_33:		ld	hl,var2
		or	a,(hl)
		jr	nz,or_34
		inc_error_cnt
or_34:		cp	data_55
		jr	z,or_35
		inc_error_cnt
or_35:		ld	ix,var3
		ld	a,0
		or	a,(ix+2)
		jp	p,or_36
		inc_error_cnt
or_36:		jp	po,or_37
		inc_error_cnt
or_37:		or	a,(ix+0)
		jp	m,or_38
		inc_error_cnt
or_38:		jp	pe,or_39
		inc_error_cnt
or_39:		cp	data_ff
		jr	z,or_40
		inc_error_cnt
or_40:		ld	ix,t_var3
		ld	a,0
		ld	(ix-2),a
		or	a,(ix-2)
		jr	z,or_41
		inc_error_cnt
or_41:		ld	(ix+2),data_aa
		or	a,(ix+2)
		jr	nz,or_42
		inc_error_cnt
or_42:		cp	data_aa
		jr	z,or_43
		inc_error_cnt
or_43:		ld	iy,var3
		ld	a,0
		or	a,(iy+2)
		jp	p,or_44
		inc_error_cnt
or_44:		jp	po,or_45
		inc_error_cnt
or_45:		or	a,(iy+0)
		jp	m,or_46
		inc_error_cnt
or_46:		jp	pe,or_47
		inc_error_cnt
or_47:		cp	data_ff
		jr	z,or_48
		inc_error_cnt
or_48:		ld	iy,t_var3
		ld	a,0
		ld	(iy-2),a
		or	a,(iy-2)
		jr	z,or_49
		inc_error_cnt
or_49:		ld	(iy+2),data_55
		or	a,(iy+2)
		jr	nz,or_50
		inc_error_cnt
or_50:		cp	data_55
		jr	z,xor_0
		inc_error_cnt
xor_0:		ld	a,data_ff
		ld	b,data_55
		xor	a,b
		jp	m,xor_1
		inc_error_cnt
xor_1:		jp	pe,xor_2
		inc_error_cnt
xor_2:		ld	b,data_80
		xor	a,b
		jp	p,xor_3
		inc_error_cnt
xor_3:		jp	po,xor_4
		inc_error_cnt
xor_4:		cp	#2a
		jr	z,xor_5
		inc_error_cnt
xor_5:		ld	a,data_ff
		ld	b,data_ff
		xor	a,b
		jr	z,xor_6
		inc_error_cnt
xor_6:		ld	b,data_55
		xor	a,b
		jr	nz,xor_7
		inc_error_cnt
xor_7:		cp	data_55
		jr	z,xor_8
		inc_error_cnt
xor_8:		ld	a,data_ff
		add	a,1
		jr	c,xor_9
		inc_error_cnt
xor_9:		ld	b,data_aa
		xor	a,b
		jr	nc,xor_10
		inc_error_cnt
xor_10:		cp	data_aa
		jr	z,xor_11
		inc_error_cnt
xor_11:		ld	a,data_ff
		ld	c,data_7f
		xor	a,c
		jp	m,xor_12
		inc_error_cnt
xor_12:		cp	data_80
		jr	z,xor_13
		inc_error_cnt
xor_13:		ld	a,data_ff
		ld	d,data_55
		xor	a,d
		jp	m,xor_14
		inc_error_cnt
xor_14:		cp	data_aa
		jr	z,xor_15
		inc_error_cnt
xor_15:		ld	e,data_55
		xor	a,e
		jp	m,xor_16
		inc_error_cnt
xor_16:		cp	data_ff
		jr	z,xor_17
		inc_error_cnt
xor_17:		ld	a,data_ff
		ld	h,data_7f
		xor	a,h
		jp	po,xor_18
		inc_error_cnt
xor_18:		ld	l,data_7f
		xor	a,l
		jp	pe,xor_19
		inc_error_cnt
xor_19:		cp	data_ff
		jr	z,xor_20
		inc_error_cnt
xor_20:		ld	a,data_ff
		add	a,1
		jr	c,xor_21
		inc_error_cnt
xor_21:		ld	b,data_7f
		xor	a,b
		jr	nc,xor_22
		inc_error_cnt
xor_22:		cp	data_7f
		jr	z,xor_23
		inc_error_cnt
xor_23:		ld	a,data_ff
		xor	a,data_7f
		jp	po,xor_24
		inc_error_cnt
xor_24:		jp	m,xor_25
		inc_error_cnt
xor_25:		xor	a,data_7f
		jp	pe,xor_26
		inc_error_cnt
xor_26:		jp	m,xor_27
		inc_error_cnt
xor_27:		xor	a,data_aa
		jp	p,xor_28
		inc_error_cnt
xor_28:		cp	data_55
		jr	z,xor_29
		inc_error_cnt
xor_29:		ld	a,data_ff
		xor	a,data_ff
		jr	z,xor_30
		inc_error_cnt
xor_30:		xor	a,data_80
		jr	nz,xor_31
		inc_error_cnt
xor_31:		cp	data_80
		jr	z,xor_32
		inc_error_cnt
xor_32:		ld	hl,var5
		ld	a,data_ff
		xor	a,(hl)
		jp	m,xor_33
		inc_error_cnt
xor_33:		jp	po,xor_34
		inc_error_cnt
xor_34:		xor	a,(hl)
		jp	m,xor_35
		inc_error_cnt
xor_35:		jp	pe,xor_36
		inc_error_cnt
xor_36:		ld	hl,var3
		xor	a,(hl)
		jp	p,xor_37
		inc_error_cnt
xor_37:		cp	data_7f
		jr	z,xor_38
		inc_error_cnt
xor_38:		ld	hl,var1
		ld	a,data_ff
		xor	a,(hl)
		jr	z,xor_39
		inc_error_cnt
xor_39:		ld	hl,var2
		xor	a,(hl)
		jr	nz,xor_40
		inc_error_cnt
xor_40:		cp	data_55
		jr	z,xor_41
		inc_error_cnt
xor_41:		ld	ix,var3
		ld	a,data_ff
		xor	a,(ix+2)
		jp	m,xor_42
		inc_error_cnt
xor_42:		jp	po,xor_43
		inc_error_cnt
xor_43:		xor	a,(ix+2)
		jp	m,xor_44
		inc_error_cnt
xor_44:		jp	pe,xor_45
		inc_error_cnt
xor_45:		xor	a,(ix+1)
		jp	p,xor_46
		inc_error_cnt
xor_46:		cp	data_55
		jr	z,xor_47
		inc_error_cnt
xor_47:		ld	a,data_ff
		xor	a,(ix-2)
		jr	z,xor_48
		inc_error_cnt
xor_48:		xor	a,(ix+1)
		jr	nz,xor_49
		inc_error_cnt
xor_49:		cp	data_aa
		jr	z,xor_50
		inc_error_cnt
xor_50:		ld	iy,var3
		ld	a,data_ff
		xor	a,(iy+2)
		jp	m,xor_51
		inc_error_cnt
xor_51:		jp	po,xor_52
		inc_error_cnt
xor_52:		xor	a,(iy+2)
		jp	m,xor_53
		inc_error_cnt
xor_53:		jp	pe,xor_54
		inc_error_cnt
xor_54:		xor	a,(iy+1)
		jp	p,xor_55
		inc_error_cnt
xor_55:		cp	data_55
		jr	z,xor_56
		inc_error_cnt
xor_56:		ld	a,data_ff
		xor	a,(iy-2)
		jr	z,xor_57
		inc_error_cnt
xor_57:		xor	a,(iy-1)
		jr	nz,xor_58
		inc_error_cnt
xor_58:		cp	data_55
		jr	z,cp_0
		inc_error_cnt
cp_0:		ld	a,0
		ld	b,0
		cp	a,b
		jr	z,cp_1
		inc_error_cnt
cp_1:		jp	p,cp_2
		inc_error_cnt
cp_2:		jr	nc,cp_3
		inc_error_cnt
cp_3:		ld	b,data_55
		cp	a,b
		jr	nz,cp_4
		inc_error_cnt
cp_4:		jp	m,cp_5
		inc_error_cnt
cp_5:		jr	c,cp_6
		inc_error_cnt
cp_6:		ld	a,data_80
		ld	b,data_7f
		cp	a,b
		jp	pe,cp_7
		inc_error_cnt
cp_7:		jr	nc,cp_8
		inc_error_cnt
cp_8:		ld	a,data_7f
		ld	b,data_80
		cp	a,b
		jp	pe,cp_9
		inc_error_cnt
cp_9:		jr	c,cp_10
		inc_error_cnt
cp_10:		ld	b,0
		cp	a,b
		jp	po,cp_11
		inc_error_cnt
cp_11:		jr	nc,cp_12
		inc_error_cnt
cp_12:		ld	a,data_80
		ld	c,0
		cp	a,c
		jp	m,cp_13
		inc_error_cnt
cp_13:		ld	c,data_80
		cp	a,c
		jr	z,cp_14
		inc_error_cnt
cp_14:		ld	a,data_7f
		ld	d,data_55
		cp	a,d
		jp	p,cp_15
		inc_error_cnt
cp_15:		jr	nz,cp_16
		inc_error_cnt
cp_16:		ld	e,data_7f
		cp	a,e
		jr	z,cp_17
		inc_error_cnt
cp_17:		ld	a,data_80
		ld	h,data_ff
		cp	a,h
		jp	m,cp_18
		inc_error_cnt
cp_18:		jr	c,cp_19
		inc_error_cnt
cp_19:		ld	l,data_80
		cp	a,l
		jr	z,cp_20
		inc_error_cnt
cp_20:		ld	a,data_80
		cp	a,data_7f
		jp	p,cp_21
		inc_error_cnt
cp_21:		jp	pe,cp_22
		inc_error_cnt
cp_22:		jr	nz,cp_23
		inc_error_cnt
cp_23:		cp	a,data_80
		jp	p,cp_24
		inc_error_cnt
cp_24:		jp	po,cp_25
		inc_error_cnt
cp_25:		jr	z,cp_26
		inc_error_cnt
cp_26:		ld	a,data_55
		cp	a,data_7f
		jr	c,cp_27
		inc_error_cnt
cp_27:		jp	m,cp_28
		inc_error_cnt
cp_28:		cp	a,data_55
		jr	nc,cp_29
		inc_error_cnt
cp_29:		jr	z,cp_30
		inc_error_cnt
cp_30:		ld	a,data_80
		ld	hl,var5
		cp	a,(hl)
		jp	p,cp_31
		inc_error_cnt
cp_31:		jp	pe,cp_32
		inc_error_cnt
cp_32:		jr	nz,cp_33
		inc_error_cnt
cp_33:		ld	hl,var3
		cp	a,(hl)
		jp	p,cp_34
		inc_error_cnt
cp_34:		jp	po,cp_35
		inc_error_cnt
cp_35:		jr	z,cp_36
		inc_error_cnt
cp_36:		ld	a,data_55
		ld	hl,var5
		cp	a,(hl)
		jr	c,cp_37
		inc_error_cnt
cp_37:		jp	m,cp_38
		inc_error_cnt
cp_38:		ld	hl,var2
		cp	a,(hl)
		jr	nc,cp_39
		inc_error_cnt
cp_39:		jp	p,cp_40
		inc_error_cnt
cp_40:		jr	z,cp_41
		inc_error_cnt
cp_41:		ld	a,data_80
		ld	ix,var3
		cp	a,(ix+2)
		jp	p,cp_42
		inc_error_cnt
cp_42:		jp	pe,cp_43
		inc_error_cnt
cp_43:		jr	nz,cp_44
		inc_error_cnt
cp_44:		cp	a,(ix+0)
		jp	p,cp_45
		inc_error_cnt
cp_45:		jp	po,cp_46
		inc_error_cnt
cp_46:		jr	z,cp_47
		inc_error_cnt
cp_47:		ld	a,data_55
		cp	a,(ix-2)
		jr	nz,cp_48
		inc_error_cnt
cp_48:		jr	c,cp_49
		inc_error_cnt
cp_49:		cp	a,(ix-1)
		jr	z,cp_50
		inc_error_cnt
cp_50:		jr	nc,cp_51
		inc_error_cnt
cp_51:		ld	iy,var3
		ld	a,data_80
		cp	a,(iy+2)
		jp	p,cp_52
		inc_error_cnt
cp_52:		jp	pe,cp_53
		inc_error_cnt
cp_53:		jr	nz,cp_54
		inc_error_cnt
cp_54:		cp	a,(iy+0)
		jp	p,cp_55
		inc_error_cnt
cp_55:		jp	po,cp_56
		inc_error_cnt
cp_56:		jr	z,cp_57
		inc_error_cnt
cp_57:		ld	a,data_55
		cp	a,(iy-2)
		jr	nz,cp_58
		inc_error_cnt
cp_58:		jr	c,cp_59
		inc_error_cnt
cp_59:		cp	a,(iy-1)
		jr	z,cp_60
		inc_error_cnt
cp_60:		jr	nc,inc_0
		inc_error_cnt
inc_0:		ld	a,data_7f
		cp	a,data_7f
		jr	z,inc_1
		inc_error_cnt
inc_1:		inc	a
		jp	pe,inc_2
		inc_error_cnt
inc_2:		jp	m,inc_3
		inc_error_cnt
inc_3:		jr	nz,inc_4
		inc_error_cnt
inc_4:		ld	a,data_55
		inc	a
		jp	po,inc_5
		inc_error_cnt
inc_5:		jp	p,inc_6
		inc_error_cnt
inc_6:		cp	a,data_55+1
		jr	z,inc_7
		inc_error_cnt
inc_7:		ld	a,data_ff-1
		inc	a
		jr	nz,inc_8
		inc_error_cnt
inc_8:		jp	m,inc_9
		inc_error_cnt
inc_9:		inc	a
		jr	z,inc_10
		inc_error_cnt
inc_10:		ld	b,data_aa
		inc	b
		jp	m,inc_11
		inc_error_cnt
inc_11:		ld	a,b
		cp	a,data_aa+1
		jr	z,inc_12
		inc_error_cnt
inc_12:		ld	c,data_80
		inc	c
		jp	m,inc_13
		inc_error_cnt
inc_13:		ld	a,c
		cp	a,data_80+1
		jr	z,inc_14
		inc_error_cnt
inc_14:		ld	d,data_ff
		inc	d
		jr	z,inc_15
		inc_error_cnt
inc_15:		ld	e,data_55
		inc	e
		jp	p,inc_16
		inc_error_cnt
inc_16:		ld	a,e
		cp	a,data_55+1
		jr	z,inc_17
		inc_error_cnt
inc_17:		ld	h,data_7f
		inc	h
		jp	pe,inc_18
		inc_error_cnt
inc_18:		ld	a,h
		cp	a,data_80
		jr	z,inc_19
		inc_error_cnt
inc_19:		ld	l,data_aa
		inc	l
		jp	m,inc_20
		inc_error_cnt
inc_20:		ld	a,l
		cp	a,data_aa+1
		jr	z,inc_21
		inc_error_cnt
inc_21:		ld	hl,t_var1
		ld	a,data_7f
		ld	(hl),a
		cp	a,(hl)
		jr	z,inc_22
		inc_error_cnt
inc_22:		inc	(hl)
		jp	m,inc_23
		inc_error_cnt
inc_23:		jp	pe,inc_24
		inc_error_cnt
inc_24:		ld	a,data_55
		ld	(hl),a
		inc	(hl)
		jp	p,inc_25
		inc_error_cnt
inc_25:		jp	po,inc_26
		inc_error_cnt
inc_26:		ld	a,(hl)
		cp	a,data_55+1
		jr	z,inc_27
		inc_error_cnt
inc_27:		ld	a,data_ff
		ld	(hl),a
		inc	(hl)
		jr	z,inc_28
		inc_error_cnt
inc_28:		inc	(hl)
		jr	nz,inc_29
		inc_error_cnt
inc_29:		ld	a,(hl)
		cp	a,1
		jr	z,inc_30
		inc_error_cnt
inc_30:		ld	a,data_aa
		ld	(hl),a
		inc	(hl)
		jp	m,inc_31
		inc_error_cnt
inc_31:		ld	a,(hl)
		cp	a,data_aa+1
		jr	z,inc_32
		inc_error_cnt
inc_32:		ld	ix,t_var3
		ld	a,data_7f
		ld	(ix-2),a
		cp	a,data_7f
		jr	z,inc_33
		inc_error_cnt
inc_33:		inc	(ix-2)
		jp	m,inc_34
		inc_error_cnt
inc_34:		jp	pe,inc_35
		inc_error_cnt
inc_35:		ld	a,data_55
		ld	(ix+2),a
		inc	(ix+2)
		jp	p,inc_36
		inc_error_cnt
inc_36:		jp	po,inc_37
		inc_error_cnt
inc_37:		ld	a,(ix+2)
		cp	a,data_55+1
		jr	z,inc_38
		inc_error_cnt
inc_38:		ld	a,data_ff
		ld	(ix-1),a
		inc	(ix-1)
		jr	z,inc_39
		inc_error_cnt
inc_39:		inc	(ix-1)
		jr	nz,inc_40
		inc_error_cnt
inc_40:		ld	a,(ix-1)
		cp	a,1
		jr	z,inc_41
		inc_error_cnt
inc_41:		ld	a,data_aa
		ld	(ix+1),a
		inc	(ix+1)
		jp	m,inc_42
		inc_error_cnt
inc_42:		ld	a,(ix+1)
		cp	a,data_aa+1
		jr	z,inc_43
		inc_error_cnt
inc_43:		ld	iy,t_var3
		ld	a,data_7f
		ld	(iy+2),a
		cp	a,data_7f
		jr	z,inc_44
		inc_error_cnt
inc_44:		inc	(iy+2)
		jp	m,inc_45
		inc_error_cnt
inc_45:		jp	pe,inc_46
		inc_error_cnt
inc_46:		ld	a,data_55
		ld	(iy-2),a
		inc	(iy-2)
		jp	p,inc_47
		inc_error_cnt
inc_47:		jp	po,inc_48
		inc_error_cnt
inc_48:		ld	a,(iy-2)
		cp	a,data_55+1
		jr	z,inc_49
		inc_error_cnt
inc_49:		ld	a,data_ff
		ld	(iy+1),a
		inc	(iy+1)
		jr	z,inc_50
		inc_error_cnt
inc_50:		inc	(iy+1)
		jr	nz,inc_51
		inc_error_cnt
inc_51:		ld	a,(iy+1)
		cp	a,1
		jr	z,inc_52
		inc_error_cnt
inc_52:		ld	a,data_80
		ld	(iy-1),a
		inc	(iy-1)
		jp	m,inc_53
		inc_error_cnt
inc_53:		ld	a,(iy-1)
		cp	a,data_80+1
		jr	z,dec_0
		inc_error_cnt
dec_0:		ld	a,data_80
		cp	a,data_80
		jr	z,dec_1
		inc_error_cnt
dec_1:		dec	a
		jp	p,dec_2
		inc_error_cnt
dec_2:		jp	pe,dec_3
		inc_error_cnt
dec_3:		ld	a,0
		dec	a
		jp	m,dec_4
		inc_error_cnt
dec_4:		jp	po,dec_5
		inc_error_cnt
dec_5:		cp	a,data_ff
		jr	z,dec_6
		inc_error_cnt
dec_6:		ld	a,1
		dec	a
		jr	z,dec_7
		inc_error_cnt
dec_7:		dec	a
		jr	nz,dec_8
		inc_error_cnt
dec_8:		cp	a,data_ff
		jr	z,dec_9
		inc_error_cnt
dec_9:		ld	a,data_aa
		dec	a
		cp	a,data_aa-1
		jr	z,dec_10
		inc_error_cnt
dec_10:		ld	b,data_7f
		dec	b
		ld	a,b
		cp	a,data_7f-1
		jr	z,dec_11
		inc_error_cnt
dec_11:		ld	c,data_55
		dec	c
		ld	a,c
		cp	a,data_55-1
		jr	z,dec_12
		inc_error_cnt
dec_12:		ld	d,data_aa
		dec	d
		ld	a,d
		cp	a,data_aa-1
		jr	z,dec_13
		inc_error_cnt
dec_13:		ld	e,data_80
		dec	e
		ld	a,e
		cp	a,data_80-1
		jr	z,dec_14
		inc_error_cnt
dec_14:		ld	h,data_ff
		dec	h
		ld	a,h
		cp	a,data_ff-1
		jr	z,dec_15
		inc_error_cnt
dec_15:		ld	l,data_55
		dec	l
		ld	a,l
		cp	a,data_55-1
		jr	z,dec_16
		inc_error_cnt
dec_16:		ld	hl,t_var5
		ld	a,data_80
		ld	(hl),a
		cp	a,(hl)
		jr	z,dec_17
		inc_error_cnt
dec_17:		dec	(hl)
		jp	p,dec_18
		inc_error_cnt
dec_18:		jp	pe,dec_19
		inc_error_cnt
dec_19:		ld	a,0
		ld	(hl),a
		dec	(hl)
		jp	m,dec_20
		inc_error_cnt
dec_20:		jp	po,dec_21
		inc_error_cnt
dec_21:		ld	a,(hl)
		cp	a,data_ff
		jr	z,dec_22
		inc_error_cnt
dec_22:		ld	a,1
		ld	(hl),a
		dec	(hl)
		jr	z,dec_23
		inc_error_cnt
dec_23:		dec	(hl)
		jr	nz,dec_24
		inc_error_cnt
dec_24:		ld	a,(hl)
		cp	a,data_ff
		jr	z,dec_25
		inc_error_cnt
dec_25:		ld	a,data_aa
		ld	(hl),a
		dec	(hl)
		ld	a,(hl)
		cp	a,data_aa-1
		jr	z,dec_26
		inc_error_cnt
dec_26:		ld	ix,t_var3
		ld	a,data_80
		ld	(ix-2),a
		cp	a,(ix-2)
		jr	z,dec_27
		inc_error_cnt
dec_27:		dec	(ix-2)
		jp	p,dec_28
		inc_error_cnt
dec_28:		jp	pe,dec_29
		inc_error_cnt
dec_29:		ld	a,0
		ld	(ix+2),a
		dec	(ix+2)
		jp	m,dec_30
		inc_error_cnt
dec_30:		jp	po,dec_31
		inc_error_cnt
dec_31:		ld	a,(ix+2)
		cp	a,data_ff
		jr	z,dec_32
		inc_error_cnt
dec_32:		ld	a,1
		ld	(ix-1),a
		dec	(ix-1)
		jr	z,dec_33
		inc_error_cnt
dec_33:		dec	(ix-1)
		jr	nz,dec_34
		inc_error_cnt
dec_34:		ld	a,(ix-1)
		cp	a,data_ff
		jr	z,dec_35
		inc_error_cnt
dec_35:		ld	a,data_7f
		ld	(ix+1),a
		dec	(ix+1)
		ld	a,(ix+1)
		cp	a,data_7f-1
		jr	z,dec_36
		inc_error_cnt
dec_36:		ld	iy,t_var3
		ld	a,data_80
		ld	(iy-2),a
		cp	a,(iy-2)
		jr	z,dec_37
		inc_error_cnt
dec_37:		dec	(iy-2)
		jp	p,dec_38
		inc_error_cnt
dec_38:		jp	pe,dec_39
		inc_error_cnt
dec_39:		ld	a,0
		ld	(iy+2),a
		dec	(iy+2)
		jp	m,dec_40
		inc_error_cnt
dec_40:		jp	po,dec_41
		inc_error_cnt
dec_41:		ld	a,(iy+2)
		cp	a,data_ff
		jr	z,dec_42
		inc_error_cnt
dec_42:		ld	a,1
		ld	(iy+1),a
		dec	(iy+1)
		jr	z,dec_43
		inc_error_cnt
dec_43:		dec	(iy+1)
		jr	nz,dec_44
		inc_error_cnt
dec_44:		ld	a,(iy+1)
		cp	a,data_ff
		jr	z,dec_45
		inc_error_cnt
dec_45:		ld	a,data_aa
		ld	(iy-1),a
		dec	(iy-1)
		ld	a,(iy-1)
		cp	a,data_aa-1
		jr	z,cpl_0
		inc_error_cnt
cpl_0:		ld	a,data_ff
		cpl
		cp	a,0
		jr	z,cpl_1
		inc_error_cnt
cpl_1:		ld	a,data_aa
		cpl
		cp	a,data_55
		jr	z,cpl_2
		inc_error_cnt
cpl_2:		cpl
		cp	a,data_aa
		jr	z,neg_0
		inc_error_cnt
neg_0:		ld	a,data_80
		cp	a,data_80
		jp	po,neg_1
		inc_error_cnt
neg_1:		neg
		jp	pe,neg_2
		inc_error_cnt
neg_2:		jr	nz,neg_3
		inc_error_cnt
neg_3:		jr	c,neg_4
		inc_error_cnt
neg_4:		ld	a,0
		neg
		jp	po,neg_5
		inc_error_cnt
neg_5:		jr	z,neg_6
		inc_error_cnt
neg_6:		jr	nc,neg_7
		inc_error_cnt
neg_7:		ld	a,data_55
		cp	a,data_55
		jp	p,neg_8
		inc_error_cnt
neg_8:		neg
		jp	m,neg_9
		inc_error_cnt
neg_9:		neg
		jp	p,neg_10
		inc_error_cnt
neg_10:		cp	a,data_55
		jr	z,ccf_0
		inc_error_cnt
ccf_0:		scf
		jr	c,ccf_1
		inc_error_cnt
ccf_1:		ccf
		jr	nc,ccf_2
		inc_error_cnt
ccf_2:		ccf
		jr	c,im_0
		inc_error_cnt
im_0:		im	0
		im	1
		im	2
daa_0:		ld	a,#99
		ld	b,#1
		add	a,b
		daa
		jr	c,daa_1
		inc_error_cnt
daa_1:		jr	z,daa_2
		inc_error_cnt
daa_2:		add	a,b
		jr	nc,daa_3
		inc_error_cnt
daa_3:		jr	nz,daa_4
		inc_error_cnt
daa_4:		cp	a,1
		jr	z,daa_5
		inc_error_cnt
daa_5:		ld	a,#98
		ld	b,1
		add	a,b
		daa
		jp	m,daa_6
		inc_error_cnt
daa_6:		add	a,b
		daa
		jp	p,daa_7
		inc_error_cnt
daa_7:		ld	a,1
		ld	b,1
		add	a,b
		daa
		jp	po,daa_8
		inc_error_cnt
daa_8:		add	a,b
		daa
		jp	pe,daa_9
		inc_error_cnt
daa_9:		cp	a,3
		jr	z,add_74
		inc_error_cnt
add_74:		ld	hl,data_1234
		add	hl,hl
		jr	nc,add_75
		inc_error_cnt
add_75:		ld	a,h
		cp	a,#24
		jr	z,add_76
		inc_error_cnt
add_76:		ld	a,l
		cp	a,#68
		jr	z,add_77
		inc_error_cnt
add_77:		ld	hl,data_7fff
		ld	bc,data_8000
		add	hl,bc
		jr	nc,add_78
		inc_error_cnt
add_78:		ld	bc,1
		add	hl,bc
		jr	c,add_79
		inc_error_cnt
add_79:		ld	a,h
		cp	a,0
		jr	z,add_80
		inc_error_cnt
add_80:		ld	a,l
		cp	a,0
		jr	z,add_81
		inc_error_cnt
add_81:		ld	hl,data_aa55
		ld	de,data_ffff
		add	hl,de
		jr	c,add_82
		inc_error_cnt
add_82:		ld	a,h
		cp	a,data_aa
		jr	z,add_83
		inc_error_cnt
add_83:		ld	a,l
		cp	a,data_55-1
		jr	z,add_84
		inc_error_cnt
add_84:		ld	hl,data_aa55
		ld	sp,data_8000
		add	hl,sp
		jr	c,add_85
		inc_error_cnt
add_85:		ld	a,h
		cp	a,#2a
		jr	z,add_86
		inc_error_cnt
add_86:		ld	a,l
		cp	a,data_55
		jr	z,add_87
		inc_error_cnt
add_87:		ld	sp,stack_end
		ld	hl,data_1234
		scf
		ccf
		adc	hl,hl
		jr	nz,add_88
		inc_error_cnt
add_88:		jr	nc,add_89
		inc_error_cnt
add_89:		jp	p,add_90
		inc_error_cnt
add_90:		jp	po,add_91
		inc_error_cnt
add_91:		ld	bc,data_8000
		adc	hl,bc
		jp	m,add_92
		inc_error_cnt
add_92:		jr	nc,add_93
		inc_error_cnt
add_93:		jp	po,add_94
		inc_error_cnt
add_94:		jp	nz,add_95
		inc_error_cnt
add_95:		adc	hl,bc
		jp	p,add_96
		inc_error_cnt
add_96:		jp	pe,add_97
		inc_error_cnt
add_97:		jr	c,add_98
		inc_error_cnt
add_98:		jr	nz,add_99
		inc_error_cnt
add_99:		ld	de,#db97
		adc	hl,de
		jr	z,add_100
		inc_error_cnt
add_100:	jr	c,add_101
		inc_error_cnt
add_101:	jp	po,add_102
		inc_error_cnt
add_102:	ld	de,0
		adc	hl,de
		jr	nc,add_103
		inc_error_cnt
add_103:	jr	nz,add_104
		inc_error_cnt
add_104:	ld	a,h
		cp	a,0
		jr	z,add_105
		inc_error_cnt
add_105:	ld	a,l
		cp	a,1
		jr	z,add_106
		inc_error_cnt
add_106:	ld	hl,data_1234
		ld	sp,data_ffff
		adc	hl,sp
		jr	c,add_107
		inc_error_cnt
add_107:	ld	a,h
		cp	a,#12
		jr	z,add_108
		inc_error_cnt
add_108:	ld	a,l
		cp	a,#33
		jr	z,sbc_66
		inc_error_cnt
sbc_66:		ld	sp,stack_end
		scf
		ccf
		ld	hl,data_1234
		sbc	hl,hl
		jr	z,sbc_67
		inc_error_cnt
sbc_67:		jp	p,sbc_68
		inc_error_cnt
sbc_68:		jp	po,sbc_69
		inc_error_cnt
sbc_69:		jr	nc,sbc_70
		inc_error_cnt
sbc_70:		ld	bc,data_1234
		sbc	hl,bc
		jr	nz,sbc_71
		inc_error_cnt
sbc_71:		jr	c,sbc_72
		inc_error_cnt
sbc_72:		jp	m,sbc_73
		inc_error_cnt
sbc_73:		jp	po,sbc_74
		inc_error_cnt
sbc_74:		ld	de,data_7fff
		sbc	hl,de
		jr	nz,sbc_75
		inc_error_cnt
sbc_75:		jr	nc,sbc_76
		inc_error_cnt
sbc_76:		jp	p,sbc_77
		inc_error_cnt
sbc_77:		jp	pe,sbc_78
		inc_error_cnt
sbc_78:		ld	sp,data_1234
		sbc	hl,sp
		jr	nz,sbc_79
		inc_error_cnt
sbc_79:		ld	a,h
		cp	a,#5b
		jr	z,sbc_80
		inc_error_cnt
sbc_80:		ld	a,l
		cp	a,#98
		jr	z,add_109
		inc_error_cnt
add_109:	ld	sp,stack_end
		ld	ix,0
		add	ix,sp
		jr	nc,add_110
		inc_error_cnt
add_110:	push	ix
		pop	hl
		ld	a,h
		cp	a,#71		; >stack_end
		jr	z,add_111
		inc_error_cnt
add_111:	ld	a,l
		cp	a,#80		; <stack_end
		jr	z,add_112
		inc_error_cnt
add_112:	ld	ix,data_7fff
		ld	bc,data_aa55
		add	ix,bc
		jr	c,add_113
		inc_error_cnt
add_113:	add	ix,bc
		jr	nc,add_114
		inc_error_cnt
add_114:	push	ix
		pop	hl
		ld	a,h
		cp	a,#d4
		jr	z,add_115
		inc_error_cnt
add_115:	ld	a,l
		cp	a,#a9
		jr	z,add_116
		inc_error_cnt
add_116:	ld	ix,data_1234
		ld	de,data_1234
		add	ix,de
		push	ix
		pop	hl
		ld	a,h
		cp	a,#24		;>(data_1234+data_1234)
		jr	z,add_117
		inc_error_cnt
add_117:	ld	a,l
		cp	a,#68		;<(data_1234+data_1234)
		jr	z,add_118
		inc_error_cnt
add_118:	ld	ix,data_1234
		add	ix,ix
		push	ix
		pop	bc
		ld	a,b
		cp	a,#24		;>(data_1234+data_1234)
		jr	z,add_119
		inc_error_cnt
add_119:	ld	a,c
		cp	a,#68		;<(data_1234+data_1234)
		jr	z,add_120
		inc_error_cnt
add_120:	ld	sp,stack_end
		ld	iy,0
		add	iy,sp
		jr	nc,add_121
		inc_error_cnt
add_121:	push	iy
		pop	hl
		ld	a,h
		cp	a,#71		;>stack_end
		jr	z,add_122
		inc_error_cnt
add_122:	ld	a,l
		cp	a,#80		;<stack_end
		jr	z,add_123
		inc_error_cnt
add_123:	ld	iy,data_7fff
		ld	bc,data_aa55
		add	iy,bc
		jr	c,add_124
		inc_error_cnt
add_124:	add	iy,bc
		jr	nc,add_125
		inc_error_cnt
add_125:	push	iy
		pop	hl
		ld	a,h
		cp	a,#d4
		jr	z,add_126
		inc_error_cnt
add_126:	ld	a,l
		cp	a,#a9
		jr	z,add_127
		inc_error_cnt
add_127:	ld	iy,data_1234
		ld	de,data_1234
		add	iy,de
		push	iy
		pop	hl
		ld	a,h
		cp	a,#24		;>(data_1234+data_1234)
		jr	z,add_128
		inc_error_cnt
add_128:	ld	a,l
		cp	a,#68		;<(data_1234+data_1234)
		jr	z,add_129
		inc_error_cnt
add_129:	ld	iy,data_1234
		add	iy,iy
		push	iy
		pop	bc
		ld	a,b
		cp	a,#24		;>(data_1234+data_1234)
		jr	z,add_130
		inc_error_cnt
add_130:	ld	a,c
		cp	a,#68		;<(data_1234+data_1234)
		jr	z,inc_54
		inc_error_cnt
inc_54:		ld	bc,data_1234
		inc	bc
		ld	a,b
		cp	a,#12      ;bjp was >data_1234
		jr	z,inc_55
		inc_error_cnt
inc_55:		ld	a,c
		cp	a,#34+1      ;bjp was >data_1234+1
		jr	z,inc_56
		inc_error_cnt
inc_56:		ld	de,data_55aa
		inc	de
		ld	a,d
		cp	a,#55		;>data_55aa
		jr	z,inc_57
		inc_error_cnt
inc_57:		ld	a,e
		cp	a,#ab		;<data_55aa+1
		jr	z,inc_58
		inc_error_cnt
inc_58:		ld	hl,data_7fff
		inc	hl
		ld	a,h
		cp	a,#80		;>data_7fff+1
		jr	z,inc_59
		inc_error_cnt
inc_59:		ld	a,l
		cp	a,#00		;<data_7fff+1
		jr	z,inc_60
		inc_error_cnt
inc_60:		ld	hl,0
		inc	sp
		add	hl,sp
		ld	sp,stack_end
		ld	a,h
		cp	a,#71		;>stack_end+1
		jr	z,inc_61
		inc_error_cnt
inc_61:		ld	a,l
		cp	a,#81		;<stack_end+1
		jr	z,inc_62
		inc_error_cnt
inc_62:		ld	ix,data_8000
		inc	ix
		push	ix
		pop	de
		ld	a,d
		cp	a,#80		;>data_8000
		jr	z,inc_63
		inc_error_cnt
inc_63:		ld	a,e
		cp	a,#01		;<data_8000+1
		jr	z,inc_64
		inc_error_cnt
inc_64:		ld	iy,data_7fff
		inc 	iy
		push	iy
		pop	bc
		ld	a,b
		cp	a,#80		;>data_7fff+1
		jr	z,inc_65
		inc_error_cnt
inc_65:		ld	a,c
		cp	a,#00		;<data_7fff+1
		jr	z,dec_46
		inc_error_cnt
dec_46:		ld	bc,data_1234
		dec	bc
		ld	a,b
		cp	a,#12      ;bjp was >data_1234
		jr	z,dec_47
		inc_error_cnt
dec_47:		ld	a,c
		cp	a,#34-1      ;bjp was >data_1234-1
		jr	z,dec_48
		inc_error_cnt
dec_48:		ld	de,data_8000
		dec	de
		ld	a,d
		cp	a,#7f		;>data_7fff
		jr	z,dec_49
		inc_error_cnt
dec_49:		ld	a,e
		cp	a,#ff		;<data_7fff
		jr	z,dec_50
		inc_error_cnt
dec_50:		ld	hl,data_aa55
		dec	hl
		ld	a,h
		cp	a,#aa		;>data_aa55
		jr	z,dec_51
		inc_error_cnt
dec_51:		ld	a,l
		cp	a,#54		;<data_aa55-1
		jr	z,dec_52
		inc_error_cnt
dec_52:		ld	hl,0
		dec	sp
		add	hl,sp
		ld	a,h
		cp	a,#71		;>stack_end-1
		jr	z,dec_53
		inc_error_cnt
dec_53:		ld	a,l
		cp	a,#7f		;<stack_end-1
		jr	z,dec_54
		inc_error_cnt
dec_54:		ld	sp,stack_end
		ld	ix,data_ffff
		dec	ix
		push	ix
		pop	bc
		ld	a,b
		cp	a,#ff		;>data_ffff
		jr	z,dec_55
		inc_error_cnt
dec_55:		ld	a,c
		cp	a,#fe		;<data_ffff-1
		jr	z,dec_56
		inc_error_cnt
dec_56:		ld	iy,data_aa55
		dec	iy
		push	iy
		pop	de
		ld	a,d
		cp	a,#aa		;>data_aa55
		jr	z,dec_57
		inc_error_cnt
dec_57:		ld	a,e
		cp	a,#54		;<data_aa55-1
		jr	z,rlca_0
		inc_error_cnt
		; bjp  don't see any further mucking with sp after the load above.
		; perhaps it is now safe to enable interrupts. and test them a little
rlca_0:		ld	hl, bist_adr      ; enable interrupts
		ld      (hl), bist_ei
		ld	a, #72         ;bjp  this is >int_tbl  - if you move int_tbl change
		ld      i, a
		ei
		
                ld	a,data_80
		rlca
		jr	c,rlca_1
		inc_error_cnt
rlca_1:		rlca
		jr	nc,rlca_2
		inc_error_cnt
rlca_2:		cp	a,2
		jr	z,rlca_3
		inc_error_cnt
rlca_3:		ld	a,data_55
		rlca
		cp	a,data_aa
		jr	z,rla_0
		inc_error_cnt
rla_0:		scf
		ccf
		ld	a,data_80
		rla
		jr	c,rla_1
		inc_error_cnt
rla_1:		rla
		jr	nc,rla_2
		inc_error_cnt
rla_2:		cp	a,1
		jr	z,rla_3
		inc_error_cnt
rla_3:		ld	a,data_7f
		rla
		cp	a,data_ff-1
		jr	z,rrca_0
		inc_error_cnt
rrca_0:		di                 ; disable interrupts  we want to enable at specific pts
		scf
		ccf
		ld	a,1
		rrca
		jr	c,rrca_1
		inc_error_cnt
rrca_1:		rrca
		jr	nc,rrca_2
		inc_error_cnt
rrca_2:		cp	a,data_7f-#3f
		jr	z,rrca_3
		inc_error_cnt
rrca_3:		ld	a,data_aa
		rrca
		cp	a,data_55
		jr	z,rra_0
		inc_error_cnt
rra_0:		scf
		ccf
		ld	a,1
		rra
		jr	c,rra_1
		inc_error_cnt
rra_1:		rra
		jr	nc,rra_2
		inc_error_cnt
rra_2:		cp	a,data_80
		jr	z,rra_3
		inc_error_cnt
rra_3:		ld	a,data_aa
		rra
		cp	a,data_55
		jr	z,rlc_0
		inc_error_cnt
rlc_0:		ld	a,data_80
		rlc	a
		jr	c,rlc_1
		inc_error_cnt
rlc_1:		jp	p,rlc_2
		inc_error_cnt
rlc_2:		jr	nz,rlc_3
		inc_error_cnt
rlc_3:		jp	po,rlc_4
		inc_error_cnt
rlc_4:		rlc	a
		jr	nc,rlc_5
		inc_error_cnt
rlc_5:		rlc	a
		rlc	a
		rlc	a
		rlc	a
		rlc	a
		rlc	a
		jp	m,rlc_6
		inc_error_cnt
rlc_6:		ld	a,data_55
		rlc	a
		jp	m,rlc_7
		inc_error_cnt
rlc_7:		jp	pe,rlc_8
		inc_error_cnt
rlc_8:		cp	a,data_aa
		jr	z,rlc_9
		inc_error_cnt
rlc_9:		ld	a,0
		rlc	a
		jr	z,rlc_10
		inc_error_cnt
rlc_10:		ld	b,data_7f
		rlc	b
		ld	a,b
		cp	a,data_ff-1
		jr	z,rlc_11
		inc_error_cnt
rlc_11:		ld	c,data_aa
		rlc	c
		jr	c,rlc_12
		inc_error_cnt
rlc_12:		ld	a,c
		cp	a,data_55
		jr	z,rlc_13
		inc_error_cnt
rlc_13:		ld	d,data_80
		rlc	d
		jr	c,rlc_14
		inc_error_cnt
rlc_14:		ld	a,d
		cp	a,1
		jr	z,rlc_15
		inc_error_cnt
rlc_15:		ld	e,data_ff
		rlc	e
		jr	c,rlc_16
		inc_error_cnt
rlc_16:		ld	a,e
		cp	a,data_ff
		jr	z,rlc_17
		inc_error_cnt
rlc_17:		ld	h,data_55
		rlc	h
		jp	m,rlc_18
		inc_error_cnt
rlc_18:		ld	a,h
		cp	a,data_aa
		jr	z,rlc_19
		inc_error_cnt
rlc_19:		ld	l,data_80
		rlc	l
		jp	p,rlc_20
		inc_error_cnt
rlc_20:		ld	a,l
		cp	a,1
		jr	z,rlc_21
		inc_error_cnt
rlc_21:		ld	hl,t_var1
		ld	a,data_55
		ld	(hl),a
		rlc	(hl)
		jp	m,rlc_22
		inc_error_cnt
rlc_22:		jp	pe,rlc_23
		inc_error_cnt
rlc_23:		jr	nc,rlc_24
		inc_error_cnt
rlc_24:		jr	nz,rlc_25
		inc_error_cnt
rlc_25:		rlc	(hl)
		jp	p,rlc_26
		inc_error_cnt
rlc_26:		jr	c,rlc_27
		inc_error_cnt
rlc_27:		ld	a,(hl)
		cp	a,data_55
		jr	z,rlc_28
		inc_error_cnt
rlc_28:		ld	a,data_7f
		ld	(hl),a
		rlc	(hl)
		jp	po,rlc_29
		inc_error_cnt
rlc_29:		ld	a,(hl)
		cp	a,data_ff-1
		jr	z,rlc_30
		inc_error_cnt
rlc_30:		ld	a,0
		ld	(hl),a
		rlc	(hl)
		jr	z,rlc_31
		inc_error_cnt
rlc_31:		ld	ix,t_var3
		ld	a,data_55
		ld	(ix-2),a
		rlc	(ix-2)
		jp	m,rlc_32
		inc_error_cnt
rlc_32:		jp	pe,rlc_33
		inc_error_cnt
rlc_33:		jr	nz,rlc_34
		inc_error_cnt
rlc_34:		jr	nc,rlc_35
		inc_error_cnt
rlc_35:		rlc	(ix-2)
		jp	p,rlc_36
		inc_error_cnt
rlc_36:		jr	c,rlc_37
		inc_error_cnt
rlc_37:		ld	a,(ix-2)
		cp	a,data_55
		jr	z,rlc_38
		inc_error_cnt
rlc_38:		ld	a,data_7f
		ld	(ix+2),a
		rlc	(ix+2)
		jp	po,rlc_39
		inc_error_cnt
rlc_39:		ld	a,(ix+2)
		cp	a,data_ff-1
		jr	z,rlc_40
		inc_error_cnt
rlc_40:		ld	a,0
		ld	(ix-1),a
		rlc	(ix-1)
		jr	z,rlc_41
		inc_error_cnt
rlc_41:		ld	iy,t_var3
		ld	a,data_55
		ld	(iy+2),a
		rlc	(iy+2)
		jp	m,rlc_42
		inc_error_cnt
rlc_42:		jp	pe,rlc_43
		inc_error_cnt
rlc_43:		jr	nc,rlc_44
		inc_error_cnt
rlc_44:		jr	nz,rlc_45
		inc_error_cnt
rlc_45:		rlc	(iy+2)
		jp	p,rlc_46
		inc_error_cnt
rlc_46:		jr	c,rlc_47
		inc_error_cnt
rlc_47:		ld	a,(iy+2)
		cp	a,data_55
		jr	z,rlc_48
		inc_error_cnt
rlc_48:		ld	a,data_7f
		ld	(iy-2),a
		rlc	(iy-2)
		jp	po,rlc_49
		inc_error_cnt
rlc_49:		ld	a,(iy-2)
		cp	a,data_ff-1
		jr	z,rlc_50
		inc_error_cnt
rlc_50:		ld	a,0
		ld	(iy+1),a
		rlc	(iy+1)
		jr	z,rl_0
		inc_error_cnt
rl_0:		scf
		ccf
		ld	a,data_55
		rl	a
		jp	m,rl_1
		inc_error_cnt
rl_1:		jp	pe,rl_2
		inc_error_cnt
rl_2:		jr	nc,rl_3
		inc_error_cnt
rl_3:		jr	nz,rl_4
		inc_error_cnt
rl_4:		rl	a
		jp	p,rl_5
		inc_error_cnt
rl_5:		jp	po,rl_6
		inc_error_cnt
rl_6:		jr	c,rl_7
		inc_error_cnt
rl_7:		rl	a
		cp	a,data_aa-1
		jr	z,rl_8
		inc_error_cnt
rl_8:		ld	a,0
		rl	a
		jr	z,rl_9
		inc_error_cnt
rl_9:		ld	b,data_aa
		ld	c,data_7f
		rl	b
		jr	c,rl_10
		inc_error_cnt
rl_10:		rl	c
		jr	nc,rl_11
		inc_error_cnt
rl_11:		ld	a,b
		cp	a,data_55-1
		jr	z,rl_12
		inc_error_cnt
rl_12:		ld	a,c
		cp	a,data_ff
		jr	z,rl_13
		inc_error_cnt
rl_13:		ld	d,data_ff
		ld	e,data_80
		rl	e
		jr	c,rl_14
		inc_error_cnt
rl_14:		rl	d
		jr	c,rl_15
		inc_error_cnt
rl_15:		ld	a,d
		cp	a,data_ff
		jr	z,rl_16
		inc_error_cnt
rl_16:		ld	a,e
		cp	a,0
		jr	z,rl_17
		inc_error_cnt
rl_17:		ld	h,data_7f
		ld	l,data_55
		rl	h
		jp	m,rl_18
		inc_error_cnt
rl_18:		rl	l
		jp	m,rl_19
		inc_error_cnt
rl_19:		ld	a,h
		cp	a,data_ff-1
		jr	z,rl_20
		inc_error_cnt
rl_20:		ld	a,l
		cp	a,data_aa
		jr	z,rl_21
		inc_error_cnt
rl_21:		ld	hl,t_var5
		ld	a,data_55
		ld	(hl),a
		rl	(hl)
		jp	m,rl_22
		inc_error_cnt
rl_22:		jp	pe,rl_23
		inc_error_cnt
rl_23:		jr	nc,rl_24
		inc_error_cnt
rl_24:		jr	nz,rl_25
		inc_error_cnt
rl_25:		rl	(hl)
		jp	p,rl_26
		inc_error_cnt
rl_26:		jp	po,rl_27
		inc_error_cnt
rl_27:		jr	c,rl_28
		inc_error_cnt
rl_28:		ld	a,(hl)
		cp	a,data_55-1
		jr	z,rl_29
		inc_error_cnt
rl_29:		ld	a,0
		ld	(hl),a
		rl	(hl)
		jr	z,rl_30
		inc_error_cnt
rl_30:		ld	ix,t_var3
		ld	a,data_55
		ld	(ix-2),a
		rl	(ix-2)
		jp	m,rl_31
		inc_error_cnt
rl_31:		jp	pe,rl_32
		inc_error_cnt
rl_32:		jr	nc,rl_33
		inc_error_cnt
rl_33:		jr	nz,rl_34
		inc_error_cnt
rl_34:		rl	(ix-2)
		jp	p,rl_35
		inc_error_cnt
rl_35:		jp	po,rl_36
		inc_error_cnt
rl_36:		jr	c,rl_37
		inc_error_cnt
rl_37:		ld	a,(ix-2)
		cp	a,data_55-1
		jr	z,rl_38
		inc_error_cnt
rl_38:		ld	a,0
		ld	(ix+2),a
		rl	(ix+2)
		jr	z,rl_39
rl_39:		ld	iy,t_var3
		ld	a,data_55
		ld	(iy-1),a
		rl	(iy-1)
		jp	m,rl_40
		inc_error_cnt
rl_40:		jp	pe,rl_41
		inc_error_cnt
rl_41:		jr	nc,rl_42
		inc_error_cnt
rl_42:		jr	nz,rl_43
		inc_error_cnt
rl_43:		rl	(iy-1)
		jp	p,rl_44
		inc_error_cnt
rl_44:		jp	po,rl_45
		inc_error_cnt
rl_45:		jr	c,rl_46
		inc_error_cnt
rl_46:		ld	a,(iy-1)
		cp	a,data_55-1
		jr	z,rl_47
		inc_error_cnt
rl_47:		ld	a,0
		ld	(iy+1),a
		rl	(iy+1)
		jr	z,rrc_0
		inc_error_cnt
rrc_0:		ld	a,data_aa
		rrc	a
		jp	p,rrc_1
		inc_error_cnt
rrc_1:		jp	pe,rrc_2
		inc_error_cnt
rrc_2:		jr	nz,rrc_3
		inc_error_cnt
rrc_3:		jr	nc,rrc_4
		inc_error_cnt
rrc_4:		rrc	a
		jp	m,rrc_5
		inc_error_cnt
rrc_5:		jr	c,rrc_6
		inc_error_cnt
rrc_6:		cp	a,data_aa
		jr	z,rrc_7
		inc_error_cnt
rrc_7:		ld	a,1
		rrc	a
		jr	c,rrc_8
		inc_error_cnt
rrc_8:		cp	a,data_80
		jr	z,rrc_9
		inc_error_cnt
rrc_9:		ld	a,data_7f
		rrc	a
		jp	po,rrc_10
		inc_error_cnt
rrc_10:		cp	a,#bf
		jr	z,rrc_11
		inc_error_cnt
rrc_11:		ld	b,data_80
		ld	c,data_55
		rrc	b
		jr	nc,rrc_12
		inc_error_cnt
rrc_12:		rrc	c
		jr	c,rrc_13
		inc_error_cnt
rrc_13:		ld	a,b
		cp	a,#40
		jr	z,rrc_14
		inc_error_cnt
rrc_14:		ld	a,c
		cp	a,data_aa
		jr	z,rrc_15
		inc_error_cnt
rrc_15:		ld	d,data_aa
		ld	e,1
		rrc	d
		jp	p,rrc_16
		inc_error_cnt
rrc_16:		rrc	e
		jp	m,rrc_17
		inc_error_cnt
rrc_17:		ld	a,d
		cp	a,data_55
		jr	z,rrc_18
		inc_error_cnt
rrc_18:		ld	a,e
		cp	a,data_80
		jr	z,rrc_19
		inc_error_cnt
rrc_19:		ld	h,data_55
		ld	l,data_ff
		rrc	h
		jr	c,rrc_20
		inc_error_cnt
rrc_20:		rrc	l
		jr	c,rrc_21
		inc_error_cnt
rrc_21:		ld	a,h
		cp	a,data_aa
		jr	z,rrc_22
		inc_error_cnt
rrc_22:		ld	a,l
		cp	a,data_ff
		jr	z,rrc_23
		inc_error_cnt
rrc_23:		ld	hl,t_var4
		ld	(hl),data_aa
		rrc	 (hl)
		jp	p,rrc_24
		inc_error_cnt
rrc_24:		jp	pe,rrc_25
		inc_error_cnt
rrc_25:		jr	nz,rrc_26
		inc_error_cnt
rrc_26:		jr	nc,rrc_27
		inc_error_cnt
rrc_27:		rrc	(hl)
		jp	m,rrc_28
		inc_error_cnt
rrc_28:		jr	c,rrc_29
		inc_error_cnt
rrc_29:		ld	a,(hl)
		cp	a,data_aa
		jr	z,rrc_30
		inc_error_cnt
rrc_30:		ld	(hl),data_7f
		rrc	(hl)
		jp	po,rrc_31
		inc_error_cnt
rrc_31:		ld	a,(hl)
		cp	a,#bf
		jr	z,rrc_32
		inc_error_cnt
rrc_32:		ld	(hl),0
		rrc	(hl)
		jr	z,rrc_33
		inc_error_cnt
rrc_33:		ld	ix,t_var3
		ld	a,data_aa
		ld	(ix+2),a
		rrc	(ix+2)
		jp	p,rrc_34
		inc_error_cnt
rrc_34:		jp	pe,rrc_35
		inc_error_cnt
rrc_35:		jr	nc,rrc_36
		inc_error_cnt
rrc_36:		jr	nz,rrc_37
		inc_error_cnt
rrc_37:		rrc	(ix+2)
		jp	m,rrc_38
		inc_error_cnt
rrc_38:		jr	c,rrc_39
		inc_error_cnt
rrc_39:		ld	a,(ix+2)
		cp	a,data_aa
		jr	z,rrc_40
		inc_error_cnt
rrc_40:		ld	a,1
		ld	(ix-2),a
		rrc	(ix-2)
		jp	po,rrc_41
		inc_error_cnt
rrc_41:		ld	a,(ix-2)
		cp	a,data_80
		jr	z,rrc_42
		inc_error_cnt
rrc_42:		ld	a,0
		ld	(ix+1),a
		rrc	(ix+1)
		jr	z,rrc_43
		inc_error_cnt
rrc_43:		ld	iy,t_var3
		ld	a,data_aa
		ld	(iy+2),a
		rrc	(iy+2)
		jp	p,rrc_44
		inc_error_cnt
rrc_44:		jp	pe,rrc_45
		inc_error_cnt
rrc_45:		jr	nc,rrc_46
		inc_error_cnt
rrc_46:		jr	nz,rrc_47
		inc_error_cnt
rrc_47:		rrc	(iy+2)
		jp	m,rrc_48
		inc_error_cnt
rrc_48:		jr	c,rrc_49
		inc_error_cnt
rrc_49:		ld	a,(iy+2)
		cp	a,data_aa
		jr	z,rrc_50
		inc_error_cnt
rrc_50:		ld	a,1
		ld	(iy-2),a
		rrc	(iy-2)
		jp	po,rrc_51
		inc_error_cnt
rrc_51:		ld	a,(iy-2)
		cp	a,data_80
		jr	z,rrc_52
		inc_error_cnt
rrc_52:		ld	a,0
		ld	(iy+1),a
		rrc	(iy+1)
		jr	z,rr_0
		inc_error_cnt
rr_0:		scf
		ccf
		ld	a,data_aa
		rr	a
		jp	p,rr_1
		inc_error_cnt
rr_1:		jp	pe,rr_2
		inc_error_cnt
rr_2:		jr	nc,rr_3
		inc_error_cnt
rr_3:		jr	nz,rr_4
		inc_error_cnt
rr_4:		rr	a
		jr	c,rr_5
		inc_error_cnt
rr_5:		jp	po,rr_6
		inc_error_cnt
rr_6:		cp	a,#2a
		jr	z,rr_7
		inc_error_cnt
rr_7:		scf
		ld	a,0
		rr	a
		jp	m,rr_8
		inc_error_cnt
rr_8:		cp	a,data_80
		jr	z,rr_9
		inc_error_cnt
rr_9:		ld	a,0
		rr	a
		jr	z,rr_10
		inc_error_cnt
rr_10:		ld	b,data_55
		ld	c,data_aa
		rr	b
		jr	c,rr_11
		inc_error_cnt
rr_11:		rr	c
		jr	nc,rr_12
		inc_error_cnt
rr_12:		ld	a,b
		cp	a,#2a
		jr	z,rr_13
		inc_error_cnt
rr_13:		ld	a,c
		cp	a,#d5
		jr	z,rr_14
		inc_error_cnt
rr_14:		ld	d,data_7f
		ld	e,data_80
		rr	d
		jr	c,rr_15
		inc_error_cnt
rr_15:		rr	e
		jr	nc,rr_16
		inc_error_cnt
rr_16:		ld	a,d
		cp	a,#3f
		jr	z,rr_17
		inc_error_cnt
rr_17:		ld	a,e
		cp	a,#c0
		jr	z,rr_18
		inc_error_cnt
rr_18:		ld	hl,t_var2
		ld	(hl),data_55
		rr	(hl)
		jp	p,rr_19
		inc_error_cnt
rr_19:		jp	po,rr_20
		inc_error_cnt
rr_20:		jr	c,rr_21
		inc_error_cnt
rr_21:		jr	nz,rr_22
		inc_error_cnt
rr_22:		rr	(hl)
		jp	m,rr_23
		inc_error_cnt
rr_23:		jp	pe,rr_24
		inc_error_cnt
rr_24:		jr	nc,rr_25
		inc_error_cnt
rr_25:		ld	a,(hl)
		cp	a,#95
		jr	z,rr_26
		inc_error_cnt
rr_26:		ld	(hl),0
		rr	(hl)
		jr	z,rr_27
		inc_error_cnt
rr_27:		ld	ix,t_var3
		ld	a,data_55
		ld	(ix-2),a
		rr	(ix-2)
		jp	p,rr_28
		inc_error_cnt
rr_28:		jp	po,rr_29
		inc_error_cnt
rr_29:		jr	c,rr_30
		inc_error_cnt
rr_30:		jr	nz,rr_31
		inc_error_cnt
rr_31:		rr	(ix-2)
		jp	m,rr_32
		inc_error_cnt
rr_32:		jp	pe,rr_33
		inc_error_cnt
rr_33:		jr	nc,rr_34
		inc_error_cnt
rr_34:		ld	a,(ix-2)
		cp	a,#95
		jr	z,rr_35
		inc_error_cnt
rr_35:		ld	a,0
		ld	(ix+2),a
		rr	(ix+2)
		jr	z,rr_36
		inc_error_cnt
rr_36:		ld	iy,t_var3
		ld	a,data_55
		ld	(iy+2),a
		rr	(iy+2)
		jp	p,rr_37
		inc_error_cnt
rr_37:		jp	po,rr_38
		inc_error_cnt
rr_38:		jr	c,rr_39
		inc_error_cnt
rr_39:		jr	nz,rr_40
		inc_error_cnt
rr_40:		rr	(iy+2)
		jp	m,rr_41
		inc_error_cnt
rr_41:		jp	pe,rr_42
		inc_error_cnt
rr_42:		jr	nc,rr_43
		inc_error_cnt
rr_43:		ld	a,(iy+2)
		cp	a,#95
		jr	z,rr_44
		inc_error_cnt
rr_44:		ld	a,0
		ld	(iy-1),a
		rr	(iy-1)
		jr	z,sla_0
		inc_error_cnt
sla_0:		ld	a,data_55
		sla	a
		jp	m,sla_1
		inc_error_cnt
sla_1:		jp	pe,sla_2
		inc_error_cnt
sla_2:		jr	nc,sla_3
		inc_error_cnt
sla_3:		jr	nz,sla_4
		inc_error_cnt
sla_4:		sla	a
		jp	p,sla_5
		inc_error_cnt
sla_5:		jp	po,sla_6
		inc_error_cnt
sla_6:		jr	c,sla_7
		inc_error_cnt
sla_7:		cp	a,data_55-1
		jr	z,sla_8
		inc_error_cnt
sla_8:		ld	a,0
		sla	a
		jr	z,sla_9
		inc_error_cnt
sla_9:		ld	b,data_80
		ld	c,data_7f
		sla	b
		jr	c,sla_10
		inc_error_cnt
sla_10:		ld	a,b
		cp	a,0
		jr	z,sla_11
		inc_error_cnt
sla_11:		sla	c
		jp	m,sla_12
		inc_error_cnt
sla_12:		ld	a,c
		cp	a,data_ff-1
		jr	z,sla_13
		inc_error_cnt
sla_13:		ld	d,data_aa
		ld	e,data_55
		sla	d
		jr	c,sla_14
		inc_error_cnt
sla_14:		ld	a,d
		cp	a,data_55-1
		jr	z,sla_15
		inc_error_cnt
sla_15:		sla	e
		jp	m,sla_16
		inc_error_cnt
sla_16:		ld	a,e
		cp	a,data_aa
		jr	z,sla_17
		inc_error_cnt
sla_17:		ld	h,#12      ;bjp was >data_1234
		ld	l,#34      ;bjp was >data_1234
		sla	h
		jp	p,sla_18
		inc_error_cnt
sla_18:		ld	a,h
		cp	a,#24
		jr	z,sla_19
		inc_error_cnt
sla_19:		sla	l
		jp	p,sla_20
		inc_error_cnt
sla_20:		ld	a,l
		cp	a,#68
		jr	z,sla_21
		inc_error_cnt
sla_21:		ld	hl,t_var3
		ld	(hl),data_55
		sla	(hl)
		jp	m,sla_22
		inc_error_cnt
sla_22:		jp	pe,sla_23
		inc_error_cnt
sla_23:		jr	nc,sla_24
		inc_error_cnt
sla_24:		jr	nz,sla_25
		inc_error_cnt
sla_25:		sla	(hl)
		jp	p,sla_26
		inc_error_cnt
sla_26:		jp	po,sla_27
		inc_error_cnt
sla_27:		jr	c,sla_28
		inc_error_cnt
sla_28:		ld	a,(hl)
		cp	a,data_55-1
		jr	z,sla_29
		inc_error_cnt
sla_29:		ld	(hl),0
		sla	(hl)
		jr	z,sla_30
		inc_error_cnt
sla_30:		ld	ix,t_var3
		ld	a,data_55
		ld	(ix-2),a
		sla	(ix-2)
		jp	m,sla_31
		inc_error_cnt
sla_31:		jp	pe,sla_32
		inc_error_cnt
sla_32:		jr	nc,sla_33
		inc_error_cnt
sla_33:		jr	nz,sla_34
		inc_error_cnt
sla_34:		sla	(ix-2)
		jp	p,sla_35
		inc_error_cnt
sla_35:		jp	po,sla_36
		inc_error_cnt
sla_36:		jr	c,sla_37
		inc_error_cnt
sla_37:		ld	a,(ix-2)
		cp	a,data_55-1
		jr	z,sla_38
		inc_error_cnt
sla_38:		ld	a,data_80
		ld	(ix+2),a
		sla	(ix+2)
		jr	z,sla_39
		inc_error_cnt
sla_39:		jr	c,sla_40
		inc_error_cnt
sla_40:		ld	iy,t_var3
		ld	a,data_55
		ld	(iy+2),a
		sla	(iy+2)
		jp	m,sla_41
		inc_error_cnt
sla_41:		jp	pe,sla_42
		inc_error_cnt
sla_42:		jr	nc,sla_43
		inc_error_cnt
sla_43:		jr	nz,sla_44
		inc_error_cnt
sla_44:		sla	(iy+2)
		jp	p,sla_45
		inc_error_cnt
sla_45:		jp	po,sla_46
		inc_error_cnt
sla_46:		jr	c,sla_47
		inc_error_cnt
sla_47:		ld	a,(iy+2)
		cp	a,data_55-1
		jr	z,sla_48
		inc_error_cnt
sla_48:		ld	a,data_80
		ld	(iy-2),a
		sla	(iy-2)
		jr	z,sla_49
		inc_error_cnt
sla_49:		jr	c,sra_0
		inc_error_cnt
sra_0:		ld	a,data_55
		sra	a
		jp	p,sra_1
		inc_error_cnt
sra_1:		jp	po,sra_2
		inc_error_cnt
sra_2:		jr	c,sra_3
		inc_error_cnt
sra_3:		jr	nz,sra_4
		inc_error_cnt
sra_4:		sra	a
		jp	po,sra_5
		inc_error_cnt
sra_5:		jr	nc,sra_6
		inc_error_cnt
sra_6:		sra	a
		jp	pe,sra_7
		inc_error_cnt
sra_7:		cp	a,#0a			;data_aa.and.#0f
		jr	z,sra_8
		inc_error_cnt
sra_8:		ld	a,1
		sra	a
		jr	c,sra_9
		inc_error_cnt
sra_9:		jr	z,sra_10
		inc_error_cnt
sra_10:		ld	a,data_80
		sra	a
		jp	m,sra_11
		inc_error_cnt
sra_11:		cp	a,#c0
		jr	z,sra_12
		inc_error_cnt
sra_12:		ld	b,data_7f
		ld	c,data_aa
		sra	b
		jr	c,sra_13
		inc_error_cnt
sra_13:		ld	a,b
		cp	a,#3f
		jr	z,sra_14
		inc_error_cnt
sra_14:		sra	c
		jr	nc,sra_15
		inc_error_cnt
sra_15:		ld	a,c
		cp	a,#d5
		jr	z,sra_16
		inc_error_cnt
sra_16:		ld	d,data_55
		ld	e,data_ff
		sra	d
		jr	c,sra_17
		inc_error_cnt
sra_17:		ld	a,d
		cp	a,#2a
		jr	z,sra_18
		inc_error_cnt
sra_18:		sra	e
		jp	m,sra_19
		inc_error_cnt
sra_19:		ld	a,e
		cp	a,data_ff
		jr	z,sra_20
		inc_error_cnt
sra_20:		ld	h,data_aa
		ld	l,data_7f
		sra	h
		jp	m,sra_21
		inc_error_cnt
sra_21:		ld	a,h
		cp	a,#d5
		jr	z,sra_22
		inc_error_cnt
sra_22:		sra	l
		jr	c,sra_23
		inc_error_cnt
sra_23:		ld	a,l
		cp	a,#3f
		jr	z,sra_24
		inc_error_cnt
sra_24:		ld	hl,t_var1
		ld	(hl),data_55
		sra	(hl)
		jp	p,sra_25
		inc_error_cnt
sra_25:		jp	po,sra_26
		inc_error_cnt
sra_26:		jr	c,sra_27
		inc_error_cnt
sra_27:		jr	nz,sra_28
		inc_error_cnt
sra_28:		sra	(hl)
		jr	nc,sra_29
		inc_error_cnt
sra_29:		sra	(hl)
		jp	pe,sra_30
		inc_error_cnt
sra_30:		ld	a,(hl)
		cp	a,#0a			;data_aa.and.#0f
		jr	z,sra_31
		inc_error_cnt
sra_31:		ld	(hl),data_80
		sra	(hl)
		jp	m,sra_32
		inc_error_cnt
sra_32:		ld	a,(hl)
		cp	a,#c0
		jr	z,sra_33
		inc_error_cnt
sra_33:		ld	(hl),1
		sra	(hl)
		jr	c,sra_34
		inc_error_cnt
sra_34:		jr	z,sra_35
		inc_error_cnt
sra_35:		ld	ix,t_var3
		ld	a,data_55
		ld	(ix-2),a
		sra	(ix-2)
		jp	p,sra_36
		inc_error_cnt
sra_36:		jp	po,sra_37
		inc_error_cnt
sra_37:		jr	c,sra_38
		inc_error_cnt
sra_38:		jr	nz,sra_39
		inc_error_cnt
sra_39:		sra	(ix-2)
		jr	nc,sra_40
		inc_error_cnt
sra_40:		sra	(ix-2)
		jp	pe,sra_41
		inc_error_cnt
sra_41:		ld	a,(ix-2)
		cp	a,#0a		;data_aa.and.#0f
		jr	z,sra_42
		inc_error_cnt
sra_42:		ld	a,data_80
		ld	(ix+2),a
		sra	(ix+2)
		jp	m,sra_43
		inc_error_cnt
sra_43:		ld	a,(ix+2)
		cp	a,#c0
		jr	z,sra_44
		inc_error_cnt
sra_44:		ld	a,1
		ld	(ix-1),a
		sra	(ix-1)
		jr	c,sra_45
		inc_error_cnt
sra_45:		jr	z,sra_46
		inc_error_cnt
sra_46:		ld	iy,t_var3
		ld	a,data_55
		ld	(iy-2),a
		sra	(iy-2)
		jp	p,sra_47
		inc_error_cnt
sra_47:		jp	po,sra_48
		inc_error_cnt
sra_48:		jr	c,sra_49
		inc_error_cnt
sra_49:		jr	nz,sra_50
		inc_error_cnt
sra_50:		sra	(iy-2)
		jr	nc,sra_51
		inc_error_cnt
sra_51:		sra	(iy-2)
		jp	pe,sra_52
		inc_error_cnt
sra_52:		ld	a,(iy-2)
		cp	a,#0a		;data_aa.and.#0f
		jr	z,sra_53
		inc_error_cnt
sra_53:		ld	a,data_80
		ld	(iy+2),a
		sra	(iy+2)
		jp	m,sra_54
		inc_error_cnt
sra_54:		ld	a,(iy+2)
		cp	a,#c0
		jr	z,sra_55
		inc_error_cnt
sra_55:		ld	a,1
		ld	(iy-1),a
		sra	(iy-1)
		jr	c,sra_56
		inc_error_cnt
sra_56:		jr	z,srl_0
		inc_error_cnt
srl_0:		ld	a,data_55
		srl	a
		jr	c,srl_1
		inc_error_cnt
srl_1:		jp	po,srl_2
		inc_error_cnt
srl_2:		srl	a
		jr	nc,srl_3
		inc_error_cnt
srl_3:		srl	a
		jp	pe,srl_4
		inc_error_cnt
srl_4:		cp	a,#0a			;data_aa.and.#0f
		jr	z,srl_5
		inc_error_cnt
srl_5:		ld	a,data_80
		and	a
		jp	m,srl_6
		inc_error_cnt
srl_6:		srl	a
		jp	p,srl_7
		inc_error_cnt
srl_7:		ld	a,2
		srl	a
		jr	nz,srl_8
		inc_error_cnt
srl_8:		srl	a
		jr	z,srl_9
		inc_error_cnt
srl_9:		jr	c,srl_10
		inc_error_cnt
srl_10:		ld	b,data_aa
		srl	b
		jp	p,srl_11
		inc_error_cnt
srl_11:		ld	a,b
		cp	a,data_55
		jr	z,srl_12
		inc_error_cnt
srl_12:		ld	c,data_7f
		srl	c
		jr	c,srl_13
		inc_error_cnt
srl_13:		ld	a,c
		cp	a,#3f
		jr	z,srl_14
		inc_error_cnt
srl_14:		ld	d,data_55
		srl	d
		jr	c,srl_15
		inc_error_cnt
srl_15:		ld	a,d
		cp	a,#2a
		jr	z,srl_16
		inc_error_cnt
srl_16:		ld	e,data_ff
		srl	e
		jr	c,srl_17
		inc_error_cnt
srl_17:		ld	a,e
		cp	a,data_7f
		jr	z,srl_18
		inc_error_cnt
srl_18:		ld	h,#12      ;bjp was >data_1234
		srl	h
		jr	nc,srl_19
		inc_error_cnt
srl_19:		ld	a,h
		cp	a,9
		jr	z,srl_20
		inc_error_cnt
srl_20:		ld	l,#34      ;bjp was >data_1234
		srl	l
		jr	nc,srl_21
		inc_error_cnt
srl_21:		ld	a,l
		cp	a,#1a
		jr	z,srl_22
		inc_error_cnt
srl_22:		ld	hl,t_var1
		ld	(hl),data_55
		srl	(hl)
		jr	c,srl_23
		inc_error_cnt
srl_23:		jp	po,srl_24
		inc_error_cnt
srl_24:		srl	(hl)
		jr	nc,srl_25
		inc_error_cnt
srl_25:		srl	(hl)
		jp	pe,srl_26
		inc_error_cnt
srl_26:		ld	a,(hl)
		cp	a,#0a			;data_aa.and.#0f
		jr	z,srl_27
		inc_error_cnt
srl_27:		ld	(hl),data_80
		and	(hl)
		jp	z,srl_28
		inc_error_cnt
srl_28:		srl	(hl)
		jp	p,srl_29
		inc_error_cnt
srl_29:		ld	a,(hl)
		cp	a,#40
		jr	z,srl_30
		inc_error_cnt
srl_30:		ld	(hl),2
		srl	(hl)
		jr	nz,srl_31
		inc_error_cnt
srl_31:		srl	(hl)
		jr	z,srl_32
		inc_error_cnt
srl_32:		jr	c,srl_33
		inc_error_cnt
srl_33:		ld	ix,t_var3
		ld	a,data_55
		ld	(ix+2),a
		srl	(ix+2)
		jr	c,srl_34
		inc_error_cnt
srl_34:		jp	po,srl_35
		inc_error_cnt
srl_35:		srl	(ix+2)
		jr	nc,srl_36
		inc_error_cnt
srl_36:		srl	(ix+2)
		jp	pe,srl_37
		inc_error_cnt
srl_37:		ld	a,(ix+2)
		cp	a,#0a			;data_aa.and.#0f
		jr	z,srl_38
		inc_error_cnt
srl_38:		ld	a,data_80
		ld	(ix-2),a
		and	(ix-2)
		jp	m,srl_39
		inc_error_cnt
srl_39:		srl	(ix-2)
		jp	p,srl_40
		inc_error_cnt
srl_40:		ld	a,(ix-2)
		cp	a,#40
		jr	z,srl_41
		inc_error_cnt
srl_41:		ld	a,2
		ld	(ix+1),a
		srl	(ix+1)
		jr	nz,srl_42
		inc_error_cnt
srl_42:		srl	(ix+1)
		jr	z,srl_43
		inc_error_cnt
srl_43:		jr	c,srl_44
		inc_error_cnt
srl_44:		ld	iy,t_var3
		ld	a,data_55
		ld	(iy+2),a
		srl	(iy+2)
		jr	c,srl_45
		inc_error_cnt
srl_45:		jp	po,srl_46
		inc_error_cnt
srl_46:		srl	(iy+2)
		jr	nc,srl_47
		inc_error_cnt
srl_47:		srl	(iy+2)
		jp	pe,srl_48
		inc_error_cnt
srl_48:		ld	a,(iy+2)
		cp	a,#0a			;data_aa.and.#0f
		jr	z,srl_49
		inc_error_cnt
srl_49:		ld	a,data_80
		ld	(iy-2),a
		and	(iy-2)
		jp	m,srl_50
		inc_error_cnt
srl_50:		srl	(iy-2)
		jp	p,srl_51
		inc_error_cnt
srl_51:		ld	a,(iy-2)
		cp	a,#40
		jr	z,srl_52
		inc_error_cnt
srl_52:		ld	a,2
		ld	(iy+1),a
		srl	(iy+1)
		jr	nz,srl_53
		inc_error_cnt
srl_53:		srl	(iy+1)
		jr	z,srl_54
		inc_error_cnt
srl_54:		jr	c,rld_0
		inc_error_cnt
rld_0:		ld	hl,t_var5
		ld	a,data_55
		ld	(hl),data_aa
		rld
		jp	p,rld_1
		inc_error_cnt
rld_1:		cp	a,data_55+5
		jr	z,rld_2
		inc_error_cnt
rld_2:		ld	a,(hl)
		cp	a,data_aa-5
		jr	z,rld_3
		inc_error_cnt
rld_3:		ld	(hl),data_7f
		ld	a,data_80
		rld
		jp	m,rld_4
		inc_error_cnt
rld_4:		jp	pe,rld_5
		inc_error_cnt
rld_5:		rld
		jp	po,rld_6
		inc_error_cnt
rld_6:		cp	a,data_80+15
		jr	z,rld_7
		inc_error_cnt
rld_7:		ld	a,(hl)
		cp	a,7
		jr	z,rld_8
		inc_error_cnt
rld_8:		ld	a,#05			;data_55.and.#0f
		ld	(hl),#0a			;data_aa.and.#0f
		rld
		jr	z,rld_9
		inc_error_cnt
rld_9:		ld	a,(hl)
		cp	a,#a5
		jr	z,rrd_0
		inc_error_cnt
rrd_0:		ld	hl,t_var3
		ld	a,data_55
		ld	(hl),data_aa
		rrd
		jp	p,rrd_1
		inc_error_cnt
rrd_1:		jp	pe,rrd_2
		inc_error_cnt
rrd_2:		jr	nz,rrd_3
		inc_error_cnt
rrd_3:		cp	a,data_55+5
		jr	z,rrd_4
		inc_error_cnt
rrd_4:		ld	a,(hl)
		cp	a,data_55+5
		jr	z,rrd_5
		inc_error_cnt
rrd_5:		ld	(hl),data_7f
		ld	a,data_80
		rrd
		jp	m,rrd_6
		inc_error_cnt
rrd_6:		jp	po,rrd_7
		inc_error_cnt
rrd_7:		cp	a,data_80+15
		jr	z,rrd_8
		inc_error_cnt
rrd_8:		ld	a,(hl)
		cp	a,7
		jr	z,rrd_9
		inc_error_cnt
rrd_9:		ld	a,8
		ld	(hl),0
		rrd
		jr	z,rrd_10
		inc_error_cnt
rrd_10:		ld	a,(hl)
		cp	a,data_80
		jr	z,bit_0
		inc_error_cnt
bit_0:		ld	a,data_ff
		bit	0,a
		jr	nz,bit_1
		inc_error_cnt
bit_1:		bit	1,a
		jr	nz,bit_2
		inc_error_cnt
bit_2:		bit	2,a
		jr	nz,bit_3
		inc_error_cnt
bit_3:		bit	3,a
		jr	nz,bit_4
		inc_error_cnt
bit_4:		bit	4,a
		jr	nz,bit_5
		inc_error_cnt
bit_5:		bit	5,a
		jr	nz,bit_6
		inc_error_cnt
bit_6:		bit	6,a
		jr	nz,bit_7
		inc_error_cnt
bit_7:		bit	7,a
		jr	nz,bit_8
		inc_error_cnt
bit_8:		ld	a,0
		bit	0,a
		jr	z,bit_9
		inc_error_cnt
bit_9:		bit	1,a
		jr	z,bit_10
		inc_error_cnt
bit_10:		bit	2,a
		jr	z,bit_11
		inc_error_cnt
bit_11:		bit	3,a
		jr	z,bit_12
		inc_error_cnt
bit_12:		bit	4,a
		jr	z,bit_13
		inc_error_cnt
bit_13:		bit	5,a
		jr	z,bit_14
		inc_error_cnt
bit_14:		bit	6,a
		jr	z,bit_15
		inc_error_cnt
bit_15:		bit	7,a
		jr	z,bit_16
		inc_error_cnt
bit_16:		ld	b,data_80
		bit	2,b
		jr	z,bit_17
		inc_error_cnt
bit_17:		bit	7,b
		jr	nz,bit_18
		inc_error_cnt
bit_18:		ld	c,data_55
		bit	7,c
		jr	z,bit_19
		inc_error_cnt
bit_19:		bit	0,c
		jr	nz,bit_20
		inc_error_cnt
bit_20:		ld	d,data_aa
		bit	7,d
		jr	nz,bit_21
		inc_error_cnt
bit_21:		bit	4,d
		jr	z,bit_22
		inc_error_cnt
bit_22:		ld	e,data_7f
		bit	7,e
		jr	z,bit_23
		inc_error_cnt
bit_23:		bit	3,e
		jr	nz,bit_24
		inc_error_cnt
bit_24:		ld	h,#12      ;bjp was >data_1234
		bit	4,h
		jr	nz,bit_25
		inc_error_cnt
bit_25:		bit	2,h
		jr	z,bit_26
		inc_error_cnt
bit_26:		ld	l,#34      ;bjp was >data_1234
		bit	3,l
		jr	z,bit_27
		inc_error_cnt
bit_27:		bit	2,l
		jr	nz,bit_28
		inc_error_cnt
bit_28:		ld	hl,t_var4
		ld	(hl),data_55
		bit	0,(hl)
		jr	nz,bit_29
		inc_error_cnt
bit_29:		bit	1,(hl)
		jr	z,bit_30
		inc_error_cnt
bit_30:		bit	2,(hl)
		jr	nz,bit_31
		inc_error_cnt
bit_31:		bit	3,(hl)
		jr	z,bit_32
		inc_error_cnt
bit_32:		bit	4,(hl)
		jr	nz,bit_33
		inc_error_cnt
bit_33:		bit	5,(hl)
		jr	z,bit_34
		inc_error_cnt
bit_34:		bit	6,(hl)
		jr	nz,bit_35
		inc_error_cnt
bit_35:		bit	7,(hl)
		jr	z,bit_36
		inc_error_cnt
bit_36:		ld	ix,t_var3
		ld	a,data_aa
		ld	(ix-2),a
		bit	0,(ix-2)
		jr	z,bit_37
		inc_error_cnt
bit_37:		bit	1,(ix-2)
		jr	nz,bit_38
		inc_error_cnt
bit_38:		bit	2,(ix-2)
		jr	z,bit_39
		inc_error_cnt
bit_39:		bit	3,(ix-2)
		jr	nz,bit_40
		inc_error_cnt
bit_40:		bit	4,(ix-2)
		jr	z,bit_41
		inc_error_cnt
bit_41:		bit	5,(ix-2)
		jr	nz,bit_42
		inc_error_cnt
bit_42:		bit	6,(ix-2)
		jr	z,bit_43
		inc_error_cnt
bit_43:		bit	7,(ix-2)
		jr	nz,bit_44
		inc_error_cnt
bit_44:		ld	iy,t_var3
		ld	a,data_55
		ld	(iy+2),a
		bit	0,(iy+2)
		jr	nz,bit_45
		inc_error_cnt
bit_45:		bit	1,(iy+2)
		jr	z,bit_46
		inc_error_cnt
bit_46:		bit	2,(iy+2)
		jr	nz,bit_47
		inc_error_cnt
bit_47:		bit	3,(iy+2)
		jr	z,bit_48
		inc_error_cnt
bit_48:		bit	4,(iy+2)
		jr	nz,bit_49
		inc_error_cnt
bit_49:		bit	5,(iy+2)
		jr	z,bit_50
		inc_error_cnt
bit_50:		bit	6,(iy+2)
		jr	nz,bit_51
		inc_error_cnt
bit_51:		bit	7,(iy+2)
		jr	z,set_0
		inc_error_cnt
set_0:		ld	a,0
		set	0,a
		set	2,a
		set	4,a
		set	6,a
		cp	a,data_55
		jr	z,set_1
		inc_error_cnt
set_1:		set	1,a
		set	3,a
		set	5,a
		set	7,a
		cp	a,data_ff
		jr	z,set_2
		inc_error_cnt
set_2:		ld	b,0
		set	1,b
		set	3,b
		ld	a,b
		cp	a,#0a			;data_aa.and.#0f
		jr	z,set_3
		inc_error_cnt
set_3:		ld	c,0
		set	1,c
		set	4,c
		ld	a,c
		cp	a,#12      ;bjp was >data_1234
		jr	z,set_4
		inc_error_cnt
set_4:		ld	d,0
		set	2,d
		set	4,d
		set	5,d
		ld	a,d
		cp	a,#34      ;bjp was >data_1234
		jr	z,set_5
		inc_error_cnt
set_5:		ld	e,0
		set	7,e
		ld	a,e
		cp	a,data_80
		jr	z,set_6
		inc_error_cnt
set_6:		ld	h,0
		set	0,h
		set	2,h
		set	4,h
		set	6,h
		ld	a,h
		cp	a,data_55
		jr	z,set_7
		inc_error_cnt
set_7:		ld	l,0
		set	1,l
		set	3,l
		set	5,l
		set	7,l
		ld	a,l
		cp	a,data_aa
		jr	z,set_8
		inc_error_cnt
set_8:		ld	hl,t_var5
		ld	(hl),0
		set	0,(hl)
		set	2,(hl)
		set	4,(hl)
		set	6,(hl)
		ld	a,(hl)
		cp	a,data_55
		jr	z,set_9
		inc_error_cnt
set_9:		ld	(hl),0
		set	1,(hl)
		set	3,(hl)
		set	5,(hl)
		set	7,(hl)
		ld	a,(hl)
		cp	a,data_aa
		jr	z,set_10
		inc_error_cnt
set_10:		ld	ix,t_var3
		ld	a,0
		ld	(ix-2),a
		ld	(ix+2),a
		set	0,(ix-2)
		set	2,(ix-2)
		set	4,(ix-2)
		set	6,(ix-2)
		ld	a,(ix-2)
		cp	a,data_55
		jr	z,set_11
		inc_error_cnt
set_11:		set	1,(ix+2)
		set	3,(ix+2)
		set	5,(ix+2)
		set	7,(ix+2)
		ld	a,(ix+2)
		cp	a,data_aa
		jr	z,set_12
		inc_error_cnt
set_12:		ld	iy,t_var3
		ld	a,0
		ld	(iy-1),a
		ld	(iy+1),a
		set	0,(iy-1)
		set	2,(iy-1)
		set	4,(iy-1)
		set	6,(iy-1)
		ld	a,(iy-1)
		cp	a,data_55
		jr	z,set_13
		inc_error_cnt
set_13:		set	1,(iy+1)
		set	3,(iy+1)
		set	5,(iy+1)
		set	7,(iy+1)
		ld	a,(iy+1)
		cp	a,data_aa
		jr	z,res_0
		inc_error_cnt
res_0:		ld	a,data_ff
		res	7,a
		cp	a,data_7f
		jr	z,res_1
		inc_error_cnt
res_1:		res	5,a
		res	3,a
		res	1,a
		cp	a,data_55
		jr	z,res_2
		inc_error_cnt
res_2:		ld	a,data_ff
		res	0,a
		res	2,a
		res	4,a
		res	6,a
		cp	a,data_aa
		jr	z,res_3
		inc_error_cnt
res_3:		ld	b,data_ff
		res	7,b
		ld	a,b
		cp	a,data_7f
		jr	z,res_4
		inc_error_cnt
res_4:		ld	c,data_ff
		res	0,c
		res	1,c
		res	2,c
		res	3,c
		res	4,c
		res	5,c
		res	6,c
		ld	a,c
		cp	a,data_80
		jr	z,res_5
		inc_error_cnt
res_5:		ld	d,data_ff
		res	0,d
		res	2,d
		res	4,d
		res	6,d
		ld	a,d
		cp	a,data_aa
		jr	z,res_6
		inc_error_cnt
res_6:		ld	e,data_ff
		res	1,e
		res	3,e
		res	5,e
		res	7,e
		ld	a,e
		cp	a,data_55
		jr	z,res_7
		inc_error_cnt
res_7:		ld	h,data_ff
		res	0,h
		res	2,h
		res	3,h
		res	5,h
		res	6,h
		res	7,h
		ld	a,h
		cp	a,#12      ;bjp was >data_1234
		jr	z,res_8
		inc_error_cnt
res_8:		ld	l,data_ff
		res	0,l
		res	1,l
		res	3,l
		res	6,l
		res	7,l
		ld	a,l
		cp	a,#34      ;bjp was >data_1234
		jr	z,res_9
		inc_error_cnt
res_9:		ld	hl,t_var3
		ld	(hl),data_ff
		res	0,(hl)
		res	2,(hl)
		res	4,(hl)
		res	6,(hl)
		ld	a,(hl)
		cp	a,data_aa
		jr	z,res_10
		inc_error_cnt
res_10:		res	1,(hl)
		res	3,(hl)
		res	5,(hl)
		res	7,(hl)
		ld	a,(hl)
		cp	a,0
		jr	z,res_11
		inc_error_cnt
res_11:		ld	ix,t_var3
		ld	a,data_ff
		ld	(ix-2),a
		ld	(ix+2),a
		res	1,(ix-2)
		res	3,(ix-2)
		res	5,(ix-2)
		res	7,(ix-2)
		ld	a,(ix-2)
		cp	a,data_55
		jr	z,res_12
		inc_error_cnt
res_12:		res	0,(ix+2)
		res	2,(ix+2)
		res	4,(ix+2)
		res	6,(ix+2)
		ld	a,(ix+2)
		cp	a,data_aa
		jr	z,res_13
		inc_error_cnt
res_13:		ld	iy,t_var3
		ld	a,data_ff
		ld	(iy-1),a
		ld	(iy+1),a
		res	1,(iy-1)
		res	3,(iy-1)
		res	5,(iy-1)
		res	7,(iy-1)
		ld	a,(iy-1)
		cp	a,data_55
		jr	z,res_14
		inc_error_cnt
res_14:		res	0,(iy+1)
		res	2,(iy+1)
		res	4,(iy+1)
		res	6,(iy+1)
		ld	a,(iy+1)
		cp	a,data_aa
		jr	z,jp_0
		inc_error_cnt
jp_0:		jp	jp_1
		nop
		nop
		inc_error_cnt
jp_1:		ld	a,0
		and	a
		jp	z,jp_2
		inc_error_cnt
jp_2:		jp	nc,jp_3
		inc_error_cnt
jp_3:		ld	b,1
		sub	a,b
		jp	nz,jp_4
		inc_error_cnt
jp_4:		jp	c,jp_5
		inc_error_cnt
jp_5:		jp	jp_7
		inc_error_cnt
jp_6:		jp	jr_0
		inc_error_cnt
jp_7:		jp	jp_6
		inc_error_cnt
jr_0:		jr	jr_2
		inc_error_cnt
jr_1:		jr	jr_3
		inc_error_cnt
jr_2:		jr	jr_1
		inc_error_cnt
jr_3:		ld	hl,jp_9
		jp	(hl)
		inc_error_cnt
jp_8:		ld	ix,jp_10
		jp	(ix)
		inc_error_cnt
jp_9:		jp	jp_8
		inc_error_cnt
jp_10:		ld	iy,djnz_0
		jp	(iy)
		inc_error_cnt
djnz_0:		ld	b,5
		ld	a,0
djnz_1:		inc	a
		djnz	djnz_1
		cp	a,5
		jr	z,call_0
		inc_error_cnt
call_0:		ld	a,0
		call	sub1
		cp	a,data_7f
		jr	z,call_1
		inc_error_cnt
call_1:		ld	a,0
		and	a
		call	z,sub2
		cp	a,data_55
		jr	z,call_2
		inc_error_cnt
call_2:		ld	a,data_aa
		and	a
		call	nz,sub3
		cp	a,data_aa+1
		jr	z,call_3
		inc_error_cnt
call_3:		ld	a,0
		cp	a,0
		call	nc,sub4
		cp	a,data_ff
		jr	z,call_4
		inc_error_cnt
call_4:		ld	a,0
		sub	a,1
		call	c,sub5
		cp	a,data_ff-1
		jr	z,call_5
		inc_error_cnt
call_5:		ld	a,data_7f
		sla	a
		call	po,sub6
		cp	a,data_7f
		jr	z,call_6
		inc_error_cnt
call_6:		ld	a,data_aa
		srl	a
		call	pe,sub7
		cp	a,data_aa
		jr	z,call_7
		inc_error_cnt
call_7:		ld	a,data_80
		sra	a
		call	m,sub8
		cp	a,data_80
		jr	z,call_8
		inc_error_cnt
call_8:		ld	a,data_7f
		sra	a
		call	p,sub9
		cp	a,data_7f
		jr	z,rst_0
		inc_error_cnt
rst_0:		rst	#00
		cp	a,1
		jr	z,rst_1
		inc_error_cnt
rst_1:		rst	#08
		cp	a,2
		jr	z,rst_2
		inc_error_cnt
rst_2:		rst	#10
		cp	a,3
		jr	z,rst_3
		inc_error_cnt
rst_3:		rst	#18
		cp	a,4
		jr	z,rst_4
		inc_error_cnt
rst_4:		rst	#20
		cp	a,5
		jr	z,rst_5
		inc_error_cnt
rst_5:		rst	#28
		cp	a,6
		jr	z,rst_6
		inc_error_cnt
rst_6:		rst	#30
		cp	a,7
		jr	z,rst_7
		inc_error_cnt
rst_7:		rst	#38
		cp	a,8
		jr	z,in_0
		inc_error_cnt
in_0:		in	a,(in_port)
		cp	a,data_7f
		jr	z,in_1
		inc_error_cnt
in_1:		ld	c,in_port
		in	a,(c)
		jr	nz,in_2
		inc_error_cnt
in_2:		jp	p,in_3
		inc_error_cnt
in_3:		jp	pe,in_4
		inc_error_cnt
in_4:		cp	a,data_55
		jr	z,in_5
		inc_error_cnt
in_5:		in	a,(c)
		jp	m,in_6
		inc_error_cnt
in_6:		jp	po,in_7
		inc_error_cnt
in_7:		jr	nz,in_8
		inc_error_cnt
in_8:		cp	a,data_80
		jr	z,in_9
		inc_error_cnt
in_9:		in	a,(c)
		jr	z,in_10
		inc_error_cnt
in_10:		in	b,(c)
		jp	m,in_11
		inc_error_cnt
in_11:		ld	a,b
		cp	a,data_ff
		jr	z,in_12
		inc_error_cnt
in_12:		in	d,(c)
		jp	pe,in_13
		inc_error_cnt
in_13:		ld	a,d
		cp	a,data_aa
		jr	z,in_14
		inc_error_cnt
in_14:		in	e,(c)
		jp	p,in_15
		inc_error_cnt
in_15:		ld	a,e
		cp	a,data_7f
		jr	z,in_16
		inc_error_cnt
in_16:		in	h,(c)
		jp	pe,in_17
		inc_error_cnt
in_17:		ld	a,h
		cp	a,data_55
		jr	z,in_18
		inc_error_cnt
in_18:		in	l,(c)
		jp	m,in_19
		inc_error_cnt
in_19:		ld	a,l
		cp	a,data_80
		jr	z,in_20
		inc_error_cnt
in_20:		in	c,(c)
		jr	z,in_21
		inc_error_cnt
in_21:		ld	c,in_port
		ld	b,2
		ld	hl,t_var1
		ini
		jr	nz,in_22
		inc_error_cnt
in_22:		ini
		jr	z,in_23
		inc_error_cnt
in_23:		ld	hl,t_var1
		ld	a,(hl)
		cp	a,data_ff
		jr	z,in_24
		inc_error_cnt
in_24:		inc	hl
		ld	a,(hl)
		cp	a,data_aa
		jr	z,in_25
		inc_error_cnt
in_25:		ld	b,5
		ld	c,in_port
		ld	hl,t_var1
		inir
		jr	z,in_26
		inc_error_cnt
in_26:		ld	hl,t_var1
		ld	a,(hl)
		cp	a,data_7f
		jr	z,in_27
		inc_error_cnt
in_27:		inc	hl
		ld	a,(hl)
		cp	a,data_55
		jr	z,in_28
		inc_error_cnt
in_28:		inc	hl
		ld	a,(hl)
		cp	a,data_80
		jr	z,in_29
		inc_error_cnt
in_29:		inc	hl
		ld	a,(hl)
		cp	a,0
		jr	z,in_30
		inc_error_cnt
in_30:		inc	hl
		ld	a,(hl)
		cp	a,data_ff
		jr	z,in_31
		inc_error_cnt
in_31:		ld	b,2
		ld	c,in_port
		ld	hl,t_var5
		ind
		jr	nz,in_32
		inc_error_cnt
in_32:		ind
		jr	z,in_33
		inc_error_cnt
in_33:		ld	hl,t_var5
		ld	a,(hl)
		cp	a,data_aa
		jr	z,in_34
		inc_error_cnt
in_34:		dec	hl
		ld	a,(hl)
		cp	a,data_7f
		jr	z,in_35
		inc_error_cnt
in_35:		ld	b,5
		ld	c,in_port
		ld	hl,t_var5
		indr
		jr	z,in_36
		inc_error_cnt
in_36:		ld	hl,t_var5
		ld	a,(hl)
		cp	a,data_55
		jr	z,in_37
		inc_error_cnt
in_37:		dec	hl
		ld	a,(hl)
		cp	a,data_80
		jr	z,in_38
		inc_error_cnt
in_38:		dec	hl
		ld	a,(hl)
		cp	a,0
		jr	z,in_39
		inc_error_cnt
in_39:		dec	hl
		ld	a,(hl)
		cp	a,data_ff
		jr	z,in_40
		inc_error_cnt
in_40:		dec	hl
		ld	a,(hl)
		cp	a,data_aa
		jr	z,in_41
		inc_error_cnt
		; 10,09,2007  Test for Howard Hart's IN bug
in_41:		ld	hl, t_var1
		ld	a, #34       ; something not in the input sequencer
		in 	a,(in_port)
		ld	(hl), a      ; 10/12/2007 previously this instruction got skipped
		ld	a, #34
		ld 	a,(hl)
		cp      a,data_7f
		jr	z,ldi_0
		inc_error_cnt
ldi_0:		ld	hl,t_var1
		ld	a,#12      ;bjp was >data_1234
		ld	(hl),a
		inc	hl
		ld	a,#34      ;bjp was >data_1234
		ld	(hl),a
		dec	hl
		ld	de,t_var3
		ld	bc,2
		ldi
		jp	pe,ldi_1
		inc_error_cnt
ldi_1:		ldi
		jp	po,ldi_2
		inc_error_cnt
ldi_2:		ld	hl,t_var3
		ld	a,(hl)
		cp	a,#12      ;bjp was >data_1234
		jr	z,ldi_3
		inc_error_cnt
ldi_3:		inc	hl
		ld	a,(hl)
		cp	a,#34      ;bjp was >data_1234
		jr	z,ldir_0
		inc_error_cnt
ldir_0:		ld	hl,var1
		ld	de,t_var1
		ld	bc,5
		ei                 ;bjp  be sure we can interrupt this instruction
		ldir
		jp	po,ldir_1
		inc_error_cnt
ldir_1:		ld	hl,t_var1
		ld	a,(hl)
		cp	a,data_ff
		jr	z,ldir_2
		inc_error_cnt
ldir_2:		inc	hl
		ld	a,(hl)
		cp	a,data_55
		jr	z,ldir_3
		inc_error_cnt
ldir_3:		inc	hl
		ld	a,(hl)
		cp	a,data_80
		jr	z,ldir_4
		inc_error_cnt
ldir_4:		inc	hl
		ld	a,(hl)
		cp	a,data_aa
		jr	z,ldir_5
		inc_error_cnt
ldir_5:		inc	hl
		ld	a,(hl)
		cp	a,data_7f
		jr	z,ldd_0
		inc_error_cnt
ldd_0:		ld	hl,t_var5
		ld	a,#12      ;bjp was >data_1234
		ld	(hl),a
		dec	hl
		ld	a,#34      ;bjp was >data_1234
		ld	(hl),a
		inc	hl
		ld	bc,2
		ld	de,t_var3
		ldd
		jp	pe,ldd_1
		inc_error_cnt
ldd_1:		ldd
		jp	po,ldd_2
		inc_error_cnt
ldd_2:		ld	hl,t_var3
		ld	a,(hl)
		cp	a,#12      ;bjp was >data_1234
		jr	z,ldd_3
		inc_error_cnt
ldd_3:		dec	hl
		ld	a,(hl)
		cp	a,#34      ;bjp was >data_1234
		jr	z,lddr_0
		inc_error_cnt
lddr_0:		ld	bc,5
		ld	hl,var5
		ld	de,t_var5
		lddr
		jp	po,lddr_1
		inc_error_cnt
lddr_1:		ld	hl,t_var1
		ld	a,(hl)
		cp	a,data_ff
		jr	z,lddr_2
		inc_error_cnt
lddr_2:		inc	hl
		ld	a,(hl)
		cp	a,data_55
		jr	z,lddr_3
		inc_error_cnt
lddr_3:		inc	hl
		ld	a,(hl)
		cp	a,data_80
		jr	z,lddr_4
		inc_error_cnt
lddr_4:		inc	hl
		ld	a,(hl)
		cp	a,data_aa
		jr	z,lddr_5
		inc_error_cnt
lddr_5:		inc	hl
		ld	a,(hl)
		cp	a,data_7f
		jr	z,cpi_0
		inc_error_cnt
cpi_0:		ld	hl,t_var1
		ld	bc,5
		ld	a,data_7f
		cpi
		jp	pe,cpi_1
		inc_error_cnt
cpi_1:		jp	m,cpi_2
		inc_error_cnt
cpi_2:		jr	nz,cpi_3
		inc_error_cnt
cpi_3:		cpi
		jp	pe,cpi_4
		inc_error_cnt
cpi_4:		jp	p,cpi_5
		inc_error_cnt
cpi_5:		jr	nz,cpi_6
		inc_error_cnt
cpi_6:		cpi
		jp	pe,cpi_7
		inc_error_cnt
cpi_7:		jp	m,cpi_8
		inc_error_cnt
cpi_8:		jr	nz,cpi_9
		inc_error_cnt
cpi_9:		cpi
		jp	pe,cpi_10
		inc_error_cnt
cpi_10:		jp	m,cpi_11
		inc_error_cnt
cpi_11:		jr	nz,cpi_12
		inc_error_cnt
cpi_12:		cpi
		jp	po,cpi_13
		inc_error_cnt
cpi_13:		jp	p,cpi_14
		inc_error_cnt
cpi_14:		jr	z,cpir_0
		inc_error_cnt
cpir_0:		ld	a,data_aa
		ld	hl,var1
		ld	bc,5
		cpir
		jr	z,cpir_1
		inc_error_cnt
cpir_1:		jp	pe,cpir_2
		inc_error_cnt
cpir_2:		ld	a,b
		cp	a,0
		jr	z,cpir_3
		inc_error_cnt
cpir_3:		ld	a,c
		cp	a,1
		jr	z,cpir_4
		inc_error_cnt
cpir_4:		ld	a,data_7f
		ld	hl,var1
		ld	bc,5
		cpir
		jp	po,cpir_5
		inc_error_cnt
cpir_5:		jr	z,cpir_6
		inc_error_cnt
cpir_6:		ld	a,#34      ;bjp was >data_1234
		ld	hl,var1
		ld	bc,5
		cpir
		jp	po,cpir_7
		inc_error_cnt
cpir_7:		jr	nz,cpir_8
		inc_error_cnt
cpir_8:		jp	m,cpir_9
		inc_error_cnt
cpir_9:		ld	a,data_aa
		ld	hl,var1
		ld	bc,3
		cpir
		jp	po,cpir_10
		inc_error_cnt
cpir_10:	jp	p,cpir_11
		inc_error_cnt
cpir_11:	jr	nz,cpd_0
		inc_error_cnt
cpd_0:		ld	a,data_ff
		ld	hl,var5
		ld	bc,5
		cpd
		jp	m,cpd_1
		inc_error_cnt
cpd_1:		jp	pe,cpd_2
		inc_error_cnt
cpd_2:		jr	nz,cpd_3
		inc_error_cnt
cpd_3:		cpd
		jp	p,cpd_4
		inc_error_cnt
cpd_4:		jp	pe,cpd_5
		inc_error_cnt
cpd_5:		jr	nz,cpd_6
		inc_error_cnt
cpd_6:		cpd
		jp	p,cpd_7
		inc_error_cnt
cpd_7:		jp	pe,cpd_8
		inc_error_cnt
cpd_8:		jr	nz,cpd_9
		inc_error_cnt
cpd_9:		cpd
		jp	m,cpd_10
		inc_error_cnt
cpd_10:		jp	pe,cpd_11
		inc_error_cnt
cpd_11:		jr	nz,cpd_12
		inc_error_cnt
cpd_12:		cpd
		jp	p,cpd_13
		inc_error_cnt
cpd_13:		jp	po,cpd_14
		inc_error_cnt
cpd_14:		jr	z,cpdr_0
		inc_error_cnt
cpdr_0:		ld	a,data_80
		ld	hl,var5
		ld	bc,5
		cpdr
		jp	pe,cpdr_1
		inc_error_cnt
cpdr_1:		jp	p,cpdr_2
		inc_error_cnt
cpdr_2:		jr	z,cpdr_3
		inc_error_cnt
cpdr_3:		ld	a,b
		cp	a,0
		jr	z,cpdr_4
		inc_error_cnt
cpdr_4:		ld	a,c
		cp	a,2
		jr	z,cpdr_5
		inc_error_cnt
cpdr_5:		ld	a,#34      ;bjp was >data_1234
		ld	hl,var5
		ld	bc,5
		cpdr
		jp	po,cpdr_6
		inc_error_cnt
cpdr_6:		jr	nz,cpdr_7
		inc_error_cnt
cpdr_7:		jp	p,cpdr_8
		inc_error_cnt
cpdr_8:		ld	a,#34      ;bjp was >data_1234
		ld	hl,var5
		ld	bc,3
		cpdr
		jp	po,cpdr_9
		inc_error_cnt
cpdr_9:		jr	nz,cpdr_10
		inc_error_cnt
cpdr_10:	jp	m,c_ret_f
		inc_error_cnt

;add a test for the Stephen Warren bug
;  first cut didn't do it. Lots of insts actually work. Gotta be something
;  basically executed from ir1  - like push
c_ret_f:	di
		ld	de, #1122
		push	de
		pop	af
		ld	hl, 0xaa55
		ld	a,7
		cp	0
		ret	z
		push	hl
		pop	af 
		cp	a, data_aa
		jp	z, out_0
		inc_error_cnt



;
;the file portfe.xxx must be examined to see if the proper output is generated
;
out_0:          di		; interrupts are tested, don't muck up output
		ld	a,#30
		out	(out_port),a
		ld	c,out_port
		ld	a,#31
		out	(c),a
		ld	b,#32
		out	(c),b
		ld	d,#33
		out	(c),d
		ld	e,#34
		out	(c),e
		ld	h,#35
		out	(c),h
		ld	l,#36
		out	(c),l
		out	(c),c			;output value divider
outi_0:		ld	a,#31			;set up output values
		ld	b,5
		ld	hl,t_var1
outi_1:		ld	(hl),a
		inc	a
		inc	hl
		djnz	outi_1
outi_2:		ld	c,out_port
		ld	b,5
		ld	hl,t_var1
outi_3:		outi
		jr	nz,outi_3
otir_0:		out	(c),c			;output value divider
		ld	hl,t_var1
		ld	b,5
		otir
		jr	z,outd_0
		inc_error_cnt
outd_0:		out	(c),c
		ld	hl,t_var5
		ld	b,5
outd_1:		outd
		jr	nz,outd_1
otdr_0:		out	(c),c
		ld	b,5
		ld	hl,t_var5
		otdr
		jr	z,otdr_1
		inc_error_cnt
otdr_1:		out	(c),c
		ld	a,#0d
		out	(c),a
		ld	a,#0a
		out	(c),a
inc_pass:	ld	a,(pass_count)
		inc	a
		ld	(pass_count),a
		ld	hl,error_cnt
		ld	a,(hl)
		cp	a,0
		jr	z,worked
failed:		ld	hl,fail_msg
		ld	b,27
		otir
		ld	hl, bist_adr
		ld      (hl), bist_ack+bist_err
		halt
		nop
		nop
;worked:		passed           ;???? bjp
worked:		ld	hl,match_msg
		ld	b,33
		otir
		ld	hl,pass_msg
		ld	b,45
		otir
		ld	hl, bist_adr
		ld	(hl), bist_ack
		


stop:		halt
		nop
		nop
		nop

int_start:	push	hl
		push	bc
		push    af	; bj  -- this stuff gronks f as well 
		ld 	hl, int_msg
		ld	b, 1
		ld	c, out_port
		otir
		pop     af
		pop	bc
		pop	hl
		reti
		
;subroutine 1, must load a with #7f
;
sub1:		ld	a,data_7f
		ret
;
;
;subroutine 2, must load a with #55
;
sub2:		ld	a,data_55
		cp	a,data_55
		ret	z
;
;subroutine 3, increments a
;
sub3:		inc	a
		and	a
		ret	nz
;
;subroutine 4, subtracts 1 from a
;
sub4:		sub	a,1
		ret	c
;
;subroutine 5, subtracts 1 from a
;
sub5:		sub	a,1
		ret	nc
;
;subroutine 6, shifts a right logically
;
sub6:		srl	a
		ret	po
;
;subroutine 7, shifts a left arithmetically
;
sub7:		sla	a
		ret	pe
;
;subroutine 8, shifts a left arithmetically
;
sub8:		sla	a
		ret	m
;
;subroutine 9, rotates a left
;
sub9:		rl	a
		ret	p
;
;restart 0 routine
;
rst_0000_1:	ld	a,(pass_count)
		or	a
		jp	nz,start
		ld	a,1
		ret
;
;		data
;

fail_msg:		db	cr,lf,'instruction test failed',cr,lf
match_msg:		db      lf,'0123456 12345 12345 54321 54321',lf
pass_msg:		db	'If above lines match instruction test passed',lf
int_msg:                db      bell
;message_addr:	equ	#be58

var1:		db	data_ff
var2:		db	data_55
var3:		db	data_80
var4:		db	data_aa
var5:		db	data_7f
;

		org	#7000
t_var1:		db	0
t_var2:		db	0
t_var3:		db	0
t_var4:		db	0
t_var5:		db	0
;
w_var1:		dw	data_1234
w_var2:		dw	data_55aa
w_var3:		dw	data_7fff
w_var4:		dw	data_8000
w_var5:		dw	data_aa55
w_var6:		dw	data_ffff
;
tw_var1:	dw	0
tw_var2:	dw	0
tw_var3:	dw	0
tw_var4:	dw	0
tw_var5:	dw	0
tw_var6:	dw	0
tw_var7:	dw	0
;
error_cnt:	db	0
pass_count:	db	1
;
		org	#7100
stack:		ds	128
stack_end:	equ	$
;
		end start
; only a single pointer in the interrupt table               
		org	#7200
int_tbl:	dw	0
                org     #72fe
int_ptr:	dw	int_start











































































































































































































































































































@


1.5
log
@fixed bugs and augmented instruction test.
ex   de hl     bug fixed                               thanks Howard Harte
ret   condition            (ret not taken bug)   thanks -  Stephen Warren
@
text
@d5827 10
@


1.4
log
@test executes cleanly
@
text
@d1052 1
a1052 1
		ld	hl,data_ffff
d1054 1
a1054 1
		ld	a,data_ff
d1058 2
a1059 1
ex_1:		cp	e
d6098 18
a6115 1
cpdr_10:	jp	m,out_0
d6117 3
@


1.3
log
@inst test  got to the worked macro
@
text
@d1 1
a1 1
; bjp   modified to assemble on as80.
d6 1
a6 1
; lower and higher bytes respectively.   It appears that as80 has no equivaltent.
d13 3
d63 6
a68 5
fail:		db	'failed'
pass:		db	'passed'
message_addr:	equ	#be58
in_port:	equ	#10
out_port:	equ	#10
d82 3
d95 10
a104 10
passed		macro
		push	bc
		ld 	bc,(pass)
		ld	(message_addr),bc
		ld 	bc,(pass+2)
		ld	(message_addr+2),bc
		ld 	bc,(pass+4)
		ld	(message_addr+4),bc
		pop	bc
		endm
d106 10
a115 10
failed		macro
		push	bc
		ld 	bc,(fail)
		ld	(message_addr),bc
		ld 	bc,(fail+2)
		ld	(message_addr+2),bc
		ld 	bc,(fail+4)
		ld	(message_addr+4),bc
		pop	bc
		endm
d125 1
d3733 9
a3741 1
rlca_0:		ld	a,data_80
d3773 2
a3774 1
rrca_0:		scf
d5856 1
d6102 2
a6103 1
out_0:		ld	a,#30
d6160 8
a6167 3
		failed
		cp	a,0
		jr	nz,stop
d6169 9
a6177 8
worked:		push	bc
		ld 	bc,(pass)
		ld	(message_addr),bc
		ld 	bc,(pass+2)
		ld	(message_addr+2),bc
		ld 	bc,(pass+4)
		ld	(message_addr+4),bc
		pop	bc
d6184 13
a6196 1
;
d6255 7
d6299 5
a6303 2


@


1.2
log
@instruction test getting to final stages
@
text
@d63 1
a63 1
in_port:	equ	#ff
@


1.1
log
@check in test files and assembler manual
@
text
@d1 11
a11 1

d64 1
a64 1
out_port:	equ	#20
d79 1
a79 1
;inc_error_cnt	macro	     ;bjp   change for initial test
d666 1
a666 37
		jr	z,ld_117
		inc_error_cnt
ld_117:		ld	a,data_55
		ld	r,a
		ld	a,0
		ld	a,r
		jp	p,ld_118
		inc_error_cnt
ld_118:		jr	nz,ld_119
		inc_error_cnt
ld_119:		ld	a,data_ff
		ld	r,a
		ld	a,0
		ld	a,r
		jp	m,ld_120
		inc_error_cnt
ld_120:		ld	a,4			;totally sequence dependent
		ld	r,a
		ld	a,data_55
		ld	a,r
		jr	z,ld_121
		inc_error_cnt
ld_121:		ei				;set iff2
		ld	a,i
		jp	pe,ld_122		;iff2 was set
		inc_error_cnt
ld_122:		di				;clear iff2
		ld	a,i
		jp	po,ld_123		;iff2 was cleared
		inc_error_cnt
ld_123:		ei				;set iff2
		ld	a,r
		jp	pe,ld_124		;iff2 was set
		inc_error_cnt
ld_124:		di				;clear iff2
		ld	a,r
		jp	po,ld_125		;iff2 was cleared
d668 39
d1446 1
a1446 1
adc_0:		ld	a,0
d1449 1
a1449 1
		adc	a,b
d1459 2
a1460 2
		adc	a,b
		jp	pe,adc_5
d1465 1
a1465 1
		jr	z,adc_7
d1469 1
a1469 1
		adc	a,b
d3482 2652
a6133 2653
add_110         jp      inc_pass		
;add_110:	push	ix
;		pop	hl
;		ld	a,h
;		cp	a,(stack_end+1)		; >stack_end
;		jr	z,add_111
;		inc_error_cnt
;add_111:	ld	a,l
;		cp	a,(stack_end)		; <stack_end
;		jr	z,add_112
;		inc_error_cnt
;add_112:	ld	ix,data_7fff
;		ld	bc,data_aa55
;		add	ix,bc
;		jr	c,add_113
;		inc_error_cnt
;add_113:	add	ix,bc
;		jr	nc,add_114
;		inc_error_cnt
;add_114:	push	ix
;		pop	hl
;		ld	a,h
;		cp	a,#d4
;		jr	z,add_115
;		inc_error_cnt
;add_115:	ld	a,l
;		cp	a,#a9
;		jr	z,add_116
;		inc_error_cnt
;add_116:	ld	ix,data_1234
;		ld	de,data_1234
;		add	ix,de
;		push	ix
;		pop	hl
;		ld	a,h
;		cp	a,#24		;>(data_1234+data_1234)
;		jr	z,add_117
;		inc_error_cnt
;add_117:	ld	a,l
;		cp	a,#68		;<(data_1234+data_1234)
;		jr	z,add_118
;		inc_error_cnt
;add_118:	ld	ix,data_1234
;		add	ix,ix
;		push	ix
;		pop	bc
;		ld	a,b
;		cp	a,#24		;>(data_1234+data_1234)
;		jr	z,add_119
;		inc_error_cnt
;add_119:	ld	a,c
;		cp	a,#68		;<(data_1234+data_1234)
;		jr	z,add_120
;		inc_error_cnt
;add_120:	ld	sp,stack_end
;		ld	iy,0
;		add	iy,sp
;		jr	nc,add_121
;		inc_error_cnt
;add_121:	push	iy
;		pop	hl
;		ld	a,h
;		cp	a,stack_end+1		;stack_end
;		jr	z,add_122
;		inc_error_cnt
;add_122:	ld	a,l
;		cp	a,(stack_end)		;<stack_end
;		jr	z,add_123
;		inc_error_cnt
;add_123:	ld	iy,data_7fff
;		ld	bc,data_aa55
;		add	iy,bc
;		jr	c,add_124
;		inc_error_cnt
;add_124:	add	iy,bc
;		jr	nc,add_125
;		inc_error_cnt
;add_125:	push	iy
;		pop	hl
;		ld	a,h
;		cp	a,#d4
;		jr	z,add_126
;		inc_error_cnt
;add_126:	ld	a,l
;		cp	a,#a9
;		jr	z,add_127
;		inc_error_cnt
;add_127:	ld	iy,data_1234
;		ld	de,data_1234
;		add	iy,de
;		push	iy
;		pop	hl
;		ld	a,h
;		cp	a,#24		;>(data_1234+data_1234)
;		jr	z,add_128
;		inc_error_cnt
;add_128:	ld	a,l
;		cp	a,#68		;<(data_1234+data_1234)
;		jr	z,add_129
;		inc_error_cnt
;add_129:	ld	iy,data_1234
;		add	iy,iy
;		push	iy
;		pop	bc
;		ld	a,b
;		cp	a,#24		;>(data_1234+data_1234)
;		jr	z,add_130
;		inc_error_cnt
;add_130:	ld	a,c
;		cp	a,#68		;<(data_1234+data_1234)
;		jr	z,inc_54
;		inc_error_cnt
;inc_54:		ld	bc,data_1234
;		inc	bc
;		ld	a,b
;		cp	a,#12      ;bjp was >data_1234
;		jr	z,inc_55
;		inc_error_cnt
;inc_55:		ld	a,c
;		cp	a,#34+1      ;bjp was >data_1234+1
;		jr	z,inc_56
;		inc_error_cnt
;inc_56:		ld	de,data_55aa
;		inc	de
;		ld	a,d
;		cp	a,#55		;>data_55aa
;		jr	z,inc_57
;		inc_error_cnt
;inc_57:		ld	a,e
;		cp	a,#ab		;<data_55aa+1
;		jr	z,inc_58
;		inc_error_cnt
;inc_58:		ld	hl,data_7fff
;		inc	hl
;		ld	a,h
;		cp	a,#80		;>data_7fff+1
;		jr	z,inc_59
;		inc_error_cnt
;inc_59:		ld	a,l
;		cp	a,#00		;<data_7fff+1
;		jr	z,inc_60
;		inc_error_cnt
;inc_60:		ld	hl,0
;		inc	sp
;		add	hl,sp
;		ld	sp,stack_end
;		ld	a,h
;		cp	a,(stack_end+2)		;>stack_end+1
;		jr	z,inc_61
;		inc_error_cnt
;inc_61:		ld	a,l
;		cp	a,(stack_end+1)		;<stack_end+1
;		jr	z,inc_62
;		inc_error_cnt
;inc_62:		ld	ix,data_8000
;		inc	ix
;		push	ix
;		pop	de
;		ld	a,d
;		cp	a,#80		;>data_8000
;		jr	z,inc_63
;		inc_error_cnt
;inc_63:		ld	a,e
;		cp	a,#01		;<data_8000+1
;		jr	z,inc_64
;		inc_error_cnt
;inc_64:		ld	iy,data_7fff
;		inc 	iy
;		push	iy
;		pop	bc
;		ld	a,b
;		cp	a,#80		;>data_7fff+1
;		jr	z,inc_65
;		inc_error_cnt
;inc_65:		ld	a,c
;		cp	a,#00		;<data_7fff+1
;		jr	z,dec_46
;		inc_error_cnt
;dec_46:		ld	bc,data_1234
;		dec	bc
;		ld	a,b
;		cp	a,#12      ;bjp was >data_1234
;		jr	z,dec_47
;		inc_error_cnt
;dec_47:		ld	a,c
;		cp	a,#34-1      ;bjp was >data_1234-1
;		jr	z,dec_48
;		inc_error_cnt
;dec_48:		ld	de,data_8000
;		dec	de
;		ld	a,d
;		cp	a,#7f		;>data_7fff
;		jr	z,dec_49
;		inc_error_cnt
;dec_49:		ld	a,e
;		cp	a,#ff		;<data_7fff
;		jr	z,dec_50
;		inc_error_cnt
;dec_50:		ld	hl,data_aa55
;		dec	hl
;		ld	a,h
;		cp	a,#aa		;>data_aa55
;		jr	z,dec_51
;		inc_error_cnt
;dec_51:		ld	a,l
;		cp	a,#54		;<data_aa55-1
;		jr	z,dec_52
;		inc_error_cnt
;dec_52:		ld	hl,0
;		dec	sp
;		add	hl,sp
;		ld	a,h
;		cp	a,(stack_end)		;>stack_end-1
;		jr	z,dec_53
;		inc_error_cnt
;dec_53:		ld	a,l
;		cp	a,(stack_end-1)		;<stack_end-1
;		jr	z,dec_54
;		inc_error_cnt
;dec_54:		ld	sp,stack_end
;		ld	ix,data_ffff
;		dec	ix
;		push	ix
;		pop	bc
;		ld	a,b
;		cp	a,#ff		;>data_ffff
;		jr	z,dec_55
;		inc_error_cnt
;dec_55:		ld	a,c
;		cp	a,#00		;<data_ffff-1
;		jr	z,dec_56
;		inc_error_cnt
;dec_56:		ld	iy,data_aa55
;		dec	iy
;		push	iy
;		pop	de
;		ld	a,d
;		cp	a,#aa		;>data_aa55
;		jr	z,dec_57
;		inc_error_cnt
;dec_57:		ld	a,e
;		cp	a,#54		;<data_aa55-1
;		jr	z,rlca_0
;		inc_error_cnt
;rlca_0:		ld	a,data_80
;		rlca
;		jr	c,rlca_1
;		inc_error_cnt
;rlca_1:		rlca
;		jr	nc,rlca_2
;		inc_error_cnt
;rlca_2:		cp	a,2
;		jr	z,rlca_3
;		inc_error_cnt
;rlca_3:		ld	a,data_55
;		rlca
;		cp	a,data_aa
;		jr	z,rla_0
;		inc_error_cnt
;rla_0:		scf
;		ccf
;		ld	a,data_80
;		rla
;		jr	c,rla_1
;		inc_error_cnt
;rla_1:		rla
;		jr	nc,rla_2
;		inc_error_cnt
;rla_2:		cp	a,1
;		jr	z,rla_3
;		inc_error_cnt
;rla_3:		ld	a,data_7f
;		rla
;		cp	a,data_ff-1
;		jr	z,rrca_0
;		inc_error_cnt
;rrca_0:		scf
;		ccf
;		ld	a,1
;		rrca
;		jr	c,rrca_1
;		inc_error_cnt
;rrca_1:		rrca
;		jr	nc,rrca_2
;		inc_error_cnt
;rrca_2:		cp	a,data_7f-#3f
;		jr	z,rrca_3
;		inc_error_cnt
;rrca_3:		ld	a,data_aa
;		rrca
;		cp	a,data_55
;		jr	z,rra_0
;		inc_error_cnt
;rra_0:		scf
;		ccf
;		ld	a,1
;		rra
;		jr	c,rra_1
;		inc_error_cnt
;rra_1:		rra
;		jr	nc,rra_2
;		inc_error_cnt
;rra_2:		cp	a,data_80
;		jr	z,rra_3
;		inc_error_cnt
;rra_3:		ld	a,data_aa
;		rra
;		cp	a,data_55
;		jr	z,rlc_0
;		inc_error_cnt
;rlc_0:		ld	a,data_80
;		rlc	a
;		jr	c,rlc_1
;		inc_error_cnt
;rlc_1:		jp	p,rlc_2
;		inc_error_cnt
;rlc_2:		jr	nz,rlc_3
;		inc_error_cnt
;rlc_3:		jp	po,rlc_4
;		inc_error_cnt
;rlc_4:		rlc	a
;		jr	nc,rlc_5
;		inc_error_cnt
;rlc_5:		rlc	a
;		rlc	a
;		rlc	a
;		rlc	a
;		rlc	a
;		rlc	a
;		jp	m,rlc_6
;		inc_error_cnt
;rlc_6:		ld	a,data_55
;		rlc	a
;		jp	m,rlc_7
;		inc_error_cnt
;rlc_7:		jp	pe,rlc_8
;		inc_error_cnt
;rlc_8:		cp	a,data_aa
;		jr	z,rlc_9
;		inc_error_cnt
;rlc_9:		ld	a,0
;		rlc	a
;		jr	z,rlc_10
;		inc_error_cnt
;rlc_10:		ld	b,data_7f
;		rlc	b
;		ld	a,b
;		cp	a,data_ff-1
;		jr	z,rlc_11
;		inc_error_cnt
;rlc_11:		ld	c,data_aa
;		rlc	c
;		jr	c,rlc_12
;		inc_error_cnt
;rlc_12:		ld	a,c
;		cp	a,data_55
;		jr	z,rlc_13
;		inc_error_cnt
;rlc_13:		ld	d,data_80
;		rlc	d
;		jr	c,rlc_14
;		inc_error_cnt
;rlc_14:		ld	a,d
;		cp	a,1
;		jr	z,rlc_15
;		inc_error_cnt
;rlc_15:		ld	e,data_ff
;		rlc	e
;		jr	c,rlc_16
;		inc_error_cnt
;rlc_16:		ld	a,e
;		cp	a,data_ff
;		jr	z,rlc_17
;		inc_error_cnt
;rlc_17:		ld	h,data_55
;		rlc	h
;		jp	m,rlc_18
;		inc_error_cnt
;rlc_18:		ld	a,h
;		cp	a,data_aa
;		jr	z,rlc_19
;		inc_error_cnt
;rlc_19:		ld	l,data_80
;		rlc	l
;		jp	p,rlc_20
;		inc_error_cnt
;rlc_20:		ld	a,l
;		cp	a,1
;		jr	z,rlc_21
;		inc_error_cnt
;rlc_21:		ld	hl,t_var1
;		ld	a,data_55
;		ld	(hl),a
;		rlc	(hl)
;		jp	m,rlc_22
;		inc_error_cnt
;rlc_22:		jp	pe,rlc_23
;		inc_error_cnt
;rlc_23:		jr	nc,rlc_24
;		inc_error_cnt
;rlc_24:		jr	nz,rlc_25
;		inc_error_cnt
;rlc_25:		rlc	(hl)
;		jp	p,rlc_26
;		inc_error_cnt
;rlc_26:		jr	c,rlc_27
;		inc_error_cnt
;rlc_27:		ld	a,(hl)
;		cp	a,data_55
;		jr	z,rlc_28
;		inc_error_cnt
;rlc_28:		ld	a,data_7f
;		ld	(hl),a
;		rlc	(hl)
;		jp	po,rlc_29
;		inc_error_cnt
;rlc_29:		ld	a,(hl)
;		cp	a,data_ff-1
;		jr	z,rlc_30
;		inc_error_cnt
;rlc_30:		ld	a,0
;		ld	(hl),a
;		rlc	(hl)
;		jr	z,rlc_31
;		inc_error_cnt
;rlc_31:		ld	ix,t_var3
;		ld	a,data_55
;		ld	(ix-2),a
;		rlc	(ix-2)
;		jp	m,rlc_32
;		inc_error_cnt
;rlc_32:		jp	pe,rlc_33
;		inc_error_cnt
;rlc_33:		jr	nz,rlc_34
;		inc_error_cnt
;rlc_34:		jr	nc,rlc_35
;		inc_error_cnt
;rlc_35:		rlc	(ix-2)
;		jp	p,rlc_36
;		inc_error_cnt
;rlc_36:		jr	c,rlc_37
;		inc_error_cnt
;rlc_37:		ld	a,(ix-2)
;		cp	a,data_55
;		jr	z,rlc_38
;		inc_error_cnt
;rlc_38:		ld	a,data_7f
;		ld	(ix+2),a
;		rlc	(ix+2)
;		jp	po,rlc_39
;		inc_error_cnt
;rlc_39:		ld	a,(ix+2)
;		cp	a,data_ff-1
;		jr	z,rlc_40
;		inc_error_cnt
;rlc_40:		ld	a,0
;		ld	(ix-1),a
;		rlc	(ix-1)
;		jr	z,rlc_41
;		inc_error_cnt
;rlc_41:		ld	iy,t_var3
;		ld	a,data_55
;		ld	(iy+2),a
;		rlc	(iy+2)
;		jp	m,rlc_42
;		inc_error_cnt
;rlc_42:		jp	pe,rlc_43
;		inc_error_cnt
;rlc_43:		jr	nc,rlc_44
;		inc_error_cnt
;rlc_44:		jr	nz,rlc_45
;		inc_error_cnt
;rlc_45:		rlc	(iy+2)
;		jp	p,rlc_46
;		inc_error_cnt
;rlc_46:		jr	c,rlc_47
;		inc_error_cnt
;rlc_47:		ld	a,(iy+2)
;		cp	a,data_55
;		jr	z,rlc_48
;		inc_error_cnt
;rlc_48:		ld	a,data_7f
;		ld	(iy-2),a
;		rlc	(iy-2)
;		jp	po,rlc_49
;		inc_error_cnt
;rlc_49:		ld	a,(iy-2)
;		cp	a,data_ff-1
;		jr	z,rlc_50
;		inc_error_cnt
;rlc_50:		ld	a,0
;		ld	(iy+1),a
;		rlc	(iy+1)
;		jr	z,rl_0
;		inc_error_cnt
;rl_0:		scf
;		ccf
;		ld	a,data_55
;		rl	a
;		jp	m,rl_1
;		inc_error_cnt
;rl_1:		jp	pe,rl_2
;		inc_error_cnt
;rl_2:		jr	nc,rl_3
;		inc_error_cnt
;rl_3:		jr	nz,rl_4
;		inc_error_cnt
;rl_4:		rl	a
;		jp	p,rl_5
;		inc_error_cnt
;rl_5:		jp	po,rl_6
;		inc_error_cnt
;rl_6:		jr	c,rl_7
;		inc_error_cnt
;rl_7:		rl	a
;		cp	a,data_aa-1
;		jr	z,rl_8
;		inc_error_cnt
;rl_8:		ld	a,0
;		rl	a
;		jr	z,rl_9
;		inc_error_cnt
;rl_9:		ld	b,data_aa
;		ld	c,data_7f
;		rl	b
;		jr	c,rl_10
;		inc_error_cnt
;rl_10:		rl	c
;		jr	nc,rl_11
;		inc_error_cnt
;rl_11:		ld	a,b
;		cp	a,data_55-1
;		jr	z,rl_12
;		inc_error_cnt
;rl_12:		ld	a,c
;		cp	a,data_ff
;		jr	z,rl_13
;		inc_error_cnt
;rl_13:		ld	d,data_ff
;		ld	e,data_80
;		rl	e
;		jr	c,rl_14
;		inc_error_cnt
;rl_14:		rl	d
;		jr	c,rl_15
;		inc_error_cnt
;rl_15:		ld	a,d
;		cp	a,data_ff
;		jr	z,rl_16
;		inc_error_cnt
;rl_16:		ld	a,e
;		cp	a,0
;		jr	z,rl_17
;		inc_error_cnt
;rl_17:		ld	h,data_7f
;		ld	l,data_55
;		rl	h
;		jp	m,rl_18
;		inc_error_cnt
;rl_18:		rl	l
;		jp	m,rl_19
;		inc_error_cnt
;rl_19:		ld	a,h
;		cp	a,data_ff-1
;		jr	z,rl_20
;		inc_error_cnt
;rl_20:		ld	a,l
;		cp	a,data_aa
;		jr	z,rl_21
;		inc_error_cnt
;rl_21:		ld	hl,t_var5
;		ld	a,data_55
;		ld	(hl),a
;		rl	(hl)
;		jp	m,rl_22
;		inc_error_cnt
;rl_22:		jp	pe,rl_23
;		inc_error_cnt
;rl_23:		jr	nc,rl_24
;		inc_error_cnt
;rl_24:		jr	nz,rl_25
;		inc_error_cnt
;rl_25:		rl	(hl)
;		jp	p,rl_26
;		inc_error_cnt
;rl_26:		jp	po,rl_27
;		inc_error_cnt
;rl_27:		jr	c,rl_28
;		inc_error_cnt
;rl_28:		ld	a,(hl)
;		cp	a,data_55-1
;		jr	z,rl_29
;		inc_error_cnt
;rl_29:		ld	a,0
;		ld	(hl),a
;		rl	(hl)
;		jr	z,rl_30
;		inc_error_cnt
;rl_30:		ld	ix,t_var3
;		ld	a,data_55
;		ld	(ix-2),a
;		rl	(ix-2)
;		jp	m,rl_31
;		inc_error_cnt
;rl_31:		jp	pe,rl_32
;		inc_error_cnt
;rl_32:		jr	nc,rl_33
;		inc_error_cnt
;rl_33:		jr	nz,rl_34
;		inc_error_cnt
;rl_34:		rl	(ix-2)
;		jp	p,rl_35
;		inc_error_cnt
;rl_35:		jp	po,rl_36
;		inc_error_cnt
;rl_36:		jr	c,rl_37
;		inc_error_cnt
;rl_37:		ld	a,(ix-2)
;		cp	a,data_55-1
;		jr	z,rl_38
;		inc_error_cnt
;rl_38:		ld	a,0
;		ld	(ix+2),a
;		rl	(ix+2)
;		jr	z,rl_39
;rl_39:		ld	iy,t_var3
;		ld	a,data_55
;		ld	(iy-1),a
;		rl	(iy-1)
;		jp	m,rl_40
;		inc_error_cnt
;rl_40:		jp	pe,rl_41
;		inc_error_cnt
;rl_41:		jr	nc,rl_42
;		inc_error_cnt
;rl_42:		jr	nz,rl_43
;		inc_error_cnt
;rl_43:		rl	(iy-1)
;		jp	p,rl_44
;		inc_error_cnt
;rl_44:		jp	po,rl_45
;		inc_error_cnt
;rl_45:		jr	c,rl_46
;		inc_error_cnt
;rl_46:		ld	a,(iy-1)
;		cp	a,data_55-1
;		jr	z,rl_47
;		inc_error_cnt
;rl_47:		ld	a,0
;		ld	(iy+1),a
;		rl	(iy+1)
;		jr	z,rrc_0
;		inc_error_cnt
;rrc_0:		ld	a,data_aa
;		rrc	a
;		jp	p,rrc_1
;		inc_error_cnt
;rrc_1:		jp	pe,rrc_2
;		inc_error_cnt
;rrc_2:		jr	nz,rrc_3
;		inc_error_cnt
;rrc_3:		jr	nc,rrc_4
;		inc_error_cnt
;rrc_4:		rrc	a
;		jp	m,rrc_5
;		inc_error_cnt
;rrc_5:		jr	c,rrc_6
;		inc_error_cnt
;rrc_6:		cp	a,data_aa
;		jr	z,rrc_7
;		inc_error_cnt
;rrc_7:		ld	a,1
;		rrc	a
;		jr	c,rrc_8
;		inc_error_cnt
;rrc_8:		cp	a,data_80
;		jr	z,rrc_9
;		inc_error_cnt
;rrc_9:		ld	a,data_7f
;		rrc	a
;		jp	po,rrc_10
;		inc_error_cnt
;rrc_10:		cp	a,#bf
;		jr	z,rrc_11
;		inc_error_cnt
;rrc_11:		ld	b,data_80
;		ld	c,data_55
;		rrc	b
;		jr	nc,rrc_12
;		inc_error_cnt
;rrc_12:		rrc	c
;		jr	c,rrc_13
;		inc_error_cnt
;rrc_13:		ld	a,b
;		cp	a,#40
;		jr	z,rrc_14
;		inc_error_cnt
;rrc_14:		ld	a,c
;		cp	a,data_aa
;		jr	z,rrc_15
;		inc_error_cnt
;rrc_15:		ld	d,data_aa
;		ld	e,1
;		rrc	d
;		jp	p,rrc_16
;		inc_error_cnt
;rrc_16:		rrc	e
;		jp	m,rrc_17
;		inc_error_cnt
;rrc_17:		ld	a,d
;		cp	a,data_55
;		jr	z,rrc_18
;		inc_error_cnt
;rrc_18:		ld	a,e
;		cp	a,data_80
;		jr	z,rrc_19
;		inc_error_cnt
;rrc_19:		ld	h,data_55
;		ld	l,data_ff
;		rrc	h
;		jr	c,rrc_20
;		inc_error_cnt
;rrc_20:		rrc	l
;		jr	c,rrc_21
;		inc_error_cnt
;rrc_21:		ld	a,h
;		cp	a,data_aa
;		jr	z,rrc_22
;		inc_error_cnt
;rrc_22:		ld	a,l
;		cp	a,data_ff
;		jr	z,rrc_23
;		inc_error_cnt
;rrc_23:		ld	hl,t_var4
;		ld	(hl),data_aa
;		rrc	 (hl)
;		jp	p,rrc_24
;		inc_error_cnt
;rrc_24:		jp	pe,rrc_25
;		inc_error_cnt
;rrc_25:		jr	nz,rrc_26
;		inc_error_cnt
;rrc_26:		jr	nc,rrc_27
;		inc_error_cnt
;rrc_27:		rrc	(hl)
;		jp	m,rrc_28
;		inc_error_cnt
;rrc_28:		jr	c,rrc_29
;		inc_error_cnt
;rrc_29:		ld	a,(hl)
;		cp	a,data_aa
;		jr	z,rrc_30
;		inc_error_cnt
;rrc_30:		ld	(hl),data_7f
;		rrc	(hl)
;		jp	po,rrc_31
;		inc_error_cnt
;rrc_31:		ld	a,(hl)
;		cp	a,#bf
;		jr	z,rrc_32
;		inc_error_cnt
;rrc_32:		ld	(hl),0
;		rrc	(hl)
;		jr	z,rrc_33
;		inc_error_cnt
;rrc_33:		ld	ix,t_var3
;		ld	a,data_aa
;		ld	(ix+2),a
;		rrc	(ix+2)
;		jp	p,rrc_34
;		inc_error_cnt
;rrc_34:		jp	pe,rrc_35
;		inc_error_cnt
;rrc_35:		jr	nc,rrc_36
;		inc_error_cnt
;rrc_36:		jr	nz,rrc_37
;		inc_error_cnt
;rrc_37:		rrc	(ix+2)
;		jp	m,rrc_38
;		inc_error_cnt
;rrc_38:		jr	c,rrc_39
;		inc_error_cnt
;rrc_39:		ld	a,(ix+2)
;		cp	a,data_aa
;		jr	z,rrc_40
;		inc_error_cnt
;rrc_40:		ld	a,1
;		ld	(ix-2),a
;		rrc	(ix-2)
;		jp	po,rrc_41
;		inc_error_cnt
;rrc_41:		ld	a,(ix-2)
;		cp	a,data_80
;		jr	z,rrc_42
;		inc_error_cnt
;rrc_42:		ld	a,0
;		ld	(ix+1),a
;		rrc	(ix+1)
;		jr	z,rrc_43
;		inc_error_cnt
;rrc_43:		ld	iy,t_var3
;		ld	a,data_aa
;		ld	(iy+2),a
;		rrc	(iy+2)
;		jp	p,rrc_44
;		inc_error_cnt
;rrc_44:		jp	pe,rrc_45
;		inc_error_cnt
;rrc_45:		jr	nc,rrc_46
;		inc_error_cnt
;rrc_46:		jr	nz,rrc_47
;		inc_error_cnt
;rrc_47:		rrc	(iy+2)
;		jp	m,rrc_48
;		inc_error_cnt
;rrc_48:		jr	c,rrc_49
;		inc_error_cnt
;rrc_49:		ld	a,(iy+2)
;		cp	a,data_aa
;		jr	z,rrc_50
;		inc_error_cnt
;rrc_50:		ld	a,1
;		ld	(iy-2),a
;		rrc	(iy-2)
;		jp	po,rrc_51
;		inc_error_cnt
;rrc_51:		ld	a,(iy-2)
;		cp	a,data_80
;		jr	z,rrc_52
;		inc_error_cnt
;rrc_52:		ld	a,0
;		ld	(iy+1),a
;		rrc	(iy+1)
;		jr	z,rr_0
;		inc_error_cnt
;rr_0:		scf
;		ccf
;		ld	a,data_aa
;		rr	a
;		jp	p,rr_1
;		inc_error_cnt
;rr_1:		jp	pe,rr_2
;		inc_error_cnt
;rr_2:		jr	nc,rr_3
;		inc_error_cnt
;rr_3:		jr	nz,rr_4
;		inc_error_cnt
;rr_4:		rr	a
;		jr	c,rr_5
;		inc_error_cnt
;rr_5:		jp	po,rr_6
;		inc_error_cnt
;rr_6:		cp	a,#2a
;		jr	z,rr_7
;		inc_error_cnt
;rr_7:		scf
;		ld	a,0
;		rr	a
;		jp	m,rr_8
;		inc_error_cnt
;rr_8:		cp	a,data_80
;		jr	z,rr_9
;		inc_error_cnt
;rr_9:		ld	a,0
;		rr	a
;		jr	z,rr_10
;		inc_error_cnt
;rr_10:		ld	b,data_55
;		ld	c,data_aa
;		rr	b
;		jr	c,rr_11
;		inc_error_cnt
;rr_11:		rr	c
;		jr	nc,rr_12
;		inc_error_cnt
;rr_12:		ld	a,b
;		cp	a,#2a
;		jr	z,rr_13
;		inc_error_cnt
;rr_13:		ld	a,c
;		cp	a,#d5
;		jr	z,rr_14
;		inc_error_cnt
;rr_14:		ld	d,data_7f
;		ld	e,data_80
;		rr	d
;		jr	c,rr_15
;		inc_error_cnt
;rr_15:		rr	e
;		jr	nc,rr_16
;		inc_error_cnt
;rr_16:		ld	a,d
;		cp	a,#3f
;		jr	z,rr_17
;		inc_error_cnt
;rr_17:		ld	a,e
;		cp	a,#c0
;		jr	z,rr_18
;		inc_error_cnt
;rr_18:		ld	hl,t_var2
;		ld	(hl),data_55
;		rr	(hl)
;		jp	p,rr_19
;		inc_error_cnt
;rr_19:		jp	po,rr_20
;		inc_error_cnt
;rr_20:		jr	c,rr_21
;		inc_error_cnt
;rr_21:		jr	nz,rr_22
;		inc_error_cnt
;rr_22:		rr	(hl)
;		jp	m,rr_23
;		inc_error_cnt
;rr_23:		jp	pe,rr_24
;		inc_error_cnt
;rr_24:		jr	nc,rr_25
;		inc_error_cnt
;rr_25:		ld	a,(hl)
;		cp	a,#95
;		jr	z,rr_26
;		inc_error_cnt
;rr_26:		ld	(hl),0
;		rr	(hl)
;		jr	z,rr_27
;		inc_error_cnt
;rr_27:		ld	ix,t_var3
;		ld	a,data_55
;		ld	(ix-2),a
;		rr	(ix-2)
;		jp	p,rr_28
;		inc_error_cnt
;rr_28:		jp	po,rr_29
;		inc_error_cnt
;rr_29:		jr	c,rr_30
;		inc_error_cnt
;rr_30:		jr	nz,rr_31
;		inc_error_cnt
;rr_31:		rr	(ix-2)
;		jp	m,rr_32
;		inc_error_cnt
;rr_32:		jp	pe,rr_33
;		inc_error_cnt
;rr_33:		jr	nc,rr_34
;		inc_error_cnt
;rr_34:		ld	a,(ix-2)
;		cp	a,#95
;		jr	z,rr_35
;		inc_error_cnt
;rr_35:		ld	a,0
;		ld	(ix+2),a
;		rr	(ix+2)
;		jr	z,rr_36
;		inc_error_cnt
;rr_36:		ld	iy,t_var3
;		ld	a,data_55
;		ld	(iy+2),a
;		rr	(iy+2)
;		jp	p,rr_37
;		inc_error_cnt
;rr_37:		jp	po,rr_38
;		inc_error_cnt
;rr_38:		jr	c,rr_39
;		inc_error_cnt
;rr_39:		jr	nz,rr_40
;		inc_error_cnt
;rr_40:		rr	(iy+2)
;		jp	m,rr_41
;		inc_error_cnt
;rr_41:		jp	pe,rr_42
;		inc_error_cnt
;rr_42:		jr	nc,rr_43
;		inc_error_cnt
;rr_43:		ld	a,(iy+2)
;		cp	a,#95
;		jr	z,rr_44
;		inc_error_cnt
;rr_44:		ld	a,0
;		ld	(iy-1),a
;		rr	(iy-1)
;		jr	z,sla_0
;		inc_error_cnt
;sla_0:		ld	a,data_55
;		sla	a
;		jp	m,sla_1
;		inc_error_cnt
;sla_1:		jp	pe,sla_2
;		inc_error_cnt
;sla_2:		jr	nc,sla_3
;		inc_error_cnt
;sla_3:		jr	nz,sla_4
;		inc_error_cnt
;sla_4:		sla	a
;		jp	p,sla_5
;		inc_error_cnt
;sla_5:		jp	po,sla_6
;		inc_error_cnt
;sla_6:		jr	c,sla_7
;		inc_error_cnt
;sla_7:		cp	a,data_55-1
;		jr	z,sla_8
;		inc_error_cnt
;sla_8:		ld	a,0
;		sla	a
;		jr	z,sla_9
;		inc_error_cnt
;sla_9:		ld	b,data_80
;		ld	c,data_7f
;		sla	b
;		jr	c,sla_10
;		inc_error_cnt
;sla_10:		ld	a,b
;		cp	a,0
;		jr	z,sla_11
;		inc_error_cnt
;sla_11:		sla	c
;		jp	m,sla_12
;		inc_error_cnt
;sla_12:		ld	a,c
;		cp	a,data_ff-1
;		jr	z,sla_13
;		inc_error_cnt
;sla_13:		ld	d,data_aa
;		ld	e,data_55
;		sla	d
;		jr	c,sla_14
;		inc_error_cnt
;sla_14:		ld	a,d
;		cp	a,data_55-1
;		jr	z,sla_15
;		inc_error_cnt
;sla_15:		sla	e
;		jp	m,sla_16
;		inc_error_cnt
;sla_16:		ld	a,e
;		cp	a,data_aa
;		jr	z,sla_17
;		inc_error_cnt
;sla_17:		ld	h,#12      ;bjp was >data_1234
;		ld	l,#34      ;bjp was >data_1234
;		sla	h
;		jp	p,sla_18
;		inc_error_cnt
;sla_18:		ld	a,h
;		cp	a,#24
;		jr	z,sla_19
;		inc_error_cnt
;sla_19:		sla	l
;		jp	p,sla_20
;		inc_error_cnt
;sla_20:		ld	a,l
;		cp	a,#68
;		jr	z,sla_21
;		inc_error_cnt
;sla_21:		ld	hl,t_var3
;		ld	(hl),data_55
;		sla	(hl)
;		jp	m,sla_22
;		inc_error_cnt
;sla_22:		jp	pe,sla_23
;		inc_error_cnt
;sla_23:		jr	nc,sla_24
;		inc_error_cnt
;sla_24:		jr	nz,sla_25
;		inc_error_cnt
;sla_25:		sla	(hl)
;		jp	p,sla_26
;		inc_error_cnt
;sla_26:		jp	po,sla_27
;		inc_error_cnt
;sla_27:		jr	c,sla_28
;		inc_error_cnt
;sla_28:		ld	a,(hl)
;		cp	a,data_55-1
;		jr	z,sla_29
;		inc_error_cnt
;sla_29:		ld	(hl),0
;		sla	(hl)
;		jr	z,sla_30
;		inc_error_cnt
;sla_30:		ld	ix,t_var3
;		ld	a,data_55
;		ld	(ix-2),a
;		sla	(ix-2)
;		jp	m,sla_31
;		inc_error_cnt
;sla_31:		jp	pe,sla_32
;		inc_error_cnt
;sla_32:		jr	nc,sla_33
;		inc_error_cnt
;sla_33:		jr	nz,sla_34
;		inc_error_cnt
;sla_34:		sla	(ix-2)
;		jp	p,sla_35
;		inc_error_cnt
;sla_35:		jp	po,sla_36
;		inc_error_cnt
;sla_36:		jr	c,sla_37
;		inc_error_cnt
;sla_37:		ld	a,(ix-2)
;		cp	a,data_55-1
;		jr	z,sla_38
;		inc_error_cnt
;sla_38:		ld	a,data_80
;		ld	(ix+2),a
;		sla	(ix+2)
;		jr	z,sla_39
;		inc_error_cnt
;sla_39:		jr	c,sla_40
;		inc_error_cnt
;sla_40:		ld	iy,t_var3
;		ld	a,data_55
;		ld	(iy+2),a
;		sla	(iy+2)
;		jp	m,sla_41
;		inc_error_cnt
;sla_41:		jp	pe,sla_42
;		inc_error_cnt
;sla_42:		jr	nc,sla_43
;		inc_error_cnt
;sla_43:		jr	nz,sla_44
;		inc_error_cnt
;sla_44:		sla	(iy+2)
;		jp	p,sla_45
;		inc_error_cnt
;sla_45:		jp	po,sla_46
;		inc_error_cnt
;sla_46:		jr	c,sla_47
;		inc_error_cnt
;sla_47:		ld	a,(iy+2)
;		cp	a,data_55-1
;		jr	z,sla_48
;		inc_error_cnt
;sla_48:		ld	a,data_80
;		ld	(iy-2),a
;		sla	(iy-2)
;		jr	z,sla_49
;		inc_error_cnt
;sla_49:		jr	c,sra_0
;		inc_error_cnt
;sra_0:		ld	a,data_55
;		sra	a
;		jp	p,sra_1
;		inc_error_cnt
;sra_1:		jp	po,sra_2
;		inc_error_cnt
;sra_2:		jr	c,sra_3
;		inc_error_cnt
;sra_3:		jr	nz,sra_4
;		inc_error_cnt
;sra_4:		sra	a
;		jp	po,sra_5
;		inc_error_cnt
;sra_5:		jr	nc,sra_6
;		inc_error_cnt
;sra_6:		sra	a
;		jp	pe,sra_7
;		inc_error_cnt
;sra_7:		cp	a,#0a			;data_aa.and.#0f
;		jr	z,sra_8
;		inc_error_cnt
;sra_8:		ld	a,1
;		sra	a
;		jr	c,sra_9
;		inc_error_cnt
;sra_9:		jr	z,sra_10
;		inc_error_cnt
;sra_10:		ld	a,data_80
;		sra	a
;		jp	m,sra_11
;		inc_error_cnt
;sra_11:		cp	a,#c0
;		jr	z,sra_12
;		inc_error_cnt
;sra_12:		ld	b,data_7f
;		ld	c,data_aa
;		sra	b
;		jr	c,sra_13
;		inc_error_cnt
;sra_13:		ld	a,b
;		cp	a,#3f
;		jr	z,sra_14
;		inc_error_cnt
;sra_14:		sra	c
;		jr	nc,sra_15
;		inc_error_cnt
;sra_15:		ld	a,c
;		cp	a,#d5
;		jr	z,sra_16
;		inc_error_cnt
;sra_16:		ld	d,data_55
;		ld	e,data_ff
;		sra	d
;		jr	c,sra_17
;		inc_error_cnt
;sra_17:		ld	a,d
;		cp	a,#2a
;		jr	z,sra_18
;		inc_error_cnt
;sra_18:		sra	e
;		jp	m,sra_19
;		inc_error_cnt
;sra_19:		ld	a,e
;		cp	a,data_ff
;		jr	z,sra_20
;		inc_error_cnt
;sra_20:		ld	h,data_aa
;		ld	l,data_7f
;		sra	h
;		jp	m,sra_21
;		inc_error_cnt
;sra_21:		ld	a,h
;		cp	a,#d5
;		jr	z,sra_22
;		inc_error_cnt
;sra_22:		sra	l
;		jr	c,sra_23
;		inc_error_cnt
;sra_23:		ld	a,l
;		cp	a,#3f
;		jr	z,sra_24
;		inc_error_cnt
;sra_24:		ld	hl,t_var1
;		ld	(hl),data_55
;		sra	(hl)
;		jp	p,sra_25
;		inc_error_cnt
;sra_25:		jp	po,sra_26
;		inc_error_cnt
;sra_26:		jr	c,sra_27
;		inc_error_cnt
;sra_27:		jr	nz,sra_28
;		inc_error_cnt
;sra_28:		sra	(hl)
;		jr	nc,sra_29
;		inc_error_cnt
;sra_29:		sra	(hl)
;		jp	pe,sra_30
;		inc_error_cnt
;sra_30:		ld	a,(hl)
;		cp	a,#0a			;data_aa.and.#0f
;		jr	z,sra_31
;		inc_error_cnt
;sra_31:		ld	(hl),data_80
;		sra	(hl)
;		jp	m,sra_32
;		inc_error_cnt
;sra_32:		ld	a,(hl)
;		cp	a,#c0
;		jr	z,sra_33
;		inc_error_cnt
;sra_33:		ld	(hl),1
;		sra	(hl)
;		jr	c,sra_34
;		inc_error_cnt
;sra_34:		jr	z,sra_35
;		inc_error_cnt
;sra_35:		ld	ix,t_var3
;		ld	a,data_55
;		ld	(ix-2),a
;		sra	(ix-2)
;		jp	p,sra_36
;		inc_error_cnt
;sra_36:		jp	po,sra_37
;		inc_error_cnt
;sra_37:		jr	c,sra_38
;		inc_error_cnt
;sra_38:		jr	nz,sra_39
;		inc_error_cnt
;sra_39:		sra	(ix-2)
;		jr	nc,sra_40
;		inc_error_cnt
;sra_40:		sra	(ix-2)
;		jp	pe,sra_41
;		inc_error_cnt
;sra_41:		ld	a,(ix-2)
;		cp	a,#0a		;data_aa.and.#0f
;		jr	z,sra_42
;		inc_error_cnt
;sra_42:		ld	a,data_80
;		ld	(ix+2),a
;		sra	(ix+2)
;		jp	m,sra_43
;		inc_error_cnt
;sra_43:		ld	a,(ix+2)
;		cp	a,#c0
;		jr	z,sra_44
;		inc_error_cnt
;sra_44:		ld	a,1
;		ld	(ix-1),a
;		sra	(ix-1)
;		jr	c,sra_45
;		inc_error_cnt
;sra_45:		jr	z,sra_46
;		inc_error_cnt
;sra_46:		ld	iy,t_var3
;		ld	a,data_55
;		ld	(iy-2),a
;		sra	(iy-2)
;		jp	p,sra_47
;		inc_error_cnt
;sra_47:		jp	po,sra_48
;		inc_error_cnt
;sra_48:		jr	c,sra_49
;		inc_error_cnt
;sra_49:		jr	nz,sra_50
;		inc_error_cnt
;sra_50:		sra	(iy-2)
;		jr	nc,sra_51
;		inc_error_cnt
;sra_51:		sra	(iy-2)
;		jp	pe,sra_52
;		inc_error_cnt
;sra_52:		ld	a,(iy-2)
;		cp	a,#0a		;data_aa.and.#0f
;		jr	z,sra_53
;		inc_error_cnt
;sra_53:		ld	a,data_80
;		ld	(iy+2),a
;		sra	(iy+2)
;		jp	m,sra_54
;		inc_error_cnt
;sra_54:		ld	a,(iy+2)
;		cp	a,#c0
;		jr	z,sra_55
;		inc_error_cnt
;sra_55:		ld	a,1
;		ld	(iy-1),a
;		sra	(iy-1)
;		jr	c,sra_56
;		inc_error_cnt
;sra_56:		jr	z,srl_0
;		inc_error_cnt
;srl_0:		ld	a,data_55
;		srl	a
;		jr	c,srl_1
;		inc_error_cnt
;srl_1:		jp	po,srl_2
;		inc_error_cnt
;srl_2:		srl	a
;		jr	nc,srl_3
;		inc_error_cnt
;srl_3:		srl	a
;		jp	pe,srl_4
;		inc_error_cnt
;srl_4:		cp	a,#0a			;data_aa.and.#0f
;		jr	z,srl_5
;		inc_error_cnt
;srl_5:		ld	a,data_80
;		and	a
;		jp	m,srl_6
;		inc_error_cnt
;srl_6:		srl	a
;		jp	p,srl_7
;		inc_error_cnt
;srl_7:		ld	a,2
;		srl	a
;		jr	nz,srl_8
;		inc_error_cnt
;srl_8:		srl	a
;		jr	z,srl_9
;		inc_error_cnt
;srl_9:		jr	c,srl_10
;		inc_error_cnt
;srl_10:		ld	b,data_aa
;		srl	b
;		jp	p,srl_11
;		inc_error_cnt
;srl_11:		ld	a,b
;		cp	a,data_55
;		jr	z,srl_12
;		inc_error_cnt
;srl_12:		ld	c,data_7f
;		srl	c
;		jr	c,srl_13
;		inc_error_cnt
;srl_13:		ld	a,c
;		cp	a,#3f
;		jr	z,srl_14
;		inc_error_cnt
;srl_14:		ld	d,data_55
;		srl	d
;		jr	c,srl_15
;		inc_error_cnt
;srl_15:		ld	a,d
;		cp	a,#2a
;		jr	z,srl_16
;		inc_error_cnt
;srl_16:		ld	e,data_ff
;		srl	e
;		jr	c,srl_17
;		inc_error_cnt
;srl_17:		ld	a,e
;		cp	a,data_7f
;		jr	z,srl_18
;		inc_error_cnt
;srl_18:		ld	h,#12      ;bjp was >data_1234
;		srl	h
;		jr	nc,srl_19
;		inc_error_cnt
;srl_19:		ld	a,h
;		cp	a,9
;		jr	z,srl_20
;		inc_error_cnt
;srl_20:		ld	l,#34      ;bjp was >data_1234
;		srl	l
;		jr	nc,srl_21
;		inc_error_cnt
;srl_21:		ld	a,l
;		cp	a,#1a
;		jr	z,srl_22
;		inc_error_cnt
;srl_22:		ld	hl,t_var1
;		ld	(hl),data_55
;		srl	(hl)
;		jr	c,srl_23
;		inc_error_cnt
;srl_23:		jp	po,srl_24
;		inc_error_cnt
;srl_24:		srl	(hl)
;		jr	nc,srl_25
;		inc_error_cnt
;srl_25:		srl	(hl)
;		jp	pe,srl_26
;		inc_error_cnt
;srl_26:		ld	a,(hl)
;		cp	a,#0a			;data_aa.and.#0f
;		jr	z,srl_27
;		inc_error_cnt
;srl_27:		ld	(hl),data_80
;		and	(hl)
;		jp	z,srl_28
;		inc_error_cnt
;srl_28:		srl	(hl)
;		jp	p,srl_29
;		inc_error_cnt
;srl_29:		ld	a,(hl)
;		cp	a,#40
;		jr	z,srl_30
;		inc_error_cnt
;srl_30:		ld	(hl),2
;		srl	(hl)
;		jr	nz,srl_31
;		inc_error_cnt
;srl_31:		srl	(hl)
;		jr	z,srl_32
;		inc_error_cnt
;srl_32:		jr	c,srl_33
;		inc_error_cnt
;srl_33:		ld	ix,t_var3
;		ld	a,data_55
;		ld	(ix+2),a
;		srl	(ix+2)
;		jr	c,srl_34
;		inc_error_cnt
;srl_34:		jp	po,srl_35
;		inc_error_cnt
;srl_35:		srl	(ix+2)
;		jr	nc,srl_36
;		inc_error_cnt
;srl_36:		srl	(ix+2)
;		jp	pe,srl_37
;		inc_error_cnt
;srl_37:		ld	a,(ix+2)
;		cp	a,#0a			;data_aa.and.#0f
;		jr	z,srl_38
;		inc_error_cnt
;srl_38:		ld	a,data_80
;		ld	(ix-2),a
;		and	(ix-2)
;		jp	m,srl_39
;		inc_error_cnt
;srl_39:		srl	(ix-2)
;		jp	p,srl_40
;		inc_error_cnt
;srl_40:		ld	a,(ix-2)
;		cp	a,#40
;		jr	z,srl_41
;		inc_error_cnt
;srl_41:		ld	a,2
;		ld	(ix+1),a
;		srl	(ix+1)
;		jr	nz,srl_42
;		inc_error_cnt
;srl_42:		srl	(ix+1)
;		jr	z,srl_43
;		inc_error_cnt
;srl_43:		jr	c,srl_44
;		inc_error_cnt
;srl_44:		ld	iy,t_var3
;		ld	a,data_55
;		ld	(iy+2),a
;		srl	(iy+2)
;		jr	c,srl_45
;		inc_error_cnt
;srl_45:		jp	po,srl_46
;		inc_error_cnt
;srl_46:		srl	(iy+2)
;		jr	nc,srl_47
;		inc_error_cnt
;srl_47:		srl	(iy+2)
;		jp	pe,srl_48
;		inc_error_cnt
;srl_48:		ld	a,(iy+2)
;		cp	a,#0a			;data_aa.and.#0f
;		jr	z,srl_49
;		inc_error_cnt
;srl_49:		ld	a,data_80
;		ld	(iy-2),a
;		and	(iy-2)
;		jp	m,srl_50
;		inc_error_cnt
;srl_50:		srl	(iy-2)
;		jp	p,srl_51
;		inc_error_cnt
;srl_51:		ld	a,(iy-2)
;		cp	a,#40
;		jr	z,srl_52
;		inc_error_cnt
;srl_52:		ld	a,2
;		ld	(iy+1),a
;		srl	(iy+1)
;		jr	nz,srl_53
;		inc_error_cnt
;srl_53:		srl	(iy+1)
;		jr	z,srl_54
;		inc_error_cnt
;srl_54:		jr	c,rld_0
;		inc_error_cnt
;rld_0:		ld	hl,t_var5
;		ld	a,data_55
;		ld	(hl),data_aa
;		rld
;		jp	p,rld_1
;		inc_error_cnt
;rld_1:		cp	a,data_55+5
;		jr	z,rld_2
;		inc_error_cnt
;rld_2:		ld	a,(hl)
;		cp	a,data_aa-5
;		jr	z,rld_3
;		inc_error_cnt
;rld_3:		ld	(hl),data_7f
;		ld	a,data_80
;		rld
;		jp	m,rld_4
;		inc_error_cnt
;rld_4:		jp	pe,rld_5
;		inc_error_cnt
;rld_5:		rld
;		jp	po,rld_6
;		inc_error_cnt
;rld_6:		cp	a,data_80+15
;		jr	z,rld_7
;		inc_error_cnt
;rld_7:		ld	a,(hl)
;		cp	a,7
;		jr	z,rld_8
;		inc_error_cnt
;rld_8:		ld	a,#05			;data_55.and.#0f
;		ld	(hl),#0a			;data_aa.and.#0f
;		rld
;		jr	z,rld_9
;		inc_error_cnt
;rld_9:		ld	a,(hl)
;		cp	a,#a5
;		jr	z,rrd_0
;		inc_error_cnt
;rrd_0:		ld	hl,t_var3
;		ld	a,data_55
;		ld	(hl),data_aa
;		rrd
;		jp	p,rrd_1
;		inc_error_cnt
;rrd_1:		jp	pe,rrd_2
;		inc_error_cnt
;rrd_2:		jr	nz,rrd_3
;		inc_error_cnt
;rrd_3:		cp	a,data_55+5
;		jr	z,rrd_4
;		inc_error_cnt
;rrd_4:		ld	a,(hl)
;		cp	a,data_55+5
;		jr	z,rrd_5
;		inc_error_cnt
;rrd_5:		ld	(hl),data_7f
;		ld	a,data_80
;		rrd
;		jp	m,rrd_6
;		inc_error_cnt
;rrd_6:		jp	po,rrd_7
;		inc_error_cnt
;rrd_7:		cp	a,data_80+15
;		jr	z,rrd_8
;		inc_error_cnt
;rrd_8:		ld	a,(hl)
;		cp	a,7
;		jr	z,rrd_9
;		inc_error_cnt
;rrd_9:		ld	a,8
;		ld	(hl),0
;		rrd
;		jr	z,rrd_10
;		inc_error_cnt
;rrd_10:		ld	a,(hl)
;		cp	a,data_80
;		jr	z,bit_0
;		inc_error_cnt
;bit_0:		ld	a,data_ff
;		bit	0,a
;		jr	nz,bit_1
;		inc_error_cnt
;bit_1:		bit	1,a
;		jr	nz,bit_2
;		inc_error_cnt
;bit_2:		bit	2,a
;		jr	nz,bit_3
;		inc_error_cnt
;bit_3:		bit	3,a
;		jr	nz,bit_4
;		inc_error_cnt
;bit_4:		bit	4,a
;		jr	nz,bit_5
;		inc_error_cnt
;bit_5:		bit	5,a
;		jr	nz,bit_6
;		inc_error_cnt
;bit_6:		bit	6,a
;		jr	nz,bit_7
;		inc_error_cnt
;bit_7:		bit	7,a
;		jr	nz,bit_8
;		inc_error_cnt
;bit_8:		ld	a,0
;		bit	0,a
;		jr	z,bit_9
;		inc_error_cnt
;bit_9:		bit	1,a
;		jr	z,bit_10
;		inc_error_cnt
;bit_10:		bit	2,a
;		jr	z,bit_11
;		inc_error_cnt
;bit_11:		bit	3,a
;		jr	z,bit_12
;		inc_error_cnt
;bit_12:		bit	4,a
;		jr	z,bit_13
;		inc_error_cnt
;bit_13:		bit	5,a
;		jr	z,bit_14
;		inc_error_cnt
;bit_14:		bit	6,a
;		jr	z,bit_15
;		inc_error_cnt
;bit_15:		bit	7,a
;		jr	z,bit_16
;		inc_error_cnt
;bit_16:		ld	b,data_80
;		bit	2,b
;		jr	z,bit_17
;		inc_error_cnt
;bit_17:		bit	7,b
;		jr	nz,bit_18
;		inc_error_cnt
;bit_18:		ld	c,data_55
;		bit	7,c
;		jr	z,bit_19
;		inc_error_cnt
;bit_19:		bit	0,c
;		jr	nz,bit_20
;		inc_error_cnt
;bit_20:		ld	d,data_aa
;		bit	7,d
;		jr	nz,bit_21
;		inc_error_cnt
;bit_21:		bit	4,d
;		jr	z,bit_22
;		inc_error_cnt
;bit_22:		ld	e,data_7f
;		bit	7,e
;		jr	z,bit_23
;		inc_error_cnt
;bit_23:		bit	3,e
;		jr	nz,bit_24
;		inc_error_cnt
;bit_24:		ld	h,#12      ;bjp was >data_1234
;		bit	4,h
;		jr	nz,bit_25
;		inc_error_cnt
;bit_25:		bit	2,h
;		jr	z,bit_26
;		inc_error_cnt
;bit_26:		ld	l,#34      ;bjp was >data_1234
;		bit	3,l
;		jr	z,bit_27
;		inc_error_cnt
;bit_27:		bit	2,l
;		jr	nz,bit_28
;		inc_error_cnt
;bit_28:		ld	hl,t_var4
;		ld	(hl),data_55
;		bit	0,(hl)
;		jr	nz,bit_29
;		inc_error_cnt
;bit_29:		bit	1,(hl)
;		jr	z,bit_30
;		inc_error_cnt
;bit_30:		bit	2,(hl)
;		jr	nz,bit_31
;		inc_error_cnt
;bit_31:		bit	3,(hl)
;		jr	z,bit_32
;		inc_error_cnt
;bit_32:		bit	4,(hl)
;		jr	nz,bit_33
;		inc_error_cnt
;bit_33:		bit	5,(hl)
;		jr	z,bit_34
;		inc_error_cnt
;bit_34:		bit	6,(hl)
;		jr	nz,bit_35
;		inc_error_cnt
;bit_35:		bit	7,(hl)
;		jr	z,bit_36
;		inc_error_cnt
;bit_36:		ld	ix,t_var3
;		ld	a,data_aa
;		ld	(ix-2),a
;		bit	0,(ix-2)
;		jr	z,bit_37
;		inc_error_cnt
;bit_37:		bit	1,(ix-2)
;		jr	nz,bit_38
;		inc_error_cnt
;bit_38:		bit	2,(ix-2)
;		jr	z,bit_39
;		inc_error_cnt
;bit_39:		bit	3,(ix-2)
;		jr	nz,bit_40
;		inc_error_cnt
;bit_40:		bit	4,(ix-2)
;		jr	z,bit_41
;		inc_error_cnt
;bit_41:		bit	5,(ix-2)
;		jr	nz,bit_42
;		inc_error_cnt
;bit_42:		bit	6,(ix-2)
;		jr	z,bit_43
;		inc_error_cnt
;bit_43:		bit	7,(ix-2)
;		jr	nz,bit_44
;		inc_error_cnt
;bit_44:		ld	iy,t_var3
;		ld	a,data_55
;		ld	(iy+2),a
;		bit	0,(iy+2)
;		jr	nz,bit_45
;		inc_error_cnt
;bit_45:		bit	1,(iy+2)
;		jr	z,bit_46
;		inc_error_cnt
;bit_46:		bit	2,(iy+2)
;		jr	nz,bit_47
;		inc_error_cnt
;bit_47:		bit	3,(iy+2)
;		jr	z,bit_48
;		inc_error_cnt
;bit_48:		bit	4,(iy+2)
;		jr	nz,bit_49
;		inc_error_cnt
;bit_49:		bit	5,(iy+2)
;		jr	z,bit_50
;		inc_error_cnt
;bit_50:		bit	6,(iy+2)
;		jr	nz,bit_51
;		inc_error_cnt
;bit_51:		bit	7,(iy+2)
;		jr	z,set_0
;		inc_error_cnt
;set_0:		ld	a,0
;		set	0,a
;		set	2,a
;		set	4,a
;		set	6,a
;		cp	a,data_55
;		jr	z,set_1
;		inc_error_cnt
;set_1:		set	1,a
;		set	3,a
;		set	5,a
;		set	7,a
;		cp	a,data_ff
;		jr	z,set_2
;		inc_error_cnt
;set_2:		ld	b,0
;		set	1,b
;		set	3,b
;		ld	a,b
;		cp	a,#0a			;data_aa.and.#0f
;		jr	z,set_3
;		inc_error_cnt
;set_3:		ld	c,0
;		set	1,c
;		set	4,c
;		ld	a,c
;		cp	a,#12      ;bjp was >data_1234
;		jr	z,set_4
;		inc_error_cnt
;set_4:		ld	d,0
;		set	2,d
;		set	4,d
;		set	5,d
;		ld	a,d
;		cp	a,#34      ;bjp was >data_1234
;		jr	z,set_5
;		inc_error_cnt
;set_5:		ld	e,0
;		set	7,e
;		ld	a,e
;		cp	a,data_80
;		jr	z,set_6
;		inc_error_cnt
;set_6:		ld	h,0
;		set	0,h
;		set	2,h
;		set	4,h
;		set	6,h
;		ld	a,h
;		cp	a,data_55
;		jr	z,set_7
;		inc_error_cnt
;set_7:		ld	l,0
;		set	1,l
;		set	3,l
;		set	5,l
;		set	7,l
;		ld	a,l
;		cp	a,data_aa
;		jr	z,set_8
;		inc_error_cnt
;set_8:		ld	hl,t_var5
;		ld	(hl),0
;		set	0,(hl)
;		set	2,(hl)
;		set	4,(hl)
;		set	6,(hl)
;		ld	a,(hl)
;		cp	a,data_55
;		jr	z,set_9
;		inc_error_cnt
;set_9:		ld	(hl),0
;		set	1,(hl)
;		set	3,(hl)
;		set	5,(hl)
;		set	7,(hl)
;		ld	a,(hl)
;		cp	a,data_aa
;		jr	z,set_10
;		inc_error_cnt
;set_10:		ld	ix,t_var3
;		ld	a,0
;		ld	(ix-2),a
;		ld	(ix+2),a
;		set	0,(ix-2)
;		set	2,(ix-2)
;		set	4,(ix-2)
;		set	6,(ix-2)
;		ld	a,(ix-2)
;		cp	a,data_55
;		jr	z,set_11
;		inc_error_cnt
;set_11:		set	1,(ix+2)
;		set	3,(ix+2)
;		set	5,(ix+2)
;		set	7,(ix+2)
;		ld	a,(ix+2)
;		cp	a,data_aa
;		jr	z,set_12
;		inc_error_cnt
;set_12:		ld	iy,t_var3
;		ld	a,0
;		ld	(iy-1),a
;		ld	(iy+1),a
;		set	0,(iy-1)
;		set	2,(iy-1)
;		set	4,(iy-1)
;		set	6,(iy-1)
;		ld	a,(iy-1)
;		cp	a,data_55
;		jr	z,set_13
;		inc_error_cnt
;set_13:		set	1,(iy+1)
;		set	3,(iy+1)
;		set	5,(iy+1)
;		set	7,(iy+1)
;		ld	a,(iy+1)
;		cp	a,data_aa
;		jr	z,res_0
;		inc_error_cnt
;res_0:		ld	a,data_ff
;		res	7,a
;		cp	a,data_7f
;		jr	z,res_1
;		inc_error_cnt
;res_1:		res	5,a
;		res	3,a
;		res	1,a
;		cp	a,data_55
;		jr	z,res_2
;		inc_error_cnt
;res_2:		ld	a,data_ff
;		res	0,a
;		res	2,a
;		res	4,a
;		res	6,a
;		cp	a,data_aa
;		jr	z,res_3
;		inc_error_cnt
;res_3:		ld	b,data_ff
;		res	7,b
;		ld	a,b
;		cp	a,data_7f
;		jr	z,res_4
;		inc_error_cnt
;res_4:		ld	c,data_ff
;		res	0,c
;		res	1,c
;		res	2,c
;		res	3,c
;		res	4,c
;		res	5,c
;		res	6,c
;		ld	a,c
;		cp	a,data_80
;		jr	z,res_5
;		inc_error_cnt
;res_5:		ld	d,data_ff
;		res	0,d
;		res	2,d
;		res	4,d
;		res	6,d
;		ld	a,d
;		cp	a,data_aa
;		jr	z,res_6
;		inc_error_cnt
;res_6:		ld	e,data_ff
;		res	1,e
;		res	3,e
;		res	5,e
;		res	7,e
;		ld	a,e
;		cp	a,data_55
;		jr	z,res_7
;		inc_error_cnt
;res_7:		ld	h,data_ff
;		res	0,h
;		res	2,h
;		res	3,h
;		res	5,h
;		res	6,h
;		res	7,h
;		ld	a,h
;		cp	a,#12      ;bjp was >data_1234
;		jr	z,res_8
;		inc_error_cnt
;res_8:		ld	l,data_ff
;		res	0,l
;		res	1,l
;		res	3,l
;		res	6,l
;		res	7,l
;		ld	a,l
;		cp	a,#34      ;bjp was >data_1234
;		jr	z,res_9
;		inc_error_cnt
;res_9:		ld	hl,t_var3
;		ld	(hl),data_ff
;		res	0,(hl)
;		res	2,(hl)
;		res	4,(hl)
;		res	6,(hl)
;		ld	a,(hl)
;		cp	a,data_aa
;		jr	z,res_10
;		inc_error_cnt
;res_10:		res	1,(hl)
;		res	3,(hl)
;		res	5,(hl)
;		res	7,(hl)
;		ld	a,(hl)
;		cp	a,0
;		jr	z,res_11
;		inc_error_cnt
;res_11:		ld	ix,t_var3
;		ld	a,data_ff
;		ld	(ix-2),a
;		ld	(ix+2),a
;		res	1,(ix-2)
;		res	3,(ix-2)
;		res	5,(ix-2)
;		res	7,(ix-2)
;		ld	a,(ix-2)
;		cp	a,data_55
;		jr	z,res_12
;		inc_error_cnt
;res_12:		res	0,(ix+2)
;		res	2,(ix+2)
;		res	4,(ix+2)
;		res	6,(ix+2)
;		ld	a,(ix+2)
;		cp	a,data_aa
;		jr	z,res_13
;		inc_error_cnt
;res_13:		ld	iy,t_var3
;		ld	a,data_ff
;		ld	(iy-1),a
;		ld	(iy+1),a
;		res	1,(iy-1)
;		res	3,(iy-1)
;		res	5,(iy-1)
;		res	7,(iy-1)
;		ld	a,(iy-1)
;		cp	a,data_55
;		jr	z,res_14
;		inc_error_cnt
;res_14:		res	0,(iy+1)
;		res	2,(iy+1)
;		res	4,(iy+1)
;		res	6,(iy+1)
;		ld	a,(iy+1)
;		cp	a,data_aa
;		jr	z,jp_0
;		inc_error_cnt
;jp_0:		jp	jp_1
;		nop
;		nop
;		inc_error_cnt
;jp_1:		ld	a,0
;		and	a
;		jp	z,jp_2
;		inc_error_cnt
;jp_2:		jp	nc,jp_3
;		inc_error_cnt
;jp_3:		ld	b,1
;		sub	a,b
;		jp	nz,jp_4
;		inc_error_cnt
;jp_4:		jp	c,jp_5
;		inc_error_cnt
;jp_5:		jp	jp_7
;		inc_error_cnt
;jp_6:		jp	jr_0
;		inc_error_cnt
;jp_7:		jp	jp_6
;		inc_error_cnt
;jr_0:		jr	jr_2
;		inc_error_cnt
;jr_1:		jr	jr_3
;		inc_error_cnt
;jr_2:		jr	jr_1
;		inc_error_cnt
;jr_3:		ld	hl,jp_9
;		jp	(hl)
;		inc_error_cnt
;jp_8:		ld	ix,jp_10
;		jp	(ix)
;		inc_error_cnt
;jp_9:		jp	jp_8
;		inc_error_cnt
;jp_10:		ld	iy,djnz_0
;		jp	(iy)
;		inc_error_cnt
;djnz_0:		ld	b,5
;		ld	a,0
;djnz_1:		inc	a
;		djnz	djnz_1
;		cp	a,5
;		jr	z,call_0
;		inc_error_cnt
;call_0:		ld	a,0
;		call	sub1
;		cp	a,data_7f
;		jr	z,call_1
;		inc_error_cnt
;call_1:		ld	a,0
;		and	a
;		call	z,sub2
;		cp	a,data_55
;		jr	z,call_2
;		inc_error_cnt
;call_2:		ld	a,data_aa
;		and	a
;		call	nz,sub3
;		cp	a,data_aa+1
;		jr	z,call_3
;		inc_error_cnt
;call_3:		ld	a,0
;		cp	a,0
;		call	nc,sub4
;		cp	a,data_ff
;		jr	z,call_4
;		inc_error_cnt
;call_4:		ld	a,0
;		sub	a,1
;		call	c,sub5
;		cp	a,data_ff-1
;		jr	z,call_5
;		inc_error_cnt
;call_5:		ld	a,data_7f
;		sla	a
;		call	po,sub6
;		cp	a,data_7f
;		jr	z,call_6
;		inc_error_cnt
;call_6:		ld	a,data_aa
;		srl	a
;		call	pe,sub7
;		cp	a,data_aa
;		jr	z,call_7
;		inc_error_cnt
;call_7:		ld	a,data_80
;		sra	a
;		call	m,sub8
;		cp	a,data_80
;		jr	z,call_8
;		inc_error_cnt
;call_8:		ld	a,data_7f
;		sra	a
;		call	p,sub9
;		cp	a,data_7f
;		jr	z,rst_0
;		inc_error_cnt
;rst_0:		rst	#00
;		cp	a,1
;		jr	z,rst_1
;		inc_error_cnt
;rst_1:		rst	#08
;		cp	a,2
;		jr	z,rst_2
;		inc_error_cnt
;rst_2:		rst	#10
;		cp	a,3
;		jr	z,rst_3
;		inc_error_cnt
;rst_3:		rst	#18
;		cp	a,4
;		jr	z,rst_4
;		inc_error_cnt
;rst_4:		rst	#20
;		cp	a,5
;		jr	z,rst_5
;		inc_error_cnt
;rst_5:		rst	#28
;		cp	a,6
;		jr	z,rst_6
;		inc_error_cnt
;rst_6:		rst	#30
;		cp	a,7
;		jr	z,rst_7
;		inc_error_cnt
;rst_7:		rst	#38
;		cp	a,8
;		jr	z,in_0
;		inc_error_cnt
;in_0:		in	a,(in_port)
;		cp	a,data_7f
;		jr	z,in_1
;		inc_error_cnt
;in_1:		ld	c,in_port
;		in	a,(c)
;		jr	nz,in_2
;		inc_error_cnt
;in_2:		jp	p,in_3
;		inc_error_cnt
;in_3:		jp	pe,in_4
;		inc_error_cnt
;in_4:		cp	a,data_55
;		jr	z,in_5
;		inc_error_cnt
;in_5:		in	a,(c)
;		jp	m,in_6
;		inc_error_cnt
;in_6:		jp	po,in_7
;		inc_error_cnt
;in_7:		jr	nz,in_8
;		inc_error_cnt
;in_8:		cp	a,data_80
;		jr	z,in_9
;		inc_error_cnt
;in_9:		in	a,(c)
;		jr	z,in_10
;		inc_error_cnt
;in_10:		in	b,(c)
;		jp	m,in_11
;		inc_error_cnt
;in_11:		ld	a,b
;		cp	a,data_ff
;		jr	z,in_12
;		inc_error_cnt
;in_12:		in	d,(c)
;		jp	pe,in_13
;		inc_error_cnt
;in_13:		ld	a,d
;		cp	a,data_aa
;		jr	z,in_14
;		inc_error_cnt
;in_14:		in	e,(c)
;		jp	p,in_15
;		inc_error_cnt
;in_15:		ld	a,e
;		cp	a,data_7f
;		jr	z,in_16
;		inc_error_cnt
;in_16:		in	h,(c)
;		jp	pe,in_17
;		inc_error_cnt
;in_17:		ld	a,h
;		cp	a,data_55
;		jr	z,in_18
;		inc_error_cnt
;in_18:		in	l,(c)
;		jp	m,in_19
;		inc_error_cnt
;in_19:		ld	a,l
;		cp	a,data_80
;		jr	z,in_20
;		inc_error_cnt
;in_20:		in	c,(c)
;		jr	z,in_21
;		inc_error_cnt
;in_21:		ld	c,in_port
;		ld	b,2
;		ld	hl,t_var1
;		ini
;		jr	nz,in_22
;		inc_error_cnt
;in_22:		ini
;		jr	z,in_23
;		inc_error_cnt
;in_23:		ld	hl,t_var1
;		ld	a,(hl)
;		cp	a,data_ff
;		jr	z,in_24
;		inc_error_cnt
;in_24:		inc	hl
;		ld	a,(hl)
;		cp	a,data_aa
;		jr	z,in_25
;		inc_error_cnt
;in_25:		ld	b,5
;		ld	c,in_port
;		ld	hl,t_var1
;		inir
;		jr	z,in_26
;		inc_error_cnt
;in_26:		ld	hl,t_var1
;		ld	a,(hl)
;		cp	a,data_7f
;		jr	z,in_27
;		inc_error_cnt
;in_27:		inc	hl
;		ld	a,(hl)
;		cp	a,data_55
;		jr	z,in_28
;		inc_error_cnt
;in_28:		inc	hl
;		ld	a,(hl)
;		cp	a,data_80
;		jr	z,in_29
;		inc_error_cnt
;in_29:		inc	hl
;		ld	a,(hl)
;		cp	a,0
;		jr	z,in_30
;		inc_error_cnt
;in_30:		inc	hl
;		ld	a,(hl)
;		cp	a,data_ff
;		jr	z,in_31
;		inc_error_cnt
;in_31:		ld	b,2
;		ld	c,in_port
;		ld	hl,t_var5
;		ind
;		jr	nz,in_32
;		inc_error_cnt
;in_32:		ind
;		jr	z,in_33
;		inc_error_cnt
;in_33:		ld	hl,t_var5
;		ld	a,(hl)
;		cp	a,data_aa
;		jr	z,in_34
;		inc_error_cnt
;in_34:		dec	hl
;		ld	a,(hl)
;		cp	a,data_7f
;		jr	z,in_35
;		inc_error_cnt
;in_35:		ld	b,5
;		ld	c,in_port
;		ld	hl,t_var5
;		indr
;		jr	z,in_36
;		inc_error_cnt
;in_36:		ld	hl,t_var5
;		ld	a,(hl)
;		cp	a,data_55
;		jr	z,in_37
;		inc_error_cnt
;in_37:		dec	hl
;		ld	a,(hl)
;		cp	a,data_80
;		jr	z,in_38
;		inc_error_cnt
;in_38:		dec	hl
;		ld	a,(hl)
;		cp	a,0
;		jr	z,in_39
;		inc_error_cnt
;in_39:		dec	hl
;		ld	a,(hl)
;		cp	a,data_ff
;		jr	z,in_40
;		inc_error_cnt
;in_40:		dec	hl
;		ld	a,(hl)
;		cp	a,data_aa
;		jr	z,ldi_0
;		inc_error_cnt
;ldi_0:		ld	hl,t_var1
;		ld	a,#12      ;bjp was >data_1234
;		ld	(hl),a
;		inc	hl
;		ld	a,#34      ;bjp was >data_1234
;		ld	(hl),a
;		dec	hl
;		ld	de,t_var3
;		ld	bc,2
;		ldi
;		jp	pe,ldi_1
;		inc_error_cnt
;ldi_1:		ldi
;		jp	po,ldi_2
;		inc_error_cnt
;ldi_2:		ld	hl,t_var3
;		ld	a,(hl)
;		cp	a,#12      ;bjp was >data_1234
;		jr	z,ldi_3
;		inc_error_cnt
;ldi_3:		inc	hl
;		ld	a,(hl)
;		cp	a,#34      ;bjp was >data_1234
;		jr	z,ldir_0
;		inc_error_cnt
;ldir_0:		ld	hl,var1
;		ld	de,t_var1
;		ld	bc,5
;		ldir
;		jp	po,ldir_1
;		inc_error_cnt
;ldir_1:		ld	hl,t_var1
;		ld	a,(hl)
;		cp	a,data_ff
;		jr	z,ldir_2
;		inc_error_cnt
;ldir_2:		inc	hl
;		ld	a,(hl)
;		cp	a,data_55
;		jr	z,ldir_3
;		inc_error_cnt
;ldir_3:		inc	hl
;		ld	a,(hl)
;		cp	a,data_80
;		jr	z,ldir_4
;		inc_error_cnt
;ldir_4:		inc	hl
;		ld	a,(hl)
;		cp	a,data_aa
;		jr	z,ldir_5
;		inc_error_cnt
;ldir_5:		inc	hl
;		ld	a,(hl)
;		cp	a,data_7f
;		jr	z,ldd_0
;		inc_error_cnt
;ldd_0:		ld	hl,t_var5
;		ld	a,#12      ;bjp was >data_1234
;		ld	(hl),a
;		dec	hl
;		ld	a,#34      ;bjp was >data_1234
;		ld	(hl),a
;		inc	hl
;		ld	bc,2
;		ld	de,t_var3
;		ldd
;		jp	pe,ldd_1
;		inc_error_cnt
;ldd_1:		ldd
;		jp	po,ldd_2
;		inc_error_cnt
;ldd_2:		ld	hl,t_var3
;		ld	a,(hl)
;		cp	a,#12      ;bjp was >data_1234
;		jr	z,ldd_3
;		inc_error_cnt
;ldd_3:		dec	hl
;		ld	a,(hl)
;		cp	a,#34      ;bjp was >data_1234
;		jr	z,lddr_0
;		inc_error_cnt
;lddr_0:		ld	bc,5
;		ld	hl,var5
;		ld	de,t_var5
;		lddr
;		jp	po,lddr_1
;		inc_error_cnt
;lddr_1:		ld	hl,t_var1
;		ld	a,(hl)
;		cp	a,data_ff
;		jr	z,lddr_2
;		inc_error_cnt
;lddr_2:		inc	hl
;		ld	a,(hl)
;		cp	a,data_55
;		jr	z,lddr_3
;		inc_error_cnt
;lddr_3:		inc	hl
;		ld	a,(hl)
;		cp	a,data_80
;		jr	z,lddr_4
;		inc_error_cnt
;lddr_4:		inc	hl
;		ld	a,(hl)
;		cp	a,data_aa
;		jr	z,lddr_5
;		inc_error_cnt
;lddr_5:		inc	hl
;		ld	a,(hl)
;		cp	a,data_7f
;		jr	z,cpi_0
;		inc_error_cnt
;cpi_0:		ld	hl,t_var1
;		ld	bc,5
;		ld	a,data_7f
;		cpi
;		jp	pe,cpi_1
;		inc_error_cnt
;cpi_1:		jp	m,cpi_2
;		inc_error_cnt
;cpi_2:		jr	nz,cpi_3
;		inc_error_cnt
;cpi_3:		cpi
;		jp	pe,cpi_4
;		inc_error_cnt
;cpi_4:		jp	p,cpi_5
;		inc_error_cnt
;cpi_5:		jr	nz,cpi_6
;		inc_error_cnt
;cpi_6:		cpi
;		jp	pe,cpi_7
;		inc_error_cnt
;cpi_7:		jp	m,cpi_8
;		inc_error_cnt
;cpi_8:		jr	nz,cpi_9
;		inc_error_cnt
;cpi_9:		cpi
;		jp	pe,cpi_10
;		inc_error_cnt
;cpi_10:		jp	m,cpi_11
;		inc_error_cnt
;cpi_11:		jr	nz,cpi_12
;		inc_error_cnt
;cpi_12:		cpi
;		jp	po,cpi_13
;		inc_error_cnt
;cpi_13:		jp	p,cpi_14
;		inc_error_cnt
;cpi_14:		jr	z,cpir_0
;		inc_error_cnt
;cpir_0:		ld	a,data_aa
;		ld	hl,var1
;		ld	bc,5
;		cpir
;		jr	z,cpir_1
;		inc_error_cnt
;cpir_1:		jp	pe,cpir_2
;		inc_error_cnt
;cpir_2:		ld	a,b
;		cp	a,0
;		jr	z,cpir_3
;		inc_error_cnt
;cpir_3:		ld	a,c
;		cp	a,1
;		jr	z,cpir_4
;		inc_error_cnt
;cpir_4:		ld	a,data_7f
;		ld	hl,var1
;		ld	bc,5
;		cpir
;		jp	po,cpir_5
;		inc_error_cnt
;cpir_5:		jr	z,cpir_6
;		inc_error_cnt
;cpir_6:		ld	a,#34      ;bjp was >data_1234
;		ld	hl,var1
;		ld	bc,5
;		cpir
;		jp	po,cpir_7
;		inc_error_cnt
;cpir_7:		jr	nz,cpir_8
;		inc_error_cnt
;cpir_8:		jp	m,cpir_9
;		inc_error_cnt
;cpir_9:		ld	a,data_aa
;		ld	hl,var1
;		ld	bc,3
;		cpir
;		jp	po,cpir_10
;		inc_error_cnt
;cpir_10:	jp	p,cpir_11
;		inc_error_cnt
;cpir_11:	jr	nz,cpd_0
;		inc_error_cnt
;cpd_0:		ld	a,data_ff
;		ld	hl,var5
;		ld	bc,5
;		cpd
;		jp	m,cpd_1
;		inc_error_cnt
;cpd_1:		jp	pe,cpd_2
;		inc_error_cnt
;cpd_2:		jr	nz,cpd_3
;		inc_error_cnt
;cpd_3:		cpd
;		jp	p,cpd_4
;		inc_error_cnt
;cpd_4:		jp	pe,cpd_5
;		inc_error_cnt
;cpd_5:		jr	nz,cpd_6
;		inc_error_cnt
;cpd_6:		cpd
;		jp	p,cpd_7
;		inc_error_cnt
;cpd_7:		jp	pe,cpd_8
;		inc_error_cnt
;cpd_8:		jr	nz,cpd_9
;		inc_error_cnt
;cpd_9:		cpd
;		jp	m,cpd_10
;		inc_error_cnt
;cpd_10:		jp	pe,cpd_11
;		inc_error_cnt
;cpd_11:		jr	nz,cpd_12
;		inc_error_cnt
;cpd_12:		cpd
;		jp	p,cpd_13
;		inc_error_cnt
;cpd_13:		jp	po,cpd_14
;		inc_error_cnt
;cpd_14:		jr	z,cpdr_0
;		inc_error_cnt
;cpdr_0:		ld	a,data_80
;		ld	hl,var5
;		ld	bc,5
;		cpdr
;		jp	pe,cpdr_1
;		inc_error_cnt
;cpdr_1:		jp	p,cpdr_2
;		inc_error_cnt
;cpdr_2:		jr	z,cpdr_3
;		inc_error_cnt
;cpdr_3:		ld	a,b
;		cp	a,0
;		jr	z,cpdr_4
;		inc_error_cnt
;cpdr_4:		ld	a,c
;		cp	a,2
;		jr	z,cpdr_5
;		inc_error_cnt
;cpdr_5:		ld	a,#34      ;bjp was >data_1234
;		ld	hl,var5
;		ld	bc,5
;		cpdr
;		jp	po,cpdr_6
;		inc_error_cnt
;cpdr_6:		jr	nz,cpdr_7
;		inc_error_cnt
;cpdr_7:		jp	p,cpdr_8
;		inc_error_cnt
;cpdr_8:		ld	a,#34      ;bjp was >data_1234
;		ld	hl,var5
;		ld	bc,3
;		cpdr
;		jp	po,cpdr_9
;		inc_error_cnt
;cpdr_9:		jr	nz,cpdr_10
;		inc_error_cnt
;cpdr_10:	jp	m,out_0
;		inc_error_cnt
;;
;;the file portfe.xxx must be examined to see if the proper output is generated
;;
;out_0:		ld	a,#30
;		out	(out_port),a
;		ld	c,out_port
;		ld	a,#31
;		out	(c),a
;		ld	b,#32
;		out	(c),b
;		ld	d,#33
;		out	(c),d
;		ld	e,#34
;		out	(c),e
;		ld	h,#35
;		out	(c),h
;		ld	l,#36
;		out	(c),l
;		out	(c),c			;output value divider
;outi_0:		ld	a,#31			;set up output values
;		ld	b,5
;		ld	hl,t_var1
;outi_1:		ld	(hl),a
;		inc	a
;		inc	hl
;		djnz	outi_1
;outi_2:		ld	c,out_port
;		ld	b,5
;		ld	hl,t_var1
;outi_3:		outi
;		jr	nz,outi_3
;otir_0:		out	(c),c			;output value divider
;		ld	hl,t_var1
;		ld	b,5
;		otir
;		jr	z,outd_0
;		inc_error_cnt
;outd_0:		out	(c),c
;		ld	hl,t_var5
;		ld	b,5
;outd_1:		outd
;		jr	nz,outd_1
;otdr_0:		out	(c),c
;		ld	b,5
;		ld	hl,t_var5
;		otdr
;		jr	z,otdr_1
;		inc_error_cnt
;otdr_1:		out	(c),c
;		ld	a,#0d
;		out	(c),a
;		ld	a,#0a
;		out	(c),a
@

