      	JSR	SETSUPER
	JSR	SETSCREEN
	JSR	CLEAR
	MOVE.L	#BENDTABEND-2*40,BENDPTR
	MOVE.L	#BENDTABEND-2*80,BENDPTR3
	MOVE.L	#BENDTABEND-2*120,BENDPTR5
	MOVE.L	#SCROLLTEXT,TEXTPTR
	MOVE.L	#RASSIN,RSINPTR
	MOVE.L	#RASSIN+20,RSINPTR2
	MOVE.L	#RASSIN+40,RSINPTR3
	MOVE.L	#RASSIN+60,RSINPTR4
	MOVE.L	#RASSIN+80,RSINPTR5
	MOVE.L	#RASSIN+100,RSINPTR6
	MOVE.L	#RASSIN+120,RSINPTR7
	MOVE.L	#$FF8242,A0
	REPT	15
	MOVE.W	#$777,(A0)+
	ENDR
	JSR	SETPIC
	JSR	STARTMUSIC
	JSR	INIT
DEMOLOOP:
	JSR	WAITVBL

*	MOVE.W	#$700,$FF8240
	JSR	TEXTSCROLL
	JSR	TEXTSCROLL
	JSR	BEND
	JSR	BEND2
	JSR	BEND3
	JSR	SCREENSWAP
*	MOVE.W	#$000,$FF8240

	CMP.W	#8,COUNT
	BNE	NONEWCHAR
	JSR	SETFONT
	MOVE.W	#0,COUNT
NONEWCHAR:
	ADD.W	#1,COUNT

	CMP.B	#185,$FFFC02
	BNE	DEMOLOOP
ENDDEMO:
	JSR	RETINIT
	JSR	ENDSUPER
	JSR	TERM	
*******************************
SETSUPER:
	CLR.L	-(SP)
	MOVE.W	#$20,-(SP)
	TRAP	#1
	ADDQ.L	#6,SP
	MOVE.L	D0,SAVESUPER
	RTS
ENDSUPER:
	MOVE.L	SAVESUPER,-(SP)
	MOVE.W	#$20,-(SP)
	TRAP	#1
	ADDQ.L	#6,SP
	RTS
*******************************
SETSCREEN:
	MOVE.W	#0,-(SP)
	MOVE.L	#$78000,-(SP)
	MOVE.L	#$70000,-(SP)
	MOVE.W	#$5,-(SP)
	TRAP	#14
	ADD.L	#12,SP
	RTS
*******************************
INIT:
	MOVE.L	$70.W,OLDVBL
	MOVE.L	$120.W,OLDHBL
	MOVE.B	$FFFFFA07.W,OLD07
	MOVE.B	$FFFFFA09.W,OLD09
	MOVE.B	$FFFFFA13.W,OLD13
	MOVE.B	$FFFFFA1B.W,OLD1B
	
	MOVE.W	 #$2700,SR
	MOVE.L	 #NEWVBL,$70.W
	MOVE.L	 #NEWHBL,$120.W
	CLR.B	 $FFFFFA07.W	
	CLR.B 	 $FFFFFA09.W
	ORI.B 	 #1,$FFFFFA07.W	
	ORI.B 	 #1,$FFFFFA13.W
	CLR.B 	 $FFFFFA1B.W	
	MOVE.W 	 #$2300,SR	
	RTS
RETINIT:
	MOVE.L	OLDVBL,$70.W
	MOVE.L	OLDHBL,$120.W
	MOVE.B	OLD07,$FFFFFA07.W
	MOVE.B	OLD09,$FFFFFA09.W
	MOVE.B	OLD13,$FFFFFA13.W
	MOVE.B	OLD1B,$FFFFFA1B.W
	RTS
***********************************
STARTMUSIC:
	MOVEQ	#1,D0
	JSR	MUSIC
	RTS
ENDMUSIC:
	MOVE.L	#$08080000,$FF8800
	MOVE.L	#$09090000,$FF8800
	MOVE.L	#$0A0A0000,$FF8800
	RTS
*******************************
CLEAR:
	MOVE.L	#$70000,A0
	MOVE.L	#$78000,A1
	MOVE.W	#7999,D0
CLEARLOOP:
	MOVE.L	#0,(A0)+
	MOVE.L	#0,(A1)+
	DBF.W	D0,CLEARLOOP
	RTS
*******************************
SETPIC:
	MOVE.L	#PIC+34,A0
	MOVE.L	#$70000,A1
	MOVE.L	#$78000,A2
	MOVE.W	#40*45,D0
SETPICLOOP:
	MOVE.L	(A0)+,D1
	MOVE.L	D1,(A1)+
	MOVE.L	D1,(A2)+
	DBF.W	D0,SETPICLOOP	

	MOVE.L	#PIC+34+160*50,A0
	MOVE.L	#$70000+160*50,A1
	MOVE.L	#$78000+160*50,A2
	MOVE.W	#149,D0
SETPICLOOP2:
	REPT	20
	MOVE.W	(A0),D1
	MOVE.W	D1,6(A1)
	MOVE.W	D1,6(A2)
	ADDQ.W	#8,A0
	ADDQ.W	#8,A1
	ADDQ.W	#8,A2
	ENDR
	DBF.W	D0,SETPICLOOP2
	RTS
*******************************
WAITVBL:
	CMP.W	#1,WFNC
	BNE.S	WAITVBL
	MOVE.W	#0,WFNC
	RTS
*******************************
TERM:
	CLR.W	-(SP)
	TRAP	#1
*******************************
SCREENSWAP:
	MOVE.B	#0,$FF8260
	MOVE.W	#-1,-(SP)
	MOVE.L	$44E,-(SP)
	MOVE.L	$44E,-(SP)
	MOVE.W	#$5,-(SP)
	TRAP	#14
	ADD.L	#12,SP
	
	CMP.L	#$78000,$44E
	BNE	NO78000
	MOVE.L	#$70000,$44E
	RTS
NO78000:
	MOVE.L	#$78000,$44E
	RTS
*******************************
*        SCROLLER             *
*******************************
TEXTSCROLL:
	MOVE.L	#SCRAREA,A1
	MOVE.W	#14,D1
SCRLOOP:
	ROXL.W	160(A1)
	ROXL.W	152(A1)
	ROXL.W	144(A1)
	ROXL.W	136(A1)
	ROXL.W	128(A1)
	ROXL.W	120(A1)
	ROXL.W	112(A1)
	ROXL.W	104(A1)
	ROXL.W	96(A1)
	ROXL.W	88(A1)
	ROXL.W	80(A1)
	ROXL.W	72(A1)
	ROXL.W	64(A1)
	ROXL.W	56(A1)
	ROXL.W	48(A1)
	ROXL.W	40(A1)
	ROXL.W	32(A1)
	ROXL.W	24(A1)
	ROXL.W	16(A1)
	ROXL.W	8(A1)
	ROXL.W	(A1)
	ADD.W	#168,A1
	DBF.W	D1,SCRLOOP
	RTS
*******************************
SETFONT:
	MOVE.L	TEXTPTR,A3
	CLR.W	D1
	MOVE.B	(A3)+,D1
	CMP.W	#$FF,D1
	BEQ	TEXTWRAP

	SUB.W	#32,D1
	MULS	#32,D1

	MOVE.L	#FONT+34,A1
	ADD.W	D1,A1
	MOVE.L	#SCRAREA+160,A2
	REPT	15
	MOVE.W	(A1),(A2)
	ADDQ.W	#2,A1
	ADD.W	#168,A2
	ENDR

	MOVE.L	A3,TEXTPTR
	RTS	
TEXTWRAP:
	MOVE.L	#SCROLLTEXT,TEXTPTR
	JMP	SETFONT
*******************************
*       BYTE - BENDING        *
*******************************
BEND:
	LEA	SCRAREA,A0
	MOVE.L	$44E,A2
	MOVE.L	BENDPTR,BENDPTR2

	REPT	20
	JSR	READBENDTAB
	MOVE.L	A2,A1
	ADD.W	D0,A1
	JSR	BENDBYTE
	ADDQ.W	#1,A0
	ADDQ.W	#1,A2
	JSR	READBENDTAB
	MOVE.L	A2,A1
	ADD.W	D0,A1
	JSR	BENDBYTE
	ADDQ.W	#7,A0
	ADDQ.W	#7,A2
	ENDR

	SUBQ.L	#2,BENDPTR2
	CMP.L	#BENDTABSTART,BENDPTR2
	BNE	NOFY
	MOVE.L	#BENDTABEND-2*40,BENDPTR2
NOFY:
	MOVE.L	BENDPTR2,BENDPTR
	RTS
BENDBYTE:
	CLR.B	-640(A1)
	CLR.B	-480(A1)
	CLR.B	-320(A1)
	CLR.B	-160(A1)
	MOVE.B	(A0),(A1)
	MOVE.B	168(A0),160(A1)
	MOVE.B	336(A0),320(A1)
	MOVE.B	504(A0),480(A1)
	MOVE.B	672(A0),640(A1)
	MOVE.B	840(A0),800(A1)
	MOVE.B	1008(A0),960(A1)
	MOVE.B	1176(A0),1120(A1)
	MOVE.B	1344(A0),1280(A1)
	MOVE.B	1512(A0),1440(A1)
	MOVE.B	1680(A0),1600(A1)
	MOVE.B	1848(A0),1760(A1)
	MOVE.B	2016(A0),1920(A1)
	MOVE.B	2184(A0),2080(A1)
	MOVE.B	2352(A0),2240(A1)
	MOVE.B	2520(A0),2400(A1)
	MOVE.B	2688(A0),2560(A1)
	CLR.B	2720(A1)
	CLR.B	2880(A1)
	RTS
*******************************
READBENDTAB:
	MOVE.L	BENDPTR,A3
	MOVE.W	(A3)+,D0
	ADD.W	#160*60,D0
	MOVE.L	A3,BENDPTR
	RTS
*******************************
*******************************
BEND2:
	LEA	SCRAREA,A0
	MOVE.L	$44E,A2
	ADDQ.W	#2,A2
	MOVE.L	BENDPTR3,BENDPTR4

	REPT	20
	JSR	READBENDTAB2
	MOVE.L	A2,A1
	ADD.W	D0,A1
	JSR	BENDBYTE
	ADDQ.W	#1,A0
	ADDQ.W	#1,A2
	JSR	READBENDTAB2
	MOVE.L	A2,A1
	ADD.W	D0,A1
	JSR	BENDBYTE
	ADDQ.W	#7,A0
	ADDQ.W	#7,A2
	ENDR

	SUBQ.L	#2,BENDPTR4
	CMP.L	#BENDTABSTART,BENDPTR4
	BNE	NOFY2
	MOVE.L	#BENDTABEND-2*40,BENDPTR4
NOFY2:
	MOVE.L	BENDPTR4,BENDPTR3
	RTS
*******************************
READBENDTAB2:
	MOVE.L	BENDPTR3,A3
	MOVE.W	(A3)+,D0
	ADD.W	#160*60,D0
	MOVE.L	A3,BENDPTR3
	RTS
*******************************
*******************************
BEND3:
	LEA	SCRAREA,A0
	MOVE.L	$44E,A2
	ADDQ.W	#4,A2
	MOVE.L	BENDPTR5,BENDPTR6

	REPT	20
	JSR	READBENDTAB3
	MOVE.L	A2,A1
	ADD.W	D0,A1
	JSR	BENDBYTE
	ADDQ.W	#1,A0
	ADDQ.W	#1,A2
	JSR	READBENDTAB3
	MOVE.L	A2,A1
	ADD.W	D0,A1
	JSR	BENDBYTE
	ADDQ.W	#7,A0
	ADDQ.W	#7,A2
	ENDR

	SUBQ.L	#2,BENDPTR6
	CMP.L	#BENDTABSTART,BENDPTR6
	BNE	NOFY3
	MOVE.L	#BENDTABEND-2*40,BENDPTR6
NOFY3:
	MOVE.L	BENDPTR6,BENDPTR5
	RTS
*******************************
READBENDTAB3:
	MOVE.L	BENDPTR5,A3
	MOVE.W	(A3)+,D0
	ADD.W	#160*60,D0
	MOVE.L	A3,BENDPTR5
	RTS
*******************************
*       RASTER THINGS         *
*******************************
RASTERREAD:
	MOVE.L	A6,A0
	MOVE.W	(A0)+,D0
	CMP.W	#-1,D0
	BEQ	RASTERRESTORE
	MOVE.L	A0,A6
	SUB.W	#62,D0
	MULS	#2,D0
	MOVE.W	D0,RASY
	RTS
RASTERRESTORE:
	MOVE.L	#RASSIN,A6
	JMP	RASTERREAD
*******************************
COPYRASTER:
	LEA	RASTERBALK,A0
	LEA	RASTER,A1
	ADD.W	RASY,A1
	REPT	16
	MOVE.W	(A0)+,(A1)+
	ENDR
	RTS
*******************************
*         INTERUPPTS          *
*******************************
NEWVBL:
	LEA	PIC+2,A0
	LEA	$FF8240,A1
	REPT	8
	MOVE.L	(A0)+,(A1)+
	ENDR

	MOVE.L	RSINPTR,A6
	JSR	RASTERREAD
	MOVE.L	A6,RSINPTR
	JSR	COPYRASTER
	MOVE.L	RSINPTR2,A6
	JSR	RASTERREAD
	MOVE.L	A6,RSINPTR2
	JSR	COPYRASTER
	MOVE.L	RSINPTR3,A6
	JSR	RASTERREAD
	MOVE.L	A6,RSINPTR3
	JSR	COPYRASTER
	MOVE.L	RSINPTR4,A6
	JSR	RASTERREAD
	MOVE.L	A6,RSINPTR4
	JSR	COPYRASTER
	MOVE.L	RSINPTR5,A6
	JSR	RASTERREAD
	MOVE.L	A6,RSINPTR5
	JSR	COPYRASTER
	MOVE.L	RSINPTR6,A6
	JSR	RASTERREAD
	MOVE.L	A6,RSINPTR6
	JSR	COPYRASTER
	MOVE.L	RSINPTR7,A6
	JSR	RASTERREAD
	MOVE.L	A6,RSINPTR7
	JSR	COPYRASTER

	MOVE.L	#RASTER,RASTERPTR
	MOVE.L	#NEWHBL,$120.W
	CLR.B 	$FFFFFA1B.W	
	MOVE.B 	#47,$FFFFFA21.W	
	MOVE.B 	#8,$FFFFFA1B.W	

	MOVE.W	#1,WFNC
	MOVEM.L	D0-D7/A0-A6,-(SP)
	JSR	MUSIC+8
	MOVEM.L	(SP)+,D0-D7/A0-A6
	RTE			
NEWHBL:
	MOVEM.L	A0,-(SP)
	MOVE.L	#$FF8242,A0
	REPT	15
	MOVE.W	#$777,(A0)+
	ENDR	
	MOVEM.L	(SP)+,A0

	CLR.B	$FFFFFA1B.W
	MOVE.L	#NEWHBL2,$120.W
	MOVE.B 	#1,$FFFFFA21.W	
	MOVE.B 	#8,$FFFFFA1B.W	
	BCLR 	#0,$FFFFFA0F.W	
	RTE			
NEWHBL2:
*	CLR.B	$FFFFFA1B.W
	MOVEM.L	D7/A6,-(SP)
	MOVE.L	RASTERPTR,A6
	MOVE.W	(A6)+,D7
	MOVE.W	D7,$FF8240
	MOVE.W	D7,$FF8250
*	CMP.W	#0,D7
*	BNE	NOCHANGE
*	MOVE.W	#$007,$FF8250
NOCHANGE:
	MOVE.L	A6,RASTERPTR
	MOVEM.L	(SP)+,D7/A6
	BCLR 	#0,$FFFFFA0F.W	
	RTE			
********************************
SAVESUPER:	DC.L	0
OLDVBL:		DC.L	0
OLDHBL:		DC.L	0
OLD07:		DC.B	0
OLD09:		DC.B	0
OLD13:		DC.B	0
OLD1B:		DC.B	0
WFNC:		DC.W	0
BENDPTR:	DC.L	0
BENDPTR2:	DC.L	0
BENDPTR3:	DC.L	0
BENDPTR4:	DC.L	0
BENDPTR5:	DC.L	0
BENDPTR6:	DC.L	0
RASTERPTR:	DC.L	0
TEXTPTR:	DC.L	0
COUNT:		DC.W	0
****************************
SCROLLTEXT:	DC.B	'  FEAR LUKTAR LIKE THE SMELL OF FEAR  ',$FF
		EVEN
****************************
RSINPTR:	DC.L	0
RSINPTR2:	DC.L	0
RSINPTR3:	DC.L	0
RSINPTR4:	DC.L	0
RSINPTR5:	DC.L	0
RSINPTR6:	DC.L	0
RSINPTR7:	DC.L	0
RASY:		DC.W	0
RASTERBALK:
		DC.W	$000,$010,$020,$030,$040,$050,$060,$070
		DC.W	$770,$660,$550,$440,$330,$220,$110,$000
		EVEN
RASTER:
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
		DC.W	$000,$000,$000,$000,$000,$000,$000,$000,$000,$000
****************************
BENDTABSTART:
		INCLUDE	B:\DISTTAB.DAT
BENDTABEND:
		DC.W	-1	

****************************
FONT:		INCBIN	B:\FULLORD2.DAT
		EVEN
SCRAREA:	DS.B	168*20   
****************************
RASSIN:		INCLUDE	B:\SINUS.DAT
		EVEN
****************************
MUSIC:		INCBIN	A:\FLETCH.MUS
		EVEN
PIC:		INCBIN	B:\3DDOC.PI1
		EVEN
