;--------------------------------	
COPY_SCREEN
	xor	a
	ld	(r_shifted),a
	ld	(l_shifted),a

	

S_SRC	ld	hl,#4000
S_DST	ld	de,#C010

	ld	a,(l_pressed)
	ld	b,a
	ld	a,(r_pressed)
	xor	b	
	jr	z,no_shr

	ld	a,(r_pressed)
	and	a
	jr	z,no_shl
	ld	a,(r_wall)
	and	a	
	jr	nz,no_shl
	
	ld	a,1
	ld	(r_shifted),a
	inc	hl	

no_shl	ld	a,(l_pressed)
	and	a	
	jr	z,no_shr
	ld	a,(l_wall)
	and	a	
	jr	nz,no_shr

	ld	a,1
	ld	(l_shifted),a
	inc	de

no_shr
	;-----------------------
	;ldir = 145147  (21  )
	ld	(S_SRC1+1),hl	;16
	ld	(S_DST1+1),de	;20
	ld	(SAVE_SP+1),sp	;20

	ld	b,215		;7

S_SRC1	ld	sp,0		;10
	pop	hl		;10
	pop	de		;10
	pop	af		;10
	pop	ix		;14
	pop	iy		;14
	exx			;4
	pop	hl		;10
	pop	de		;10
	pop	bc		;10
	ld	(S_SRC2+1),sp	;20	= 122
	
S_DST1	ld	sp,0		;10
	push	bc		;11
	push	de		;11
	push	hl		;11
	exx			;4
	push	iy		;15
	push	ix		;15
	push	af		;11
	push	de		;11
	push	hl		;11

	ld	hl,32		;10
	add	hl,sp		;11
	ld	(S_DST2+1),hl	;16	= 147 | +122 = 269
	
S_SRC2	ld	sp,0
	pop	hl	
	pop	de	
	pop	af	
	pop	ix
	pop	iy
	exx	
	pop	hl	
	pop	de	
	pop	bc	
	ld	(S_SRC1+1),sp
	
S_DST2	ld	sp,0
	push	bc	
	push	de	
	push	hl	
	exx	
	push	iy
	push	ix
	push	af	
	push	de	
	push	hl	
	
	ld	hl,32
	add	hl,sp	
	ld	(S_DST1+1),hl	;269 * 2 = 538

				;551 * 214 + 546 = 118460
				;+66 = 118526   (17,148  )
	djnz	S_SRC1		;13/8
	
SAVE_SP	ld	sp,0

	EI
	ret