// This code changes which bank PLM populations are loaded from and which bank Scoll PLMs read their data from. // Made by P.JBoy, 01/03/2009, for Drewseph's Endless Attack hack based on his Redesign hack of Super Metroid (JU)[!] // Updated 23/10/2012 //-------------------Definitions-------------------- arch snes.cpu ; lorom ; noheader define PLMBank 8F define ScrollBank 8F //-----------------------Code----------------------- // PLM scroll bank org $848B60 db ${ScrollBank} // A PEA // PLM bank org $82EB6C // 3 bytes saved LDX.W $07BB LDA.L $8F0014,x BEQ + - TAX LDA.L ${PLMBank}0000,x BEQ + LDA #$82{PLMBank} JSL $84846A ADC.W #$0006 BRA - + JSL $8FE8A3 JSL $8FE88F LDA.W $0E16 BEQ + LDA.W #$0002 STA.W $0E18 + RTL org $82E8BB // 0 bytes difference LDX.W $07BB LDA.W $0014,x BEQ + - TAX LDA.W $0000,x BEQ + PEA $8F{PLMBank} JSL $84846A ADC.W #$0006 BRA - + JSL $8FE8A3 JSL $8FE88F LDA.W $0E16 BEQ + LDA.W #$0002 STA.W $0E18 + PLB PLP RTL org $82E8EB // 3 bytes saved PHP PHB REP #$30 JSR $E91C BCS + LDA.W $0791 ASL CLC ADC.W #$E68A TAX LDA.L $8F0000,x BEQ + STA.B $12 LDX.W $078D LDA.L $830004,x STA.B $14 LDX.W #$0012 TDC JSL $84846A + PLB PLP RTS org $84846A // 8 bytes saved PHP PHX TXY PHA LDX #$004E - LDA.W $1C37,x BEQ + DEX DEX BPL - + PLB LDA.W $0004,y STA.L $7E1DC7,x LDA.W $0000,y PHA SEP #$20 LDA.W $0002,y PHA LDA.W $0003,y PHK PLB STA.W $4202 LDA.W $07A5 STA.W $4203 PLA REP #$20 AND.W #$00FF CLC ADC.W $4216 ASL STA.W $1C87,x PLA STA.W $1C37,x TAY TDC STA.L $7EDF0C,x LDA.W #$84E6 STA.W $1CD7,x LDA.W $0002,y STA.W $1D27,x LDA.W #$0001 STA.L $7EDE1C,x LDA.W #$8DA0 STA.L $7EDE6C,x STZ.W $1D77,x STX.W $1C27 TYX LDY.W $1C27 JSR ($0000,x) PLB PLA PLP CLC RTL