Fix a big fucky wucky in the stack.

This commit is contained in:
Randy Thiemann 2023-11-07 10:40:31 +01:00
parent e9caff748c
commit d3ab4a9ca7
8 changed files with 783 additions and 779 deletions

Binary file not shown.

View File

@ -32,7 +32,7 @@ ROM0 bank #0:
$00f4 = DoDMGEffect.wvbe_u13 $00f4 = DoDMGEffect.wvbe_u13
EMPTY: $00fd-$00ff ($0003 bytes) EMPTY: $00fd-$00ff ($0003 bytes)
SECTION: $0100-$014f ($0050 bytes) ["Cartridge Header"] SECTION: $0100-$014f ($0050 bytes) ["Cartridge Header"]
SECTION: $0150-$0da6 ($0c57 bytes) ["GBC Functions"] SECTION: $0150-$0f03 ($0db4 bytes) ["GBC Functions"]
$0150 = ToATTR $0150 = ToATTR
$0173 = GBCTitleInit $0173 = GBCTitleInit
$0354 = GBCTitleInit.agb $0354 = GBCTitleInit.agb
@ -77,371 +77,371 @@ ROM0 bank #0:
$0c86 = !6 $0c86 = !6
$0c8f = !7 $0c8f = !7
$0c98 = GBCBigGameplayProcess.colorfield $0c98 = GBCBigGameplayProcess.colorfield
$0ca1 = !8 $0dfe = !8
$0caf = GBCBigGameplayProcess.outer1 $0e0c = GBCBigGameplayProcess.outer1
$0cb4 = GBCBigGameplayProcess.inner1 $0e11 = GBCBigGameplayProcess.inner1
$0cd8 = GBCBigGameplayProcess.outer2 $0e35 = GBCBigGameplayProcess.outer2
$0cdd = GBCBigGameplayProcess.inner2 $0e3a = GBCBigGameplayProcess.inner2
$0d02 = GBCBigGameplayProcess.empty $0e5f = GBCBigGameplayProcess.empty
$0d06 = GBCBigGameplayProcess.sub59 $0e63 = GBCBigGameplayProcess.sub59
$0d08 = GBCBigGameplayProcess.sub52 $0e65 = GBCBigGameplayProcess.sub52
$0d0a = GBCBigGameplayProcess.sub45 $0e67 = GBCBigGameplayProcess.sub45
$0d0c = GBCBigGameplayProcess.sub38 $0e69 = GBCBigGameplayProcess.sub38
$0d0e = GBCBigGameplayProcess.sub31 $0e6b = GBCBigGameplayProcess.sub31
$0d10 = GBCBigGameplayProcess.sub24 $0e6d = GBCBigGameplayProcess.sub24
$0d12 = GBCBigGameplayProcess.sub17 $0e6f = GBCBigGameplayProcess.sub17
$0d14 = GBCBigGameplayProcess.sub10 $0e71 = GBCBigGameplayProcess.sub10
$0d16 = GBCBigGameplayProcess.done $0e73 = GBCBigGameplayProcess.done
$0d38 = GBCBigGameplayProcess.darker $0e95 = GBCBigGameplayProcess.darker
$0d3f = GBCBigGameplayProcess.wvr_u4 $0e9c = GBCBigGameplayProcess.wvr_u4
$0d4c = GBCBigGameplayProcess.lighter $0ea9 = GBCBigGameplayProcess.lighter
$0d53 = GBCBigGameplayProcess.wvr_u5 $0eb0 = GBCBigGameplayProcess.wvr_u5
$0d60 = GBCBigGameplayProcess.black $0ebd = GBCBigGameplayProcess.black
$0d67 = GBCBigGameplayProcess.wvr_u6 $0ec4 = GBCBigGameplayProcess.wvr_u6
$0d74 = ToVRAM $0ed1 = ToVRAM
$0d74 = GBCBlitField $0ed1 = GBCBlitField
SECTION: $0da7-$1590 ($07ea bytes) ["Field Function Unbanked"] SECTION: $0f04-$16ed ($07ea bytes) ["Field Function Unbanked"]
$0da7 = BlitField $0f04 = BlitField
$0f6a = BlitField.waitendvbloop $10c7 = BlitField.waitendvbloop
$0f70 = !0 $10cd = !0
$0fbf = !1 $111c = !1
$100e = !2 $116b = !2
$105d = !3 $11ba = !3
$10ac = !4 $1209 = !4
$10fb = !5 $1258 = !5
$114a = !6 $12a7 = !6
$119c = BigBlitField $12f9 = BigBlitField
$135f = BigBlitField.waitendvbloop $14bc = BigBlitField.waitendvbloop
$1365 = !7 $14c2 = !7
$13b4 = !8 $1511 = !8
$1403 = !9 $1560 = !9
$1452 = !10 $15af = !10
$14a1 = !11 $15fe = !11
$14f0 = !12 $164d = !12
$153f = !13 $169c = !13
SECTION: $1591-$1b49 ($05b9 bytes) ["Domain Specific Functions"] SECTION: $16ee-$1ca6 ($05b9 bytes) ["Domain Specific Functions"]
$1591 = ApplyTells $16ee = ApplyTells
$15cf = ApplyTells.myco $172c = ApplyTells.myco
$15d4 = ApplyTells.dropmode $1731 = ApplyTells.dropmode
$15f9 = ApplyNext $1756 = ApplyNext
$1607 = ApplyNext.bone $1764 = ApplyNext.bone
$1626 = ApplyNext.nobone $1783 = ApplyNext.nobone
$1647 = ApplyNext.pos $17a4 = ApplyNext.pos
$1657 = ApplyNext.regular $17b4 = ApplyNext.regular
$165d = ApplyNext.postoffsets $17ba = ApplyNext.postoffsets
$1661 = ApplyNext.getoffn $17be = ApplyNext.getoffn
$166c = ApplyNext.skipoffn $17c9 = ApplyNext.skipoffn
$170a = ApplyNext.done $1867 = ApplyNext.done
$170d = ApplyHold $186a = ApplyHold
$171b = ApplyHold.bone $1878 = ApplyHold.bone
$173a = ApplyHold.nobone $1897 = ApplyHold.nobone
$1757 = ApplyHold.hide $18b4 = ApplyHold.hide
$1769 = ApplyHold.show $18c6 = ApplyHold.show
$1779 = ApplyHold.x $18d6 = ApplyHold.x
$1789 = ApplyHold.regular $18e6 = ApplyHold.regular
$178f = ApplyHold.postoffsets $18ec = ApplyHold.postoffsets
$1793 = ApplyHold.getoffh $18f0 = ApplyHold.getoffh
$179e = ApplyHold.skipoffh $18fb = ApplyHold.skipoffh
$17d8 = ApplyTime $1935 = ApplyTime
$1829 = ApplyTime.loop0 $1986 = ApplyTime.loop0
$1858 = ApplyTime.loop1 $19b5 = ApplyTime.loop1
$18ad = ApplyNumbers8 $1a0a = ApplyNumbers8
$18fa = ApplyNumbers8.one $1a57 = ApplyNumbers8.one
$1900 = ApplyNumbers8.two $1a5d = ApplyNumbers8.two
$1906 = ApplyNumbers8.three $1a63 = ApplyNumbers8.three
$190c = ApplyNumbers8.four $1a69 = ApplyNumbers8.four
$1912 = ApplyNumbers8.five $1a6f = ApplyNumbers8.five
$1918 = ApplyNumbers8.six $1a75 = ApplyNumbers8.six
$191e = ApplyNumbers8.seven $1a7b = ApplyNumbers8.seven
$1924 = ApplyNumbers8.eight $1a81 = ApplyNumbers8.eight
$1929 = ApplyNumbers4 $1a86 = ApplyNumbers4
$194e = ApplyNumbers4.one $1aab = ApplyNumbers4.one
$1954 = ApplyNumbers4.two $1ab1 = ApplyNumbers4.two
$195a = ApplyNumbers4.three $1ab7 = ApplyNumbers4.three
$1960 = ApplyNumbers4.four $1abd = ApplyNumbers4.four
$1965 = SetNumberSpritePositions $1ac2 = SetNumberSpritePositions
$1a6c = GradeRendering $1bc9 = GradeRendering
$1aa1 = GradeRendering.effect $1bfe = GradeRendering.effect
$1ab1 = GradeRendering.noeffect $1c0e = GradeRendering.noeffect
$1ab9 = GradeRendering.drawgrade $1c16 = GradeRendering.drawgrade
$1ac0 = GradeRendering.regulargrade $1c1d = GradeRendering.regulargrade
$1ac8 = GradeRendering.sgrade $1c25 = GradeRendering.sgrade
$1ade = GradeRendering.hisgrade $1c3b = GradeRendering.hisgrade
$1af4 = GradeRendering.mgrade $1c51 = GradeRendering.mgrade
$1b0a = GradeRendering.lettergrade $1c67 = GradeRendering.lettergrade
$1b27 = GradeRendering.mk $1c84 = GradeRendering.mk
$1b2d = GradeRendering.mv $1c8a = GradeRendering.mv
$1b33 = GradeRendering.mo $1c90 = GradeRendering.mo
$1b39 = GradeRendering.mm $1c96 = GradeRendering.mm
$1b3f = GradeRendering.gmgrade $1c9c = GradeRendering.gmgrade
SECTION: $1b4a-$1e7f ($0336 bytes) ["Grading Functions"] SECTION: $1ca7-$1fdc ($0336 bytes) ["Grading Functions"]
$1b4a = GradeInit $1ca7 = GradeInit
$1b75 = GradeInit.grade9start $1cd2 = GradeInit.grade9start
$1b7a = GradeInit.end $1cd7 = GradeInit.end
$1b7c = UpdateGrade $1cd9 = UpdateGrade
$1b8a = UpdateGrade.gradejumptable $1ce7 = UpdateGrade.gradejumptable
$1b9f = DecayGradeProcess $1cfc = DecayGradeProcess
$1bad = DecayGradeProcess.gradejumptable $1d0a = DecayGradeProcess.gradejumptable
$1bc2 = DecayGradeDelay $1d1f = DecayGradeDelay
$1bd0 = DecayGradeDelay.gradejumptable $1d2d = DecayGradeDelay.gradejumptable
$1be5 = PrepareScore $1d42 = PrepareScore
$1bf8 = DrawGradeProgressDMGT $1d55 = DrawGradeProgressDMGT
$1c07 = UpdateGradeDMGT $1d64 = UpdateGradeDMGT
$1c21 = UpdateGradeDMGT.clearrate $1d7e = UpdateGradeDMGT.clearrate
$1c32 = UpdateGradeDMGT.combomult $1d8f = UpdateGradeDMGT.combomult
$1c3f = UpdateGradeDMGT.combo10 $1d9c = UpdateGradeDMGT.combo10
$1c50 = UpdateGradeDMGT.combo5 $1dad = UpdateGradeDMGT.combo5
$1c61 = UpdateGradeDMGT.combo1 $1dbe = UpdateGradeDMGT.combo1
$1c70 = UpdateGradeDMGT.prelevel $1dcd = UpdateGradeDMGT.prelevel
$1c7f = UpdateGradeDMGT.single $1ddc = UpdateGradeDMGT.single
$1c8f = UpdateGradeDMGT.double $1dec = UpdateGradeDMGT.double
$1ca0 = UpdateGradeDMGT.adddonce $1dfd = UpdateGradeDMGT.adddonce
$1ca4 = UpdateGradeDMGT.triple $1e01 = UpdateGradeDMGT.triple
$1cb5 = UpdateGradeDMGT.addtonce $1e12 = UpdateGradeDMGT.addtonce
$1cb9 = UpdateGradeDMGT.tetris $1e16 = UpdateGradeDMGT.tetris
$1cbd = UpdateGradeDMGT.levelmult $1e1a = UpdateGradeDMGT.levelmult
$1cd5 = UpdateGradeDMGT.mult5 $1e32 = UpdateGradeDMGT.mult5
$1cdc = UpdateGradeDMGT.mult4 $1e39 = UpdateGradeDMGT.mult4
$1ce2 = UpdateGradeDMGT.mult3 $1e3f = UpdateGradeDMGT.mult3
$1ce7 = UpdateGradeDMGT.mult2 $1e44 = UpdateGradeDMGT.mult2
$1ceb = UpdateGradeDMGT.mult1 $1e48 = UpdateGradeDMGT.mult1
$1cec = UpdateGradeDMGT.processgrade $1e49 = UpdateGradeDMGT.processgrade
$1d12 = UpdateGradeDMGT.increasegrademaybe $1e6f = UpdateGradeDMGT.increasegrademaybe
$1d33 = UpdateGradeDMGT.gotgm $1e90 = UpdateGradeDMGT.gotgm
$1d3e = DecayGradeDMGT $1e9b = DecayGradeDMGT
$1d62 = DecayGradeDMGT.nodecay $1ebf = DecayGradeDMGT.nodecay
$1d69 = DecayGradeDMGT.decay $1ec6 = DecayGradeDMGT.decay
$1d77 = UpdateGradeTGM1 $1ed4 = UpdateGradeTGM1
$1d81 = UpdateGradeTGM1.trygradeup $1ede = UpdateGradeTGM1.trygradeup
$1d9b = UpdateGradeTGM1.increasegrade $1ef8 = UpdateGradeTGM1.increasegrade
$1dad = UpdateGradeTGM1.skipjingle $1f0a = UpdateGradeTGM1.skipjingle
$1dba = UpdateGradeTGM1.maybegm $1f17 = UpdateGradeTGM1.maybegm
$1dd0 = UpdateGradeDEAT $1f2d = UpdateGradeDEAT
$1ddc = UpdateGradeDEAT.notgm $1f39 = UpdateGradeDEAT.notgm
$1df5 = UpdateGradeDEAT.notm $1f52 = UpdateGradeDEAT.notm
$1e15 = UpdateGradeDEAT.disqualify $1f72 = UpdateGradeDEAT.disqualify
$1e1b = UpdateGradeSHIR $1f78 = UpdateGradeSHIR
$1e5b = UpdateGradeSHIR.s5torikan $1fb8 = UpdateGradeSHIR.s5torikan
$1e6b = UpdateGradeSHIR.s10torikan $1fc8 = UpdateGradeSHIR.s10torikan
$1e7a = UpdateGradeSHIR.disqualify $1fd7 = UpdateGradeSHIR.disqualify
SECTION: $1e80-$2135 ($02b6 bytes) ["Grading Data"] SECTION: $1fdd-$2292 ($02b6 bytes) ["Grading Data"]
$1e80 = sTGM1GradeScores $1fdd = sTGM1GradeScores
$1ea2 = sTGM3InternalGradeSystem $1fff = sTGM3InternalGradeSystem
$1f42 = sTGM3GradeBoosts $209f = sTGM3GradeBoosts
$1f61 = sTGM3LevelMultiplier $20be = sTGM3LevelMultiplier
$1f65 = sTGM3BaselineCOOL $20c2 = sTGM3BaselineCOOL
$1f6e = sTGM3REGRETConditions $20cb = sTGM3REGRETConditions
$1f82 = sDMGTGrading $20df = sDMGTGrading
$2036 = sDMGTGaugeLUT $2193 = sDMGTGaugeLUT
SECTION: $2136-$23cc ($0297 bytes) ["SFX Functions"] SECTION: $2293-$2529 ($0297 bytes) ["SFX Functions"]
$2136 = SFXInit $2293 = SFXInit
$2158 = SFXPopQueue $22b5 = SFXPopQueue
$216d = SFXPushQueue $22ca = SFXPushQueue
$217e = SFXProcessQueue $22db = SFXProcessQueue
$218b = !0 $22e8 = !0
$21ac = SFXTriggerNoise $2309 = SFXTriggerNoise
$21b9 = !1 $2316 = !1
$21c6 = !2 $2323 = !2
$21d2 = SFXEnqueue $232f = SFXEnqueue
$21e7 = SFXEnqueue.findsfx $2344 = SFXEnqueue.findsfx
$21fc = !3 $2359 = !3
$220c = !4 $2369 = !4
$221c = !5 $2379 = !5
$222c = !6 $2389 = !6
$223c = !7 $2399 = !7
$224c = !8 $23a9 = !8
$225c = !9 $23b9 = !9
$226c = !10 $23c9 = !10
$227c = !11 $23d9 = !11
$228c = !12 $23e9 = !12
$229c = !13 $23f9 = !13
$22ac = !14 $2409 = !14
$22bc = !15 $2419 = !15
$22cc = !16 $2429 = !16
$22dc = !17 $2439 = !17
$22eb = !18 $2448 = !18
$22fa = !19 $2457 = !19
$2309 = !20 $2466 = !20
$2317 = !21 $2474 = !21
$2325 = !22 $2482 = !22
$2333 = !23 $2490 = !23
$2340 = SFXKill $249d = SFXKill
$236b = SFXPlayNoise $24c8 = SFXPlayNoise
$2376 = SFXPlayNoise.noisereg $24d3 = SFXPlayNoise.noisereg
$2383 = !24 $24e0 = !24
$238d = SFXPlayNoise.savenoiseplayhead $24ea = SFXPlayNoise.savenoiseplayhead
$2396 = SFXPlay $24f3 = SFXPlay
$23a1 = !25 $24fe = !25
$23a4 = SFXPlay.play $2501 = SFXPlay.play
$23b0 = SFXPlay.getRegister $250d = SFXPlay.getRegister
$23ba = !26 $2517 = !26
$23c4 = SFXPlay.savePlayhead $2521 = SFXPlay.savePlayhead
SECTION: $23cd-$25fd ($0231 bytes) ["RNG Functions"] SECTION: $252a-$275a ($0231 bytes) ["RNG Functions"]
$23cd = HarvestEntropy $252a = HarvestEntropy
$23d3 = HarvestEntropy.loop $2530 = HarvestEntropy.loop
$23f4 = RNGInit $2551 = RNGInit
$242a = !0 $2587 = !0
$245a = RNGInit.complexinit $25b7 = RNGInit.complexinit
$2471 = !1 $25ce = !1
$248c = ShiftHistory $25e9 = ShiftHistory
$24a9 = GetNextHellPiece $2606 = GetNextHellPiece
$24ae = GetNextTGM1Piece $260b = GetNextTGM1Piece
$24b1 = !2 $260e = !2
$24c9 = !3 $2626 = !3
$24cb = GetNextTGM2Piece $2628 = GetNextTGM2Piece
$24ce = !4 $262b = !4
$24e6 = !5 $2643 = !5
$24e8 = GetNextNesPiece $2645 = GetNextNesPiece
$24f6 = GetNextTGM3Piece $2653 = GetNextTGM3Piece
$24f9 = !6 $2656 = !6
$251c = !7 $2679 = !7
$251f = !8 $267c = !8
$252f = !9 $268c = !9
$2539 = !10 $2696 = !10
$2547 = !11 $26a4 = !11
$2556 = !12 $26b3 = !12
$2562 = !13 $26bf = !13
$256e = !14 $26cb = !14
$257a = !15 $26d7 = !15
$2586 = !16 $26e3 = !16
$2592 = !17 $26ef = !17
$259e = !18 $26fb = !18
$25ad = GetNextPiece $270a = GetNextPiece
$25bb = GetNextPiece.nextpiecejumps $2718 = GetNextPiece.nextpiecejumps
$25ca = Next35Piece $2727 = Next35Piece
$25ca = !19 $2727 = !19
$25d4 = Next7Piece $2731 = Next7Piece
$25d4 = !20 $2731 = !20
$25de = NextByte $273b = NextByte
SECTION: $25fe-$27a0 ($01a3 bytes) ["Level Functions"] SECTION: $275b-$28fd ($01a3 bytes) ["Level Functions"]
$25fe = LevelInit $275b = LevelInit
$264e = LevelUp $27ab = LevelUp
$2672 = LevelUp.doit $27cf = LevelUp.doit
$26b6 = LevelUp.checknlevel $2813 = LevelUp.checknlevel
$26e4 = !0 $2841 = !0
$26fc = !1 $2859 = !1
$2705 = LevelUp.bellmaybe $2862 = LevelUp.bellmaybe
$2717 = LevelUp.leveljinglemaybe $2874 = LevelUp.leveljinglemaybe
$2724 = LevelUp.checkspeedup $2881 = LevelUp.checkspeedup
$2735 = !2 $2892 = !2
$2742 = !3 $289f = !3
$2753 = !4 $28b0 = !4
$2760 = DoSpeedUp $28bd = DoSpeedUp
SECTION: $27a1-$28ea ($014a bytes) ["Progress Data"] SECTION: $28fe-$2a47 ($014a bytes) ["Progress Data"]
$27a1 = sProgressData $28fe = sProgressData
SECTION: $28eb-$29ca ($00e0 bytes) ["Score Functions"] SECTION: $2a48-$2b27 ($00e0 bytes) ["Score Functions"]
$28eb = ScoreInit $2a48 = ScoreInit
$2913 = IncreaseScore $2a70 = IncreaseScore
$294b = IncreaseScore.doConvert $2aa8 = IncreaseScore.doConvert
$294d = !0 $2aaa = !0
$2963 = IncreaseScore.carry $2ac0 = IncreaseScore.carry
$2965 = IncreaseScore.postConvert $2ac2 = IncreaseScore.postConvert
$2972 = !1 $2acf = !1
$2979 = IncreaseScore.preAddDigit $2ad6 = IncreaseScore.preAddDigit
$29a1 = IncreaseScore.addDigit $2afe = IncreaseScore.addDigit
$29b7 = IncreaseScore.nextDigit $2b14 = IncreaseScore.nextDigit
SECTION: $29cb-$2a97 ($00cd bytes) ["Input Functions"] SECTION: $2b28-$2bf4 ($00cd bytes) ["Input Functions"]
$29cb = InputInit $2b28 = InputInit
$29dd = GetInput $2b3a = GetInput
$29dd = GetInput.btns $2b3a = GetInput.btns
$29ea = GetInput.readA $2b47 = GetInput.readA
$29ee = GetInput.setA $2b4b = GetInput.setA
$29f9 = GetInput.clearA $2b56 = GetInput.clearA
$29fc = GetInput.readB $2b59 = GetInput.readB
$2a00 = GetInput.setB $2b5d = GetInput.setB
$2a0b = GetInput.clearB $2b68 = GetInput.clearB
$2a0e = GetInput.readSelect $2b6b = GetInput.readSelect
$2a12 = GetInput.setSelect $2b6f = GetInput.setSelect
$2a1d = GetInput.clearSelect $2b7a = GetInput.clearSelect
$2a20 = GetInput.readStart $2b7d = GetInput.readStart
$2a24 = GetInput.setStart $2b81 = GetInput.setStart
$2a2f = GetInput.clearStart $2b8c = GetInput.clearStart
$2a32 = GetInput.dpad $2b8f = GetInput.dpad
$2a3f = GetInput.readUp $2b9c = GetInput.readUp
$2a43 = GetInput.setUp $2ba0 = GetInput.setUp
$2a4e = GetInput.clearUp $2bab = GetInput.clearUp
$2a51 = GetInput.readDown $2bae = GetInput.readDown
$2a55 = GetInput.setDown $2bb2 = GetInput.setDown
$2a60 = GetInput.clearDown $2bbd = GetInput.clearDown
$2a63 = GetInput.readLeft $2bc0 = GetInput.readLeft
$2a67 = GetInput.setLeft $2bc4 = GetInput.setLeft
$2a72 = GetInput.clearLeft $2bcf = GetInput.clearLeft
$2a75 = GetInput.readRight $2bd2 = GetInput.readRight
$2a79 = GetInput.setRight $2bd6 = GetInput.setRight
$2a84 = GetInput.clearRight $2be1 = GetInput.clearRight
$2a87 = GetInput.priorities $2be4 = GetInput.priorities
$2a92 = GetInput.zero $2bef = GetInput.zero
SECTION: $2a98-$2b4e ($00b7 bytes) ["SRAM Functions"] SECTION: $2bf5-$2cab ($00b7 bytes) ["SRAM Functions"]
$2a98 = RestoreSRAM $2bf5 = RestoreSRAM
$2af1 = InitializeSRAM $2c4e = InitializeSRAM
SECTION: $2b4f-$2c00 ($00b2 bytes) ["Progress Functions"] SECTION: $2cac-$2d5d ($00b2 bytes) ["Progress Functions"]
$2b4f = SetProgress $2cac = SetProgress
$2b5a = SetProgress.loop $2cb7 = SetProgress.loop
$2b5e = SetProgress.correct $2cbb = SetProgress.correct
$2b85 = SetProgress.wvr_u1 $2ce2 = SetProgress.wvr_u1
$2b91 = SetProgress.wvr_u2 $2cee = SetProgress.wvr_u2
$2b9f = SetProgress.wvr_u3 $2cfc = SetProgress.wvr_u3
$2bab = SetProgress.wvr_u4 $2d08 = SetProgress.wvr_u4
$2bb9 = SetProgress.wvr_u5 $2d16 = SetProgress.wvr_u5
$2bc5 = SetProgress.wvr_u6 $2d22 = SetProgress.wvr_u6
$2bd3 = SetProgress.wvr_u7 $2d30 = SetProgress.wvr_u7
$2bdf = SetProgress.wvr_u8 $2d3c = SetProgress.wvr_u8
$2bed = SetProgress.wvr_u9 $2d4a = SetProgress.wvr_u9
$2bf9 = SetProgress.wvr_u10 $2d56 = SetProgress.wvr_u10
SECTION: $2c01-$2c98 ($0098 bytes) ["Code Entry Point"] SECTION: $2d5e-$2df5 ($0098 bytes) ["Code Entry Point"]
$2c01 = Main $2d5e = Main
$2c2a = Main.notgbc $2d87 = Main.notgbc
$2c30 = Main.wvr_u1 $2d8d = Main.wvr_u1
$2c5d = EventLoop $2dba = EventLoop
$2c73 = EventLoop.eventloopjumps $2dd0 = EventLoop.eventloopjumps
$2c7c = EventLoopPostHandler $2dd9 = EventLoopPostHandler
$2c7e = EventLoopPostHandler.wvb_u2 $2ddb = EventLoopPostHandler.wvb_u2
$2c90 = EventLoopPostHandler.vblankjumps $2ded = EventLoopPostHandler.vblankjumps
SECTION: $2c99-$2d20 ($0088 bytes) ["Time Functions"] SECTION: $2df6-$2e7d ($0088 bytes) ["Time Functions"]
$2c99 = TimeInit $2df6 = TimeInit
$2cae = ResetGameTime $2e0b = ResetGameTime
$2cb9 = CheckTorikan $2e16 = CheckTorikan
$2cd0 = CheckTorikan.failure $2e2d = CheckTorikan.failure
$2cd2 = CheckTorikan.success $2e2f = CheckTorikan.success
$2cd5 = HandleTimers $2e32 = HandleTimers
$2cfd = HandleTimers.go $2e5a = HandleTimers.go
SECTION: $2d21-$2d8e ($006e bytes) ["Title Function Trampolines"] SECTION: $2e7e-$2eea ($006d bytes) ["Title Function Trampolines"]
$2d21 = SwitchToTitle $2e7e = SwitchToTitle
$2d2b = TitleEventLoopHandler $2e87 = TitleEventLoopHandler
$2d35 = TitleVBlankHandler $2e91 = TitleVBlankHandler
$2d3f = DrawOption6 $2e9b = DrawOption6
SECTION: $2d8f-$2de0 ($0052 bytes) ["Tile Functions"] SECTION: $2eeb-$2f3c ($0052 bytes) ["Tile Functions"]
$2d8f = LoadTitleTiles $2eeb = LoadTitleTiles
$2dad = LoadGameplayTiles $2f09 = LoadGameplayTiles
$2dc3 = LoadGameplayTiles.gbc $2f1f = LoadGameplayTiles.gbc
$2dd2 = LoadGameplayTiles.dmg $2f2e = LoadGameplayTiles.dmg
SECTION: $2de1-$2e1c ($003c bytes) ["Time Data"] SECTION: $2f3d-$2f78 ($003c bytes) ["Time Data"]
$2de1 = sFramesToCS $2f3d = sFramesToCS
SECTION: $2e1d-$2e4a ($002e bytes) ["Memory Functions"] SECTION: $2f79-$2fa6 ($002e bytes) ["Memory Functions"]
$2e1d = UnsafeMemCopy $2f79 = UnsafeMemCopy
$2e26 = SafeMemCopy.wvr_u1 $2f82 = SafeMemCopy.wvr_u1
$2e26 = SafeMemCopy $2f82 = SafeMemCopy
$2e35 = UnsafeMemSet $2f91 = UnsafeMemSet
$2e3d = SafeMemSet $2f99 = SafeMemSet
$2e3d = SafeMemSet.wvr_u2 $2f99 = SafeMemSet.wvr_u2
SECTION: $2e4b-$2e72 ($0028 bytes) ["Gameplay Function Trampolines"] SECTION: $2fa7-$2fcc ($0026 bytes) ["Gameplay Function Trampolines"]
$2e4b = SwitchToGameplay $2fa7 = SwitchToGameplay
$2e55 = SwitchToGameplayBig $2fb0 = SwitchToGameplayBig
$2e5f = GamePlayEventLoopHandler $2fb9 = GamePlayEventLoopHandler
$2e69 = GamePlayBigEventLoopHandler $2fc3 = GamePlayBigEventLoopHandler
SECTION: $2e73-$2e94 ($0022 bytes) ["OAM Functions"] SECTION: $2fcd-$2fee ($0022 bytes) ["OAM Functions"]
$2e73 = CopyOAMHandler $2fcd = CopyOAMHandler
$2e7f = ClearOAM $2fd9 = ClearOAM
SECTION: $2e95-$2ead ($0019 bytes) ["Interrupt Initialization Functions"] SECTION: $2fef-$3007 ($0019 bytes) ["Interrupt Initialization Functions"]
$2e95 = IntrInit $2fef = IntrInit
$2e99 = InitializeLCDCInterrupt $2ff3 = InitializeLCDCInterrupt
SECTION: $2eae-$2ebc ($000f bytes) ["Banking Functions"] SECTION: $3008-$3016 ($000f bytes) ["Banking Functions"]
$2eae = BankingInit $3008 = BankingInit
SECTION: $2ebd-$2ec6 ($000a bytes) ["OAM DMA Code"] SECTION: $3017-$3020 ($000a bytes) ["OAM DMA Code"]
$2ebd = OAMDMA $3017 = OAMDMA
$2ec7 = OAMDMAEnd $3021 = OAMDMAEnd
EMPTY: $2ec7-$3fff ($1139 bytes) EMPTY: $3021-$3fff ($0fdf bytes)
TOTAL EMPTY: $1144 bytes TOTAL EMPTY: $0fea bytes
ROMX bank #1: ROMX bank #1:
SECTION: $4000-$4007 ($0008 bytes) ["Bank ID BANK_OTHER"] SECTION: $4000-$4007 ($0008 bytes) ["Bank ID BANK_OTHER"]
@ -958,7 +958,7 @@ ROMX bank #5:
$5321 = ClearLines.r_u48 $5321 = ClearLines.r_u48
$5321 = ClearLines.fixgarbo $5321 = ClearLines.fixgarbo
$5324 = ClearLines.fixgarboloop $5324 = ClearLines.fixgarboloop
SECTION: $532e-$6120 ($0df3 bytes) ["Gameplay Function Banked"] SECTION: $532e-$611a ($0ded bytes) ["Gameplay Function Banked"]
$532e = SwitchToGameplayB $532e = SwitchToGameplayB
$5334 = SwitchToGameplayB.wvr_u1 $5334 = SwitchToGameplayB.wvr_u1
$533d = SwitchToGameplayB.loadtilemap $533d = SwitchToGameplayB.loadtilemap
@ -1414,37 +1414,37 @@ ROMX bank #5:
$5fd7 = GamePlayEventLoopHandlerB.skip7_u213 $5fd7 = GamePlayEventLoopHandlerB.skip7_u213
$5fdb = GamePlayEventLoopHandlerB.gameOverMode $5fdb = GamePlayEventLoopHandlerB.gameOverMode
$5ffe = GamePlayEventLoopHandlerB.noretry $5ffe = GamePlayEventLoopHandlerB.noretry
$600b = GamePlayEventLoopHandlerB.pauseMode $6008 = GamePlayEventLoopHandlerB.pauseMode
$6023 = GamePlayEventLoopHandlerB.noqr $601d = GamePlayEventLoopHandlerB.noqr
$6038 = GamePlayEventLoopHandlerB.nounpause $6032 = GamePlayEventLoopHandlerB.nounpause
$6080 = GamePlayEventLoopHandlerB.drawStaticInfo $607a = GamePlayEventLoopHandlerB.drawStaticInfo
$60b1 = DoHold $60ab = DoHold
$60b5 = DoHold.checkIRSA $60af = DoHold.checkIRSA
$60bc = DoHold.ldb3 $60b6 = DoHold.ldb3
$60c8 = DoHold.lda3 $60c2 = DoHold.lda3
$60d2 = DoHold.cp3 $60cc = DoHold.cp3
$60e0 = DoHold.checkIRSB $60da = DoHold.checkIRSB
$60e7 = DoHold.lda4 $60e1 = DoHold.lda4
$60f3 = DoHold.ldb4 $60ed = DoHold.ldb4
$60fd = DoHold.cp4 $60f7 = DoHold.cp4
$610b = DoHold.noRotation $6105 = DoHold.noRotation
$6116 = DoHold.doHoldOperation $6110 = DoHold.doHoldOperation
SECTION: $6121-$654a ($042a bytes) ["Gameplay Static Data"] SECTION: $611b-$6544 ($042a bytes) ["Gameplay Static Data"]
$6121 = sLeftDasSlam $611b = sLeftDasSlam
$6127 = sRightDasSlam $6121 = sRightDasSlam
$612d = sLeady $6127 = sLeady
$6137 = sGo $6131 = sGo
$6141 = sPause $613b = sPause
$6169 = sPieceXOffsets $6163 = sPieceXOffsets
$6185 = sPieceYOffsets $617f = sPieceYOffsets
$61a1 = sPieceFastRotationStates $619b = sPieceFastRotationStates
$6211 = sPieceRotationStates $620b = sPieceRotationStates
$6281 = sTGM3Bag $627b = sTGM3Bag
$62a4 = sTGM3Droughts $629e = sTGM3Droughts
$62ab = sGameplayTileMap $62a5 = sGameplayTileMap
$654b = sGameplayTileMapEnd $6545 = sGameplayTileMapEnd
EMPTY: $654b-$7fff ($1ab5 bytes) EMPTY: $6545-$7fff ($1abb bytes)
TOTAL EMPTY: $1ab5 bytes TOTAL EMPTY: $1abb bytes
ROMX bank #6: ROMX bank #6:
SECTION: $4000-$4007 ($0008 bytes) ["Bank ID BANK_GAMEPLAY_BIG"] SECTION: $4000-$4007 ($0008 bytes) ["Bank ID BANK_GAMEPLAY_BIG"]
@ -1743,7 +1743,7 @@ ROMX bank #6:
$5273 = BigClearLines.fixgarbo $5273 = BigClearLines.fixgarbo
$5276 = BigClearLines.fixgarboloop $5276 = BigClearLines.fixgarboloop
$5294 = BigWidenField $5294 = BigWidenField
SECTION: $55e4-$6457 ($0e74 bytes) ["Gameplay Function Big Banked"] SECTION: $55e4-$6451 ($0e6e bytes) ["Gameplay Function Big Banked"]
$55e4 = SwitchToGameplayBigB $55e4 = SwitchToGameplayBigB
$55ea = SwitchToGameplayBigB.wvr_u214 $55ea = SwitchToGameplayBigB.wvr_u214
$55f3 = SwitchToGameplayBigB.loadtilemap $55f3 = SwitchToGameplayBigB.loadtilemap
@ -2219,35 +2219,35 @@ ROMX bank #6:
$630f = GamePlayBigEventLoopHandlerB.skip7_u436 $630f = GamePlayBigEventLoopHandlerB.skip7_u436
$6313 = GamePlayBigEventLoopHandlerB.gameOverMode $6313 = GamePlayBigEventLoopHandlerB.gameOverMode
$6336 = GamePlayBigEventLoopHandlerB.noretry $6336 = GamePlayBigEventLoopHandlerB.noretry
$6343 = GamePlayBigEventLoopHandlerB.pauseMode $6340 = GamePlayBigEventLoopHandlerB.pauseMode
$635b = GamePlayBigEventLoopHandlerB.noqr $6355 = GamePlayBigEventLoopHandlerB.noqr
$636f = GamePlayBigEventLoopHandlerB.nounpause $6369 = GamePlayBigEventLoopHandlerB.nounpause
$63b7 = GamePlayBigEventLoopHandlerB.drawStaticInfo $63b1 = GamePlayBigEventLoopHandlerB.drawStaticInfo
$63e8 = BigDoHold $63e2 = BigDoHold
$63ec = BigDoHold.checkIRSA $63e6 = BigDoHold.checkIRSA
$63f3 = BigDoHold.ldb3 $63ed = BigDoHold.ldb3
$63ff = BigDoHold.lda3 $63f9 = BigDoHold.lda3
$6409 = BigDoHold.cp3 $6403 = BigDoHold.cp3
$6417 = BigDoHold.checkIRSB $6411 = BigDoHold.checkIRSB
$641e = BigDoHold.lda4 $6418 = BigDoHold.lda4
$642a = BigDoHold.ldb4 $6424 = BigDoHold.ldb4
$6434 = BigDoHold.cp4 $642e = BigDoHold.cp4
$6442 = BigDoHold.noRotation $643c = BigDoHold.noRotation
$644d = BigDoHold.doHoldOperation $6447 = BigDoHold.doHoldOperation
SECTION: $6458-$6857 ($0400 bytes) ["Gameplay Big Static Data"] SECTION: $6452-$6851 ($0400 bytes) ["Gameplay Big Static Data"]
$6458 = sBigLeftDasSlam $6452 = sBigLeftDasSlam
$645e = sBigRightDasSlam $6458 = sBigRightDasSlam
$6464 = sBigLeady $645e = sBigLeady
$646e = sBigGo $6468 = sBigGo
$6478 = sBigPause $6472 = sBigPause
$64a0 = sBigPieceXOffsets $649a = sBigPieceXOffsets
$64bc = sBigPieceYOffsets $64b6 = sBigPieceYOffsets
$64d8 = sBigPieceFastRotationStates $64d2 = sBigPieceFastRotationStates
$6548 = sBigPieceRotationStates $6542 = sBigPieceRotationStates
$65b8 = sBigGameplayTileMap $65b2 = sBigGameplayTileMap
$6858 = sBigGameplayTileMapEnd $6852 = sBigGameplayTileMapEnd
EMPTY: $6858-$7fff ($17a8 bytes) EMPTY: $6852-$7fff ($17ae bytes)
TOTAL EMPTY: $17a8 bytes TOTAL EMPTY: $17ae bytes
SRAM bank #0: SRAM bank #0:
SECTION: $a000-$a00d ($000e bytes) ["Persistent Globals"] SECTION: $a000-$a00d ($000e bytes) ["Persistent Globals"]
@ -2470,8 +2470,8 @@ HRAM bank #0:
TOTAL EMPTY: $0003 bytes TOTAL EMPTY: $0003 bytes
SUMMARY: SUMMARY:
ROM0: 11964 bytes used / 4420 free ROM0: 12310 bytes used / 4074 free
ROMX: 56895 bytes used / 41409 free in 6 banks ROMX: 56883 bytes used / 41421 free in 6 banks
SRAM: 14 bytes used / 8178 free in 1 bank SRAM: 14 bytes used / 8178 free in 1 bank
WRAM0: 3515 bytes used / 581 free WRAM0: 3515 bytes used / 581 free
HRAM: 124 bytes used / 3 free HRAM: 124 bytes used / 3 free

Binary file not shown.

View File

@ -59,276 +59,276 @@
00:0c33 GBCBigGameplayProcess 00:0c33 GBCBigGameplayProcess
00:0c71 GBCBigGameplayProcess.goverride 00:0c71 GBCBigGameplayProcess.goverride
00:0c98 GBCBigGameplayProcess.colorfield 00:0c98 GBCBigGameplayProcess.colorfield
00:0caf GBCBigGameplayProcess.outer1 00:0e0c GBCBigGameplayProcess.outer1
00:0cb4 GBCBigGameplayProcess.inner1 00:0e11 GBCBigGameplayProcess.inner1
00:0cd8 GBCBigGameplayProcess.outer2 00:0e35 GBCBigGameplayProcess.outer2
00:0cdd GBCBigGameplayProcess.inner2 00:0e3a GBCBigGameplayProcess.inner2
00:0d02 GBCBigGameplayProcess.empty 00:0e5f GBCBigGameplayProcess.empty
00:0d06 GBCBigGameplayProcess.sub59 00:0e63 GBCBigGameplayProcess.sub59
00:0d08 GBCBigGameplayProcess.sub52 00:0e65 GBCBigGameplayProcess.sub52
00:0d0a GBCBigGameplayProcess.sub45 00:0e67 GBCBigGameplayProcess.sub45
00:0d0c GBCBigGameplayProcess.sub38 00:0e69 GBCBigGameplayProcess.sub38
00:0d0e GBCBigGameplayProcess.sub31 00:0e6b GBCBigGameplayProcess.sub31
00:0d10 GBCBigGameplayProcess.sub24 00:0e6d GBCBigGameplayProcess.sub24
00:0d12 GBCBigGameplayProcess.sub17 00:0e6f GBCBigGameplayProcess.sub17
00:0d14 GBCBigGameplayProcess.sub10 00:0e71 GBCBigGameplayProcess.sub10
00:0d16 GBCBigGameplayProcess.done 00:0e73 GBCBigGameplayProcess.done
00:0d38 GBCBigGameplayProcess.darker 00:0e95 GBCBigGameplayProcess.darker
00:0d3f GBCBigGameplayProcess.wvr_u4 00:0e9c GBCBigGameplayProcess.wvr_u4
00:0d4c GBCBigGameplayProcess.lighter 00:0ea9 GBCBigGameplayProcess.lighter
00:0d53 GBCBigGameplayProcess.wvr_u5 00:0eb0 GBCBigGameplayProcess.wvr_u5
00:0d60 GBCBigGameplayProcess.black 00:0ebd GBCBigGameplayProcess.black
00:0d67 GBCBigGameplayProcess.wvr_u6 00:0ec4 GBCBigGameplayProcess.wvr_u6
00:0d74 ToVRAM 00:0ed1 ToVRAM
00:0d74 GBCBlitField 00:0ed1 GBCBlitField
00:0da7 BlitField 00:0f04 BlitField
00:0f6a BlitField.waitendvbloop 00:10c7 BlitField.waitendvbloop
00:119c BigBlitField 00:12f9 BigBlitField
00:135f BigBlitField.waitendvbloop 00:14bc BigBlitField.waitendvbloop
00:1591 ApplyTells 00:16ee ApplyTells
00:15cf ApplyTells.myco 00:172c ApplyTells.myco
00:15d4 ApplyTells.dropmode 00:1731 ApplyTells.dropmode
00:15f9 ApplyNext 00:1756 ApplyNext
00:1607 ApplyNext.bone 00:1764 ApplyNext.bone
00:1626 ApplyNext.nobone 00:1783 ApplyNext.nobone
00:1647 ApplyNext.pos 00:17a4 ApplyNext.pos
00:1657 ApplyNext.regular 00:17b4 ApplyNext.regular
00:165d ApplyNext.postoffsets 00:17ba ApplyNext.postoffsets
00:1661 ApplyNext.getoffn 00:17be ApplyNext.getoffn
00:166c ApplyNext.skipoffn 00:17c9 ApplyNext.skipoffn
00:170a ApplyNext.done 00:1867 ApplyNext.done
00:170d ApplyHold 00:186a ApplyHold
00:171b ApplyHold.bone 00:1878 ApplyHold.bone
00:173a ApplyHold.nobone 00:1897 ApplyHold.nobone
00:1757 ApplyHold.hide 00:18b4 ApplyHold.hide
00:1769 ApplyHold.show 00:18c6 ApplyHold.show
00:1779 ApplyHold.x 00:18d6 ApplyHold.x
00:1789 ApplyHold.regular 00:18e6 ApplyHold.regular
00:178f ApplyHold.postoffsets 00:18ec ApplyHold.postoffsets
00:1793 ApplyHold.getoffh 00:18f0 ApplyHold.getoffh
00:179e ApplyHold.skipoffh 00:18fb ApplyHold.skipoffh
00:17d8 ApplyTime 00:1935 ApplyTime
00:1829 ApplyTime.loop0 00:1986 ApplyTime.loop0
00:1858 ApplyTime.loop1 00:19b5 ApplyTime.loop1
00:18ad ApplyNumbers8 00:1a0a ApplyNumbers8
00:18fa ApplyNumbers8.one 00:1a57 ApplyNumbers8.one
00:1900 ApplyNumbers8.two 00:1a5d ApplyNumbers8.two
00:1906 ApplyNumbers8.three 00:1a63 ApplyNumbers8.three
00:190c ApplyNumbers8.four 00:1a69 ApplyNumbers8.four
00:1912 ApplyNumbers8.five 00:1a6f ApplyNumbers8.five
00:1918 ApplyNumbers8.six 00:1a75 ApplyNumbers8.six
00:191e ApplyNumbers8.seven 00:1a7b ApplyNumbers8.seven
00:1924 ApplyNumbers8.eight 00:1a81 ApplyNumbers8.eight
00:1929 ApplyNumbers4 00:1a86 ApplyNumbers4
00:194e ApplyNumbers4.one 00:1aab ApplyNumbers4.one
00:1954 ApplyNumbers4.two 00:1ab1 ApplyNumbers4.two
00:195a ApplyNumbers4.three 00:1ab7 ApplyNumbers4.three
00:1960 ApplyNumbers4.four 00:1abd ApplyNumbers4.four
00:1965 SetNumberSpritePositions 00:1ac2 SetNumberSpritePositions
00:1a6c GradeRendering 00:1bc9 GradeRendering
00:1aa1 GradeRendering.effect 00:1bfe GradeRendering.effect
00:1ab1 GradeRendering.noeffect 00:1c0e GradeRendering.noeffect
00:1ab9 GradeRendering.drawgrade 00:1c16 GradeRendering.drawgrade
00:1ac0 GradeRendering.regulargrade 00:1c1d GradeRendering.regulargrade
00:1ac8 GradeRendering.sgrade 00:1c25 GradeRendering.sgrade
00:1ade GradeRendering.hisgrade 00:1c3b GradeRendering.hisgrade
00:1af4 GradeRendering.mgrade 00:1c51 GradeRendering.mgrade
00:1b0a GradeRendering.lettergrade 00:1c67 GradeRendering.lettergrade
00:1b27 GradeRendering.mk 00:1c84 GradeRendering.mk
00:1b2d GradeRendering.mv 00:1c8a GradeRendering.mv
00:1b33 GradeRendering.mo 00:1c90 GradeRendering.mo
00:1b39 GradeRendering.mm 00:1c96 GradeRendering.mm
00:1b3f GradeRendering.gmgrade 00:1c9c GradeRendering.gmgrade
00:1b4a GradeInit 00:1ca7 GradeInit
00:1b75 GradeInit.grade9start 00:1cd2 GradeInit.grade9start
00:1b7a GradeInit.end 00:1cd7 GradeInit.end
00:1b7c UpdateGrade 00:1cd9 UpdateGrade
00:1b8a UpdateGrade.gradejumptable 00:1ce7 UpdateGrade.gradejumptable
00:1b9f DecayGradeProcess 00:1cfc DecayGradeProcess
00:1bad DecayGradeProcess.gradejumptable 00:1d0a DecayGradeProcess.gradejumptable
00:1bc2 DecayGradeDelay 00:1d1f DecayGradeDelay
00:1bd0 DecayGradeDelay.gradejumptable 00:1d2d DecayGradeDelay.gradejumptable
00:1be5 PrepareScore 00:1d42 PrepareScore
00:1bf8 DrawGradeProgressDMGT 00:1d55 DrawGradeProgressDMGT
00:1c07 UpdateGradeDMGT 00:1d64 UpdateGradeDMGT
00:1c21 UpdateGradeDMGT.clearrate 00:1d7e UpdateGradeDMGT.clearrate
00:1c32 UpdateGradeDMGT.combomult 00:1d8f UpdateGradeDMGT.combomult
00:1c3f UpdateGradeDMGT.combo10 00:1d9c UpdateGradeDMGT.combo10
00:1c50 UpdateGradeDMGT.combo5 00:1dad UpdateGradeDMGT.combo5
00:1c61 UpdateGradeDMGT.combo1 00:1dbe UpdateGradeDMGT.combo1
00:1c70 UpdateGradeDMGT.prelevel 00:1dcd UpdateGradeDMGT.prelevel
00:1c7f UpdateGradeDMGT.single 00:1ddc UpdateGradeDMGT.single
00:1c8f UpdateGradeDMGT.double 00:1dec UpdateGradeDMGT.double
00:1ca0 UpdateGradeDMGT.adddonce 00:1dfd UpdateGradeDMGT.adddonce
00:1ca4 UpdateGradeDMGT.triple 00:1e01 UpdateGradeDMGT.triple
00:1cb5 UpdateGradeDMGT.addtonce 00:1e12 UpdateGradeDMGT.addtonce
00:1cb9 UpdateGradeDMGT.tetris 00:1e16 UpdateGradeDMGT.tetris
00:1cbd UpdateGradeDMGT.levelmult 00:1e1a UpdateGradeDMGT.levelmult
00:1cd5 UpdateGradeDMGT.mult5 00:1e32 UpdateGradeDMGT.mult5
00:1cdc UpdateGradeDMGT.mult4 00:1e39 UpdateGradeDMGT.mult4
00:1ce2 UpdateGradeDMGT.mult3 00:1e3f UpdateGradeDMGT.mult3
00:1ce7 UpdateGradeDMGT.mult2 00:1e44 UpdateGradeDMGT.mult2
00:1ceb UpdateGradeDMGT.mult1 00:1e48 UpdateGradeDMGT.mult1
00:1cec UpdateGradeDMGT.processgrade 00:1e49 UpdateGradeDMGT.processgrade
00:1d12 UpdateGradeDMGT.increasegrademaybe 00:1e6f UpdateGradeDMGT.increasegrademaybe
00:1d33 UpdateGradeDMGT.gotgm 00:1e90 UpdateGradeDMGT.gotgm
00:1d3e DecayGradeDMGT 00:1e9b DecayGradeDMGT
00:1d62 DecayGradeDMGT.nodecay 00:1ebf DecayGradeDMGT.nodecay
00:1d69 DecayGradeDMGT.decay 00:1ec6 DecayGradeDMGT.decay
00:1d77 UpdateGradeTGM1 00:1ed4 UpdateGradeTGM1
00:1d81 UpdateGradeTGM1.trygradeup 00:1ede UpdateGradeTGM1.trygradeup
00:1d9b UpdateGradeTGM1.increasegrade 00:1ef8 UpdateGradeTGM1.increasegrade
00:1dad UpdateGradeTGM1.skipjingle 00:1f0a UpdateGradeTGM1.skipjingle
00:1dba UpdateGradeTGM1.maybegm 00:1f17 UpdateGradeTGM1.maybegm
00:1dd0 UpdateGradeDEAT 00:1f2d UpdateGradeDEAT
00:1ddc UpdateGradeDEAT.notgm 00:1f39 UpdateGradeDEAT.notgm
00:1df5 UpdateGradeDEAT.notm 00:1f52 UpdateGradeDEAT.notm
00:1e15 UpdateGradeDEAT.disqualify 00:1f72 UpdateGradeDEAT.disqualify
00:1e1b UpdateGradeSHIR 00:1f78 UpdateGradeSHIR
00:1e5b UpdateGradeSHIR.s5torikan 00:1fb8 UpdateGradeSHIR.s5torikan
00:1e6b UpdateGradeSHIR.s10torikan 00:1fc8 UpdateGradeSHIR.s10torikan
00:1e7a UpdateGradeSHIR.disqualify 00:1fd7 UpdateGradeSHIR.disqualify
00:1e80 sTGM1GradeScores 00:1fdd sTGM1GradeScores
00:1ea2 sTGM3InternalGradeSystem 00:1fff sTGM3InternalGradeSystem
00:1f42 sTGM3GradeBoosts 00:209f sTGM3GradeBoosts
00:1f61 sTGM3LevelMultiplier 00:20be sTGM3LevelMultiplier
00:1f65 sTGM3BaselineCOOL 00:20c2 sTGM3BaselineCOOL
00:1f6e sTGM3REGRETConditions 00:20cb sTGM3REGRETConditions
00:1f82 sDMGTGrading 00:20df sDMGTGrading
00:2036 sDMGTGaugeLUT 00:2193 sDMGTGaugeLUT
00:2136 SFXInit 00:2293 SFXInit
00:2158 SFXPopQueue 00:22b5 SFXPopQueue
00:216d SFXPushQueue 00:22ca SFXPushQueue
00:217e SFXProcessQueue 00:22db SFXProcessQueue
00:21ac SFXTriggerNoise 00:2309 SFXTriggerNoise
00:21d2 SFXEnqueue 00:232f SFXEnqueue
00:21e7 SFXEnqueue.findsfx 00:2344 SFXEnqueue.findsfx
00:2340 SFXKill 00:249d SFXKill
00:236b SFXPlayNoise 00:24c8 SFXPlayNoise
00:2376 SFXPlayNoise.noisereg 00:24d3 SFXPlayNoise.noisereg
00:238d SFXPlayNoise.savenoiseplayhead 00:24ea SFXPlayNoise.savenoiseplayhead
00:2396 SFXPlay 00:24f3 SFXPlay
00:23a4 SFXPlay.play 00:2501 SFXPlay.play
00:23b0 SFXPlay.getRegister 00:250d SFXPlay.getRegister
00:23c4 SFXPlay.savePlayhead 00:2521 SFXPlay.savePlayhead
00:23cd HarvestEntropy 00:252a HarvestEntropy
00:23d3 HarvestEntropy.loop 00:2530 HarvestEntropy.loop
00:23f4 RNGInit 00:2551 RNGInit
00:245a RNGInit.complexinit 00:25b7 RNGInit.complexinit
00:248c ShiftHistory 00:25e9 ShiftHistory
00:24a9 GetNextHellPiece 00:2606 GetNextHellPiece
00:24ae GetNextTGM1Piece 00:260b GetNextTGM1Piece
00:24cb GetNextTGM2Piece 00:2628 GetNextTGM2Piece
00:24e8 GetNextNesPiece 00:2645 GetNextNesPiece
00:24f6 GetNextTGM3Piece 00:2653 GetNextTGM3Piece
00:25ad GetNextPiece 00:270a GetNextPiece
00:25bb GetNextPiece.nextpiecejumps 00:2718 GetNextPiece.nextpiecejumps
00:25ca Next35Piece 00:2727 Next35Piece
00:25d4 Next7Piece 00:2731 Next7Piece
00:25de NextByte 00:273b NextByte
00:25fe LevelInit 00:275b LevelInit
00:264e LevelUp 00:27ab LevelUp
00:2672 LevelUp.doit 00:27cf LevelUp.doit
00:26b6 LevelUp.checknlevel 00:2813 LevelUp.checknlevel
00:2705 LevelUp.bellmaybe 00:2862 LevelUp.bellmaybe
00:2717 LevelUp.leveljinglemaybe 00:2874 LevelUp.leveljinglemaybe
00:2724 LevelUp.checkspeedup 00:2881 LevelUp.checkspeedup
00:2760 DoSpeedUp 00:28bd DoSpeedUp
00:27a1 sProgressData 00:28fe sProgressData
00:28eb ScoreInit 00:2a48 ScoreInit
00:2913 IncreaseScore 00:2a70 IncreaseScore
00:294b IncreaseScore.doConvert 00:2aa8 IncreaseScore.doConvert
00:2963 IncreaseScore.carry 00:2ac0 IncreaseScore.carry
00:2965 IncreaseScore.postConvert 00:2ac2 IncreaseScore.postConvert
00:2979 IncreaseScore.preAddDigit 00:2ad6 IncreaseScore.preAddDigit
00:29a1 IncreaseScore.addDigit 00:2afe IncreaseScore.addDigit
00:29b7 IncreaseScore.nextDigit 00:2b14 IncreaseScore.nextDigit
00:29cb InputInit 00:2b28 InputInit
00:29dd GetInput 00:2b3a GetInput
00:29dd GetInput.btns 00:2b3a GetInput.btns
00:29ea GetInput.readA 00:2b47 GetInput.readA
00:29ee GetInput.setA 00:2b4b GetInput.setA
00:29f9 GetInput.clearA 00:2b56 GetInput.clearA
00:29fc GetInput.readB 00:2b59 GetInput.readB
00:2a00 GetInput.setB 00:2b5d GetInput.setB
00:2a0b GetInput.clearB 00:2b68 GetInput.clearB
00:2a0e GetInput.readSelect 00:2b6b GetInput.readSelect
00:2a12 GetInput.setSelect 00:2b6f GetInput.setSelect
00:2a1d GetInput.clearSelect 00:2b7a GetInput.clearSelect
00:2a20 GetInput.readStart 00:2b7d GetInput.readStart
00:2a24 GetInput.setStart 00:2b81 GetInput.setStart
00:2a2f GetInput.clearStart 00:2b8c GetInput.clearStart
00:2a32 GetInput.dpad 00:2b8f GetInput.dpad
00:2a3f GetInput.readUp 00:2b9c GetInput.readUp
00:2a43 GetInput.setUp 00:2ba0 GetInput.setUp
00:2a4e GetInput.clearUp 00:2bab GetInput.clearUp
00:2a51 GetInput.readDown 00:2bae GetInput.readDown
00:2a55 GetInput.setDown 00:2bb2 GetInput.setDown
00:2a60 GetInput.clearDown 00:2bbd GetInput.clearDown
00:2a63 GetInput.readLeft 00:2bc0 GetInput.readLeft
00:2a67 GetInput.setLeft 00:2bc4 GetInput.setLeft
00:2a72 GetInput.clearLeft 00:2bcf GetInput.clearLeft
00:2a75 GetInput.readRight 00:2bd2 GetInput.readRight
00:2a79 GetInput.setRight 00:2bd6 GetInput.setRight
00:2a84 GetInput.clearRight 00:2be1 GetInput.clearRight
00:2a87 GetInput.priorities 00:2be4 GetInput.priorities
00:2a92 GetInput.zero 00:2bef GetInput.zero
00:2a98 RestoreSRAM 00:2bf5 RestoreSRAM
00:2af1 InitializeSRAM 00:2c4e InitializeSRAM
00:2b4f SetProgress 00:2cac SetProgress
00:2b5a SetProgress.loop 00:2cb7 SetProgress.loop
00:2b5e SetProgress.correct 00:2cbb SetProgress.correct
00:2b85 SetProgress.wvr_u1 00:2ce2 SetProgress.wvr_u1
00:2b91 SetProgress.wvr_u2 00:2cee SetProgress.wvr_u2
00:2b9f SetProgress.wvr_u3 00:2cfc SetProgress.wvr_u3
00:2bab SetProgress.wvr_u4 00:2d08 SetProgress.wvr_u4
00:2bb9 SetProgress.wvr_u5 00:2d16 SetProgress.wvr_u5
00:2bc5 SetProgress.wvr_u6 00:2d22 SetProgress.wvr_u6
00:2bd3 SetProgress.wvr_u7 00:2d30 SetProgress.wvr_u7
00:2bdf SetProgress.wvr_u8 00:2d3c SetProgress.wvr_u8
00:2bed SetProgress.wvr_u9 00:2d4a SetProgress.wvr_u9
00:2bf9 SetProgress.wvr_u10 00:2d56 SetProgress.wvr_u10
00:2c01 Main 00:2d5e Main
00:2c2a Main.notgbc 00:2d87 Main.notgbc
00:2c30 Main.wvr_u1 00:2d8d Main.wvr_u1
00:2c5d EventLoop 00:2dba EventLoop
00:2c73 EventLoop.eventloopjumps 00:2dd0 EventLoop.eventloopjumps
00:2c7c EventLoopPostHandler 00:2dd9 EventLoopPostHandler
00:2c7e EventLoopPostHandler.wvb_u2 00:2ddb EventLoopPostHandler.wvb_u2
00:2c90 EventLoopPostHandler.vblankjumps 00:2ded EventLoopPostHandler.vblankjumps
00:2c99 TimeInit 00:2df6 TimeInit
00:2cae ResetGameTime 00:2e0b ResetGameTime
00:2cb9 CheckTorikan 00:2e16 CheckTorikan
00:2cd0 CheckTorikan.failure 00:2e2d CheckTorikan.failure
00:2cd2 CheckTorikan.success 00:2e2f CheckTorikan.success
00:2cd5 HandleTimers 00:2e32 HandleTimers
00:2cfd HandleTimers.go 00:2e5a HandleTimers.go
00:2d21 SwitchToTitle 00:2e7e SwitchToTitle
00:2d2b TitleEventLoopHandler 00:2e87 TitleEventLoopHandler
00:2d35 TitleVBlankHandler 00:2e91 TitleVBlankHandler
00:2d3f DrawOption6 00:2e9b DrawOption6
00:2d8f LoadTitleTiles 00:2eeb LoadTitleTiles
00:2dad LoadGameplayTiles 00:2f09 LoadGameplayTiles
00:2dc3 LoadGameplayTiles.gbc 00:2f1f LoadGameplayTiles.gbc
00:2dd2 LoadGameplayTiles.dmg 00:2f2e LoadGameplayTiles.dmg
00:2de1 sFramesToCS 00:2f3d sFramesToCS
00:2e1d UnsafeMemCopy 00:2f79 UnsafeMemCopy
00:2e26 SafeMemCopy.wvr_u1 00:2f82 SafeMemCopy.wvr_u1
00:2e26 SafeMemCopy 00:2f82 SafeMemCopy
00:2e35 UnsafeMemSet 00:2f91 UnsafeMemSet
00:2e3d SafeMemSet 00:2f99 SafeMemSet
00:2e3d SafeMemSet.wvr_u2 00:2f99 SafeMemSet.wvr_u2
00:2e4b SwitchToGameplay 00:2fa7 SwitchToGameplay
00:2e55 SwitchToGameplayBig 00:2fb0 SwitchToGameplayBig
00:2e5f GamePlayEventLoopHandler 00:2fb9 GamePlayEventLoopHandler
00:2e69 GamePlayBigEventLoopHandler 00:2fc3 GamePlayBigEventLoopHandler
00:2e73 CopyOAMHandler 00:2fcd CopyOAMHandler
00:2e7f ClearOAM 00:2fd9 ClearOAM
00:2e95 IntrInit 00:2fef IntrInit
00:2e99 InitializeLCDCInterrupt 00:2ff3 InitializeLCDCInterrupt
00:2eae BankingInit 00:3008 BankingInit
00:2ebd OAMDMA 00:3017 OAMDMA
00:2ec7 OAMDMAEnd 00:3021 OAMDMAEnd
01:4008 sDMGTSpeedCurve 01:4008 sDMGTSpeedCurve
01:4210 sDMGTSpeedCurveEnd 01:4210 sDMGTSpeedCurveEnd
01:4212 sTGM1SpeedCurve 01:4212 sTGM1SpeedCurve
@ -1171,34 +1171,34 @@
05:5fd7 GamePlayEventLoopHandlerB.skip7_u213 05:5fd7 GamePlayEventLoopHandlerB.skip7_u213
05:5fdb GamePlayEventLoopHandlerB.gameOverMode 05:5fdb GamePlayEventLoopHandlerB.gameOverMode
05:5ffe GamePlayEventLoopHandlerB.noretry 05:5ffe GamePlayEventLoopHandlerB.noretry
05:600b GamePlayEventLoopHandlerB.pauseMode 05:6008 GamePlayEventLoopHandlerB.pauseMode
05:6023 GamePlayEventLoopHandlerB.noqr 05:601d GamePlayEventLoopHandlerB.noqr
05:6038 GamePlayEventLoopHandlerB.nounpause 05:6032 GamePlayEventLoopHandlerB.nounpause
05:6080 GamePlayEventLoopHandlerB.drawStaticInfo 05:607a GamePlayEventLoopHandlerB.drawStaticInfo
05:60b1 DoHold 05:60ab DoHold
05:60b5 DoHold.checkIRSA 05:60af DoHold.checkIRSA
05:60bc DoHold.ldb3 05:60b6 DoHold.ldb3
05:60c8 DoHold.lda3 05:60c2 DoHold.lda3
05:60d2 DoHold.cp3 05:60cc DoHold.cp3
05:60e0 DoHold.checkIRSB 05:60da DoHold.checkIRSB
05:60e7 DoHold.lda4 05:60e1 DoHold.lda4
05:60f3 DoHold.ldb4 05:60ed DoHold.ldb4
05:60fd DoHold.cp4 05:60f7 DoHold.cp4
05:610b DoHold.noRotation 05:6105 DoHold.noRotation
05:6116 DoHold.doHoldOperation 05:6110 DoHold.doHoldOperation
05:6121 sLeftDasSlam 05:611b sLeftDasSlam
05:6127 sRightDasSlam 05:6121 sRightDasSlam
05:612d sLeady 05:6127 sLeady
05:6137 sGo 05:6131 sGo
05:6141 sPause 05:613b sPause
05:6169 sPieceXOffsets 05:6163 sPieceXOffsets
05:6185 sPieceYOffsets 05:617f sPieceYOffsets
05:61a1 sPieceFastRotationStates 05:619b sPieceFastRotationStates
05:6211 sPieceRotationStates 05:620b sPieceRotationStates
05:6281 sTGM3Bag 05:627b sTGM3Bag
05:62a4 sTGM3Droughts 05:629e sTGM3Droughts
05:62ab sGameplayTileMap 05:62a5 sGameplayTileMap
05:654b sGameplayTileMapEnd 05:6545 sGameplayTileMapEnd
06:4008 BigFieldInit 06:4008 BigFieldInit
06:4049 BigFieldClear 06:4049 BigFieldClear
06:40ef BigToBackupField 06:40ef BigToBackupField
@ -1917,32 +1917,32 @@
06:630f GamePlayBigEventLoopHandlerB.skip7_u436 06:630f GamePlayBigEventLoopHandlerB.skip7_u436
06:6313 GamePlayBigEventLoopHandlerB.gameOverMode 06:6313 GamePlayBigEventLoopHandlerB.gameOverMode
06:6336 GamePlayBigEventLoopHandlerB.noretry 06:6336 GamePlayBigEventLoopHandlerB.noretry
06:6343 GamePlayBigEventLoopHandlerB.pauseMode 06:6340 GamePlayBigEventLoopHandlerB.pauseMode
06:635b GamePlayBigEventLoopHandlerB.noqr 06:6355 GamePlayBigEventLoopHandlerB.noqr
06:636f GamePlayBigEventLoopHandlerB.nounpause 06:6369 GamePlayBigEventLoopHandlerB.nounpause
06:63b7 GamePlayBigEventLoopHandlerB.drawStaticInfo 06:63b1 GamePlayBigEventLoopHandlerB.drawStaticInfo
06:63e8 BigDoHold 06:63e2 BigDoHold
06:63ec BigDoHold.checkIRSA 06:63e6 BigDoHold.checkIRSA
06:63f3 BigDoHold.ldb3 06:63ed BigDoHold.ldb3
06:63ff BigDoHold.lda3 06:63f9 BigDoHold.lda3
06:6409 BigDoHold.cp3 06:6403 BigDoHold.cp3
06:6417 BigDoHold.checkIRSB 06:6411 BigDoHold.checkIRSB
06:641e BigDoHold.lda4 06:6418 BigDoHold.lda4
06:642a BigDoHold.ldb4 06:6424 BigDoHold.ldb4
06:6434 BigDoHold.cp4 06:642e BigDoHold.cp4
06:6442 BigDoHold.noRotation 06:643c BigDoHold.noRotation
06:644d BigDoHold.doHoldOperation 06:6447 BigDoHold.doHoldOperation
06:6458 sBigLeftDasSlam 06:6452 sBigLeftDasSlam
06:645e sBigRightDasSlam 06:6458 sBigRightDasSlam
06:6464 sBigLeady 06:645e sBigLeady
06:646e sBigGo 06:6468 sBigGo
06:6478 sBigPause 06:6472 sBigPause
06:64a0 sBigPieceXOffsets 06:649a sBigPieceXOffsets
06:64bc sBigPieceYOffsets 06:64b6 sBigPieceYOffsets
06:64d8 sBigPieceFastRotationStates 06:64d2 sBigPieceFastRotationStates
06:6548 sBigPieceRotationStates 06:6542 sBigPieceRotationStates
06:65b8 sBigGameplayTileMap 06:65b2 sBigGameplayTileMap
06:6858 sBigGameplayTileMapEnd 06:6852 sBigGameplayTileMapEnd
00:a000 rCheck 00:a000 rCheck
00:a006 rSwapABState 00:a006 rSwapABState
00:a007 rRNGModeState 00:a007 rRNGModeState

View File

@ -313,7 +313,7 @@ GBCGameplayProcess::
cp a, SCURVE_CHIL cp a, SCURVE_CHIL
ld a, $01 ;Green ld a, $01 ;Green
jr z, .goverride jr z, .goverride
ld a, $02 ;Green ld a, $02 ;Purple
; Are we 20G? ; Are we 20G?
.goverride .goverride
@ -529,7 +529,7 @@ GBCBigGameplayProcess::
cp a, SCURVE_CHIL cp a, SCURVE_CHIL
ld a, $01 ;Green ld a, $01 ;Green
jr z, .goverride jr z, .goverride
ld a, $02 ;Green ld a, $02 ;Purple
; Are we 20G? ; Are we 20G?
.goverride .goverride
@ -557,9 +557,24 @@ GBCBigGameplayProcess::
ld d, a ld d, a
.colorfield .colorfield
ld hl, wShadowTileAttrs ld a, d
ld bc, 32*21 DEF row = 0
call UnsafeMemSet REPT 21
ld hl, wShadowTileAttrs + (row*32) + 31
ld [hl], a
ld hl, wShadowTileAttrs + (row*32) + 10
ld [hl+], a
ld [hl+], a
ld [hl+], a
ld [hl+], a
ld [hl+], a
ld [hl+], a
ld [hl+], a
ld [hl+], a
ld [hl+], a
ld [hl], a
DEF row += 1
ENDR
; What to copy ; What to copy

View File

@ -625,11 +625,6 @@ sSHIRSpeedCurve::
sSHIRSpeedCurveEnd:: sSHIRSpeedCurveEnd::
dw $FFFF dw $FFFF
; dw BCD_START_LEVEL, START_LEVEL, BCD_NEXT_100_LEVEL_BREAKPOINT
; db GRID_CELLS_PER_MOVE_ON_OVERFLOW, INCREMENT_PER_FRAME (0 means overflow each frame)
; db NORMAL_ARE, LINE_ARE, DAS, LOCK_DELAY, CLEAR_DELAY
sMYCOSpeedCurve:: sMYCOSpeedCurve::
dw $0000, 0, $0100 dw $0000, 0, $0100
db 1, 4 db 1, 4

View File

@ -43,16 +43,14 @@ SwitchToGameplay::
ld b, BANK_GAMEPLAY ld b, BANK_GAMEPLAY
rst RSTSwitchBank rst RSTSwitchBank
call SwitchToGameplayB call SwitchToGameplayB
rst RSTRestoreBank jp RSTRestoreBank
jp EventLoopPostHandler
; Trampolines to the banked function. ; Trampolines to the banked function.
SwitchToGameplayBig:: SwitchToGameplayBig::
ld b, BANK_GAMEPLAY_BIG ld b, BANK_GAMEPLAY_BIG
rst RSTSwitchBank rst RSTSwitchBank
call SwitchToGameplayBigB call SwitchToGameplayBigB
rst RSTRestoreBank jp RSTRestoreBank
jp EventLoopPostHandler
; Banks and jumps to the actual handler. ; Banks and jumps to the actual handler.
GamePlayEventLoopHandler:: GamePlayEventLoopHandler::
@ -530,8 +528,7 @@ GamePlayEventLoopHandlerB::
ldh a, [hBState] ldh a, [hBState]
cp a, 10 ; 10 frame hold cp a, 10 ; 10 frame hold
jp nz, .drawStaticInfo jp nz, .drawStaticInfo
call SwitchToTitle jp SwitchToTitle
jp EventLoopPostHandler
.pauseMode .pauseMode
@ -545,8 +542,7 @@ GamePlayEventLoopHandlerB::
ldh a, [hSelectState] ldh a, [hSelectState]
cp a, 0 cp a, 0
jr z, .noqr jr z, .noqr
call SwitchToTitle jp SwitchToTitle
jp EventLoopPostHandler
; Unpause ; Unpause
.noqr .noqr
@ -767,6 +763,7 @@ SwitchToGameplayBigB:
wait_vblank_end wait_vblank_end
ret ret
; Main gameplay event loop. ; Main gameplay event loop.
GamePlayBigEventLoopHandlerB: GamePlayBigEventLoopHandlerB:
; What mode are we in? ; What mode are we in?
@ -1149,8 +1146,7 @@ GamePlayBigEventLoopHandlerB:
ldh a, [hBState] ldh a, [hBState]
cp a, 10 ; 10 frame hold cp a, 10 ; 10 frame hold
jp nz, .drawStaticInfo jp nz, .drawStaticInfo
call SwitchToTitle jp SwitchToTitle
jp EventLoopPostHandler
.pauseMode .pauseMode
@ -1164,8 +1160,7 @@ GamePlayBigEventLoopHandlerB:
ldh a, [hSelectState] ldh a, [hSelectState]
cp a, 0 cp a, 0
jr z, .noqr jr z, .noqr
call SwitchToTitle jp SwitchToTitle
jp EventLoopPostHandler
; Unpause ; Unpause
.noqr .noqr
@ -1204,7 +1199,7 @@ GamePlayBigEventLoopHandlerB:
call UnsafeMemCopy call UnsafeMemCopy
ld de, sBigPause ld de, sBigPause
ld hl, wWideBlittedField+(20*10) ld hl, wWideBlittedField+(20*10)
ld bc, 40 ld bc, 20
call UnsafeMemCopy call UnsafeMemCopy

View File

@ -33,8 +33,7 @@ SwitchToTitle::
ld b, BANK_TITLE ld b, BANK_TITLE
rst RSTSwitchBank rst RSTSwitchBank
call SwitchToTitleB call SwitchToTitleB
rst RSTRestoreBank jp RSTRestoreBank
jp EventLoopPostHandler
; Banks and jumps to the actual handler. ; Banks and jumps to the actual handler.
TitleEventLoopHandler:: TitleEventLoopHandler::