ùúùúÿþ©?ÿþ©?ÿþ©?ÿþ©?ÿþ©?ÿþ©?ÿþ©?ÿþ©?ÿþ©?o:
	move.l	#main,$80
	trap	#0
	moveq	#0,d0
	rts
Main:
	movem.l	d0-d7/a0-a6,-(sp)
        bsr copr1
	bsr	Init
        bsr fiil
Main_Rutin:
	cmp.b	#255,$dff006
	bne	Main_Rutin
        bsr mvta

mouse:	BTST	#6,$BFE001
	bne	Main_Rutin

End:
	move.w	OldInt,d0
	bset	#15,d0
	move.w	#$7fff,$dff09a
	move.w	d0,$dff09a
	move.w	OldDma,d0
	bset	#15,d0
	move.w	#$7fff,$dff096
	move.w	d0,$dff096
	move.l	OldCop,$dff080
	clr.w	$dff088
	clr.w	$dff102
	moveq	#0,d0
	movem.l	(sp)+,d0-d7/a0-a6
	rte
********************************************

Mvta:	lea	tab,a6			;reecrit CopperListe pour le
	lea	copper4,a0		;bob ACKERLIGHT
	move.l	#53,d1			;on a vu que dans le tableau
fillw:	move.w	(a6)+,d2		;tab on a les numeros de
	mulu	#40,d2			;chaque ligne du bob a 
	addi.w	#6,a0			;afficher
	move.l	#screen,a1		;ce tableau nous permet 
	addi.w	d2,a1			;d'avoir l'adresse de chaque
	move.l	a1,d3			;ligne a afficher. Ici,
	move.w	d3,(a0)+		;cette addresse est changee
	move.w	#$00e0,(a0)+		;a la fin de chaque balayage
	swap	d3			;video horizontal
	move.w	d3,(a0)+		;en fait pour etirer le bob
	move.w	#$00e6,(a0)+		;il suffit de mettre plusieurs
	move.l	#screen+1120,a1		;fois de suite la meme 
	addi.w	d2,a1			;adresse
	move.l	a1,d3
	move.w	d3,(a0)+
	move.w	#$00e4,(a0)+
	swap	d3
	move.w	d3,(a0)+
	move.w	#$00ea,(a0)+
	move.l	#screen+2240,a1
	addi.w	d2,a1
	move.l	a1,d3
	move.w	d3,(a0)+
	move.w	#$00e8,(a0)+
	swap	d3
	move.w	d3,(a0)+
	addi.l	#4,a0
	dbf	d1,fillw
	rts

Init:
	move.l	$4,a6
	move.l	156(a6),a6
	move.l	38(a6),OldCop
	move.l	#NewCop1,$dff080
	clr.w	$dff088
	clr.w	$dff102

	move.w	$dff01c,OldInt
	move.w	$dff002,OldDma
	move.w	#$7fff,$dff096
	move.w	#$83e0,$dff096
	move.w	#$7fff,$dff09a
	move.w	#$c028,$dff09a
	clr.l	$dff144
	rts

fiil:
	lea	copper4,a0
	lea	col4,a5
	move.w	#$1d05,d0
	move.l	#40,d2
	move.w	#53,d1
fillx:	move.w	(a5)+,d5
	move.w	d0,(a0)+
	move.l	#$fffe00e2,(a0)+
	move.l	#screen,a1
	addi.w	d2,a1
	move.l	a1,d3
	move.w	d3,(a0)+
	move.w	#$00e0,(a0)+
	swap	d3
	move.w	d3,(a0)+
	move.w	#$00e6,(a0)+
	move.l	#screen+1120,a1
	addi.w	d2,a1
	move.l	a1,d3
	move.w	d3,(a0)+
	move.w	#$00e4,(a0)+
	swap	d3
	move.w	d3,(a0)+
	move.w	#$00ea,(a0)+
	move.l	#screen+2240,a1
	addi.w	d2,a1
	move.l	a1,d3
	move.w	d3,(a0)+
	move.w	#$00e8,(a0)+
	swap	d3
	move.w	d3,(a0)+
	move.w	#$0180,(a0)+
	move.w	d5,(a0)+
	addi.w	#40,d2
	addi.w	#$100,d0
	dbf	d1,fillx
        rts

OldCop		dc.l	0
OldInt		dc.w	0
OldDma		dc.w	0
count: 		dc.w 0
tab:	dc.w	01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16
	dc.w	17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32
	dc.w	33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48
	dc.w	49,50,51,52,53,54,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
col4:	dc.w	$000,$001,$002,$003,$004,$005,$006,$007,$008
	dc.w	$008,$007,$006,$005,$004,$003,$002,$001,$000
	dc.w	$000,$111,$222,$333,$444,$555,$666,$777,$888
	dc.w	$888,$777,$666,$555,$444,$333,$222,$111,$000
	dc.w	$000,$100,$200,$300,$400,$500,$600,$700,$800
	dc.w	$800,$700,$600,$500,$400,$300,$200,$100,$000,0,0,0

copr1:    lea cop,a0           
          move.l #screen,d0
          move.l #2,d7
s:        move.w d0,6(a0)
          swap d0
          move.w d0,2(a0)
          swap d0
          add.l #8,a0
          add.l #$460,d0
          dbf d7,s
          rts



NewCop1:
cop:	dc.w	$00e0,$0000,$00e2,$0000
	dc.w	$00e4,$0000,$00e6,$0000
	dc.w	$00e8,$0000,$00ea,$0000
	dc.w	$0100,$3200

	dc.w	$0180,$0000,$0182,$0BEF,$0184,$09CF,$0186,$07AD
	dc.w	$0188,$058B,$018A,$0369,$018C,$0147,$018E,$0025
copper4:blk.b	32*54,0




        dc.w   $5407,$fffe,$0100,$0200

        dc.w    $008e,$2c81,$0090,$40f1
	dc.w	$0092,$0038,$0094,$00d0
	dc.w	$0102,$0000,$0104,$0064
	dc.w	$0108,$0000,$010a,$0000
        dc.w    $0120,$0000,$0122,$0000  
	dc.w	$0124,$0000,$0126,$0000
	dc.w	$0128,$0000,$012a,$0000
	dc.w	$012c,$0000,$012e,$0000
	dc.w	$0130,$0000,$0132,$0000
	dc.w	$0134,$0000,$0136,$0000
	dc.w	$0138,$0000,$013a,$0000
	dc.w	$013c,$0000,$013e,$0000


	dc.w	$ffff,$fffe





SCREEN:	incbin "acker"	



