
	org	840Ch	;Bypass colour card
	jp	87CAh
;
; Replace the original 'draw-an-object' subroutine with this one.
; 
	org	944Eh
	call	jiggle
;
; This code can go anywhere. I put it at 97C3h so it can coexist with the
; "wibble" upside-down patch.
;
	org	97C3h

jiggle:
	ld	a,(85CBh)	;Object colour change ticker
	and	1
	jp	z,969Bh		;Drawing normally. 
;
; Drawing in "jiggled" state. Save the target co-ords, which we will use 
; for the other 7 lines.
;
	push	de
;
; Now move up 1 line. This is done differently for lines 0 and 8.
;
	ld	a,e
	and	0E0h	;Check low 3 bits of Y coordinate.
	jr	z,jig0
	ld	a,e
	sub	20h
	ld	e,a
	ld	a,d
	add	a,7	
	ld	d,a
	jr	jig1
;
jig0:	dec	d	;We were either on line 8 or line 0.
	ld	a,e	;If on line 8: Move to line 7.
	or	0E0h	;If on line 0: Overwrite the ROM (so sue me).
	ld	e,a
jig1:	ld	a,(hl)
	ld	(de),a
	pop	de
	inc	hl
	dec	b
	jp	969Bh
;
	end

