diff --git a/README.md b/README.md
index 4f62083..6f3d75a 100644
--- a/README.md
+++ b/README.md
@@ -121,10 +121,22 @@ ScoreIncrement points are then awarded.
## Screenshots
-![DMG Gameplay](https://villadelfia.org/i/xAAHfqDw.png)
-![GBC Gameplay](https://villadelfia.org/i/Hj2P8Pk5.png)
+Original Game Boy | Game Boy Color
+:-: | :-:
+ |
+## Videos
+### Original Game Boy
+Normal Mode | Big Mode
+:-: | :-:
+[VIDEO](https://villadelfia.org/dmgtris/demo-dmg-normal.mp4) | [VIDEO](https://villadelfia.org/dmgtris/demo-dmg-big.mp4)
+
+### Game Boy Color
+Normal Mode | Big Mode
+:-: | :-:
+[VIDEO](https://villadelfia.org/dmgtris/demo-gbc-normal.mp4) | [VIDEO](https://villadelfia.org/dmgtris/demo-gbc-big.mp4)
+
## Building and Development
The game can be built using gnu make and the RGBDS toolchain.
diff --git a/assets/demo-dmg-big.mp4 b/assets/demo-dmg-big.mp4
new file mode 100644
index 0000000..d56c3b1
Binary files /dev/null and b/assets/demo-dmg-big.mp4 differ
diff --git a/assets/demo-dmg-normal.mp4 b/assets/demo-dmg-normal.mp4
new file mode 100644
index 0000000..8e8ceae
Binary files /dev/null and b/assets/demo-dmg-normal.mp4 differ
diff --git a/assets/demo-gbc-big.mp4 b/assets/demo-gbc-big.mp4
new file mode 100644
index 0000000..7b783c7
Binary files /dev/null and b/assets/demo-gbc-big.mp4 differ
diff --git a/assets/demo-gbc-normal.mp4 b/assets/demo-gbc-normal.mp4
new file mode 100644
index 0000000..5c13ca3
Binary files /dev/null and b/assets/demo-gbc-normal.mp4 differ
diff --git a/bin/DMGTRIS.GBC b/bin/DMGTRIS.GBC
index 7e9fee4..f1d6d20 100644
Binary files a/bin/DMGTRIS.GBC and b/bin/DMGTRIS.GBC differ
diff --git a/bin/DMGTRIS.map b/bin/DMGTRIS.map
index 60cf378..0709d6f 100644
--- a/bin/DMGTRIS.map
+++ b/bin/DMGTRIS.map
@@ -135,467 +135,471 @@ ROM0 bank #0:
$16a7 = !11
$16f5 = !12
$1743 = !13
- SECTION: $1794-$1d2e ($059b bytes) ["Domain Specific Functions"]
- $1794 = ApplyTells
- $17d2 = ApplyTells.myco
- $17d7 = ApplyTells.dropmode
- $17fb = ApplyNext
- $1803 = ApplyNext.bone
- $1822 = ApplyNext.nobone
- $1843 = ApplyNext.pos
- $1853 = ApplyNext.regular
- $1859 = ApplyNext.postoffsets
- $185c = ApplyNext.getoffn
- $1867 = ApplyNext.skipoffn
- $1903 = ApplyNext.done
- $1906 = ApplyHold
- $190e = ApplyHold.bone
- $192d = ApplyHold.nobone
- $1949 = ApplyHold.hide
- $195b = ApplyHold.show
- $196b = ApplyHold.x
- $197b = ApplyHold.regular
- $1981 = ApplyHold.postoffsets
- $1984 = ApplyHold.getoffh
- $198f = ApplyHold.skipoffh
- $19c9 = ApplyTime
- $1a1a = ApplyTime.loop0
- $1a49 = ApplyTime.loop1
- $1a9e = ApplyNumbers8
- $1ae4 = ApplyNumbers8.one
- $1aea = ApplyNumbers8.two
- $1af0 = ApplyNumbers8.three
- $1af6 = ApplyNumbers8.four
- $1afc = ApplyNumbers8.five
- $1b02 = ApplyNumbers8.six
- $1b08 = ApplyNumbers8.seven
- $1b0e = ApplyNumbers8.eight
- $1b13 = ApplyNumbers4
- $1b35 = ApplyNumbers4.one
- $1b3b = ApplyNumbers4.two
- $1b41 = ApplyNumbers4.three
- $1b47 = ApplyNumbers4.four
- $1b4c = SetNumberSpritePositions
- $1c53 = GradeRendering
- $1c86 = GradeRendering.effect
- $1c96 = GradeRendering.noeffect
- $1c9e = GradeRendering.drawgrade
- $1ca5 = GradeRendering.regulargrade
- $1cad = GradeRendering.sgrade
- $1cc3 = GradeRendering.hisgrade
- $1cd9 = GradeRendering.mgrade
- $1cef = GradeRendering.lettergrade
- $1d0c = GradeRendering.mk
- $1d12 = GradeRendering.mv
- $1d18 = GradeRendering.mo
- $1d1e = GradeRendering.mm
- $1d24 = GradeRendering.gmgrade
- SECTION: $1d2f-$21e8 ($04ba bytes) ["SRAM Functions"]
- $1d2f = RestoreSRAM
- $1d5e = TrustedLoad
- $1db5 = TrustedLoad.jumps
- $1dcd = TrustedLoad.dmgt
- $1dd3 = TrustedLoad.tgm1
- $1dd9 = TrustedLoad.tgm3
- $1ddf = TrustedLoad.deat
- $1de5 = TrustedLoad.shir
- $1deb = TrustedLoad.chil
- $1df1 = TrustedLoad.myco
- $1df7 = TrustedLoad.search
- $1e09 = TrustedLoad.notfound
- $1e10 = TrustedLoad.fallback
- $1e2b = InitializeSRAM
- $1f84 = ResetScores
- $1f92 = ResetScores.jumps
- $1fa7 = ResetScores.dmgt
- $1fb3 = ResetScores.tgm1
- $1fbf = ResetScores.tgm3
- $1fcb = ResetScores.deat
- $1fd7 = ResetScores.shir
- $1fe3 = ResetScores.chil
- $1fef = ResetScores.myco
- $1ffb = NextProfile
- $2004 = NextProfile.update
- $2007 = ChangeProfile
- $2007 = ChangeProfile.backup
- $2035 = ChangeProfile.first
- $2043 = ChangeProfile.second
- $2051 = ChangeProfile.third
- $205f = ChangeProfile.fourth
- $206d = ChangeProfile.fifth
- $207b = ChangeProfile.sixth
- $2089 = ChangeProfile.seventh
- $2097 = ChangeProfile.eighth
- $20a5 = ChangeProfile.ninth
- $20b3 = ChangeProfile.tenth
- $20c1 = ChangeProfile.restore
- $20f0 = ChangeProfile.lfirst
- $20ff = ChangeProfile.lsecond
- $210e = ChangeProfile.lthird
- $211d = ChangeProfile.lfourth
- $212c = ChangeProfile.lfifth
- $213b = ChangeProfile.lsixth
- $214a = ChangeProfile.lseventh
- $2159 = ChangeProfile.leighth
- $2168 = ChangeProfile.lninth
- $2177 = ChangeProfile.ltenth
- $2186 = ResetProfile
- SECTION: $21e9-$2661 ($0479 bytes) ["Grading Functions"]
- $21e9 = GradeInit
- $221d = GradeInit.grade9start
- $2222 = GradeInit.end
- $2224 = UpdateGrade
- $2232 = UpdateGrade.gradejumptable
- $2247 = DecayGradeProcess
- $2255 = DecayGradeProcess.gradejumptable
- $226a = DecayGradeDelay
- $2278 = DecayGradeDelay.gradejumptable
- $228d = PrepareScore
- $22a0 = DrawGradeProgressDMGT
- $22ac = !0
- $22bb = UpdateGradeDMGT
- $22f4 = UpdateGradeDMGT.checklineclears
- $230d = UpdateGradeDMGT.clearrate
- $231e = UpdateGradeDMGT.combomult
- $232b = UpdateGradeDMGT.combo13
- $233c = UpdateGradeDMGT.combo8
- $234d = UpdateGradeDMGT.combo1
- $235c = UpdateGradeDMGT.prelevel
- $236b = UpdateGradeDMGT.single
- $237b = UpdateGradeDMGT.double
- $238c = UpdateGradeDMGT.adddonce
- $2390 = UpdateGradeDMGT.triple
- $23a1 = UpdateGradeDMGT.addtonce
- $23a5 = UpdateGradeDMGT.tetris
- $23a9 = UpdateGradeDMGT.levelmult
- $23c1 = UpdateGradeDMGT.mult4
- $23c7 = UpdateGradeDMGT.mult3
- $23cc = UpdateGradeDMGT.mult2
- $23d0 = UpdateGradeDMGT.mult1
- $23d1 = UpdateGradeDMGT.processgrade
- $23fa = UpdateGradeDMGT.increasegrademaybe
- $241e = UpdateGradeDMGT.gotgm
- $242c = DecayGradeDMGT
- $244f = DecayGradeDMGT.nodecay
- $2456 = DecayGradeDMGT.decay
- $2464 = UpdateGradeTGM1
- $2474 = UpdateGradeTGM1.trygradeup
- $248f = UpdateGradeTGM1.increasegrade
- $24a4 = UpdateGradeTGM1.skipjingle
- $24b0 = UpdateGradeTGM1.check300
- $24ce = UpdateGradeTGM1.success300
- $24d5 = UpdateGradeTGM1.fail300
- $24dc = UpdateGradeTGM1.check500
- $24fa = UpdateGradeTGM1.success500
- $2501 = UpdateGradeTGM1.fail500
- $2508 = UpdateGradeTGM1.check999
- $253f = UpdateGradeTGM1.success999
- $2557 = UpdateGradeTGM1.fail999
- $255d = UpdateGradeDEAT
- $2569 = UpdateGradeDEAT.notgm
- $2585 = UpdateGradeDEAT.notm
- $25a8 = UpdateGradeDEAT.disqualify
- $25c6 = UpdateGradeSHIR
- $2608 = UpdateGradeSHIR.s5torikan
- $2618 = UpdateGradeSHIR.s10torikan
- $2627 = UpdateGradeSHIR.disqualify
- $2636 = UpdateGradeSHIR.l1000
- $264c = UpdateGradeSHIR.l500
- SECTION: $2662-$2a55 ($03f4 bytes) ["Level Functions"]
- $2662 = LevelInit
- $26d2 = SpecialLevelInit
- $26e0 = SpecialLevelInit.jumps
- $26f5 = SpecialLevelInit.dmgt
- $26fa = SpecialLevelInit.tgm1
- $26ff = SpecialLevelInit.tgm3
- $2704 = SpecialLevelInit.deat
- $2709 = SpecialLevelInit.shir
- $270e = SpecialLevelInit.chil
- $2713 = SpecialLevelInit.myco
- $2718 = SpecialLevelInit.loaddata
- $274d = LevelUp
- $2777 = LevelUp.doit
- $27b6 = LevelUp.checknlevel
- $27e7 = !0
- $27ff = !1
- $2808 = LevelUp.bellmaybe
- $2824 = LevelUp.leveljinglemaybe
- $2834 = AdjustSpeedCurve
- $283a = AdjustSpeedCurve.docheck
- $283a = AdjustSpeedCurve.checkthousands
- $2849 = AdjustSpeedCurve.checkhundreds
- $2856 = AdjustSpeedCurve.checktens
- $2865 = AdjustSpeedCurve.checkones
- $2870 = AdjustSpeedCurveForced
- $28ab = AdjustSpeedCurveForced.continue
- $28b0 = BuildTrueCLevel
- $28d8 = BuildTrueCLevel.thousands
- $28ed = CheckSpecialLevelConditions
- $291e = CheckSpecialLevelConditions.override
- $2939 = CheckSpecialLevelConditions.nooverride
- $293f = CheckSpecialLevelConditions.speciallock
- $2963 = CheckSpecialLevelConditions.bones
- $2978 = CheckSpecialLevelConditions.enterthebonezone
- $297d = CheckSpecialLevelConditions.invis
- $2992 = CheckSpecialLevelConditions.vanishoxyaction
- $2997 = CheckSpecialLevelConditions.killscreen
- $29a8 = CheckSpecialLevelConditions.rip
- $29d8 = CheckSpecialLevelConditions.staffroll
- $29e6 = CheckSpecialLevelConditions.justkill
- $29fa = TriggerKillScreen
- $2a1c = GetSection
- $2a2a = GetSectionBCD
- $2a33 = GetAdjustedSection
- $2a41 = GetAdjustedSectionBCD
- $2a4a = SkipSection
- SECTION: $2a56-$2d0b ($02b6 bytes) ["Grading Data"]
- $2a56 = sTGM1GradeScores
- $2a78 = sTGM3InternalGradeSystem
- $2b18 = sTGM3GradeBoosts
- $2b37 = sTGM3LevelMultiplier
- $2b3b = sTGM3BaselineCOOL
- $2b44 = sTGM3REGRETConditions
- $2b58 = sDMGTGrading
- $2c0c = sDMGTGaugeLUT
- SECTION: $2d0c-$2fab ($02a0 bytes) ["SFX Functions"]
- $2d0c = SFXInit
- $2d2e = SFXPopQueue
- $2d43 = SFXPushQueue
- $2d54 = SFXProcessQueue
- $2d65 = !0
- $2d80 = !1
- $2d82 = SFXTriggerNoise
- $2d8f = !2
- $2d9c = !3
- $2da8 = SFXEnqueue
- $2dbd = SFXEnqueue.findsfx
- $2dd2 = !4
- $2de2 = !5
- $2df2 = !6
- $2e02 = !7
- $2e12 = !8
- $2e22 = !9
- $2e32 = !10
- $2e42 = !11
- $2e52 = !12
- $2e62 = !13
- $2e72 = !14
- $2e82 = !15
- $2e92 = !16
- $2ea2 = !17
- $2eb2 = !18
- $2ec1 = !19
- $2ed0 = !20
- $2edf = !21
- $2eee = !22
- $2efc = !23
- $2f0a = !24
- $2f17 = SFXKill
- $2f4a = SFXPlayNoise
- $2f55 = SFXPlayNoise.noisereg
- $2f62 = !25
- $2f6c = SFXPlayNoise.savenoiseplayhead
- $2f75 = SFXPlay
- $2f80 = !26
- $2f83 = SFXPlay.play
- $2f8f = SFXPlay.getRegister
- $2f99 = !27
- $2fa3 = SFXPlay.savePlayhead
- SECTION: $2fac-$31db ($0230 bytes) ["RNG Functions"]
- $2fac = HarvestEntropy
- $2fb2 = HarvestEntropy.loop
- $2fd3 = RNGInit
- $3009 = !0
- $3039 = RNGInit.complexinit
- $3050 = !1
- $306b = ShiftHistory
- $3088 = GetNextHellPiece
- $308d = GetNextTGM1Piece
- $3090 = !2
- $30a8 = !3
- $30aa = GetNextTGM2Piece
- $30ad = !4
- $30c5 = !5
- $30c7 = GetNextNesPiece
- $30d5 = GetNextTGM3Piece
- $30d8 = !6
- $30fb = !7
- $30fe = !8
- $310e = !9
- $3118 = !10
- $3126 = !11
- $3134 = !12
- $3140 = !13
- $314c = !14
- $3158 = !15
- $3164 = !16
- $3170 = !17
- $317c = !18
- $318b = GetNextPiece
- $3199 = GetNextPiece.nextpiecejumps
- $31a8 = Next35Piece
- $31a8 = !19
- $31b2 = Next7Piece
- $31b2 = !20
- $31bc = NextByte
- SECTION: $31dc-$33a0 ($01c5 bytes) ["Hi Score Functions"]
- $31dc = CheckAndAddHiscore
- $31e6 = CheckAndAddHiscore.checkloop
- $31eb = CheckAndAddHiscore.checkgrade
- $31f4 = CheckAndAddHiscore.oldgraded
- $3203 = CheckAndAddHiscore.oldungraded
- $320a = CheckAndAddHiscore.checklevel
- $322f = CheckAndAddHiscore.checkscore
- $3272 = CheckAndAddHiscore.notbetter
- $327f = CheckAndAddHiscore.better
- $3281 = InsertHiScore
- $3281 = InsertHiScore.copylower
- $3292 = InsertHiScore.copyupper
- $329e = !0
- $32b2 = InsertHiScore.findrow
- $32be = !1
- $32c2 = InsertHiScore.insert
- $331b = InsertHiScore.persist
- $332c = GetHiScoreEntry
- $3340 = !2
- $3344 = GetHiScoreEntry.store
- $334d = InitTargetHSTable
- $3358 = InitTargetHSTable.jumps
- $336d = InitTargetHSTable.dmgt
- $3372 = InitTargetHSTable.tgm1
- $3377 = InitTargetHSTable.tgm3
- $337c = InitTargetHSTable.deat
- $3381 = InitTargetHSTable.shir
- $3386 = InitTargetHSTable.chil
- $338b = InitTargetHSTable.myco
- $338e = InitTargetHSTable.store
- SECTION: $33a1-$34ea ($014a bytes) ["Progress Data"]
- $33a1 = sProgressData
- SECTION: $34eb-$362a ($0140 bytes) ["Hi Score Data"]
- $34eb = sHiscoreDefaultData
- SECTION: $362b-$3754 ($012a bytes) ["Input Functions"]
- $362b = InputInit
- $363d = GetInput
- $363d = GetInput.btns
- $364a = GetInput.readA
- $364e = GetInput.setA
- $3659 = GetInput.clearA
- $365c = GetInput.readB
- $3660 = GetInput.setB
- $366b = GetInput.clearB
- $366e = GetInput.readSelect
- $3672 = GetInput.setSelect
- $367d = GetInput.clearSelect
- $3680 = GetInput.readStart
- $3684 = GetInput.setStart
- $368f = GetInput.clearStart
- $3692 = GetInput.dpad
- $369f = GetInput.readUp
- $36a3 = GetInput.setUp
- $36ae = GetInput.clearUp
- $36b1 = GetInput.readDown
- $36b5 = GetInput.setDown
- $36c0 = GetInput.clearDown
- $36c3 = GetInput.readLeft
- $36c7 = GetInput.setLeft
- $36d2 = GetInput.clearLeft
- $36d5 = GetInput.readRight
- $36d9 = GetInput.setRight
- $36e4 = GetInput.clearRight
- $36e7 = GetInput.priorities
- $36f4 = GetInput.jumps
- $3703 = GetInput.dlru
- $3713 = GetInput.ulrd
- $3723 = GetInput.lrud
- $372e = GetInput.udlr
- $3739 = GetInput.zeroud
- $373f = GetInput.zerolr
- $3745 = GetInput.zerolrd
- $374d = GetInput.zerolru
- SECTION: $3755-$3834 ($00e0 bytes) ["Score Functions"]
- $3755 = ScoreInit
- $377d = IncreaseScore
- $37b5 = IncreaseScore.doConvert
- $37b7 = !0
- $37cd = IncreaseScore.carry
- $37cf = IncreaseScore.postConvert
- $37dc = !1
- $37e3 = IncreaseScore.preAddDigit
- $380b = IncreaseScore.addDigit
- $3821 = IncreaseScore.nextDigit
- SECTION: $3835-$38ff ($00cb bytes) ["Title Function Trampolines"]
- $3835 = SwitchToTitle
- $383e = TitleEventLoopHandler
- $3848 = TitleVBlankHandler
- $3852 = PersistLevel
- $3860 = DrawSpeedMain
- $38b0 = DrawSpeedSettings
- SECTION: $3900-$39c4 ($00c5 bytes) ["Time Functions"]
- $3900 = TimeInit
- $3920 = StartCountdown
- $392e = ResetGameTime
- $3939 = CheckTorikan
- $394f = CheckTorikan.failure
- $3951 = CheckTorikan.success
- $3954 = HandleTimers
- $397a = HandleTimers.reduce
- $3987 = HandleTimers.clock
- $39a1 = HandleTimers.go
- SECTION: $39c5-$3a75 ($00b1 bytes) ["Progress Functions"]
- $39c5 = SetProgress
- $39cf = SetProgress.loop
- $39d3 = SetProgress.correct
- $39fa = SetProgress.wvr_u1
- $3a06 = SetProgress.wvr_u2
- $3a14 = SetProgress.wvr_u3
- $3a20 = SetProgress.wvr_u4
- $3a2e = SetProgress.wvr_u5
- $3a3a = SetProgress.wvr_u6
- $3a48 = SetProgress.wvr_u7
- $3a54 = SetProgress.wvr_u8
- $3a62 = SetProgress.wvr_u9
- $3a6e = SetProgress.wvr_u10
- SECTION: $3a76-$3b0d ($0098 bytes) ["Code Entry Point"]
- $3a76 = Main
- $3a9f = Main.notgbc
- $3aa5 = Main.wvr_u1
- $3ad2 = EventLoop
- $3ae8 = EventLoop.eventloopjumps
- $3af1 = EventLoopPostHandler
- $3af3 = EventLoopPostHandler.wvb_u2
- $3b05 = EventLoopPostHandler.vblankjumps
- SECTION: $3b0e-$3b5f ($0052 bytes) ["Tile Functions"]
- $3b0e = LoadTitleTiles
- $3b2c = LoadGameplayTiles
- $3b42 = LoadGameplayTiles.gbc
- $3b51 = LoadGameplayTiles.dmg
- SECTION: $3b60-$3b9b ($003c bytes) ["Time Data"]
- $3b60 = sFramesToCS
- SECTION: $3b9c-$3bc9 ($002e bytes) ["Memory Functions"]
- $3b9c = UnsafeMemCopy
- $3ba5 = SafeMemCopy.wvr_u1
- $3ba5 = SafeMemCopy
- $3bb4 = UnsafeMemSet
- $3bbc = SafeMemSet
- $3bbc = SafeMemSet.wvr_u2
- SECTION: $3bca-$3bef ($0026 bytes) ["Gameplay Function Trampolines"]
- $3bca = SwitchToGameplay
- $3bd3 = SwitchToGameplayBig
- $3bdc = GamePlayEventLoopHandler
- $3be6 = GamePlayBigEventLoopHandler
- SECTION: $3bf0-$3c14 ($0025 bytes) ["Interrupt Initialization Functions"]
- $3bf0 = EnableScreenSquish
- $3c0a = DisableScreenSquish
- SECTION: $3c15-$3c36 ($0022 bytes) ["OAM Functions"]
- $3c15 = CopyOAMHandler
- $3c21 = ClearOAM
- SECTION: $3c37-$3c45 ($000f bytes) ["Banking Functions"]
- $3c37 = BankingInit
- SECTION: $3c46-$3c4f ($000a bytes) ["OAM DMA Code"]
- $3c46 = OAMDMA
- $3c50 = OAMDMAEnd
- EMPTY: $3c50-$3fff ($03b0 bytes)
- TOTAL EMPTY: $03bb bytes
+ SECTION: $1794-$1daf ($061c bytes) ["Domain Specific Functions"]
+ $1794 = SetPal
+ $17a1 = SetPal.darker
+ $17a7 = SetPal.lighter
+ $17ad = ApplyTells
+ $17ad = SetPal.setpal
+ $17eb = ApplyTells.myco
+ $17f0 = ApplyTells.dropmode
+ $1814 = ApplyNext
+ $181c = ApplyNext.bone
+ $183b = ApplyNext.nobone
+ $185c = ApplyNext.pos
+ $186c = ApplyNext.regular
+ $1872 = ApplyNext.postoffsets
+ $1875 = ApplyNext.getoffn
+ $1880 = ApplyNext.skipoffn
+ $191c = ApplyNext.done
+ $191f = ApplyHold
+ $1927 = ApplyHold.bone
+ $1946 = ApplyHold.nobone
+ $1962 = ApplyHold.hide
+ $1974 = ApplyHold.show
+ $1984 = ApplyHold.x
+ $1994 = ApplyHold.regular
+ $199a = ApplyHold.postoffsets
+ $199d = ApplyHold.getoffh
+ $19a8 = ApplyHold.skipoffh
+ $19e2 = ApplyTime
+ $1a33 = ApplyTime.loop0
+ $1a62 = ApplyTime.loop1
+ $1ab7 = ApplyNumbers8
+ $1b19 = ApplyNumbers8.one
+ $1b23 = ApplyNumbers8.two
+ $1b2d = ApplyNumbers8.three
+ $1b37 = ApplyNumbers8.four
+ $1b41 = ApplyNumbers8.five
+ $1b4b = ApplyNumbers8.six
+ $1b55 = ApplyNumbers8.seven
+ $1b5f = ApplyNumbers8.eight
+ $1b68 = ApplyNumbers4
+ $1b96 = ApplyNumbers4.one
+ $1ba0 = ApplyNumbers4.two
+ $1baa = ApplyNumbers4.three
+ $1bb4 = ApplyNumbers4.four
+ $1bbd = SetNumberSpritePositions
+ $1cd4 = GradeRendering
+ $1d07 = GradeRendering.effect
+ $1d17 = GradeRendering.noeffect
+ $1d1f = GradeRendering.drawgrade
+ $1d26 = GradeRendering.regulargrade
+ $1d2e = GradeRendering.sgrade
+ $1d44 = GradeRendering.hisgrade
+ $1d5a = GradeRendering.mgrade
+ $1d70 = GradeRendering.lettergrade
+ $1d8d = GradeRendering.mk
+ $1d93 = GradeRendering.mv
+ $1d99 = GradeRendering.mo
+ $1d9f = GradeRendering.mm
+ $1da5 = GradeRendering.gmgrade
+ SECTION: $1db0-$2269 ($04ba bytes) ["SRAM Functions"]
+ $1db0 = RestoreSRAM
+ $1ddf = TrustedLoad
+ $1e36 = TrustedLoad.jumps
+ $1e4e = TrustedLoad.dmgt
+ $1e54 = TrustedLoad.tgm1
+ $1e5a = TrustedLoad.tgm3
+ $1e60 = TrustedLoad.deat
+ $1e66 = TrustedLoad.shir
+ $1e6c = TrustedLoad.chil
+ $1e72 = TrustedLoad.myco
+ $1e78 = TrustedLoad.search
+ $1e8a = TrustedLoad.notfound
+ $1e91 = TrustedLoad.fallback
+ $1eac = InitializeSRAM
+ $2005 = ResetScores
+ $2013 = ResetScores.jumps
+ $2028 = ResetScores.dmgt
+ $2034 = ResetScores.tgm1
+ $2040 = ResetScores.tgm3
+ $204c = ResetScores.deat
+ $2058 = ResetScores.shir
+ $2064 = ResetScores.chil
+ $2070 = ResetScores.myco
+ $207c = NextProfile
+ $2085 = NextProfile.update
+ $2088 = ChangeProfile
+ $2088 = ChangeProfile.backup
+ $20b6 = ChangeProfile.first
+ $20c4 = ChangeProfile.second
+ $20d2 = ChangeProfile.third
+ $20e0 = ChangeProfile.fourth
+ $20ee = ChangeProfile.fifth
+ $20fc = ChangeProfile.sixth
+ $210a = ChangeProfile.seventh
+ $2118 = ChangeProfile.eighth
+ $2126 = ChangeProfile.ninth
+ $2134 = ChangeProfile.tenth
+ $2142 = ChangeProfile.restore
+ $2171 = ChangeProfile.lfirst
+ $2180 = ChangeProfile.lsecond
+ $218f = ChangeProfile.lthird
+ $219e = ChangeProfile.lfourth
+ $21ad = ChangeProfile.lfifth
+ $21bc = ChangeProfile.lsixth
+ $21cb = ChangeProfile.lseventh
+ $21da = ChangeProfile.leighth
+ $21e9 = ChangeProfile.lninth
+ $21f8 = ChangeProfile.ltenth
+ $2207 = ResetProfile
+ SECTION: $226a-$26e2 ($0479 bytes) ["Grading Functions"]
+ $226a = GradeInit
+ $229e = GradeInit.grade9start
+ $22a3 = GradeInit.end
+ $22a5 = UpdateGrade
+ $22b3 = UpdateGrade.gradejumptable
+ $22c8 = DecayGradeProcess
+ $22d6 = DecayGradeProcess.gradejumptable
+ $22eb = DecayGradeDelay
+ $22f9 = DecayGradeDelay.gradejumptable
+ $230e = PrepareScore
+ $2321 = DrawGradeProgressDMGT
+ $232d = !0
+ $233c = UpdateGradeDMGT
+ $2375 = UpdateGradeDMGT.checklineclears
+ $238e = UpdateGradeDMGT.clearrate
+ $239f = UpdateGradeDMGT.combomult
+ $23ac = UpdateGradeDMGT.combo13
+ $23bd = UpdateGradeDMGT.combo8
+ $23ce = UpdateGradeDMGT.combo1
+ $23dd = UpdateGradeDMGT.prelevel
+ $23ec = UpdateGradeDMGT.single
+ $23fc = UpdateGradeDMGT.double
+ $240d = UpdateGradeDMGT.adddonce
+ $2411 = UpdateGradeDMGT.triple
+ $2422 = UpdateGradeDMGT.addtonce
+ $2426 = UpdateGradeDMGT.tetris
+ $242a = UpdateGradeDMGT.levelmult
+ $2442 = UpdateGradeDMGT.mult4
+ $2448 = UpdateGradeDMGT.mult3
+ $244d = UpdateGradeDMGT.mult2
+ $2451 = UpdateGradeDMGT.mult1
+ $2452 = UpdateGradeDMGT.processgrade
+ $247b = UpdateGradeDMGT.increasegrademaybe
+ $249f = UpdateGradeDMGT.gotgm
+ $24ad = DecayGradeDMGT
+ $24d0 = DecayGradeDMGT.nodecay
+ $24d7 = DecayGradeDMGT.decay
+ $24e5 = UpdateGradeTGM1
+ $24f5 = UpdateGradeTGM1.trygradeup
+ $2510 = UpdateGradeTGM1.increasegrade
+ $2525 = UpdateGradeTGM1.skipjingle
+ $2531 = UpdateGradeTGM1.check300
+ $254f = UpdateGradeTGM1.success300
+ $2556 = UpdateGradeTGM1.fail300
+ $255d = UpdateGradeTGM1.check500
+ $257b = UpdateGradeTGM1.success500
+ $2582 = UpdateGradeTGM1.fail500
+ $2589 = UpdateGradeTGM1.check999
+ $25c0 = UpdateGradeTGM1.success999
+ $25d8 = UpdateGradeTGM1.fail999
+ $25de = UpdateGradeDEAT
+ $25ea = UpdateGradeDEAT.notgm
+ $2606 = UpdateGradeDEAT.notm
+ $2629 = UpdateGradeDEAT.disqualify
+ $2647 = UpdateGradeSHIR
+ $2689 = UpdateGradeSHIR.s5torikan
+ $2699 = UpdateGradeSHIR.s10torikan
+ $26a8 = UpdateGradeSHIR.disqualify
+ $26b7 = UpdateGradeSHIR.l1000
+ $26cd = UpdateGradeSHIR.l500
+ SECTION: $26e3-$2ad6 ($03f4 bytes) ["Level Functions"]
+ $26e3 = LevelInit
+ $2753 = SpecialLevelInit
+ $2761 = SpecialLevelInit.jumps
+ $2776 = SpecialLevelInit.dmgt
+ $277b = SpecialLevelInit.tgm1
+ $2780 = SpecialLevelInit.tgm3
+ $2785 = SpecialLevelInit.deat
+ $278a = SpecialLevelInit.shir
+ $278f = SpecialLevelInit.chil
+ $2794 = SpecialLevelInit.myco
+ $2799 = SpecialLevelInit.loaddata
+ $27ce = LevelUp
+ $27f8 = LevelUp.doit
+ $2837 = LevelUp.checknlevel
+ $2868 = !0
+ $2880 = !1
+ $2889 = LevelUp.bellmaybe
+ $28a5 = LevelUp.leveljinglemaybe
+ $28b5 = AdjustSpeedCurve
+ $28bb = AdjustSpeedCurve.docheck
+ $28bb = AdjustSpeedCurve.checkthousands
+ $28ca = AdjustSpeedCurve.checkhundreds
+ $28d7 = AdjustSpeedCurve.checktens
+ $28e6 = AdjustSpeedCurve.checkones
+ $28f1 = AdjustSpeedCurveForced
+ $292c = AdjustSpeedCurveForced.continue
+ $2931 = BuildTrueCLevel
+ $2959 = BuildTrueCLevel.thousands
+ $296e = CheckSpecialLevelConditions
+ $299f = CheckSpecialLevelConditions.override
+ $29ba = CheckSpecialLevelConditions.nooverride
+ $29c0 = CheckSpecialLevelConditions.speciallock
+ $29e4 = CheckSpecialLevelConditions.bones
+ $29f9 = CheckSpecialLevelConditions.enterthebonezone
+ $29fe = CheckSpecialLevelConditions.invis
+ $2a13 = CheckSpecialLevelConditions.vanishoxyaction
+ $2a18 = CheckSpecialLevelConditions.killscreen
+ $2a29 = CheckSpecialLevelConditions.rip
+ $2a59 = CheckSpecialLevelConditions.staffroll
+ $2a67 = CheckSpecialLevelConditions.justkill
+ $2a7b = TriggerKillScreen
+ $2a9d = GetSection
+ $2aab = GetSectionBCD
+ $2ab4 = GetAdjustedSection
+ $2ac2 = GetAdjustedSectionBCD
+ $2acb = SkipSection
+ SECTION: $2ad7-$2d8c ($02b6 bytes) ["Grading Data"]
+ $2ad7 = sTGM1GradeScores
+ $2af9 = sTGM3InternalGradeSystem
+ $2b99 = sTGM3GradeBoosts
+ $2bb8 = sTGM3LevelMultiplier
+ $2bbc = sTGM3BaselineCOOL
+ $2bc5 = sTGM3REGRETConditions
+ $2bd9 = sDMGTGrading
+ $2c8d = sDMGTGaugeLUT
+ SECTION: $2d8d-$302c ($02a0 bytes) ["SFX Functions"]
+ $2d8d = SFXInit
+ $2daf = SFXPopQueue
+ $2dc4 = SFXPushQueue
+ $2dd5 = SFXProcessQueue
+ $2de6 = !0
+ $2e01 = !1
+ $2e03 = SFXTriggerNoise
+ $2e10 = !2
+ $2e1d = !3
+ $2e29 = SFXEnqueue
+ $2e3e = SFXEnqueue.findsfx
+ $2e53 = !4
+ $2e63 = !5
+ $2e73 = !6
+ $2e83 = !7
+ $2e93 = !8
+ $2ea3 = !9
+ $2eb3 = !10
+ $2ec3 = !11
+ $2ed3 = !12
+ $2ee3 = !13
+ $2ef3 = !14
+ $2f03 = !15
+ $2f13 = !16
+ $2f23 = !17
+ $2f33 = !18
+ $2f42 = !19
+ $2f51 = !20
+ $2f60 = !21
+ $2f6f = !22
+ $2f7d = !23
+ $2f8b = !24
+ $2f98 = SFXKill
+ $2fcb = SFXPlayNoise
+ $2fd6 = SFXPlayNoise.noisereg
+ $2fe3 = !25
+ $2fed = SFXPlayNoise.savenoiseplayhead
+ $2ff6 = SFXPlay
+ $3001 = !26
+ $3004 = SFXPlay.play
+ $3010 = SFXPlay.getRegister
+ $301a = !27
+ $3024 = SFXPlay.savePlayhead
+ SECTION: $302d-$325c ($0230 bytes) ["RNG Functions"]
+ $302d = HarvestEntropy
+ $3033 = HarvestEntropy.loop
+ $3054 = RNGInit
+ $308a = !0
+ $30ba = RNGInit.complexinit
+ $30d1 = !1
+ $30ec = ShiftHistory
+ $3109 = GetNextHellPiece
+ $310e = GetNextTGM1Piece
+ $3111 = !2
+ $3129 = !3
+ $312b = GetNextTGM2Piece
+ $312e = !4
+ $3146 = !5
+ $3148 = GetNextNesPiece
+ $3156 = GetNextTGM3Piece
+ $3159 = !6
+ $317c = !7
+ $317f = !8
+ $318f = !9
+ $3199 = !10
+ $31a7 = !11
+ $31b5 = !12
+ $31c1 = !13
+ $31cd = !14
+ $31d9 = !15
+ $31e5 = !16
+ $31f1 = !17
+ $31fd = !18
+ $320c = GetNextPiece
+ $321a = GetNextPiece.nextpiecejumps
+ $3229 = Next35Piece
+ $3229 = !19
+ $3233 = Next7Piece
+ $3233 = !20
+ $323d = NextByte
+ SECTION: $325d-$3421 ($01c5 bytes) ["Hi Score Functions"]
+ $325d = CheckAndAddHiscore
+ $3267 = CheckAndAddHiscore.checkloop
+ $326c = CheckAndAddHiscore.checkgrade
+ $3275 = CheckAndAddHiscore.oldgraded
+ $3284 = CheckAndAddHiscore.oldungraded
+ $328b = CheckAndAddHiscore.checklevel
+ $32b0 = CheckAndAddHiscore.checkscore
+ $32f3 = CheckAndAddHiscore.notbetter
+ $3300 = CheckAndAddHiscore.better
+ $3302 = InsertHiScore
+ $3302 = InsertHiScore.copylower
+ $3313 = InsertHiScore.copyupper
+ $331f = !0
+ $3333 = InsertHiScore.findrow
+ $333f = !1
+ $3343 = InsertHiScore.insert
+ $339c = InsertHiScore.persist
+ $33ad = GetHiScoreEntry
+ $33c1 = !2
+ $33c5 = GetHiScoreEntry.store
+ $33ce = InitTargetHSTable
+ $33d9 = InitTargetHSTable.jumps
+ $33ee = InitTargetHSTable.dmgt
+ $33f3 = InitTargetHSTable.tgm1
+ $33f8 = InitTargetHSTable.tgm3
+ $33fd = InitTargetHSTable.deat
+ $3402 = InitTargetHSTable.shir
+ $3407 = InitTargetHSTable.chil
+ $340c = InitTargetHSTable.myco
+ $340f = InitTargetHSTable.store
+ SECTION: $3422-$356b ($014a bytes) ["Progress Data"]
+ $3422 = sProgressData
+ SECTION: $356c-$36ab ($0140 bytes) ["Hi Score Data"]
+ $356c = sHiscoreDefaultData
+ SECTION: $36ac-$37d5 ($012a bytes) ["Input Functions"]
+ $36ac = InputInit
+ $36be = GetInput
+ $36be = GetInput.btns
+ $36cb = GetInput.readA
+ $36cf = GetInput.setA
+ $36da = GetInput.clearA
+ $36dd = GetInput.readB
+ $36e1 = GetInput.setB
+ $36ec = GetInput.clearB
+ $36ef = GetInput.readSelect
+ $36f3 = GetInput.setSelect
+ $36fe = GetInput.clearSelect
+ $3701 = GetInput.readStart
+ $3705 = GetInput.setStart
+ $3710 = GetInput.clearStart
+ $3713 = GetInput.dpad
+ $3720 = GetInput.readUp
+ $3724 = GetInput.setUp
+ $372f = GetInput.clearUp
+ $3732 = GetInput.readDown
+ $3736 = GetInput.setDown
+ $3741 = GetInput.clearDown
+ $3744 = GetInput.readLeft
+ $3748 = GetInput.setLeft
+ $3753 = GetInput.clearLeft
+ $3756 = GetInput.readRight
+ $375a = GetInput.setRight
+ $3765 = GetInput.clearRight
+ $3768 = GetInput.priorities
+ $3775 = GetInput.jumps
+ $3784 = GetInput.dlru
+ $3794 = GetInput.ulrd
+ $37a4 = GetInput.lrud
+ $37af = GetInput.udlr
+ $37ba = GetInput.zeroud
+ $37c0 = GetInput.zerolr
+ $37c6 = GetInput.zerolrd
+ $37ce = GetInput.zerolru
+ SECTION: $37d6-$38b5 ($00e0 bytes) ["Score Functions"]
+ $37d6 = ScoreInit
+ $37fe = IncreaseScore
+ $3836 = IncreaseScore.doConvert
+ $3838 = !0
+ $384e = IncreaseScore.carry
+ $3850 = IncreaseScore.postConvert
+ $385d = !1
+ $3864 = IncreaseScore.preAddDigit
+ $388c = IncreaseScore.addDigit
+ $38a2 = IncreaseScore.nextDigit
+ SECTION: $38b6-$3980 ($00cb bytes) ["Title Function Trampolines"]
+ $38b6 = SwitchToTitle
+ $38bf = TitleEventLoopHandler
+ $38c9 = TitleVBlankHandler
+ $38d3 = PersistLevel
+ $38e1 = DrawSpeedMain
+ $3931 = DrawSpeedSettings
+ SECTION: $3981-$3a45 ($00c5 bytes) ["Time Functions"]
+ $3981 = TimeInit
+ $39a1 = StartCountdown
+ $39af = ResetGameTime
+ $39ba = CheckTorikan
+ $39d0 = CheckTorikan.failure
+ $39d2 = CheckTorikan.success
+ $39d5 = HandleTimers
+ $39fb = HandleTimers.reduce
+ $3a08 = HandleTimers.clock
+ $3a22 = HandleTimers.go
+ SECTION: $3a46-$3af6 ($00b1 bytes) ["Progress Functions"]
+ $3a46 = SetProgress
+ $3a50 = SetProgress.loop
+ $3a54 = SetProgress.correct
+ $3a7b = SetProgress.wvr_u1
+ $3a87 = SetProgress.wvr_u2
+ $3a95 = SetProgress.wvr_u3
+ $3aa1 = SetProgress.wvr_u4
+ $3aaf = SetProgress.wvr_u5
+ $3abb = SetProgress.wvr_u6
+ $3ac9 = SetProgress.wvr_u7
+ $3ad5 = SetProgress.wvr_u8
+ $3ae3 = SetProgress.wvr_u9
+ $3aef = SetProgress.wvr_u10
+ SECTION: $3af7-$3b8e ($0098 bytes) ["Code Entry Point"]
+ $3af7 = Main
+ $3b20 = Main.notgbc
+ $3b26 = Main.wvr_u1
+ $3b53 = EventLoop
+ $3b69 = EventLoop.eventloopjumps
+ $3b72 = EventLoopPostHandler
+ $3b74 = EventLoopPostHandler.wvb_u2
+ $3b86 = EventLoopPostHandler.vblankjumps
+ SECTION: $3b8f-$3be0 ($0052 bytes) ["Tile Functions"]
+ $3b8f = LoadTitleTiles
+ $3bad = LoadGameplayTiles
+ $3bc3 = LoadGameplayTiles.gbc
+ $3bd2 = LoadGameplayTiles.dmg
+ SECTION: $3be1-$3c1c ($003c bytes) ["Time Data"]
+ $3be1 = sFramesToCS
+ SECTION: $3c1d-$3c4a ($002e bytes) ["Memory Functions"]
+ $3c1d = UnsafeMemCopy
+ $3c26 = SafeMemCopy.wvr_u1
+ $3c26 = SafeMemCopy
+ $3c35 = UnsafeMemSet
+ $3c3d = SafeMemSet
+ $3c3d = SafeMemSet.wvr_u2
+ SECTION: $3c4b-$3c70 ($0026 bytes) ["Gameplay Function Trampolines"]
+ $3c4b = SwitchToGameplay
+ $3c54 = SwitchToGameplayBig
+ $3c5d = GamePlayEventLoopHandler
+ $3c67 = GamePlayBigEventLoopHandler
+ SECTION: $3c71-$3c95 ($0025 bytes) ["Interrupt Initialization Functions"]
+ $3c71 = EnableScreenSquish
+ $3c8b = DisableScreenSquish
+ SECTION: $3c96-$3cb7 ($0022 bytes) ["OAM Functions"]
+ $3c96 = CopyOAMHandler
+ $3ca2 = ClearOAM
+ SECTION: $3cb8-$3cc6 ($000f bytes) ["Banking Functions"]
+ $3cb8 = BankingInit
+ SECTION: $3cc7-$3cd0 ($000a bytes) ["OAM DMA Code"]
+ $3cc7 = OAMDMA
+ $3cd1 = OAMDMAEnd
+ EMPTY: $3cd1-$3fff ($032f bytes)
+ TOTAL EMPTY: $033a bytes
ROMX bank #1:
SECTION: $4000-$4007 ($0008 bytes) ["Bank ID BANK_OTHER"]
@@ -696,7 +700,7 @@ ROMX bank #3:
ROMX bank #4:
SECTION: $4000-$4007 ($0008 bytes) ["Bank ID BANK_TITLE"]
- SECTION: $4008-$591e ($1917 bytes) ["Title Functions Banked"]
+ SECTION: $4008-$5959 ($1952 bytes) ["Title Functions Banked"]
$4008 = SwitchToTitleB
$400e = SwitchToTitleB.wvr_u1
$4017 = !0
@@ -773,490 +777,499 @@ ROMX bank #4:
$4472 = TitleVBlankHandlerB.notselected_u16
$4477 = TitleVBlankHandlerB.selected_u16
$447a = TitleVBlankHandlerB.done_u16
- $4499 = TitleVBlankHandlerB.vblankSettings
- $44a3 = TitleVBlankHandlerB.notselected_u17
- $44a8 = TitleVBlankHandlerB.selected_u17
- $44ab = TitleVBlankHandlerB.done_u17
- $44b5 = TitleVBlankHandlerB.notselected_u18
- $44ba = TitleVBlankHandlerB.selected_u18
- $44bd = TitleVBlankHandlerB.done_u18
- $44c7 = TitleVBlankHandlerB.notselected_u19
- $44cc = TitleVBlankHandlerB.selected_u19
- $44cf = TitleVBlankHandlerB.done_u19
- $44d9 = TitleVBlankHandlerB.notselected_u20
- $44de = TitleVBlankHandlerB.selected_u20
- $44e1 = TitleVBlankHandlerB.done_u20
- $44eb = TitleVBlankHandlerB.notselected_u21
- $44f0 = TitleVBlankHandlerB.selected_u21
- $44f3 = TitleVBlankHandlerB.done_u21
- $44fd = TitleVBlankHandlerB.notselected_u22
- $4502 = TitleVBlankHandlerB.selected_u22
- $4505 = TitleVBlankHandlerB.done_u22
- $450f = TitleVBlankHandlerB.notselected_u23
- $4514 = TitleVBlankHandlerB.selected_u23
- $4517 = TitleVBlankHandlerB.done_u23
- $4521 = TitleVBlankHandlerB.notselected_u24
- $4526 = TitleVBlankHandlerB.selected_u24
- $4529 = TitleVBlankHandlerB.done_u24
- $4533 = TitleVBlankHandlerB.notselected_u25
- $4538 = TitleVBlankHandlerB.selected_u25
- $453b = TitleVBlankHandlerB.done_u25
- $45bb = TitleVBlankHandlerB.disabled1
- $45c7 = TitleVBlankHandlerB.buttons
- $45de = TitleVBlankHandlerB.filter
- $4600 = !2
- $4607 = TitleVBlankHandlerB.donetetry
- $462d = TitleVBlankHandlerB.vblankRecords
- $4662 = TitleVBlankHandlerB.vblankCredits
- $4663 = MainHandleA
- $4671 = MainHandleA.jumps
- $4683 = MainHandleA.tosettings
- $4688 = MainHandleA.tocredits
- $468d = MainHandleA.toprofile
- $4692 = MainHandleA.torecords
- $4697 = MainHandleUp
- $46a2 = !3
- $46a8 = MainHandleDown
- $46b4 = !4
- $46b9 = SettingsHandleA
- $46c6 = ProfileHandleB
- $46c6 = SettingsHandleB
- $46cb = SettingsHandleDown
- $46d7 = !5
- $46dc = SettingsHandleUp
- $46e7 = !6
- $46ed = SettingsHandleLeft
- $46fe = SettingsHandleLeft.jumps
- $4719 = SettingsHandleLeft.buttons
- $4727 = !7
- $4730 = SettingsHandleLeft.rng
- $473e = !8
- $4747 = SettingsHandleLeft.rot
- $4755 = !9
- $475e = SettingsHandleLeft.drop
- $476c = !10
- $4775 = SettingsHandleLeft.curve
- $4786 = !11
- $4792 = SettingsHandleLeft.hig
- $47a0 = !12
- $47a9 = SettingsHandleLeft.filter
- $47b5 = !13
- $47bd = SettingsHandleRight
- $47ce = SettingsHandleRight.jumps
- $47e9 = SettingsHandleRight.buttons
- $47f8 = !14
- $4800 = SettingsHandleRight.rng
- $480f = !15
- $4817 = SettingsHandleRight.rot
- $4826 = !16
- $482e = SettingsHandleRight.drop
- $483d = !17
- $4845 = SettingsHandleRight.curve
- $4857 = !18
- $4862 = SettingsHandleRight.hig
- $4871 = !19
- $4879 = SettingsHandleRight.filter
- $4886 = !20
- $488d = ProfileHandleA
- $48a1 = ProfileHandleRight
- $48b5 = ProfileHandleRight.jumps
- $48c4 = ProfileHandleRight.idx
- $48cd = ProfileHandleRight.doit
- $48d0 = ProfileHandleRight.l0
- $48da = ProfileHandleRight.doit1
- $48e1 = ProfileHandleRight.l1
- $48eb = ProfileHandleRight.doit2
- $48f2 = ProfileHandleRight.l2
- $48fc = ProfileHandleRight.doit3
- $4903 = ProfileHandleLeft
- $4917 = ProfileHandleLeft.jumps
- $4926 = ProfileHandleLeft.idx
- $4930 = ProfileHandleLeft.doit
- $4933 = ProfileHandleLeft.l0
- $493d = ProfileHandleLeft.doit1
- $4944 = ProfileHandleLeft.l1
- $494e = ProfileHandleLeft.doit2
- $4955 = ProfileHandleLeft.l2
- $495f = ProfileHandleLeft.doit3
- $4966 = ProfileHandleDown
- $4972 = !21
- $4977 = ProfileHandleUp
- $4982 = !22
- $4988 = DecrementLevel
- $499e = IncrementLevel
- $49b4 = InitSpeedCurve
- $49c3 = GetEnd
- $49ce = !23
- $49d6 = !24
- $49de = !25
- $49e6 = !26
- $49ee = !27
- $49f6 = !28
- $49fa = GetStart
- $4a05 = !29
- $4a0d = !30
- $4a15 = !31
- $4a1d = !32
- $4a25 = !33
- $4a2d = !34
- $4a31 = CheckLevelRange
- $4a4a = CheckLevelRange.notatend
- $4a6a = CheckLevelRange.notatstart
- $4a6b = RecordsHandleLeft
- $4a81 = !35
- $4a89 = RecordsHandleRight
- $4aa0 = !36
- $4aa7 = RecordsHandleSelect
- $4ab0 = RenderScores
- $4ab0 = !37
- $4ad9 = RenderScores.score_u26
- $4ade = RenderScores.wvr_u27
- $4aeb = RenderScores.wvr_u28
- $4af8 = RenderScores.wvr_u29
- $4b05 = RenderScores.wvr_u30
- $4b12 = RenderScores.wvr_u31
- $4b1f = RenderScores.wvr_u32
- $4b2c = RenderScores.wvr_u33
- $4b39 = RenderScores.wvr_u34
- $4b43 = RenderScores.level_u26
- $4b50 = RenderScores.wvr_u35
- $4b5b = RenderScores.wvr_u36
- $4b66 = RenderScores.wvr_u37
- $4b71 = RenderScores.wvr_u38
- $4b7e = RenderScores.wvr_u39
- $4b8b = RenderScores.wvr_u40
- $4b98 = RenderScores.wvr_u41
- $4ba5 = RenderScores.wvr_u42
- $4bb7 = RenderScores.name_u26
- $4bbe = RenderScores.wvr_u43
- $4bc9 = RenderScores.wvr_u44
- $4bd4 = RenderScores.wvr_u45
- $4be6 = RenderScores.nograde_u26
- $4be9 = RenderScores.wvr_u46
- $4bf3 = RenderScores.grade_u26
- $4bf6 = RenderScores.wvr_u47
- $4bfe = RenderScores.postgrade_u26
- $4c03 = RenderScores.wvr_u48
- $4c10 = RenderScores.wvr_u49
- $4c1d = RenderScores.wvr_u50
- $4c2a = RenderScores.wvr_u51
- $4c47 = RenderScores.score_u52
- $4c4c = RenderScores.wvr_u53
- $4c59 = RenderScores.wvr_u54
- $4c66 = RenderScores.wvr_u55
- $4c73 = RenderScores.wvr_u56
- $4c80 = RenderScores.wvr_u57
- $4c8d = RenderScores.wvr_u58
- $4c9a = RenderScores.wvr_u59
- $4ca7 = RenderScores.wvr_u60
- $4cb1 = RenderScores.level_u52
- $4cbe = RenderScores.wvr_u61
- $4cc9 = RenderScores.wvr_u62
- $4cd4 = RenderScores.wvr_u63
- $4cdf = RenderScores.wvr_u64
- $4cec = RenderScores.wvr_u65
- $4cf9 = RenderScores.wvr_u66
- $4d06 = RenderScores.wvr_u67
- $4d13 = RenderScores.wvr_u68
- $4d25 = RenderScores.name_u52
- $4d2c = RenderScores.wvr_u69
- $4d37 = RenderScores.wvr_u70
- $4d42 = RenderScores.wvr_u71
- $4d54 = RenderScores.nograde_u52
- $4d57 = RenderScores.wvr_u72
- $4d61 = RenderScores.grade_u52
- $4d64 = RenderScores.wvr_u73
- $4d6c = RenderScores.postgrade_u52
- $4d71 = RenderScores.wvr_u74
- $4d7e = RenderScores.wvr_u75
- $4d8b = RenderScores.wvr_u76
- $4d98 = RenderScores.wvr_u77
- $4db5 = RenderScores.score_u78
- $4dba = RenderScores.wvr_u79
- $4dc7 = RenderScores.wvr_u80
- $4dd4 = RenderScores.wvr_u81
- $4de1 = RenderScores.wvr_u82
- $4dee = RenderScores.wvr_u83
- $4dfb = RenderScores.wvr_u84
- $4e08 = RenderScores.wvr_u85
- $4e15 = RenderScores.wvr_u86
- $4e1f = RenderScores.level_u78
- $4e2c = RenderScores.wvr_u87
- $4e37 = RenderScores.wvr_u88
- $4e42 = RenderScores.wvr_u89
- $4e4d = RenderScores.wvr_u90
- $4e5a = RenderScores.wvr_u91
- $4e67 = RenderScores.wvr_u92
- $4e74 = RenderScores.wvr_u93
- $4e81 = RenderScores.wvr_u94
- $4e93 = RenderScores.name_u78
- $4e9a = RenderScores.wvr_u95
- $4ea5 = RenderScores.wvr_u96
- $4eb0 = RenderScores.wvr_u97
- $4ec2 = RenderScores.nograde_u78
- $4ec5 = RenderScores.wvr_u98
- $4ecf = RenderScores.grade_u78
- $4ed2 = RenderScores.wvr_u99
- $4eda = RenderScores.postgrade_u78
- $4edf = RenderScores.wvr_u100
- $4eec = RenderScores.wvr_u101
- $4ef9 = RenderScores.wvr_u102
- $4f06 = RenderScores.wvr_u103
- $4f23 = RenderScores.score_u104
- $4f28 = RenderScores.wvr_u105
- $4f35 = RenderScores.wvr_u106
- $4f42 = RenderScores.wvr_u107
- $4f4f = RenderScores.wvr_u108
- $4f5c = RenderScores.wvr_u109
- $4f69 = RenderScores.wvr_u110
- $4f76 = RenderScores.wvr_u111
- $4f83 = RenderScores.wvr_u112
- $4f8d = RenderScores.level_u104
- $4f9a = RenderScores.wvr_u113
- $4fa5 = RenderScores.wvr_u114
- $4fb0 = RenderScores.wvr_u115
- $4fbb = RenderScores.wvr_u116
- $4fc8 = RenderScores.wvr_u117
- $4fd5 = RenderScores.wvr_u118
- $4fe2 = RenderScores.wvr_u119
- $4fef = RenderScores.wvr_u120
- $5001 = RenderScores.name_u104
- $5008 = RenderScores.wvr_u121
- $5013 = RenderScores.wvr_u122
- $501e = RenderScores.wvr_u123
- $5030 = RenderScores.nograde_u104
- $5033 = RenderScores.wvr_u124
- $503d = RenderScores.grade_u104
- $5040 = RenderScores.wvr_u125
- $5048 = RenderScores.postgrade_u104
- $504d = RenderScores.wvr_u126
- $505a = RenderScores.wvr_u127
- $5067 = RenderScores.wvr_u128
- $5074 = RenderScores.wvr_u129
- $5091 = RenderScores.score_u130
- $5096 = RenderScores.wvr_u131
- $50a3 = RenderScores.wvr_u132
- $50b0 = RenderScores.wvr_u133
- $50bd = RenderScores.wvr_u134
- $50ca = RenderScores.wvr_u135
- $50d7 = RenderScores.wvr_u136
- $50e4 = RenderScores.wvr_u137
- $50f1 = RenderScores.wvr_u138
- $50fb = RenderScores.level_u130
- $5108 = RenderScores.wvr_u139
- $5113 = RenderScores.wvr_u140
- $511e = RenderScores.wvr_u141
- $5129 = RenderScores.wvr_u142
- $5136 = RenderScores.wvr_u143
- $5143 = RenderScores.wvr_u144
- $5150 = RenderScores.wvr_u145
- $515d = RenderScores.wvr_u146
- $516f = RenderScores.name_u130
- $5176 = RenderScores.wvr_u147
- $5181 = RenderScores.wvr_u148
- $518c = RenderScores.wvr_u149
- $519e = RenderScores.nograde_u130
- $51a1 = RenderScores.wvr_u150
- $51ab = RenderScores.grade_u130
- $51ae = RenderScores.wvr_u151
- $51b6 = RenderScores.postgrade_u130
- $51bb = RenderScores.wvr_u152
- $51c8 = RenderScores.wvr_u153
- $51d5 = RenderScores.wvr_u154
- $51e2 = RenderScores.wvr_u155
- $51ff = RenderScores.score_u156
- $5204 = RenderScores.wvr_u157
- $5211 = RenderScores.wvr_u158
- $521e = RenderScores.wvr_u159
- $522b = RenderScores.wvr_u160
- $5238 = RenderScores.wvr_u161
- $5245 = RenderScores.wvr_u162
- $5252 = RenderScores.wvr_u163
- $525f = RenderScores.wvr_u164
- $5269 = RenderScores.level_u156
- $5276 = RenderScores.wvr_u165
- $5281 = RenderScores.wvr_u166
- $528c = RenderScores.wvr_u167
- $5297 = RenderScores.wvr_u168
- $52a4 = RenderScores.wvr_u169
- $52b1 = RenderScores.wvr_u170
- $52be = RenderScores.wvr_u171
- $52cb = RenderScores.wvr_u172
- $52dd = RenderScores.name_u156
- $52e4 = RenderScores.wvr_u173
- $52ef = RenderScores.wvr_u174
- $52fa = RenderScores.wvr_u175
- $530c = RenderScores.nograde_u156
- $530f = RenderScores.wvr_u176
- $5319 = RenderScores.grade_u156
- $531c = RenderScores.wvr_u177
- $5324 = RenderScores.postgrade_u156
- $5329 = RenderScores.wvr_u178
- $5336 = RenderScores.wvr_u179
- $5343 = RenderScores.wvr_u180
- $5350 = RenderScores.wvr_u181
- $536d = RenderScores.score_u182
- $5372 = RenderScores.wvr_u183
- $537f = RenderScores.wvr_u184
- $538c = RenderScores.wvr_u185
- $5399 = RenderScores.wvr_u186
- $53a6 = RenderScores.wvr_u187
- $53b3 = RenderScores.wvr_u188
- $53c0 = RenderScores.wvr_u189
- $53cd = RenderScores.wvr_u190
- $53d7 = RenderScores.level_u182
- $53e4 = RenderScores.wvr_u191
- $53ef = RenderScores.wvr_u192
- $53fa = RenderScores.wvr_u193
- $5405 = RenderScores.wvr_u194
- $5412 = RenderScores.wvr_u195
- $541f = RenderScores.wvr_u196
- $542c = RenderScores.wvr_u197
- $5439 = RenderScores.wvr_u198
- $544b = RenderScores.name_u182
- $5452 = RenderScores.wvr_u199
- $545d = RenderScores.wvr_u200
- $5468 = RenderScores.wvr_u201
- $547a = RenderScores.nograde_u182
- $547d = RenderScores.wvr_u202
- $5487 = RenderScores.grade_u182
- $548a = RenderScores.wvr_u203
- $5492 = RenderScores.postgrade_u182
- $5497 = RenderScores.wvr_u204
- $54a4 = RenderScores.wvr_u205
- $54b1 = RenderScores.wvr_u206
- $54be = RenderScores.wvr_u207
- $54db = RenderScores.score_u208
- $54e0 = RenderScores.wvr_u209
- $54ed = RenderScores.wvr_u210
- $54fa = RenderScores.wvr_u211
- $5507 = RenderScores.wvr_u212
- $5514 = RenderScores.wvr_u213
- $5521 = RenderScores.wvr_u214
- $552e = RenderScores.wvr_u215
- $553b = RenderScores.wvr_u216
- $5545 = RenderScores.level_u208
- $5552 = RenderScores.wvr_u217
- $555d = RenderScores.wvr_u218
- $5568 = RenderScores.wvr_u219
- $5573 = RenderScores.wvr_u220
- $5580 = RenderScores.wvr_u221
- $558d = RenderScores.wvr_u222
- $559a = RenderScores.wvr_u223
- $55a7 = RenderScores.wvr_u224
- $55b9 = RenderScores.name_u208
- $55c0 = RenderScores.wvr_u225
- $55cb = RenderScores.wvr_u226
- $55d6 = RenderScores.wvr_u227
- $55e8 = RenderScores.nograde_u208
- $55eb = RenderScores.wvr_u228
- $55f5 = RenderScores.grade_u208
- $55f8 = RenderScores.wvr_u229
- $5600 = RenderScores.postgrade_u208
- $5605 = RenderScores.wvr_u230
- $5612 = RenderScores.wvr_u231
- $561f = RenderScores.wvr_u232
- $562c = RenderScores.wvr_u233
- $5649 = RenderScores.score_u234
- $564e = RenderScores.wvr_u235
- $565b = RenderScores.wvr_u236
- $5668 = RenderScores.wvr_u237
- $5675 = RenderScores.wvr_u238
- $5682 = RenderScores.wvr_u239
- $568f = RenderScores.wvr_u240
- $569c = RenderScores.wvr_u241
- $56a9 = RenderScores.wvr_u242
- $56b3 = RenderScores.level_u234
- $56c0 = RenderScores.wvr_u243
- $56cb = RenderScores.wvr_u244
- $56d6 = RenderScores.wvr_u245
- $56e1 = RenderScores.wvr_u246
- $56ee = RenderScores.wvr_u247
- $56fb = RenderScores.wvr_u248
- $5708 = RenderScores.wvr_u249
- $5715 = RenderScores.wvr_u250
- $5727 = RenderScores.name_u234
- $572e = RenderScores.wvr_u251
- $5739 = RenderScores.wvr_u252
- $5744 = RenderScores.wvr_u253
- $5756 = RenderScores.nograde_u234
- $5759 = RenderScores.wvr_u254
- $5763 = RenderScores.grade_u234
- $5766 = RenderScores.wvr_u255
- $576e = RenderScores.postgrade_u234
- $5773 = RenderScores.wvr_u256
- $5780 = RenderScores.wvr_u257
- $578d = RenderScores.wvr_u258
- $579a = RenderScores.wvr_u259
- $57b7 = RenderScores.score_u260
- $57bc = RenderScores.wvr_u261
- $57c9 = RenderScores.wvr_u262
- $57d6 = RenderScores.wvr_u263
- $57e3 = RenderScores.wvr_u264
- $57f0 = RenderScores.wvr_u265
- $57fd = RenderScores.wvr_u266
- $580a = RenderScores.wvr_u267
- $5817 = RenderScores.wvr_u268
- $5821 = RenderScores.level_u260
- $582e = RenderScores.wvr_u269
- $5839 = RenderScores.wvr_u270
- $5844 = RenderScores.wvr_u271
- $584f = RenderScores.wvr_u272
- $585c = RenderScores.wvr_u273
- $5869 = RenderScores.wvr_u274
- $5876 = RenderScores.wvr_u275
- $5883 = RenderScores.wvr_u276
- $5895 = RenderScores.name_u260
- $589c = RenderScores.wvr_u277
- $58a7 = RenderScores.wvr_u278
- $58b2 = RenderScores.wvr_u279
- $58c4 = RenderScores.nograde_u260
- $58c7 = RenderScores.wvr_u280
- $58d1 = RenderScores.grade_u260
- $58d4 = RenderScores.wvr_u281
- $58dc = RenderScores.postgrade_u260
- $58e1 = RenderScores.wvr_u282
- $58ee = RenderScores.wvr_u283
- $58fb = RenderScores.wvr_u284
- $5908 = RenderScores.wvr_u285
- SECTION: $591f-$693a ($101c bytes) ["Title Screen Static Data"]
- $591f = sEasterM0
- $5924 = sEasterM1
- $5929 = sEasterC0
- $5934 = sEasterC1
- $593f = sEasterA0
- $594a = sEasterA1
- $5955 = sEasterS0
- $595a = sEasterS1
- $595f = sBUTTONSMode
- $5967 = sRNGMode
- $597b = sROTMode
- $598b = sDROPMode
- $599f = sCURVEMode
- $59bb = sHIGMode
- $59c3 = sDisabled
- $59c7 = sFilterMode
- $59db = sTetryButtons
- $5a1b = sTetryRNG
- $5a5b = sTetryROT
- $5a9b = sTetryDROP
- $5adb = sTetryCURVE
- $5b1b = sTetryHIG
- $5b5b = sTetrySTART
- $5b9b = sTetryFILTER
- $5bdb = sTetryEXIT
- $5c1b = sTitleScreenMainMap
- $5ebb = sTitleScreenSettingsMap
- $5ebb = sTitleScreenMainMapEnd
- $615b = sTitleScreenCreditsMap
- $615b = sTitleScreenSettingsMapEnd
- $63fb = sTitleScreenProfileMap
- $63fb = sTitleScreenCreditsMapEnd
- $669b = sTitleScreenRecordsMap
- $669b = sTitleScreenProfileMapEnd
- $693b = sTitleScreenRecordsMapEnd
- EMPTY: $693b-$7fff ($16c5 bytes)
- TOTAL EMPTY: $16c5 bytes
+ $4484 = TitleVBlankHandlerB.notselected_u17
+ $4489 = TitleVBlankHandlerB.selected_u17
+ $448c = TitleVBlankHandlerB.done_u17
+ $4496 = TitleVBlankHandlerB.notselected_u18
+ $449b = TitleVBlankHandlerB.selected_u18
+ $449e = TitleVBlankHandlerB.done_u18
+ $44bc = TitleVBlankHandlerB.buttons
+ $44d3 = TitleVBlankHandlerB.filter
+ $44f2 = !2
+ $44f9 = TitleVBlankHandlerB.donetetry2
+ $451f = TitleVBlankHandlerB.vblankSettings
+ $4529 = TitleVBlankHandlerB.notselected_u19
+ $452e = TitleVBlankHandlerB.selected_u19
+ $4531 = TitleVBlankHandlerB.done_u19
+ $453b = TitleVBlankHandlerB.notselected_u20
+ $4540 = TitleVBlankHandlerB.selected_u20
+ $4543 = TitleVBlankHandlerB.done_u20
+ $454d = TitleVBlankHandlerB.notselected_u21
+ $4552 = TitleVBlankHandlerB.selected_u21
+ $4555 = TitleVBlankHandlerB.done_u21
+ $455f = TitleVBlankHandlerB.notselected_u22
+ $4564 = TitleVBlankHandlerB.selected_u22
+ $4567 = TitleVBlankHandlerB.done_u22
+ $4571 = TitleVBlankHandlerB.notselected_u23
+ $4576 = TitleVBlankHandlerB.selected_u23
+ $4579 = TitleVBlankHandlerB.done_u23
+ $4583 = TitleVBlankHandlerB.notselected_u24
+ $4588 = TitleVBlankHandlerB.selected_u24
+ $458b = TitleVBlankHandlerB.done_u24
+ $4595 = TitleVBlankHandlerB.notselected_u25
+ $459a = TitleVBlankHandlerB.selected_u25
+ $459d = TitleVBlankHandlerB.done_u25
+ $461d = TitleVBlankHandlerB.disabled1
+ $4629 = TitleVBlankHandlerB.start
+ $4635 = !3
+ $463c = TitleVBlankHandlerB.donetetry1
+ $4662 = TitleVBlankHandlerB.vblankRecords
+ $4697 = TitleVBlankHandlerB.vblankCredits
+ $4698 = MainHandleA
+ $46a6 = MainHandleA.jumps
+ $46b8 = MainHandleA.tosettings
+ $46bd = MainHandleA.tocredits
+ $46c2 = MainHandleA.toprofile
+ $46c7 = MainHandleA.torecords
+ $46cc = MainHandleUp
+ $46d7 = !4
+ $46dd = MainHandleDown
+ $46e9 = !5
+ $46ee = SettingsHandleA
+ $46fb = ProfileHandleB
+ $46fb = SettingsHandleB
+ $4700 = SettingsHandleDown
+ $470c = !6
+ $4711 = SettingsHandleUp
+ $471c = !7
+ $4722 = SettingsHandleLeft
+ $4733 = SettingsHandleLeft.jumps
+ $4748 = SettingsHandleLeft.rng
+ $4756 = !8
+ $475f = SettingsHandleLeft.rot
+ $476d = !9
+ $4776 = SettingsHandleLeft.drop
+ $4784 = !10
+ $478d = SettingsHandleLeft.curve
+ $479e = !11
+ $47aa = SettingsHandleLeft.hig
+ $47b8 = !12
+ $47c1 = SettingsHandleRight
+ $47d2 = SettingsHandleRight.jumps
+ $47e7 = SettingsHandleRight.rng
+ $47f6 = !13
+ $47fe = SettingsHandleRight.rot
+ $480d = !14
+ $4815 = SettingsHandleRight.drop
+ $4824 = !15
+ $482c = SettingsHandleRight.curve
+ $483e = !16
+ $4849 = SettingsHandleRight.hig
+ $4858 = !17
+ $4860 = ProfileHandleA
+ $4874 = ProfileHandleRight
+ $4888 = ProfileHandleRight.jumps
+ $48a0 = ProfileHandleRight.idx
+ $48a9 = ProfileHandleRight.doit
+ $48ac = ProfileHandleRight.l0
+ $48b6 = ProfileHandleRight.doit1
+ $48bd = ProfileHandleRight.l1
+ $48c7 = ProfileHandleRight.doit2
+ $48ce = ProfileHandleRight.l2
+ $48d8 = ProfileHandleRight.doit3
+ $48df = ProfileHandleRight.buttons
+ $48ee = !18
+ $48f6 = ProfileHandleRight.filter
+ $4903 = !19
+ $490a = ProfileHandleLeft
+ $491e = ProfileHandleLeft.jumps
+ $4936 = ProfileHandleLeft.idx
+ $4940 = ProfileHandleLeft.doit
+ $4943 = ProfileHandleLeft.l0
+ $494d = ProfileHandleLeft.doit1
+ $4954 = ProfileHandleLeft.l1
+ $495e = ProfileHandleLeft.doit2
+ $4965 = ProfileHandleLeft.l2
+ $496f = ProfileHandleLeft.doit3
+ $4976 = ProfileHandleLeft.buttons
+ $4984 = !20
+ $498d = ProfileHandleLeft.filter
+ $4999 = !21
+ $49a1 = ProfileHandleDown
+ $49ad = !22
+ $49b2 = ProfileHandleUp
+ $49bd = !23
+ $49c3 = DecrementLevel
+ $49d9 = IncrementLevel
+ $49ef = InitSpeedCurve
+ $49fe = GetEnd
+ $4a09 = !24
+ $4a11 = !25
+ $4a19 = !26
+ $4a21 = !27
+ $4a29 = !28
+ $4a31 = !29
+ $4a35 = GetStart
+ $4a40 = !30
+ $4a48 = !31
+ $4a50 = !32
+ $4a58 = !33
+ $4a60 = !34
+ $4a68 = !35
+ $4a6c = CheckLevelRange
+ $4a85 = CheckLevelRange.notatend
+ $4aa5 = CheckLevelRange.notatstart
+ $4aa6 = RecordsHandleLeft
+ $4abc = !36
+ $4ac4 = RecordsHandleRight
+ $4adb = !37
+ $4ae2 = RecordsHandleSelect
+ $4aeb = RenderScores
+ $4aeb = !38
+ $4b14 = RenderScores.score_u26
+ $4b19 = RenderScores.wvr_u27
+ $4b26 = RenderScores.wvr_u28
+ $4b33 = RenderScores.wvr_u29
+ $4b40 = RenderScores.wvr_u30
+ $4b4d = RenderScores.wvr_u31
+ $4b5a = RenderScores.wvr_u32
+ $4b67 = RenderScores.wvr_u33
+ $4b74 = RenderScores.wvr_u34
+ $4b7e = RenderScores.level_u26
+ $4b8b = RenderScores.wvr_u35
+ $4b96 = RenderScores.wvr_u36
+ $4ba1 = RenderScores.wvr_u37
+ $4bac = RenderScores.wvr_u38
+ $4bb9 = RenderScores.wvr_u39
+ $4bc6 = RenderScores.wvr_u40
+ $4bd3 = RenderScores.wvr_u41
+ $4be0 = RenderScores.wvr_u42
+ $4bf2 = RenderScores.name_u26
+ $4bf9 = RenderScores.wvr_u43
+ $4c04 = RenderScores.wvr_u44
+ $4c0f = RenderScores.wvr_u45
+ $4c21 = RenderScores.nograde_u26
+ $4c24 = RenderScores.wvr_u46
+ $4c2e = RenderScores.grade_u26
+ $4c31 = RenderScores.wvr_u47
+ $4c39 = RenderScores.postgrade_u26
+ $4c3e = RenderScores.wvr_u48
+ $4c4b = RenderScores.wvr_u49
+ $4c58 = RenderScores.wvr_u50
+ $4c65 = RenderScores.wvr_u51
+ $4c82 = RenderScores.score_u52
+ $4c87 = RenderScores.wvr_u53
+ $4c94 = RenderScores.wvr_u54
+ $4ca1 = RenderScores.wvr_u55
+ $4cae = RenderScores.wvr_u56
+ $4cbb = RenderScores.wvr_u57
+ $4cc8 = RenderScores.wvr_u58
+ $4cd5 = RenderScores.wvr_u59
+ $4ce2 = RenderScores.wvr_u60
+ $4cec = RenderScores.level_u52
+ $4cf9 = RenderScores.wvr_u61
+ $4d04 = RenderScores.wvr_u62
+ $4d0f = RenderScores.wvr_u63
+ $4d1a = RenderScores.wvr_u64
+ $4d27 = RenderScores.wvr_u65
+ $4d34 = RenderScores.wvr_u66
+ $4d41 = RenderScores.wvr_u67
+ $4d4e = RenderScores.wvr_u68
+ $4d60 = RenderScores.name_u52
+ $4d67 = RenderScores.wvr_u69
+ $4d72 = RenderScores.wvr_u70
+ $4d7d = RenderScores.wvr_u71
+ $4d8f = RenderScores.nograde_u52
+ $4d92 = RenderScores.wvr_u72
+ $4d9c = RenderScores.grade_u52
+ $4d9f = RenderScores.wvr_u73
+ $4da7 = RenderScores.postgrade_u52
+ $4dac = RenderScores.wvr_u74
+ $4db9 = RenderScores.wvr_u75
+ $4dc6 = RenderScores.wvr_u76
+ $4dd3 = RenderScores.wvr_u77
+ $4df0 = RenderScores.score_u78
+ $4df5 = RenderScores.wvr_u79
+ $4e02 = RenderScores.wvr_u80
+ $4e0f = RenderScores.wvr_u81
+ $4e1c = RenderScores.wvr_u82
+ $4e29 = RenderScores.wvr_u83
+ $4e36 = RenderScores.wvr_u84
+ $4e43 = RenderScores.wvr_u85
+ $4e50 = RenderScores.wvr_u86
+ $4e5a = RenderScores.level_u78
+ $4e67 = RenderScores.wvr_u87
+ $4e72 = RenderScores.wvr_u88
+ $4e7d = RenderScores.wvr_u89
+ $4e88 = RenderScores.wvr_u90
+ $4e95 = RenderScores.wvr_u91
+ $4ea2 = RenderScores.wvr_u92
+ $4eaf = RenderScores.wvr_u93
+ $4ebc = RenderScores.wvr_u94
+ $4ece = RenderScores.name_u78
+ $4ed5 = RenderScores.wvr_u95
+ $4ee0 = RenderScores.wvr_u96
+ $4eeb = RenderScores.wvr_u97
+ $4efd = RenderScores.nograde_u78
+ $4f00 = RenderScores.wvr_u98
+ $4f0a = RenderScores.grade_u78
+ $4f0d = RenderScores.wvr_u99
+ $4f15 = RenderScores.postgrade_u78
+ $4f1a = RenderScores.wvr_u100
+ $4f27 = RenderScores.wvr_u101
+ $4f34 = RenderScores.wvr_u102
+ $4f41 = RenderScores.wvr_u103
+ $4f5e = RenderScores.score_u104
+ $4f63 = RenderScores.wvr_u105
+ $4f70 = RenderScores.wvr_u106
+ $4f7d = RenderScores.wvr_u107
+ $4f8a = RenderScores.wvr_u108
+ $4f97 = RenderScores.wvr_u109
+ $4fa4 = RenderScores.wvr_u110
+ $4fb1 = RenderScores.wvr_u111
+ $4fbe = RenderScores.wvr_u112
+ $4fc8 = RenderScores.level_u104
+ $4fd5 = RenderScores.wvr_u113
+ $4fe0 = RenderScores.wvr_u114
+ $4feb = RenderScores.wvr_u115
+ $4ff6 = RenderScores.wvr_u116
+ $5003 = RenderScores.wvr_u117
+ $5010 = RenderScores.wvr_u118
+ $501d = RenderScores.wvr_u119
+ $502a = RenderScores.wvr_u120
+ $503c = RenderScores.name_u104
+ $5043 = RenderScores.wvr_u121
+ $504e = RenderScores.wvr_u122
+ $5059 = RenderScores.wvr_u123
+ $506b = RenderScores.nograde_u104
+ $506e = RenderScores.wvr_u124
+ $5078 = RenderScores.grade_u104
+ $507b = RenderScores.wvr_u125
+ $5083 = RenderScores.postgrade_u104
+ $5088 = RenderScores.wvr_u126
+ $5095 = RenderScores.wvr_u127
+ $50a2 = RenderScores.wvr_u128
+ $50af = RenderScores.wvr_u129
+ $50cc = RenderScores.score_u130
+ $50d1 = RenderScores.wvr_u131
+ $50de = RenderScores.wvr_u132
+ $50eb = RenderScores.wvr_u133
+ $50f8 = RenderScores.wvr_u134
+ $5105 = RenderScores.wvr_u135
+ $5112 = RenderScores.wvr_u136
+ $511f = RenderScores.wvr_u137
+ $512c = RenderScores.wvr_u138
+ $5136 = RenderScores.level_u130
+ $5143 = RenderScores.wvr_u139
+ $514e = RenderScores.wvr_u140
+ $5159 = RenderScores.wvr_u141
+ $5164 = RenderScores.wvr_u142
+ $5171 = RenderScores.wvr_u143
+ $517e = RenderScores.wvr_u144
+ $518b = RenderScores.wvr_u145
+ $5198 = RenderScores.wvr_u146
+ $51aa = RenderScores.name_u130
+ $51b1 = RenderScores.wvr_u147
+ $51bc = RenderScores.wvr_u148
+ $51c7 = RenderScores.wvr_u149
+ $51d9 = RenderScores.nograde_u130
+ $51dc = RenderScores.wvr_u150
+ $51e6 = RenderScores.grade_u130
+ $51e9 = RenderScores.wvr_u151
+ $51f1 = RenderScores.postgrade_u130
+ $51f6 = RenderScores.wvr_u152
+ $5203 = RenderScores.wvr_u153
+ $5210 = RenderScores.wvr_u154
+ $521d = RenderScores.wvr_u155
+ $523a = RenderScores.score_u156
+ $523f = RenderScores.wvr_u157
+ $524c = RenderScores.wvr_u158
+ $5259 = RenderScores.wvr_u159
+ $5266 = RenderScores.wvr_u160
+ $5273 = RenderScores.wvr_u161
+ $5280 = RenderScores.wvr_u162
+ $528d = RenderScores.wvr_u163
+ $529a = RenderScores.wvr_u164
+ $52a4 = RenderScores.level_u156
+ $52b1 = RenderScores.wvr_u165
+ $52bc = RenderScores.wvr_u166
+ $52c7 = RenderScores.wvr_u167
+ $52d2 = RenderScores.wvr_u168
+ $52df = RenderScores.wvr_u169
+ $52ec = RenderScores.wvr_u170
+ $52f9 = RenderScores.wvr_u171
+ $5306 = RenderScores.wvr_u172
+ $5318 = RenderScores.name_u156
+ $531f = RenderScores.wvr_u173
+ $532a = RenderScores.wvr_u174
+ $5335 = RenderScores.wvr_u175
+ $5347 = RenderScores.nograde_u156
+ $534a = RenderScores.wvr_u176
+ $5354 = RenderScores.grade_u156
+ $5357 = RenderScores.wvr_u177
+ $535f = RenderScores.postgrade_u156
+ $5364 = RenderScores.wvr_u178
+ $5371 = RenderScores.wvr_u179
+ $537e = RenderScores.wvr_u180
+ $538b = RenderScores.wvr_u181
+ $53a8 = RenderScores.score_u182
+ $53ad = RenderScores.wvr_u183
+ $53ba = RenderScores.wvr_u184
+ $53c7 = RenderScores.wvr_u185
+ $53d4 = RenderScores.wvr_u186
+ $53e1 = RenderScores.wvr_u187
+ $53ee = RenderScores.wvr_u188
+ $53fb = RenderScores.wvr_u189
+ $5408 = RenderScores.wvr_u190
+ $5412 = RenderScores.level_u182
+ $541f = RenderScores.wvr_u191
+ $542a = RenderScores.wvr_u192
+ $5435 = RenderScores.wvr_u193
+ $5440 = RenderScores.wvr_u194
+ $544d = RenderScores.wvr_u195
+ $545a = RenderScores.wvr_u196
+ $5467 = RenderScores.wvr_u197
+ $5474 = RenderScores.wvr_u198
+ $5486 = RenderScores.name_u182
+ $548d = RenderScores.wvr_u199
+ $5498 = RenderScores.wvr_u200
+ $54a3 = RenderScores.wvr_u201
+ $54b5 = RenderScores.nograde_u182
+ $54b8 = RenderScores.wvr_u202
+ $54c2 = RenderScores.grade_u182
+ $54c5 = RenderScores.wvr_u203
+ $54cd = RenderScores.postgrade_u182
+ $54d2 = RenderScores.wvr_u204
+ $54df = RenderScores.wvr_u205
+ $54ec = RenderScores.wvr_u206
+ $54f9 = RenderScores.wvr_u207
+ $5516 = RenderScores.score_u208
+ $551b = RenderScores.wvr_u209
+ $5528 = RenderScores.wvr_u210
+ $5535 = RenderScores.wvr_u211
+ $5542 = RenderScores.wvr_u212
+ $554f = RenderScores.wvr_u213
+ $555c = RenderScores.wvr_u214
+ $5569 = RenderScores.wvr_u215
+ $5576 = RenderScores.wvr_u216
+ $5580 = RenderScores.level_u208
+ $558d = RenderScores.wvr_u217
+ $5598 = RenderScores.wvr_u218
+ $55a3 = RenderScores.wvr_u219
+ $55ae = RenderScores.wvr_u220
+ $55bb = RenderScores.wvr_u221
+ $55c8 = RenderScores.wvr_u222
+ $55d5 = RenderScores.wvr_u223
+ $55e2 = RenderScores.wvr_u224
+ $55f4 = RenderScores.name_u208
+ $55fb = RenderScores.wvr_u225
+ $5606 = RenderScores.wvr_u226
+ $5611 = RenderScores.wvr_u227
+ $5623 = RenderScores.nograde_u208
+ $5626 = RenderScores.wvr_u228
+ $5630 = RenderScores.grade_u208
+ $5633 = RenderScores.wvr_u229
+ $563b = RenderScores.postgrade_u208
+ $5640 = RenderScores.wvr_u230
+ $564d = RenderScores.wvr_u231
+ $565a = RenderScores.wvr_u232
+ $5667 = RenderScores.wvr_u233
+ $5684 = RenderScores.score_u234
+ $5689 = RenderScores.wvr_u235
+ $5696 = RenderScores.wvr_u236
+ $56a3 = RenderScores.wvr_u237
+ $56b0 = RenderScores.wvr_u238
+ $56bd = RenderScores.wvr_u239
+ $56ca = RenderScores.wvr_u240
+ $56d7 = RenderScores.wvr_u241
+ $56e4 = RenderScores.wvr_u242
+ $56ee = RenderScores.level_u234
+ $56fb = RenderScores.wvr_u243
+ $5706 = RenderScores.wvr_u244
+ $5711 = RenderScores.wvr_u245
+ $571c = RenderScores.wvr_u246
+ $5729 = RenderScores.wvr_u247
+ $5736 = RenderScores.wvr_u248
+ $5743 = RenderScores.wvr_u249
+ $5750 = RenderScores.wvr_u250
+ $5762 = RenderScores.name_u234
+ $5769 = RenderScores.wvr_u251
+ $5774 = RenderScores.wvr_u252
+ $577f = RenderScores.wvr_u253
+ $5791 = RenderScores.nograde_u234
+ $5794 = RenderScores.wvr_u254
+ $579e = RenderScores.grade_u234
+ $57a1 = RenderScores.wvr_u255
+ $57a9 = RenderScores.postgrade_u234
+ $57ae = RenderScores.wvr_u256
+ $57bb = RenderScores.wvr_u257
+ $57c8 = RenderScores.wvr_u258
+ $57d5 = RenderScores.wvr_u259
+ $57f2 = RenderScores.score_u260
+ $57f7 = RenderScores.wvr_u261
+ $5804 = RenderScores.wvr_u262
+ $5811 = RenderScores.wvr_u263
+ $581e = RenderScores.wvr_u264
+ $582b = RenderScores.wvr_u265
+ $5838 = RenderScores.wvr_u266
+ $5845 = RenderScores.wvr_u267
+ $5852 = RenderScores.wvr_u268
+ $585c = RenderScores.level_u260
+ $5869 = RenderScores.wvr_u269
+ $5874 = RenderScores.wvr_u270
+ $587f = RenderScores.wvr_u271
+ $588a = RenderScores.wvr_u272
+ $5897 = RenderScores.wvr_u273
+ $58a4 = RenderScores.wvr_u274
+ $58b1 = RenderScores.wvr_u275
+ $58be = RenderScores.wvr_u276
+ $58d0 = RenderScores.name_u260
+ $58d7 = RenderScores.wvr_u277
+ $58e2 = RenderScores.wvr_u278
+ $58ed = RenderScores.wvr_u279
+ $58ff = RenderScores.nograde_u260
+ $5902 = RenderScores.wvr_u280
+ $590c = RenderScores.grade_u260
+ $590f = RenderScores.wvr_u281
+ $5917 = RenderScores.postgrade_u260
+ $591c = RenderScores.wvr_u282
+ $5929 = RenderScores.wvr_u283
+ $5936 = RenderScores.wvr_u284
+ $5943 = RenderScores.wvr_u285
+ SECTION: $595a-$6af5 ($119c bytes) ["Title Screen Static Data"]
+ $595a = sEasterM0
+ $595f = sEasterM1
+ $5964 = sEasterC0
+ $596f = sEasterC1
+ $597a = sEasterA0
+ $5985 = sEasterA1
+ $5990 = sEasterS0
+ $5995 = sEasterS1
+ $599a = sBUTTONSMode
+ $59a2 = sRNGMode
+ $59b6 = sROTMode
+ $59c6 = sDROPMode
+ $59da = sCURVEMode
+ $59f6 = sHIGMode
+ $59fe = sDisabled
+ $5a02 = sFilterMode
+ $5a16 = sTetryRNG
+ $5a56 = sTetryROT
+ $5a96 = sTetryDROP
+ $5ad6 = sTetryCURVE
+ $5b16 = sTetryHIG
+ $5b56 = sTetrySTART
+ $5b96 = sTetryEXITSettings
+ $5bd6 = sTetryProfileNumber
+ $5c16 = sTetryProfileInitial1
+ $5c56 = sTetryProfileInitial2
+ $5c96 = sTetryProfileInitial3
+ $5cd6 = sTetryButtons
+ $5d16 = sTetryFILTER
+ $5d56 = sTetryReset
+ $5d96 = sTetryEXITProfile
+ $5dd6 = sTitleScreenMainMap
+ $6076 = sTitleScreenSettingsMap
+ $6076 = sTitleScreenMainMapEnd
+ $6316 = sTitleScreenCreditsMap
+ $6316 = sTitleScreenSettingsMapEnd
+ $65b6 = sTitleScreenProfileMap
+ $65b6 = sTitleScreenCreditsMapEnd
+ $6856 = sTitleScreenRecordsMap
+ $6856 = sTitleScreenProfileMapEnd
+ $6af6 = sTitleScreenRecordsMapEnd
+ EMPTY: $6af6-$7fff ($150a bytes)
+ TOTAL EMPTY: $150a bytes
ROMX bank #5:
SECTION: $4000-$4007 ($0008 bytes) ["Bank ID BANK_GAMEPLAY"]
@@ -1590,7 +1603,7 @@ ROMX bank #5:
$5384 = ClearLines.r_u48
$5384 = ClearLines.fixgarbo
$5387 = ClearLines.fixgarboloop
- SECTION: $5391-$6294 ($0f04 bytes) ["Gameplay Function Banked"]
+ SECTION: $5391-$6297 ($0f07 bytes) ["Gameplay Function Banked"]
$5391 = SwitchToGameplayB
$5397 = SwitchToGameplayB.wvr_u1
$53a0 = SwitchToGameplayB.loadtilemap
@@ -2063,38 +2076,38 @@ ROMX bank #5:
$61ce = GamePlayEventLoopHandlerB.predone
$61e4 = GamePlayEventLoopHandlerB.staysmall
$61fa = GamePlayEventLoopHandlerB.drawStaticInfo
- $622b = DoHold
- $622f = DoHold.checkIRSA
- $6235 = DoHold.ldb3
- $6240 = DoHold.lda3
- $6249 = DoHold.cp3
- $6257 = DoHold.checkIRSB
- $625d = DoHold.lda4
- $6268 = DoHold.ldb4
- $6271 = DoHold.cp4
- $627f = DoHold.noRotation
- $628a = DoHold.doHoldOperation
- SECTION: $6295-$6b2a ($0896 bytes) ["Gameplay Static Data"]
- $6295 = sLeftDasSlam
- $629b = sRightDasSlam
- $62a1 = sLeady
- $62ab = sGo
- $62b5 = sPause
- $62dd = sKill
- $637d = sYouAreGM
- $63e1 = sFinalChallenge
- $64a9 = sPieceXOffsets
- $64c5 = sPieceYOffsets
- $64e1 = sPieceFastRotationStates
- $6551 = sPieceRotationStates
- $65c1 = sTGM3Bag
- $65e4 = sTGM3Droughts
- $65eb = sGameplayTileMap
- $688b = sGameplayUngradedTileMap
- $688b = sGameplayTileMapEnd
- $6b2b = sGameplayUngradedTileMapEnd
- EMPTY: $6b2b-$7fff ($14d5 bytes)
- TOTAL EMPTY: $14d5 bytes
+ $622e = DoHold
+ $6232 = DoHold.checkIRSA
+ $6238 = DoHold.ldb3
+ $6243 = DoHold.lda3
+ $624c = DoHold.cp3
+ $625a = DoHold.checkIRSB
+ $6260 = DoHold.lda4
+ $626b = DoHold.ldb4
+ $6274 = DoHold.cp4
+ $6282 = DoHold.noRotation
+ $628d = DoHold.doHoldOperation
+ SECTION: $6298-$6b2d ($0896 bytes) ["Gameplay Static Data"]
+ $6298 = sLeftDasSlam
+ $629e = sRightDasSlam
+ $62a4 = sLeady
+ $62ae = sGo
+ $62b8 = sPause
+ $62e0 = sKill
+ $6380 = sYouAreGM
+ $63e4 = sFinalChallenge
+ $64ac = sPieceXOffsets
+ $64c8 = sPieceYOffsets
+ $64e4 = sPieceFastRotationStates
+ $6554 = sPieceRotationStates
+ $65c4 = sTGM3Bag
+ $65e7 = sTGM3Droughts
+ $65ee = sGameplayTileMap
+ $688e = sGameplayUngradedTileMap
+ $688e = sGameplayTileMapEnd
+ $6b2e = sGameplayUngradedTileMapEnd
+ EMPTY: $6b2e-$7fff ($14d2 bytes)
+ TOTAL EMPTY: $14d2 bytes
ROMX bank #6:
SECTION: $4000-$4007 ($0008 bytes) ["Bank ID BANK_GAMEPLAY_BIG"]
@@ -2395,7 +2408,7 @@ ROMX bank #6:
$5255 = BigClearLines.fixgarbo
$5258 = BigClearLines.fixgarboloop
$5275 = BigWidenField
- SECTION: $55c5-$656b ($0fa7 bytes) ["Gameplay Function Big Banked"]
+ SECTION: $55c5-$656e ($0faa bytes) ["Gameplay Function Big Banked"]
$55c5 = SwitchToGameplayBigB
$55cb = SwitchToGameplayBigB.wvr_u214
$55d4 = SwitchToGameplayBigB.loadtilemap
@@ -2888,36 +2901,36 @@ ROMX bank #6:
$6480 = GamePlayBigEventLoopHandlerB.preRollMode
$64af = GamePlayBigEventLoopHandlerB.predone
$64d1 = GamePlayBigEventLoopHandlerB.drawStaticInfo
- $6502 = BigDoHold
- $6506 = BigDoHold.checkIRSA
- $650c = BigDoHold.ldb3
- $6517 = BigDoHold.lda3
- $6520 = BigDoHold.cp3
- $652e = BigDoHold.checkIRSB
- $6534 = BigDoHold.lda4
- $653f = BigDoHold.ldb4
- $6548 = BigDoHold.cp4
- $6556 = BigDoHold.noRotation
- $6561 = BigDoHold.doHoldOperation
- SECTION: $656c-$6dd7 ($086c bytes) ["Gameplay Big Static Data"]
- $656c = sBigLeftDasSlam
- $6572 = sBigRightDasSlam
- $6578 = sBigLeady
- $6582 = sBigGo
- $658c = sBigPause
- $65b4 = sBigKill
- $6654 = sBigYouAreGM
- $66b8 = sBigFinalChallenge
- $6780 = sBigPieceXOffsets
- $679c = sBigPieceYOffsets
- $67b8 = sBigPieceFastRotationStates
- $6828 = sBigPieceRotationStates
- $6898 = sBigGameplayTileMap
- $6b38 = sBigGameplayUngradedTileMap
- $6b38 = sBigGameplayTileMapEnd
- $6dd8 = sBigGameplayUngradedTileMapEnd
- EMPTY: $6dd8-$7fff ($1228 bytes)
- TOTAL EMPTY: $1228 bytes
+ $6505 = BigDoHold
+ $6509 = BigDoHold.checkIRSA
+ $650f = BigDoHold.ldb3
+ $651a = BigDoHold.lda3
+ $6523 = BigDoHold.cp3
+ $6531 = BigDoHold.checkIRSB
+ $6537 = BigDoHold.lda4
+ $6542 = BigDoHold.ldb4
+ $654b = BigDoHold.cp4
+ $6559 = BigDoHold.noRotation
+ $6564 = BigDoHold.doHoldOperation
+ SECTION: $656f-$6dda ($086c bytes) ["Gameplay Big Static Data"]
+ $656f = sBigLeftDasSlam
+ $6575 = sBigRightDasSlam
+ $657b = sBigLeady
+ $6585 = sBigGo
+ $658f = sBigPause
+ $65b7 = sBigKill
+ $6657 = sBigYouAreGM
+ $66bb = sBigFinalChallenge
+ $6783 = sBigPieceXOffsets
+ $679f = sBigPieceYOffsets
+ $67bb = sBigPieceFastRotationStates
+ $682b = sBigPieceRotationStates
+ $689b = sBigGameplayTileMap
+ $6b3b = sBigGameplayUngradedTileMap
+ $6b3b = sBigGameplayTileMapEnd
+ $6ddb = sBigGameplayUngradedTileMapEnd
+ EMPTY: $6ddb-$7fff ($1225 bytes)
+ TOTAL EMPTY: $1225 bytes
SRAM bank #0:
SECTION: $a000-$ab86 ($0b87 bytes) ["Persistent Globals"]
@@ -3059,7 +3072,7 @@ WRAM0 bank #0:
$c000 = wShadowTilemap
SECTION: $c400-$c7ff ($0400 bytes) ["GBC Shadow Tile Attributes"]
$c400 = wShadowTileAttrs
- SECTION: $c800-$c8a1 ($00a2 bytes) ["Shadow OAM"]
+ SECTION: $c800-$c8a2 ($00a3 bytes) ["Shadow OAM"]
$c800 = wShadowOAM
$c800 = wSPRNext1
$c804 = wSPRNext2
@@ -3102,114 +3115,115 @@ WRAM0 bank #0:
$c898 = wSPRTimeCS1
$c89c = wSPRTimeCS2
$c8a0 = wScratch
- SECTION: $c8a2-$cd21 ($0480 bytes) ["Field Variables"]
- $c8a2 = wField
- $c992 = wBackupField
- $ca82 = wPreShadowField
- $ca9e = wShadowField
- $cc0a = wWideField
- $cc41 = wWideBlittedField
- $cd1d = wDelayState
- $cd1e = wLeftSlamTimer
- $cd1f = wRightSlamTimer
- $cd20 = wMovementLastFrame
- $cd21 = wReturnToSmall
- SECTION: $cd22-$ce86 ($0165 bytes) ["Hi Score Variables"]
- $cd22 = wTargetHSTable
- $cd24 = wWorkingIdx
- $cd25 = wWorkingPtr
- $cd26 = wWorkingCopy
- $ce86 = wInsertTarget
- SECTION: $ce87-$cec7 ($0041 bytes) ["Stack"]
- $ce87 = wStack
- $cec8 = wStackEnd
- SECTION: $cec8-$cef3 ($002c bytes) ["TGM3 RNG Variables"]
- $cec8 = wTGM3Bag
- $ceeb = wTGM3Droughts
- $cef2 = wTGM3GeneratedIdx
- $cef3 = wTGM3WorstDroughtIdx
- SECTION: $cef4-$cf07 ($0014 bytes) ["Level Variables"]
- $cef4 = wBoneActivationLevel
- $cef6 = wInvisActivationLevel
- $cef8 = wKillScreenActivationLevel
- $cefa = wKillScreenActivationLevelBCD
- $cefc = wLastLockLevel
- $cefe = wStaffRollDuration
- $cf00 = wBigStaffRoll
- $cf01 = wBonesActive
- $cf02 = wInvisActive
- $cf03 = wKillScreenActive
- $cf04 = wLockLevel
- $cf05 = wShouldGoStaffRoll
- $cf06 = wNoMoreLocks
- $cf07 = wSkippedSectionsBCD
- SECTION: $cf08-$cf19 ($0012 bytes) ["Grade Variables"]
- $cf08 = wDecayRate
- $cf09 = wGradePoints
- $cf0a = wInternalGrade
- $cf0b = wDisplayedGrade
- $cf0c = wEffectTimer
- $cf0d = wRankingDisqualified
- $cf0e = wDecayCounter
- $cf0f = wGradeGauge
- $cf10 = wSMult
- $cf11 = wDMult
- $cf12 = wTMult
- $cf13 = wSRate
- $cf14 = wDRate
- $cf15 = wTRate
- $cf16 = wQRate
- $cf17 = wTGM1level300RequirementMet
- $cf18 = wTGM1level500RequirementMet
- $cf19 = wTGM1level999RequirementMet
- SECTION: $cf1a-$cf23 ($000a bytes) ["Progress Variables"]
- $cf1a = wProgress0B1
- $cf1b = wProgress0B2
- $cf1c = wProgress1B1
- $cf1d = wProgress1B2
- $cf1e = wProgress2B1
- $cf1f = wProgress2B2
- $cf20 = wProgress3B1
- $cf21 = wProgress3B2
- $cf22 = wProgress4B1
- $cf23 = wProgress4B2
- SECTION: $cf24-$cf2c ($0009 bytes) ["Globals"]
- $cf24 = wSwapABState
- $cf25 = wRNGModeState
- $cf26 = wRotModeState
- $cf27 = wDropModeState
- $cf28 = wSpeedCurveState
- $cf29 = wAlways20GState
- $cf2a = wInitialA
- $cf2b = wInitialB
- $cf2c = wInitialC
- SECTION: $cf2d-$cf33 ($0007 bytes) ["Title Variables"]
- $cf2d = wSelected
- $cf2e = wTitleMode
- $cf2f = wProfileName
- $cf32 = wDisplayingScoreMode
- $cf33 = wScoreFlipTimer
- SECTION: $cf34-$cf39 ($0006 bytes) ["Time Variables"]
- $cf34 = wMinutes
- $cf35 = wSeconds
- $cf36 = wFrames
- $cf37 = wCountDown
- $cf39 = wCountDownZero
- SECTION: $cf3a-$cf3d ($0004 bytes) ["Banking Variables"]
- $cf3a = wBankBackup
- SECTION: $cf3e-$cf41 ($0004 bytes) ["Gameplay Variables"]
- $cf3e = wRollLine
- $cf3f = wInStaffRoll
- $cf40 = wBigModeTransfered
- $cf41 = wGameOverIgnoreInput
- SECTION: $cf42-$cf44 ($0003 bytes) ["GBC Variables"]
- $cf42 = wOuterReps
- $cf43 = wInnerReps
- $cf44 = wTitlePal
- SECTION: $cf45-$cf45 ($0001 byte) ["SRAM Variables"]
- $cf45 = wTarget
- EMPTY: $cf46-$cfff ($00ba bytes)
- TOTAL EMPTY: $00ba bytes
+ $c8a2 = wSpritePal
+ SECTION: $c8a3-$cd22 ($0480 bytes) ["Field Variables"]
+ $c8a3 = wField
+ $c993 = wBackupField
+ $ca83 = wPreShadowField
+ $ca9f = wShadowField
+ $cc0b = wWideField
+ $cc42 = wWideBlittedField
+ $cd1e = wDelayState
+ $cd1f = wLeftSlamTimer
+ $cd20 = wRightSlamTimer
+ $cd21 = wMovementLastFrame
+ $cd22 = wReturnToSmall
+ SECTION: $cd23-$ce87 ($0165 bytes) ["Hi Score Variables"]
+ $cd23 = wTargetHSTable
+ $cd25 = wWorkingIdx
+ $cd26 = wWorkingPtr
+ $cd27 = wWorkingCopy
+ $ce87 = wInsertTarget
+ SECTION: $ce88-$cec8 ($0041 bytes) ["Stack"]
+ $ce88 = wStack
+ $cec9 = wStackEnd
+ SECTION: $cec9-$cef4 ($002c bytes) ["TGM3 RNG Variables"]
+ $cec9 = wTGM3Bag
+ $ceec = wTGM3Droughts
+ $cef3 = wTGM3GeneratedIdx
+ $cef4 = wTGM3WorstDroughtIdx
+ SECTION: $cef5-$cf08 ($0014 bytes) ["Level Variables"]
+ $cef5 = wBoneActivationLevel
+ $cef7 = wInvisActivationLevel
+ $cef9 = wKillScreenActivationLevel
+ $cefb = wKillScreenActivationLevelBCD
+ $cefd = wLastLockLevel
+ $ceff = wStaffRollDuration
+ $cf01 = wBigStaffRoll
+ $cf02 = wBonesActive
+ $cf03 = wInvisActive
+ $cf04 = wKillScreenActive
+ $cf05 = wLockLevel
+ $cf06 = wShouldGoStaffRoll
+ $cf07 = wNoMoreLocks
+ $cf08 = wSkippedSectionsBCD
+ SECTION: $cf09-$cf1a ($0012 bytes) ["Grade Variables"]
+ $cf09 = wDecayRate
+ $cf0a = wGradePoints
+ $cf0b = wInternalGrade
+ $cf0c = wDisplayedGrade
+ $cf0d = wEffectTimer
+ $cf0e = wRankingDisqualified
+ $cf0f = wDecayCounter
+ $cf10 = wGradeGauge
+ $cf11 = wSMult
+ $cf12 = wDMult
+ $cf13 = wTMult
+ $cf14 = wSRate
+ $cf15 = wDRate
+ $cf16 = wTRate
+ $cf17 = wQRate
+ $cf18 = wTGM1level300RequirementMet
+ $cf19 = wTGM1level500RequirementMet
+ $cf1a = wTGM1level999RequirementMet
+ SECTION: $cf1b-$cf24 ($000a bytes) ["Progress Variables"]
+ $cf1b = wProgress0B1
+ $cf1c = wProgress0B2
+ $cf1d = wProgress1B1
+ $cf1e = wProgress1B2
+ $cf1f = wProgress2B1
+ $cf20 = wProgress2B2
+ $cf21 = wProgress3B1
+ $cf22 = wProgress3B2
+ $cf23 = wProgress4B1
+ $cf24 = wProgress4B2
+ SECTION: $cf25-$cf2d ($0009 bytes) ["Globals"]
+ $cf25 = wSwapABState
+ $cf26 = wRNGModeState
+ $cf27 = wRotModeState
+ $cf28 = wDropModeState
+ $cf29 = wSpeedCurveState
+ $cf2a = wAlways20GState
+ $cf2b = wInitialA
+ $cf2c = wInitialB
+ $cf2d = wInitialC
+ SECTION: $cf2e-$cf34 ($0007 bytes) ["Title Variables"]
+ $cf2e = wSelected
+ $cf2f = wTitleMode
+ $cf30 = wProfileName
+ $cf33 = wDisplayingScoreMode
+ $cf34 = wScoreFlipTimer
+ SECTION: $cf35-$cf3a ($0006 bytes) ["Time Variables"]
+ $cf35 = wMinutes
+ $cf36 = wSeconds
+ $cf37 = wFrames
+ $cf38 = wCountDown
+ $cf3a = wCountDownZero
+ SECTION: $cf3b-$cf3e ($0004 bytes) ["Banking Variables"]
+ $cf3b = wBankBackup
+ SECTION: $cf3f-$cf42 ($0004 bytes) ["Gameplay Variables"]
+ $cf3f = wRollLine
+ $cf40 = wInStaffRoll
+ $cf41 = wBigModeTransfered
+ $cf42 = wGameOverIgnoreInput
+ SECTION: $cf43-$cf45 ($0003 bytes) ["GBC Variables"]
+ $cf43 = wOuterReps
+ $cf44 = wInnerReps
+ $cf45 = wTitlePal
+ SECTION: $cf46-$cf46 ($0001 byte) ["SRAM Variables"]
+ $cf46 = wTarget
+ EMPTY: $cf47-$cfff ($00b9 bytes)
+ TOTAL EMPTY: $00b9 bytes
HRAM bank #0:
SECTION: $ff80-$ff9c ($001d bytes) ["High Level Variables"]
@@ -3301,8 +3315,8 @@ HRAM bank #0:
TOTAL EMPTY: $0000 bytes
SUMMARY:
- ROM0: 15429 bytes used / 955 free
- ROMX: 68511 bytes used / 29793 free in 6 banks
+ ROM0: 15558 bytes used / 826 free
+ ROMX: 68960 bytes used / 29344 free in 6 banks
SRAM: 2951 bytes used / 5241 free in 1 bank
- WRAM0: 3910 bytes used / 186 free
+ WRAM0: 3911 bytes used / 185 free
HRAM: 127 bytes used / 0 free
diff --git a/bin/DMGTRIS.pocket b/bin/DMGTRIS.pocket
index 51f68b7..52856b1 100644
Binary files a/bin/DMGTRIS.pocket and b/bin/DMGTRIS.pocket differ
diff --git a/bin/DMGTRIS.sym b/bin/DMGTRIS.sym
index 69aa124..0d8b35d 100644
--- a/bin/DMGTRIS.sym
+++ b/bin/DMGTRIS.sym
@@ -99,384 +99,388 @@
00:117d BlitField.waitendvbloop
00:13a7 BigBlitField
00:156a BigBlitField.waitendvbloop
-00:1794 ApplyTells
-00:17d2 ApplyTells.myco
-00:17d7 ApplyTells.dropmode
-00:17fb ApplyNext
-00:1803 ApplyNext.bone
-00:1822 ApplyNext.nobone
-00:1843 ApplyNext.pos
-00:1853 ApplyNext.regular
-00:1859 ApplyNext.postoffsets
-00:185c ApplyNext.getoffn
-00:1867 ApplyNext.skipoffn
-00:1903 ApplyNext.done
-00:1906 ApplyHold
-00:190e ApplyHold.bone
-00:192d ApplyHold.nobone
-00:1949 ApplyHold.hide
-00:195b ApplyHold.show
-00:196b ApplyHold.x
-00:197b ApplyHold.regular
-00:1981 ApplyHold.postoffsets
-00:1984 ApplyHold.getoffh
-00:198f ApplyHold.skipoffh
-00:19c9 ApplyTime
-00:1a1a ApplyTime.loop0
-00:1a49 ApplyTime.loop1
-00:1a9e ApplyNumbers8
-00:1ae4 ApplyNumbers8.one
-00:1aea ApplyNumbers8.two
-00:1af0 ApplyNumbers8.three
-00:1af6 ApplyNumbers8.four
-00:1afc ApplyNumbers8.five
-00:1b02 ApplyNumbers8.six
-00:1b08 ApplyNumbers8.seven
-00:1b0e ApplyNumbers8.eight
-00:1b13 ApplyNumbers4
-00:1b35 ApplyNumbers4.one
-00:1b3b ApplyNumbers4.two
-00:1b41 ApplyNumbers4.three
-00:1b47 ApplyNumbers4.four
-00:1b4c SetNumberSpritePositions
-00:1c53 GradeRendering
-00:1c86 GradeRendering.effect
-00:1c96 GradeRendering.noeffect
-00:1c9e GradeRendering.drawgrade
-00:1ca5 GradeRendering.regulargrade
-00:1cad GradeRendering.sgrade
-00:1cc3 GradeRendering.hisgrade
-00:1cd9 GradeRendering.mgrade
-00:1cef GradeRendering.lettergrade
-00:1d0c GradeRendering.mk
-00:1d12 GradeRendering.mv
-00:1d18 GradeRendering.mo
-00:1d1e GradeRendering.mm
-00:1d24 GradeRendering.gmgrade
-00:1d2f RestoreSRAM
-00:1d5e TrustedLoad
-00:1db5 TrustedLoad.jumps
-00:1dcd TrustedLoad.dmgt
-00:1dd3 TrustedLoad.tgm1
-00:1dd9 TrustedLoad.tgm3
-00:1ddf TrustedLoad.deat
-00:1de5 TrustedLoad.shir
-00:1deb TrustedLoad.chil
-00:1df1 TrustedLoad.myco
-00:1df7 TrustedLoad.search
-00:1e09 TrustedLoad.notfound
-00:1e10 TrustedLoad.fallback
-00:1e2b InitializeSRAM
-00:1f84 ResetScores
-00:1f92 ResetScores.jumps
-00:1fa7 ResetScores.dmgt
-00:1fb3 ResetScores.tgm1
-00:1fbf ResetScores.tgm3
-00:1fcb ResetScores.deat
-00:1fd7 ResetScores.shir
-00:1fe3 ResetScores.chil
-00:1fef ResetScores.myco
-00:1ffb NextProfile
-00:2004 NextProfile.update
-00:2007 ChangeProfile
-00:2007 ChangeProfile.backup
-00:2035 ChangeProfile.first
-00:2043 ChangeProfile.second
-00:2051 ChangeProfile.third
-00:205f ChangeProfile.fourth
-00:206d ChangeProfile.fifth
-00:207b ChangeProfile.sixth
-00:2089 ChangeProfile.seventh
-00:2097 ChangeProfile.eighth
-00:20a5 ChangeProfile.ninth
-00:20b3 ChangeProfile.tenth
-00:20c1 ChangeProfile.restore
-00:20f0 ChangeProfile.lfirst
-00:20ff ChangeProfile.lsecond
-00:210e ChangeProfile.lthird
-00:211d ChangeProfile.lfourth
-00:212c ChangeProfile.lfifth
-00:213b ChangeProfile.lsixth
-00:214a ChangeProfile.lseventh
-00:2159 ChangeProfile.leighth
-00:2168 ChangeProfile.lninth
-00:2177 ChangeProfile.ltenth
-00:2186 ResetProfile
-00:21e9 GradeInit
-00:221d GradeInit.grade9start
-00:2222 GradeInit.end
-00:2224 UpdateGrade
-00:2232 UpdateGrade.gradejumptable
-00:2247 DecayGradeProcess
-00:2255 DecayGradeProcess.gradejumptable
-00:226a DecayGradeDelay
-00:2278 DecayGradeDelay.gradejumptable
-00:228d PrepareScore
-00:22a0 DrawGradeProgressDMGT
-00:22bb UpdateGradeDMGT
-00:22f4 UpdateGradeDMGT.checklineclears
-00:230d UpdateGradeDMGT.clearrate
-00:231e UpdateGradeDMGT.combomult
-00:232b UpdateGradeDMGT.combo13
-00:233c UpdateGradeDMGT.combo8
-00:234d UpdateGradeDMGT.combo1
-00:235c UpdateGradeDMGT.prelevel
-00:236b UpdateGradeDMGT.single
-00:237b UpdateGradeDMGT.double
-00:238c UpdateGradeDMGT.adddonce
-00:2390 UpdateGradeDMGT.triple
-00:23a1 UpdateGradeDMGT.addtonce
-00:23a5 UpdateGradeDMGT.tetris
-00:23a9 UpdateGradeDMGT.levelmult
-00:23c1 UpdateGradeDMGT.mult4
-00:23c7 UpdateGradeDMGT.mult3
-00:23cc UpdateGradeDMGT.mult2
-00:23d0 UpdateGradeDMGT.mult1
-00:23d1 UpdateGradeDMGT.processgrade
-00:23fa UpdateGradeDMGT.increasegrademaybe
-00:241e UpdateGradeDMGT.gotgm
-00:242c DecayGradeDMGT
-00:244f DecayGradeDMGT.nodecay
-00:2456 DecayGradeDMGT.decay
-00:2464 UpdateGradeTGM1
-00:2474 UpdateGradeTGM1.trygradeup
-00:248f UpdateGradeTGM1.increasegrade
-00:24a4 UpdateGradeTGM1.skipjingle
-00:24b0 UpdateGradeTGM1.check300
-00:24ce UpdateGradeTGM1.success300
-00:24d5 UpdateGradeTGM1.fail300
-00:24dc UpdateGradeTGM1.check500
-00:24fa UpdateGradeTGM1.success500
-00:2501 UpdateGradeTGM1.fail500
-00:2508 UpdateGradeTGM1.check999
-00:253f UpdateGradeTGM1.success999
-00:2557 UpdateGradeTGM1.fail999
-00:255d UpdateGradeDEAT
-00:2569 UpdateGradeDEAT.notgm
-00:2585 UpdateGradeDEAT.notm
-00:25a8 UpdateGradeDEAT.disqualify
-00:25c6 UpdateGradeSHIR
-00:2608 UpdateGradeSHIR.s5torikan
-00:2618 UpdateGradeSHIR.s10torikan
-00:2627 UpdateGradeSHIR.disqualify
-00:2636 UpdateGradeSHIR.l1000
-00:264c UpdateGradeSHIR.l500
-00:2662 LevelInit
-00:26d2 SpecialLevelInit
-00:26e0 SpecialLevelInit.jumps
-00:26f5 SpecialLevelInit.dmgt
-00:26fa SpecialLevelInit.tgm1
-00:26ff SpecialLevelInit.tgm3
-00:2704 SpecialLevelInit.deat
-00:2709 SpecialLevelInit.shir
-00:270e SpecialLevelInit.chil
-00:2713 SpecialLevelInit.myco
-00:2718 SpecialLevelInit.loaddata
-00:274d LevelUp
-00:2777 LevelUp.doit
-00:27b6 LevelUp.checknlevel
-00:2808 LevelUp.bellmaybe
-00:2824 LevelUp.leveljinglemaybe
-00:2834 AdjustSpeedCurve
-00:283a AdjustSpeedCurve.docheck
-00:283a AdjustSpeedCurve.checkthousands
-00:2849 AdjustSpeedCurve.checkhundreds
-00:2856 AdjustSpeedCurve.checktens
-00:2865 AdjustSpeedCurve.checkones
-00:2870 AdjustSpeedCurveForced
-00:28ab AdjustSpeedCurveForced.continue
-00:28b0 BuildTrueCLevel
-00:28d8 BuildTrueCLevel.thousands
-00:28ed CheckSpecialLevelConditions
-00:291e CheckSpecialLevelConditions.override
-00:2939 CheckSpecialLevelConditions.nooverride
-00:293f CheckSpecialLevelConditions.speciallock
-00:2963 CheckSpecialLevelConditions.bones
-00:2978 CheckSpecialLevelConditions.enterthebonezone
-00:297d CheckSpecialLevelConditions.invis
-00:2992 CheckSpecialLevelConditions.vanishoxyaction
-00:2997 CheckSpecialLevelConditions.killscreen
-00:29a8 CheckSpecialLevelConditions.rip
-00:29d8 CheckSpecialLevelConditions.staffroll
-00:29e6 CheckSpecialLevelConditions.justkill
-00:29fa TriggerKillScreen
-00:2a1c GetSection
-00:2a2a GetSectionBCD
-00:2a33 GetAdjustedSection
-00:2a41 GetAdjustedSectionBCD
-00:2a4a SkipSection
-00:2a56 sTGM1GradeScores
-00:2a78 sTGM3InternalGradeSystem
-00:2b18 sTGM3GradeBoosts
-00:2b37 sTGM3LevelMultiplier
-00:2b3b sTGM3BaselineCOOL
-00:2b44 sTGM3REGRETConditions
-00:2b58 sDMGTGrading
-00:2c0c sDMGTGaugeLUT
-00:2d0c SFXInit
-00:2d2e SFXPopQueue
-00:2d43 SFXPushQueue
-00:2d54 SFXProcessQueue
-00:2d82 SFXTriggerNoise
-00:2da8 SFXEnqueue
-00:2dbd SFXEnqueue.findsfx
-00:2f17 SFXKill
-00:2f4a SFXPlayNoise
-00:2f55 SFXPlayNoise.noisereg
-00:2f6c SFXPlayNoise.savenoiseplayhead
-00:2f75 SFXPlay
-00:2f83 SFXPlay.play
-00:2f8f SFXPlay.getRegister
-00:2fa3 SFXPlay.savePlayhead
-00:2fac HarvestEntropy
-00:2fb2 HarvestEntropy.loop
-00:2fd3 RNGInit
-00:3039 RNGInit.complexinit
-00:306b ShiftHistory
-00:3088 GetNextHellPiece
-00:308d GetNextTGM1Piece
-00:30aa GetNextTGM2Piece
-00:30c7 GetNextNesPiece
-00:30d5 GetNextTGM3Piece
-00:318b GetNextPiece
-00:3199 GetNextPiece.nextpiecejumps
-00:31a8 Next35Piece
-00:31b2 Next7Piece
-00:31bc NextByte
-00:31dc CheckAndAddHiscore
-00:31e6 CheckAndAddHiscore.checkloop
-00:31eb CheckAndAddHiscore.checkgrade
-00:31f4 CheckAndAddHiscore.oldgraded
-00:3203 CheckAndAddHiscore.oldungraded
-00:320a CheckAndAddHiscore.checklevel
-00:322f CheckAndAddHiscore.checkscore
-00:3272 CheckAndAddHiscore.notbetter
-00:327f CheckAndAddHiscore.better
-00:3281 InsertHiScore
-00:3281 InsertHiScore.copylower
-00:3292 InsertHiScore.copyupper
-00:32b2 InsertHiScore.findrow
-00:32c2 InsertHiScore.insert
-00:331b InsertHiScore.persist
-00:332c GetHiScoreEntry
-00:3344 GetHiScoreEntry.store
-00:334d InitTargetHSTable
-00:3358 InitTargetHSTable.jumps
-00:336d InitTargetHSTable.dmgt
-00:3372 InitTargetHSTable.tgm1
-00:3377 InitTargetHSTable.tgm3
-00:337c InitTargetHSTable.deat
-00:3381 InitTargetHSTable.shir
-00:3386 InitTargetHSTable.chil
-00:338b InitTargetHSTable.myco
-00:338e InitTargetHSTable.store
-00:33a1 sProgressData
-00:34eb sHiscoreDefaultData
-00:362b InputInit
-00:363d GetInput
-00:363d GetInput.btns
-00:364a GetInput.readA
-00:364e GetInput.setA
-00:3659 GetInput.clearA
-00:365c GetInput.readB
-00:3660 GetInput.setB
-00:366b GetInput.clearB
-00:366e GetInput.readSelect
-00:3672 GetInput.setSelect
-00:367d GetInput.clearSelect
-00:3680 GetInput.readStart
-00:3684 GetInput.setStart
-00:368f GetInput.clearStart
-00:3692 GetInput.dpad
-00:369f GetInput.readUp
-00:36a3 GetInput.setUp
-00:36ae GetInput.clearUp
-00:36b1 GetInput.readDown
-00:36b5 GetInput.setDown
-00:36c0 GetInput.clearDown
-00:36c3 GetInput.readLeft
-00:36c7 GetInput.setLeft
-00:36d2 GetInput.clearLeft
-00:36d5 GetInput.readRight
-00:36d9 GetInput.setRight
-00:36e4 GetInput.clearRight
-00:36e7 GetInput.priorities
-00:36f4 GetInput.jumps
-00:3703 GetInput.dlru
-00:3713 GetInput.ulrd
-00:3723 GetInput.lrud
-00:372e GetInput.udlr
-00:3739 GetInput.zeroud
-00:373f GetInput.zerolr
-00:3745 GetInput.zerolrd
-00:374d GetInput.zerolru
-00:3755 ScoreInit
-00:377d IncreaseScore
-00:37b5 IncreaseScore.doConvert
-00:37cd IncreaseScore.carry
-00:37cf IncreaseScore.postConvert
-00:37e3 IncreaseScore.preAddDigit
-00:380b IncreaseScore.addDigit
-00:3821 IncreaseScore.nextDigit
-00:3835 SwitchToTitle
-00:383e TitleEventLoopHandler
-00:3848 TitleVBlankHandler
-00:3852 PersistLevel
-00:3860 DrawSpeedMain
-00:38b0 DrawSpeedSettings
-00:3900 TimeInit
-00:3920 StartCountdown
-00:392e ResetGameTime
-00:3939 CheckTorikan
-00:394f CheckTorikan.failure
-00:3951 CheckTorikan.success
-00:3954 HandleTimers
-00:397a HandleTimers.reduce
-00:3987 HandleTimers.clock
-00:39a1 HandleTimers.go
-00:39c5 SetProgress
-00:39cf SetProgress.loop
-00:39d3 SetProgress.correct
-00:39fa SetProgress.wvr_u1
-00:3a06 SetProgress.wvr_u2
-00:3a14 SetProgress.wvr_u3
-00:3a20 SetProgress.wvr_u4
-00:3a2e SetProgress.wvr_u5
-00:3a3a SetProgress.wvr_u6
-00:3a48 SetProgress.wvr_u7
-00:3a54 SetProgress.wvr_u8
-00:3a62 SetProgress.wvr_u9
-00:3a6e SetProgress.wvr_u10
-00:3a76 Main
-00:3a9f Main.notgbc
-00:3aa5 Main.wvr_u1
-00:3ad2 EventLoop
-00:3ae8 EventLoop.eventloopjumps
-00:3af1 EventLoopPostHandler
-00:3af3 EventLoopPostHandler.wvb_u2
-00:3b05 EventLoopPostHandler.vblankjumps
-00:3b0e LoadTitleTiles
-00:3b2c LoadGameplayTiles
-00:3b42 LoadGameplayTiles.gbc
-00:3b51 LoadGameplayTiles.dmg
-00:3b60 sFramesToCS
-00:3b9c UnsafeMemCopy
-00:3ba5 SafeMemCopy.wvr_u1
-00:3ba5 SafeMemCopy
-00:3bb4 UnsafeMemSet
-00:3bbc SafeMemSet
-00:3bbc SafeMemSet.wvr_u2
-00:3bca SwitchToGameplay
-00:3bd3 SwitchToGameplayBig
-00:3bdc GamePlayEventLoopHandler
-00:3be6 GamePlayBigEventLoopHandler
-00:3bf0 EnableScreenSquish
-00:3c0a DisableScreenSquish
-00:3c15 CopyOAMHandler
-00:3c21 ClearOAM
-00:3c37 BankingInit
-00:3c46 OAMDMA
-00:3c50 OAMDMAEnd
+00:1794 SetPal
+00:17a1 SetPal.darker
+00:17a7 SetPal.lighter
+00:17ad ApplyTells
+00:17ad SetPal.setpal
+00:17eb ApplyTells.myco
+00:17f0 ApplyTells.dropmode
+00:1814 ApplyNext
+00:181c ApplyNext.bone
+00:183b ApplyNext.nobone
+00:185c ApplyNext.pos
+00:186c ApplyNext.regular
+00:1872 ApplyNext.postoffsets
+00:1875 ApplyNext.getoffn
+00:1880 ApplyNext.skipoffn
+00:191c ApplyNext.done
+00:191f ApplyHold
+00:1927 ApplyHold.bone
+00:1946 ApplyHold.nobone
+00:1962 ApplyHold.hide
+00:1974 ApplyHold.show
+00:1984 ApplyHold.x
+00:1994 ApplyHold.regular
+00:199a ApplyHold.postoffsets
+00:199d ApplyHold.getoffh
+00:19a8 ApplyHold.skipoffh
+00:19e2 ApplyTime
+00:1a33 ApplyTime.loop0
+00:1a62 ApplyTime.loop1
+00:1ab7 ApplyNumbers8
+00:1b19 ApplyNumbers8.one
+00:1b23 ApplyNumbers8.two
+00:1b2d ApplyNumbers8.three
+00:1b37 ApplyNumbers8.four
+00:1b41 ApplyNumbers8.five
+00:1b4b ApplyNumbers8.six
+00:1b55 ApplyNumbers8.seven
+00:1b5f ApplyNumbers8.eight
+00:1b68 ApplyNumbers4
+00:1b96 ApplyNumbers4.one
+00:1ba0 ApplyNumbers4.two
+00:1baa ApplyNumbers4.three
+00:1bb4 ApplyNumbers4.four
+00:1bbd SetNumberSpritePositions
+00:1cd4 GradeRendering
+00:1d07 GradeRendering.effect
+00:1d17 GradeRendering.noeffect
+00:1d1f GradeRendering.drawgrade
+00:1d26 GradeRendering.regulargrade
+00:1d2e GradeRendering.sgrade
+00:1d44 GradeRendering.hisgrade
+00:1d5a GradeRendering.mgrade
+00:1d70 GradeRendering.lettergrade
+00:1d8d GradeRendering.mk
+00:1d93 GradeRendering.mv
+00:1d99 GradeRendering.mo
+00:1d9f GradeRendering.mm
+00:1da5 GradeRendering.gmgrade
+00:1db0 RestoreSRAM
+00:1ddf TrustedLoad
+00:1e36 TrustedLoad.jumps
+00:1e4e TrustedLoad.dmgt
+00:1e54 TrustedLoad.tgm1
+00:1e5a TrustedLoad.tgm3
+00:1e60 TrustedLoad.deat
+00:1e66 TrustedLoad.shir
+00:1e6c TrustedLoad.chil
+00:1e72 TrustedLoad.myco
+00:1e78 TrustedLoad.search
+00:1e8a TrustedLoad.notfound
+00:1e91 TrustedLoad.fallback
+00:1eac InitializeSRAM
+00:2005 ResetScores
+00:2013 ResetScores.jumps
+00:2028 ResetScores.dmgt
+00:2034 ResetScores.tgm1
+00:2040 ResetScores.tgm3
+00:204c ResetScores.deat
+00:2058 ResetScores.shir
+00:2064 ResetScores.chil
+00:2070 ResetScores.myco
+00:207c NextProfile
+00:2085 NextProfile.update
+00:2088 ChangeProfile
+00:2088 ChangeProfile.backup
+00:20b6 ChangeProfile.first
+00:20c4 ChangeProfile.second
+00:20d2 ChangeProfile.third
+00:20e0 ChangeProfile.fourth
+00:20ee ChangeProfile.fifth
+00:20fc ChangeProfile.sixth
+00:210a ChangeProfile.seventh
+00:2118 ChangeProfile.eighth
+00:2126 ChangeProfile.ninth
+00:2134 ChangeProfile.tenth
+00:2142 ChangeProfile.restore
+00:2171 ChangeProfile.lfirst
+00:2180 ChangeProfile.lsecond
+00:218f ChangeProfile.lthird
+00:219e ChangeProfile.lfourth
+00:21ad ChangeProfile.lfifth
+00:21bc ChangeProfile.lsixth
+00:21cb ChangeProfile.lseventh
+00:21da ChangeProfile.leighth
+00:21e9 ChangeProfile.lninth
+00:21f8 ChangeProfile.ltenth
+00:2207 ResetProfile
+00:226a GradeInit
+00:229e GradeInit.grade9start
+00:22a3 GradeInit.end
+00:22a5 UpdateGrade
+00:22b3 UpdateGrade.gradejumptable
+00:22c8 DecayGradeProcess
+00:22d6 DecayGradeProcess.gradejumptable
+00:22eb DecayGradeDelay
+00:22f9 DecayGradeDelay.gradejumptable
+00:230e PrepareScore
+00:2321 DrawGradeProgressDMGT
+00:233c UpdateGradeDMGT
+00:2375 UpdateGradeDMGT.checklineclears
+00:238e UpdateGradeDMGT.clearrate
+00:239f UpdateGradeDMGT.combomult
+00:23ac UpdateGradeDMGT.combo13
+00:23bd UpdateGradeDMGT.combo8
+00:23ce UpdateGradeDMGT.combo1
+00:23dd UpdateGradeDMGT.prelevel
+00:23ec UpdateGradeDMGT.single
+00:23fc UpdateGradeDMGT.double
+00:240d UpdateGradeDMGT.adddonce
+00:2411 UpdateGradeDMGT.triple
+00:2422 UpdateGradeDMGT.addtonce
+00:2426 UpdateGradeDMGT.tetris
+00:242a UpdateGradeDMGT.levelmult
+00:2442 UpdateGradeDMGT.mult4
+00:2448 UpdateGradeDMGT.mult3
+00:244d UpdateGradeDMGT.mult2
+00:2451 UpdateGradeDMGT.mult1
+00:2452 UpdateGradeDMGT.processgrade
+00:247b UpdateGradeDMGT.increasegrademaybe
+00:249f UpdateGradeDMGT.gotgm
+00:24ad DecayGradeDMGT
+00:24d0 DecayGradeDMGT.nodecay
+00:24d7 DecayGradeDMGT.decay
+00:24e5 UpdateGradeTGM1
+00:24f5 UpdateGradeTGM1.trygradeup
+00:2510 UpdateGradeTGM1.increasegrade
+00:2525 UpdateGradeTGM1.skipjingle
+00:2531 UpdateGradeTGM1.check300
+00:254f UpdateGradeTGM1.success300
+00:2556 UpdateGradeTGM1.fail300
+00:255d UpdateGradeTGM1.check500
+00:257b UpdateGradeTGM1.success500
+00:2582 UpdateGradeTGM1.fail500
+00:2589 UpdateGradeTGM1.check999
+00:25c0 UpdateGradeTGM1.success999
+00:25d8 UpdateGradeTGM1.fail999
+00:25de UpdateGradeDEAT
+00:25ea UpdateGradeDEAT.notgm
+00:2606 UpdateGradeDEAT.notm
+00:2629 UpdateGradeDEAT.disqualify
+00:2647 UpdateGradeSHIR
+00:2689 UpdateGradeSHIR.s5torikan
+00:2699 UpdateGradeSHIR.s10torikan
+00:26a8 UpdateGradeSHIR.disqualify
+00:26b7 UpdateGradeSHIR.l1000
+00:26cd UpdateGradeSHIR.l500
+00:26e3 LevelInit
+00:2753 SpecialLevelInit
+00:2761 SpecialLevelInit.jumps
+00:2776 SpecialLevelInit.dmgt
+00:277b SpecialLevelInit.tgm1
+00:2780 SpecialLevelInit.tgm3
+00:2785 SpecialLevelInit.deat
+00:278a SpecialLevelInit.shir
+00:278f SpecialLevelInit.chil
+00:2794 SpecialLevelInit.myco
+00:2799 SpecialLevelInit.loaddata
+00:27ce LevelUp
+00:27f8 LevelUp.doit
+00:2837 LevelUp.checknlevel
+00:2889 LevelUp.bellmaybe
+00:28a5 LevelUp.leveljinglemaybe
+00:28b5 AdjustSpeedCurve
+00:28bb AdjustSpeedCurve.docheck
+00:28bb AdjustSpeedCurve.checkthousands
+00:28ca AdjustSpeedCurve.checkhundreds
+00:28d7 AdjustSpeedCurve.checktens
+00:28e6 AdjustSpeedCurve.checkones
+00:28f1 AdjustSpeedCurveForced
+00:292c AdjustSpeedCurveForced.continue
+00:2931 BuildTrueCLevel
+00:2959 BuildTrueCLevel.thousands
+00:296e CheckSpecialLevelConditions
+00:299f CheckSpecialLevelConditions.override
+00:29ba CheckSpecialLevelConditions.nooverride
+00:29c0 CheckSpecialLevelConditions.speciallock
+00:29e4 CheckSpecialLevelConditions.bones
+00:29f9 CheckSpecialLevelConditions.enterthebonezone
+00:29fe CheckSpecialLevelConditions.invis
+00:2a13 CheckSpecialLevelConditions.vanishoxyaction
+00:2a18 CheckSpecialLevelConditions.killscreen
+00:2a29 CheckSpecialLevelConditions.rip
+00:2a59 CheckSpecialLevelConditions.staffroll
+00:2a67 CheckSpecialLevelConditions.justkill
+00:2a7b TriggerKillScreen
+00:2a9d GetSection
+00:2aab GetSectionBCD
+00:2ab4 GetAdjustedSection
+00:2ac2 GetAdjustedSectionBCD
+00:2acb SkipSection
+00:2ad7 sTGM1GradeScores
+00:2af9 sTGM3InternalGradeSystem
+00:2b99 sTGM3GradeBoosts
+00:2bb8 sTGM3LevelMultiplier
+00:2bbc sTGM3BaselineCOOL
+00:2bc5 sTGM3REGRETConditions
+00:2bd9 sDMGTGrading
+00:2c8d sDMGTGaugeLUT
+00:2d8d SFXInit
+00:2daf SFXPopQueue
+00:2dc4 SFXPushQueue
+00:2dd5 SFXProcessQueue
+00:2e03 SFXTriggerNoise
+00:2e29 SFXEnqueue
+00:2e3e SFXEnqueue.findsfx
+00:2f98 SFXKill
+00:2fcb SFXPlayNoise
+00:2fd6 SFXPlayNoise.noisereg
+00:2fed SFXPlayNoise.savenoiseplayhead
+00:2ff6 SFXPlay
+00:3004 SFXPlay.play
+00:3010 SFXPlay.getRegister
+00:3024 SFXPlay.savePlayhead
+00:302d HarvestEntropy
+00:3033 HarvestEntropy.loop
+00:3054 RNGInit
+00:30ba RNGInit.complexinit
+00:30ec ShiftHistory
+00:3109 GetNextHellPiece
+00:310e GetNextTGM1Piece
+00:312b GetNextTGM2Piece
+00:3148 GetNextNesPiece
+00:3156 GetNextTGM3Piece
+00:320c GetNextPiece
+00:321a GetNextPiece.nextpiecejumps
+00:3229 Next35Piece
+00:3233 Next7Piece
+00:323d NextByte
+00:325d CheckAndAddHiscore
+00:3267 CheckAndAddHiscore.checkloop
+00:326c CheckAndAddHiscore.checkgrade
+00:3275 CheckAndAddHiscore.oldgraded
+00:3284 CheckAndAddHiscore.oldungraded
+00:328b CheckAndAddHiscore.checklevel
+00:32b0 CheckAndAddHiscore.checkscore
+00:32f3 CheckAndAddHiscore.notbetter
+00:3300 CheckAndAddHiscore.better
+00:3302 InsertHiScore
+00:3302 InsertHiScore.copylower
+00:3313 InsertHiScore.copyupper
+00:3333 InsertHiScore.findrow
+00:3343 InsertHiScore.insert
+00:339c InsertHiScore.persist
+00:33ad GetHiScoreEntry
+00:33c5 GetHiScoreEntry.store
+00:33ce InitTargetHSTable
+00:33d9 InitTargetHSTable.jumps
+00:33ee InitTargetHSTable.dmgt
+00:33f3 InitTargetHSTable.tgm1
+00:33f8 InitTargetHSTable.tgm3
+00:33fd InitTargetHSTable.deat
+00:3402 InitTargetHSTable.shir
+00:3407 InitTargetHSTable.chil
+00:340c InitTargetHSTable.myco
+00:340f InitTargetHSTable.store
+00:3422 sProgressData
+00:356c sHiscoreDefaultData
+00:36ac InputInit
+00:36be GetInput
+00:36be GetInput.btns
+00:36cb GetInput.readA
+00:36cf GetInput.setA
+00:36da GetInput.clearA
+00:36dd GetInput.readB
+00:36e1 GetInput.setB
+00:36ec GetInput.clearB
+00:36ef GetInput.readSelect
+00:36f3 GetInput.setSelect
+00:36fe GetInput.clearSelect
+00:3701 GetInput.readStart
+00:3705 GetInput.setStart
+00:3710 GetInput.clearStart
+00:3713 GetInput.dpad
+00:3720 GetInput.readUp
+00:3724 GetInput.setUp
+00:372f GetInput.clearUp
+00:3732 GetInput.readDown
+00:3736 GetInput.setDown
+00:3741 GetInput.clearDown
+00:3744 GetInput.readLeft
+00:3748 GetInput.setLeft
+00:3753 GetInput.clearLeft
+00:3756 GetInput.readRight
+00:375a GetInput.setRight
+00:3765 GetInput.clearRight
+00:3768 GetInput.priorities
+00:3775 GetInput.jumps
+00:3784 GetInput.dlru
+00:3794 GetInput.ulrd
+00:37a4 GetInput.lrud
+00:37af GetInput.udlr
+00:37ba GetInput.zeroud
+00:37c0 GetInput.zerolr
+00:37c6 GetInput.zerolrd
+00:37ce GetInput.zerolru
+00:37d6 ScoreInit
+00:37fe IncreaseScore
+00:3836 IncreaseScore.doConvert
+00:384e IncreaseScore.carry
+00:3850 IncreaseScore.postConvert
+00:3864 IncreaseScore.preAddDigit
+00:388c IncreaseScore.addDigit
+00:38a2 IncreaseScore.nextDigit
+00:38b6 SwitchToTitle
+00:38bf TitleEventLoopHandler
+00:38c9 TitleVBlankHandler
+00:38d3 PersistLevel
+00:38e1 DrawSpeedMain
+00:3931 DrawSpeedSettings
+00:3981 TimeInit
+00:39a1 StartCountdown
+00:39af ResetGameTime
+00:39ba CheckTorikan
+00:39d0 CheckTorikan.failure
+00:39d2 CheckTorikan.success
+00:39d5 HandleTimers
+00:39fb HandleTimers.reduce
+00:3a08 HandleTimers.clock
+00:3a22 HandleTimers.go
+00:3a46 SetProgress
+00:3a50 SetProgress.loop
+00:3a54 SetProgress.correct
+00:3a7b SetProgress.wvr_u1
+00:3a87 SetProgress.wvr_u2
+00:3a95 SetProgress.wvr_u3
+00:3aa1 SetProgress.wvr_u4
+00:3aaf SetProgress.wvr_u5
+00:3abb SetProgress.wvr_u6
+00:3ac9 SetProgress.wvr_u7
+00:3ad5 SetProgress.wvr_u8
+00:3ae3 SetProgress.wvr_u9
+00:3aef SetProgress.wvr_u10
+00:3af7 Main
+00:3b20 Main.notgbc
+00:3b26 Main.wvr_u1
+00:3b53 EventLoop
+00:3b69 EventLoop.eventloopjumps
+00:3b72 EventLoopPostHandler
+00:3b74 EventLoopPostHandler.wvb_u2
+00:3b86 EventLoopPostHandler.vblankjumps
+00:3b8f LoadTitleTiles
+00:3bad LoadGameplayTiles
+00:3bc3 LoadGameplayTiles.gbc
+00:3bd2 LoadGameplayTiles.dmg
+00:3be1 sFramesToCS
+00:3c1d UnsafeMemCopy
+00:3c26 SafeMemCopy.wvr_u1
+00:3c26 SafeMemCopy
+00:3c35 UnsafeMemSet
+00:3c3d SafeMemSet
+00:3c3d SafeMemSet.wvr_u2
+00:3c4b SwitchToGameplay
+00:3c54 SwitchToGameplayBig
+00:3c5d GamePlayEventLoopHandler
+00:3c67 GamePlayBigEventLoopHandler
+00:3c71 EnableScreenSquish
+00:3c8b DisableScreenSquish
+00:3c96 CopyOAMHandler
+00:3ca2 ClearOAM
+00:3cb8 BankingInit
+00:3cc7 OAMDMA
+00:3cd1 OAMDMAEnd
01:4008 sDMGTSpeedCurve
01:4203 sDMGTSpeedCurveEnd
01:4205 sDMGTSpeedCurveSpecialData
@@ -630,451 +634,459 @@
04:4472 TitleVBlankHandlerB.notselected_u16
04:4477 TitleVBlankHandlerB.selected_u16
04:447a TitleVBlankHandlerB.done_u16
-04:4499 TitleVBlankHandlerB.vblankSettings
-04:44a3 TitleVBlankHandlerB.notselected_u17
-04:44a8 TitleVBlankHandlerB.selected_u17
-04:44ab TitleVBlankHandlerB.done_u17
-04:44b5 TitleVBlankHandlerB.notselected_u18
-04:44ba TitleVBlankHandlerB.selected_u18
-04:44bd TitleVBlankHandlerB.done_u18
-04:44c7 TitleVBlankHandlerB.notselected_u19
-04:44cc TitleVBlankHandlerB.selected_u19
-04:44cf TitleVBlankHandlerB.done_u19
-04:44d9 TitleVBlankHandlerB.notselected_u20
-04:44de TitleVBlankHandlerB.selected_u20
-04:44e1 TitleVBlankHandlerB.done_u20
-04:44eb TitleVBlankHandlerB.notselected_u21
-04:44f0 TitleVBlankHandlerB.selected_u21
-04:44f3 TitleVBlankHandlerB.done_u21
-04:44fd TitleVBlankHandlerB.notselected_u22
-04:4502 TitleVBlankHandlerB.selected_u22
-04:4505 TitleVBlankHandlerB.done_u22
-04:450f TitleVBlankHandlerB.notselected_u23
-04:4514 TitleVBlankHandlerB.selected_u23
-04:4517 TitleVBlankHandlerB.done_u23
-04:4521 TitleVBlankHandlerB.notselected_u24
-04:4526 TitleVBlankHandlerB.selected_u24
-04:4529 TitleVBlankHandlerB.done_u24
-04:4533 TitleVBlankHandlerB.notselected_u25
-04:4538 TitleVBlankHandlerB.selected_u25
-04:453b TitleVBlankHandlerB.done_u25
-04:45bb TitleVBlankHandlerB.disabled1
-04:45c7 TitleVBlankHandlerB.buttons
-04:45de TitleVBlankHandlerB.filter
-04:4607 TitleVBlankHandlerB.donetetry
-04:462d TitleVBlankHandlerB.vblankRecords
-04:4662 TitleVBlankHandlerB.vblankCredits
-04:4663 MainHandleA
-04:4671 MainHandleA.jumps
-04:4683 MainHandleA.tosettings
-04:4688 MainHandleA.tocredits
-04:468d MainHandleA.toprofile
-04:4692 MainHandleA.torecords
-04:4697 MainHandleUp
-04:46a8 MainHandleDown
-04:46b9 SettingsHandleA
-04:46c6 ProfileHandleB
-04:46c6 SettingsHandleB
-04:46cb SettingsHandleDown
-04:46dc SettingsHandleUp
-04:46ed SettingsHandleLeft
-04:46fe SettingsHandleLeft.jumps
-04:4719 SettingsHandleLeft.buttons
-04:4730 SettingsHandleLeft.rng
-04:4747 SettingsHandleLeft.rot
-04:475e SettingsHandleLeft.drop
-04:4775 SettingsHandleLeft.curve
-04:4792 SettingsHandleLeft.hig
-04:47a9 SettingsHandleLeft.filter
-04:47bd SettingsHandleRight
-04:47ce SettingsHandleRight.jumps
-04:47e9 SettingsHandleRight.buttons
-04:4800 SettingsHandleRight.rng
-04:4817 SettingsHandleRight.rot
-04:482e SettingsHandleRight.drop
-04:4845 SettingsHandleRight.curve
-04:4862 SettingsHandleRight.hig
-04:4879 SettingsHandleRight.filter
-04:488d ProfileHandleA
-04:48a1 ProfileHandleRight
-04:48b5 ProfileHandleRight.jumps
-04:48c4 ProfileHandleRight.idx
-04:48cd ProfileHandleRight.doit
-04:48d0 ProfileHandleRight.l0
-04:48da ProfileHandleRight.doit1
-04:48e1 ProfileHandleRight.l1
-04:48eb ProfileHandleRight.doit2
-04:48f2 ProfileHandleRight.l2
-04:48fc ProfileHandleRight.doit3
-04:4903 ProfileHandleLeft
-04:4917 ProfileHandleLeft.jumps
-04:4926 ProfileHandleLeft.idx
-04:4930 ProfileHandleLeft.doit
-04:4933 ProfileHandleLeft.l0
-04:493d ProfileHandleLeft.doit1
-04:4944 ProfileHandleLeft.l1
-04:494e ProfileHandleLeft.doit2
-04:4955 ProfileHandleLeft.l2
-04:495f ProfileHandleLeft.doit3
-04:4966 ProfileHandleDown
-04:4977 ProfileHandleUp
-04:4988 DecrementLevel
-04:499e IncrementLevel
-04:49b4 InitSpeedCurve
-04:49c3 GetEnd
-04:49fa GetStart
-04:4a31 CheckLevelRange
-04:4a4a CheckLevelRange.notatend
-04:4a6a CheckLevelRange.notatstart
-04:4a6b RecordsHandleLeft
-04:4a89 RecordsHandleRight
-04:4aa7 RecordsHandleSelect
-04:4ab0 RenderScores
-04:4ad9 RenderScores.score_u26
-04:4ade RenderScores.wvr_u27
-04:4aeb RenderScores.wvr_u28
-04:4af8 RenderScores.wvr_u29
-04:4b05 RenderScores.wvr_u30
-04:4b12 RenderScores.wvr_u31
-04:4b1f RenderScores.wvr_u32
-04:4b2c RenderScores.wvr_u33
-04:4b39 RenderScores.wvr_u34
-04:4b43 RenderScores.level_u26
-04:4b50 RenderScores.wvr_u35
-04:4b5b RenderScores.wvr_u36
-04:4b66 RenderScores.wvr_u37
-04:4b71 RenderScores.wvr_u38
-04:4b7e RenderScores.wvr_u39
-04:4b8b RenderScores.wvr_u40
-04:4b98 RenderScores.wvr_u41
-04:4ba5 RenderScores.wvr_u42
-04:4bb7 RenderScores.name_u26
-04:4bbe RenderScores.wvr_u43
-04:4bc9 RenderScores.wvr_u44
-04:4bd4 RenderScores.wvr_u45
-04:4be6 RenderScores.nograde_u26
-04:4be9 RenderScores.wvr_u46
-04:4bf3 RenderScores.grade_u26
-04:4bf6 RenderScores.wvr_u47
-04:4bfe RenderScores.postgrade_u26
-04:4c03 RenderScores.wvr_u48
-04:4c10 RenderScores.wvr_u49
-04:4c1d RenderScores.wvr_u50
-04:4c2a RenderScores.wvr_u51
-04:4c47 RenderScores.score_u52
-04:4c4c RenderScores.wvr_u53
-04:4c59 RenderScores.wvr_u54
-04:4c66 RenderScores.wvr_u55
-04:4c73 RenderScores.wvr_u56
-04:4c80 RenderScores.wvr_u57
-04:4c8d RenderScores.wvr_u58
-04:4c9a RenderScores.wvr_u59
-04:4ca7 RenderScores.wvr_u60
-04:4cb1 RenderScores.level_u52
-04:4cbe RenderScores.wvr_u61
-04:4cc9 RenderScores.wvr_u62
-04:4cd4 RenderScores.wvr_u63
-04:4cdf RenderScores.wvr_u64
-04:4cec RenderScores.wvr_u65
-04:4cf9 RenderScores.wvr_u66
-04:4d06 RenderScores.wvr_u67
-04:4d13 RenderScores.wvr_u68
-04:4d25 RenderScores.name_u52
-04:4d2c RenderScores.wvr_u69
-04:4d37 RenderScores.wvr_u70
-04:4d42 RenderScores.wvr_u71
-04:4d54 RenderScores.nograde_u52
-04:4d57 RenderScores.wvr_u72
-04:4d61 RenderScores.grade_u52
-04:4d64 RenderScores.wvr_u73
-04:4d6c RenderScores.postgrade_u52
-04:4d71 RenderScores.wvr_u74
-04:4d7e RenderScores.wvr_u75
-04:4d8b RenderScores.wvr_u76
-04:4d98 RenderScores.wvr_u77
-04:4db5 RenderScores.score_u78
-04:4dba RenderScores.wvr_u79
-04:4dc7 RenderScores.wvr_u80
-04:4dd4 RenderScores.wvr_u81
-04:4de1 RenderScores.wvr_u82
-04:4dee RenderScores.wvr_u83
-04:4dfb RenderScores.wvr_u84
-04:4e08 RenderScores.wvr_u85
-04:4e15 RenderScores.wvr_u86
-04:4e1f RenderScores.level_u78
-04:4e2c RenderScores.wvr_u87
-04:4e37 RenderScores.wvr_u88
-04:4e42 RenderScores.wvr_u89
-04:4e4d RenderScores.wvr_u90
-04:4e5a RenderScores.wvr_u91
-04:4e67 RenderScores.wvr_u92
-04:4e74 RenderScores.wvr_u93
-04:4e81 RenderScores.wvr_u94
-04:4e93 RenderScores.name_u78
-04:4e9a RenderScores.wvr_u95
-04:4ea5 RenderScores.wvr_u96
-04:4eb0 RenderScores.wvr_u97
-04:4ec2 RenderScores.nograde_u78
-04:4ec5 RenderScores.wvr_u98
-04:4ecf RenderScores.grade_u78
-04:4ed2 RenderScores.wvr_u99
-04:4eda RenderScores.postgrade_u78
-04:4edf RenderScores.wvr_u100
-04:4eec RenderScores.wvr_u101
-04:4ef9 RenderScores.wvr_u102
-04:4f06 RenderScores.wvr_u103
-04:4f23 RenderScores.score_u104
-04:4f28 RenderScores.wvr_u105
-04:4f35 RenderScores.wvr_u106
-04:4f42 RenderScores.wvr_u107
-04:4f4f RenderScores.wvr_u108
-04:4f5c RenderScores.wvr_u109
-04:4f69 RenderScores.wvr_u110
-04:4f76 RenderScores.wvr_u111
-04:4f83 RenderScores.wvr_u112
-04:4f8d RenderScores.level_u104
-04:4f9a RenderScores.wvr_u113
-04:4fa5 RenderScores.wvr_u114
-04:4fb0 RenderScores.wvr_u115
-04:4fbb RenderScores.wvr_u116
-04:4fc8 RenderScores.wvr_u117
-04:4fd5 RenderScores.wvr_u118
-04:4fe2 RenderScores.wvr_u119
-04:4fef RenderScores.wvr_u120
-04:5001 RenderScores.name_u104
-04:5008 RenderScores.wvr_u121
-04:5013 RenderScores.wvr_u122
-04:501e RenderScores.wvr_u123
-04:5030 RenderScores.nograde_u104
-04:5033 RenderScores.wvr_u124
-04:503d RenderScores.grade_u104
-04:5040 RenderScores.wvr_u125
-04:5048 RenderScores.postgrade_u104
-04:504d RenderScores.wvr_u126
-04:505a RenderScores.wvr_u127
-04:5067 RenderScores.wvr_u128
-04:5074 RenderScores.wvr_u129
-04:5091 RenderScores.score_u130
-04:5096 RenderScores.wvr_u131
-04:50a3 RenderScores.wvr_u132
-04:50b0 RenderScores.wvr_u133
-04:50bd RenderScores.wvr_u134
-04:50ca RenderScores.wvr_u135
-04:50d7 RenderScores.wvr_u136
-04:50e4 RenderScores.wvr_u137
-04:50f1 RenderScores.wvr_u138
-04:50fb RenderScores.level_u130
-04:5108 RenderScores.wvr_u139
-04:5113 RenderScores.wvr_u140
-04:511e RenderScores.wvr_u141
-04:5129 RenderScores.wvr_u142
-04:5136 RenderScores.wvr_u143
-04:5143 RenderScores.wvr_u144
-04:5150 RenderScores.wvr_u145
-04:515d RenderScores.wvr_u146
-04:516f RenderScores.name_u130
-04:5176 RenderScores.wvr_u147
-04:5181 RenderScores.wvr_u148
-04:518c RenderScores.wvr_u149
-04:519e RenderScores.nograde_u130
-04:51a1 RenderScores.wvr_u150
-04:51ab RenderScores.grade_u130
-04:51ae RenderScores.wvr_u151
-04:51b6 RenderScores.postgrade_u130
-04:51bb RenderScores.wvr_u152
-04:51c8 RenderScores.wvr_u153
-04:51d5 RenderScores.wvr_u154
-04:51e2 RenderScores.wvr_u155
-04:51ff RenderScores.score_u156
-04:5204 RenderScores.wvr_u157
-04:5211 RenderScores.wvr_u158
-04:521e RenderScores.wvr_u159
-04:522b RenderScores.wvr_u160
-04:5238 RenderScores.wvr_u161
-04:5245 RenderScores.wvr_u162
-04:5252 RenderScores.wvr_u163
-04:525f RenderScores.wvr_u164
-04:5269 RenderScores.level_u156
-04:5276 RenderScores.wvr_u165
-04:5281 RenderScores.wvr_u166
-04:528c RenderScores.wvr_u167
-04:5297 RenderScores.wvr_u168
-04:52a4 RenderScores.wvr_u169
-04:52b1 RenderScores.wvr_u170
-04:52be RenderScores.wvr_u171
-04:52cb RenderScores.wvr_u172
-04:52dd RenderScores.name_u156
-04:52e4 RenderScores.wvr_u173
-04:52ef RenderScores.wvr_u174
-04:52fa RenderScores.wvr_u175
-04:530c RenderScores.nograde_u156
-04:530f RenderScores.wvr_u176
-04:5319 RenderScores.grade_u156
-04:531c RenderScores.wvr_u177
-04:5324 RenderScores.postgrade_u156
-04:5329 RenderScores.wvr_u178
-04:5336 RenderScores.wvr_u179
-04:5343 RenderScores.wvr_u180
-04:5350 RenderScores.wvr_u181
-04:536d RenderScores.score_u182
-04:5372 RenderScores.wvr_u183
-04:537f RenderScores.wvr_u184
-04:538c RenderScores.wvr_u185
-04:5399 RenderScores.wvr_u186
-04:53a6 RenderScores.wvr_u187
-04:53b3 RenderScores.wvr_u188
-04:53c0 RenderScores.wvr_u189
-04:53cd RenderScores.wvr_u190
-04:53d7 RenderScores.level_u182
-04:53e4 RenderScores.wvr_u191
-04:53ef RenderScores.wvr_u192
-04:53fa RenderScores.wvr_u193
-04:5405 RenderScores.wvr_u194
-04:5412 RenderScores.wvr_u195
-04:541f RenderScores.wvr_u196
-04:542c RenderScores.wvr_u197
-04:5439 RenderScores.wvr_u198
-04:544b RenderScores.name_u182
-04:5452 RenderScores.wvr_u199
-04:545d RenderScores.wvr_u200
-04:5468 RenderScores.wvr_u201
-04:547a RenderScores.nograde_u182
-04:547d RenderScores.wvr_u202
-04:5487 RenderScores.grade_u182
-04:548a RenderScores.wvr_u203
-04:5492 RenderScores.postgrade_u182
-04:5497 RenderScores.wvr_u204
-04:54a4 RenderScores.wvr_u205
-04:54b1 RenderScores.wvr_u206
-04:54be RenderScores.wvr_u207
-04:54db RenderScores.score_u208
-04:54e0 RenderScores.wvr_u209
-04:54ed RenderScores.wvr_u210
-04:54fa RenderScores.wvr_u211
-04:5507 RenderScores.wvr_u212
-04:5514 RenderScores.wvr_u213
-04:5521 RenderScores.wvr_u214
-04:552e RenderScores.wvr_u215
-04:553b RenderScores.wvr_u216
-04:5545 RenderScores.level_u208
-04:5552 RenderScores.wvr_u217
-04:555d RenderScores.wvr_u218
-04:5568 RenderScores.wvr_u219
-04:5573 RenderScores.wvr_u220
-04:5580 RenderScores.wvr_u221
-04:558d RenderScores.wvr_u222
-04:559a RenderScores.wvr_u223
-04:55a7 RenderScores.wvr_u224
-04:55b9 RenderScores.name_u208
-04:55c0 RenderScores.wvr_u225
-04:55cb RenderScores.wvr_u226
-04:55d6 RenderScores.wvr_u227
-04:55e8 RenderScores.nograde_u208
-04:55eb RenderScores.wvr_u228
-04:55f5 RenderScores.grade_u208
-04:55f8 RenderScores.wvr_u229
-04:5600 RenderScores.postgrade_u208
-04:5605 RenderScores.wvr_u230
-04:5612 RenderScores.wvr_u231
-04:561f RenderScores.wvr_u232
-04:562c RenderScores.wvr_u233
-04:5649 RenderScores.score_u234
-04:564e RenderScores.wvr_u235
-04:565b RenderScores.wvr_u236
-04:5668 RenderScores.wvr_u237
-04:5675 RenderScores.wvr_u238
-04:5682 RenderScores.wvr_u239
-04:568f RenderScores.wvr_u240
-04:569c RenderScores.wvr_u241
-04:56a9 RenderScores.wvr_u242
-04:56b3 RenderScores.level_u234
-04:56c0 RenderScores.wvr_u243
-04:56cb RenderScores.wvr_u244
-04:56d6 RenderScores.wvr_u245
-04:56e1 RenderScores.wvr_u246
-04:56ee RenderScores.wvr_u247
-04:56fb RenderScores.wvr_u248
-04:5708 RenderScores.wvr_u249
-04:5715 RenderScores.wvr_u250
-04:5727 RenderScores.name_u234
-04:572e RenderScores.wvr_u251
-04:5739 RenderScores.wvr_u252
-04:5744 RenderScores.wvr_u253
-04:5756 RenderScores.nograde_u234
-04:5759 RenderScores.wvr_u254
-04:5763 RenderScores.grade_u234
-04:5766 RenderScores.wvr_u255
-04:576e RenderScores.postgrade_u234
-04:5773 RenderScores.wvr_u256
-04:5780 RenderScores.wvr_u257
-04:578d RenderScores.wvr_u258
-04:579a RenderScores.wvr_u259
-04:57b7 RenderScores.score_u260
-04:57bc RenderScores.wvr_u261
-04:57c9 RenderScores.wvr_u262
-04:57d6 RenderScores.wvr_u263
-04:57e3 RenderScores.wvr_u264
-04:57f0 RenderScores.wvr_u265
-04:57fd RenderScores.wvr_u266
-04:580a RenderScores.wvr_u267
-04:5817 RenderScores.wvr_u268
-04:5821 RenderScores.level_u260
-04:582e RenderScores.wvr_u269
-04:5839 RenderScores.wvr_u270
-04:5844 RenderScores.wvr_u271
-04:584f RenderScores.wvr_u272
-04:585c RenderScores.wvr_u273
-04:5869 RenderScores.wvr_u274
-04:5876 RenderScores.wvr_u275
-04:5883 RenderScores.wvr_u276
-04:5895 RenderScores.name_u260
-04:589c RenderScores.wvr_u277
-04:58a7 RenderScores.wvr_u278
-04:58b2 RenderScores.wvr_u279
-04:58c4 RenderScores.nograde_u260
-04:58c7 RenderScores.wvr_u280
-04:58d1 RenderScores.grade_u260
-04:58d4 RenderScores.wvr_u281
-04:58dc RenderScores.postgrade_u260
-04:58e1 RenderScores.wvr_u282
-04:58ee RenderScores.wvr_u283
-04:58fb RenderScores.wvr_u284
-04:5908 RenderScores.wvr_u285
-04:591f sEasterM0
-04:5924 sEasterM1
-04:5929 sEasterC0
-04:5934 sEasterC1
-04:593f sEasterA0
-04:594a sEasterA1
-04:5955 sEasterS0
-04:595a sEasterS1
-04:595f sBUTTONSMode
-04:5967 sRNGMode
-04:597b sROTMode
-04:598b sDROPMode
-04:599f sCURVEMode
-04:59bb sHIGMode
-04:59c3 sDisabled
-04:59c7 sFilterMode
-04:59db sTetryButtons
-04:5a1b sTetryRNG
-04:5a5b sTetryROT
-04:5a9b sTetryDROP
-04:5adb sTetryCURVE
-04:5b1b sTetryHIG
-04:5b5b sTetrySTART
-04:5b9b sTetryFILTER
-04:5bdb sTetryEXIT
-04:5c1b sTitleScreenMainMap
-04:5ebb sTitleScreenSettingsMap
-04:5ebb sTitleScreenMainMapEnd
-04:615b sTitleScreenCreditsMap
-04:615b sTitleScreenSettingsMapEnd
-04:63fb sTitleScreenProfileMap
-04:63fb sTitleScreenCreditsMapEnd
-04:669b sTitleScreenRecordsMap
-04:669b sTitleScreenProfileMapEnd
-04:693b sTitleScreenRecordsMapEnd
+04:4484 TitleVBlankHandlerB.notselected_u17
+04:4489 TitleVBlankHandlerB.selected_u17
+04:448c TitleVBlankHandlerB.done_u17
+04:4496 TitleVBlankHandlerB.notselected_u18
+04:449b TitleVBlankHandlerB.selected_u18
+04:449e TitleVBlankHandlerB.done_u18
+04:44bc TitleVBlankHandlerB.buttons
+04:44d3 TitleVBlankHandlerB.filter
+04:44f9 TitleVBlankHandlerB.donetetry2
+04:451f TitleVBlankHandlerB.vblankSettings
+04:4529 TitleVBlankHandlerB.notselected_u19
+04:452e TitleVBlankHandlerB.selected_u19
+04:4531 TitleVBlankHandlerB.done_u19
+04:453b TitleVBlankHandlerB.notselected_u20
+04:4540 TitleVBlankHandlerB.selected_u20
+04:4543 TitleVBlankHandlerB.done_u20
+04:454d TitleVBlankHandlerB.notselected_u21
+04:4552 TitleVBlankHandlerB.selected_u21
+04:4555 TitleVBlankHandlerB.done_u21
+04:455f TitleVBlankHandlerB.notselected_u22
+04:4564 TitleVBlankHandlerB.selected_u22
+04:4567 TitleVBlankHandlerB.done_u22
+04:4571 TitleVBlankHandlerB.notselected_u23
+04:4576 TitleVBlankHandlerB.selected_u23
+04:4579 TitleVBlankHandlerB.done_u23
+04:4583 TitleVBlankHandlerB.notselected_u24
+04:4588 TitleVBlankHandlerB.selected_u24
+04:458b TitleVBlankHandlerB.done_u24
+04:4595 TitleVBlankHandlerB.notselected_u25
+04:459a TitleVBlankHandlerB.selected_u25
+04:459d TitleVBlankHandlerB.done_u25
+04:461d TitleVBlankHandlerB.disabled1
+04:4629 TitleVBlankHandlerB.start
+04:463c TitleVBlankHandlerB.donetetry1
+04:4662 TitleVBlankHandlerB.vblankRecords
+04:4697 TitleVBlankHandlerB.vblankCredits
+04:4698 MainHandleA
+04:46a6 MainHandleA.jumps
+04:46b8 MainHandleA.tosettings
+04:46bd MainHandleA.tocredits
+04:46c2 MainHandleA.toprofile
+04:46c7 MainHandleA.torecords
+04:46cc MainHandleUp
+04:46dd MainHandleDown
+04:46ee SettingsHandleA
+04:46fb ProfileHandleB
+04:46fb SettingsHandleB
+04:4700 SettingsHandleDown
+04:4711 SettingsHandleUp
+04:4722 SettingsHandleLeft
+04:4733 SettingsHandleLeft.jumps
+04:4748 SettingsHandleLeft.rng
+04:475f SettingsHandleLeft.rot
+04:4776 SettingsHandleLeft.drop
+04:478d SettingsHandleLeft.curve
+04:47aa SettingsHandleLeft.hig
+04:47c1 SettingsHandleRight
+04:47d2 SettingsHandleRight.jumps
+04:47e7 SettingsHandleRight.rng
+04:47fe SettingsHandleRight.rot
+04:4815 SettingsHandleRight.drop
+04:482c SettingsHandleRight.curve
+04:4849 SettingsHandleRight.hig
+04:4860 ProfileHandleA
+04:4874 ProfileHandleRight
+04:4888 ProfileHandleRight.jumps
+04:48a0 ProfileHandleRight.idx
+04:48a9 ProfileHandleRight.doit
+04:48ac ProfileHandleRight.l0
+04:48b6 ProfileHandleRight.doit1
+04:48bd ProfileHandleRight.l1
+04:48c7 ProfileHandleRight.doit2
+04:48ce ProfileHandleRight.l2
+04:48d8 ProfileHandleRight.doit3
+04:48df ProfileHandleRight.buttons
+04:48f6 ProfileHandleRight.filter
+04:490a ProfileHandleLeft
+04:491e ProfileHandleLeft.jumps
+04:4936 ProfileHandleLeft.idx
+04:4940 ProfileHandleLeft.doit
+04:4943 ProfileHandleLeft.l0
+04:494d ProfileHandleLeft.doit1
+04:4954 ProfileHandleLeft.l1
+04:495e ProfileHandleLeft.doit2
+04:4965 ProfileHandleLeft.l2
+04:496f ProfileHandleLeft.doit3
+04:4976 ProfileHandleLeft.buttons
+04:498d ProfileHandleLeft.filter
+04:49a1 ProfileHandleDown
+04:49b2 ProfileHandleUp
+04:49c3 DecrementLevel
+04:49d9 IncrementLevel
+04:49ef InitSpeedCurve
+04:49fe GetEnd
+04:4a35 GetStart
+04:4a6c CheckLevelRange
+04:4a85 CheckLevelRange.notatend
+04:4aa5 CheckLevelRange.notatstart
+04:4aa6 RecordsHandleLeft
+04:4ac4 RecordsHandleRight
+04:4ae2 RecordsHandleSelect
+04:4aeb RenderScores
+04:4b14 RenderScores.score_u26
+04:4b19 RenderScores.wvr_u27
+04:4b26 RenderScores.wvr_u28
+04:4b33 RenderScores.wvr_u29
+04:4b40 RenderScores.wvr_u30
+04:4b4d RenderScores.wvr_u31
+04:4b5a RenderScores.wvr_u32
+04:4b67 RenderScores.wvr_u33
+04:4b74 RenderScores.wvr_u34
+04:4b7e RenderScores.level_u26
+04:4b8b RenderScores.wvr_u35
+04:4b96 RenderScores.wvr_u36
+04:4ba1 RenderScores.wvr_u37
+04:4bac RenderScores.wvr_u38
+04:4bb9 RenderScores.wvr_u39
+04:4bc6 RenderScores.wvr_u40
+04:4bd3 RenderScores.wvr_u41
+04:4be0 RenderScores.wvr_u42
+04:4bf2 RenderScores.name_u26
+04:4bf9 RenderScores.wvr_u43
+04:4c04 RenderScores.wvr_u44
+04:4c0f RenderScores.wvr_u45
+04:4c21 RenderScores.nograde_u26
+04:4c24 RenderScores.wvr_u46
+04:4c2e RenderScores.grade_u26
+04:4c31 RenderScores.wvr_u47
+04:4c39 RenderScores.postgrade_u26
+04:4c3e RenderScores.wvr_u48
+04:4c4b RenderScores.wvr_u49
+04:4c58 RenderScores.wvr_u50
+04:4c65 RenderScores.wvr_u51
+04:4c82 RenderScores.score_u52
+04:4c87 RenderScores.wvr_u53
+04:4c94 RenderScores.wvr_u54
+04:4ca1 RenderScores.wvr_u55
+04:4cae RenderScores.wvr_u56
+04:4cbb RenderScores.wvr_u57
+04:4cc8 RenderScores.wvr_u58
+04:4cd5 RenderScores.wvr_u59
+04:4ce2 RenderScores.wvr_u60
+04:4cec RenderScores.level_u52
+04:4cf9 RenderScores.wvr_u61
+04:4d04 RenderScores.wvr_u62
+04:4d0f RenderScores.wvr_u63
+04:4d1a RenderScores.wvr_u64
+04:4d27 RenderScores.wvr_u65
+04:4d34 RenderScores.wvr_u66
+04:4d41 RenderScores.wvr_u67
+04:4d4e RenderScores.wvr_u68
+04:4d60 RenderScores.name_u52
+04:4d67 RenderScores.wvr_u69
+04:4d72 RenderScores.wvr_u70
+04:4d7d RenderScores.wvr_u71
+04:4d8f RenderScores.nograde_u52
+04:4d92 RenderScores.wvr_u72
+04:4d9c RenderScores.grade_u52
+04:4d9f RenderScores.wvr_u73
+04:4da7 RenderScores.postgrade_u52
+04:4dac RenderScores.wvr_u74
+04:4db9 RenderScores.wvr_u75
+04:4dc6 RenderScores.wvr_u76
+04:4dd3 RenderScores.wvr_u77
+04:4df0 RenderScores.score_u78
+04:4df5 RenderScores.wvr_u79
+04:4e02 RenderScores.wvr_u80
+04:4e0f RenderScores.wvr_u81
+04:4e1c RenderScores.wvr_u82
+04:4e29 RenderScores.wvr_u83
+04:4e36 RenderScores.wvr_u84
+04:4e43 RenderScores.wvr_u85
+04:4e50 RenderScores.wvr_u86
+04:4e5a RenderScores.level_u78
+04:4e67 RenderScores.wvr_u87
+04:4e72 RenderScores.wvr_u88
+04:4e7d RenderScores.wvr_u89
+04:4e88 RenderScores.wvr_u90
+04:4e95 RenderScores.wvr_u91
+04:4ea2 RenderScores.wvr_u92
+04:4eaf RenderScores.wvr_u93
+04:4ebc RenderScores.wvr_u94
+04:4ece RenderScores.name_u78
+04:4ed5 RenderScores.wvr_u95
+04:4ee0 RenderScores.wvr_u96
+04:4eeb RenderScores.wvr_u97
+04:4efd RenderScores.nograde_u78
+04:4f00 RenderScores.wvr_u98
+04:4f0a RenderScores.grade_u78
+04:4f0d RenderScores.wvr_u99
+04:4f15 RenderScores.postgrade_u78
+04:4f1a RenderScores.wvr_u100
+04:4f27 RenderScores.wvr_u101
+04:4f34 RenderScores.wvr_u102
+04:4f41 RenderScores.wvr_u103
+04:4f5e RenderScores.score_u104
+04:4f63 RenderScores.wvr_u105
+04:4f70 RenderScores.wvr_u106
+04:4f7d RenderScores.wvr_u107
+04:4f8a RenderScores.wvr_u108
+04:4f97 RenderScores.wvr_u109
+04:4fa4 RenderScores.wvr_u110
+04:4fb1 RenderScores.wvr_u111
+04:4fbe RenderScores.wvr_u112
+04:4fc8 RenderScores.level_u104
+04:4fd5 RenderScores.wvr_u113
+04:4fe0 RenderScores.wvr_u114
+04:4feb RenderScores.wvr_u115
+04:4ff6 RenderScores.wvr_u116
+04:5003 RenderScores.wvr_u117
+04:5010 RenderScores.wvr_u118
+04:501d RenderScores.wvr_u119
+04:502a RenderScores.wvr_u120
+04:503c RenderScores.name_u104
+04:5043 RenderScores.wvr_u121
+04:504e RenderScores.wvr_u122
+04:5059 RenderScores.wvr_u123
+04:506b RenderScores.nograde_u104
+04:506e RenderScores.wvr_u124
+04:5078 RenderScores.grade_u104
+04:507b RenderScores.wvr_u125
+04:5083 RenderScores.postgrade_u104
+04:5088 RenderScores.wvr_u126
+04:5095 RenderScores.wvr_u127
+04:50a2 RenderScores.wvr_u128
+04:50af RenderScores.wvr_u129
+04:50cc RenderScores.score_u130
+04:50d1 RenderScores.wvr_u131
+04:50de RenderScores.wvr_u132
+04:50eb RenderScores.wvr_u133
+04:50f8 RenderScores.wvr_u134
+04:5105 RenderScores.wvr_u135
+04:5112 RenderScores.wvr_u136
+04:511f RenderScores.wvr_u137
+04:512c RenderScores.wvr_u138
+04:5136 RenderScores.level_u130
+04:5143 RenderScores.wvr_u139
+04:514e RenderScores.wvr_u140
+04:5159 RenderScores.wvr_u141
+04:5164 RenderScores.wvr_u142
+04:5171 RenderScores.wvr_u143
+04:517e RenderScores.wvr_u144
+04:518b RenderScores.wvr_u145
+04:5198 RenderScores.wvr_u146
+04:51aa RenderScores.name_u130
+04:51b1 RenderScores.wvr_u147
+04:51bc RenderScores.wvr_u148
+04:51c7 RenderScores.wvr_u149
+04:51d9 RenderScores.nograde_u130
+04:51dc RenderScores.wvr_u150
+04:51e6 RenderScores.grade_u130
+04:51e9 RenderScores.wvr_u151
+04:51f1 RenderScores.postgrade_u130
+04:51f6 RenderScores.wvr_u152
+04:5203 RenderScores.wvr_u153
+04:5210 RenderScores.wvr_u154
+04:521d RenderScores.wvr_u155
+04:523a RenderScores.score_u156
+04:523f RenderScores.wvr_u157
+04:524c RenderScores.wvr_u158
+04:5259 RenderScores.wvr_u159
+04:5266 RenderScores.wvr_u160
+04:5273 RenderScores.wvr_u161
+04:5280 RenderScores.wvr_u162
+04:528d RenderScores.wvr_u163
+04:529a RenderScores.wvr_u164
+04:52a4 RenderScores.level_u156
+04:52b1 RenderScores.wvr_u165
+04:52bc RenderScores.wvr_u166
+04:52c7 RenderScores.wvr_u167
+04:52d2 RenderScores.wvr_u168
+04:52df RenderScores.wvr_u169
+04:52ec RenderScores.wvr_u170
+04:52f9 RenderScores.wvr_u171
+04:5306 RenderScores.wvr_u172
+04:5318 RenderScores.name_u156
+04:531f RenderScores.wvr_u173
+04:532a RenderScores.wvr_u174
+04:5335 RenderScores.wvr_u175
+04:5347 RenderScores.nograde_u156
+04:534a RenderScores.wvr_u176
+04:5354 RenderScores.grade_u156
+04:5357 RenderScores.wvr_u177
+04:535f RenderScores.postgrade_u156
+04:5364 RenderScores.wvr_u178
+04:5371 RenderScores.wvr_u179
+04:537e RenderScores.wvr_u180
+04:538b RenderScores.wvr_u181
+04:53a8 RenderScores.score_u182
+04:53ad RenderScores.wvr_u183
+04:53ba RenderScores.wvr_u184
+04:53c7 RenderScores.wvr_u185
+04:53d4 RenderScores.wvr_u186
+04:53e1 RenderScores.wvr_u187
+04:53ee RenderScores.wvr_u188
+04:53fb RenderScores.wvr_u189
+04:5408 RenderScores.wvr_u190
+04:5412 RenderScores.level_u182
+04:541f RenderScores.wvr_u191
+04:542a RenderScores.wvr_u192
+04:5435 RenderScores.wvr_u193
+04:5440 RenderScores.wvr_u194
+04:544d RenderScores.wvr_u195
+04:545a RenderScores.wvr_u196
+04:5467 RenderScores.wvr_u197
+04:5474 RenderScores.wvr_u198
+04:5486 RenderScores.name_u182
+04:548d RenderScores.wvr_u199
+04:5498 RenderScores.wvr_u200
+04:54a3 RenderScores.wvr_u201
+04:54b5 RenderScores.nograde_u182
+04:54b8 RenderScores.wvr_u202
+04:54c2 RenderScores.grade_u182
+04:54c5 RenderScores.wvr_u203
+04:54cd RenderScores.postgrade_u182
+04:54d2 RenderScores.wvr_u204
+04:54df RenderScores.wvr_u205
+04:54ec RenderScores.wvr_u206
+04:54f9 RenderScores.wvr_u207
+04:5516 RenderScores.score_u208
+04:551b RenderScores.wvr_u209
+04:5528 RenderScores.wvr_u210
+04:5535 RenderScores.wvr_u211
+04:5542 RenderScores.wvr_u212
+04:554f RenderScores.wvr_u213
+04:555c RenderScores.wvr_u214
+04:5569 RenderScores.wvr_u215
+04:5576 RenderScores.wvr_u216
+04:5580 RenderScores.level_u208
+04:558d RenderScores.wvr_u217
+04:5598 RenderScores.wvr_u218
+04:55a3 RenderScores.wvr_u219
+04:55ae RenderScores.wvr_u220
+04:55bb RenderScores.wvr_u221
+04:55c8 RenderScores.wvr_u222
+04:55d5 RenderScores.wvr_u223
+04:55e2 RenderScores.wvr_u224
+04:55f4 RenderScores.name_u208
+04:55fb RenderScores.wvr_u225
+04:5606 RenderScores.wvr_u226
+04:5611 RenderScores.wvr_u227
+04:5623 RenderScores.nograde_u208
+04:5626 RenderScores.wvr_u228
+04:5630 RenderScores.grade_u208
+04:5633 RenderScores.wvr_u229
+04:563b RenderScores.postgrade_u208
+04:5640 RenderScores.wvr_u230
+04:564d RenderScores.wvr_u231
+04:565a RenderScores.wvr_u232
+04:5667 RenderScores.wvr_u233
+04:5684 RenderScores.score_u234
+04:5689 RenderScores.wvr_u235
+04:5696 RenderScores.wvr_u236
+04:56a3 RenderScores.wvr_u237
+04:56b0 RenderScores.wvr_u238
+04:56bd RenderScores.wvr_u239
+04:56ca RenderScores.wvr_u240
+04:56d7 RenderScores.wvr_u241
+04:56e4 RenderScores.wvr_u242
+04:56ee RenderScores.level_u234
+04:56fb RenderScores.wvr_u243
+04:5706 RenderScores.wvr_u244
+04:5711 RenderScores.wvr_u245
+04:571c RenderScores.wvr_u246
+04:5729 RenderScores.wvr_u247
+04:5736 RenderScores.wvr_u248
+04:5743 RenderScores.wvr_u249
+04:5750 RenderScores.wvr_u250
+04:5762 RenderScores.name_u234
+04:5769 RenderScores.wvr_u251
+04:5774 RenderScores.wvr_u252
+04:577f RenderScores.wvr_u253
+04:5791 RenderScores.nograde_u234
+04:5794 RenderScores.wvr_u254
+04:579e RenderScores.grade_u234
+04:57a1 RenderScores.wvr_u255
+04:57a9 RenderScores.postgrade_u234
+04:57ae RenderScores.wvr_u256
+04:57bb RenderScores.wvr_u257
+04:57c8 RenderScores.wvr_u258
+04:57d5 RenderScores.wvr_u259
+04:57f2 RenderScores.score_u260
+04:57f7 RenderScores.wvr_u261
+04:5804 RenderScores.wvr_u262
+04:5811 RenderScores.wvr_u263
+04:581e RenderScores.wvr_u264
+04:582b RenderScores.wvr_u265
+04:5838 RenderScores.wvr_u266
+04:5845 RenderScores.wvr_u267
+04:5852 RenderScores.wvr_u268
+04:585c RenderScores.level_u260
+04:5869 RenderScores.wvr_u269
+04:5874 RenderScores.wvr_u270
+04:587f RenderScores.wvr_u271
+04:588a RenderScores.wvr_u272
+04:5897 RenderScores.wvr_u273
+04:58a4 RenderScores.wvr_u274
+04:58b1 RenderScores.wvr_u275
+04:58be RenderScores.wvr_u276
+04:58d0 RenderScores.name_u260
+04:58d7 RenderScores.wvr_u277
+04:58e2 RenderScores.wvr_u278
+04:58ed RenderScores.wvr_u279
+04:58ff RenderScores.nograde_u260
+04:5902 RenderScores.wvr_u280
+04:590c RenderScores.grade_u260
+04:590f RenderScores.wvr_u281
+04:5917 RenderScores.postgrade_u260
+04:591c RenderScores.wvr_u282
+04:5929 RenderScores.wvr_u283
+04:5936 RenderScores.wvr_u284
+04:5943 RenderScores.wvr_u285
+04:595a sEasterM0
+04:595f sEasterM1
+04:5964 sEasterC0
+04:596f sEasterC1
+04:597a sEasterA0
+04:5985 sEasterA1
+04:5990 sEasterS0
+04:5995 sEasterS1
+04:599a sBUTTONSMode
+04:59a2 sRNGMode
+04:59b6 sROTMode
+04:59c6 sDROPMode
+04:59da sCURVEMode
+04:59f6 sHIGMode
+04:59fe sDisabled
+04:5a02 sFilterMode
+04:5a16 sTetryRNG
+04:5a56 sTetryROT
+04:5a96 sTetryDROP
+04:5ad6 sTetryCURVE
+04:5b16 sTetryHIG
+04:5b56 sTetrySTART
+04:5b96 sTetryEXITSettings
+04:5bd6 sTetryProfileNumber
+04:5c16 sTetryProfileInitial1
+04:5c56 sTetryProfileInitial2
+04:5c96 sTetryProfileInitial3
+04:5cd6 sTetryButtons
+04:5d16 sTetryFILTER
+04:5d56 sTetryReset
+04:5d96 sTetryEXITProfile
+04:5dd6 sTitleScreenMainMap
+04:6076 sTitleScreenSettingsMap
+04:6076 sTitleScreenMainMapEnd
+04:6316 sTitleScreenCreditsMap
+04:6316 sTitleScreenSettingsMapEnd
+04:65b6 sTitleScreenProfileMap
+04:65b6 sTitleScreenCreditsMapEnd
+04:6856 sTitleScreenRecordsMap
+04:6856 sTitleScreenProfileMapEnd
+04:6af6 sTitleScreenRecordsMapEnd
05:4008 FieldInit
05:403e FieldClear
05:4049 ToBackupField
@@ -1804,35 +1816,35 @@
05:61ce GamePlayEventLoopHandlerB.predone
05:61e4 GamePlayEventLoopHandlerB.staysmall
05:61fa GamePlayEventLoopHandlerB.drawStaticInfo
-05:622b DoHold
-05:622f DoHold.checkIRSA
-05:6235 DoHold.ldb3
-05:6240 DoHold.lda3
-05:6249 DoHold.cp3
-05:6257 DoHold.checkIRSB
-05:625d DoHold.lda4
-05:6268 DoHold.ldb4
-05:6271 DoHold.cp4
-05:627f DoHold.noRotation
-05:628a DoHold.doHoldOperation
-05:6295 sLeftDasSlam
-05:629b sRightDasSlam
-05:62a1 sLeady
-05:62ab sGo
-05:62b5 sPause
-05:62dd sKill
-05:637d sYouAreGM
-05:63e1 sFinalChallenge
-05:64a9 sPieceXOffsets
-05:64c5 sPieceYOffsets
-05:64e1 sPieceFastRotationStates
-05:6551 sPieceRotationStates
-05:65c1 sTGM3Bag
-05:65e4 sTGM3Droughts
-05:65eb sGameplayTileMap
-05:688b sGameplayUngradedTileMap
-05:688b sGameplayTileMapEnd
-05:6b2b sGameplayUngradedTileMapEnd
+05:622e DoHold
+05:6232 DoHold.checkIRSA
+05:6238 DoHold.ldb3
+05:6243 DoHold.lda3
+05:624c DoHold.cp3
+05:625a DoHold.checkIRSB
+05:6260 DoHold.lda4
+05:626b DoHold.ldb4
+05:6274 DoHold.cp4
+05:6282 DoHold.noRotation
+05:628d DoHold.doHoldOperation
+05:6298 sLeftDasSlam
+05:629e sRightDasSlam
+05:62a4 sLeady
+05:62ae sGo
+05:62b8 sPause
+05:62e0 sKill
+05:6380 sYouAreGM
+05:63e4 sFinalChallenge
+05:64ac sPieceXOffsets
+05:64c8 sPieceYOffsets
+05:64e4 sPieceFastRotationStates
+05:6554 sPieceRotationStates
+05:65c4 sTGM3Bag
+05:65e7 sTGM3Droughts
+05:65ee sGameplayTileMap
+05:688e sGameplayUngradedTileMap
+05:688e sGameplayTileMapEnd
+05:6b2e sGameplayUngradedTileMapEnd
06:4008 BigFieldInit
06:4049 BigFieldClear
06:40ef GoSmall
@@ -2570,33 +2582,33 @@
06:6480 GamePlayBigEventLoopHandlerB.preRollMode
06:64af GamePlayBigEventLoopHandlerB.predone
06:64d1 GamePlayBigEventLoopHandlerB.drawStaticInfo
-06:6502 BigDoHold
-06:6506 BigDoHold.checkIRSA
-06:650c BigDoHold.ldb3
-06:6517 BigDoHold.lda3
-06:6520 BigDoHold.cp3
-06:652e BigDoHold.checkIRSB
-06:6534 BigDoHold.lda4
-06:653f BigDoHold.ldb4
-06:6548 BigDoHold.cp4
-06:6556 BigDoHold.noRotation
-06:6561 BigDoHold.doHoldOperation
-06:656c sBigLeftDasSlam
-06:6572 sBigRightDasSlam
-06:6578 sBigLeady
-06:6582 sBigGo
-06:658c sBigPause
-06:65b4 sBigKill
-06:6654 sBigYouAreGM
-06:66b8 sBigFinalChallenge
-06:6780 sBigPieceXOffsets
-06:679c sBigPieceYOffsets
-06:67b8 sBigPieceFastRotationStates
-06:6828 sBigPieceRotationStates
-06:6898 sBigGameplayTileMap
-06:6b38 sBigGameplayUngradedTileMap
-06:6b38 sBigGameplayTileMapEnd
-06:6dd8 sBigGameplayUngradedTileMapEnd
+06:6505 BigDoHold
+06:6509 BigDoHold.checkIRSA
+06:650f BigDoHold.ldb3
+06:651a BigDoHold.lda3
+06:6523 BigDoHold.cp3
+06:6531 BigDoHold.checkIRSB
+06:6537 BigDoHold.lda4
+06:6542 BigDoHold.ldb4
+06:654b BigDoHold.cp4
+06:6559 BigDoHold.noRotation
+06:6564 BigDoHold.doHoldOperation
+06:656f sBigLeftDasSlam
+06:6575 sBigRightDasSlam
+06:657b sBigLeady
+06:6585 sBigGo
+06:658f sBigPause
+06:65b7 sBigKill
+06:6657 sBigYouAreGM
+06:66bb sBigFinalChallenge
+06:6783 sBigPieceXOffsets
+06:679f sBigPieceYOffsets
+06:67bb sBigPieceFastRotationStates
+06:682b sBigPieceRotationStates
+06:689b sBigGameplayTileMap
+06:6b3b sBigGameplayUngradedTileMap
+06:6b3b sBigGameplayTileMapEnd
+06:6ddb sBigGameplayUngradedTileMapEnd
00:a000 rCheck
00:a006 rLastProfile
00:a007 rProfileName
@@ -2771,98 +2783,99 @@
00:c898 wSPRTimeCS1
00:c89c wSPRTimeCS2
00:c8a0 wScratch
-00:c8a2 wField
-00:c992 wBackupField
-00:ca82 wPreShadowField
-00:ca9e wShadowField
-00:cc0a wWideField
-00:cc41 wWideBlittedField
-00:cd1d wDelayState
-00:cd1e wLeftSlamTimer
-00:cd1f wRightSlamTimer
-00:cd20 wMovementLastFrame
-00:cd21 wReturnToSmall
-00:cd22 wTargetHSTable
-00:cd24 wWorkingIdx
-00:cd25 wWorkingPtr
-00:cd26 wWorkingCopy
-00:ce86 wInsertTarget
-00:ce87 wStack
-00:cec8 wStackEnd
-00:cec8 wTGM3Bag
-00:ceeb wTGM3Droughts
-00:cef2 wTGM3GeneratedIdx
-00:cef3 wTGM3WorstDroughtIdx
-00:cef4 wBoneActivationLevel
-00:cef6 wInvisActivationLevel
-00:cef8 wKillScreenActivationLevel
-00:cefa wKillScreenActivationLevelBCD
-00:cefc wLastLockLevel
-00:cefe wStaffRollDuration
-00:cf00 wBigStaffRoll
-00:cf01 wBonesActive
-00:cf02 wInvisActive
-00:cf03 wKillScreenActive
-00:cf04 wLockLevel
-00:cf05 wShouldGoStaffRoll
-00:cf06 wNoMoreLocks
-00:cf07 wSkippedSectionsBCD
-00:cf08 wDecayRate
-00:cf09 wGradePoints
-00:cf0a wInternalGrade
-00:cf0b wDisplayedGrade
-00:cf0c wEffectTimer
-00:cf0d wRankingDisqualified
-00:cf0e wDecayCounter
-00:cf0f wGradeGauge
-00:cf10 wSMult
-00:cf11 wDMult
-00:cf12 wTMult
-00:cf13 wSRate
-00:cf14 wDRate
-00:cf15 wTRate
-00:cf16 wQRate
-00:cf17 wTGM1level300RequirementMet
-00:cf18 wTGM1level500RequirementMet
-00:cf19 wTGM1level999RequirementMet
-00:cf1a wProgress0B1
-00:cf1b wProgress0B2
-00:cf1c wProgress1B1
-00:cf1d wProgress1B2
-00:cf1e wProgress2B1
-00:cf1f wProgress2B2
-00:cf20 wProgress3B1
-00:cf21 wProgress3B2
-00:cf22 wProgress4B1
-00:cf23 wProgress4B2
-00:cf24 wSwapABState
-00:cf25 wRNGModeState
-00:cf26 wRotModeState
-00:cf27 wDropModeState
-00:cf28 wSpeedCurveState
-00:cf29 wAlways20GState
-00:cf2a wInitialA
-00:cf2b wInitialB
-00:cf2c wInitialC
-00:cf2d wSelected
-00:cf2e wTitleMode
-00:cf2f wProfileName
-00:cf32 wDisplayingScoreMode
-00:cf33 wScoreFlipTimer
-00:cf34 wMinutes
-00:cf35 wSeconds
-00:cf36 wFrames
-00:cf37 wCountDown
-00:cf39 wCountDownZero
-00:cf3a wBankBackup
-00:cf3e wRollLine
-00:cf3f wInStaffRoll
-00:cf40 wBigModeTransfered
-00:cf41 wGameOverIgnoreInput
-00:cf42 wOuterReps
-00:cf43 wInnerReps
-00:cf44 wTitlePal
-00:cf45 wTarget
+00:c8a2 wSpritePal
+00:c8a3 wField
+00:c993 wBackupField
+00:ca83 wPreShadowField
+00:ca9f wShadowField
+00:cc0b wWideField
+00:cc42 wWideBlittedField
+00:cd1e wDelayState
+00:cd1f wLeftSlamTimer
+00:cd20 wRightSlamTimer
+00:cd21 wMovementLastFrame
+00:cd22 wReturnToSmall
+00:cd23 wTargetHSTable
+00:cd25 wWorkingIdx
+00:cd26 wWorkingPtr
+00:cd27 wWorkingCopy
+00:ce87 wInsertTarget
+00:ce88 wStack
+00:cec9 wStackEnd
+00:cec9 wTGM3Bag
+00:ceec wTGM3Droughts
+00:cef3 wTGM3GeneratedIdx
+00:cef4 wTGM3WorstDroughtIdx
+00:cef5 wBoneActivationLevel
+00:cef7 wInvisActivationLevel
+00:cef9 wKillScreenActivationLevel
+00:cefb wKillScreenActivationLevelBCD
+00:cefd wLastLockLevel
+00:ceff wStaffRollDuration
+00:cf01 wBigStaffRoll
+00:cf02 wBonesActive
+00:cf03 wInvisActive
+00:cf04 wKillScreenActive
+00:cf05 wLockLevel
+00:cf06 wShouldGoStaffRoll
+00:cf07 wNoMoreLocks
+00:cf08 wSkippedSectionsBCD
+00:cf09 wDecayRate
+00:cf0a wGradePoints
+00:cf0b wInternalGrade
+00:cf0c wDisplayedGrade
+00:cf0d wEffectTimer
+00:cf0e wRankingDisqualified
+00:cf0f wDecayCounter
+00:cf10 wGradeGauge
+00:cf11 wSMult
+00:cf12 wDMult
+00:cf13 wTMult
+00:cf14 wSRate
+00:cf15 wDRate
+00:cf16 wTRate
+00:cf17 wQRate
+00:cf18 wTGM1level300RequirementMet
+00:cf19 wTGM1level500RequirementMet
+00:cf1a wTGM1level999RequirementMet
+00:cf1b wProgress0B1
+00:cf1c wProgress0B2
+00:cf1d wProgress1B1
+00:cf1e wProgress1B2
+00:cf1f wProgress2B1
+00:cf20 wProgress2B2
+00:cf21 wProgress3B1
+00:cf22 wProgress3B2
+00:cf23 wProgress4B1
+00:cf24 wProgress4B2
+00:cf25 wSwapABState
+00:cf26 wRNGModeState
+00:cf27 wRotModeState
+00:cf28 wDropModeState
+00:cf29 wSpeedCurveState
+00:cf2a wAlways20GState
+00:cf2b wInitialA
+00:cf2c wInitialB
+00:cf2d wInitialC
+00:cf2e wSelected
+00:cf2f wTitleMode
+00:cf30 wProfileName
+00:cf33 wDisplayingScoreMode
+00:cf34 wScoreFlipTimer
+00:cf35 wMinutes
+00:cf36 wSeconds
+00:cf37 wFrames
+00:cf38 wCountDown
+00:cf3a wCountDownZero
+00:cf3b wBankBackup
+00:cf3f wRollLine
+00:cf40 wInStaffRoll
+00:cf41 wBigModeTransfered
+00:cf42 wGameOverIgnoreInput
+00:cf43 wOuterReps
+00:cf44 wInnerReps
+00:cf45 wTitlePal
+00:cf46 wTarget
00:ff80 hCurrentDAS
00:ff81 hCurrentARE
00:ff82 hCurrentLineARE
diff --git a/src/include/globals.asm b/src/include/globals.asm
index 4c70809..3bf3026 100644
--- a/src/include/globals.asm
+++ b/src/include/globals.asm
@@ -439,26 +439,29 @@ DEF TITLE_MAIN_SEL_RECORDS EQU 4
DEF TITLE_MAIN_SEL_CREDITS EQU 5
DEF TITLE_SETTINGS_OPTION_BASE EQU $9840
-DEF TITLE_SETTINGS_OPTIONS EQU 9
-DEF TITLE_SETTINGS_BUTTONS EQU $984F
-DEF TITLE_SETTINGS_RNG EQU $986F
-DEF TITLE_SETTINGS_ROT EQU $988F
-DEF TITLE_SETTINGS_DROP EQU $98AF
-DEF TITLE_SETTINGS_SCURVE EQU $98CF
-DEF TITLE_SETTINGS_HIG EQU $98EF
-DEF TITLE_SETTINGS_START EQU $990F
-DEF TITLE_SETTINGS_FILTER EQU $992F
+DEF TITLE_SETTINGS_OPTIONS EQU 7
+DEF TITLE_SETTINGS_RNG EQU $984F
+DEF TITLE_SETTINGS_ROT EQU $986F
+DEF TITLE_SETTINGS_DROP EQU $988F
+DEF TITLE_SETTINGS_SCURVE EQU $98AF
+DEF TITLE_SETTINGS_HIG EQU $98CF
+DEF TITLE_SETTINGS_START EQU $98EF
DEF TITLE_SETTINGS_TETRY EQU $99C0
-DEF TITLE_SETTINGS_SEL_BACK EQU 8
+DEF TITLE_SETTINGS_SEL_BACK EQU 6
-DEF TITLE_PROFILE_OPTION_BASE EQU $9842
-DEF TITLE_PROFILE_OPTIONS EQU 6
+DEF TITLE_PROFILE_OPTION_BASE EQU $9840
+DEF TITLE_PROFILE_OPTIONS EQU 8
DEF TITLE_PROFILE_INDEX EQU $984F
DEF TITLE_PROFILE_NAME_0 EQU $986F
DEF TITLE_PROFILE_NAME_1 EQU $988F
DEF TITLE_PROFILE_NAME_2 EQU $98AF
-DEF TITLE_PROFILE_SEL_RESET EQU 4
-DEF TITLE_PROFILE_SEL_BACK EQU 5
+DEF TITLE_PROFILE_BUTTONS EQU $98CF
+DEF TITLE_PROFILE_FILTER EQU $98EF
+DEF TITLE_PROFILE_RESET EQU $990F
+DEF TITLE_PROFILE_BACK EQU $992F
+DEF TITLE_PROFILE_TETRY EQU $99C0
+DEF TITLE_PROFILE_SEL_RESET EQU 6
+DEF TITLE_PROFILE_SEL_BACK EQU 7
DEF TITLE_RECORDS_MODE EQU $9848
DEF TITLE_RECORDS_SCORE_BASE EQU $98A2
diff --git a/src/res/other_data.inc b/src/res/other_data.inc
index 4db9b3e..f155002 100644
--- a/src/res/other_data.inc
+++ b/src/res/other_data.inc
@@ -1065,6 +1065,15 @@ sTitleTiles::
DB $03,$03,$0F,$0F,$3F,$3F,$FF,$FF
DB $3F,$3F,$0F,$0F,$03,$03,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$CC,$CC,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$00,$00
+ DB $19,$19,$3F,$3F,$66,$66,$66,$66
+ DB $FF,$FF,$FF,$FF,$79,$79,$30,$30
+ DB $00,$00,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$00,$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,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
@@ -1075,45 +1084,36 @@ sTitleTiles::
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
+ DB $80,$80,$80,$80,$00,$00,$00,$00
+ DB $80,$80,$80,$80,$00,$00,$00,$00
+ DB $80,$80,$80,$80,$03,$03,$0F,$0C
+ DB $9F,$9F,$90,$9F,$10,$1F,$10,$1F
+ DB $00,$00,$00,$00,$00,$00,$00,$00
+ DB $1E,$1E,$FE,$FE,$E0,$E0,$00,$00
+ DB $1C,$1C,$3E,$22,$FF,$E3,$FF,$22
+ DB $E7,$FB,$26,$FB,$3E,$E3,$1C,$FF
+ DB $90,$9F,$90,$9F,$10,$1F,$10,$1F
+ DB $9F,$9F,$80,$80,$00,$00,$00,$00
+ DB $80,$80,$80,$80,$00,$00,$00,$00
+ DB $80,$80,$80,$80,$00,$00,$00,$00
+ DB $00,$FF,$00,$FF,$07,$FF,$07,$FC
+ DB $F7,$FC,$13,$1E,$11,$1F,$10,$1F
+ DB $10,$1F,$10,$1F,$10,$1F,$1F,$1F
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
+ DB $1E,$1E,$1F,$1F,$01,$01,$00,$00
+ DB $0E,$0E,$1F,$11,$FF,$F1,$FF,$11
+ DB $F3,$FD,$13,$FD,$1F,$F1,$0E,$FF
DB $00,$00,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$C0,$C0,$C0,$C0,$00,$00
+ DB $00,$00,$00,$00,$FF,$FF,$FF,$0D
+ DB $FF,$F1,$1F,$F1,$1F,$F1,$1F,$F1
+ DB $00,$FF,$00,$FF,$E0,$FF,$E0,$3F
+ DB $FF,$3F,$DF,$71,$9F,$F1,$1F,$F1
+ DB $1F,$F1,$1F,$F3,$1C,$FC,$F0,$F0
DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$03,$03,$03,$03,$00,$00
- DB $00,$00,$00,$00,$0F,$0F,$3F,$30
- DB $7F,$7F,$40,$7F,$40,$7F,$40,$7F
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $78,$78,$F8,$F8,$80,$80,$00,$00
- DB $70,$70,$F8,$88,$FF,$8F,$FF,$88
- DB $9F,$EF,$98,$EF,$F8,$8F,$70,$FF
- DB $40,$7F,$40,$7F,$40,$7F,$40,$7F
- DB $7F,$7F,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$FF,$00,$FF,$1F,$FF,$1F,$F0
- DB $DF,$F0,$4F,$79,$46,$7F,$40,$7F
- DB $40,$7F,$40,$7F,$40,$7F,$7F,$7F
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $78,$78,$7F,$7F,$07,$07,$00,$00
- DB $38,$38,$7C,$44,$FF,$C7,$FF,$44
- DB $CF,$F7,$4C,$F7,$7C,$C7,$38,$FF
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$FC,$FC,$FC,$34
- DB $FC,$C4,$7C,$C4,$7C,$C4,$7C,$C4
- DB $00,$FF,$00,$FF,$80,$FF,$80,$FF
- DB $FF,$FF,$7C,$C4,$7C,$C4,$7C,$C4
- DB $7C,$C4,$7C,$CC,$70,$F0,$C0,$C0
- DB $00,$00,$00,$00,$00,$00,$00,$00
- DB $7C,$C4,$7C,$C4,$7C,$CC,$70,$F0
- DB $C0,$C0,$00,$00,$00,$00,$00,$00
+ DB $1F,$F1,$1F,$F1,$1F,$F3,$1C,$FC
+ DB $F0,$F0,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$75,$00,$47,$00,$55,$00,$55
diff --git a/src/res/sources/complete_title.gbr b/src/res/sources/complete_title.gbr
index 910f1be..28638ba 100644
Binary files a/src/res/sources/complete_title.gbr and b/src/res/sources/complete_title.gbr differ
diff --git a/src/res/sources/map_title_main.gbm b/src/res/sources/map_title_main.gbm
index 288184d..e27f33f 100644
Binary files a/src/res/sources/map_title_main.gbm and b/src/res/sources/map_title_main.gbm differ
diff --git a/src/res/sources/map_title_main_credits.gbm b/src/res/sources/map_title_main_credits.gbm
index 3150997..371e292 100644
Binary files a/src/res/sources/map_title_main_credits.gbm and b/src/res/sources/map_title_main_credits.gbm differ
diff --git a/src/res/sources/map_title_main_profile.gbm b/src/res/sources/map_title_main_profile.gbm
index 82eb740..4a60078 100644
Binary files a/src/res/sources/map_title_main_profile.gbm and b/src/res/sources/map_title_main_profile.gbm differ
diff --git a/src/res/sources/map_title_main_settings.gbm b/src/res/sources/map_title_main_settings.gbm
index 507f379..d8e28aa 100644
Binary files a/src/res/sources/map_title_main_settings.gbm and b/src/res/sources/map_title_main_settings.gbm differ
diff --git a/src/res/sources/tiles_title.gbr b/src/res/sources/tiles_title.gbr
index fc52298..0fa9f07 100644
Binary files a/src/res/sources/tiles_title.gbr and b/src/res/sources/tiles_title.gbr differ
diff --git a/src/res/title_data.inc b/src/res/title_data.inc
index 9a9a202..26a2b13 100644
--- a/src/res/title_data.inc
+++ b/src/res/title_data.inc
@@ -82,12 +82,6 @@ sFilterMode::
db "UDLR"
db "NONE"
-sTetryButtons::
- db "THIS OPTION WILL"
- db "CHANGE WHICH WAY"
- db "THE BUTTONS RO- "
- db "TATE THE PIECE "
-
sTetryRNG::
db "THIS OPTION WILL"
db "CHANGE THE WAY "
@@ -124,16 +118,58 @@ sTetrySTART::
db "START IN THE SP-"
db "EED CURVE "
+sTetryEXITSettings::
+ db "OH OKAY THEN- "
+ db "BYE BYE! "
+ db " "
+ db " "
+
+sTetryProfileNumber::
+ db "SELECT THE PRO- "
+ db "FILE YOU WOULD "
+ db "LIKE TO EDIT! "
+ db " "
+
+sTetryProfileInitial1::
+ db "THIS IS THE "
+ db "FIRST INITIAL IN"
+ db "YOUR NAME! "
+ db " "
+
+sTetryProfileInitial2::
+ db "THIS IS THE "
+ db "SECOND INITIAL "
+ db "IN YOUR NAME! "
+ db " "
+
+sTetryProfileInitial3::
+ db "THIS IS THE "
+ db "THIRD INITIAL IN"
+ db "YOUR NAME! "
+ db " "
+
+sTetryButtons::
+ db "THIS OPTION WILL"
+ db "CHANGE WHICH WAY"
+ db "THE BUTTONS RO- "
+ db "TATE THE PIECE "
+
sTetryFILTER::
db "THIS OPTION WILL"
db "DETERMINE WHICH "
db "D-PAD BUTTONS "
db "HAVE PRIORITY "
-sTetryEXIT::
- db "OH OKAY THEN- "
- db "BYE BYE! "
- db " "
+sTetryReset::
+ db "THIS OPTION WILL"
+ db "RESET THIS PRO- "
+ db "FILE TO THE "
+ db "DEFAULT! "
+
+sTetryEXITProfile::
+ db "ARE YOU LEAVING "
+ db "ALREADY? I'LL "
+ db "MISS YOU! "
db " "
sTitleScreenMainMap::
@@ -163,17 +199,17 @@ sTitleScreenMainMap::
DB $1F,$0C,$1D,$1F,$01,$0D,$14,$12,$01,$01
DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$5D
- DB $01,$1B,$1D,$1A,$11,$14,$17,$10,$6F,$01
+ DB $01,$1B,$1D,$1A,$11,$14,$17,$10,$01,$01
DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$5D,$01,$1E,$10,$1F,$1F,$14,$19,$12
- DB $1E,$6F,$01,$01,$01,$01,$01,$01,$00,$00
+ DB $1E,$01,$01,$01,$01,$01,$01,$01,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$01,$5D,$01,$1D,$10,$0E,$1A,$1D
- DB $0F,$1E,$6F,$01,$01,$01,$01,$01,$01,$01
+ DB $0F,$1E,$01,$01,$01,$01,$01,$01,$01,$01
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$5D,$01,$0E,$1D,$10
- DB $0F,$14,$1F,$1E,$6F,$01,$01,$01,$01,$01
+ DB $0F,$14,$1F,$1E,$01,$01,$01,$01,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
@@ -214,33 +250,33 @@ sTitleScreenSettingsMap::
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$5D,$01,$0D,$20,$1F,$1F
- DB $1A,$19,$1E,$01,$01,$01,$01,$01,$28,$01
+ DB $00,$00,$00,$00,$5D,$01,$1D,$19,$12,$01
+ DB $18,$1A,$0F,$10,$01,$01,$01,$01,$28,$01
DB $01,$01,$01,$29,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$5D,$01,$1D,$19
- DB $12,$01,$18,$1A,$0F,$10,$01,$01,$01,$01
+ DB $00,$00,$00,$00,$00,$00,$5D,$01,$1D,$1A
+ DB $1F,$01,$18,$1A,$0F,$10,$01,$01,$01,$01
DB $28,$01,$01,$01,$01,$29,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$5D,$01
- DB $1D,$1A,$1F,$01,$18,$1A,$0F,$10,$01,$01
+ DB $0F,$1D,$1A,$1B,$01,$18,$1A,$0F,$10,$01
DB $01,$01,$28,$01,$01,$01,$01,$29,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- DB $5D,$01,$0F,$1D,$1A,$1B,$01,$18,$1A,$0F
- DB $10,$01,$01,$01,$28,$01,$01,$01,$01,$29
+ DB $5D,$01,$1E,$1B,$10,$10,$0F,$01,$0E,$20
+ DB $1D,$21,$10,$01,$28,$01,$01,$01,$01,$29
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$5D,$01,$1E,$1B,$10,$10,$0F,$01
- DB $0E,$20,$1D,$21,$10,$01,$28,$01,$01,$01
+ DB $00,$00,$5D,$01,$0C,$17,$22,$0C,$24,$1E
+ DB $01,$04,$02,$12,$01,$01,$28,$01,$01,$01
DB $01,$29,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$5D,$01,$0C,$17,$22,$0C
- DB $24,$1E,$01,$04,$02,$12,$01,$01,$28,$01
+ DB $00,$00,$00,$00,$5D,$01,$1E,$1F,$0C,$1D
+ DB $1F,$01,$17,$10,$21,$10,$17,$01,$28,$01
DB $01,$01,$01,$29,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$5D,$01,$1E,$1F
- DB $0C,$1D,$1F,$01,$17,$10,$21,$10,$17,$01
- DB $28,$01,$01,$01,$01,$29,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00,$5D,$01
- DB $0F,$2A,$1B,$0C,$0F,$01,$11,$14,$17,$1F
- DB $10,$1D,$28,$01,$01,$01,$01,$29,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$5D,$01,$0D,$0C
+ DB $0E,$16,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
+ DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $01,$01,$01,$01,$01,$01,$01,$01,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- DB $5D,$01,$0D,$0C,$0E,$16,$6F,$01,$01,$01
+ DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
@@ -285,49 +321,49 @@ sTitleScreenCreditsMap::
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$0E,$1A,$0F,$10,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $00,$00,$00,$00,$22,$1D,$14,$1F,$1F,$10
+ DB $19,$01,$0D,$24,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$2A,$01,$1B,$0C
DB $19,$0F,$1A,$1D,$0C,$01,$19,$1A,$21,$0C
DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00,$2A,$01
- DB $0E,$1D,$10,$10,$1B,$10,$1D,$0E,$1D,$0C
- DB $11,$1F,$24,$1F,$01,$01,$01,$01,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
- DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$18,$20,$1E,$14,$0E,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
- DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$2A,$01,$1B,$0C,$19,$0F
- DB $1A,$1D,$0C,$01,$19,$1A,$21,$0C,$01,$01
- DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00,$1E,$11
- DB $23,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- DB $2A,$01,$1B,$0C,$19,$0F,$1A,$1D,$0C,$01
- DB $19,$1A,$21,$0C,$01,$01,$01,$01,$01,$01
+ DB $22,$14,$1F,$13,$01,$13,$10,$17,$1B,$01
+ DB $11,$1D,$1A,$18,$01,$01,$01,$01,$01,$01
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$2A,$01,$1F,$10,$1B,$1B,$17,$10
- DB $1E,$01,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $00,$00,$2A,$01,$0E,$1D,$10,$10,$1B,$10
+ DB $1D,$0E,$1D,$0C,$11,$1F,$24,$1F,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $00,$00,$00,$00,$2A,$01,$1F,$10,$1B,$1B
+ DB $17,$10,$1E,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$12,$11,$23,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $00,$00,$00,$00,$00,$00,$2A,$01,$0C,$19
+ DB $1F,$1A,$19,$10,$1D,$12,$1A,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$2A,$01
- DB $1B,$0C,$19,$0F,$1A,$1D,$0C,$01,$19,$1A
- DB $21,$0C,$01,$01,$80,$82,$88,$8A,$00,$00
+ DB $17,$14,$19,$0F,$1F,$1A,$0D,$14,$0C,$1E
+ DB $01,$01,$01,$01,$01,$01,$01,$01,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+ DB $2A,$01,$25,$0C,$1B,$13,$1A,$0F,$09,$09
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$2A,$01,$0D,$0D,$0D,$0D,$0D,$1D
+ DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$2A,$01,$0C,$23,$08,$01
+ DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$2A,$01,$0D,$10
+ DB $22,$0C,$1D,$10,$01,$01,$01,$01,$01,$01
+ DB $01,$01,$76,$76,$76,$76,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$00,$00,$2A,$01
+ DB $1F,$0C,$1B,$01,$78,$7A,$01,$01,$01,$01
+ DB $01,$01,$01,$01,$80,$82,$88,$8A,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+ DB $2A,$01,$12,$0D,$0F,$10,$21,$01,$78,$7A
DB $01,$01,$01,$01,$01,$01,$81,$83,$89,$8B
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
@@ -356,46 +392,30 @@ sTitleScreenProfileMap::
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$01,$01,$5D,$01,$19,$20
- DB $18,$0D,$10,$1D,$01,$01,$01,$01,$28,$01
+ DB $00,$00,$00,$00,$5D,$01,$19,$20,$18,$0D
+ DB $10,$1D,$01,$01,$01,$01,$01,$01,$28,$01
DB $29,$01,$01,$01,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$01,$01,$5D,$01
- DB $14,$19,$14,$1F,$14,$0C,$17,$01,$03,$01
+ DB $00,$00,$00,$00,$00,$00,$5D,$01,$14,$19
+ DB $14,$1F,$14,$0C,$17,$01,$03,$01,$01,$01
DB $28,$01,$29,$01,$01,$01,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
+ DB $00,$00,$00,$00,$00,$00,$00,$00,$5D,$01
+ DB $14,$19,$14,$1F,$14,$0C,$17,$01,$04,$01
+ DB $01,$01,$28,$01,$29,$01,$01,$01,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $5D,$01,$14,$19,$14,$1F,$14,$0C,$17,$01
- DB $04,$01,$28,$01,$29,$01,$01,$01,$00,$00
+ DB $05,$01,$01,$01,$28,$01,$29,$01,$01,$01
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- DB $01,$01,$5D,$01,$14,$19,$14,$1F,$14,$0C
- DB $17,$01,$05,$01,$28,$01,$29,$01,$01,$01
- DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$01,$01,$5D,$01,$1D,$10,$1E,$10
- DB $1F,$01,$01,$01,$01,$01,$01,$01,$01,$01
- DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$01,$01,$5D,$01,$0D,$0C
- DB $0E,$16,$6F,$01,$01,$01,$01,$01,$01,$01
- DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
- DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
- DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
- DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
- DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
- DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
- DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $00,$00,$5D,$01,$0D,$20,$1F,$1F,$1A,$19
+ DB $1E,$01,$01,$01,$01,$01,$28,$01,$01,$01
+ DB $01,$29,$00,$00,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$5D,$01,$0F,$2A,$1B,$0C
+ DB $0F,$01,$11,$14,$17,$1F,$10,$1D,$28,$01
+ DB $01,$01,$01,$29,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$5D,$01,$1D,$10
+ DB $1E,$10,$1F,$01,$1B,$1D,$1A,$11,$14,$17
+ DB $10,$01,$01,$01,$01,$01,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$00,$00,$5D,$01
+ DB $0D,$0C,$0E,$16,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
@@ -407,6 +427,22 @@ sTitleScreenProfileMap::
DB $00,$00,$00,$00,$0C,$2A,$0E,$1A,$19,$11
DB $01,$0D,$2A,$0D,$0C,$0E,$16,$01,$6D,$2A
DB $19,$0C,$21,$14,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$5E,$5E,$5E,$5E
+ DB $5E,$5E,$5E,$5E,$5E,$5E,$5E,$5E,$5E,$5E
+ DB $5E,$5E,$5E,$5E,$5E,$5E,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
+ DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $01,$01,$01,$01,$80,$82,$88,$8A,$00,$00
+ DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+ DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $01,$01,$01,$01,$01,$01,$81,$83,$89,$8B
+ DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $01,$01,$01,$01,$01,$01,$01,$01,$84,$86
+ DB $8C,$8E,$00,$00,$00,$00,$00,$00,$00,$00
+ DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
+ DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
+ DB $85,$87,$8D,$8F,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
diff --git a/src/sprites.asm b/src/sprites.asm
index fb3f9df..9d916ff 100644
--- a/src/sprites.asm
+++ b/src/sprites.asm
@@ -67,7 +67,8 @@ wSPRTimeS2:: ds 4
wSPRTimeCS1:: ds 4
wSPRTimeCS2:: ds 4
ENDU
-wScratch: ds 2
+wScratch: ds 2
+wSpritePal: ds 1
SECTION "OAM DMA Code", ROM0
@@ -113,6 +114,24 @@ ClearOAM::
SECTION "Domain Specific Functions", ROM0
+SetPal::
+ ldh a, [hCurrentIntegerGravity]
+ cp a, 20
+ jr nz, .darker
+ ld hl, hFrameCtr
+ bit 4, [hl]
+ jr z, .lighter
+
+.darker
+ ld a, OAMF_PAL0 | $07
+ ld [wSpritePal], a
+ ret
+.lighter
+ ld a, OAMF_PAL1 | $07
+ ld [wSpritePal], a
+ ret
+
+.setpal
; Puts the mode tells into sprites and displays them.
ApplyTells::
ld a, TELLS_BASE_Y
@@ -485,7 +504,7 @@ ApplyTime::
ld [wSPRTimeCS2+1], a
; Set the palette of the time objects.
- ld a, OAMF_PAL0 | $07
+ ld a, OAMF_PAL1 | $07
ld [wSPRTimeM1+3], a
ld [wSPRTimeM2+3], a
ld [wSPRTimeS1+3], a
@@ -590,11 +609,6 @@ ApplyTime::
ld a, [de]
add a, TILE_SMALL_0
ld [hl], a
-
-
-
-
-
ret
@@ -604,13 +618,15 @@ ApplyTime::
ApplyNumbers8::
inc hl
inc hl
- ld bc, 4
+ ld bc, 2
ld a, [de]
or a, a
jr nz, .one
ld a, TILE_BLANK
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
@@ -618,7 +634,9 @@ ApplyNumbers8::
or a, a
jr nz, .two
ld a, TILE_BLANK
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
@@ -626,7 +644,9 @@ ApplyNumbers8::
or a, a
jr nz, .three
ld a, TILE_BLANK
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
@@ -634,7 +654,9 @@ ApplyNumbers8::
or a, a
jr nz, .four
ld a, TILE_BLANK
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
@@ -642,7 +664,9 @@ ApplyNumbers8::
or a, a
jr nz, .five
ld a, TILE_BLANK
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
@@ -650,7 +674,9 @@ ApplyNumbers8::
or a, a
jr nz, .six
ld a, TILE_BLANK
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
@@ -658,7 +684,9 @@ ApplyNumbers8::
or a, a
jr nz, .seven
ld a, TILE_BLANK
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
@@ -667,56 +695,72 @@ ApplyNumbers8::
.one
ld a, [de]
add a, TILE_0
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
.two
ld a, [de]
add a, TILE_0
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
.three
ld a, [de]
add a, TILE_0
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
.four
ld a, [de]
add a, TILE_0
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
.five
ld a, [de]
add a, TILE_0
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
.six
ld a, [de]
add a, TILE_0
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
.seven
ld a, [de]
add a, TILE_0
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
.eight
ld a, [de]
add a, TILE_0
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
ret
@@ -726,13 +770,15 @@ ApplyNumbers8::
ApplyNumbers4::
inc hl
inc hl
- ld bc, 4
+ ld bc, 2
ld a, [de]
or a, a
jr nz, .one
ld a, TILE_BLANK
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
@@ -740,7 +786,9 @@ ApplyNumbers4::
or a, a
jr nz, .two
ld a, TILE_BLANK
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
@@ -748,7 +796,9 @@ ApplyNumbers4::
or a, a
jr nz, .three
ld a, TILE_BLANK
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
@@ -757,27 +807,35 @@ ApplyNumbers4::
.one
ld a, [de]
add a, TILE_0
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
.two
ld a, [de]
add a, TILE_0
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
.three
ld a, [de]
add a, TILE_0
- ld [hl], a
+ ld [hl+], a
+ ld a, [wSpritePal]
+ ld [hl+], a
add hl, bc
inc de
.four
ld a, [de]
add a, TILE_0
+ ld [hl+], a
+ ld a, [wSpritePal]
ld [hl], a
ret
@@ -795,7 +853,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -807,7 +865,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -819,7 +877,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -831,7 +889,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -843,7 +901,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -855,7 +913,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -867,7 +925,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -878,7 +936,7 @@ SetNumberSpritePositions::
ld [hl], a
inc hl
inc hl
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ldh a, [rSCX]
@@ -892,7 +950,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -904,7 +962,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -916,7 +974,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -927,7 +985,7 @@ SetNumberSpritePositions::
ld [hl], a
inc hl
inc hl
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ldh a, [rSCX]
@@ -941,7 +999,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -953,7 +1011,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -965,7 +1023,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@@ -976,7 +1034,7 @@ SetNumberSpritePositions::
ld [hl], a
inc hl
inc hl
- ld a, OAMF_PAL1 | $07
+ ld a, [wSpritePal]
ld [hl], a
ret
@@ -1021,7 +1079,7 @@ GradeRendering::
ld a, [wSPRGrade1+3]
inc a
and a, OAMF_PALMASK
- or a, OAMF_PAL1
+ or a, OAMF_PAL0
ld [wSPRGrade1+3], a
ld [wSPRGrade2+3], a
jr .drawgrade
diff --git a/src/state_gameplay.asm b/src/state_gameplay.asm
index bf13709..f9f553a 100644
--- a/src/state_gameplay.asm
+++ b/src/state_gameplay.asm
@@ -772,6 +772,8 @@ GamePlayEventLoopHandlerB::
; Always draw the score, level, next piece, and held piece.
.drawStaticInfo
+ call SetPal
+
ldh a, [hNextPiece]
call ApplyNext
@@ -1583,6 +1585,8 @@ GamePlayBigEventLoopHandlerB:
; Always draw the score, level, next piece, and held piece.
.drawStaticInfo
+ call SetPal
+
ldh a, [hNextPiece]
call ApplyNext
diff --git a/src/state_title.asm b/src/state_title.asm
index 5868a9c..8aa82d5 100644
--- a/src/state_title.asm
+++ b/src/state_title.asm
@@ -760,7 +760,59 @@ TitleVBlankHandlerB:
ld a, [wProfileName+2]
ld hl, TITLE_PROFILE_NAME_2
ld [hl], a
- ret
+
+.buttons
+ ld b, 0
+ ld a, [wSwapABState]
+ add a, a
+ add a, a
+ ld c, a
+ ld hl, sBUTTONSMode
+ add hl, bc
+ ld d, h
+ ld e, l
+ ld hl, TITLE_PROFILE_BUTTONS
+ ld bc, 4
+ call UnsafeMemCopy
+
+.filter
+ ld b, 0
+ ldh a, [hFilterMode]
+ add a, a
+ add a, a
+ ld c, a
+ ld hl, sFilterMode
+ add hl, bc
+ ld d, h
+ ld e, l
+ ld hl, TITLE_PROFILE_FILTER
+ ld bc, 4
+ call UnsafeMemCopy
+
+ ; Tetry!
+ ld a, [wSelected]
+ ld hl, sTetryProfileNumber
+ ld bc, 64
+: or a, a
+ jr z, .donetetry2
+ dec a
+ add hl, bc
+ jr :-
+.donetetry2
+ ld d, h
+ ld e, l
+ ld hl, TITLE_PROFILE_TETRY
+ ld bc, 16
+ call SafeMemCopy
+ ld hl, TITLE_PROFILE_TETRY+(1*32)
+ ld bc, 16
+ call SafeMemCopy
+ ld hl, TITLE_PROFILE_TETRY+(2*32)
+ ld bc, 16
+ call SafeMemCopy
+ ld hl, TITLE_PROFILE_TETRY+(3*32)
+ ld bc, 16
+ jp SafeMemCopy
.vblankSettings
@@ -857,54 +909,27 @@ TitleVBlankHandlerB:
ld hl, TITLE_SETTINGS_HIG
ld bc, 4
call UnsafeMemCopy
- jr .buttons
+ jr .start
.disabled1
ld de, sDisabled
ld hl, TITLE_SETTINGS_HIG
ld bc, 4
call UnsafeMemCopy
-.buttons
- ld b, 0
- ld a, [wSwapABState]
- add a, a
- add a, a
- ld c, a
- ld hl, sBUTTONSMode
- add hl, bc
- ld d, h
- ld e, l
- ld hl, TITLE_SETTINGS_BUTTONS
- ld bc, 4
- call UnsafeMemCopy
-
-.filter
- ld b, 0
- ldh a, [hFilterMode]
- add a, a
- add a, a
- ld c, a
- ld hl, sFilterMode
- add hl, bc
- ld d, h
- ld e, l
- ld hl, TITLE_SETTINGS_FILTER
- ld bc, 4
- call UnsafeMemCopy
-
; START level.
+.start
call DrawSpeedSettings
; Tetry!
ld a, [wSelected]
- ld hl, sTetryButtons
+ ld hl, sTetryRNG
ld bc, 64
: or a, a
- jr z, .donetetry
+ jr z, .donetetry1
dec a
add hl, bc
jr :-
-.donetetry
+.donetetry1
ld d, h
ld e, l
ld hl, TITLE_SETTINGS_TETRY
@@ -1080,29 +1105,14 @@ SettingsHandleLeft:
jp hl
.jumps
- jp .buttons
jp .rng
jp .rot
jp .drop
jp .curve
jp .hig
jp DecrementLevel
- jp .filter
no_jump
-.buttons
- ld a, [wSwapABState]
- or a, a
- jr z, :+
- dec a
- ld [wSwapABState], a
- ld [rSwapABState], a
- ret
-: ld a, BUTTON_MODE_COUNT-1
- ld [wSwapABState], a
- ld [rSwapABState], a
- ret
-
.rng
ld a, [wRNGModeState]
or a, a
@@ -1170,20 +1180,6 @@ SettingsHandleLeft:
ld [rAlways20GState], a
ret
-.filter
- ldh a, [hFilterMode]
- or a, a
- jr z, :+
- dec a
- ldh [hFilterMode], a
- ld [rFilterMode], a
- ret
-: ld a, FILTER_MODE_COUNT-1
- ldh [hFilterMode], a
- ld [rFilterMode], a
- ret
-
-
SettingsHandleRight:
ld a, [wSelected]
@@ -1200,29 +1196,14 @@ SettingsHandleRight:
jp hl
.jumps
- jp .buttons
jp .rng
jp .rot
jp .drop
jp .curve
jp .hig
jp IncrementLevel
- jp .filter
no_jump
-.buttons
- ld a, [wSwapABState]
- cp a, BUTTON_MODE_COUNT-1
- jr z, :+
- inc a
- ld [wSwapABState], a
- ld [rSwapABState], a
- ret
-: xor a, a
- ld [wSwapABState], a
- ld [rSwapABState], a
- ret
-
.rng
ld a, [wRNGModeState]
cp a, RNG_MODE_COUNT-1
@@ -1290,19 +1271,6 @@ SettingsHandleRight:
ld [rAlways20GState], a
ret
-.filter
- ldh a, [hFilterMode]
- cp a, FILTER_MODE_COUNT-1
- jr z, :+
- inc a
- ldh [hFilterMode], a
- ld [rFilterMode], a
- ret
-: xor a, a
- ldh [hFilterMode], a
- ld [rFilterMode], a
- ret
-
ProfileHandleA:
ld a, [wSelected]
@@ -1337,6 +1305,9 @@ ProfileHandleRight:
jp .l0
jp .l1
jp .l2
+ jp .buttons
+ jp .filter
+ no_jump
no_jump
.idx
@@ -1381,6 +1352,32 @@ ProfileHandleRight:
ld [rProfileName+2], a
ret
+.buttons
+ ld a, [wSwapABState]
+ cp a, BUTTON_MODE_COUNT-1
+ jr z, :+
+ inc a
+ ld [wSwapABState], a
+ ld [rSwapABState], a
+ ret
+: xor a, a
+ ld [wSwapABState], a
+ ld [rSwapABState], a
+ ret
+
+.filter
+ ldh a, [hFilterMode]
+ cp a, FILTER_MODE_COUNT-1
+ jr z, :+
+ inc a
+ ldh [hFilterMode], a
+ ld [rFilterMode], a
+ ret
+: xor a, a
+ ldh [hFilterMode], a
+ ld [rFilterMode], a
+ ret
+
ProfileHandleLeft:
ld a, [wSelected]
@@ -1403,6 +1400,9 @@ ProfileHandleLeft:
jp .l0
jp .l1
jp .l2
+ jp .buttons
+ jp .filter
+ no_jump
no_jump
.idx
@@ -1447,6 +1447,32 @@ ProfileHandleLeft:
ld [rProfileName+2], a
ret
+.buttons
+ ld a, [wSwapABState]
+ or a, a
+ jr z, :+
+ dec a
+ ld [wSwapABState], a
+ ld [rSwapABState], a
+ ret
+: ld a, BUTTON_MODE_COUNT-1
+ ld [wSwapABState], a
+ ld [rSwapABState], a
+ ret
+
+.filter
+ ldh a, [hFilterMode]
+ or a, a
+ jr z, :+
+ dec a
+ ldh [hFilterMode], a
+ ld [rFilterMode], a
+ ret
+: ld a, FILTER_MODE_COUNT-1
+ ldh [hFilterMode], a
+ ld [rFilterMode], a
+ ret
+
ProfileHandleDown:
ld a, [wSelected]