Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CODE_01EA8F: AD E8 18 LDA.W $18E8 ; < yoshi growing animation timer
- CODE_01EA92: 0D C6 13 ORA.W $13C6 ; < cutscene address
- CODE_01EA95: F0 03 BEQ CODE_01EA9A
- CODE_01EA97: 4C 48 EB JMP.W CODE_01EB48 ; if not zero jump all the way to.....
- CODE_01EA9A: 9C DC 18 STZ.W $18DC
- CODE_01EA9D: B5 C2 LDA RAM_SpriteState,X
- CODE_01EA9F: C9 02 CMP.B #$02
- CODE_01EAA1: 90 04 BCC CODE_01EAA7
- CODE_01EAA3: A9 30 LDA.B #$30
- CODE_01EAA5: 80 0B BRA CODE_01EAB2
- CODE_01EAA7: A0 00 LDY.B #$00
- CODE_01EAA9: A5 7B LDA RAM_MarioSpeedX ; \ Branch if Mario X speed == 0
- CODE_01EAAB: F0 32 BEQ CODE_01EADF ; /
- CODE_01EAAD: 10 03 BPL CODE_01EAB2 ; \ If Mario X speed is positive,
- CODE_01EAAF: 49 FF EOR.B #$FF ; | invert it
- CODE_01EAB1: 1A INC A ; /
- CODE_01EAB2: 4A LSR ; \ Y = Upper 4 bits of X speed
- CODE_01EAB3: 4A LSR ; |
- CODE_01EAB4: 4A LSR ; |
- CODE_01EAB5: 4A LSR ; |
- CODE_01EAB6: A8 TAY ; /
- CODE_01EAB7: A5 9D LDA RAM_SpritesLocked ; \ Branch if sprites locked
- CODE_01EAB9: D0 15 BNE CODE_01EAD0 ; /
- CODE_01EABB: DE 70 15 DEC.W $1570,X ; \ If time to change frame...
- CODE_01EABE: 10 10 BPL CODE_01EAD0 ; |
- CODE_01EAC0: B9 F5 ED LDA.W DATA_01EDF5,Y ; | Set time to display new frame (based on Mario's X speed)
- CODE_01EAC3: 9D 70 15 STA.W $1570,X ; |
- CODE_01EAC6: CE AD 18 DEC.W $18AD ; | Set index to new frame, $18AD = ($18AD-1) % 3
- CODE_01EAC9: 10 05 BPL CODE_01EAD0 ; |
- CODE_01EACB: A9 02 LDA.B #$02 ; |
- CODE_01EACD: 8D AD 18 STA.W $18AD ; /
- CODE_01EAD0: AC AD 18 LDY.W $18AD ; \ Y = frame to show
- CODE_01EAD3: B9 EE ED LDA.W YoshiWalkFrames,Y ; |
- CODE_01EAD6: A8 TAY ; /
- CODE_01EAD7: B5 C2 LDA RAM_SpriteState,X
- CODE_01EAD9: C9 02 CMP.B #$02
- CODE_01EADB: B0 51 BCS CODE_01EB2E
- CODE_01EADD: 80 03 BRA CODE_01EAE2
- CODE_01EADF: 9E 70 15 STZ.W $1570,X
- CODE_01EAE2: A5 72 LDA RAM_IsFlying
- CODE_01EAE4: F0 0A BEQ CODE_01EAF0
- CODE_01EAE6: A0 02 LDY.B #$02
- CODE_01EAE8: A5 7D LDA RAM_MarioSpeedY
- CODE_01EAEA: 10 04 BPL CODE_01EAF0
- CODE_01EAEC: A0 05 LDY.B #$05
- CODE_01EAEE: 80 00 BRA CODE_01EAF0
- CODE_01EAF0: BD AC 15 LDA.W $15AC,X
- CODE_01EAF3: F0 02 BEQ CODE_01EAF7
- CODE_01EAF5: A0 03 LDY.B #$03
- CODE_01EAF7: A5 72 LDA RAM_IsFlying
- CODE_01EAF9: D0 26 BNE CODE_01EB21
- CODE_01EAFB: BD 1C 15 LDA.W $151C,X
- CODE_01EAFE: F0 0C BEQ CODE_01EB0C
- CODE_01EB00: A0 07 LDY.B #$07
- CODE_01EB02: A5 15 LDA RAM_ControllerA
- CODE_01EB04: 29 08 AND.B #$08
- CODE_01EB06: F0 02 BEQ CODE_01EB0A
- CODE_01EB08: A0 06 LDY.B #$06
- CODE_01EB0A: 80 15 BRA CODE_01EB21
- CODE_01EB0C: AD AF 18 LDA.W $18AF
- CODE_01EB0F: F0 05 BEQ CODE_01EB16
- CODE_01EB11: CE AF 18 DEC.W $18AF
- CODE_01EB14: 80 06 BRA CODE_01EB1C
- CODE_01EB16: A5 15 LDA RAM_ControllerA
- CODE_01EB18: 29 04 AND.B #$04
- CODE_01EB1A: F0 05 BEQ CODE_01EB21
- CODE_01EB1C: A0 04 LDY.B #$04
- CODE_01EB1E: EE DC 18 INC.W $18DC
- CODE_01EB21: B5 C2 LDA RAM_SpriteState,X
- CODE_01EB23: C9 01 CMP.B #$01
- CODE_01EB25: F0 07 BEQ CODE_01EB2E
- CODE_01EB27: BD 1C 15 LDA.W $151C,X
- CODE_01EB2A: D0 02 BNE CODE_01EB2E
- CODE_01EB2C: A0 04 LDY.B #$04
- CODE_01EB2E: AD 7A 18 LDA.W RAM_OnYoshi
- CODE_01EB31: F0 11 BEQ CODE_01EB44
- CODE_01EB33: AD 19 14 LDA.W RAM_YoshiInPipe
- CODE_01EB36: C9 01 CMP.B #$01
- CODE_01EB38: D0 0A BNE CODE_01EB44
- CODE_01EB3A: A5 13 LDA RAM_FrameCounter
- CODE_01EB3C: 29 08 AND.B #$08
- CODE_01EB3E: 4A LSR
- CODE_01EB3F: 4A LSR
- CODE_01EB40: 4A LSR
- CODE_01EB41: 69 08 ADC.B #$08
- CODE_01EB43: A8 TAY
- CODE_01EB44: 98 TYA
- CODE_01EB45: 9D 02 16 STA.W $1602,X
- CODE_01EB48: B5 C2 LDA RAM_SpriteState,X ; ... here
- CODE_01EB4A: C9 01 CMP.B #$01
- CODE_01EB4C: D0 49 BNE CODE_01EB97
- CODE_01EB4E: BC 7C 15 LDY.W RAM_SpriteDir,X
- CODE_01EB51: A5 94 LDA RAM_MarioXPos
- CODE_01EB53: 18 CLC
- CODE_01EB54: 79 F1 ED ADC.W YoshiPositionX,Y
- CODE_01EB57: 95 E4 STA RAM_SpriteXLo,X
- CODE_01EB59: A5 95 LDA RAM_MarioXPosHi
- CODE_01EB5B: 79 F3 ED ADC.W DATA_01EDF3,Y
- CODE_01EB5E: 9D E0 14 STA.W RAM_SpriteXHi,X
- CODE_01EB61: BC 02 16 LDY.W $1602,X
- CODE_01EB64: A5 96 LDA RAM_MarioYPos
- CODE_01EB66: 18 CLC
- CODE_01EB67: 69 10 ADC.B #$10
- CODE_01EB69: 95 D8 STA RAM_SpriteYLo,X
- CODE_01EB6B: A5 97 LDA RAM_MarioYPosHi
- CODE_01EB6D: 69 00 ADC.B #$00
- CODE_01EB6F: 9D D4 14 STA.W RAM_SpriteYHi,X
- CODE_01EB72: B9 E4 ED LDA.W DATA_01EDE4,Y
- CODE_01EB75: 8D 8B 18 STA.W $188B
- CODE_01EB78: A9 01 LDA.B #$01
- CODE_01EB7A: BC 02 16 LDY.W $1602,X
- CODE_01EB7D: C0 03 CPY.B #$03
- CODE_01EB7F: D0 01 BNE BackOnYoshi
- CODE_01EB81: 1A INC A
- BackOnYoshi: 8D 7A 18 STA.W RAM_OnYoshi
- CODE_01EB85: A9 01 LDA.B #$01
- CODE_01EB87: 8D C1 0D STA.W RAM_OWHasYoshi
- CODE_01EB8A: BD F6 15 LDA.W RAM_SpritePal,X ; \ $13C7 = Yoshi palette
- CODE_01EB8D: 8D C7 13 STA.W RAM_YoshiColor ; /
- CODE_01EB90: BD 7C 15 LDA.W RAM_SpriteDir,X
- CODE_01EB93: 49 01 EOR.B #$01
- CODE_01EB95: 85 76 STA RAM_MarioDirection
- CODE_01EB97: A5 64 LDA $64
- CODE_01EB99: 48 PHA
- CODE_01EB9A: AD 7A 18 LDA.W RAM_OnYoshi
- CODE_01EB9D: F0 0E BEQ CODE_01EBAD
- CODE_01EB9F: AD 19 14 LDA.W RAM_YoshiInPipe
- CODE_01EBA2: F0 09 BEQ CODE_01EBAD
- CODE_01EBA4: AD 05 14 LDA.W $1405
- CODE_01EBA7: D0 07 BNE CODE_01EBB0
- CODE_01EBA9: A9 10 LDA.B #$10
- CODE_01EBAB: 85 64 STA $64
- CODE_01EBAD: 20 61 EE JSR.W HandleOffYoshi
- CODE_01EBB0: 68 PLA
- CODE_01EBB1: 85 64 STA $64
- Return01EBB3: 60 RTS ; Return
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement