;# data.s	
;# checks all the data transfer instructions
foo:
	MOVE PSF, #01h
	MOVE PSF, AP
	MOVE PSF, APC
	MOVE PSF, IC
	MOVE PSF, IMR
	MOVE PSF, SC
	MOVE PSF, IIR
	MOVE PSF, CKCN
	MOVE PSF, WDCN
	MOVE PSF, A[0]		;Just Check two boundary conditions
	MOVE PSF, A[15]   
	MOVE PSF, ACC
	MOVE PSF, A[AP]
	MOVE PSF, IP
	MOVE PSF, @SP--
	MOVE PSF, SP
	MOVE PSF, IV
	MOVE PSF, LC[0]
	MOVE PSF, LC[1]
	MOVE PSF, @BP[OFFS++]
	MOVE PSF, @BP[OFFS--]
	MOVE PSF, OFFS
	MOVE PSF, DPC
	MOVE PSF, GR
	MOVE PSF, GRL
	MOVE PSF, BP
	MOVE PSF, GRS
	MOVE PSF, GRH
	MOVE PSF, GRXL
	MOVE PSF, FP
	MOVE PSF, @DP[0]	
	MOVE PSF, @DP[1]	
	MOVE PSF, @DP[0]++		
	MOVE PSF, @DP[1]++
	MOVE PSF, @DP[0]--
	MOVE PSF, @DP[1]--
	MOVE IC, #01h
	MOVE IC, AP
	MOVE IC, APC
	MOVE IC, PSF
	MOVE IC, IMR
	MOVE IC, SC
	MOVE IC, IIR
	MOVE IC, CKCN
	MOVE IC, WDCN
	MOVE IC, A[0]		;Just Check two boundary conditions
	MOVE IC, A[15]   
	MOVE IC, ACC
	MOVE IC, A[AP]
	MOVE IC, IP
	MOVE IC, @SP--
	MOVE IC, SP
	MOVE IC, IV
	MOVE IC, LC[0]
	MOVE IC, LC[1]
	MOVE IC, @BP[OFFS++]
	MOVE IC, @BP[OFFS--]
	MOVE IC, OFFS
	MOVE IC, DPC
	MOVE IC, GR
	MOVE IC, GRL
	MOVE IC, BP
	MOVE IC, GRS
	MOVE IC, GRH
	MOVE IC, GRXL
	MOVE IC, FP
	MOVE IC, @DP[0]	
	MOVE IC, @DP[1]	
	MOVE IC, @DP[0]++		
	MOVE IC, @DP[1]++
	MOVE IC, @DP[0]--
	MOVE IC, @DP[1]--
	MOVE IMR, #01h
	MOVE IMR, AP
	MOVE IMR, APC
	MOVE IMR, PSF
	MOVE IMR, IC
	MOVE IMR, SC
	MOVE IMR, IIR
	MOVE IMR, CKCN
	MOVE IMR, WDCN
	MOVE IMR, A[0]		;Just Check two boundary conditions
	MOVE IMR, A[15]   
	MOVE IMR, ACC
	MOVE IMR, A[AP]
	MOVE IMR, IP
	MOVE IMR, @SP--
	MOVE IMR, SP
	MOVE IMR, IV
	MOVE IMR, LC[0]
	MOVE IMR, LC[1]
	MOVE IMR, @BP[OFFS++]
	MOVE IMR, @BP[OFFS--]
	MOVE IMR, OFFS
	MOVE IMR, DPC
	MOVE IMR, GR
	MOVE IMR, GRL
	MOVE IMR, BP
	MOVE IMR, GRS
	MOVE IMR, GRH
	MOVE IMR, GRXL
	MOVE IMR, FP
	MOVE IMR, @DP[0]	
	MOVE IMR, @DP[1]	
	MOVE IMR, @DP[0]++		
	MOVE IMR, @DP[1]++
	MOVE IMR, @DP[0]--
	MOVE IMR, @DP[1]--
	MOVE A[0], #01h
	MOVE A[0], AP
	MOVE A[0], APC
	MOVE A[0], PSF
	MOVE A[0], IC
	MOVE A[0], IMR
	MOVE A[0], SC
	MOVE A[0], IIR
	MOVE A[0], CKCN
	MOVE A[0], WDCN
	MOVE A[0], ACC
	MOVE A[0], A[AP]
	MOVE A[0], IP
	MOVE A[0], @SP--
	MOVE A[0], SP
	MOVE A[0], IV
	MOVE A[0], LC[0]
	MOVE A[0], LC[1]
	MOVE A[0], @BP[OFFS++]
	MOVE A[0], @BP[OFFS--]
	MOVE A[0], OFFS
	MOVE A[0], DPC
	MOVE A[0], GR
	MOVE A[0], GRL
	MOVE A[0], BP
	MOVE A[0], GRS
	MOVE A[0], GRH
	MOVE A[0], GRXL
	MOVE A[0], FP
	MOVE A[0], @DP[0]	
	MOVE A[0], @DP[1]	
	MOVE A[0], @DP[0]++		
	MOVE A[0], @DP[1]++
	MOVE A[0], @DP[0]--
	MOVE A[0], @DP[1]--
	MOVE ACC, #01h
	MOVE ACC, AP
	MOVE ACC, APC
	MOVE ACC, PSF
	MOVE ACC, IC
	MOVE ACC, IMR
	MOVE ACC, SC
	MOVE ACC, IIR
	MOVE ACC, CKCN
	MOVE ACC, WDCN
	MOVE ACC, A[0]		;Just Check two boundary conditions
	MOVE ACC, A[15]   
	MOVE ACC, IP
	MOVE ACC, @SP--
	MOVE ACC, SP
	MOVE ACC, IV
	MOVE ACC, LC[0]
	MOVE ACC, LC[1]
	MOVE ACC, @BP[OFFS++]
	MOVE ACC, @BP[OFFS--]
	MOVE ACC, OFFS
	MOVE ACC, DPC
	MOVE ACC, GR
	MOVE ACC, GRL
	MOVE ACC, BP
	MOVE ACC, GRS
	MOVE ACC, GRH
	MOVE ACC, GRXL
	MOVE ACC, FP
	MOVE ACC, @DP[0]	
	MOVE ACC, @DP[1]	
	MOVE ACC, @DP[0]++		
	MOVE ACC, @DP[1]++
	MOVE ACC, @DP[0]--
	MOVE ACC, @DP[1]--
	MOVE @++SP, #01h
	MOVE @++SP, AP
	MOVE @++SP, APC
	MOVE @++SP, PSF
	MOVE @++SP, IC
	MOVE @++SP, IMR
	MOVE @++SP, SC
	MOVE @++SP, IIR
	MOVE @++SP, CKCN
	MOVE @++SP, WDCN
	MOVE @++SP, A[0]		;Just Check two boundary conditions
	MOVE @++SP, A[15]   
	MOVE @++SP, ACC
	MOVE @++SP, A[AP]
	MOVE @++SP, IP
	MOVE @++SP, SP
	MOVE @++SP, IV
	MOVE @++SP, LC[0]
	MOVE @++SP, LC[1]
	MOVE @++SP, @BP[OFFS++]
	MOVE @++SP, @BP[OFFS--]
	MOVE @++SP, OFFS
	MOVE @++SP, DPC
	MOVE @++SP, GR
	MOVE @++SP, GRL
	MOVE @++SP, BP
	MOVE @++SP, GRS
	MOVE @++SP, GRH
	MOVE @++SP, GRXL
	MOVE @++SP, FP
	MOVE @++SP, @DP[0]	
	MOVE @++SP, @DP[1]	
	MOVE @++SP, @DP[0]++		
	MOVE @++SP, @DP[1]++
	MOVE @++SP, @DP[0]--
	MOVE @++SP, @DP[1]--
	MOVE SP, #01h
	MOVE SP, AP
	MOVE SP, APC
	MOVE SP, PSF
	MOVE SP, IC
	MOVE SP, IMR
	MOVE SP, SC
	MOVE SP, IIR
	MOVE SP, CKCN
	MOVE SP, WDCN
	MOVE SP, A[0]		;Just Check two boundary conditions
	MOVE SP, A[15]   
	MOVE SP, ACC
	MOVE SP, A[AP]
	MOVE SP, IP
	MOVE SP, IV
	MOVE SP, LC[0]
	MOVE SP, LC[1]
	MOVE SP, @BP[OFFS++]
	MOVE SP, @BP[OFFS--]
	MOVE SP, OFFS
	MOVE SP, DPC
	MOVE SP, GR
	MOVE SP, GRL
	MOVE SP, BP
	MOVE SP, GRS
	MOVE SP, GRH
	MOVE SP, GRXL
	MOVE SP, FP
	MOVE SP, @DP[0]	
	MOVE SP, @DP[1]	
	MOVE SP, @DP[0]++		
	MOVE SP, @DP[1]++
	MOVE SP, @DP[0]--
	MOVE SP, @DP[1]--
	MOVE IV, #01h
	MOVE IV, AP
	MOVE IV, APC
	MOVE IV, PSF
	MOVE IV, IC
	MOVE IV, IMR
	MOVE IV, SC
	MOVE IV, IIR
	MOVE IV, CKCN
	MOVE IV, WDCN
	MOVE IV, A[0]		;Just Check two boundary conditions
	MOVE IV, A[15]   
	MOVE IV, ACC
	MOVE IV, A[AP]
	MOVE IV, IP
	MOVE IV, @SP--
	MOVE IV, SP
	MOVE IV, IV
	MOVE IV, LC[0]
	MOVE IV, LC[1]
	MOVE IV, @BP[OFFS++]
	MOVE IV, @BP[OFFS--]
	MOVE IV, OFFS
	MOVE IV, DPC
	MOVE IV, GR
	MOVE IV, GRL
	MOVE IV, BP
	MOVE IV, GRS
	MOVE IV, GRH
	MOVE IV, GRXL
	MOVE IV, FP
	MOVE IV, @DP[0]	
	MOVE IV, @DP[1]	
	MOVE IV, @DP[0]++		
	MOVE IV, @DP[1]++
	MOVE IV, @DP[0]--
	MOVE IV, @DP[1]--
	MOVE LC[0], #01h
	MOVE LC[0], AP
	MOVE LC[0], APC
	MOVE LC[0], PSF
	MOVE LC[0], IC
	MOVE LC[0], IMR
	MOVE LC[0], SC
	MOVE LC[0], IIR
	MOVE LC[0], CKCN
	MOVE LC[0], WDCN
	MOVE LC[0], A[0]		;Just Check two boundary conditions
	MOVE LC[0], A[15]   
	MOVE LC[0], ACC
	MOVE LC[0], A[AP]
	MOVE LC[0], IP
	MOVE LC[0], @SP--
	MOVE LC[0], SP
	MOVE LC[0], IV
	MOVE LC[0], @BP[OFFS++]
	MOVE LC[0], @BP[OFFS--]
	MOVE LC[0], OFFS
	MOVE LC[0], DPC
	MOVE LC[0], GR
	MOVE LC[0], GRL
	MOVE LC[0], BP
	MOVE LC[0], GRS
	MOVE LC[0], GRH
	MOVE LC[0], GRXL
	MOVE LC[0], FP
	MOVE LC[0], @DP[0]	
	MOVE LC[0], @DP[1]	
	MOVE LC[0], @DP[0]++		
	MOVE LC[0], @DP[1]++
	MOVE LC[0], @DP[0]--
	MOVE LC[0], @DP[1]--
	MOVE @BP[OFFS], #01h
	MOVE @BP[OFFS], AP
	MOVE @BP[OFFS], APC
	MOVE @BP[OFFS], PSF
	MOVE @BP[OFFS], IC
	MOVE @BP[OFFS], IMR
	MOVE @BP[OFFS], SC
	MOVE @BP[OFFS], IIR
	MOVE @BP[OFFS], CKCN
	MOVE @BP[OFFS], WDCN
	MOVE @BP[OFFS], A[0]		;Just Check two boundary conditions
	MOVE @BP[OFFS], A[15]   
	MOVE @BP[OFFS], ACC
	MOVE @BP[OFFS], A[AP]
	MOVE @BP[OFFS], IP
	MOVE @BP[OFFS], @SP--
	MOVE @BP[OFFS], SP
	MOVE @BP[OFFS], IV
	MOVE @BP[OFFS], LC[0]
	MOVE @BP[OFFS], LC[1]
	MOVE @BP[OFFS], OFFS
	MOVE @BP[OFFS], DPC
	MOVE @BP[OFFS], GR
	MOVE @BP[OFFS], GRL
	MOVE @BP[OFFS], BP
	MOVE @BP[OFFS], GRS
	MOVE @BP[OFFS], GRH
	MOVE @BP[OFFS], GRXL
	MOVE @BP[OFFS], FP
	MOVE @BP[OFFS], @DP[0]	
	MOVE @BP[OFFS], @DP[1]	
	MOVE @BP[OFFS], @DP[0]++		
	MOVE @BP[OFFS], @DP[1]++
	MOVE @BP[OFFS], @DP[0]--
	MOVE @BP[OFFS], @DP[1]--
	MOVE @BP[++OFFS], #01h
	MOVE @BP[++OFFS], AP
	MOVE @BP[++OFFS], APC
	MOVE @BP[++OFFS], PSF
	MOVE @BP[++OFFS], IC
	MOVE @BP[++OFFS], IMR
	MOVE @BP[++OFFS], SC
	MOVE @BP[++OFFS], IIR
	MOVE @BP[++OFFS], CKCN
	MOVE @BP[++OFFS], WDCN
	MOVE @BP[++OFFS], A[0]		;Just Check two boundary conditions
	MOVE @BP[++OFFS], A[15]   
	MOVE @BP[++OFFS], ACC
	MOVE @BP[++OFFS], A[AP]
	MOVE @BP[++OFFS], IP
	MOVE @BP[++OFFS], SP
	MOVE @BP[++OFFS], IV
	MOVE @BP[++OFFS], LC[0]
	MOVE @BP[++OFFS], LC[1]
	MOVE @BP[++OFFS], OFFS
	MOVE @BP[++OFFS], DPC
	MOVE @BP[++OFFS], GR
	MOVE @BP[++OFFS], GRL
	MOVE @BP[++OFFS], BP
	MOVE @BP[++OFFS], GRS
	MOVE @BP[++OFFS], GRH
	MOVE @BP[++OFFS], GRXL
	MOVE @BP[++OFFS], FP
	MOVE @BP[++OFFS], @DP[0]	
	MOVE @BP[++OFFS], @DP[1]	
	MOVE @BP[++OFFS], @DP[0]--
	MOVE @BP[++OFFS], @DP[1]--
	MOVE @BP[--OFFS], #01h
	MOVE @BP[--OFFS], AP
	MOVE @BP[--OFFS], APC
	MOVE @BP[--OFFS], PSF
	MOVE @BP[--OFFS], IC
	MOVE @BP[--OFFS], IMR
	MOVE @BP[--OFFS], SC
	MOVE @BP[--OFFS], IIR
	MOVE @BP[--OFFS], CKCN
	MOVE @BP[--OFFS], WDCN
	MOVE @BP[--OFFS], A[0]		;Just Check two boundary conditions
	MOVE @BP[--OFFS], A[15]   
	MOVE @BP[--OFFS], ACC
	MOVE @BP[--OFFS], A[AP]
	MOVE @BP[--OFFS], IP
	MOVE @BP[--OFFS], SP
	MOVE @BP[--OFFS], IV
	MOVE @BP[--OFFS], LC[0]
	MOVE @BP[--OFFS], LC[1]
	MOVE @BP[--OFFS], OFFS
	MOVE @BP[--OFFS], DPC
	MOVE @BP[--OFFS], GR
	MOVE @BP[--OFFS], GRL
	MOVE @BP[--OFFS], BP
	MOVE @BP[--OFFS], GRS
	MOVE @BP[--OFFS], GRH
	MOVE @BP[--OFFS], GRXL
	MOVE @BP[--OFFS], FP
	MOVE @BP[--OFFS], @DP[0]	
	MOVE @BP[--OFFS], @DP[1]	
	MOVE OFFS, #01h
	MOVE OFFS, AP
	MOVE OFFS, APC
	MOVE OFFS, PSF
	MOVE OFFS, IC
	MOVE OFFS, IMR
	MOVE OFFS, SC
	MOVE OFFS, IIR
	MOVE OFFS, CKCN
	MOVE OFFS, WDCN
	MOVE OFFS, A[0]		;Just Check two boundary conditions
	MOVE OFFS, A[15]   
	MOVE OFFS, ACC
	MOVE OFFS, A[AP]
	MOVE OFFS, IP
	MOVE OFFS, @SP--
	MOVE OFFS, SP
	MOVE OFFS, IV
	MOVE OFFS, LC[0]
	MOVE OFFS, LC[1]
	MOVE OFFS, DPC
	MOVE OFFS, GR
	MOVE OFFS, GRL
	MOVE OFFS, BP
	MOVE OFFS, GRS
	MOVE OFFS, GRH
	MOVE OFFS, GRXL
	MOVE OFFS, FP
	MOVE OFFS, @DP[0]	
	MOVE OFFS, @DP[1]	
	MOVE OFFS, @DP[0]++		
	MOVE OFFS, @DP[1]++
	MOVE OFFS, @DP[0]--
	MOVE OFFS, @DP[1]--
