Public feed #531707

Unnamed

public text v1 · immutable
Raw Edit
·published 2007-06-02 22:42 UTC
rendered paste body
Tails_FlyingSwimming:			; CODE XREF: ROM:000147BCj
		bsr.w	Tails_Move_FlySwim
		bsr.w	Tails_InputAcceleration_Freespace
		bsr.w	Tails_Check_Screen_Boundaries
		jsr	MoveSprite2
		bsr.w	sub_11E8C
		movem.l	a4-a6,-(sp)
		bsr.w	sub_153C2
		movem.l	(sp)+,a4-a6
		tst.w	($FFFFFF08).w	; test player - change this to the correct byte
		bne.s	locret_14820	; if attached player is not Sonic (and therefore, must be Tails/Knuckles) then return
		lea	($FFFFF73E).w,a2
		lea	($FFFFB000).w,a1
		move.w	($FFFFF604).w,d0
		bsr.w	Tails_Carry_Sonic

locret_14820:				; CODE XREF: ROM:0001480Ej
		rts

; ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ S U B	R O U T	I N E ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ


Tails_Move_FlySwim:			; CODE XREF: ROM:Tails_FlyingSwimmingp
		move.b	($FFFFFE05).w,d0
		andi.b	#1,d0
		beq.s	loc_14836
		tst.b	$1C(a0)
		beq.s	loc_14836
		subq.b	#1,$1C(a0)

loc_14836:				; CODE XREF: Tails_Move_FlySwim+8j
					; Tails_Move_FlySwim+Ej
		cmpi.b	#1,$20(a0)
		beq.s	loc_14860
		cmpi.w	#$FF00,$12(a0)
		blt.s	loc_14858
		subi.w	#$20,$12(a0) ; ' '
		addq.b	#1,$20(a0)
		cmpi.b	#$20,$20(a0) ; ' '
		bne.s	loc_1485E

loc_14858:				; CODE XREF: Tails_Move_FlySwim+22j
		move.b	#1,$20(a0)

loc_1485E:				; CODE XREF: Tails_Move_FlySwim+34j
		bra.s	loc_14892
; ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

loc_14860:				; CODE XREF: Tails_Move_FlySwim+1Aj
		move.b	($FFFFF66B).w,d0
		andi.b	#$70,d0	; 'p'
		beq.s	loc_1488C
		cmpi.w	#$FF00,$12(a0)
		blt.s	loc_1488C
		tst.b	$1C(a0)
		beq.s	loc_1488C
		btst	#6,$22(a0)
		beq.s	loc_14886
		tst.b	($FFFFF73E).w
		bne.s	loc_1488C

loc_14886:				; CODE XREF: Tails_Move_FlySwim+5Cj
		move.b	#2,$20(a0)

loc_1488C:				; CODE XREF: Tails_Move_FlySwim+46j
					; Tails_Move_FlySwim+4Ej ...
		addi.w	#8,$12(a0)

loc_14892:				; CODE XREF: Tails_Move_FlySwim:loc_1485Ej
		move.w	($FFFFEE18).w,d0
		addi.w	#$10,d0
		cmp.w	$C(a0),d0
		blt.s	Tails_Set_Flying_Animation
		tst.w	$12(a0)
		bpl.s	Tails_Set_Flying_Animation
		move.w	#0,$12(a0)
; End of function Tails_Move_FlySwim


; ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ S U B	R O U T	I N E ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ


Tails_Set_Flying_Animation:		; CODE XREF: ROM:00013BF2p
					; ROM:00013C34p ...
		btst	#6,$22(a0)
		bne.s	loc_14914
		moveq	#$20,d0	; ' '
		tst.w	($FFFFFFE8).w
		bne.s	loc_148F4
		tst.w	$12(a0)
		bpl.s	loc_148C4
		moveq	#$21,d0	; '!'

loc_148C4:				; CODE XREF: Tails_Set_Flying_Animation+14j
		tst.b	($FFFFF73E).w
		beq.s	loc_148CC
		addq.b	#2,d0

loc_148CC:				; CODE XREF: Tails_Set_Flying_Animation+1Cj
		tst.b	$1C(a0)
		bne.s	loc_148F4
		moveq	#$24,d0	; '$'
		move.b	d0,$20(a0)
		tst.b	4(a0)
		bpl.s	locret_148F2
		move.b	($FFFFFE05).w,d0
		addq.b	#8,d0
		andi.b	#$F,d0
		bne.s	locret_148F2
		moveq	#$FFFFFFBB,d0
		jsr	(PlaySound_Special).l

locret_148F2:				; CODE XREF: Tails_Set_Flying_Animation+30j
					; Tails_Set_Flying_Animation+3Cj
		rts
; ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

loc_148F4:				; CODE XREF: Tails_Set_Flying_Animation+Ej
					; Tails_Set_Flying_Animation+24j
		move.b	d0,$20(a0)
		tst.b	4(a0)
		bpl.s	locret_14912
		move.b	($FFFFFE05).w,d0
		addq.b	#8,d0
		andi.b	#$F,d0
		bne.s	locret_14912
		moveq	#$FFFFFFBA,d0
		jsr	(PlaySound_Special).l

locret_14912:				; CODE XREF: Tails_Set_Flying_Animation+50j
					; Tails_Set_Flying_Animation+5Cj
		rts
; ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

loc_14914:				; CODE XREF: Tails_Set_Flying_Animation+6j
		moveq	#$25,d0	; '%'
		tst.w	$12(a0)
		bpl.s	loc_1491E
		moveq	#$26,d0	; '&'

loc_1491E:				; CODE XREF: Tails_Set_Flying_Animation+6Ej
		tst.b	($FFFFF73E).w
		beq.s	loc_14926
		moveq	#$27,d0	; '''

loc_14926:				; CODE XREF: Tails_Set_Flying_Animation+76j
		tst.b	$1C(a0)
		bne.s	loc_1492E
		moveq	#$28,d0	; '('

loc_1492E:				; CODE XREF: Tails_Set_Flying_Animation+7Ej
		move.b	d0,$20(a0)
		rts
; End of function Tails_Set_Flying_Animation