	 	
 	section ax,code_c
	opt c-,d+,w-,o+	
	
	include 'df1:insert/custom registers'
	
cadd=((42*8)*256)/8
	
	move.l #scrolltext,shag
	lea $dff000,a6
	move.w #$87e0,dmacon(a6)
	jsr cop_init
 	move.l $6c,oldirq
 	move.l #newirq,$6c
mse:
 	cmp.b #$f0,$dff006
 	bne mse

zog:
 	btst #6,$bfe001
	bne mse
 	move.l oldirq,$6c
 	move.l copaddr,a0
 	move.l oldcop,(a0)
nolib:	
	
	 rts	
newirq:  
	movem.l d0-d7/a0-a6,$75000
shaj1:  cmpi.w #$0000,boh
	bne shaj
	jsr shifty
	move.w #$00ff,boh
	jsr printy
	jsr printy1
	jmp kij
shaj:	subi.w #$0011,boh	
	
kij:	
	move.l #screen+2000,aw1+2
	jsr shifty2
	move.l aw1+2,a3
	adda.l #2000,a3
	move.l a3,aw1+2
	jsr shifty2
	move.l aw1+2,a3
	adda.l #2000,a3
	move.l a3,aw1+2
	jsr shifty2
	
	movem.l $75000,d0-d7/a0-a6
	dc.w $4ef9
	
oldirq: dc.l 0
shag:	dc.l 0
yaz:	dc.b 0

	even

cop_init:
 	lea screen,a0
 	move.l a0,d0
 	move.w d0,lo1
 	swap d0
 	move.w d0,hi1
 	moveq #$00,d0
 	lea grafname,a1
 	move.l $4,a6
 	jsr -132(A6)
 	move.l $4,A6
 	jsr -408(a6)
 	tst d0
 	beq nolib
 	move.l d0,grafbase
 	move.l d0,a6
 	add.l #$32,d0
 	move.l d0,a0
 	move.l a0,copaddr
 	move.l (a0),oldcop
 	move.l #newcop,(a0)
 	rts
 
	even
	  
grafname: dc.b "graphics.library",0
grafbase: dc.l 0
oldcop:   dc.l 0
copaddr:  dc.l 0
countit:	  dc.b 0

	even
 
newcop:	 dc.w $0100,$1200
 	 dc.w $0102
boh: 	 dc.w $00ff
	 dc.w $0120
sp1l:	 dc.w $0000,$0122
sp1h: 	 dc.w $0000 
	 dc.w $0124
sp2l:	 dc.w $0000,$0126
sp2h: 	 dc.w $0000 
	 dc.w $0128
sp3l:	 dc.w $0000,$012a
sp3h: 	 dc.w $0000 
	 dc.w $012c
sp4l:	 dc.w $0000,$012e
sp4h: 	 dc.w $0000
	 dc.w $0130
sp5l:	 dc.w $0000,$132
sp5h: 	 dc.w $0000
 scr:  	 dc.w $2001,$fffe
 	 dc.w $00e0
 hi1:	 dc.w $0000
	 dc.w $00e2
 lo1:	 dc.w $0000 	
	 dc.w $00e4
 hi2:	 dc.w $0000
	 dc.w $00e6
 lo2:	 dc.w $0000 
	 dc.w $00e8
 hi3:	 dc.w $0000
	 dc.w $00ea
 lo3:	 dc.w $0000 
	 dc.w $00ec
 hi4:	 dc.w $0000
	 dc.w $00ee
 lo4:	 dc.w $0000 
	 dc.w $00f0
 hi5:	 dc.w $0000
	 dc.w $00f2
 lo5:	 dc.w $0000
	 dc.w $008e,$3491 
	 dc.w $0090,$34a1
	 dc.w $180,$000,$182,$fff,$184,$fdb,$186,$db9
	 dc.w $188,$c97,$18a,$a75,$18c,$853,$18e,$033,$190,$c60
	 dc.w $192,$ba5,$194,$962,$196,$530,$198,$db4,$19a,$558
	 dc.w $19c,$447,$19e,$336,$1a0,$a40,$1a2,$f44,$1a4,$b00
	 dc.w $1a6,$222,$1a8,$333,$1aa,$444,$1ac,$555,$1ae,$666
	 dc.w $1b0,$777,$1b2,$888,$1b4,$999,$1b6,$aaa,$1b8,$ccc
	 dc.w $1ba,$ddd,$1bc,$eee,$1be,$fff
	 dc.w $ffff,$fffe
	 
	 even

screen:
	 ds.b 1*cadd
	 
chrset:
	 incbin 'df1:graphics/64.chrset.raw'
	 
printy:
	 move.l shag,a2
	 move.b (a2)+,yaz
	 move.l a2,shag
	 cmpi.b #0,yaz
	 bne stag
	 move.l #scrolltext,shag
	 rts
stag:	 
	 move.l #Ascii,a3
	 move.l #pos,a4
	 move.b (a3)+,d3
	 move.w (a4),(a4)
cmpr:
	 cmp.b yaz,d3
	 beq printit
	 move.b (a3)+,d3
	 move.w (a4),(a4)+
	 jmp cmpr
	 rts
	 
printit:
	 move.l #chrset,a5
	 adda.w (a4),a5
	 move.l a5,as1+2
as1:	 move.b chrset,screen+38
	
loop:	 move.l as1+2,a3
	 adda.l #40,a3
	 move.l a3,as1+2
	 move.l as1+6,a3
	 adda.l #40,a3
	 move.l a3,as1+6
	 addi.b #1,countit
	 cmpi.b #8,countit
	 bne as1
	 move.b #0,countit
	 move.l #chrset,as1+2
	 move.l #screen+38,as1+6
	 rts
	 
printy1:
	 move.l shag,a2
	 move.b (a2)+,yaz
	 move.l a2,shag
	 cmpi.b #0,yaz
	 bne juh
	 move.l #scrolltext,shag
	 rts
juh:
	 move.l #Ascii,a3
	 move.l #pos,a4
	 move.b (a3)+,d3
	 move.w (a4),(a4)
cmpr1:
	 cmp.b yaz,d3
	 beq printit1
	 move.b (a3)+,d3
	 move.w (a4),(a4)+
	 jmp cmpr1
	 rts
	 
printit1:
	 move.l #chrset,a5
	 adda.w (a4),a5
	 move.l a5,as11+2
as11:	 move.b chrset,screen+39
	
loop1:	 move.l as11+2,a3
	 adda.l #40,a3
	 move.l a3,as11+2
	 move.l as11+6,a3
	 adda.l #40,a3
	 move.l a3,as11+6
	 addi.b #1,countit
	 cmpi.b #8,countit
	 bne as11
	 move.b #0,countit
	 move.l #chrset,as11+2
	 move.l #screen+39,as11+6
	 rts
	 
	 
Ascii:
	 dc.b ' 1234567890.-'
	 dc.b 'ABCDEFGHIJKLMNOPQRSTUVWXYZ!?'
	 dc.b 0
	 
pos:
	 dc.w 0,1,2,3,4,5,6,7,8,9,10,11,12
	 dc.w 320,321,322,323,324,325,326,327,328,329,330
	 dc.w 331,332,333,334,335,336,337,338,339,340,341
	 dc.w 342,343,344,345,346,347
	 
scrolltext:

	 dc.b 'THIS IS MEANINGFUL TEXT. DUDE GREETS GO TO MARTIN.'
	 dc.b 'BOLLGROX TO PETE EDLEY GREASER FUCKIN TWAT SHIT.'
	 dc.b '1234567890-!?                            '
	 dc.b 0
shifty:
 	lea $dff000,a6
 	move.l #-1,bltafwm(a6)
 	move.w #$09f0,bltcon0(a6)
 	clr.w bltcon1(a6)
 	clr.w bltamod(a6)
 	move.w #40-38,bltdmod(a6)              
 	move.w #40-38,bltamod(a6)             
 	move.l #screen,bltdpt(a6)       
 	move.l #screen+2,bltapt(a6)            
 	move.w #%0000001000010011,bltsize(a6) 	
 	rts
 	
shifty2:
 	lea $dff000,a6
 	move.l #-1,bltafwm(a6)
 	move.w #$09f0,bltcon0(a6)
 	clr.w bltcon1(a6)
 	clr.w bltamod(a6)
 	move.w #40-38,bltdmod(a6)              
 	move.w #40-38,bltamod(a6)             
aw1: 	move.l #screen+2000,bltdpt(a6)       
 	move.l #screen,bltapt(a6)            
 	move.w #%0000001000010011,bltsize(a6) 	
 	rts
