;*********************************************************************
;*								*
;*	------------------------				*
;*		STARFOX2 					*
;*	------------------------				*
;*								*
;*	File 		: mover.mc				*
;* 	Description	: gameover/continue bitmap program	*
;*	Date		: 1994.11.28				*
;*	Author		: H.Yajima				*
;*								*
;*********************************************************************
;
;
;
;
;
;*********************************************************************
;		*************************************************
; continue test	*************************************************
;		*************************************************
;*********************************************************************

m_continue

	iwt	r0,#idx_testmes_retry
	iwt	r1,#70h
	iwt	r2,#80h
	ibt	r3,#0eh
	Mjsr	mgameover_message

	iwt	r0,#idx_testmes_newmap
	iwt	r1,#70h
	iwt	r2,#90h
	ibt	r3,#0eh
	Mjsr	mgameover_message

	iwt	r0,#idx_testmes_title
	iwt	r1,#70h
	iwt	r2,#0a0h
	ibt	r3,#0eh
	Mjsr	mgameover_message

	Mstop


;********************************************************************
;		************************************************
; gameover test	************************************************
;		************************************************
;********************************************************************

m_gameover_gameover
	sub	r0
	romb
	ramb
	cmode



	bra	gameover_onlymessage

;---------------------------------------------------------------------

m_gameover_partner
	sub	r0
	romb
	ramb
	cmode

;=====================================================================
; gameover character
;---------------------------------------------------------------------

	Mdrawface_entry	18h,72h,face_peppy,0

;=====================================================================
; Display Gameover Message
;---------------------------------------------------------------------


	iwt	r0,#idx_testmes_continue
	iwt	r1,#40h
	iwt	r2,#70h
	ibt	r3,#0eh
	Mjsr	mgameover_message

	iwt	r0,#idx_testmes_yes
	iwt	r1,#70h
	iwt	r2,#80h
	ibt	r3,#0eh
	Mjsr	mgameover_message

	iwt	r0,#idx_testmes_no
	iwt	r1,#70h
	iwt	r2,#90h
	ibt	r3,#0eh
	Mjsr	mgameover_message


gameover_onlymessage
	iwt	r0,#idx_testmes_over
	iwt	r1,#50h
	iwt	r2,#30h
	ibt	r3,#0eh
	Mjsr	mgameover_message

;=====================================================================
; Display Gameover Message
;---------------------------------------------------------------------
;=====================================================================

	Mstop


;---------------------------------------------------------------------
Mmessage_testtable_start	macro
testtable_list	= 1
	endm	

Mmessage_testtable	macro	[addr]
	dw	{addr}&WM-2
idx_{addr}	equ	testtable_list
testtable_list	= testtable_list+1
	endm

;---------------------------------------------------------------------

testmessage_table
	Mmessage_testtable_start
	Mmessage_testtable	testmes_over
	Mmessage_testtable	testmes_continue
	Mmessage_testtable	testmes_yes
	Mmessage_testtable	testmes_no
	Mmessage_testtable	testmes_retry
	Mmessage_testtable	testmes_newmap
	Mmessage_testtable	testmes_title

	Mmessage_testtable	titlemes_mission
	Mmessage_testtable	titlemes_battle
	Mmessage_testtable	titlemes_test
	Mmessage_testtable	titlemes_tranning
	Mmessage_testtable	titlemes_config

	Mmessage_testtable	titlemes_easy
	Mmessage_testtable	titlemes_normal
	Mmessage_testtable	titlemes_hard

	Mmessage_testtable	titlemes_ground
	Mmessage_testtable	titlemes_space
	Mmessage_testtable	titlemes_room


;---------------------------------------------------------------------

testmes_over		db	"GAME OVER",0
testmes_continue	db	"PARTNER CONTINUE ?",0
testmes_yes		db	"YES",0
testmes_no		db	"NO",0
testmes_retry	db	"RETRY",0
testmes_newmap	db	"NEWMAP",0
testmes_title	db	"TITLE",0

;---------------------------------------------------------------------

titlemes_mission	db	"MISSION",0
titlemes_battle	db	"BATTLE",0
titlemes_test	db	"TEST",0
titlemes_tranning	db	"TRAINNING",0
titlemes_config	db	"CONFIG",0

titlemes_easy	db	"EASY",0
titlemes_normal	db	"NORMAL",0
titlemes_hard	db	"HARD",0

titlemes_ground	db	"GROUND",0
titlemes_space	db	"SPACE",0
titlemes_room	db	"ROOM",0

;********************************************************************
; 	----------------------	
;	 draw message library
;	----------------------
;********************************************************************
;
; << input >>
;	r0 ... message number index
;	r1 ... position X
;	r2 ... position Y
;	r3 ... message color
;	XX ... message offset
;
; << output >>
;	r0 ... m_messageend	0  => messageend
;				!0 => messagenext
;
;--------------------------------------------------------------------
;;
;;	db	message,dataX,dataY,color
;;	db	message,dataX,dataY,color
;;	db	0			  ... end
;;
;;
;;
;;	r14	ROM pointer
;;
;--------------------------------------------------------------------
;;
;;
;--------------------------------------------------------------------

;********************************************************************
;	message draw program
;********************************************************************
;
;
;
;
;--------------------------------------------------------------------

mprint_yjmessage

	sm	[m_yjmessage_rts],r11

.loop
	ibt	r0,#mprint_yjmessage>>16
	romb

	getb		; r0 = message number
	moves	r0,r0
	beq	.exit
	inc	r14

	to	r1	; r1 = position (X)
	getb
	inc	r14
	to	r2	; r2 = position (Y)
	getb
	inc	r14
	to	r3	; r3 = color
	getb
	inc	r14

	sm	[m_yjmessage_pointer],r14 ; >>
	Mjsr	mgameover_message
	lm	r14,[m_yjmessage_pointer] ; <<
	bra	.loop
	nop

.exit
	lm	r15,[m_yjmessage_rts]
	nop


;********************************************************************
;	message draw program
;********************************************************************

mgameover_message

	Msave_r11

	sm	[m_x1],r1		; Set message position X
	sm	[m_y1],r2		; Set message position Y
	sm	[m_textcolour],r3	; Set message color

	to	r1			; r1 = message number
	add	r0
	ibt	r2,#0			; message OFFSET
	Mindex_message	testmessage_table


	ibt	r0,#100			; 
	sm	[m_gyoulimit],r0	; font parameter
	iwt	r0,#normalfont
	sms	[m_font],r0
	iwt	r0,#mapmessage_width
	sms	[m_visualwidth],r0

	Mjsl	mprintWWstringN_l

	Mload_r11

;====================================================================
;====================================================================
; END END END END END END END END END END END END END END END END
;====================================================================
;====================================================================

