From ea83cfebea29bd99bbbc9c986568de64b803e6f3 Mon Sep 17 00:00:00 2001 From: Randy Thiemann Date: Tue, 5 Dec 2023 06:19:46 +0100 Subject: [PATCH] 1.7 --- bin/PandorasBlocks.gbc | Bin 262144 -> 262144 bytes bin/PandorasBlocks.map | 506 +++++++++++++------------- bin/PandorasBlocks.pocket | Bin 262144 -> 262144 bytes bin/PandorasBlocks.sym | 440 +++++++++++----------- src/grading.asm | 1 + src/include/globals.asm | 4 +- src/main.asm | 3 + src/res/other_data.inc | 14 +- src/res/sources/complete_gameplay.gbr | Bin 39009 -> 39009 bytes src/res/sources/tiles_gameplay_c.gbr | Bin 39009 -> 39009 bytes src/res/sources/tiles_gameplay_m.gbr | Bin 39009 -> 39009 bytes src/res/sources/tiles_title.gbr | Bin 39009 -> 39009 bytes src/sprites.asm | 2 +- src/time.asm | 4 + 14 files changed, 491 insertions(+), 483 deletions(-) diff --git a/bin/PandorasBlocks.gbc b/bin/PandorasBlocks.gbc index 9b13dd47a014e4b27288e64fc74bd843fe0f003b..12a5ee12045534c7a4bb2d05db191ea9f843ffdd 100644 GIT binary patch delta 4500 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 diff --git a/bin/PandorasBlocks.map b/bin/PandorasBlocks.map index 8e109cc..028bd14 100644 --- a/bin/PandorasBlocks.map +++ b/bin/PandorasBlocks.map @@ -404,141 +404,141 @@ ROM0 bank #0: $3077 = InitTargetHSTable.chil $307c = InitTargetHSTable.myco $307f = InitTargetHSTable.store - SECTION: $3092-$31db ($014a bytes) ["Progress Data"] - $3092 = sProgressData - SECTION: $31dc-$3323 ($0148 bytes) ["Time Functions"] - $31dc = TimeInit - $3205 = StartCountdown - $3213 = ResetGameTime - $3227 = CheckTorikan - $323d = CheckTorikan.failure - $323f = CheckTorikan.success - $3242 = HandleTimers - $3268 = HandleTimers.reduce - $3275 = HandleTimers.clock - $328f = HandleTimers.go - $32b3 = CheckCOOL_REGRET - $32cb = CheckCOOL_REGRET.failure - $32cd = CheckCOOL_REGRET.success - $32d0 = HandleSectionTimers - $32ec = HandleSectionTimers.continue - $3300 = HandleSectionTimers.sectiongo - SECTION: $3324-$3463 ($0140 bytes) ["Hi Score Data"] - $3324 = sHiscoreDefaultData - SECTION: $3464-$358d ($012a bytes) ["Input Functions"] - $3464 = InputInit - $3476 = GetInput - $3476 = GetInput.btns - $3483 = GetInput.readA - $3487 = GetInput.setA - $3492 = GetInput.clearA - $3495 = GetInput.readB - $3499 = GetInput.setB - $34a4 = GetInput.clearB - $34a7 = GetInput.readSelect - $34ab = GetInput.setSelect - $34b6 = GetInput.clearSelect - $34b9 = GetInput.readStart - $34bd = GetInput.setStart - $34c8 = GetInput.clearStart - $34cb = GetInput.dpad - $34d8 = GetInput.readUp - $34dc = GetInput.setUp - $34e7 = GetInput.clearUp - $34ea = GetInput.readDown - $34ee = GetInput.setDown - $34f9 = GetInput.clearDown - $34fc = GetInput.readLeft - $3500 = GetInput.setLeft - $350b = GetInput.clearLeft - $350e = GetInput.readRight - $3512 = GetInput.setRight - $351d = GetInput.clearRight - $3520 = GetInput.priorities - $352d = GetInput.jumps - $353c = GetInput.dlru - $354c = GetInput.ulrd - $355c = GetInput.lrud - $3567 = GetInput.udlr - $3572 = GetInput.zeroud - $3578 = GetInput.zerolr - $357e = GetInput.zerolrd - $3586 = GetInput.zerolru - SECTION: $358e-$366d ($00e0 bytes) ["Score Functions"] - $358e = ScoreInit - $35b6 = IncreaseScore - $35ee = IncreaseScore.doConvert - $35f0 = !0 - $3606 = IncreaseScore.carry - $3608 = IncreaseScore.postConvert - $3615 = !1 - $361c = IncreaseScore.preAddDigit - $3644 = IncreaseScore.addDigit - $365a = IncreaseScore.nextDigit - SECTION: $366e-$3738 ($00cb bytes) ["Title Function Trampolines"] - $366e = SwitchToTitle - $3677 = TitleEventLoopHandler - $3681 = TitleVBlankHandler - $368b = PersistLevel - $3699 = DrawSpeedMain - $36e9 = DrawSpeedSettings - SECTION: $3739-$37e9 ($00b1 bytes) ["Progress Functions"] - $3739 = SetProgress - $3743 = SetProgress.loop - $3747 = SetProgress.correct - $376e = SetProgress.wvr_u1 - $377a = SetProgress.wvr_u2 - $3788 = SetProgress.wvr_u3 - $3794 = SetProgress.wvr_u4 - $37a2 = SetProgress.wvr_u5 - $37ae = SetProgress.wvr_u6 - $37bc = SetProgress.wvr_u7 - $37c8 = SetProgress.wvr_u8 - $37d6 = SetProgress.wvr_u9 - $37e2 = SetProgress.wvr_u10 - SECTION: $37ea-$388a ($00a1 bytes) ["Code Entry Point"] - $37ea = Main - $3813 = Main.notgbc - $381f = Main.wvr_u1 - $384c = EventLoop - $3865 = EventLoop.eventloopjumps - $386e = EventLoopPostHandler - $3870 = EventLoopPostHandler.wvb_u2 - $3882 = EventLoopPostHandler.vblankjumps - SECTION: $388b-$38c0 ($0036 bytes) ["Grading Functions Unbanked"] - $388b = GradeInit - $3894 = UpdateGrade - $389d = DecayGradeProcess - $38a6 = DecayGradeDelay - $38af = TGM3REGRETHandler - $38b8 = TGM3COOLHandler - SECTION: $38c1-$38ee ($002e bytes) ["Memory Functions"] - $38c1 = UnsafeMemCopy - $38ca = SafeMemCopy.wvr_u1 - $38ca = SafeMemCopy - $38d9 = UnsafeMemSet - $38e1 = SafeMemSet - $38e1 = SafeMemSet.wvr_u2 - SECTION: $38ef-$3914 ($0026 bytes) ["Gameplay Function Trampolines"] - $38ef = SwitchToGameplay - $38f8 = SwitchToGameplayBig - $3901 = GamePlayEventLoopHandler - $390b = GamePlayBigEventLoopHandler - SECTION: $3915-$3939 ($0025 bytes) ["Interrupt Initialization Functions"] - $3915 = EnableScreenSquish - $392f = DisableScreenSquish - SECTION: $393a-$395b ($0022 bytes) ["OAM Functions"] - $393a = CopyOAMHandler - $3946 = ClearOAM - SECTION: $395c-$396c ($0011 bytes) ["Intro Effect Trampoline"] - $395c = DoIntroEffect - SECTION: $396d-$397b ($000f bytes) ["Banking Functions"] - $396d = BankingInit - SECTION: $397c-$3985 ($000a bytes) ["OAM DMA Code"] - $397c = OAMDMA - $3986 = OAMDMAEnd - EMPTY: $3986-$3fff ($067a bytes) - TOTAL EMPTY: $0682 bytes + SECTION: $3092-$31de ($014d bytes) ["Time Functions"] + $3092 = TimeInit + $30bb = StartCountdown + $30c9 = ResetGameTime + $30dd = CheckTorikan + $30f3 = CheckTorikan.failure + $30f5 = CheckTorikan.success + $30f8 = HandleTimers + $311e = HandleTimers.reduce + $312b = HandleTimers.clock + $3145 = HandleTimers.go + $3169 = CheckCOOL_REGRET + $3181 = CheckCOOL_REGRET.failure + $3183 = CheckCOOL_REGRET.success + $3186 = HandleSectionTimers + $31a7 = HandleSectionTimers.continue + $31bb = HandleSectionTimers.sectiongo + SECTION: $31df-$3328 ($014a bytes) ["Progress Data"] + $31df = sProgressData + SECTION: $3329-$3468 ($0140 bytes) ["Hi Score Data"] + $3329 = sHiscoreDefaultData + SECTION: $3469-$3592 ($012a bytes) ["Input Functions"] + $3469 = InputInit + $347b = GetInput + $347b = GetInput.btns + $3488 = GetInput.readA + $348c = GetInput.setA + $3497 = GetInput.clearA + $349a = GetInput.readB + $349e = GetInput.setB + $34a9 = GetInput.clearB + $34ac = GetInput.readSelect + $34b0 = GetInput.setSelect + $34bb = GetInput.clearSelect + $34be = GetInput.readStart + $34c2 = GetInput.setStart + $34cd = GetInput.clearStart + $34d0 = GetInput.dpad + $34dd = GetInput.readUp + $34e1 = GetInput.setUp + $34ec = GetInput.clearUp + $34ef = GetInput.readDown + $34f3 = GetInput.setDown + $34fe = GetInput.clearDown + $3501 = GetInput.readLeft + $3505 = GetInput.setLeft + $3510 = GetInput.clearLeft + $3513 = GetInput.readRight + $3517 = GetInput.setRight + $3522 = GetInput.clearRight + $3525 = GetInput.priorities + $3532 = GetInput.jumps + $3541 = GetInput.dlru + $3551 = GetInput.ulrd + $3561 = GetInput.lrud + $356c = GetInput.udlr + $3577 = GetInput.zeroud + $357d = GetInput.zerolr + $3583 = GetInput.zerolrd + $358b = GetInput.zerolru + SECTION: $3593-$3672 ($00e0 bytes) ["Score Functions"] + $3593 = ScoreInit + $35bb = IncreaseScore + $35f3 = IncreaseScore.doConvert + $35f5 = !0 + $360b = IncreaseScore.carry + $360d = IncreaseScore.postConvert + $361a = !1 + $3621 = IncreaseScore.preAddDigit + $3649 = IncreaseScore.addDigit + $365f = IncreaseScore.nextDigit + SECTION: $3673-$373d ($00cb bytes) ["Title Function Trampolines"] + $3673 = SwitchToTitle + $367c = TitleEventLoopHandler + $3686 = TitleVBlankHandler + $3690 = PersistLevel + $369e = DrawSpeedMain + $36ee = DrawSpeedSettings + SECTION: $373e-$37ee ($00b1 bytes) ["Progress Functions"] + $373e = SetProgress + $3748 = SetProgress.loop + $374c = SetProgress.correct + $3773 = SetProgress.wvr_u1 + $377f = SetProgress.wvr_u2 + $378d = SetProgress.wvr_u3 + $3799 = SetProgress.wvr_u4 + $37a7 = SetProgress.wvr_u5 + $37b3 = SetProgress.wvr_u6 + $37c1 = SetProgress.wvr_u7 + $37cd = SetProgress.wvr_u8 + $37db = SetProgress.wvr_u9 + $37e7 = SetProgress.wvr_u10 + SECTION: $37ef-$3895 ($00a7 bytes) ["Code Entry Point"] + $37ef = Main + $3818 = Main.notgbc + $3827 = Main.wvr_u1 + $3857 = EventLoop + $3870 = EventLoop.eventloopjumps + $3879 = EventLoopPostHandler + $387b = EventLoopPostHandler.wvb_u2 + $388d = EventLoopPostHandler.vblankjumps + SECTION: $3896-$38cb ($0036 bytes) ["Grading Functions Unbanked"] + $3896 = GradeInit + $389f = UpdateGrade + $38a8 = DecayGradeProcess + $38b1 = DecayGradeDelay + $38ba = TGM3REGRETHandler + $38c3 = TGM3COOLHandler + SECTION: $38cc-$38f9 ($002e bytes) ["Memory Functions"] + $38cc = UnsafeMemCopy + $38d5 = SafeMemCopy.wvr_u1 + $38d5 = SafeMemCopy + $38e4 = UnsafeMemSet + $38ec = SafeMemSet + $38ec = SafeMemSet.wvr_u2 + SECTION: $38fa-$391f ($0026 bytes) ["Gameplay Function Trampolines"] + $38fa = SwitchToGameplay + $3903 = SwitchToGameplayBig + $390c = GamePlayEventLoopHandler + $3916 = GamePlayBigEventLoopHandler + SECTION: $3920-$3944 ($0025 bytes) ["Interrupt Initialization Functions"] + $3920 = EnableScreenSquish + $393a = DisableScreenSquish + SECTION: $3945-$3966 ($0022 bytes) ["OAM Functions"] + $3945 = CopyOAMHandler + $3951 = ClearOAM + SECTION: $3967-$3977 ($0011 bytes) ["Intro Effect Trampoline"] + $3967 = DoIntroEffect + SECTION: $3978-$3986 ($000f bytes) ["Banking Functions"] + $3978 = BankingInit + SECTION: $3987-$3990 ($000a bytes) ["OAM DMA Code"] + $3987 = OAMDMA + $3991 = OAMDMAEnd + EMPTY: $3991-$3fff ($066f bytes) + TOTAL EMPTY: $0677 bytes ROMX bank #1: SECTION: $4000-$4007 ($0008 bytes) ["Bank ID BANK_OTHER"] @@ -2192,123 +2192,123 @@ ROMX bank #4: $68c0 = sGameplayUngradedTileMap $68c0 = sGameplayTileMapEnd $6b60 = sGameplayUngradedTileMapEnd - SECTION: $6b60-$7284 ($0725 bytes) ["Grading Functions Banked"] + SECTION: $6b60-$7287 ($0728 bytes) ["Grading Functions Banked"] $6b60 = GradeInitB - $6bad = GradeInitB.grade9start - $6bb2 = UpdateGradeB - $6bb2 = GradeInitB.end - $6bc0 = UpdateGradeB.gradejumptable - $6bd5 = DecayGradeProcessB - $6be3 = DecayGradeProcessB.gradejumptable - $6bf8 = DecayGradeDelayB - $6c06 = DecayGradeDelayB.gradejumptable - $6c1b = PrepareScore - $6c2e = DrawGradeProgressDMGT - $6c3a = !0 - $6c49 = DrawGradeProgressTGM3 - $6c55 = !1 - $6c64 = UpdateGradeDMGT - $6c9d = UpdateGradeDMGT.checklineclears - $6cb6 = UpdateGradeDMGT.clearrate - $6cc7 = UpdateGradeDMGT.combomult - $6cd4 = UpdateGradeDMGT.combo13 - $6ce5 = UpdateGradeDMGT.combo8 - $6cf6 = UpdateGradeDMGT.combo1 - $6d05 = UpdateGradeDMGT.prelevel - $6d14 = UpdateGradeDMGT.single - $6d24 = UpdateGradeDMGT.double - $6d35 = UpdateGradeDMGT.adddonce - $6d39 = UpdateGradeDMGT.triple - $6d4a = UpdateGradeDMGT.addtonce - $6d4e = UpdateGradeDMGT.tetris - $6d52 = UpdateGradeDMGT.levelmult - $6d6a = UpdateGradeDMGT.mult4 - $6d70 = UpdateGradeDMGT.mult3 - $6d75 = UpdateGradeDMGT.mult2 - $6d79 = UpdateGradeDMGT.mult1 - $6d7a = UpdateGradeDMGT.processgrade - $6da3 = UpdateGradeDMGT.increasegrademaybe - $6dc7 = UpdateGradeDMGT.gotgm - $6dd5 = DecayGradeDMGT - $6df8 = DecayGradeDMGT.nodecay - $6dff = DecayGradeDMGT.decay - $6e0d = UpdateGradeTGM1 - $6e20 = UpdateGradeTGM1.trygradeup - $6e3b = UpdateGradeTGM1.increasegrade - $6e50 = UpdateGradeTGM1.skipjingle - $6e5c = UpdateGradeTGM1.check300 - $6e7a = UpdateGradeTGM1.success300 - $6e81 = UpdateGradeTGM1.fail300 - $6e88 = UpdateGradeTGM1.check500 - $6ea6 = UpdateGradeTGM1.success500 - $6ead = UpdateGradeTGM1.fail500 - $6eb4 = UpdateGradeTGM1.check999 - $6eeb = UpdateGradeTGM1.success999 - $6f03 = UpdateGradeTGM1.fail999 - $6f09 = UpdateGradeDEAT - $6f15 = UpdateGradeDEAT.notgm - $6f3b = UpdateGradeDEAT.notm - $6f5e = UpdateGradeDEAT.disqualify - $6f7c = UpdateGradeSHIR - $6fbe = UpdateGradeSHIR.s5torikan - $6fce = UpdateGradeSHIR.s10torikan - $6fdd = UpdateGradeSHIR.disqualify - $6fec = UpdateGradeSHIR.l1000 - $7002 = UpdateGradeSHIR.l500 - $7018 = UpdateGradeTGM3 - $7018 = UpdateGradeTGM3.GradePoints - $7027 = !2 - $702c = UpdateGradeTGM3.GetOffset - $703e = UpdateGradeTGM3.loadpoints - $704b = UpdateGradeTGM3.multipliers - $7058 = !3 - $7072 = !4 - $7077 = UpdateGradeTGM3.levelmultiplier - $7090 = UpdateGradeTGM3.Level750 - $70a4 = UpdateGradeTGM3.under750 - $70aa = UpdateGradeTGM3.Level500 - $70b8 = UpdateGradeTGM3.Level250 - $70c7 = UpdateGradeTGM3.under250 - $70cb = UpdateGradeTGM3.Multiply - $70ce = !5 - $70d5 = UpdateGradeTGM3.IncreaseInternalGrade - $70e4 = UpdateGradeTGM3.nocool - $70f8 = TGM3UpdateDisplayedGrade - $710d = TGM3UpdateDisplayedGrade.update - $7126 = TGM3UpdateDisplayedGrade.notaboves10 - $7134 = CheckCOOL - $7148 = CheckCOOL.cool - $715a = CheckCOOL.nots10 - $7164 = DecayGradeTGM3 - $7179 = DecayGradeTGM3.points - $7199 = !6 - $719d = DecayGradeTGM3.GetOffset - $71a6 = DecayGradeTGM3.lpoints - $71ac = TGM3COOLHandlerB - $71d3 = TGM3COOLHandlerB.checkCOOL - $71e3 = TGM3COOLHandlerB.nocarry - $71e8 = TGM3COOLHandlerB.checkBaselineCOOL - $71f0 = TGM3COOLHandlerB.cool - $720a = TGM3COOLHandlerB.nocool - $7216 = TGM3REGRETHandlerB - $7232 = TGM3REGRETHandlerB.regret - $725f = TGM3StaffRollGradeUpdate - $7275 = TGM3StaffRollGradeUpdate.UpdateGrade - SECTION: $7285-$76a8 ($0424 bytes) ["Grading Data"] - $7285 = sDMGTGrading - $7339 = sDMGTGaugeLUT - $7439 = sTGM3GaugeLUT - $7549 = sTGM1GradeScores - $756b = sTGM3InternalGradeSystem - $760b = sTGM3GradeBoosts - $762a = sTGM3HowManyInternalGradesToDecrease - $7649 = sTGM3ComboMultipliers - $767b = sTGM3LevelMultiplier - $767e = sTGM3BaselineCOOL - $7690 = sTGM3REGRETConditions - $76a4 = sTGM3StaffrollGrading - EMPTY: $76a9-$7fff ($0957 bytes) - TOTAL EMPTY: $0957 bytes + $6bb0 = GradeInitB.grade9start + $6bb5 = UpdateGradeB + $6bb5 = GradeInitB.end + $6bc3 = UpdateGradeB.gradejumptable + $6bd8 = DecayGradeProcessB + $6be6 = DecayGradeProcessB.gradejumptable + $6bfb = DecayGradeDelayB + $6c09 = DecayGradeDelayB.gradejumptable + $6c1e = PrepareScore + $6c31 = DrawGradeProgressDMGT + $6c3d = !0 + $6c4c = DrawGradeProgressTGM3 + $6c58 = !1 + $6c67 = UpdateGradeDMGT + $6ca0 = UpdateGradeDMGT.checklineclears + $6cb9 = UpdateGradeDMGT.clearrate + $6cca = UpdateGradeDMGT.combomult + $6cd7 = UpdateGradeDMGT.combo13 + $6ce8 = UpdateGradeDMGT.combo8 + $6cf9 = UpdateGradeDMGT.combo1 + $6d08 = UpdateGradeDMGT.prelevel + $6d17 = UpdateGradeDMGT.single + $6d27 = UpdateGradeDMGT.double + $6d38 = UpdateGradeDMGT.adddonce + $6d3c = UpdateGradeDMGT.triple + $6d4d = UpdateGradeDMGT.addtonce + $6d51 = UpdateGradeDMGT.tetris + $6d55 = UpdateGradeDMGT.levelmult + $6d6d = UpdateGradeDMGT.mult4 + $6d73 = UpdateGradeDMGT.mult3 + $6d78 = UpdateGradeDMGT.mult2 + $6d7c = UpdateGradeDMGT.mult1 + $6d7d = UpdateGradeDMGT.processgrade + $6da6 = UpdateGradeDMGT.increasegrademaybe + $6dca = UpdateGradeDMGT.gotgm + $6dd8 = DecayGradeDMGT + $6dfb = DecayGradeDMGT.nodecay + $6e02 = DecayGradeDMGT.decay + $6e10 = UpdateGradeTGM1 + $6e23 = UpdateGradeTGM1.trygradeup + $6e3e = UpdateGradeTGM1.increasegrade + $6e53 = UpdateGradeTGM1.skipjingle + $6e5f = UpdateGradeTGM1.check300 + $6e7d = UpdateGradeTGM1.success300 + $6e84 = UpdateGradeTGM1.fail300 + $6e8b = UpdateGradeTGM1.check500 + $6ea9 = UpdateGradeTGM1.success500 + $6eb0 = UpdateGradeTGM1.fail500 + $6eb7 = UpdateGradeTGM1.check999 + $6eee = UpdateGradeTGM1.success999 + $6f06 = UpdateGradeTGM1.fail999 + $6f0c = UpdateGradeDEAT + $6f18 = UpdateGradeDEAT.notgm + $6f3e = UpdateGradeDEAT.notm + $6f61 = UpdateGradeDEAT.disqualify + $6f7f = UpdateGradeSHIR + $6fc1 = UpdateGradeSHIR.s5torikan + $6fd1 = UpdateGradeSHIR.s10torikan + $6fe0 = UpdateGradeSHIR.disqualify + $6fef = UpdateGradeSHIR.l1000 + $7005 = UpdateGradeSHIR.l500 + $701b = UpdateGradeTGM3 + $701b = UpdateGradeTGM3.GradePoints + $702a = !2 + $702f = UpdateGradeTGM3.GetOffset + $7041 = UpdateGradeTGM3.loadpoints + $704e = UpdateGradeTGM3.multipliers + $705b = !3 + $7075 = !4 + $707a = UpdateGradeTGM3.levelmultiplier + $7093 = UpdateGradeTGM3.Level750 + $70a7 = UpdateGradeTGM3.under750 + $70ad = UpdateGradeTGM3.Level500 + $70bb = UpdateGradeTGM3.Level250 + $70ca = UpdateGradeTGM3.under250 + $70ce = UpdateGradeTGM3.Multiply + $70d1 = !5 + $70d8 = UpdateGradeTGM3.IncreaseInternalGrade + $70e7 = UpdateGradeTGM3.nocool + $70fb = TGM3UpdateDisplayedGrade + $7110 = TGM3UpdateDisplayedGrade.update + $7129 = TGM3UpdateDisplayedGrade.notaboves10 + $7137 = CheckCOOL + $714b = CheckCOOL.cool + $715d = CheckCOOL.nots10 + $7167 = DecayGradeTGM3 + $717c = DecayGradeTGM3.points + $719c = !6 + $71a0 = DecayGradeTGM3.GetOffset + $71a9 = DecayGradeTGM3.lpoints + $71af = TGM3COOLHandlerB + $71d6 = TGM3COOLHandlerB.checkCOOL + $71e6 = TGM3COOLHandlerB.nocarry + $71eb = TGM3COOLHandlerB.checkBaselineCOOL + $71f3 = TGM3COOLHandlerB.cool + $720d = TGM3COOLHandlerB.nocool + $7219 = TGM3REGRETHandlerB + $7235 = TGM3REGRETHandlerB.regret + $7262 = TGM3StaffRollGradeUpdate + $7278 = TGM3StaffRollGradeUpdate.UpdateGrade + SECTION: $7288-$76ab ($0424 bytes) ["Grading Data"] + $7288 = sDMGTGrading + $733c = sDMGTGaugeLUT + $743c = sTGM3GaugeLUT + $754c = sTGM1GradeScores + $756e = sTGM3InternalGradeSystem + $760e = sTGM3GradeBoosts + $762d = sTGM3HowManyInternalGradesToDecrease + $764c = sTGM3ComboMultipliers + $767e = sTGM3LevelMultiplier + $7681 = sTGM3BaselineCOOL + $7693 = sTGM3REGRETConditions + $76a7 = sTGM3StaffrollGrading + EMPTY: $76ac-$7fff ($0954 bytes) + TOTAL EMPTY: $0954 bytes ROMX bank #5: SECTION: $4000-$4007 ($0008 bytes) ["Bank ID BANK_GAMEPLAY_BIG"] @@ -3575,8 +3575,8 @@ HRAM bank #0: TOTAL EMPTY: $0000 bytes SUMMARY: - ROM0: 14718 bytes used / 1666 free - ROMX: 110845 bytes used / 36611 free in 9 banks + ROM0: 14729 bytes used / 1655 free + ROMX: 110848 bytes used / 36608 free in 9 banks SRAM: 2951 bytes used / 5241 free in 1 bank WRAM0: 3927 bytes used / 169 free HRAM: 127 bytes used / 0 free diff --git a/bin/PandorasBlocks.pocket b/bin/PandorasBlocks.pocket index 0e4d94fceb862e7ded2e33cb11ddfc8fcafd5873..b444b2933f55583bd087f8b1b6b9291adb01b164 100644 GIT binary patch delta 4500 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 diff --git a/bin/PandorasBlocks.sym b/bin/PandorasBlocks.sym index 8ea8d23..8026ce8 100644 --- a/bin/PandorasBlocks.sym +++ b/bin/PandorasBlocks.sym @@ -303,121 +303,121 @@ 00:3077 InitTargetHSTable.chil 00:307c InitTargetHSTable.myco 00:307f InitTargetHSTable.store -00:3092 sProgressData -00:31dc TimeInit -00:3205 StartCountdown -00:3213 ResetGameTime -00:3227 CheckTorikan -00:323d CheckTorikan.failure -00:323f CheckTorikan.success -00:3242 HandleTimers -00:3268 HandleTimers.reduce -00:3275 HandleTimers.clock -00:328f HandleTimers.go -00:32b3 CheckCOOL_REGRET -00:32cb CheckCOOL_REGRET.failure -00:32cd CheckCOOL_REGRET.success -00:32d0 HandleSectionTimers -00:32ec HandleSectionTimers.continue -00:3300 HandleSectionTimers.sectiongo -00:3324 sHiscoreDefaultData -00:3464 InputInit -00:3476 GetInput -00:3476 GetInput.btns -00:3483 GetInput.readA -00:3487 GetInput.setA -00:3492 GetInput.clearA -00:3495 GetInput.readB -00:3499 GetInput.setB -00:34a4 GetInput.clearB -00:34a7 GetInput.readSelect -00:34ab GetInput.setSelect -00:34b6 GetInput.clearSelect -00:34b9 GetInput.readStart -00:34bd GetInput.setStart -00:34c8 GetInput.clearStart -00:34cb GetInput.dpad -00:34d8 GetInput.readUp -00:34dc GetInput.setUp -00:34e7 GetInput.clearUp -00:34ea GetInput.readDown -00:34ee GetInput.setDown -00:34f9 GetInput.clearDown -00:34fc GetInput.readLeft -00:3500 GetInput.setLeft -00:350b GetInput.clearLeft -00:350e GetInput.readRight -00:3512 GetInput.setRight -00:351d GetInput.clearRight -00:3520 GetInput.priorities -00:352d GetInput.jumps -00:353c GetInput.dlru -00:354c GetInput.ulrd -00:355c GetInput.lrud -00:3567 GetInput.udlr -00:3572 GetInput.zeroud -00:3578 GetInput.zerolr -00:357e GetInput.zerolrd -00:3586 GetInput.zerolru -00:358e ScoreInit -00:35b6 IncreaseScore -00:35ee IncreaseScore.doConvert -00:3606 IncreaseScore.carry -00:3608 IncreaseScore.postConvert -00:361c IncreaseScore.preAddDigit -00:3644 IncreaseScore.addDigit -00:365a IncreaseScore.nextDigit -00:366e SwitchToTitle -00:3677 TitleEventLoopHandler -00:3681 TitleVBlankHandler -00:368b PersistLevel -00:3699 DrawSpeedMain -00:36e9 DrawSpeedSettings -00:3739 SetProgress -00:3743 SetProgress.loop -00:3747 SetProgress.correct -00:376e SetProgress.wvr_u1 -00:377a SetProgress.wvr_u2 -00:3788 SetProgress.wvr_u3 -00:3794 SetProgress.wvr_u4 -00:37a2 SetProgress.wvr_u5 -00:37ae SetProgress.wvr_u6 -00:37bc SetProgress.wvr_u7 -00:37c8 SetProgress.wvr_u8 -00:37d6 SetProgress.wvr_u9 -00:37e2 SetProgress.wvr_u10 -00:37ea Main -00:3813 Main.notgbc -00:381f Main.wvr_u1 -00:384c EventLoop -00:3865 EventLoop.eventloopjumps -00:386e EventLoopPostHandler -00:3870 EventLoopPostHandler.wvb_u2 -00:3882 EventLoopPostHandler.vblankjumps -00:388b GradeInit -00:3894 UpdateGrade -00:389d DecayGradeProcess -00:38a6 DecayGradeDelay -00:38af TGM3REGRETHandler -00:38b8 TGM3COOLHandler -00:38c1 UnsafeMemCopy -00:38ca SafeMemCopy.wvr_u1 -00:38ca SafeMemCopy -00:38d9 UnsafeMemSet -00:38e1 SafeMemSet -00:38e1 SafeMemSet.wvr_u2 -00:38ef SwitchToGameplay -00:38f8 SwitchToGameplayBig -00:3901 GamePlayEventLoopHandler -00:390b GamePlayBigEventLoopHandler -00:3915 EnableScreenSquish -00:392f DisableScreenSquish -00:393a CopyOAMHandler -00:3946 ClearOAM -00:395c DoIntroEffect -00:396d BankingInit -00:397c OAMDMA -00:3986 OAMDMAEnd +00:3092 TimeInit +00:30bb StartCountdown +00:30c9 ResetGameTime +00:30dd CheckTorikan +00:30f3 CheckTorikan.failure +00:30f5 CheckTorikan.success +00:30f8 HandleTimers +00:311e HandleTimers.reduce +00:312b HandleTimers.clock +00:3145 HandleTimers.go +00:3169 CheckCOOL_REGRET +00:3181 CheckCOOL_REGRET.failure +00:3183 CheckCOOL_REGRET.success +00:3186 HandleSectionTimers +00:31a7 HandleSectionTimers.continue +00:31bb HandleSectionTimers.sectiongo +00:31df sProgressData +00:3329 sHiscoreDefaultData +00:3469 InputInit +00:347b GetInput +00:347b GetInput.btns +00:3488 GetInput.readA +00:348c GetInput.setA +00:3497 GetInput.clearA +00:349a GetInput.readB +00:349e GetInput.setB +00:34a9 GetInput.clearB +00:34ac GetInput.readSelect +00:34b0 GetInput.setSelect +00:34bb GetInput.clearSelect +00:34be GetInput.readStart +00:34c2 GetInput.setStart +00:34cd GetInput.clearStart +00:34d0 GetInput.dpad +00:34dd GetInput.readUp +00:34e1 GetInput.setUp +00:34ec GetInput.clearUp +00:34ef GetInput.readDown +00:34f3 GetInput.setDown +00:34fe GetInput.clearDown +00:3501 GetInput.readLeft +00:3505 GetInput.setLeft +00:3510 GetInput.clearLeft +00:3513 GetInput.readRight +00:3517 GetInput.setRight +00:3522 GetInput.clearRight +00:3525 GetInput.priorities +00:3532 GetInput.jumps +00:3541 GetInput.dlru +00:3551 GetInput.ulrd +00:3561 GetInput.lrud +00:356c GetInput.udlr +00:3577 GetInput.zeroud +00:357d GetInput.zerolr +00:3583 GetInput.zerolrd +00:358b GetInput.zerolru +00:3593 ScoreInit +00:35bb IncreaseScore +00:35f3 IncreaseScore.doConvert +00:360b IncreaseScore.carry +00:360d IncreaseScore.postConvert +00:3621 IncreaseScore.preAddDigit +00:3649 IncreaseScore.addDigit +00:365f IncreaseScore.nextDigit +00:3673 SwitchToTitle +00:367c TitleEventLoopHandler +00:3686 TitleVBlankHandler +00:3690 PersistLevel +00:369e DrawSpeedMain +00:36ee DrawSpeedSettings +00:373e SetProgress +00:3748 SetProgress.loop +00:374c SetProgress.correct +00:3773 SetProgress.wvr_u1 +00:377f SetProgress.wvr_u2 +00:378d SetProgress.wvr_u3 +00:3799 SetProgress.wvr_u4 +00:37a7 SetProgress.wvr_u5 +00:37b3 SetProgress.wvr_u6 +00:37c1 SetProgress.wvr_u7 +00:37cd SetProgress.wvr_u8 +00:37db SetProgress.wvr_u9 +00:37e7 SetProgress.wvr_u10 +00:37ef Main +00:3818 Main.notgbc +00:3827 Main.wvr_u1 +00:3857 EventLoop +00:3870 EventLoop.eventloopjumps +00:3879 EventLoopPostHandler +00:387b EventLoopPostHandler.wvb_u2 +00:388d EventLoopPostHandler.vblankjumps +00:3896 GradeInit +00:389f UpdateGrade +00:38a8 DecayGradeProcess +00:38b1 DecayGradeDelay +00:38ba TGM3REGRETHandler +00:38c3 TGM3COOLHandler +00:38cc UnsafeMemCopy +00:38d5 SafeMemCopy.wvr_u1 +00:38d5 SafeMemCopy +00:38e4 UnsafeMemSet +00:38ec SafeMemSet +00:38ec SafeMemSet.wvr_u2 +00:38fa SwitchToGameplay +00:3903 SwitchToGameplayBig +00:390c GamePlayEventLoopHandler +00:3916 GamePlayBigEventLoopHandler +00:3920 EnableScreenSquish +00:393a DisableScreenSquish +00:3945 CopyOAMHandler +00:3951 ClearOAM +00:3967 DoIntroEffect +00:3978 BankingInit +00:3987 OAMDMA +00:3991 OAMDMAEnd 01:4008 sDMGTSpeedCurve 01:4203 sDMGTSpeedCurveEnd 01:4205 sDMGTSpeedCurveSpecialData @@ -1933,111 +1933,111 @@ 04:68c0 sGameplayTileMapEnd 04:6b60 sGameplayUngradedTileMapEnd 04:6b60 GradeInitB -04:6bad GradeInitB.grade9start -04:6bb2 UpdateGradeB -04:6bb2 GradeInitB.end -04:6bc0 UpdateGradeB.gradejumptable -04:6bd5 DecayGradeProcessB -04:6be3 DecayGradeProcessB.gradejumptable -04:6bf8 DecayGradeDelayB -04:6c06 DecayGradeDelayB.gradejumptable -04:6c1b PrepareScore -04:6c2e DrawGradeProgressDMGT -04:6c49 DrawGradeProgressTGM3 -04:6c64 UpdateGradeDMGT -04:6c9d UpdateGradeDMGT.checklineclears -04:6cb6 UpdateGradeDMGT.clearrate -04:6cc7 UpdateGradeDMGT.combomult -04:6cd4 UpdateGradeDMGT.combo13 -04:6ce5 UpdateGradeDMGT.combo8 -04:6cf6 UpdateGradeDMGT.combo1 -04:6d05 UpdateGradeDMGT.prelevel -04:6d14 UpdateGradeDMGT.single -04:6d24 UpdateGradeDMGT.double -04:6d35 UpdateGradeDMGT.adddonce -04:6d39 UpdateGradeDMGT.triple -04:6d4a UpdateGradeDMGT.addtonce -04:6d4e UpdateGradeDMGT.tetris -04:6d52 UpdateGradeDMGT.levelmult -04:6d6a UpdateGradeDMGT.mult4 -04:6d70 UpdateGradeDMGT.mult3 -04:6d75 UpdateGradeDMGT.mult2 -04:6d79 UpdateGradeDMGT.mult1 -04:6d7a UpdateGradeDMGT.processgrade -04:6da3 UpdateGradeDMGT.increasegrademaybe -04:6dc7 UpdateGradeDMGT.gotgm -04:6dd5 DecayGradeDMGT -04:6df8 DecayGradeDMGT.nodecay -04:6dff DecayGradeDMGT.decay -04:6e0d UpdateGradeTGM1 -04:6e20 UpdateGradeTGM1.trygradeup -04:6e3b UpdateGradeTGM1.increasegrade -04:6e50 UpdateGradeTGM1.skipjingle -04:6e5c UpdateGradeTGM1.check300 -04:6e7a UpdateGradeTGM1.success300 -04:6e81 UpdateGradeTGM1.fail300 -04:6e88 UpdateGradeTGM1.check500 -04:6ea6 UpdateGradeTGM1.success500 -04:6ead UpdateGradeTGM1.fail500 -04:6eb4 UpdateGradeTGM1.check999 -04:6eeb UpdateGradeTGM1.success999 -04:6f03 UpdateGradeTGM1.fail999 -04:6f09 UpdateGradeDEAT -04:6f15 UpdateGradeDEAT.notgm -04:6f3b UpdateGradeDEAT.notm -04:6f5e UpdateGradeDEAT.disqualify -04:6f7c UpdateGradeSHIR -04:6fbe UpdateGradeSHIR.s5torikan -04:6fce UpdateGradeSHIR.s10torikan -04:6fdd UpdateGradeSHIR.disqualify -04:6fec UpdateGradeSHIR.l1000 -04:7002 UpdateGradeSHIR.l500 -04:7018 UpdateGradeTGM3 -04:7018 UpdateGradeTGM3.GradePoints -04:702c UpdateGradeTGM3.GetOffset -04:703e UpdateGradeTGM3.loadpoints -04:704b UpdateGradeTGM3.multipliers -04:7077 UpdateGradeTGM3.levelmultiplier -04:7090 UpdateGradeTGM3.Level750 -04:70a4 UpdateGradeTGM3.under750 -04:70aa UpdateGradeTGM3.Level500 -04:70b8 UpdateGradeTGM3.Level250 -04:70c7 UpdateGradeTGM3.under250 -04:70cb UpdateGradeTGM3.Multiply -04:70d5 UpdateGradeTGM3.IncreaseInternalGrade -04:70e4 UpdateGradeTGM3.nocool -04:70f8 TGM3UpdateDisplayedGrade -04:710d TGM3UpdateDisplayedGrade.update -04:7126 TGM3UpdateDisplayedGrade.notaboves10 -04:7134 CheckCOOL -04:7148 CheckCOOL.cool -04:715a CheckCOOL.nots10 -04:7164 DecayGradeTGM3 -04:7179 DecayGradeTGM3.points -04:719d DecayGradeTGM3.GetOffset -04:71a6 DecayGradeTGM3.lpoints -04:71ac TGM3COOLHandlerB -04:71d3 TGM3COOLHandlerB.checkCOOL -04:71e3 TGM3COOLHandlerB.nocarry -04:71e8 TGM3COOLHandlerB.checkBaselineCOOL -04:71f0 TGM3COOLHandlerB.cool -04:720a TGM3COOLHandlerB.nocool -04:7216 TGM3REGRETHandlerB -04:7232 TGM3REGRETHandlerB.regret -04:725f TGM3StaffRollGradeUpdate -04:7275 TGM3StaffRollGradeUpdate.UpdateGrade -04:7285 sDMGTGrading -04:7339 sDMGTGaugeLUT -04:7439 sTGM3GaugeLUT -04:7549 sTGM1GradeScores -04:756b sTGM3InternalGradeSystem -04:760b sTGM3GradeBoosts -04:762a sTGM3HowManyInternalGradesToDecrease -04:7649 sTGM3ComboMultipliers -04:767b sTGM3LevelMultiplier -04:767e sTGM3BaselineCOOL -04:7690 sTGM3REGRETConditions -04:76a4 sTGM3StaffrollGrading +04:6bb0 GradeInitB.grade9start +04:6bb5 UpdateGradeB +04:6bb5 GradeInitB.end +04:6bc3 UpdateGradeB.gradejumptable +04:6bd8 DecayGradeProcessB +04:6be6 DecayGradeProcessB.gradejumptable +04:6bfb DecayGradeDelayB +04:6c09 DecayGradeDelayB.gradejumptable +04:6c1e PrepareScore +04:6c31 DrawGradeProgressDMGT +04:6c4c DrawGradeProgressTGM3 +04:6c67 UpdateGradeDMGT +04:6ca0 UpdateGradeDMGT.checklineclears +04:6cb9 UpdateGradeDMGT.clearrate +04:6cca UpdateGradeDMGT.combomult +04:6cd7 UpdateGradeDMGT.combo13 +04:6ce8 UpdateGradeDMGT.combo8 +04:6cf9 UpdateGradeDMGT.combo1 +04:6d08 UpdateGradeDMGT.prelevel +04:6d17 UpdateGradeDMGT.single +04:6d27 UpdateGradeDMGT.double +04:6d38 UpdateGradeDMGT.adddonce +04:6d3c UpdateGradeDMGT.triple +04:6d4d UpdateGradeDMGT.addtonce +04:6d51 UpdateGradeDMGT.tetris +04:6d55 UpdateGradeDMGT.levelmult +04:6d6d UpdateGradeDMGT.mult4 +04:6d73 UpdateGradeDMGT.mult3 +04:6d78 UpdateGradeDMGT.mult2 +04:6d7c UpdateGradeDMGT.mult1 +04:6d7d UpdateGradeDMGT.processgrade +04:6da6 UpdateGradeDMGT.increasegrademaybe +04:6dca UpdateGradeDMGT.gotgm +04:6dd8 DecayGradeDMGT +04:6dfb DecayGradeDMGT.nodecay +04:6e02 DecayGradeDMGT.decay +04:6e10 UpdateGradeTGM1 +04:6e23 UpdateGradeTGM1.trygradeup +04:6e3e UpdateGradeTGM1.increasegrade +04:6e53 UpdateGradeTGM1.skipjingle +04:6e5f UpdateGradeTGM1.check300 +04:6e7d UpdateGradeTGM1.success300 +04:6e84 UpdateGradeTGM1.fail300 +04:6e8b UpdateGradeTGM1.check500 +04:6ea9 UpdateGradeTGM1.success500 +04:6eb0 UpdateGradeTGM1.fail500 +04:6eb7 UpdateGradeTGM1.check999 +04:6eee UpdateGradeTGM1.success999 +04:6f06 UpdateGradeTGM1.fail999 +04:6f0c UpdateGradeDEAT +04:6f18 UpdateGradeDEAT.notgm +04:6f3e UpdateGradeDEAT.notm +04:6f61 UpdateGradeDEAT.disqualify +04:6f7f UpdateGradeSHIR +04:6fc1 UpdateGradeSHIR.s5torikan +04:6fd1 UpdateGradeSHIR.s10torikan +04:6fe0 UpdateGradeSHIR.disqualify +04:6fef UpdateGradeSHIR.l1000 +04:7005 UpdateGradeSHIR.l500 +04:701b UpdateGradeTGM3 +04:701b UpdateGradeTGM3.GradePoints +04:702f UpdateGradeTGM3.GetOffset +04:7041 UpdateGradeTGM3.loadpoints +04:704e UpdateGradeTGM3.multipliers +04:707a UpdateGradeTGM3.levelmultiplier +04:7093 UpdateGradeTGM3.Level750 +04:70a7 UpdateGradeTGM3.under750 +04:70ad UpdateGradeTGM3.Level500 +04:70bb UpdateGradeTGM3.Level250 +04:70ca UpdateGradeTGM3.under250 +04:70ce UpdateGradeTGM3.Multiply +04:70d8 UpdateGradeTGM3.IncreaseInternalGrade +04:70e7 UpdateGradeTGM3.nocool +04:70fb TGM3UpdateDisplayedGrade +04:7110 TGM3UpdateDisplayedGrade.update +04:7129 TGM3UpdateDisplayedGrade.notaboves10 +04:7137 CheckCOOL +04:714b CheckCOOL.cool +04:715d CheckCOOL.nots10 +04:7167 DecayGradeTGM3 +04:717c DecayGradeTGM3.points +04:71a0 DecayGradeTGM3.GetOffset +04:71a9 DecayGradeTGM3.lpoints +04:71af TGM3COOLHandlerB +04:71d6 TGM3COOLHandlerB.checkCOOL +04:71e6 TGM3COOLHandlerB.nocarry +04:71eb TGM3COOLHandlerB.checkBaselineCOOL +04:71f3 TGM3COOLHandlerB.cool +04:720d TGM3COOLHandlerB.nocool +04:7219 TGM3REGRETHandlerB +04:7235 TGM3REGRETHandlerB.regret +04:7262 TGM3StaffRollGradeUpdate +04:7278 TGM3StaffRollGradeUpdate.UpdateGrade +04:7288 sDMGTGrading +04:733c sDMGTGaugeLUT +04:743c sTGM3GaugeLUT +04:754c sTGM1GradeScores +04:756e sTGM3InternalGradeSystem +04:760e sTGM3GradeBoosts +04:762d sTGM3HowManyInternalGradesToDecrease +04:764c sTGM3ComboMultipliers +04:767e sTGM3LevelMultiplier +04:7681 sTGM3BaselineCOOL +04:7693 sTGM3REGRETConditions +04:76a7 sTGM3StaffrollGrading 05:4008 BigFieldInit 05:4049 BigFieldClear 05:40ef GoSmall diff --git a/src/grading.asm b/src/grading.asm index 3ba3bcf..d401116 100644 --- a/src/grading.asm +++ b/src/grading.asm @@ -336,6 +336,7 @@ SECTION "Grading Functions Banked", ROMX, BANK[BANK_GAMEPLAY] GradeInitB: xor a, a ld [wDecayRate], a + ld [wInternalGrade], a ld [wInternalGradePoints], a ld [wDisplayedGrade], a ld [wRankingDisqualified], a diff --git a/src/include/globals.asm b/src/include/globals.asm index da6e1b6..14bf981 100644 --- a/src/include/globals.asm +++ b/src/include/globals.asm @@ -74,7 +74,7 @@ CHARMAP "c", 209 CHARMAP "d", 210 CHARMAP "m", 211 CHARMAP ":", 212 -CHARMAP ".", 254 +CHARMAP ".", 255 CHARMAP "k", 47 CHARMAP "v", 45 CHARMAP "o", 44 @@ -285,7 +285,7 @@ DEF TILE_PIECE_SMALL_0 EQU 116 DEF TILE_PIECE_BONE EQU 104 DEF TILE_SMALL_0 EQU 213 DEF TILE_BONE EQU 104 -DEF TILE_INVIS EQU 255 +DEF TILE_INVIS EQU 254 DEF TILE_QUEUE_BONE EQU 105 DEF TILE_ROT_MODE_MYCO EQU 253 DEF GAME_OVER_R10 EQU 147 diff --git a/src/main.asm b/src/main.asm index 56150b7..c404cf2 100644 --- a/src/main.asm +++ b/src/main.asm @@ -82,12 +82,15 @@ Main:: ; Let the console have some fun with the initial screen. call InputInit call BankingInit + xor a, a + ldh [hFilterMode], a call DoIntroEffect ; Turn off LCD during initialization. wait_vram xor a, a ldh [rLCDC], a + ld [wSpritePal], a ; Clear OAM. call ClearOAM diff --git a/src/res/other_data.inc b/src/res/other_data.inc index 5eccca8..f6bc5cb 100644 --- a/src/res/other_data.inc +++ b/src/res/other_data.inc @@ -595,7 +595,7 @@ sTGM3SpeedCurve:: db 14, 8, 8, 17, 6 dw $1000, 1000, $1100 - db 20, $00 + db 1, $4 db 8, 8, 8, 17, 6 dw $1100, 1100, $1200 @@ -1014,8 +1014,8 @@ sTitleTiles:: DB $00,$00,$01,$00,$00,$00,$00,$00 DB $80,$80,$C0,$C0,$60,$60,$60,$60 DB $F0,$F0,$F0,$F0,$E0,$E0,$C0,$C0 - DB $00,$00,$87,$00,$84,$00,$87,$00 - DB $85,$00,$D7,$00,$00,$00,$00,$00 + DB $00,$00,$87,$00,$81,$00,$81,$00 + DB $81,$00,$D1,$00,$00,$00,$00,$00 DB $C0,$C0,$F0,$F0,$FC,$FC,$FF,$FF DB $FC,$FC,$F0,$F0,$C0,$C0,$00,$00 DB $C0,$00,$F0,$00,$FC,$00,$FF,$00 @@ -1759,10 +1759,10 @@ sGameplayTilesM:: DB $00,$F0,$00,$00,$00,$00,$00,$00 DB $18,$18,$2C,$34,$62,$5E,$76,$6E DB $24,$3C,$24,$3C,$18,$18,$00,$00 - DB $00,$00,$00,$00,$00,$00,$00,$00 - DB $00,$00,$30,$30,$30,$30,$00,$00 DB $00,$00,$00,$00,$00,$00,$10,$00 DB $00,$00,$00,$00,$00,$00,$00,$00 + DB $00,$00,$00,$00,$00,$00,$00,$00 + DB $00,$00,$30,$30,$30,$30,$00,$00 sGameplayTilesMEnd:: sGameplayTilesC:: @@ -2178,10 +2178,10 @@ sGameplayTilesC:: DB $00,$F0,$00,$00,$00,$00,$00,$00 DB $18,$18,$2C,$34,$62,$5E,$76,$6E DB $24,$3C,$24,$3C,$18,$18,$00,$00 - DB $00,$00,$00,$00,$00,$00,$00,$00 - DB $00,$00,$30,$30,$30,$30,$00,$00 DB $00,$00,$00,$00,$00,$00,$10,$00 DB $00,$00,$00,$00,$00,$00,$00,$00 + DB $00,$00,$00,$00,$00,$00,$00,$00 + DB $00,$00,$30,$30,$30,$30,$00,$00 sGameplayTilesCEnd:: ENDC diff --git a/src/res/sources/complete_gameplay.gbr b/src/res/sources/complete_gameplay.gbr index 96734b708b652cb9c51675fa416f267659242aa6..6ce8a459684cc29230ad84440e1fe2a7d2d193ee 100644 GIT binary patch delta 64 zcmaF3f$8A}rVV}llP9>di!w7YGBYqRFf%eSF##FOKn64O$>*Y^C-2daoUEW| SHhDs*z~lxCw$0uX#5e#b*bwpn delta 18 acmaF3f$8A}rVV}llM|HpZuXua#sL6Yst9uc diff --git a/src/res/sources/tiles_gameplay_c.gbr b/src/res/sources/tiles_gameplay_c.gbr index 8e08d06e519e309a883060a41bd6c1ddb0825097..a2de75a3054953892ecd4d1373f0fe9d0abddf20 100644 GIT binary patch delta 57 zcmV-90LK5}uma(*0eI5(ozeMPy82Vr8>Y PBX|J_LIB*{76K^WrTi64 delta 58 zcmV-A0LA~|uma(*0>x*+yDRo diff --git a/src/res/sources/tiles_gameplay_m.gbr b/src/res/sources/tiles_gameplay_m.gbr index b03ec2dca4d4979bd3a045b7d22a7c0a6c1a8b40..9e13a3f88b1d035152e9d0e69228dce382e701b0 100644 GIT binary patch delta 39 xcmV+?0NDTGuma(*0 diff --git a/src/sprites.asm b/src/sprites.asm index 5cbed7c..af97da5 100644 --- a/src/sprites.asm +++ b/src/sprites.asm @@ -68,7 +68,7 @@ wSPRTimeCS1:: ds 4 wSPRTimeCS2:: ds 4 ENDU wScratch: ds 2 -wSpritePal: ds 1 +wSpritePal:: ds 1 SECTION "OAM DMA Code", ROM0 diff --git a/src/time.asm b/src/time.asm index 5491f25..fa7644e 100644 --- a/src/time.asm +++ b/src/time.asm @@ -241,6 +241,10 @@ CheckCOOL_REGRET:: HandleSectionTimers:: + ldh a, [hGameState] + cp a, STATE_TITLE + ret z + ldh a, [hMode] cp a, MODE_PAUSED ret z