From 411ac051f3100ceb32b691970d702ab345207d1c Mon Sep 17 00:00:00 2001 From: sporchia Date: Sun, 2 Sep 2018 13:32:14 -0400 Subject: [PATCH] Zarby OW edits --- hooks.asm | 58 ++++ invertedmaps.asm | 851 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 909 insertions(+) mode change 100644 => 100755 hooks.asm create mode 100644 invertedmaps.asm diff --git a/hooks.asm b/hooks.asm old mode 100644 new mode 100755 index de009af..7b3b917 --- a/hooks.asm +++ b/hooks.asm @@ -1923,7 +1923,65 @@ NOP #26 org $02AA87 ; <- 12A87 JSL.l OnOWTransition NOP #36 + ;================================================================================ +;Inverted mode tile map update (executed right after the original tile load) +;-------------------------------------------------------------------------------- +org $02ED51 ; <- 16D51 +JSL.l Overworld_LoadNewTiles +NOP #$02 +;-------------------------------------------------------------------------------- +;Same as above +org $02EC2E ;<- 016C2E +JSL.l Overworld_LoadNewTiles +NOP #$02 +;================================================================================ +;THOSE MIGHT NEED TO BE ON OR OFF WHEN INVERTED MODE IS ON OR OFF :D +;Note it doesn't really matter since if warps are not under rocks they can't appear +;Inverted mode Items HOOKS +org $1BC67A ;Replace a rupee under bush to add a warp on map 80 (top of kak) +db #$2E, #$0B, #$82 + +org $1BC81E ;Replace a heart under bush to add a warp on map 120 (mire) +db #$94, #$1D, #$82 + +org $1BC655 ;Replace a bomb :( under bush to add a warp on map 78 (DM) +db #$4A, #$1D, #$82 + +;MAP 111 NEED TO REMOVE THE HARCODED ROCK IN LW +org $1BC80D +db #$B2, #$0B, #$82 + +;MAP 115 NEED TO REMOVE THE HARCODED ROCK IN LW +;new pointer for map 115 no items to replace +org $1BC3DF +db #$D8, #$D1 + +org $1BD1D8 ;new data for map115 +db #$A8, #$02, #$82, #$FF, #$FF + +org $1BC85A +db #$50, #$0F, #$82 + +;================================================================================ +;NEED TESTING Turtle Rock jump tail, might cause collision glitche with some others blocks +;================================================================================ +;================================================================================ +;================================================================================ +org $0FFEA3 ;271 +db #$00 +org $0FFEB8 ;292 /0x124 +db #$00 +org $0FFEB4 ;288 /0x120 +db #$00 +org $0FFEC4 ;304 /0x130 +db #$00 +org $0FFEB9 ;293 /0x125 +db #$00 +org $0FFEB9 ;293 /0x125 +db #$00 +org $0FFEC9 +db #$29 ;================================================================================ ; Add SFX diff --git a/invertedmaps.asm b/invertedmaps.asm new file mode 100644 index 0000000..43f0580 --- /dev/null +++ b/invertedmaps.asm @@ -0,0 +1,851 @@ +Overworld_LoadNewTiles: +{ + + SEP #$30 + LDA InvertedMode : BEQ .notInverted + PHB + + ; Set the data bank to $7E. + LDA.b #$7E : PHA : PLB + REP #$30 + ; Use it as an index into a jump table. + LDA $8A : CMP #$0080 : !BGE .noData + ASL A : TAX + + JSR (Overworld_NewTilesTable, X) + .noData + PLB + .notInverted + REP #$30 + LDX #$001E : LDA #$0DBE + + RTL +} + + +Overworld_NewTilesTable: +{ +;LW + ;00 01 02 03 04 05 06 07 +dw return, return, return, map003, return, map005, return, return + ;08 09 10 11 12 13 14 15 +dw return, return, return, return, return, return, return, return + ;16 17 18 19 20 21 22 23 +dw map016, return, return, return, map020, return, return, return + ;24 25 26 27 28 29 30 31 +dw return, return, return, map027, return, return, return, return + ;32 33 34 35 36 37 38 39 +dw return, return, return, return, return, return, return, return + ;40 41 42 43 44 45 46 47 +dw return, return, return, return, return, return, return, return + ;48 49 50 51 52 53 54 55 +dw map049, return, map050, map051, return, map053, return, return + ;56 57 58 59 60 61 62 63 +dw return, return, map058, return, return, return, return, return +;DW + ;64 65 66 67 68 69 70 71 +dw return, return, return, map068, return, map078, return, map071 + ;72 73 74 75 76 77 78 79 +dw return, return, return, return, return, return, return, return + ;80 81 82 83 84 85 86 87 +dw map080, return, return, return, map084, return, return, return + ;88 89 90 91 92 93 94 95 +dw return, return, return, map091, return, return, return, return + ;96 97 98 99 100 101 102 103 +dw return, return, return, return, return, return, return, return + ;104 105 106 107 108 109 110 111 +dw return, return, return, return, return, return, return, map111 + ;112 113 114 115 116 117 118 119 +dw map120, return, return, map115, return, map117, return, return + ;120 121 122 123 124 125 126 127 +dw return, return, return, return, return, return, return, return + +return: +RTS + +map003: +{ +LDA #$021A : STA $29B6 +LDA #$01F3 : STA $29B8 +LDA #$00A0 : STA $29BA +LDA #$0104 : STA $29BC +LDA #$00C6 : STA $2A34 +STA $2A38 +STA $2A3A +RTS +} + +map005: +{ +LDA #$0111 : STA $206E +STA $20EC +LDA #$0113 : STA $2070 +STA $2072 +LDA #$0112 : STA $2074 +STA $20EE +STA $216C +LDA #$0116 : STA $20F0 +STA $216E +LDA #$0117 : STA $20F2 +LDA #$0118 : STA $20F4 +LDA #$011C : STA $2170 +LDA #$011D : STA $2172 +LDA #$011E : STA $2174 +LDA #$0130 : STA $21E2 +STA $21F0 +STA $22E2 +STA $22F0 +LDA #$0123 : STA $21EC +LDA #$0124 : STA $21EE +LDA #$0034 : STA $21F2 +LDA #$0126 : STA $21F4 +LDA #$0135 : STA $2262 +STA $2270 +STA $2362 +STA $2370 +LDA #$0136 : STA $2264 +STA $2266 +STA $226C +STA $226E +LDA #$0137 : STA $2268 +STA $226A +LDA #$013C : STA $22E4 +STA $22E6 +STA $22EC +STA $22EE +LDA #$013D : STA $22E8 +STA $22EA +LDA #$0144 : STA $2364 +LDA #$0145 : STA $2366 +LDA #$0146 : STA $2368 +LDA #$0147 : STA $236A +LDA #$01B3 : STA $236C +LDA #$01B4 : STA $236E +LDA #$0139 : STA $2970 +STA $2C6C +LDA #$014B : STA $2972 +STA $2C6E +LDA #$016B : STA $29F0 +STA $2CEC +LDA #$0182 : STA $29F2 +STA $2CEE + +.map014 +LDA #$0034 : STA $3D4A + +RTS +} + +map016: +{ +LDA #$0034 : STA $2B2E +RTS +} + +map020: +{ +LDA #$02F1 : STA $2422 +LDA #$02F2 : STA $2424 +LDA #$0184 : STA $24A2 +STA $2522 +LDA #$0185 : STA $24A4 +STA $2524 +RTS +} + +map027: ;Castle map +{ +LDA #$04BA : STA $2CAC +STA $2CAE +STA $2DAC +STA $2DAE +STA $2EAC +STA $2EAE +STA $2FAC +STA $2FAE +LDA #$04BB : STA $2D2C +STA $2D2E +STA $2E2C +STA $2E2E +STA $2F2C +STA $2F2E +LDA #$04BB : STA $302C +STA $302E +RTS +} + +map049: +{ +LDA #$017E : STA $2050 +STA $20CE +LDA #$00D1 : STA $2052 +STA $2054 +STA $2056 +STA $2058 +STA $205A +STA $205C +STA $205E +STA $21E6 +STA $21E8 +STA $21EA +STA $21EC +STA $21EE +LDA #$00D2 : STA $2060 +STA $20E2 +STA $2164 +LDA #$0183 : STA $20D0 +STA $214E +LDA #$00C9 : STA $20D2 +STA $20D4 +STA $20D6 +STA $20D8 +STA $20DA +STA $20DC +STA $20DE +STA $2152 +STA $2154 +STA $2156 +STA $2158 +STA $215A +STA $215C +STA $215E +STA $2266 +STA $2268 +STA $226A +STA $226C +STA $226E +STA $22CC +LDA #$00D0 : STA $20E0 +STA $2162 +STA $21E4 +LDA #$0153 : STA $2150 +STA $21CE +STA $21D0 +STA $2250 +STA $22CE +LDA #$00C8 : STA $2160 +STA $21E2 +STA $2264 +STA $28DA +STA $295C +LDA #$00DC : STA $21D2 +STA $21D4 +STA $21D6 +STA $21D8 +STA $21DA +STA $21DC +STA $21DE +STA $224C +LDA #$00CA : STA $21E0 +STA $2262 +STA $285A +STA $28DC +LDA #$0178 : STA $224E +LDA #$00E3 : STA $2252 +STA $2254 +LDA #$0186 : STA $22D0 +STA $234E +LDA #$0034 : STA $22D2 +STA $22D4 +STA $22D6 +STA $2350 +STA $2352 +STA $2354 +STA $2356 +STA $23D0 +STA $23D2 +STA $23D4 +STA $23D6 +STA $2452 +STA $2454 +STA $2456 +STA $2458 +STA $24D4 +STA $24D6 +STA $2554 +STA $2556 +STA $25D4 +STA $25D6 +STA $2656 +LDA #$00D3 : STA $22E2 +LDA #$0302 : STA $22E4 +LDA #$00CC : STA $22E6 +STA $22E8 +STA $22EA +STA $22EC +STA $22EE +STA $234C +LDA #$00CE : STA $2362 +STA $23E2 +STA $25D8 +STA $2658 +STA $26D8 +STA $2758 +LDA #$00C5 : STA $2364 +STA $23E4 +STA $25DC +STA $265C +STA $26DC +STA $275C +LDA #$06AB : STA $2366 +STA $23E6 +STA $2466 +STA $24E4 +STA $24E6 +STA $2760 +LDA #$0759 : STA $23C8 +STA $244A +STA $24CC +STA $254E +STA $26D0 +STA $2752 +STA $27D4 +LDA #$0757 : STA $23CA +STA $244C +STA $24CE +STA $2550 +STA $26D2 +STA $2754 +LDA #$01FF : STA $23CC +STA $244E +STA $24D0 +STA $2652 +STA $26D4 +STA $2756 +LDA #$017C : STA $23CE +STA $2450 +STA $24D2 +STA $2654 +STA $26D6 +LDA #$015C : STA $23E0 +LDA #$0100 : STA $245A +STA $24D8 +LDA #$01C2 : STA $245C +LDA #$0218 : STA $245E +LDA #$0162 : STA $2460 +LDA #$0106 : STA $2462 +STA $24E0 +STA $255C +LDA #$0107 : STA $2464 +STA $24E2 +LDA #$0104 : STA $24DA +STA $2558 +LDA #$01D4 : STA $24DC +LDA #$0219 : STA $24DE +LDA #$0179 : STA $2552 +STA $25D2 +LDA #$0105 : STA $255A +LDA #$0166 : STA $255E +LDA #$0766 : STA $2560 +LDA #$06B4 : STA $2562 +STA $2564 +STA $2566 +STA $2568 +STA $256A +STA $256C +STA $256E +LDA #$06E5 : STA $25D0 +STA $2650 +LDA #$00C4 : STA $25DA +STA $265A +STA $26DA +STA $275A +LDA #$0171 : STA $25DE +LDA #$0165 : STA $25E4 +STA $25E6 +STA $25E8 +STA $25EA +STA $25EC +STA $25EE +LDA #$06E4 : STA $27D2 +STA $2852 +STA $2854 +STA $2856 +STA $28D4 +STA $28D6 +STA $2956 +STA $2958 +STA $29D8 +STA $29DA +LDA #$06E1 : STA $27D6 +LDA #$02FD : STA $27D8 +STA $2858 +LDA #$00CF : STA $27DA +LDA #$06E7 : STA $28D8 +STA $295A +STA $29DC + +LDA #$0769 : STA $38F8 +LDA #$06E1 : STA $38FA +STA $38FC +STA $38FE +LDA #$06E3 : STA $3978 +LDA #$02E5 : STA $397A +STA $397E +LDA #$02EC : STA $397C +LDA #$02F0 : STA $39F8 +LDA #$02F3 : STA $39FA +STA $39FC +STA $39FE + + +.map056 +LDA #$0034 : STA $3D94 + +RTS +} + +map050: +{ +LDA #$01D5 : STA $2486 +LDA #$0165 : STA $2506 +LDA #$0166 : STA $2508 +STA $258A +LDA #$00C6 : STA $2586 +STA $2608 +STA $2688 +STA $2708 +STA $2788 +STA $2806 +STA $2808 +LDA #$0171 : STA $2588 +LDA #$021C : STA $260A +STA $268A +STA $270A +STA $278A +LDA #$0034 : STA $270E +STA $278E +STA $2790 +STA $280E +STA $2810 +STA $2812 +STA $2814 +STA $2816 +STA $2818 +STA $281A +STA $281C +STA $288E +STA $2890 +STA $2892 +STA $2894 +STA $2896 +STA $2898 +STA $289A +STA $289C +STA $289E +STA $290E +STA $2910 +STA $2912 +STA $2918 +STA $291A +STA $291C +STA $291E +STA $2920 +STA $298C +STA $298E +STA $2990 +STA $2992 +STA $2998 +STA $299A +STA $299C +STA $299E +STA $29A0 +STA $2A06 +STA $2A08 +STA $2A0A +STA $2A0C +STA $2A0E +STA $2A10 +STA $2A12 +STA $2A14 +STA $2A16 +STA $2A18 +STA $2A1A +STA $2A1C +STA $2A1E +STA $2A84 +STA $2A86 +STA $2A88 +STA $2A8A +STA $2A8C +STA $2A8E +STA $2A90 +STA $2A92 +STA $2A94 +STA $2A96 +STA $2A98 +STA $2A9A +STA $2A9C +STA $2B04 +STA $2B06 +STA $2B08 +STA $2B0A +STA $2B0C +STA $2B0E +STA $2B10 +STA $2B12 +STA $2B14 +STA $2B16 +STA $2B18 +STA $2B1A +STA $2B84 +STA $2B86 +STA $2B88 +STA $2B8A +STA $2B8C +STA $2B8E +STA $2B90 +STA $2B92 +STA $2B94 +STA $2B96 +STA $2B98 +STA $2B9A +STA $2C04 +STA $2C06 +STA $2C08 +STA $2C0A +STA $2C0C +STA $2C0E +STA $2C10 +STA $2C12 +STA $2C14 +STA $2C16 +STA $2C18 +STA $2C1A +STA $2C86 +STA $2C88 +STA $2C8A +STA $2C8C +STA $2C8E +STA $2C90 +STA $2C92 +STA $2C94 +STA $2C96 +STA $2C98 +STA $2D08 +STA $2D0A +STA $2D0C +STA $2D0E +STA $2D10 +STA $2D12 +STA $2D14 +STA $2D16 +STA $2D8A +STA $2D8C +STA $2D8E +STA $2D90 +STA $2D92 +STA $2D94 +LDA #$016A : STA $278C +STA $280C +STA $2A82 +STA $2B02 +STA $2B82 +STA $2C02 +STA $2C82 +LDA #$01FA : STA $288C +LDA #$0186 : STA $290C +STA $298A +STA $2A04 +LDA #$0036 : STA $2914 +STA $2916 +STA $2994 +STA $2996 +LDA #$00E4 : STA $2986 +LDA #$00E5 : STA $2988 +LDA #$0100 : STA $29A2 +LDA #$015C : STA $2A20 +STA $2A9E +STA $2B1C +STA $2C9A +STA $2D18 +STA $2D96 +LDA #$0104 : STA $2A22 +LDA #$01D4 : STA $2A24 +LDA #$0162 : STA $2AA0 +STA $2B1E +STA $2B9C +STA $2D1A +STA $2D98 +LDA #$00CE : STA $2C1C +STA $2C9C +LDA #$0160 : STA $2C84 +STA $2D06 +STA $2D88 +LDA #$0167 : STA $2D04 +STA $2D86 +LDA #$0172 : STA $2E08 +LDA #$015E : STA $2E0A +STA $2E0C +STA $2E0E +STA $2E10 +STA $2E12 +STA $2E14 +LDA #$0174 : STA $2E16 +RTS +} + +map051: +{ +LDA #$037D : STA $22A8 +RTS +} + +map053: +{ +LDA #$02F1 : STA $2BB0 +LDA #$02F2 : STA $2BB2 +LDA #$0184 : STA $2C30 +LDA #$0185 : STA $2C32 +LDA #$0392 : STA $2CB0 +LDA #$0393 : STA $2CB2 +LDA #$0394 : STA $2D30 +LDA #$0395 : STA $2D32 +LDA #$0034 : STA $2F56 + +RTS +} + +map058: +{ +LDA #$0774 : STA $2800 +LDA #$06E1 : STA $2802 +LDA #$0757 : STA $2804 +STA $2886 +LDA #$0779 : STA $2880 +LDA #$02EC : STA $2882 +LDA #$0759 : STA $2884 +STA $2906 +LDA #$02E5 : STA $2900 +STA $2902 +STA $2904 +LDA #$076A : STA $2908 +LDA #$02F3 : STA $2980 +STA $2982 +LDA #$02F1 : STA $2984 +LDA #$02F2 : STA $2986 +LDA #$038A : STA $2988 +LDA #$0184 : STA $2A04 +STA $2A84 +STA $2B04 +STA $2B84 +LDA #$0185 : STA $2A06 +STA $2A86 +STA $2B06 +STA $2B86 + +RTS +} + +map068: +{ +LDA #$0E96 : STA $235E +STA $23DE +STA $245E +STA $24DE +STA $255E +LDA #$0E97 : STA $2360 +STA $23E0 +STA $2460 +STA $24E0 +STA $2560 +LDA #$0E94 : STA $25DE +LDA #$0E95 : STA $25E0 +LDA #$0180 : STA $275E +LDA #$0181 : STA $2760 +LDA #$0184 : STA $27DE +STA $285E +LDA #$0185 : STA $27E0 +STA $2860 +LDA #$0212 : STA $2BE0 + +RTS +} + +map071: +{ +LDA #$0398 : STA $25A0 +LDA #$0522 : STA $25A2 +LDA #$0125 : STA $2620 +LDA #$0126 : STA $2622 +LDA #$0239 : STA $269E +STA $26A4 + +RTS +} + +map078: +{ +LDA #$0239 : STA $3D4A +RTS +} + +map080: +{ +LDA #$020F : STA $2B2E +RTS +} + +map084: +{ +LDA #$02F3 : STA $2422 +STA $2424 +LDA #$00C9 : STA $24A2 +STA $24A4 +LDA #$00E3 : STA $2522 +STA $2524 +RTS +} + +map091: ;Pyramid +{ +LDA #$0323 : STA $39B6 +LDA #$0324 : STA $39B8 +STA $39BA +STA $39BC +STA $39BE +LDA #$02FE : STA $3A34 +LDA #$02FF : STA $3A36 +LDA #$0326 : STA $3A38 +STA $3A3A +STA $3A3C +STA $3A3E +LDA #$039D : STA $3AB2 +LDA #$0303 : STA $3AB4 +LDA #$0232 : STA $3AB6 +STA $3B34 +LDA #$0233 : STA $3AB8 +STA $3ABA +STA $3ABC +STA $3ABE +LDA #$03A2 : STA $3B32 +LDA #$0235 : STA $3B36 +STA $3BB4 +LDA #$046A : STA $3B38 +LDA #$0333 : STA $3B3A +STA $3B3C +STA $3B3E +LDA #$0034 : STA $3BB6 +STA $3BBA +STA $3BBC +STA $3C3A +STA $3C3C +STA $3C3E + +LDA #$00F2 : STA $3BB8 +LDA #$0108 : STA $3C38 + + +;Warp Tile agah defeated +LDA #$0034 : STA $3BBE ;Tile when no warp +LDA $7EF3C5 : AND #$00FF : CMP #$0003 : BNE .agahnimAlive +LDA #$0212 : STA $3BBE ;warp +.agahnimAlive + + +LDA #$0324 : STA $39C0 +STA $39C2 +STA $39C4 +LDA #$0325 : STA $39C6 +LDA #$02D5 : STA $39C8 +STA $39D2 +LDA #$02CC : STA $39CC +STA $39D4 +LDA #$0326 : STA $3A40 +STA $3A42 +STA $3A44 +LDA #$0327 : STA $3A46 +LDA #$02F7 : STA $3A48 +LDA #$02E3 : STA $3A4C +STA $3A4E +LDA #$0233 : STA $3AC0 +STA $3AC2 +STA $3AC4 +LDA #$0234 : STA $3AC6 +STA $3B48 +LDA #$02F6 : STA $3AC8 +LDA #$0396 : STA $3ACA +LDA #$0333 : STA $3B40 +STA $3B42 +LDA #$03AA : STA $3B44 +LDA #$03A3 : STA $3B46 +STA $3BC8 +LDA #$0397 : STA $3B4A +LDA #$0034 : STA $3BC0 +STA $3BC2 +STA $3BC6 +STA $3C40 +STA $3C42 +LDA #$029C : STA $3BC4 +LDA #$010A : STA $3C44 +LDA #$010B : STA $3C46 +STA $3C48 +STA $3C4A +STA $3C4C +STA $3C4E +STA $3C50 +STA $3C52 +STA $3C54 +STA $3C56 +STA $3C58 +STA $3C5A +STA $3C5C +STA $3C5E +STA $3C60 +STA $3C62 +STA $3C64 +STA $3C66 + +RTS +} + +map111: +{ +LDA #$020F : STA $2BB2 +RTS +} + +map115: +{ +LDA #$020F : STA $22A8 +RTS +} + +map120: +{ +LDA #$0239 : STA $3D94 +RTS +} + +map117: +{ +;118 +LDA #$0239 : STA $2F50 +LDA #$0BA3 : STA $2F52 +STA $2FCE +STA $2FD0 + +;126 + +LDA #$0BA3 : STA $3054 +STA $3056 +STA $3058 +STA $305A +STA $3254 +STA $3256 +STA $3258 +STA $325A +LDA #$0BAC : STA $30D4 +LDA #$0BAD : STA $30D6 +STA $3156 +STA $31D6 +LDA #$0BA9 : STA $30D8 +STA $3158 +STA $31D8 +LDA #$0BAA : STA $30DA +LDA #$0BC5 : STA $3154 +LDA #$0BC8 : STA $315A +LDA #$0BCA : STA $31D4 +LDA #$0BCD : STA $31DA +RTS +} \ No newline at end of file