diff --git a/Dungeons/dungeons.asm b/Dungeons/dungeons.asm index f24a1e2..6ace9ef 100644 --- a/Dungeons/dungeons.asm +++ b/Dungeons/dungeons.asm @@ -59,18 +59,16 @@ pullpc ; Bank 0x33 TransferDungeonMapGfx: { - REP #$20 ; A = 16, XY = 8 - - LDX #$80 : STX $2100 ; turn the screen off (required) - LDX #$80 : STX $2115 ; Set the video port register every time we write it increase by 1 - LDA #$5000 : STA $2116 ; Destination of the DMA $5800 in vram <- this need to be divided by 2 + REP #$20 + LDX #$80 : STX $2100 + LDX #$80 : STX $2115 + LDA #$5000 : STA $2116 ; Destination of the DMA in VRAM LDA #$1801 : STA $4300 ; DMA Transfer Mode and destination register - LDA.w #MapGfx : STA $4302 ; Source address where you want gfx from ROM + LDA.w #MapGfx : STA $4302 LDX.b #MapGfx>>16 : STX $4304 - LDA #$2000 : STA $4305 ; size of the transfer 4 sheets of $800 each - LDX #$01 : STX $420B ; Do the DMA - - LDX #$0F : STX $2100 ; Turn the screen back on + LDA #$2000 : STA $4305 + LDX #$01 : STX $420B + LDX #$0F : STX $2100 SEP #$30 LDA.b #$09 : STA.b $14 diff --git a/Sprites/Enemies/octorok.asm b/Sprites/Enemies/octorok.asm index c8234b0..a33219c 100644 --- a/Sprites/Enemies/octorok.asm +++ b/Sprites/Enemies/octorok.asm @@ -269,7 +269,7 @@ Sprite_WaterOctorok_Attack: JSL Sprite_DamageFlash_Long JSL Sprite_CheckDamageToPlayer - LDA SprMiscG, X + LDA.w SprMiscG, X JSL UseImplicitRegIndexedLocalJumpTable dw WaterOctorok_Hidden diff --git a/Sprites/NPCs/followers.asm b/Sprites/NPCs/followers.asm index 6a73811..25e12f1 100644 --- a/Sprites/NPCs/followers.asm +++ b/Sprites/NPCs/followers.asm @@ -655,7 +655,6 @@ MinecartFollower_Top: LDA $02CF : TAY LDA .start_index, Y : STA $06 - PHX LDX .nbr_of_tiles, Y ; amount of tiles -1 LDY.b #$00 @@ -687,11 +686,8 @@ MinecartFollower_Top: LDA .properties, X : STA ($90), Y PHY - TYA : LSR #2 : TAY - LDA.b #$02 : ORA $0F : STA ($92), Y ; store size in oam buffer - PLY : INY PLX : DEX : BPL .nextTile @@ -766,11 +762,8 @@ MinecartFollower_Bottom: LDA .properties, X : STA ($90), Y PHY - TYA : LSR #2 : TAY - LDA.b #$02 : ORA $0F : STA ($92), Y ; store size in oam buffer - PLY : INY PLX : DEX : BPL .nextTile @@ -981,4 +974,4 @@ org $028A5B org $0289BF JSL CheckForFollowerIntraroomTransition -pullpc \ No newline at end of file +pullpc diff --git a/Sprites/NPCs/zora_princess.asm b/Sprites/NPCs/zora_princess.asm index 1f6c349..95de6c1 100644 --- a/Sprites/NPCs/zora_princess.asm +++ b/Sprites/NPCs/zora_princess.asm @@ -10,7 +10,7 @@ !DeathAnimation = 00 ; 00 = normal death, 01 = no death animation !ImperviousAll = 00 ; 00 = Can be attack, 01 = attack will clink on it !SmallShadow = 00 ; 01 = small shadow, 00 = no shadow -!Shadow = 00 ; 00 = don't draw shadow, 01 = draw a shadow +!Shadow = 00 ; 00 = don't draw shadow, 01 = draw a shadow !Palette = 00 ; Unused in this template (can be 0 to 7) !Hitbox = 02 ; 00 to 31, can be viewed in sprite draw tool !Persist = 00 ; 01 = your sprite continue to live offscreen @@ -48,10 +48,9 @@ Sprite_ZoraPrincess_Long: Sprite_ZoraPrincess_Prep: { PHB : PHK : PLB - LDA.l $7EF302 BEQ .doesnt_have_mask - STZ.w $0DD0, X ; Kill the sprite + STZ.w $0DD0, X ; Kill the sprite .doesnt_have_mask LDA #$00 : STA $0CAA, X @@ -98,7 +97,7 @@ Sprite_ZoraPrincess_Main: { %PlayAnimation(0, 1, 10) LDA.w SprTimerD, X : BNE + - %ShowUnconditionalMessage($0C6) + %ShowUnconditionalMessage($0C6) LDA.b #$C0 : STA.w SprTimerD, X %GotoAction(3) + @@ -133,12 +132,11 @@ Sprite_ZoraPrincess_Draw: .nextTile PHX ; Save current Tile Index? - TXA : CLC : ADC $06 ; Add Animation Index Offset PHA ; Keep the value with animation index offset? - ASL A : TAX + ASL A : TAX REP #$20 @@ -161,13 +159,9 @@ Sprite_ZoraPrincess_Draw: LDA .properties, X : STA ($90), Y PHY - TYA : LSR #2 : TAY - LDA .sizes, X : ORA $0F : STA ($92), Y ; store size in oam buffer - PLY : INY - PLX : DEX : BPL .nextTile PLX