Add virtual leveling.
This commit is contained in:
parent
29eea6a428
commit
fd5b4fd26e
BIN
bin/DMGTRIS.GBC
BIN
bin/DMGTRIS.GBC
Binary file not shown.
504
bin/DMGTRIS.map
504
bin/DMGTRIS.map
|
@ -301,7 +301,7 @@ ROM0 bank #0:
|
||||||
$2663 = UpdateGradeSHIR.disqualify
|
$2663 = UpdateGradeSHIR.disqualify
|
||||||
$2672 = UpdateGradeSHIR.l1000
|
$2672 = UpdateGradeSHIR.l1000
|
||||||
$2688 = UpdateGradeSHIR.l500
|
$2688 = UpdateGradeSHIR.l500
|
||||||
SECTION: $269e-$2a80 ($03e3 bytes) ["Level Functions"]
|
SECTION: $269e-$2a9a ($03fd bytes) ["Level Functions"]
|
||||||
$269e = LevelInit
|
$269e = LevelInit
|
||||||
$270e = SpecialLevelInit
|
$270e = SpecialLevelInit
|
||||||
$271c = SpecialLevelInit.jumps
|
$271c = SpecialLevelInit.jumps
|
||||||
|
@ -345,255 +345,257 @@ ROM0 bank #0:
|
||||||
$2a39 = TriggerKillScreen
|
$2a39 = TriggerKillScreen
|
||||||
$2a5b = GetSection
|
$2a5b = GetSection
|
||||||
$2a6c = GetSectionBCD
|
$2a6c = GetSectionBCD
|
||||||
$2a75 = SkipSection
|
$2a75 = GetAdjustedSection
|
||||||
SECTION: $2a81-$2d36 ($02b6 bytes) ["Grading Data"]
|
$2a86 = GetAdjustedSectionBCD
|
||||||
$2a81 = sTGM1GradeScores
|
$2a8f = SkipSection
|
||||||
$2aa3 = sTGM3InternalGradeSystem
|
SECTION: $2a9b-$2d50 ($02b6 bytes) ["Grading Data"]
|
||||||
$2b43 = sTGM3GradeBoosts
|
$2a9b = sTGM1GradeScores
|
||||||
$2b62 = sTGM3LevelMultiplier
|
$2abd = sTGM3InternalGradeSystem
|
||||||
$2b66 = sTGM3BaselineCOOL
|
$2b5d = sTGM3GradeBoosts
|
||||||
$2b6f = sTGM3REGRETConditions
|
$2b7c = sTGM3LevelMultiplier
|
||||||
$2b83 = sDMGTGrading
|
$2b80 = sTGM3BaselineCOOL
|
||||||
$2c37 = sDMGTGaugeLUT
|
$2b89 = sTGM3REGRETConditions
|
||||||
SECTION: $2d37-$2fd6 ($02a0 bytes) ["SFX Functions"]
|
$2b9d = sDMGTGrading
|
||||||
$2d37 = SFXInit
|
$2c51 = sDMGTGaugeLUT
|
||||||
$2d59 = SFXPopQueue
|
SECTION: $2d51-$2ff0 ($02a0 bytes) ["SFX Functions"]
|
||||||
$2d6e = SFXPushQueue
|
$2d51 = SFXInit
|
||||||
$2d7f = SFXProcessQueue
|
$2d73 = SFXPopQueue
|
||||||
$2d90 = !0
|
$2d88 = SFXPushQueue
|
||||||
$2dab = !1
|
$2d99 = SFXProcessQueue
|
||||||
$2dad = SFXTriggerNoise
|
$2daa = !0
|
||||||
$2dba = !2
|
$2dc5 = !1
|
||||||
$2dc7 = !3
|
$2dc7 = SFXTriggerNoise
|
||||||
$2dd3 = SFXEnqueue
|
$2dd4 = !2
|
||||||
$2de8 = SFXEnqueue.findsfx
|
$2de1 = !3
|
||||||
$2dfd = !4
|
$2ded = SFXEnqueue
|
||||||
$2e0d = !5
|
$2e02 = SFXEnqueue.findsfx
|
||||||
$2e1d = !6
|
$2e17 = !4
|
||||||
$2e2d = !7
|
$2e27 = !5
|
||||||
$2e3d = !8
|
$2e37 = !6
|
||||||
$2e4d = !9
|
$2e47 = !7
|
||||||
$2e5d = !10
|
$2e57 = !8
|
||||||
$2e6d = !11
|
$2e67 = !9
|
||||||
$2e7d = !12
|
$2e77 = !10
|
||||||
$2e8d = !13
|
$2e87 = !11
|
||||||
$2e9d = !14
|
$2e97 = !12
|
||||||
$2ead = !15
|
$2ea7 = !13
|
||||||
$2ebd = !16
|
$2eb7 = !14
|
||||||
$2ecd = !17
|
$2ec7 = !15
|
||||||
$2edd = !18
|
$2ed7 = !16
|
||||||
$2eec = !19
|
$2ee7 = !17
|
||||||
$2efb = !20
|
$2ef7 = !18
|
||||||
$2f0a = !21
|
$2f06 = !19
|
||||||
$2f19 = !22
|
$2f15 = !20
|
||||||
$2f27 = !23
|
$2f24 = !21
|
||||||
$2f35 = !24
|
$2f33 = !22
|
||||||
$2f42 = SFXKill
|
$2f41 = !23
|
||||||
$2f75 = SFXPlayNoise
|
$2f4f = !24
|
||||||
$2f80 = SFXPlayNoise.noisereg
|
$2f5c = SFXKill
|
||||||
$2f8d = !25
|
$2f8f = SFXPlayNoise
|
||||||
$2f97 = SFXPlayNoise.savenoiseplayhead
|
$2f9a = SFXPlayNoise.noisereg
|
||||||
$2fa0 = SFXPlay
|
$2fa7 = !25
|
||||||
$2fab = !26
|
$2fb1 = SFXPlayNoise.savenoiseplayhead
|
||||||
$2fae = SFXPlay.play
|
$2fba = SFXPlay
|
||||||
$2fba = SFXPlay.getRegister
|
$2fc5 = !26
|
||||||
$2fc4 = !27
|
$2fc8 = SFXPlay.play
|
||||||
$2fce = SFXPlay.savePlayhead
|
$2fd4 = SFXPlay.getRegister
|
||||||
SECTION: $2fd7-$3207 ($0231 bytes) ["RNG Functions"]
|
$2fde = !27
|
||||||
$2fd7 = HarvestEntropy
|
$2fe8 = SFXPlay.savePlayhead
|
||||||
$2fdd = HarvestEntropy.loop
|
SECTION: $2ff1-$3221 ($0231 bytes) ["RNG Functions"]
|
||||||
$2ffe = RNGInit
|
$2ff1 = HarvestEntropy
|
||||||
$3034 = !0
|
$2ff7 = HarvestEntropy.loop
|
||||||
$3064 = RNGInit.complexinit
|
$3018 = RNGInit
|
||||||
$307b = !1
|
$304e = !0
|
||||||
$3096 = ShiftHistory
|
$307e = RNGInit.complexinit
|
||||||
$30b3 = GetNextHellPiece
|
$3095 = !1
|
||||||
$30b8 = GetNextTGM1Piece
|
$30b0 = ShiftHistory
|
||||||
$30bb = !2
|
$30cd = GetNextHellPiece
|
||||||
$30d3 = !3
|
$30d2 = GetNextTGM1Piece
|
||||||
$30d5 = GetNextTGM2Piece
|
$30d5 = !2
|
||||||
$30d8 = !4
|
$30ed = !3
|
||||||
$30f0 = !5
|
$30ef = GetNextTGM2Piece
|
||||||
$30f2 = GetNextNesPiece
|
$30f2 = !4
|
||||||
$3100 = GetNextTGM3Piece
|
$310a = !5
|
||||||
$3103 = !6
|
$310c = GetNextNesPiece
|
||||||
$3126 = !7
|
$311a = GetNextTGM3Piece
|
||||||
$3129 = !8
|
$311d = !6
|
||||||
$3139 = !9
|
$3140 = !7
|
||||||
$3143 = !10
|
$3143 = !8
|
||||||
$3151 = !11
|
$3153 = !9
|
||||||
$3160 = !12
|
$315d = !10
|
||||||
$316c = !13
|
$316b = !11
|
||||||
$3178 = !14
|
$317a = !12
|
||||||
$3184 = !15
|
$3186 = !13
|
||||||
$3190 = !16
|
$3192 = !14
|
||||||
$319c = !17
|
$319e = !15
|
||||||
$31a8 = !18
|
$31aa = !16
|
||||||
$31b7 = GetNextPiece
|
$31b6 = !17
|
||||||
$31c5 = GetNextPiece.nextpiecejumps
|
$31c2 = !18
|
||||||
$31d4 = Next35Piece
|
$31d1 = GetNextPiece
|
||||||
$31d4 = !19
|
$31df = GetNextPiece.nextpiecejumps
|
||||||
$31de = Next7Piece
|
$31ee = Next35Piece
|
||||||
$31de = !20
|
$31ee = !19
|
||||||
$31e8 = NextByte
|
$31f8 = Next7Piece
|
||||||
SECTION: $3208-$33cf ($01c8 bytes) ["Hi Score Functions"]
|
$31f8 = !20
|
||||||
$3208 = CheckAndAddHiscore
|
$3202 = NextByte
|
||||||
$3212 = CheckAndAddHiscore.checkloop
|
SECTION: $3222-$33e9 ($01c8 bytes) ["Hi Score Functions"]
|
||||||
$3217 = CheckAndAddHiscore.checkgrade
|
$3222 = CheckAndAddHiscore
|
||||||
$3220 = CheckAndAddHiscore.oldgraded
|
$322c = CheckAndAddHiscore.checkloop
|
||||||
$322f = CheckAndAddHiscore.oldungraded
|
$3231 = CheckAndAddHiscore.checkgrade
|
||||||
$3236 = CheckAndAddHiscore.checklevel
|
$323a = CheckAndAddHiscore.oldgraded
|
||||||
$325b = CheckAndAddHiscore.checkscore
|
$3249 = CheckAndAddHiscore.oldungraded
|
||||||
$329e = CheckAndAddHiscore.notbetter
|
$3250 = CheckAndAddHiscore.checklevel
|
||||||
$32ab = CheckAndAddHiscore.better
|
$3275 = CheckAndAddHiscore.checkscore
|
||||||
$32ad = InsertHiScore
|
$32b8 = CheckAndAddHiscore.notbetter
|
||||||
$32ad = InsertHiScore.copylower
|
$32c5 = CheckAndAddHiscore.better
|
||||||
$32be = InsertHiScore.copyupper
|
$32c7 = InsertHiScore
|
||||||
$32cb = !0
|
$32c7 = InsertHiScore.copylower
|
||||||
$32df = InsertHiScore.findrow
|
$32d8 = InsertHiScore.copyupper
|
||||||
$32ec = !1
|
$32e5 = !0
|
||||||
$32f0 = InsertHiScore.insert
|
$32f9 = InsertHiScore.findrow
|
||||||
$3349 = InsertHiScore.persist
|
$3306 = !1
|
||||||
$335a = GetHiScoreEntry
|
$330a = InsertHiScore.insert
|
||||||
$336f = !2
|
$3363 = InsertHiScore.persist
|
||||||
$3373 = GetHiScoreEntry.store
|
$3374 = GetHiScoreEntry
|
||||||
$337c = InitTargetHSTable
|
$3389 = !2
|
||||||
$3387 = InitTargetHSTable.jumps
|
$338d = GetHiScoreEntry.store
|
||||||
$339c = InitTargetHSTable.dmgt
|
$3396 = InitTargetHSTable
|
||||||
$33a1 = InitTargetHSTable.tgm1
|
$33a1 = InitTargetHSTable.jumps
|
||||||
$33a6 = InitTargetHSTable.tgm3
|
$33b6 = InitTargetHSTable.dmgt
|
||||||
$33ab = InitTargetHSTable.deat
|
$33bb = InitTargetHSTable.tgm1
|
||||||
$33b0 = InitTargetHSTable.shir
|
$33c0 = InitTargetHSTable.tgm3
|
||||||
$33b5 = InitTargetHSTable.chil
|
$33c5 = InitTargetHSTable.deat
|
||||||
$33ba = InitTargetHSTable.myco
|
$33ca = InitTargetHSTable.shir
|
||||||
$33bd = InitTargetHSTable.store
|
$33cf = InitTargetHSTable.chil
|
||||||
SECTION: $33d0-$3519 ($014a bytes) ["Progress Data"]
|
$33d4 = InitTargetHSTable.myco
|
||||||
$33d0 = sProgressData
|
$33d7 = InitTargetHSTable.store
|
||||||
SECTION: $351a-$3659 ($0140 bytes) ["Hi Score Data"]
|
SECTION: $33ea-$3533 ($014a bytes) ["Progress Data"]
|
||||||
$351a = sHiscoreDefaultData
|
$33ea = sProgressData
|
||||||
SECTION: $365a-$378d ($0134 bytes) ["Input Functions"]
|
SECTION: $3534-$3673 ($0140 bytes) ["Hi Score Data"]
|
||||||
$365a = InputInit
|
$3534 = sHiscoreDefaultData
|
||||||
$366c = GetInput
|
SECTION: $3674-$37a7 ($0134 bytes) ["Input Functions"]
|
||||||
$366c = GetInput.btns
|
$3674 = InputInit
|
||||||
$3679 = GetInput.readA
|
$3686 = GetInput
|
||||||
$367d = GetInput.setA
|
$3686 = GetInput.btns
|
||||||
$3688 = GetInput.clearA
|
$3693 = GetInput.readA
|
||||||
$368b = GetInput.readB
|
$3697 = GetInput.setA
|
||||||
$368f = GetInput.setB
|
$36a2 = GetInput.clearA
|
||||||
$369a = GetInput.clearB
|
$36a5 = GetInput.readB
|
||||||
$369d = GetInput.readSelect
|
$36a9 = GetInput.setB
|
||||||
$36a1 = GetInput.setSelect
|
$36b4 = GetInput.clearB
|
||||||
$36ac = GetInput.clearSelect
|
$36b7 = GetInput.readSelect
|
||||||
$36af = GetInput.readStart
|
$36bb = GetInput.setSelect
|
||||||
$36b3 = GetInput.setStart
|
$36c6 = GetInput.clearSelect
|
||||||
$36be = GetInput.clearStart
|
$36c9 = GetInput.readStart
|
||||||
$36c1 = GetInput.dpad
|
$36cd = GetInput.setStart
|
||||||
$36ce = GetInput.readUp
|
$36d8 = GetInput.clearStart
|
||||||
$36d2 = GetInput.setUp
|
$36db = GetInput.dpad
|
||||||
$36dd = GetInput.clearUp
|
$36e8 = GetInput.readUp
|
||||||
$36e0 = GetInput.readDown
|
$36ec = GetInput.setUp
|
||||||
$36e4 = GetInput.setDown
|
$36f7 = GetInput.clearUp
|
||||||
$36ef = GetInput.clearDown
|
$36fa = GetInput.readDown
|
||||||
$36f2 = GetInput.readLeft
|
$36fe = GetInput.setDown
|
||||||
$36f6 = GetInput.setLeft
|
$3709 = GetInput.clearDown
|
||||||
$3701 = GetInput.clearLeft
|
$370c = GetInput.readLeft
|
||||||
$3704 = GetInput.readRight
|
$3710 = GetInput.setLeft
|
||||||
$3708 = GetInput.setRight
|
$371b = GetInput.clearLeft
|
||||||
$3713 = GetInput.clearRight
|
$371e = GetInput.readRight
|
||||||
$3716 = GetInput.priorities
|
$3722 = GetInput.setRight
|
||||||
$3723 = GetInput.jumps
|
$372d = GetInput.clearRight
|
||||||
$3732 = GetInput.dlru
|
$3730 = GetInput.priorities
|
||||||
$3745 = GetInput.ulrd
|
$373d = GetInput.jumps
|
||||||
$3758 = GetInput.lrud
|
$374c = GetInput.dlru
|
||||||
$3765 = GetInput.udlr
|
$375f = GetInput.ulrd
|
||||||
$3772 = GetInput.zeroud
|
$3772 = GetInput.lrud
|
||||||
$3778 = GetInput.zerolr
|
$377f = GetInput.udlr
|
||||||
$377e = GetInput.zerolrd
|
$378c = GetInput.zeroud
|
||||||
$3786 = GetInput.zerolru
|
$3792 = GetInput.zerolr
|
||||||
SECTION: $378e-$386d ($00e0 bytes) ["Score Functions"]
|
$3798 = GetInput.zerolrd
|
||||||
$378e = ScoreInit
|
$37a0 = GetInput.zerolru
|
||||||
$37b6 = IncreaseScore
|
SECTION: $37a8-$3887 ($00e0 bytes) ["Score Functions"]
|
||||||
$37ee = IncreaseScore.doConvert
|
$37a8 = ScoreInit
|
||||||
$37f0 = !0
|
$37d0 = IncreaseScore
|
||||||
$3806 = IncreaseScore.carry
|
$3808 = IncreaseScore.doConvert
|
||||||
$3808 = IncreaseScore.postConvert
|
$380a = !0
|
||||||
$3815 = !1
|
$3820 = IncreaseScore.carry
|
||||||
$381c = IncreaseScore.preAddDigit
|
$3822 = IncreaseScore.postConvert
|
||||||
$3844 = IncreaseScore.addDigit
|
$382f = !1
|
||||||
$385a = IncreaseScore.nextDigit
|
$3836 = IncreaseScore.preAddDigit
|
||||||
SECTION: $386e-$3938 ($00cb bytes) ["Title Function Trampolines"]
|
$385e = IncreaseScore.addDigit
|
||||||
$386e = SwitchToTitle
|
$3874 = IncreaseScore.nextDigit
|
||||||
$3877 = TitleEventLoopHandler
|
SECTION: $3888-$3952 ($00cb bytes) ["Title Function Trampolines"]
|
||||||
$3881 = TitleVBlankHandler
|
$3888 = SwitchToTitle
|
||||||
$388b = PersistLevel
|
$3891 = TitleEventLoopHandler
|
||||||
$3899 = DrawSpeedMain
|
$389b = TitleVBlankHandler
|
||||||
$38e9 = DrawSpeedSettings
|
$38a5 = PersistLevel
|
||||||
SECTION: $3939-$39fe ($00c6 bytes) ["Time Functions"]
|
$38b3 = DrawSpeedMain
|
||||||
$3939 = TimeInit
|
$3903 = DrawSpeedSettings
|
||||||
$3959 = StartCountdown
|
SECTION: $3953-$3a18 ($00c6 bytes) ["Time Functions"]
|
||||||
$3967 = ResetGameTime
|
$3953 = TimeInit
|
||||||
$3972 = CheckTorikan
|
$3973 = StartCountdown
|
||||||
$3989 = CheckTorikan.failure
|
$3981 = ResetGameTime
|
||||||
$398b = CheckTorikan.success
|
$398c = CheckTorikan
|
||||||
$398e = HandleTimers
|
$39a3 = CheckTorikan.failure
|
||||||
$39b4 = HandleTimers.reduce
|
$39a5 = CheckTorikan.success
|
||||||
$39c1 = HandleTimers.clock
|
$39a8 = HandleTimers
|
||||||
$39db = HandleTimers.go
|
$39ce = HandleTimers.reduce
|
||||||
SECTION: $39ff-$3ab0 ($00b2 bytes) ["Progress Functions"]
|
$39db = HandleTimers.clock
|
||||||
$39ff = SetProgress
|
$39f5 = HandleTimers.go
|
||||||
$3a0a = SetProgress.loop
|
SECTION: $3a19-$3aca ($00b2 bytes) ["Progress Functions"]
|
||||||
$3a0e = SetProgress.correct
|
$3a19 = SetProgress
|
||||||
$3a35 = SetProgress.wvr_u1
|
$3a24 = SetProgress.loop
|
||||||
$3a41 = SetProgress.wvr_u2
|
$3a28 = SetProgress.correct
|
||||||
$3a4f = SetProgress.wvr_u3
|
$3a4f = SetProgress.wvr_u1
|
||||||
$3a5b = SetProgress.wvr_u4
|
$3a5b = SetProgress.wvr_u2
|
||||||
$3a69 = SetProgress.wvr_u5
|
$3a69 = SetProgress.wvr_u3
|
||||||
$3a75 = SetProgress.wvr_u6
|
$3a75 = SetProgress.wvr_u4
|
||||||
$3a83 = SetProgress.wvr_u7
|
$3a83 = SetProgress.wvr_u5
|
||||||
$3a8f = SetProgress.wvr_u8
|
$3a8f = SetProgress.wvr_u6
|
||||||
$3a9d = SetProgress.wvr_u9
|
$3a9d = SetProgress.wvr_u7
|
||||||
$3aa9 = SetProgress.wvr_u10
|
$3aa9 = SetProgress.wvr_u8
|
||||||
SECTION: $3ab1-$3b48 ($0098 bytes) ["Code Entry Point"]
|
$3ab7 = SetProgress.wvr_u9
|
||||||
$3ab1 = Main
|
$3ac3 = SetProgress.wvr_u10
|
||||||
$3ada = Main.notgbc
|
SECTION: $3acb-$3b62 ($0098 bytes) ["Code Entry Point"]
|
||||||
$3ae0 = Main.wvr_u1
|
$3acb = Main
|
||||||
$3b0d = EventLoop
|
$3af4 = Main.notgbc
|
||||||
$3b23 = EventLoop.eventloopjumps
|
$3afa = Main.wvr_u1
|
||||||
$3b2c = EventLoopPostHandler
|
$3b27 = EventLoop
|
||||||
$3b2e = EventLoopPostHandler.wvb_u2
|
$3b3d = EventLoop.eventloopjumps
|
||||||
$3b40 = EventLoopPostHandler.vblankjumps
|
$3b46 = EventLoopPostHandler
|
||||||
SECTION: $3b49-$3b9a ($0052 bytes) ["Tile Functions"]
|
$3b48 = EventLoopPostHandler.wvb_u2
|
||||||
$3b49 = LoadTitleTiles
|
$3b5a = EventLoopPostHandler.vblankjumps
|
||||||
$3b67 = LoadGameplayTiles
|
SECTION: $3b63-$3bb4 ($0052 bytes) ["Tile Functions"]
|
||||||
$3b7d = LoadGameplayTiles.gbc
|
$3b63 = LoadTitleTiles
|
||||||
$3b8c = LoadGameplayTiles.dmg
|
$3b81 = LoadGameplayTiles
|
||||||
SECTION: $3b9b-$3bd6 ($003c bytes) ["Time Data"]
|
$3b97 = LoadGameplayTiles.gbc
|
||||||
$3b9b = sFramesToCS
|
$3ba6 = LoadGameplayTiles.dmg
|
||||||
SECTION: $3bd7-$3c04 ($002e bytes) ["Memory Functions"]
|
SECTION: $3bb5-$3bf0 ($003c bytes) ["Time Data"]
|
||||||
$3bd7 = UnsafeMemCopy
|
$3bb5 = sFramesToCS
|
||||||
$3be0 = SafeMemCopy.wvr_u1
|
SECTION: $3bf1-$3c1e ($002e bytes) ["Memory Functions"]
|
||||||
$3be0 = SafeMemCopy
|
$3bf1 = UnsafeMemCopy
|
||||||
$3bef = UnsafeMemSet
|
$3bfa = SafeMemCopy.wvr_u1
|
||||||
$3bf7 = SafeMemSet
|
$3bfa = SafeMemCopy
|
||||||
$3bf7 = SafeMemSet.wvr_u2
|
$3c09 = UnsafeMemSet
|
||||||
SECTION: $3c05-$3c2a ($0026 bytes) ["Gameplay Function Trampolines"]
|
$3c11 = SafeMemSet
|
||||||
$3c05 = SwitchToGameplay
|
$3c11 = SafeMemSet.wvr_u2
|
||||||
$3c0e = SwitchToGameplayBig
|
SECTION: $3c1f-$3c44 ($0026 bytes) ["Gameplay Function Trampolines"]
|
||||||
$3c17 = GamePlayEventLoopHandler
|
$3c1f = SwitchToGameplay
|
||||||
$3c21 = GamePlayBigEventLoopHandler
|
$3c28 = SwitchToGameplayBig
|
||||||
SECTION: $3c2b-$3c4f ($0025 bytes) ["Interrupt Initialization Functions"]
|
$3c31 = GamePlayEventLoopHandler
|
||||||
$3c2b = EnableScreenSquish
|
$3c3b = GamePlayBigEventLoopHandler
|
||||||
$3c45 = DisableScreenSquish
|
SECTION: $3c45-$3c69 ($0025 bytes) ["Interrupt Initialization Functions"]
|
||||||
SECTION: $3c50-$3c71 ($0022 bytes) ["OAM Functions"]
|
$3c45 = EnableScreenSquish
|
||||||
$3c50 = CopyOAMHandler
|
$3c5f = DisableScreenSquish
|
||||||
$3c5c = ClearOAM
|
SECTION: $3c6a-$3c8b ($0022 bytes) ["OAM Functions"]
|
||||||
SECTION: $3c72-$3c80 ($000f bytes) ["Banking Functions"]
|
$3c6a = CopyOAMHandler
|
||||||
$3c72 = BankingInit
|
$3c76 = ClearOAM
|
||||||
SECTION: $3c81-$3c8a ($000a bytes) ["OAM DMA Code"]
|
SECTION: $3c8c-$3c9a ($000f bytes) ["Banking Functions"]
|
||||||
$3c81 = OAMDMA
|
$3c8c = BankingInit
|
||||||
$3c8b = OAMDMAEnd
|
SECTION: $3c9b-$3ca4 ($000a bytes) ["OAM DMA Code"]
|
||||||
EMPTY: $3c8b-$3fff ($0375 bytes)
|
$3c9b = OAMDMA
|
||||||
TOTAL EMPTY: $0380 bytes
|
$3ca5 = OAMDMAEnd
|
||||||
|
EMPTY: $3ca5-$3fff ($035b bytes)
|
||||||
|
TOTAL EMPTY: $0366 bytes
|
||||||
|
|
||||||
ROMX bank #1:
|
ROMX bank #1:
|
||||||
SECTION: $4000-$4007 ($0008 bytes) ["Bank ID BANK_OTHER"]
|
SECTION: $4000-$4007 ($0008 bytes) ["Bank ID BANK_OTHER"]
|
||||||
|
@ -3299,7 +3301,7 @@ HRAM bank #0:
|
||||||
TOTAL EMPTY: $0000 bytes
|
TOTAL EMPTY: $0000 bytes
|
||||||
|
|
||||||
SUMMARY:
|
SUMMARY:
|
||||||
ROM0: 15488 bytes used / 896 free
|
ROM0: 15514 bytes used / 870 free
|
||||||
ROMX: 68697 bytes used / 29607 free in 6 banks
|
ROMX: 68697 bytes used / 29607 free in 6 banks
|
||||||
SRAM: 2951 bytes used / 5241 free in 1 bank
|
SRAM: 2951 bytes used / 5241 free in 1 bank
|
||||||
WRAM0: 3910 bytes used / 186 free
|
WRAM0: 3910 bytes used / 186 free
|
||||||
|
|
Binary file not shown.
348
bin/DMGTRIS.sym
348
bin/DMGTRIS.sym
|
@ -302,179 +302,181 @@
|
||||||
00:2a39 TriggerKillScreen
|
00:2a39 TriggerKillScreen
|
||||||
00:2a5b GetSection
|
00:2a5b GetSection
|
||||||
00:2a6c GetSectionBCD
|
00:2a6c GetSectionBCD
|
||||||
00:2a75 SkipSection
|
00:2a75 GetAdjustedSection
|
||||||
00:2a81 sTGM1GradeScores
|
00:2a86 GetAdjustedSectionBCD
|
||||||
00:2aa3 sTGM3InternalGradeSystem
|
00:2a8f SkipSection
|
||||||
00:2b43 sTGM3GradeBoosts
|
00:2a9b sTGM1GradeScores
|
||||||
00:2b62 sTGM3LevelMultiplier
|
00:2abd sTGM3InternalGradeSystem
|
||||||
00:2b66 sTGM3BaselineCOOL
|
00:2b5d sTGM3GradeBoosts
|
||||||
00:2b6f sTGM3REGRETConditions
|
00:2b7c sTGM3LevelMultiplier
|
||||||
00:2b83 sDMGTGrading
|
00:2b80 sTGM3BaselineCOOL
|
||||||
00:2c37 sDMGTGaugeLUT
|
00:2b89 sTGM3REGRETConditions
|
||||||
00:2d37 SFXInit
|
00:2b9d sDMGTGrading
|
||||||
00:2d59 SFXPopQueue
|
00:2c51 sDMGTGaugeLUT
|
||||||
00:2d6e SFXPushQueue
|
00:2d51 SFXInit
|
||||||
00:2d7f SFXProcessQueue
|
00:2d73 SFXPopQueue
|
||||||
00:2dad SFXTriggerNoise
|
00:2d88 SFXPushQueue
|
||||||
00:2dd3 SFXEnqueue
|
00:2d99 SFXProcessQueue
|
||||||
00:2de8 SFXEnqueue.findsfx
|
00:2dc7 SFXTriggerNoise
|
||||||
00:2f42 SFXKill
|
00:2ded SFXEnqueue
|
||||||
00:2f75 SFXPlayNoise
|
00:2e02 SFXEnqueue.findsfx
|
||||||
00:2f80 SFXPlayNoise.noisereg
|
00:2f5c SFXKill
|
||||||
00:2f97 SFXPlayNoise.savenoiseplayhead
|
00:2f8f SFXPlayNoise
|
||||||
00:2fa0 SFXPlay
|
00:2f9a SFXPlayNoise.noisereg
|
||||||
00:2fae SFXPlay.play
|
00:2fb1 SFXPlayNoise.savenoiseplayhead
|
||||||
00:2fba SFXPlay.getRegister
|
00:2fba SFXPlay
|
||||||
00:2fce SFXPlay.savePlayhead
|
00:2fc8 SFXPlay.play
|
||||||
00:2fd7 HarvestEntropy
|
00:2fd4 SFXPlay.getRegister
|
||||||
00:2fdd HarvestEntropy.loop
|
00:2fe8 SFXPlay.savePlayhead
|
||||||
00:2ffe RNGInit
|
00:2ff1 HarvestEntropy
|
||||||
00:3064 RNGInit.complexinit
|
00:2ff7 HarvestEntropy.loop
|
||||||
00:3096 ShiftHistory
|
00:3018 RNGInit
|
||||||
00:30b3 GetNextHellPiece
|
00:307e RNGInit.complexinit
|
||||||
00:30b8 GetNextTGM1Piece
|
00:30b0 ShiftHistory
|
||||||
00:30d5 GetNextTGM2Piece
|
00:30cd GetNextHellPiece
|
||||||
00:30f2 GetNextNesPiece
|
00:30d2 GetNextTGM1Piece
|
||||||
00:3100 GetNextTGM3Piece
|
00:30ef GetNextTGM2Piece
|
||||||
00:31b7 GetNextPiece
|
00:310c GetNextNesPiece
|
||||||
00:31c5 GetNextPiece.nextpiecejumps
|
00:311a GetNextTGM3Piece
|
||||||
00:31d4 Next35Piece
|
00:31d1 GetNextPiece
|
||||||
00:31de Next7Piece
|
00:31df GetNextPiece.nextpiecejumps
|
||||||
00:31e8 NextByte
|
00:31ee Next35Piece
|
||||||
00:3208 CheckAndAddHiscore
|
00:31f8 Next7Piece
|
||||||
00:3212 CheckAndAddHiscore.checkloop
|
00:3202 NextByte
|
||||||
00:3217 CheckAndAddHiscore.checkgrade
|
00:3222 CheckAndAddHiscore
|
||||||
00:3220 CheckAndAddHiscore.oldgraded
|
00:322c CheckAndAddHiscore.checkloop
|
||||||
00:322f CheckAndAddHiscore.oldungraded
|
00:3231 CheckAndAddHiscore.checkgrade
|
||||||
00:3236 CheckAndAddHiscore.checklevel
|
00:323a CheckAndAddHiscore.oldgraded
|
||||||
00:325b CheckAndAddHiscore.checkscore
|
00:3249 CheckAndAddHiscore.oldungraded
|
||||||
00:329e CheckAndAddHiscore.notbetter
|
00:3250 CheckAndAddHiscore.checklevel
|
||||||
00:32ab CheckAndAddHiscore.better
|
00:3275 CheckAndAddHiscore.checkscore
|
||||||
00:32ad InsertHiScore
|
00:32b8 CheckAndAddHiscore.notbetter
|
||||||
00:32ad InsertHiScore.copylower
|
00:32c5 CheckAndAddHiscore.better
|
||||||
00:32be InsertHiScore.copyupper
|
00:32c7 InsertHiScore
|
||||||
00:32df InsertHiScore.findrow
|
00:32c7 InsertHiScore.copylower
|
||||||
00:32f0 InsertHiScore.insert
|
00:32d8 InsertHiScore.copyupper
|
||||||
00:3349 InsertHiScore.persist
|
00:32f9 InsertHiScore.findrow
|
||||||
00:335a GetHiScoreEntry
|
00:330a InsertHiScore.insert
|
||||||
00:3373 GetHiScoreEntry.store
|
00:3363 InsertHiScore.persist
|
||||||
00:337c InitTargetHSTable
|
00:3374 GetHiScoreEntry
|
||||||
00:3387 InitTargetHSTable.jumps
|
00:338d GetHiScoreEntry.store
|
||||||
00:339c InitTargetHSTable.dmgt
|
00:3396 InitTargetHSTable
|
||||||
00:33a1 InitTargetHSTable.tgm1
|
00:33a1 InitTargetHSTable.jumps
|
||||||
00:33a6 InitTargetHSTable.tgm3
|
00:33b6 InitTargetHSTable.dmgt
|
||||||
00:33ab InitTargetHSTable.deat
|
00:33bb InitTargetHSTable.tgm1
|
||||||
00:33b0 InitTargetHSTable.shir
|
00:33c0 InitTargetHSTable.tgm3
|
||||||
00:33b5 InitTargetHSTable.chil
|
00:33c5 InitTargetHSTable.deat
|
||||||
00:33ba InitTargetHSTable.myco
|
00:33ca InitTargetHSTable.shir
|
||||||
00:33bd InitTargetHSTable.store
|
00:33cf InitTargetHSTable.chil
|
||||||
00:33d0 sProgressData
|
00:33d4 InitTargetHSTable.myco
|
||||||
00:351a sHiscoreDefaultData
|
00:33d7 InitTargetHSTable.store
|
||||||
00:365a InputInit
|
00:33ea sProgressData
|
||||||
00:366c GetInput
|
00:3534 sHiscoreDefaultData
|
||||||
00:366c GetInput.btns
|
00:3674 InputInit
|
||||||
00:3679 GetInput.readA
|
00:3686 GetInput
|
||||||
00:367d GetInput.setA
|
00:3686 GetInput.btns
|
||||||
00:3688 GetInput.clearA
|
00:3693 GetInput.readA
|
||||||
00:368b GetInput.readB
|
00:3697 GetInput.setA
|
||||||
00:368f GetInput.setB
|
00:36a2 GetInput.clearA
|
||||||
00:369a GetInput.clearB
|
00:36a5 GetInput.readB
|
||||||
00:369d GetInput.readSelect
|
00:36a9 GetInput.setB
|
||||||
00:36a1 GetInput.setSelect
|
00:36b4 GetInput.clearB
|
||||||
00:36ac GetInput.clearSelect
|
00:36b7 GetInput.readSelect
|
||||||
00:36af GetInput.readStart
|
00:36bb GetInput.setSelect
|
||||||
00:36b3 GetInput.setStart
|
00:36c6 GetInput.clearSelect
|
||||||
00:36be GetInput.clearStart
|
00:36c9 GetInput.readStart
|
||||||
00:36c1 GetInput.dpad
|
00:36cd GetInput.setStart
|
||||||
00:36ce GetInput.readUp
|
00:36d8 GetInput.clearStart
|
||||||
00:36d2 GetInput.setUp
|
00:36db GetInput.dpad
|
||||||
00:36dd GetInput.clearUp
|
00:36e8 GetInput.readUp
|
||||||
00:36e0 GetInput.readDown
|
00:36ec GetInput.setUp
|
||||||
00:36e4 GetInput.setDown
|
00:36f7 GetInput.clearUp
|
||||||
00:36ef GetInput.clearDown
|
00:36fa GetInput.readDown
|
||||||
00:36f2 GetInput.readLeft
|
00:36fe GetInput.setDown
|
||||||
00:36f6 GetInput.setLeft
|
00:3709 GetInput.clearDown
|
||||||
00:3701 GetInput.clearLeft
|
00:370c GetInput.readLeft
|
||||||
00:3704 GetInput.readRight
|
00:3710 GetInput.setLeft
|
||||||
00:3708 GetInput.setRight
|
00:371b GetInput.clearLeft
|
||||||
00:3713 GetInput.clearRight
|
00:371e GetInput.readRight
|
||||||
00:3716 GetInput.priorities
|
00:3722 GetInput.setRight
|
||||||
00:3723 GetInput.jumps
|
00:372d GetInput.clearRight
|
||||||
00:3732 GetInput.dlru
|
00:3730 GetInput.priorities
|
||||||
00:3745 GetInput.ulrd
|
00:373d GetInput.jumps
|
||||||
00:3758 GetInput.lrud
|
00:374c GetInput.dlru
|
||||||
00:3765 GetInput.udlr
|
00:375f GetInput.ulrd
|
||||||
00:3772 GetInput.zeroud
|
00:3772 GetInput.lrud
|
||||||
00:3778 GetInput.zerolr
|
00:377f GetInput.udlr
|
||||||
00:377e GetInput.zerolrd
|
00:378c GetInput.zeroud
|
||||||
00:3786 GetInput.zerolru
|
00:3792 GetInput.zerolr
|
||||||
00:378e ScoreInit
|
00:3798 GetInput.zerolrd
|
||||||
00:37b6 IncreaseScore
|
00:37a0 GetInput.zerolru
|
||||||
00:37ee IncreaseScore.doConvert
|
00:37a8 ScoreInit
|
||||||
00:3806 IncreaseScore.carry
|
00:37d0 IncreaseScore
|
||||||
00:3808 IncreaseScore.postConvert
|
00:3808 IncreaseScore.doConvert
|
||||||
00:381c IncreaseScore.preAddDigit
|
00:3820 IncreaseScore.carry
|
||||||
00:3844 IncreaseScore.addDigit
|
00:3822 IncreaseScore.postConvert
|
||||||
00:385a IncreaseScore.nextDigit
|
00:3836 IncreaseScore.preAddDigit
|
||||||
00:386e SwitchToTitle
|
00:385e IncreaseScore.addDigit
|
||||||
00:3877 TitleEventLoopHandler
|
00:3874 IncreaseScore.nextDigit
|
||||||
00:3881 TitleVBlankHandler
|
00:3888 SwitchToTitle
|
||||||
00:388b PersistLevel
|
00:3891 TitleEventLoopHandler
|
||||||
00:3899 DrawSpeedMain
|
00:389b TitleVBlankHandler
|
||||||
00:38e9 DrawSpeedSettings
|
00:38a5 PersistLevel
|
||||||
00:3939 TimeInit
|
00:38b3 DrawSpeedMain
|
||||||
00:3959 StartCountdown
|
00:3903 DrawSpeedSettings
|
||||||
00:3967 ResetGameTime
|
00:3953 TimeInit
|
||||||
00:3972 CheckTorikan
|
00:3973 StartCountdown
|
||||||
00:3989 CheckTorikan.failure
|
00:3981 ResetGameTime
|
||||||
00:398b CheckTorikan.success
|
00:398c CheckTorikan
|
||||||
00:398e HandleTimers
|
00:39a3 CheckTorikan.failure
|
||||||
00:39b4 HandleTimers.reduce
|
00:39a5 CheckTorikan.success
|
||||||
00:39c1 HandleTimers.clock
|
00:39a8 HandleTimers
|
||||||
00:39db HandleTimers.go
|
00:39ce HandleTimers.reduce
|
||||||
00:39ff SetProgress
|
00:39db HandleTimers.clock
|
||||||
00:3a0a SetProgress.loop
|
00:39f5 HandleTimers.go
|
||||||
00:3a0e SetProgress.correct
|
00:3a19 SetProgress
|
||||||
00:3a35 SetProgress.wvr_u1
|
00:3a24 SetProgress.loop
|
||||||
00:3a41 SetProgress.wvr_u2
|
00:3a28 SetProgress.correct
|
||||||
00:3a4f SetProgress.wvr_u3
|
00:3a4f SetProgress.wvr_u1
|
||||||
00:3a5b SetProgress.wvr_u4
|
00:3a5b SetProgress.wvr_u2
|
||||||
00:3a69 SetProgress.wvr_u5
|
00:3a69 SetProgress.wvr_u3
|
||||||
00:3a75 SetProgress.wvr_u6
|
00:3a75 SetProgress.wvr_u4
|
||||||
00:3a83 SetProgress.wvr_u7
|
00:3a83 SetProgress.wvr_u5
|
||||||
00:3a8f SetProgress.wvr_u8
|
00:3a8f SetProgress.wvr_u6
|
||||||
00:3a9d SetProgress.wvr_u9
|
00:3a9d SetProgress.wvr_u7
|
||||||
00:3aa9 SetProgress.wvr_u10
|
00:3aa9 SetProgress.wvr_u8
|
||||||
00:3ab1 Main
|
00:3ab7 SetProgress.wvr_u9
|
||||||
00:3ada Main.notgbc
|
00:3ac3 SetProgress.wvr_u10
|
||||||
00:3ae0 Main.wvr_u1
|
00:3acb Main
|
||||||
00:3b0d EventLoop
|
00:3af4 Main.notgbc
|
||||||
00:3b23 EventLoop.eventloopjumps
|
00:3afa Main.wvr_u1
|
||||||
00:3b2c EventLoopPostHandler
|
00:3b27 EventLoop
|
||||||
00:3b2e EventLoopPostHandler.wvb_u2
|
00:3b3d EventLoop.eventloopjumps
|
||||||
00:3b40 EventLoopPostHandler.vblankjumps
|
00:3b46 EventLoopPostHandler
|
||||||
00:3b49 LoadTitleTiles
|
00:3b48 EventLoopPostHandler.wvb_u2
|
||||||
00:3b67 LoadGameplayTiles
|
00:3b5a EventLoopPostHandler.vblankjumps
|
||||||
00:3b7d LoadGameplayTiles.gbc
|
00:3b63 LoadTitleTiles
|
||||||
00:3b8c LoadGameplayTiles.dmg
|
00:3b81 LoadGameplayTiles
|
||||||
00:3b9b sFramesToCS
|
00:3b97 LoadGameplayTiles.gbc
|
||||||
00:3bd7 UnsafeMemCopy
|
00:3ba6 LoadGameplayTiles.dmg
|
||||||
00:3be0 SafeMemCopy.wvr_u1
|
00:3bb5 sFramesToCS
|
||||||
00:3be0 SafeMemCopy
|
00:3bf1 UnsafeMemCopy
|
||||||
00:3bef UnsafeMemSet
|
00:3bfa SafeMemCopy.wvr_u1
|
||||||
00:3bf7 SafeMemSet
|
00:3bfa SafeMemCopy
|
||||||
00:3bf7 SafeMemSet.wvr_u2
|
00:3c09 UnsafeMemSet
|
||||||
00:3c05 SwitchToGameplay
|
00:3c11 SafeMemSet
|
||||||
00:3c0e SwitchToGameplayBig
|
00:3c11 SafeMemSet.wvr_u2
|
||||||
00:3c17 GamePlayEventLoopHandler
|
00:3c1f SwitchToGameplay
|
||||||
00:3c21 GamePlayBigEventLoopHandler
|
00:3c28 SwitchToGameplayBig
|
||||||
00:3c2b EnableScreenSquish
|
00:3c31 GamePlayEventLoopHandler
|
||||||
00:3c45 DisableScreenSquish
|
00:3c3b GamePlayBigEventLoopHandler
|
||||||
00:3c50 CopyOAMHandler
|
00:3c45 EnableScreenSquish
|
||||||
00:3c5c ClearOAM
|
00:3c5f DisableScreenSquish
|
||||||
00:3c72 BankingInit
|
00:3c6a CopyOAMHandler
|
||||||
00:3c81 OAMDMA
|
00:3c76 ClearOAM
|
||||||
00:3c8b OAMDMAEnd
|
00:3c8c BankingInit
|
||||||
|
00:3c9b OAMDMA
|
||||||
|
00:3ca5 OAMDMAEnd
|
||||||
01:4008 sDMGTSpeedCurve
|
01:4008 sDMGTSpeedCurve
|
||||||
01:4203 sDMGTSpeedCurveEnd
|
01:4203 sDMGTSpeedCurveEnd
|
||||||
01:4205 sDMGTSpeedCurveSpecialData
|
01:4205 sDMGTSpeedCurveSpecialData
|
||||||
|
|
|
@ -844,6 +844,37 @@ GetSectionBCD::
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
; Gets a 0-indexed section number, returned in A as binary.
|
||||||
|
; Levels 0000-0099 would return 0, levels 0100-0199 would return 1, ... levels 9900-9999 would return 99.
|
||||||
|
; This version calculates the amount of skipped sections in.
|
||||||
|
GetAdjustedSection::
|
||||||
|
; Load thousands.
|
||||||
|
ldh a, [hTrueCLevel+CLEVEL_THOUSANDS]
|
||||||
|
|
||||||
|
; Multiply by 10, which is equal to multiply by 8 + multiply by 2
|
||||||
|
ld b, a
|
||||||
|
sla b
|
||||||
|
sla a
|
||||||
|
sla a
|
||||||
|
sla a
|
||||||
|
add a, b
|
||||||
|
|
||||||
|
; Add hundreds.
|
||||||
|
ld hl, hTrueCLevel+CLEVEL_HUNDREDS
|
||||||
|
add a, [hl]
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
; Gets the current section, but as BCD in A.
|
||||||
|
; This version calculates the amount of skipped sections in.
|
||||||
|
GetAdjustedSectionBCD::
|
||||||
|
ldh a, [hTrueCLevel+CLEVEL_THOUSANDS]
|
||||||
|
swap a
|
||||||
|
ld hl, hTrueCLevel+CLEVEL_HUNDREDS
|
||||||
|
or a, [hl]
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
; Will skip the virtual level forward by 100 levels.
|
; Will skip the virtual level forward by 100 levels.
|
||||||
; This will NOT affect the displayed level, nor will it affect scoring.
|
; This will NOT affect the displayed level, nor will it affect scoring.
|
||||||
; It will only make it so the internal speed pointer will be ahead by N*100 levels.
|
; It will only make it so the internal speed pointer will be ahead by N*100 levels.
|
||||||
|
|
Loading…
Reference in New Issue