Merge pull request #81 from KatDevsGames/asar

Make existing code compatible with asar
This commit is contained in:
KatDevsGames
2020-04-21 22:56:27 -04:00
committed by GitHub
15 changed files with 70 additions and 65 deletions

View File

@@ -635,7 +635,7 @@ Messaging_Text:
org $0FFD94
Overworld_TileAttr:
org $1BC97C:
org $1BC97C
Overworld_DrawPersistentMap16:
org $1BED03

View File

@@ -229,19 +229,19 @@ db 1 ; n is 2
db 32 ; n is 2
.initial_sums
;dd 6*$9e3779b9 ; n > 52
;dd 7*$9e3779b9 ; n is 27 to 52
;dd 8*$9e3779b9 ; n is 18 to 26
;dd 9*$9e3779b9 ; n is 14 to 17
;dd 10*$9e3779b9 ; n is 11 to 13
;dd 11*$9e3779b9 ; n is 9 to 10
;dd 12*$9e3779b9 ; n is 8
;dd 13*$9e3779b9 ; n is 7
;dd 14*$9e3779b9 ; n is 6
;dd 16*$9e3779b9 ; n is 5
;dd 19*$9e3779b9 ; n is 4
;dd 23*$9e3779b9 ; n is 3
dd 32*$9e3779b9 ; n is 2
;dd (6*$9e3779b9)&$ffffffff ; n > 52
;dd (7*$9e3779b9)&$ffffffff ; n is 27 to 52
;dd (8*$9e3779b9)&$ffffffff ; n is 18 to 26
;dd (9*$9e3779b9)&$ffffffff ; n is 14 to 17
;dd (10*$9e3779b9)&$ffffffff ; n is 11 to 13
;dd (11*$9e3779b9)&$ffffffff ; n is 9 to 10
;dd (12*$9e3779b9)&$ffffffff ; n is 8
;dd (13*$9e3779b9)&$ffffffff ; n is 7
;dd (14*$9e3779b9)&$ffffffff ; n is 6
;dd (16*$9e3779b9)&$ffffffff ; n is 5
;dd (19*$9e3779b9)&$ffffffff ; n is 4
;dd (23*$9e3779b9)&$ffffffff ; n is 3
dd (32*$9e3779b9)&$ffffffff ; n is 2
;void btea(uint32_t *v, int n, uint32_t const key[4]) {
; uint32_t y, z, sum;

View File

@@ -265,7 +265,7 @@ DialogItemReceive:
LDA.w #$FFFF
BRA .done
+
LDA Ancilla_ReceiveItem_item_messages, Y
LDA.w Ancilla_ReceiveItem_item_messages, Y
.done
CMP.w #$FFFF
RTL

View File

@@ -22,7 +22,7 @@ SpawnHauntedGroveItem:
LDA.b #$FF : STA $0B58, Y
LDA.b #$30 : STA $0F10, Y
LDA $22 : !ADD .x_offsets, X
LDA $22 : !ADD.l .x_offsets, X
AND.b #$F0 : STA $0D10, Y
LDA $23 : ADC.b #$00 : STA $0D30, Y

View File

@@ -1141,14 +1141,14 @@ SpawnShovelItem:
LDX.b #$00
LDA $2F : CMP.b #$04 : BEQ + : INX : +
LDA .x_speeds, X : STA $0D50, Y
LDA.l .x_speeds, X : STA $0D50, Y
LDA.b #$00 : STA $0D40, Y
LDA.b #$18 : STA $0F80, Y
LDA.b #$FF : STA $0B58, Y
LDA.b #$30 : STA $0F10, Y
LDA $22 : !ADD .x_offsets, X
LDA $22 : !ADD.l .x_offsets, X
AND.b #$F0 : STA $0D10, Y
LDA $23 : ADC.b #$00 : STA $0D30, Y

View File

@@ -206,16 +206,16 @@ MirrorBonk:
REP #$30
LDX #$0000
.loop
LDA .bonkRectanglesTable, X ;Load X1
LDA.l .bonkRectanglesTable, X ;Load X1
CMP $22 : !BGE ++
;IF X > X1
LDA .bonkRectanglesTable+2, X ; Load X2
LDA.l .bonkRectanglesTable+2, X ; Load X2
CMP $22 : !BLT ++
;IF X < X2
LDA .bonkRectanglesTable+4, X ;Load Y1
LDA.l .bonkRectanglesTable+4, X ;Load Y1
CMP $20 : !BGE ++
;IF Y > Y1
LDA .bonkRectanglesTable+6, X ; Load Y2
LDA.l .bonkRectanglesTable+6, X ; Load Y2
CMP $20 : !BLT ++
;IF Y < Y2
;Bonk Here

View File

@@ -90,7 +90,7 @@ Password_Main:
+
LDA $F4 : ORA $F6 : AND.b #$C0 : BEQ + ; face button
LDX !PASSWORD_SELECTION_POSITION
LDA .selectionValues, X : BPL ++
LDA.l .selectionValues, X : BPL ++
CMP #$F0 : BNE +++
INC $11
BRA .endOfButtonChecks
@@ -285,23 +285,23 @@ PasswordEraseOldCursors:
;Code Cursor
LDA !PASSWORD_CODE_POSITION : AND.w #$00FF : ASL : TAX
LDA .code_offsets, X
LDA.l .code_offsets, X
!ADD.w #$20*!PASSWORD_DISPLAY_START_Y+!PASSWORD_DISPLAY_START_X+$6000
XBA ; because big endian is needed
STA $1002+Password_StripeImageTemplate_CodeCursorErase-Password_StripeImageTemplate
STA.l $1002+Password_StripeImageTemplate_CodeCursorErase-Password_StripeImageTemplate
;selection cursor
LDA !PASSWORD_SELECTION_POSITION : AND.w #$00FF : ASL : TAX
LDA .selection_offsets, X
LDA.l .selection_offsets, X
!ADD.w #$20*!PASSWORD_INPUT_START_Y+!PASSWORD_INPUT_START_X+$6000
XBA ; because big endian is needed
STA $1002+Password_StripeImageTemplate_SelectionCursorErase-Password_StripeImageTemplate
STA.l $1002+Password_StripeImageTemplate_SelectionCursorErase-Password_StripeImageTemplate
XBA : !ADD.w #$0020 : XBA
STA $1002+$0C+Password_StripeImageTemplate_SelectionCursorErase-Password_StripeImageTemplate
STA.l $1002+$0C+Password_StripeImageTemplate_SelectionCursorErase-Password_StripeImageTemplate
XBA : !ADD.w #$0003 : XBA
STA $1002+$14+Password_StripeImageTemplate_SelectionCursorErase-Password_StripeImageTemplate
STA.l $1002+$14+Password_StripeImageTemplate_SelectionCursorErase-Password_StripeImageTemplate
XBA : !ADD.w #$0040-$0003 : XBA
STA $1002+$1C+Password_StripeImageTemplate_SelectionCursorErase-Password_StripeImageTemplate
STA.l $1002+$1C+Password_StripeImageTemplate_SelectionCursorErase-Password_StripeImageTemplate
SEP #$20 ; restore 8-bit accumulator
RTS
@@ -318,23 +318,23 @@ PasswordSetNewCursors:
REP #$20 ; set 16-bit accumulator
;Code Cursor
LDA !PASSWORD_CODE_POSITION : AND.w #$00FF : ASL : TAX
LDA PasswordEraseOldCursors_code_offsets, X
LDA.l PasswordEraseOldCursors_code_offsets, X
!ADD.w #$20*!PASSWORD_DISPLAY_START_Y+!PASSWORD_DISPLAY_START_X+$6000
XBA ; because big endian is needed
STA $1002+Password_StripeImageTemplate_CodeCursorDraw-Password_StripeImageTemplate
STA.l $1002+Password_StripeImageTemplate_CodeCursorDraw-Password_StripeImageTemplate
;Selection cursor
LDA !PASSWORD_SELECTION_POSITION : AND.w #$00FF : ASL : TAX
LDA PasswordEraseOldCursors_selection_offsets, X
LDA.l PasswordEraseOldCursors_selection_offsets, X
!ADD.w #$20*!PASSWORD_INPUT_START_Y+!PASSWORD_INPUT_START_X+$6000
XBA ; because big endian is needed
STA $1002+Password_StripeImageTemplate_SelectionCursorDraw-Password_StripeImageTemplate
STA.l $1002+Password_StripeImageTemplate_SelectionCursorDraw-Password_StripeImageTemplate
XBA : !ADD.w #$0020 : XBA
STA $1002+$0C+Password_StripeImageTemplate_SelectionCursorDraw-Password_StripeImageTemplate
STA.l $1002+$0C+Password_StripeImageTemplate_SelectionCursorDraw-Password_StripeImageTemplate
XBA : !ADD.w #$0003 : XBA
STA $1002+$14+Password_StripeImageTemplate_SelectionCursorDraw-Password_StripeImageTemplate
STA.l $1002+$14+Password_StripeImageTemplate_SelectionCursorDraw-Password_StripeImageTemplate
XBA : !ADD.w #$0040-$0003 : XBA
STA $1002+$1C+Password_StripeImageTemplate_SelectionCursorDraw-Password_StripeImageTemplate
STA.l $1002+$1C+Password_StripeImageTemplate_SelectionCursorDraw-Password_StripeImageTemplate
SEP #$20 ; restore 8-bit accumulator
RTS

View File

@@ -462,15 +462,15 @@ DrawPendantCrystalDiagram:
REP #$30 ; Set 16-bit accumulator & index registers
LDX.w #$0000 ; Paint entire box black & draw empty pendants and crystals
-
LDA .row0, X : STA $12EA, X
LDA .row1, X : STA $132A, X
LDA .row2, X : STA $136A, X
LDA .row3, X : STA $13AA, X
LDA .row4, X : STA $13EA, X
LDA .row5, X : STA $142A, X
LDA .row6, X : STA $146A, X
LDA .row7, X : STA $14AA, X
LDA .row8, X : STA $14EA, X
LDA.l .row0, X : STA $12EA, X
LDA.l .row1, X : STA $132A, X
LDA.l .row2, X : STA $136A, X
LDA.l .row3, X : STA $13AA, X
LDA.l .row4, X : STA $13EA, X
LDA.l .row5, X : STA $142A, X
LDA.l .row6, X : STA $146A, X
LDA.l .row7, X : STA $14AA, X
LDA.l .row8, X : STA $14EA, X
INX #2 : CPX.w #$0014 : BCC -
;pendants

View File

@@ -114,10 +114,10 @@ InitRNGPointerTable:
REP #$30 ; set 16-bit accumulator & index registers
LDX.w #$0000
-
LDA .rngDefaults, X : STA !RNG_POINTERS, X : INX #2
LDA .rngDefaults, X : STA !RNG_POINTERS, X : INX #2
LDA .rngDefaults, X : STA !RNG_POINTERS, X : INX #2
LDA .rngDefaults, X : STA !RNG_POINTERS, X : INX #2
LDA.l .rngDefaults, X : STA !RNG_POINTERS, X : INX #2
LDA.l .rngDefaults, X : STA !RNG_POINTERS, X : INX #2
LDA.l .rngDefaults, X : STA !RNG_POINTERS, X : INX #2
LDA.l .rngDefaults, X : STA !RNG_POINTERS, X : INX #2
CPX.w #$007F : !BLT -
PLP : PLX
RTL

View File

@@ -5,7 +5,7 @@ LoadRoomHook:
JSL Dungeon_LoadRoom
REP #$10 ; 16 bit XY
LDX $A0 ; Room ID
LDA RoomCallbackTable, X
LDA.l RoomCallbackTable, X
SEP #$10 ; 8 bit XY
JSL UseImplicitRegIndexedLongJumpTable
; Callback routines:

View File

@@ -222,13 +222,13 @@ SpritePrep_ShopKeeper:
; If the item is $FF, make it not show (as if already taken)
LDA !SHOP_INVENTORY : CMP.b #$FF : BNE +
LDA !SHOP_STATE : ORA Shopkeeper_ItemMasks : STA !SHOP_STATE
LDA !SHOP_STATE : ORA.l Shopkeeper_ItemMasks : STA !SHOP_STATE
+
LDA !SHOP_INVENTORY+4 : CMP.b #$FF : BNE +
LDA !SHOP_STATE : ORA Shopkeeper_ItemMasks+1 : STA !SHOP_STATE
LDA !SHOP_STATE : ORA.l Shopkeeper_ItemMasks+1 : STA !SHOP_STATE
+
LDA !SHOP_INVENTORY+8 : CMP.b #$FF : BNE +
LDA !SHOP_STATE : ORA Shopkeeper_ItemMasks+2 : STA !SHOP_STATE
LDA !SHOP_STATE : ORA.l Shopkeeper_ItemMasks+2 : STA !SHOP_STATE
+
PLP : PLY : PLX

View File

@@ -289,7 +289,7 @@ RenderCreditsStatCounter:
LSR #3
AND.w #$001E
TAX
LDA BitMasks,x
LDA.l BitMasks,x
AND !ValueLow
STA !ValueLow
@@ -299,7 +299,7 @@ RenderCreditsStatCounter:
AND.w #$0007 ; CCC
BEQ +
ASL : TAX
LDA ValueCaps,x
LDA.l ValueCaps,x
CMP !ValueLow
!BGE +
STA !ValueLow

View File

@@ -95,7 +95,7 @@ IsMedallion:
RTL
;--------------------------------------------------------------------------------
LoadNarrowObject:
LDA AddReceivedItemExpanded_wide_item_flag, X : STA ($92), Y ; AddReceiveItem.wide_item_flag?
LDA.l AddReceivedItemExpanded_wide_item_flag, X : STA ($92), Y ; AddReceiveItem.wide_item_flag?
RTL
;--------------------------------------------------------------------------------
DrawNarrowDroppedObject:
@@ -115,7 +115,7 @@ DrawNarrowDroppedObject:
; always use the same character graphic (0x34)
LDA.b #$34 : STA ($90), Y : INY
LDA AddReceivedItemExpanded_properties, X : BPL .valid_lower_properties
LDA.l AddReceivedItemExpanded_properties, X : BPL .valid_lower_properties
LDA $74

View File

@@ -40,7 +40,7 @@ GetSpriteID:
PHX
PHB : PHK : PLB
;--------
TAX : LDA .gfxSlots, X ; look up item gfx
TAX : LDA.l .gfxSlots, X ; look up item gfx
PLB : PLX
CMP.b #$F8 : !BGE .specialHandling
RTL
@@ -179,7 +179,7 @@ GetSpritePalette:
PHX
PHB : PHK : PLB
;--------
TAX : LDA .gfxPalettes, X ; look up item gfx
TAX : LDA.l .gfxPalettes, X ; look up item gfx
PLB : PLX
CMP.b #$F8 : !BGE .specialHandling
RTL
@@ -341,7 +341,7 @@ IsNarrowSprite:
;----
-
CPX.b #$24 : !BGE .false ; finish if we've done the whole list
CMP .smallSprites, X : BNE + ; skip to next if we don't match
CMP.l .smallSprites, X : BNE + ; skip to next if we don't match
;--
SEC ; set true state
BRA .done ; we're done
@@ -632,10 +632,10 @@ CountBits:
LSR #4 ; Shift down hi nybble, Leave <3> in C
TAY ; And save <7:4> in Y
TXA ; Recover value
AND #$07 ; Put out <2:0> in X
AND.b #$07 ; Put out <2:0> in X
TAX ; And save in X
LDA NybbleBitCounts, Y ; Fetch count for Y
ADC NybbleBitCounts, X ; Add count for X & C
LDA NybbleBitCounts, Y; Fetch count for Y
ADC.l NybbleBitCounts, X; Add count for X & C
PLB
RTL

View File

@@ -96,6 +96,9 @@ JML.l ReturnCheckZSNES
STP ; !
;--------------------------------------------------------------------------------
;@ pushpc
;@ check bankcross off
org $378000
ZSNES_Tiles:
@@ -106,4 +109,6 @@ ZSNES_TileMap:
ZSNES_Palette:
incbin zsnes_pal.bin
;@ check bankcross on
;@ pullpc