From 83377b6bea1fa97242ecebb25d993bd0156522cb Mon Sep 17 00:00:00 2001 From: spannerisms <32842036+spannerisms@users.noreply.github.com> Date: Tue, 13 Jun 2023 07:28:25 -0400 Subject: [PATCH] fast hearts --- hooks.asm | 4 +++ newhud.asm | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 94 insertions(+) diff --git a/hooks.asm b/hooks.asm index 96f0ee2..617eb55 100755 --- a/hooks.asm +++ b/hooks.asm @@ -1343,6 +1343,10 @@ JSL RNG_Enemy_Drops ;================================================================================ ; HUD Changes ;-------------------------------------------------------------------------------- +org $8DFDCB +JSL UpdateHearts +RTS + org $8DFC4C ; <- 6FC4C - headsup_display.asm : 836 (LDA $7EF36E : AND.w #$00FF : ADD.w #$0007 : AND.w #$FFF8 : TAX) JML OnDrawHud : NOP #197 ; why? it's not hurting anyone lol ReturnFromOnDrawHud: diff --git a/newhud.asm b/newhud.asm index 6b93f81..fc1b42b 100644 --- a/newhud.asm +++ b/newhud.asm @@ -353,3 +353,93 @@ HUDHex4Digit_Long: JSR HUDHex4Digit REP #$20 RTL + +;=================================================================================================== + +UpdateHearts: + PHB + + REP #$20 + + SEP #$10 + + LDX.b #$7E + PHX + PLB + + LDA.w $7EF36C + LSR + LSR + LSR + AND.w #$1F1F + + + TAX + XBA + TAY + + LDA.w #HUDTileMapBuffer+$068 + STA.b $07 + STA.b $09 + +.next_filled_heart + CPX.b #$01 + BMI .done_hearts + + LDA.w #$24A0 + + CPY.b #$01 + BPL .add_heart + + INC + INC + +.add_heart + STA.b ($07) + + DEY + DEX + + LDA.b $07 + INC + INC + CMP.w #HUDTileMapBuffer+$07C + BEQ .next_row + + CMP.w #HUDTileMapBuffer+$0BC + BNE .fine + +.next_row + ADC.w #$002B + +.fine + STA.b $07 + + CPY.b #$00 + BNE .next_filled_heart + + STA.b $09 + BRA .next_filled_heart + +.done_hearts + LDA.w $7EF36D + AND.w #$0007 + BEQ .skip_partial + + CMP.w #$0005 + LDA.w #$24A0 + BCS .more_than_half + + INC + +.more_than_half + + STA.b ($09) + +.skip_partial + SEP #$30 + + PLB + RTL + +;===================================================================================================