Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- lorom
- !Check = $5C
- if read1($00FFD5) == $23
- !SA1 = 1
- sa1rom
- else
- !SA1 = 0
- endif
- if !SA1
- !base1 = $3000
- !base2 = $6000
- !E4 = $322C
- !14E0 = $326E
- else
- !base1 = $0000
- !base2 = $0000
- !E4 = $E4
- !14E0 = $14E0
- endif
- org $008E9A ;status bar routine hijack, run every frame
- autoclean JSL MainCode
- org $00E9A1
- autoclean JML VertDisablewall
- org $03B66E
- autoclean JSL Marionox ;;;;
- org $03B6BB
- autoclean JSL Spritanox ;;;;
- freedata ; this one doesn't change the data bank register, so it uses the RAM mirrors from another bank, so I might as well toss it into banks 40+
- Marionox:
- ADC #$00
- PHA
- LDA $5B
- AND !Check
- AND #$01
- BEQ .horz
- PLA
- AND #$01
- STA $08
- RTL
- .horz
- PLA
- STA $08
- RTL
- Spritanox:
- ADC $0F
- PHA
- LDA $5B
- AND !Check
- AND #$01
- BEQ .horz
- PLA
- AND #$01
- STA $0A
- RTL
- .horz
- PLA
- STA $0A
- RTL
- MainCode:
- STA $00
- STZ $01
- LDA $5B
- AND !Check
- AND #$01
- BEQ Return
- REP #$20
- LDA #$0020
- STA $1A
- ;BRA SkipSpriteRun
- ;LDA $1337
- PHX
- SEP #$20
- LDX #$00
- SpriteLoop:
- LDA !14E0,x
- XBA
- LDA !E4,x
- REP #$20
- CMP #$0010
- BCS NoSpriteWrapL
- LDA #$0120
- BRA EndSprCycle
- NoSpriteWrapL:
- CMP #$0121
- BCC EndSprCycle
- LDA #$0010
- EndSprCycle:
- SEP #$20
- STA !E4,x
- XBA
- STA !14E0,x
- INX
- CPX #$0C
- BNE SpriteLoop
- LDX #$00
- ExtSpriteLoop:
- LDA $1733+!base2,x
- XBA
- LDA $171F+!base2,x
- REP #$20
- CMP #$0022
- BCS NoExtSpriteWrapL
- LDA #$0110
- BRA EndExtSprCycle
- NoExtSpriteWrapL:
- CMP #$0111
- BCC EndExtSprCycle
- LDA #$0023
- EndExtSprCycle:
- SEP #$20
- STA $171F+!base2,x
- XBA
- STA $1733+!base2,x
- INX
- CPX #$0B
- BNE ExtSpriteLoop
- REP #$20
- PLX
- SkipSpriteRun:
- LDA $94
- CMP #$0010
- BCS NoWrapL
- LDA #$0120
- STA $94
- SEP #$20
- RTL
- NoWrapL:
- CMP #$0121
- BCC Return
- LDA #$0010
- STA $94
- Return:
- SEP #$20
- RTL
- VertDisablewall:
- LDA $5B
- AND !Check
- AND #$01
- BNE DoNoWrap
- LDA $7E
- CMP #$F0
- JML $00E9A5
- DoNoWrap:
- JML $00E9FB
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement