level105: !freeram_direction = $7E0DA1 !freeram_timer = $7E0D9C LDA !freeram_direction ;\if cannon mode is 00 (not launching) BEQ returncannon ;/then return_cannon STZ $15 ;\ STZ $16 ; |lock controls while cannon mode STZ $17 ;/ STZ $77 ;>allows mario to go through walls in cannon mode LDA #$01 ;\maintain ducking flag STA $73 ;/ LDA !freeram_direction ;\ CMP #$01 ; |direction of launching mario up BNE skip_to_right ; | LDA #$2F ; | EOR #$FF ; | STA $7D ; | STZ $7B ;/ skip_to_right: LDA !freeram_direction CMP #$02 BNE skip_to_down STZ $7D LDA #$2F STA $7B skip_to_down: LDA !freeram_direction CMP #$03 BNE skip_to_left LDA #$2F STA $7D STZ $7B skip_to_left: LDA !freeram_direction CMP #$04 BNE returncannon STZ $7D LDA #$2F EOR #$FF STA $7B LDA !freeram_timer BEQ returncannon LDA $9D ;if lock animation is set (frozen) BNE returncannon ;then don't subtract LDA !freeram_timer DEC A STA !freeram_timer returncannon: RTS