	opt	c-,l+
	section janko,code

	xdef	poni,score
	xdef	cintno
	xdef	finale,intim
	xdef	namtab,htuna,htunb,htunc
	xdef	cflg,hiflg
	xdef	joy1,joy2,stack,press

	xref	tunea,tuneb,tunec,putvbl,pile,char
	xref	bigset,smalset,titlesc,getjoy2,schar
	xref	scrloc,otscr,turn,clrscr,setscr
	xref	rotor,namestr,hiscore,hiend

	include	df0:joystick.i

; THIS BELOW ARE ROUTINES FOR FUTURE USES (C)1986 PARADOX SOFTWARE
; USE OF THESE ROUTINES IS FORBIDDEN TO ANYBODY OUTSIDE THE COMPANY

; TEXT - PRINTS A TEXT STRING
; A2 - TEXT	D3 X-START	D4 Y
	xdef	text
TEXT	CLR.L	D0
	CLR.L	D1
	CLR.L	D2
	MOVE.B	D3,D1
	MOVE.B	D4,D2
	MOVE.B	(A2)+,D0
	CMPI.B	#255,D0
	BEQ.S	ENDTXT
	JSR	CHAR
	ADDI.B	#1,D3
	BRA.S	TEXT
ENDTXT	RTS	

	xdef	stext
STEXT:	CLR.L	D0
	CLR.L	D1
	CLR.L	D2
	MOVE.B	D3,D1
	MOVE.B	D4,D2
	MOVE.B	(A2)+,D0
	CMPI.B	#255,D0
	BEQ.S	SENDTXT
	JSR	SCHAR
	ADDI.B	#1,D3
	BRA.S	STEXT
SENDTXT RTS	

	xdef	flip
FLIP	JSR	TURN
	JSR	SETSCR
	RTS

	xdef	grset
GRSET	JSR	FLIP
	JSR	CLRSCR
	JSR	FLIP
	JSR	CLRSCR
	RTS

NKEY	DC.B	0
KEY	DC.B	0
JOY1	DC.B	0
JOY2	DC.B	0
JOYSTAT DC.B	0 
INTWT	DC.B	0
KENTLEN DC.B	7,5,2,2,2,2,6,2,1,1
BOJAFLG DC.B	0
	ds.w 0
	DC.B	0,0,0,0,0,0,0,0
SETLOC	DC.L	0
CINTNO	DC.B	0
INTIM	DC.B	0
OLDSTAK DC.L	0
	ds.w	0


HTUNA	DC.B	254,1,2,10
	DC.B	254,0
	DC.B	2,24,2,20,2,17,2,24,1,20,2,17,1,24,1,24,1,17
	DC.B	254,1,2,10
	DC.B	254,0
	DC.B	2,19,2,15,2,12,2,17,1,13,2,10,1,17,1,13,1,10
	DC.B	254,1,2,10
	DC.B	254,0
	DC.B	2,24,2,20,2,17,2,24,1,20,2,17,1,24,1,24,1,17
	DC.B	254,1,2,10
	DC.B	254,0
	DC.B	2,19,2,15,2,12,2,17,1,13,2,10,1,17,1,13,1,10

	DC.B	2,15,1,12,2,8,1,15,1,12,1,8
	DC.B	2,19,1,15,2,12,1,19,1,15,1,12
	DC.B	2,17,1,13,2,10,1,17,1,13,1,10
	DC.B	2,20,1,17,2,13,1,20,1,17,1,13
	DC.B	2,19,1,15,2,12,1,19,1,15,1,12
	DC.B	2,19,1,15,2,12,1,19,1,15,1,12
	DC.B	2,17,1,13,2,10,1,17,1,13,1,10
	DC.B	2,17,2,19,2,20,2,22
	DC.B	255

HTUNB	DC.B	254,0
	DC.B	16,48,8,43,8,41
	DC.B	16,48,8,43,8,41
	DC.B	8,39,8,43,8,41,8,44,16,43,16,41,255

HTUNC	DC.B	254,0
	DC.B	16,36,8,31,8,29
	DC.B	16,36,8,31,8,29
	DC.B	8,27,8,31,8,29,8,32,16,31,16,29,255
	ds.w	0

	; VARIABLES

BACKS	DC.L	0
BOFFS	DC.L	0
GPOS	DC.L	0
GRNDNO	DC.L	0
BBB	DC.L	0
CURLOC	DC.L	0
CFLG	DC.L	0
HIFLG	DC.L	0
SNFLG	DC.L	0
SPEED	DC.L	0
SWITCH	DC.L	0
OLDX	DC.W	0,0
NEWX	DC.W	0
NEWY	DC.W	0
TBUL	DC.W	0,0
BULX	DC.W	0,0
BFLG	DC.L	0
FIREFLG DC.L	0
BULDIR	DC.L	0
BMFLG	DC.L	0
ERBFLG	DC.L	0
SDIR	DC.L	0
THR	DC.L	0
VELTIM	DC.L	0

PONI:	LEA	PILE,A1
	LEA	SPILE,A2
	MOVE.L	A1,(A2)
	RTS

SPILE	DC.L	0

CONVER	MOVE.L	D0,D1

	ANDI.B	#$F,D1
	ADDI.B	#29,D1

	LSR.B	#4,D0
	ANDI.L	#$F,D0
	ADDI.B	#29,D0

	RTS

FINALE: LEA	NAMESTR,A1
	MOVEQ	#8,D0
FILOP	clr.b	(A1)+
	DBRA	D0,FILOP

;	jsr	hiload

	LEA	ASCSC,A2
	LEA	SCORE,A1
	CLR.L	D0
	MOVE.B	(A1)+,D0
	JSR	CONVER
	MOVE.B	D0,(A2)+
	MOVE.B	D1,(A2)+
	CLR.L	D0
	MOVE.B	(A1)+,D0
	JSR	CONVER
	MOVE.B	D0,(A2)+
	MOVE.B	D1,(A2)+
	CLR.L	D0
	MOVE.B	(A1)+,D0
	JSR	CONVER
	MOVE.B	D0,(A2)+
	MOVE.B	D1,(A2)+
 
	clr.L	D0
	LEA	SCTAB,A0
HTUT	LEA	ASCSC,A1
	MOVEQ	#5,D1
HCOM1:	CMPm.B	(A1)+,(A0)+
	BEQ	HCOM2
	BLS	PUTHERE
	BNE	HNEXT
HCOM2	DBRA	D1,HCOM1
	BRA	PUTHERE

HNEXT	ADDI.B	#1,D0
	MOVE.L	D0,D2
	MULU	#6,D2
	LEA	SCTAB,A0
	ADDA.L	D2,A0
	CMPI.B	#9,D0
	BNE.S	HTUT
	RTS

PUTHERE MOVE.L	#8,D1
PUTH2	LEA	SCTAB,A1
	MOVE.L	D1,D3
	MULU	#6,D3
	ADDA.L	D3,A1
	MOVEA.L A1,A2
	ADDA.L	#6,A2
	MOVEQ	#5,D3
HDOIT1	MOVE.B	(A1)+,(A2)+
	DBRA	D3,HDOIT1

	LEA	NAMTAB,A1
	MOVE.L	D1,D3
	MULU	#8,D3
	ADDA.L	D3,A1
	MOVEA.L A1,A2
	ADDA.L	#8,A2
	MOVEQ	#7,D3
HDOIT2	MOVE.B	(A1)+,(A2)+
	DBRA	D3,HDOIT2

	CMP.B	D1,D0
	BEQ	HOUT
	SUBI.B	#1,D1
	BRA.S	PUTH2
 
HOUT	LEA	PLACT,A0
	MOVE.L	D0,(A0)
	JSR	HISCORE
	JSR	CLRSCR

	LEA	NAMESTR,A2
	LEA	NAMTAB,A3
	LEA	PLACT,A0
	MOVE.L	(A0),D0
	MULU	#8,D0
	ADDA.L	D0,A3
	MOVEQ	#7,D5
HOUT1	MOVE.B	(A2)+,(A3)+
	DBRA	D5,HOUT1

	LEA	ASCSC,A2
	LEA	SCTAB,A3
	LEA	PLACT,A0
	MOVE.L	(A0),D0
	MULU	#6,D0
	ADDA.L	D0,A3
	MOVEQ	#5,D5
HOUT2	MOVE.B	(A2)+,(A3)+
	DBRA	D5,HOUT2
;	NOW DISPLAY ALL THESE FOOLS
	LEA	MESSFAM,A2
	MOVEQ	#4,D3
	MOVEQ	#0,D4
	JSR	TEXT
	CLR.L	D7
WODA	MOVE.L	D7,D0
	JSR	CONVER
	MOVE.L	D1,D0
	ADDI.B	#1,D0
	MOVE.L	D7,D2
	ADDI.B	#2,D2
	MOVE.L	D2,D3
	MOVEQ	#0,D1
	JSR	CHAR

	LEA	NAMTAB,A6
	MOVE.L	D7,D1
	MULU	#8,D1
	ADDA.L	D1,A6

	CLR.L	D6
HHHA1	CLR.L	D0
	MOVE.L	D3,D2
	MOVE.L	#4,D1
	ANDI.B	#$EF,CCR
	ADDX.B	D6,D1
	MOVE.B	(A6)+,D0
	JSR	CHAR
	ADDI.B	#1,D6
	CMPI.B	#8,D6
	BNE.S	HHHA1

	LEA	SCTAB,A6
	MOVE.L	D7,D1
	MULU	#6,D1
	ADDA.L	D1,A6

	CLR.L	D6
HHHA2	CLR.L	D0
	MOVE.L	D3,D2
	MOVE.L	#14,D1
	ANDI.B	#$EF,CCR
	ADDX.B	D6,D1
	MOVE.B	(A6)+,D0
	JSR	CHAR
	ADDI.B	#1,D6
	CMPI.B	#6,D6
	BNE.S	HHHA2
	ADDI.B	#1,D7
	CMPI.B	#9,D7
	BNE	WODA
	MOVEQ	#3,D3
	MOVEQ	#11,D4
	LEA	MESSP,A2
	JSR	TEXT
;	jsr	hisave
	JSR	PAUZA
	JSR	PAUZA
	JSR	PAUZA
	JSR	PAUZA
	JSR	PRESS
	JSR	HIEND
	RTS

; THESE ARE DATA FOR HI-SCORE ROUTINE
TABTAB	DC.L	0
	DS.B	10

NAMTAB	DC.B	1,0,0,0,0,0,0,0
	DC.B	2,0,0,0,0,0,0,0
	DC.B	3,0,0,0,0,0,0,0
	DC.B	4,0,0,0,0,0,0,0
	DC.B	5,0,0,0,0,0,0,0
	DC.B	6,0,0,0,0,0,0,0
	DC.B	7,0,0,0,0,0,0,0
	DC.B	8,0,0,0,0,0,0,0
	DC.B	9,0,0,0,0,0,0,0
	DC.B	10,0,0,0,0,0,0,0
	DC.B	11,0,0,0,0,0,0,0

SCTAB	DC.B	29,29,33,29,29,29
	DC.B	29,29,32,29,29,29
	DC.B	29,29,31,29,29,30
	DC.B	29,29,31,29,29,29
	DC.B	29,29,31,29,29,29
	DC.B	29,29,30,29,29,34
	DC.B	29,29,30,29,29,33
	DC.B	29,29,30,29,29,32
	DC.B	29,29,30,29,29,30
	DC.B	29,29,30,29,29,29
	DS.B	10
	DC.B	0,0,0,0,0,0,0,0
	DS.B	10 

ASCSC	DC.B	0,0,0,0,0,0,0,0

PLACT	DC.L	0

MESSFAM DC.B	8,1,12,12,0,16,6,0,6,1,14,5,255
MESSP	DC.B	18,20,5,21,21,0,1,15,27,0,11,5,27,255

PRESS:	JSR	GETJOY2
	tst.w	D0
	BNE.S	PRESS1
	JSR	GETJOY2
	tst.w	D0
	BRA.S	PRESS
PRESS1:	RTS

PAUZA	MOVE.L	#65000,D0
PAUZA1	NOP
	NOP
	DBRA	D0,PAUZA1
	RTS

score	dc.b	0,0,0,0
	ds.w	0

	ds.w	250
stack:	ds.w	1
	ds.w	250

	end

