update time system defines

This commit is contained in:
scawful
2025-01-19 22:13:13 -05:00
parent 7adb541a6a
commit 2303a450dc
5 changed files with 67 additions and 63 deletions

View File

@@ -27,7 +27,7 @@ UpdateBunnyPalette:
.loop
LDA.l bunny_palette, X
PHX
STA.l !pal_color
STA.l !SubPalColor
JSL ColorSubEffect
PLX
STA $7EC6E0, X

View File

@@ -15,7 +15,7 @@ UpdateDekuPalette:
.loop
LDA.l deku_palette, X
PHX
STA.l !pal_color
STA.l !SubPalColor
JSL ColorSubEffect
PLX
STA $7EC6E0, X

View File

@@ -11,7 +11,7 @@ UpdateWolfPalette:
.loop
LDA.l WolfPalette, X
PHX
STA.l !pal_color
STA.l !SubPalColor
JSL ColorSubEffect
PLX
STA $7EC6E0, X

View File

@@ -19,7 +19,7 @@ UpdateZoraPalette:
.loop
LDA.l zora_palette, X
PHX
STA.l !pal_color
STA.l !SubPalColor
JSL ColorSubEffect
PLX
STA $7EC6E0, X

View File

@@ -12,7 +12,7 @@ TimeSpeed = $7EE002
; HUD Template adjusts timer's color
org $0DFF07
db $10, $24, $11, $24
db $10, $24, $11, $24
db $6C, $25
db $90, $24, $90, $24
db $6C, $25, $90, $24, $90, $24
@@ -20,14 +20,14 @@ org $0DFF07
; Sprite_Main.dont_reset_drag
; Executes every frame to update the clock
org $068361
JSL HUD_ClockDisplay
JSL HUD_ClockDisplay
pullpc
HUD_ClockDisplay:
{
JSR RunClock
JSR DrawClockToHud
JSL $09B06E ; Restore Garnish_ExecuteUpperSlots_long
RTL
JSR RunClock
JSR DrawClockToHud
JSL $09B06E ; Restore Garnish_ExecuteUpperSlots_long
RTL
}
; Zarby Intro and Credits fix
@@ -87,7 +87,7 @@ DrawClockToHud:
STA.l !hud_min_high
LDA #$30 : STA.l !hud_min_high+1 ; white palette
.finish_draw
INX : CPX #$02 : BMI .debut
INX : CPX #$02 : BMI .debut
RTS
}
@@ -284,24 +284,24 @@ org $00FC6A : JSL CheckIfNight16Bit
; ----[ Day / Night system * palette effect ]----
; =========================================================
!blue_value = $7EE010
!green_value = $7EE012
!red_value = $7EE014
!BlueVal = $7EE010
!GreenVal = $7EE012
!RedVal = $7EE014
!temp_value = $7EE016
!pal_color = $7EE018
!TempPalColor = $7EE016
!SubPalColor = $7EE018
Overworld_CopyPalettesToCache = $02C769
org $02FF80 ; free space on bank $02
PaletteBufferToEffective:
JSR $C769 ; $02:C65F -> palette buffer to effective routine
RTL
JSR $C769 ; $02:C65F -> palette buffer to effective routine
RTL
RomToPaletteBuffer:
JSR $AAF4 ; $02:AAF4 -> change buffer palette of trees,houses,rivers,etc.
JSR $C692 ; $02:C692 -> rom to palette buffer for other colors
RTL
JSR $AAF4 ; $02:AAF4 -> change buffer palette of trees,houses,rivers,etc.
JSR $C692 ; $02:C692 -> rom to palette buffer for other colors
RTL
PalBuf300_HUD = $7EC300
PalBuf340_BG = $7EC340
@@ -323,14 +323,14 @@ org $1BEF84 : JSL LoadDayNightPaletteEffect
pullpc
LoadDayNightPaletteEffect:
{
STA.l !pal_color : CPX #$0041 : BPL .title_check
STA.l !SubPalColor : CPX #$0041 : BPL .title_check
STA.l PalBuf300_HUD, X
RTL
.title_check
; title or file select screen ?
LDA $10 : AND #$00FF : CMP #$0002 : BCS .outin_check
LDA.l !pal_color
LDA.l !SubPalColor
STA.l PalBuf300_HUD, X
RTL
.outin_check
@@ -339,13 +339,13 @@ LoadDayNightPaletteEffect:
CMP.w #$0012 : BCS .restorecode
BRA .overworld
.restorecode
LDA.l !pal_color
LDA.l !SubPalColor
STA.l PalBuf300_HUD, X
RTL
.overworld
LDA $1B : AND #$00FF : BEQ .outdoors2
LDA.l !pal_color
LDA.l !SubPalColor
STA.l PalBuf300_HUD,X
RTL
.outdoors2
@@ -359,43 +359,47 @@ LoadDayNightPaletteEffect:
; =========================================================
!SmallestBlue = #$0400
!SmallestGreen = #$0020
!SmallestRed = #$0001
ColorSubEffect:
{
LDA.l Hours : AND #$00FF : CLC : ADC.l Hours ; hours * 2
AND #$00FF : TAX
LDA.l Hours : AND #$00FF : CLC : ADC.l Hours ; hours * 2
AND #$00FF : TAX
; Subtract amount to blue field based on a table
LDA.l !pal_color : AND #$7C00 : STA !blue_value
SEC : SBC.l .blue, X : STA !temp_value
LDA.l !SubPalColor : AND #$7C00 : STA !BlueVal
SEC : SBC.l .blue, X : STA !TempPalColor
; mask out everything except the blue bits
AND #$7C00 : CMP !temp_value : BEQ .no_blue_sign_change ; overflow ?
LDA #$0400 ; LDA smallest blue value
AND #$7C00 : CMP !TempPalColor : BEQ .no_blue_sign_change ; overflow ?
LDA !SmallestBlue
.no_blue_sign_change
STA.l !blue_value
STA.l !BlueVal
; Subtract amount to blue field based on a table
LDA !pal_color : AND #$03E0 : STA !green_value
SEC : SBC.l .green, X : STA.l !temp_value
LDA !SubPalColor : AND #$03E0 : STA !GreenVal
SEC : SBC.l .green, X : STA.l !TempPalColor
; Mask out everything except the green bits
AND #$03E0 : CMP !temp_value : BEQ .no_green_sign_change ; overflow ?
LDA #$0020 ; LDA smallest green value
AND #$03E0 : CMP !TempPalColor : BEQ .no_green_sign_change ; overflow ?
LDA !SmallestGreen
.no_green_sign_change
STA.l !green_value
STA.l !GreenVal
; substract amount to red field based on a table
LDA.l !pal_color : AND #$001F : STA.l !red_value
SEC : SBC.l .red, X : STA.l !temp_value
LDA.l !SubPalColor : AND #$001F : STA.l !RedVal
SEC : SBC.l .red, X : STA.l !TempPalColor
; mask out everything except the red bits
AND #$001F : CMP !temp_value : BEQ .no_red_sign_change ; overflow ?
LDA #$0001 ; LDA smallest red value
AND #$001F : CMP !TempPalColor : BEQ .no_red_sign_change ; overflow ?
LDA !SmallestRed
.no_red_sign_change
STA.l !red_value
STA.l !RedVal
LDA.l !blue_value : ORA.l !green_value : ORA.l !red_value
RTL
LDA.l !BlueVal : ORA.l !GreenVal : ORA.l !RedVal
RTL
; color_sub_tables : 24 * 2 bytes each = 48 bytes
; (2 bytes = 1 color sub for each hour)
@@ -450,34 +454,34 @@ MosaicFix:
SubAreasFix:
{
BEQ .no_effect
STA.l !pal_color
PHX
STA.l !SubPalColor
PHX
REP #$20
JSL ColorSubEffect
SEP #$20
PLX
PLX
.no_effect
STA.l PalBuf300_HUD
STA.l PalBuf340_BG
RTL
STA.l PalBuf300_HUD
STA.l PalBuf340_BG
RTL
}
GlovePalettePosition = $7EC4FA
GlovesFix:
{
STA.l !pal_color
LDA $1B : AND #$00FF : BEQ .outdoors3
LDA.l !pal_color
STA.l !SubPalColor
LDA $1B : AND #$00FF : BEQ .outdoors3
LDA.l !SubPalColor
STA GlovePalettePosition
RTL
.outdoors3:
PHX
JSL ColorSubEffect
PLX
STA GlovePalettePosition
RTL
PHX
JSL ColorSubEffect
PLX
STA GlovePalettePosition
RTL
}
ColorBgFix:
@@ -488,7 +492,7 @@ ColorBgFix:
LDA.b $10 : CMP.b #$17 : BEQ .vanilla
REP #$30
PLA
STA.l !pal_color
STA.l !SubPalColor
JSL ColorSubEffect
STA.l PalCgram500_HUD
STA.l PalCgram540_BG
@@ -534,7 +538,7 @@ FixShockPalette:
PHA
LDA.b $1B : BNE .indoors
PLA
STA !pal_color
STA !SubPalColor
PHX
JSL ColorSubEffect
PLX