lorom header !currentSprite = $7F0B44 !starAnim = $7F0B45 !player2a = $0DA3;$7F0B46 !player2b = $0DA5;$7F0B47 !player2fa = $0DA7;$7F0B48 !player2fb = $0DA9;$7F0B49 ;!player2preva = $7F0B4A ;!player2prevb = $7F0B4B !breakpoint = $7F0B4C !spriteStatus = $14C8 !spriteYl = $D8 !spriteXl = $E4 !spriteYh = $14D4 !spriteXh = $14E0 !spriteXS = $B6 !spriteYS = $AA !spriteDir = $157C !spriteType = $9E !screenX = $1A !screenY = $1C ;!player2rawa = $0DA3 ;!player2rawb = $0DA5 ;org $0096CB ;JSL Setup org $00A5BF JSL Nullify org $00A2D8 JSL MainHandler org $108000 MainHandler: JSL $00E2BD PHP PHX PHA PHY SEP #$30 ;LDA !player2preva ;EOR #$FF ;AND !player2rawa ;STA !player2fa ;LDA !player2rawa ;STA !player2preva ;LDA !player2prevb ;EOR #$FF ;AND !player2rawb ;STA !player2fb ;LDA !player2rawb ;STA !player2prevb ;LDA !player2rawa ;STA !player2a ;LDA !player2rawb ;STA !player2b LDA $9D BNE + LDA !starAnim INC AND #$1F STA !starAnim + LDA !starAnim AND #$1E TAX LDA Xanim,x ;LDA #$10 STA $00 INX LDA Xanim,x ;LDA #$00 STA $01 DEX LDA !player2fb AND #$20 BEQ + LDA !currentSprite TAX JSR FindPrev BRA ++ .NoSprite LDA #$FF STA !currentSprite JMP .SpriteEnd + LDA !player2fb AND #$10 BEQ ++ LDA !currentSprite TAX JSR FindNext ++ LDA !currentSprite TAX JSR IsValid BCS + JSR FindPrev BCC .NoSprite + LDA $02 TAY PHX TYX LDA Ydisp,x STA $02 PLX LDA !spriteXh,x XBA LDA !spriteXl,x REP #$20 SEC SBC !screenX CLC ADC $00 BMI + CMP #$0100 BCS .NoDisplay BRA ++ + CMP #$FFF0 BCC .NoDisplay ++ SEP #$20 STA $0290 XBA PHA LDA !spriteYh,x XBA LDA !spriteYl,x REP #$20 SEC SBC !screenY SEP #$20 SEC SBC $02 STA $0291 LDA #$1D STA $0292 LDA #$38 STA $0293 LDA #$FC AND $0409 ORA #$01 PLX BMI + AND #$02 + STA $0444 .NoDisplay SEP #$20 LDA !breakpoint LDA $9D BNE .SpriteEnd LDA !currentSprite TAX LDA !spriteType,x TAX LDA SpriteSettings,x ASL TAX REP #$20 LDA ControlCode,x STA $00 SEP #$20 JSR JumpToPtrSub .SpriteEnd LDA !currentSprite BPL + LDA #$FC + STA $0F0E PLY PLA PLX PLP RTL JumpToPtrSub: JMP ($0000) IsValid: INX DEX BMI .Return1 LDA !spriteStatus,x CMP #$08 BEQ .IsValid CMP #$0A BNE .Return1 ; KICKED SPRITES PHX LDA !spriteType,x STA $02 TAX LDA KickSettings,x BMI .Return2 PLX SEC RTS .IsValid ; NORMAL SPRITES PHX LDA !spriteType,x STA $02 TAX LDA SpriteSettings,x BMI .Return2 PLX SEC RTS .Return1 CLC RTS .Return2 PLX CLC RTS FindPrev: LDY #$0B - DEX BPL + TXA CLC ADC #$0C TAX + JSR IsValid BCS + DEY BPL - LDA #$FF STA !currentSprite CLC RTS + TXA STA !currentSprite SEC RTS FindNext: LDY #$0B - INX CPX #$0C BCC + LDX #$00 + JSR IsValid BCS + DEY BPL - LDA #$FF STA !currentSprite CLC RTS + TXA STA !currentSprite SEC RTS ;Setup: ; LDA #$00 ; STA !currentSprite ; STA !starAnim ; ; LDA #$EB ; LDY #$00 ; RTL Nullify: JSL $05BE8A LDA #$00 STA !currentSprite STA !starAnim RTL ;player2a: ;8421 8421 ;BYcS ^v<> Unimplemented: JSR Simple RTS ; Leftover debug code LDA !player2fa AND #$10 BEQ + ;DESTROY LDA #$04 STA !spriteStatus,x + LDA !player2fa AND #$20 BEQ + ;AID LDA #$06 STA !spriteStatus,x + RTS Simple: LDA !currentSprite TAX LDA !player2a AND #$08 BEQ + ;JUMP LDA #$F0 STA !spriteYS,x BRA ++ + LDA !player2a AND #$04 BEQ ++ ;FALL LDA #$10 STA !spriteYS,x ++ LDA !player2a AND #$01 BEQ + ;RIGHT STZ !spriteDir,x BRA ++ + LDA !player2a AND #$02 BEQ ++ ;LEFT LSR STA !spriteDir,x ++ RTS ;player2a: ;8421 8421 ;BYcS ^v<> Chuck: LDA !currentSprite TAX LDA $C2,x ; Chuck sprite state CMP #$02 BCS .return CMP #$01 BEQ .running .sit LDA !player2a AND #$01 BNE .right LDA !player2a AND #$02 BNE .left LDA #$20 ; Keep sitting STA $1540,x BRA .extraButtons .return RTS .left LDA #$01 BRA + .right LDA #$00 + STA !spriteDir,x ASL ASL STA $151C,x LDA #$01 STA $C2,x BRA .runspeed .running LDA !player2a AND #$01 BNE .runright LDA !player2a AND #$02 BNE .runleft LDA #$00 ;sit STA $C2,x LDA #$20 ;sit STA $1540,x BRA .extraButtons .runleft LDA #$01 BRA + .runright LDA #$00 + STA !spriteDir,x ASL ASL STA $151C,x LDA #$05 ; Keep running STA $1540,x .runspeed LDA !player2a AND #$40 BNE .highspeed STZ $187B,x BRA .extraButtons .highspeed LDA #$20 STA $187B,x .extraButtons LDA !player2fa AND #$80 BNE .bpress LDA !player2fb AND #$80 BEQ + ; A LDA $C2,x ;Must sit BNE + LDA $1588,x ;Must be on ground AND #$04 BEQ + LDA #$05 STA $C2,x BRA + .bpress LDA $1588,x AND #$04 BEQ + LDA #$C0 STA !spriteYS,x ;LDA #$06 ;STA $C2,x + RTS Swooper: ;TODO: Sprite state LDA !currentSprite TAX LDA !player2a AND #$08 BEQ + ;JUMP LDA #$F0 STA !spriteYS,x BRA ++ + LDA !player2a AND #$04 BEQ ++ ;FALL LDA #$10 STA !spriteYS,x ++ LDA !player2a AND #$01 BEQ + ;RIGHT STZ !spriteDir,x BRA ++ + LDA !player2a AND #$02 BEQ ++ ;LEFT LSR STA !spriteDir,x ++ RTS Banzai: LDA !currentSprite TAX LDA !player2a AND #$08 BEQ + ;UP LDA !spriteYS,x CMP #$FC BEQ ++ DEC !spriteYS,x BRA ++ + LDA !player2a AND #$04 BEQ ++ ;DOWN LDA !spriteYS,x CMP #$04 BEQ ++ INC !spriteYS,x ++ LDA !player2a AND #$01 BEQ + ;RIGHT LDA !spriteXS,x BMI +++ CMP #$20 BCS ++ +++ INC !spriteXS,x INC !spriteXS,x BRA ++ + LDA !player2a AND #$02 BEQ ++ ;LEFT LDA !spriteXS,x BPL +++ CMP #$E2 BCC ++ +++ DEC !spriteXS,x DEC !spriteXS,x ++ RTS ClimbingRed: LDY #$01 BRA ClimbingAny ClimbingGreen: LDY #$00 ClimbingAny: LDA !currentSprite TAX LDA $1540,x BNE + LDA !player2a AND #$08 BNE .up LDA !player2a AND #$04 BNE .down LDA !player2a AND #$01 BNE .right LDA !player2a AND #$02 BNE .left + RTS .up LDA #$01 JSR .swap LDA #$F8 CPY #$00 BEQ + LDA #$F0 + STA $AA,x RTS .down LDA #$01 JSR .swap LDA #$08 CPY #$00 BEQ + LDA #$10 + STA $AA,x RTS .right LDA #$00 JSR .swap LDA #$08 CPY #$00 BEQ + LDA #$10 + STA $B6,x RTS .left LDA #$00 JSR .swap LDA #$F8 CPY #$00 BEQ + LDA #$F0 + STA $B6,x RTS .swap STA $C2,x LDA $AA,x PHA LDA $B6,x STA $AA,x PLA STA $B6,x RTS SpeedTest: LDA !currentSprite TAX LDA !player2a AND #$08 BEQ + ;UP LDA !spriteYS,x BPL +++ CMP #$F8 BCC ++ +++ DEC !spriteYS,x DEC !spriteYS,x BRA ++ + LDA !player2a AND #$04 BEQ ++ ;DOWN LDA !spriteYS,x BMI +++ CMP #$08 BCS ++ +++ INC !spriteYS,x INC !spriteYS,x ++ LDA !player2a AND #$01 BEQ + ;RIGHT STZ !spriteDir,x LDA !spriteXS,x BMI +++ CMP #$08 BCS ++ +++ INC !spriteXS,x INC !spriteXS,x BRA ++ + LDA !player2a AND #$02 BEQ ++ ;LEFT LSR STA !spriteDir,x LDA !spriteXS,x BPL +++ CMP #$F8 BCC ++ +++ DEC !spriteXS,x DEC !spriteXS,x ++ RTS Koopas: LDA !currentSprite TAX LDA !player2a AND #$08 BEQ + ;;UP;;;;;;; ;;;;;;;;;;; BRA ++ + LDA !player2a AND #$04 BEQ ++ ;;DOWN;;;;; ;;;;;;;;;;; ++ LDA !player2a AND #$01 BEQ + ;;RIGHT;;;; ;;;;;;;;;;; BRA ++ + LDA !player2a AND #$02 BEQ ++ ;;LEFT;;;;; ;;;;;;;;;;; ++ RTS KoopaKicked: LDA !currentSprite TAX LDA !player2a AND #$08 BEQ + ;;UP;;;;;;; ;;;;;;;;;;; BRA ++ + LDA !player2a AND #$04 BEQ ++ ;;DOWN;;;;; ;;;;;;;;;;; ++ LDA !player2a AND #$01 BEQ + ;;RIGHT;;;; ;;;;;;;;;;; BRA ++ + LDA !player2a AND #$02 BEQ ++ ;;LEFT;;;;; ;;;;;;;;;;; ++ RTS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; TEMPLATE: LDA !currentSprite TAX LDA !player2a AND #$08 BEQ + ;;UP;;;;;;; ;;;;;;;;;;; BRA ++ + LDA !player2a AND #$04 BEQ ++ ;;DOWN;;;;; ;;;;;;;;;;; ++ LDA !player2a AND #$01 BEQ + ;;RIGHT;;;; ;;;;;;;;;;; BRA ++ + LDA !player2a AND #$02 BEQ ++ ;;LEFT;;;;; ;;;;;;;;;;; ++ RTS ; 0 - Non-existant ; 1 - Initialization ; 2 - Falling off screen (hit by star, shell, etc) ; 3 - Smushed ; 4 - Spin Jumped ; 5 ; 6 - End of level turn to coin ; 7 - Unused ; 8 - Normal (Bypassed above) ; 9 - Stationary (Carryable, flipped, stunned) ; A - Kicked ; B - Carried ; C - Power up from carrying a sprite past the goal tape ControlCode: dw Unimplemented ;00 - Unimplemented sprites dw Chuck ;01 - Chuck family dw Swooper ;02 - Swooper Bat dw Banzai ;03 - Banzai Bill dw ClimbingGreen ;04 - Green climbing Koopas dw ClimbingRed ;05 - Red climbing Koopas dw SpeedTest ;06 - Test control - Alter X/Y speeds dw Simple ;07 - "Unimplemented" without debug dw Koopas ;08 - Koopa Troopas dw KoopaKicked ;09 - Koopa Troopas (Kicked) SpriteSettings: db $00 ;Green shelless Koopa db $00 ;Red shelless Koopa db $00 ;Blue shelless Koopa db $00 ;Yellow shelless Koopa db $08 ;Green Koopa db $08 ;Red Koopa db $08 ;Blue Koopa db $08 ;Yellow Koopa db $00 ;Green flying Koopa db $00 ;Green bouncing Koopa db $06 ;Red vertical flying Koopa db $06 ;Red horizontal flying Koopa db $00 ;Yellow Koopa with wings db $00 ;Bob-omb db $FF ;Keyhole db $00 ;Goomba db $00 ;Bouncing Goomba db $00 ;Buzzy Beetle db $FF ;Sprite 12 db $00 ;Spiny db $00 ;Spiny falling db $00 ;Horizontal fish db $00 ;Vertical fish db $00 ;Fish from fish generator db $00 ;Surface jumping fish db $FF ;Display Message Box db $00 ;Classic Pirhana Plant db $00 ;Bouncing football db $06 ;Bullet Bill db $00 ;Hopping flame db $00 ;Lakitu db $00 ;Magikoopa db $00 ;Magikoopa's magic db $FF ;Moving coin db $04 ;Green vertical net Koopa db $05 ;Red fast vertical net Koopa db $04 ;Green horizontal net Koopa db $05 ;Red fast horizontal net Koopa db $00 ;Thwomp db $00 ;Thwimp db $06 ;Big Boo db $FF ;Koopa Kid db $00 ;Upside down Piranha Plant db $FF ;Sumo Brother's fire lightning db $FF ;Yoshi egg db $FF ;Baby green Yoshi db $00 ;Spike Top db $FF ;Portable spring board db $00 ;Throwing Dry Bones db $00 ;Bony Beetle db $00 ;Dry Bones db $FF ;Vertical fireball db $FF ;Boss fireball db $FF ;Yoshi db $FF ;Sprite 36 db $00 ;Boo db $00 ;Eerie db $00 ;Wave Eerie db $00 ;Vertical/horizontal Urchin db $00 ;Wall detect Urchin db $00 ;Wall follow Urchin db $00 ;Rip Van Fish db $FF ;POW db $00 ;Para-Goomba db $00 ;Para-Bomb db $FF ;Horizontal Dolphin db $FF ;Horizontal Dolphin2 db $FF ;Vertical Dolphin db $00 ;Torpedo Ted db $FF ;Directional coins db $01 ;Diggin' Chuck db $00 ;Swimming/Jumping fish db $00 ;Diggin' Chuck's rock db $FF ;Pipe end db $FF ;Goal Point Question Sphere db $00 ;Pipe dwelling Lakitu db $FF ;Exploding Block db $00 ;Ground dwelling Monty Mole db $00 ;Ledge dwelling Monty Mole db $00 ;Jumping Pirhana Plant db $00 ;Jumping fire Pirhana Plant db $00 ;Ninji db $FF ;Moving ledge hole db $FF ;Throw block db $FF ;Climbing net door db $FF ;Horizontal Checkerboard platform db $FF ;Horizontal Flying rock platform db $FF ;Vertical Checkerboard platform db $FF ;Vertical Flying rock platform db $FF ;Turn block bridge db $FF ;Horizontal Turn block bridge db $FF ;Brown platform floating in water db $FF ;Checkerboard platform that falls db $FF ;Orange platform floating in water db $FF ;Orange platform db $FF ;Brown platform on a chain db $FF ;Flat green switch palace switch db $FF ;Floating skulls db $FF ;Line-guided brown platform db $FF ;Line-guided checker/brown platform db $FF ;Line-guided rope mechanism db $00 ;Line-guided chainsaw db $00 ;Line-guided upside down chainsaw db $00 ;Line-guided Grinder db $00 ;Line-guided Fuzz Ball db $FF ;Sprite 69 db $FF ;Coin game cloud db $FF ;Left spring board db $FF ;Right spring board db $FF ;Invisible solid block db $00 ;Dino Rhino db $00 ;Dino Torch db $00 ;Pokey db $00 ;Red swooping Super Koopa db $00 ;Yellow swooping Super Koopa db $00 ;Super Koopa db $FF ;Mushroom db $FF ;Flower db $FF ;Star db $FF ;Feather db $FF ;1-UP db $FF ;Growing Vine db $FF ;Firework db $FF ;Goal Point db $FF ;Princess Peach db $FF ;Balloon db $FF ;Flying Red coin db $FF ;Flying Yellow 1-UP db $FF ;Key db $FF ;Changing item db $FF ;Bonus game db $FF ;Left flying question block db $FF ;Flying question block db $FF ;Sprite 85 db $00 ;Wiggler db $FF ;Lakitu's cloud db $FF ;Cage db $FF ;Layer 3 smash db $FF ;Bird from Yoshi's house db $FF ;Puff of smoke from Yoshi's house db $FF ;Exit from side screen db $FF ;Ghost house exit db $FF ;Invisible Warp Hole blocks db $FF ;Scale platforms db $07 ;Large green gas bubble db $01 ;Chargin' Chuck db $01 ;Splitin' Chuck db $01 ;Bouncin' Chuck db $01 ;Whistlin' Chuck db $01 ;Clapin' Chuck db $01 ;Unused Chargin' Chuck? db $01 ;Puntin' Chuck db $01 ;Pitchin' Chuck db $00 ;Volcano Lotus db $00 ;Sumo Brother db $00 ;Hammer Brother db $FF ;Flying blocks db $00 ;Bubble db $00 ;Ball and Chain db $03 ;Banzai Bill db $FF ;Bowser db $FF ;Bowling ball db $00 ;MechaKoopa db $FF ;Grey platform on chain db $00 ;Floating Spike ball db $00 ;Ground-guided Fuzzball/Sparky db $00 ;Ground-guided HotHead db $FF ;Iggy's ball db $00 ;Blargg db $FF ;Renzor db $00 ;Fishbone db $00 ;Rex db $00 ;Moving down and up Wooden Spike db $00 ;Wooden Spike db $00 ;Fishin' Boo db $00 ;Boo Block db $00 ;Reflecting stream of Boo Buddies db $FF ;Creating/Eating block db $00 ;Falling Spike db $FF ;Bowser statue fireball db $00 ;Non-line-guided Grinder db $FF ;Sinking fireball in boss battles db $00 ;Reflecting fireball db $FF ;Upper right carrot Top lift db $FF ;Upper left carrot Top lift db $FF ;Info Box db $FF ;Timed lift db $FF ;Horizontal grey moving castle block db $00 ;Bowser statue db $00 ;Sliding Koopa db $02 ;Swooper Bat db $00 ;Mega Mole db $FF ;Sinking grey platform on lava db $FF ;Flying grey turnblocks db $00 ;Blurp fish db $00 ;Porcu-Puffer db $FF ;Grey platform that falls db $FF ;Big Boo Boss db $FF ;Dark room db $FF ;Invisible mushroom db $FF ;Light switch db $FF ;Bullet Bill shooter db $FF ;Torpedo Launcher db $FF ;Eerie generator db $FF ;Para-Goomba generator db $FF ;Para-Bomb generator db $FF ;Para-Bomb and Para-Goomba generator db $FF ;Left Dolphin generator db $FF ;Right Dolphin generator db $FF ;Jumping fish generator db $FF ;Turn off generator 2 db $FF ;Super Koopa generator db $FF ;Bubble generator db $FF ;Bullet Bill generator db $FF ;Bullet Bill surrounded generator db $FF ;Bullet Bill diagonal generator db $FF ;Fire breath generator db $FF ;Turn off standard generators db $FF ;Green Koopa shell db $FF ;Red Koopa shell db $FF ;Blue Koopa shell db $FF ;Yellow Koopa shell db $FF ;5 wave eeries db $FF ;Always-green shell db $FF ;3 platforms on chains db $FF ;Ghost ceiling db $FF ;CCW Boo Buddies db $FF ;CW Boo Buddies db $FF ;Swooper death bat ceiling db $FF ;Reappearing ghosts db $FF ;Candle flames in background db $FF ;Auto-Scroll Special db $FF ;Auto-Scroll db $FF ;Layer 2 Smash db $FF ;Layer 2 Scroll db $FF ;Sprite EB db $FF ;Sprite EC db $FF ;Layer 2 Falls db $FF ;Sprite EE db $FF ;Layer 2 Scroll S/L db $FF ;Sprite F0 db $FF ;Sprite F1 db $FF ;Layer 2 On/Off Switch controlled db $FF ;Auto-Scroll level db $FF ;Fast BG scroll db $FF ;Layer 2 sink/raise when touched db $FF ;Sprite F6 db $FF ;Sprite F7 db $FF ;Sprite F8 db $FF ;Sprite F9 db $FF ;Sprite FA db $FF ;Sprite FB db $FF ;Sprite FC db $FF ;Sprite FD db $FF ;Sprite FE db $FF ;Sprite FF KickSettings: db $FF ;Green Koopa, no shell. db $FF ;Red Koopa, no shell. db $FF ;Blue Koopa, no shell. db $FF ;Yellow Koopa, no shell. db $09 ;Green Koopa. db $09 ;Red Koopa. db $09 ;Blue Koopa. db $09 ;Yellow Koopa. db $FF ;Green Koopa, flying left. db $FF ;Green bouncing Koopa. db $FF ;Red vertical flying Koopa. db $FF ;Red horizontal flying Koopa. db $FF ;Yellow Koopa with wings. db $FF ;Bob-omb. db $FF ;Keyhole. db $FF ;Goomba. db $FF ;Bouncing Goomba with wings. db $FF ;Buzzy Beetle. db $FF ;Unused? db $FF ;Spiny. db $FF ;Spiny falling. db $FF ;Fish, horizontal. db $FF ;Fish, vertical. db $FF ;Fish from fish generator. db $FF ;Surface jumping fish. db $FF ;Display text from level Message Box #1. db $FF ;Classic Pirhana Plant. db $FF ;Bouncing football in place. db $FF ;Bullet Bill. db $FF ;Hopping flame. db $FF ;Lakitu. db $FF ;Magikoopa. db $FF ;Magikoopa's magic, stationary. db $FF ;Moving coin. db $FF ;Green vertical net Koopa. db $FF ;Red fast vertical net Koopa. db $FF ;Green horizontal net Koopa. db $FF ;Red fast horizontal net Koopa. db $FF ;Thwomp. db $FF ;Thwimp. db $FF ;Big Boo. db $FF ;Koopa Kid. db $FF ;Upside down Piranha Plant. db $FF ;Sumo Brother's fire lightning. db $FF ;Yoshi egg. db $FF ;Baby green Yoshi. db $FF ;Spike Top. db $FF ;Portable spring board. db $FF ;Dry Bones, throws bones. db $FF ;Bony Beetle. db $FF ;Dry Bones, stay on ledge. db $FF ;Fireball, vertical. db $FF ;Boss fireball. db $FF ;Green Yoshi. db $FF ;Unused? db $FF ;Boo. db $FF ;Eerie. db $FF ;Eerie, wave motion. db $FF ;Urchin, fixed vertical/horizontal. db $FF ;Urchin, wall detect v/h. db $FF ;Urchin, wall follow. db $FF ;Rip Van Fish. db $FF ;POW. db $FF ;Para-Goomba. db $FF ;Para-Bomb. db $FF ;Dolphin, horizontal. db $FF ;Dolphin2, horizontal. db $FF ;Dolphin, vertical. db $FF ;Torpedo Ted. db $FF ;Directional coins. db $FF ;Diggin' Chuck. db $FF ;Swimming/Jumping fish, doesn't need water. db $FF ;Diggin' Chuck's rock. db $FF ;Growing/shrinking pipe end. db $FF ;Goal Point Question Sphere. db $FF ;Pipe dwelling Lakitu. db $FF ;Exploding Block. db $FF ;Ground dwelling Monty Mole. db $FF ;Ledge dwelling Monty Mole. db $FF ;Jumping Pirhana Plant. db $FF ;Jumping Pirhana Plant, spit fire. db $FF ;Ninji. db $FF ;Moving ledge hole in ghost house. db $FF ;Unused? db $FF ;Climbing net door. db $FF ;Checkerboard platform, horizontal. db $FF ;Flying rock platform, horizontal. db $FF ;Checkerboard platform, vertical. db $FF ;Flying rock platform, vertical. db $FF ;Turn block bridge, horizontal and vertical. db $FF ;Turn block bridge, horizontal. db $FF ;Brown platform floating in water. db $FF ;Checkerboard platform that falls. db $FF ;Orange platform floating in water. db $FF ;Orange platform, goes on forever. db $FF ;Brown platform on a chain. db $FF ;Flat green switch palace switch. db $FF ;Floating skulls. db $FF ;Brown platform, line-guided. db $FF ;Checker/brown platform, line-guided. db $FF ;Rope mechanism, line-guided. db $FF ;Chainsaw, line-guided. db $FF ;Upside down chainsaw, line-guided. db $FF ;Grinder, line-guided. db $FF ;Fuzz Ball, line-guided. db $FF ;Unused? db $FF ;Coin game cloud. db $FF ;Spring board, left wall. db $FF ;Spring board, right wall. db $FF ;Invisible solid block. db $FF ;Dino Rhino. db $FF ;Dino Torch. db $FF ;Pokey. db $FF ;Super Koopa, red cape, swoop. db $FF ;Super Koopa, yellow cape, swoop. db $FF ;Super Koopa. db $FF ;Mushroom. db $FF ;Flower. db $FF ;Star. db $FF ;Feather. db $FF ;1-UP. db $FF ;Growing Vine. db $FF ;Firework. db $FF ;Goal Point. db $FF ;Princess Peach. db $FF ;Balloon. db $FF ;Flying Red coin, worth 5 coins. db $FF ;Flying Yellow 1-UP. db $FF ;Key. db $FF ;Changing item from a translucent block. db $FF ;Bonus game. db $FF ;Left flying question block. db $FF ;Flying question block. db $FF ;Unused? db $FF ;Wiggler. db $FF ;Lakitu's cloud. db $FF ;Unused? db $FF ;Layer 3 smash. db $FF ;Bird from Yoshi's house. db $FF ;Puff of smoke from Yoshi's house. db $FF ;Fireplace smoke/exit from side screen. db $FF ;Ghost house exit sign and door. db $FF ;Invisible Warp Hole blocks. db $FF ;Scale platforms. db $FF ;Large green gas bubble. db $FF ;Chargin' Chuck. db $FF ;Splitin' Chuck. db $FF ;Bouncin' Chuck. db $FF ;Whistlin' Chuck. db $FF ;Clapin' Chuck. db $FF ;Unused Chargin' Chuck? db $FF ;Puntin' Chuck. db $FF ;Pitchin' Chuck. db $FF ;Volcano Lotus. db $FF ;Sumo Brother. db $FF ;Hammer Brother. db $FF ;Flying blocks for Hammer Brother. db $FF ;Bubble. db $FF ;Ball and Chain. db $FF ;Banzai Bill. db $FF ;Bowser. db $FF ;Bowser's bowling ball. db $FF ;MechaKoopa. db $FF ;Grey platform on chain. db $FF ;Floating Spike ball. db $FF ;Fuzzball/Sparky, ground-guided. db $FF ;HotHead, ground-guided. db $FF ;The ball that Iggy throws. db $FF ;Blargg. db $FF ;Renzor. db $FF ;Fishbone. db $FF ;Rex. db $FF ;Wooden Spike, moving down and up. db $FF ;Wooden Spike. db $FF ;Fishin' Boo. db $FF ;Boo Block. db $FF ;Reflecting stream of Boo Buddies. db $FF ;Creating/Eating block. db $FF ;Falling Spike. db $FF ;Bowser statue fireball. db $FF ;Grinder, non-line-guided. db $FF ;Sinking fireball in boss battles. db $FF ;Reflecting fireball. db $FF ;Carrot Top lift, upper right. db $FF ;Carrot Top lift, upper left. db $FF ;Info Box. db $FF ;Timed lift. db $FF ;Grey moving castle block, horizontal. db $FF ;Bowser statue. db $FF ;Sliding Koopa without a shell. db $FF ;Swooper Bat. db $FF ;Mega Mole. db $FF ;Grey platform on lava, sinks. db $FF ;Flying grey turnblocks. db $FF ;Blurp fish. db $FF ;A Porcu-Puffer fish. db $FF ;Grey platform that falls. db $FF ;Big Boo Boss. db $FF ;Dark room with spot light. db $FF ;Invisible mushroom. db $FF ;Light switch block for dark room. db $FF ;Bullet Bill shooter. db $FF ;Torpedo Launcher. db $FF ;Eerie, generator. db $FF ;Para-Goomba, generator. db $FF ;Para-Bomb, generator. db $FF ;Para-Bomb and Para-Goomba, generator. db $FF ;Dolphin, left, generator. db $FF ;Dolphin, right, generator. db $FF ;Jumping fish, generator. db $FF ;Turn off generator 2 (sprite E5). db $FF ;Super Koopa, generator. db $FF ;Bubble with Goomba and Bob-omb, generator. db $FF ;Bullet Bill, generator. db $FF ;Bullet Bill surrounded, generator. db $FF ;Bullet Bill diagnal, generator. db $FF ;Bowser statue fire breath, generator. db $FF ;Turn off standard generators. db $FF ;Green Koopa shell. db $FF ;Red Koopa shell. db $FF ;Blue Koopa shell. db $FF ;Yellow Koopa shell. db $FF ;Group of 5 eeries, wave motion. db $FF ;Green shell, won't use Special World color. db $FF ;3 platforms on chains. db $FF ;Ghost ceiling. db $FF ;Boo Buddies, counter-clockwise. db $FF ;Boo Buddies, clockwise. db $FF ;Swooper death bat ceiling. db $FF ;Reappearing ghosts, generator 2. db $FF ;Candle flames in background. db $FF ;Auto-Scroll Special. db $FF ;Auto-Scroll. db $FF ;Layer 2 Smash. db $FF ;Layer 2 Scroll. db $FF ;Unused? db $FF ;Unused? db $FF ;Layer 2 Falls. db $FF ;Unused? db $FF ;Layer 2 Scroll S/L. db $FF ;Unused? db $FF ;Unused? db $FF ;Layer 2 On/Off Switch controlled. db $FF ;Auto-Scroll level. db $FF ;Fast BG scroll (use sprite C1 to activate). db $FF ;Layer 2 sink/raise when touched. db $FF ;Unused? db $FF ;Unused? db $FF ;Unused? db $FF ;Unused? db $FF ;Unused? db $FF ;Unused? db $FF ;Unused? db $FF ;Unused? db $FF ;Unused? db $FF ;Unused? Ydisp: db $18 ;Green shelless Koopa db $18 ;Red shelless Koopa db $18 ;Blue shelless Koopa db $18 ;Yellow shelless Koopa db $20 ;Green Koopa db $20 ;Red Koopa db $20 ;Blue Koopa db $20 ;Yellow Koopa db $20 ;Green flying Koopa db $20 ;Green bouncing Koopa db $20 ;Red vertical flying Koopa db $20 ;Red horizontal flying Koopa db $20 ;Yellow Koopa with wings db $18 ;Bob-omb db $18 ;Keyhole db $18 ;Goomba db $18 ;Bouncing Goomba db $18 ;Buzzy Beetle db $18 ;Sprite 12 db $18 ;Spiny db $18 ;Spiny falling db $18 ;Horizontal fish db $18 ;Vertical fish db $18 ;Fish from fish generator db $18 ;Surface jumping fish db $18 ;Display Message Box db $18 ;Classic Pirhana Plant db $18 ;Bouncing football db $18 ;Bullet Bill db $18 ;Hopping flame db $18 ;Lakitu db $18 ;Magikoopa db $18 ;Magikoopa's magic db $18 ;Moving coin db $18 ;Green vertical net Koopa db $18 ;Red fast vertical net Koopa db $18 ;Green horizontal net Koopa db $18 ;Red fast horizontal net Koopa db $18 ;Thwomp db $18 ;Thwimp db $18 ;Big Boo db $18 ;Koopa Kid db $18 ;Upside down Piranha Plant db $18 ;Sumo Brother's fire lightning db $18 ;Yoshi egg db $18 ;Baby green Yoshi db $18 ;Spike Top db $18 ;Portable spring board db $18 ;Throwing Dry Bones db $18 ;Bony Beetle db $18 ;Dry Bones db $18 ;Vertical fireball db $18 ;Boss fireball db $18 ;Yoshi db $18 ;Sprite 36 db $18 ;Boo db $18 ;Eerie db $18 ;Wave Eerie db $18 ;Vertical/horizontal Urchin db $18 ;Wall detect Urchin db $18 ;Wall follow Urchin db $18 ;Rip Van Fish db $18 ;POW db $18 ;Para-Goomba db $18 ;Para-Bomb db $18 ;Horizontal Dolphin db $18 ;Horizontal Dolphin2 db $18 ;Vertical Dolphin db $18 ;Torpedo Ted db $18 ;Directional coins db $18 ;Diggin' Chuck db $18 ;Swimming/Jumping fish db $18 ;Diggin' Chuck's rock db $18 ;Pipe end db $18 ;Goal Point Question Sphere db $18 ;Pipe dwelling Lakitu db $18 ;Exploding Block db $18 ;Ground dwelling Monty Mole db $18 ;Ledge dwelling Monty Mole db $18 ;Jumping Pirhana Plant db $18 ;Jumping fire Pirhana Plant db $18 ;Ninji db $18 ;Moving ledge hole db $18 ;Throw block db $18 ;Climbing net door db $18 ;Horizontal Checkerboard platform db $18 ;Horizontal Flying rock platform db $18 ;Vertical Checkerboard platform db $18 ;Vertical Flying rock platform db $18 ;Turn block bridge db $18 ;Horizontal Turn block bridge db $18 ;Brown platform floating in water db $18 ;Checkerboard platform that falls db $18 ;Orange platform floating in water db $18 ;Orange platform db $18 ;Brown platform on a chain db $18 ;Flat green switch palace switch db $18 ;Floating skulls db $18 ;Line-guided brown platform db $18 ;Line-guided checker/brown platform db $18 ;Line-guided rope mechanism db $18 ;Line-guided chainsaw db $18 ;Line-guided upside down chainsaw db $18 ;Line-guided Grinder db $18 ;Line-guided Fuzz Ball db $18 ;Sprite 69 db $18 ;Coin game cloud db $18 ;Left spring board db $18 ;Right spring board db $18 ;Invisible solid block db $18 ;Dino Rhino db $18 ;Dino Torch db $18 ;Pokey db $18 ;Red swooping Super Koopa db $18 ;Yellow swooping Super Koopa db $18 ;Super Koopa db $18 ;Mushroom db $18 ;Flower db $18 ;Star db $18 ;Feather db $18 ;1-UP db $18 ;Growing Vine db $18 ;Firework db $18 ;Goal Point db $18 ;Princess Peach db $18 ;Balloon db $18 ;Flying Red coin db $18 ;Flying Yellow 1-UP db $18 ;Key db $18 ;Changing item db $18 ;Bonus game db $18 ;Left flying question block db $18 ;Flying question block db $18 ;Sprite 85 db $18 ;Wiggler db $18 ;Lakitu's cloud db $18 ;Cage db $18 ;Layer 3 smash db $18 ;Bird from Yoshi's house db $18 ;Puff of smoke from Yoshi's house db $18 ;Exit from side screen db $18 ;Ghost house exit db $18 ;Invisible Warp Hole blocks db $18 ;Scale platforms db $18 ;Large green gas bubble db $18 ;Chargin' Chuck db $18 ;Splitin' Chuck db $18 ;Bouncin' Chuck db $18 ;Whistlin' Chuck db $18 ;Clapin' Chuck db $18 ;Unused Chargin' Chuck? db $18 ;Puntin' Chuck db $18 ;Pitchin' Chuck db $18 ;Volcano Lotus db $18 ;Sumo Brother db $18 ;Hammer Brother db $18 ;Flying blocks db $18 ;Bubble db $18 ;Ball and Chain db $18 ;Banzai Bill db $18 ;Bowser db $18 ;Bowling ball db $18 ;MechaKoopa db $18 ;Grey platform on chain db $18 ;Floating Spike ball db $18 ;Ground-guided Fuzzball/Sparky db $18 ;Ground-guided HotHead db $18 ;Iggy's ball db $18 ;Blargg db $18 ;Renzor db $18 ;Fishbone db $18 ;Rex db $18 ;Moving down and up Wooden Spike db $18 ;Wooden Spike db $18 ;Fishin' Boo db $18 ;Boo Block db $18 ;Reflecting stream of Boo Buddies db $18 ;Creating/Eating block db $18 ;Falling Spike db $18 ;Bowser statue fireball db $18 ;Non-line-guided Grinder db $18 ;Sinking fireball in boss battles db $18 ;Reflecting fireball db $18 ;Upper right carrot Top lift db $18 ;Upper left carrot Top lift db $18 ;Info Box db $18 ;Timed lift db $18 ;Horizontal grey moving castle block db $18 ;Bowser statue db $18 ;Sliding Koopa db $18 ;Swooper Bat db $18 ;Mega Mole db $18 ;Sinking grey platform on lava db $18 ;Flying grey turnblocks db $18 ;Blurp fish db $18 ;Porcu-Puffer db $18 ;Grey platform that falls db $18 ;Big Boo Boss db $18 ;Dark room db $18 ;Invisible mushroom db $18 ;Light switch db $18 ;Bullet Bill shooter db $18 ;Torpedo Launcher db $18 ;Eerie generator db $18 ;Para-Goomba generator db $18 ;Para-Bomb generator db $18 ;Para-Bomb and Para-Goomba generator db $18 ;Left Dolphin generator db $18 ;Right Dolphin generator db $18 ;Jumping fish generator db $18 ;Turn off generator 2 db $18 ;Super Koopa generator db $18 ;Bubble generator db $18 ;Bullet Bill generator db $18 ;Bullet Bill surrounded generator db $18 ;Bullet Bill diagonal generator db $18 ;Fire breath generator db $18 ;Turn off standard generators db $18 ;Green Koopa shell db $18 ;Red Koopa shell db $18 ;Blue Koopa shell db $18 ;Yellow Koopa shell db $18 ;5 wave eeries db $18 ;Always-green shell db $18 ;3 platforms on chains db $18 ;Ghost ceiling db $18 ;CCW Boo Buddies db $18 ;CW Boo Buddies db $18 ;Swooper death bat ceiling db $18 ;Reappearing ghosts db $18 ;Candle flames in background db $18 ;Auto-Scroll Special db $18 ;Auto-Scroll db $18 ;Layer 2 Smash db $18 ;Layer 2 Scroll db $18 ;Sprite EB db $18 ;Sprite EC db $18 ;Layer 2 Falls db $18 ;Sprite EE db $18 ;Layer 2 Scroll S/L db $18 ;Sprite F0 db $18 ;Sprite F1 db $18 ;Layer 2 On/Off Switch controlled db $18 ;Auto-Scroll level db $18 ;Fast BG scroll db $18 ;Layer 2 sink/raise when touched db $18 ;Sprite F6 db $18 ;Sprite F7 db $18 ;Sprite F8 db $18 ;Sprite F9 db $18 ;Sprite FA db $18 ;Sprite FB db $18 ;Sprite FC db $18 ;Sprite FD db $18 ;Sprite FE db $18 ;Sprite FF Xanim: dw $0004 dw $0006 dw $0008 dw $0009 dw $000A dw $0009 dw $0008 dw $0006 dw $0004 dw $0002 dw $0000 dw $FFFF dw $FFFE dw $FFFF dw $0000 dw $0002 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; SPRITE CHANGES ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;Banzai Bill ;CODE_02D587: 20 E4 D5 JSR.W CODE_02D5E4 ;CODE_02D58A: BD C8 14 LDA.W $14C8,X ;CODE_02D58D: C9 02 CMP.B #$02 ;CODE_02D58F: F0 12 BEQ Return02D5A3 ;CODE_02D591: A5 9D LDA RAM_SpritesLocked ;CODE_02D593: D0 0E BNE Return02D5A3 ;CODE_02D595: 20 25 D0 JSR.W SubOffscreen0Bnk2 ;CODE_02D598: A9 E8 LDA.B #$E8 ;CODE_02D59A: 95 B6 STA RAM_SpriteSpeedX,X ;CODE_02D59C: 20 88 D2 JSR.W UpdateXPosNoGrvty ;CODE_02D59F: 22 DC A7 01 JSL.L MarioSprInteract ;Return02D5A3: 60 RTS ; Return ;20 94 D2 JSR.W UpdateYPosNoGrvty ;Banzai Main org $02D598 JSR $D288 JSR $D294 JSL $01A7DC Bank2Return: RTS ;Banzai Graphics org $02D5E7 JML NewBanzaiGraphics ;Banzai Init org $018390 JSL BanzaiSetSpeed RTS ;Chuck running speed org $02C6D4 JSR Chuckspeed1 org $02C78E JSR Chuckspeed2 org $02C659 JSR Chuckspeed2 org $02FFE2 Chuckspeed1: JML ChuckspeedA Chuckspeed2: JML ChuckspeedB ;Chuck arm (just because it annoys me) org $02CAFA db $4B, $0B org $158000 BanzaiSetSpeed: LDA #$09 STA $1DFC LDA #$E8 STA $B6,X LDA #$00 STA $AA,X RTL NewBanzaiGraphics: LDA $B6,x BPL .right PHX LDX #$0F - LDA $00 CLC ADC.l .BBX,X STA $0300,Y LDA $01 CLC ADC.l .BBY,X STA $0301,Y LDA.l .BBT1,X STA $0302,Y LDA.l .BBP1,X STA $0303,Y INY INY INY INY DEX BPL - PLX LDY #$02 LDA #$0F JML $02B7A7 .right PHX LDX #$0F - LDA $00 CLC ADC.l .BBX,X STA $0300,Y LDA $01 CLC ADC.l .BBY,X STA $0301,Y LDA.l .BBT2,X STA $0302,Y LDA.l .BBP2,X STA $0303,Y INY INY INY INY DEX BPL - PLX LDY #$02 LDA #$0F JML $02B7A7 .BBX db $00,$10,$20,$30 db $00,$10,$20,$30 db $00,$10,$20,$30 db $00,$10,$20,$30 .BBY db $00,$00,$00,$00 db $10,$10,$10,$10 db $20,$20,$20,$20 db $30,$30,$30,$30 .BBT1 db $80,$82,$84,$86 db $A0,$88,$CE,$EE db $C0,$C2,$CE,$EE db $8E,$AE,$84,$86 .BBP1 db $33,$33,$33,$33 db $33,$33,$33,$33 db $33,$33,$33,$33 db $33,$33,$B3,$B3 .BBT2 db $86,$84,$82,$80 db $EE,$CE,$88,$A0 db $EE,$CE,$C2,$C0 db $86,$84,$AE,$8E .BBP2 db $73,$73,$73,$73 db $73,$73,$73,$73 db $73,$73,$73,$73 db $F3,$F3,$73,$73 ChuckspeedA: PHA TXA CMP !currentSprite BEQ + PLA STA $187B,x BRA ++ + PLA ++ JML Bank2Return ChuckspeedB: PHA TXA CMP !currentSprite BEQ + PLA INC $187B,x BRA ++ + PLA ++ JML Bank2Return