Use labels instead of constants for HRAM
Use explicit ldh instruction to access HRAM locations, don't rely on optimizing ld
This commit is contained in:
@@ -20,7 +20,7 @@ GetSpriteVTile::
|
||||
ld hl, wUsedSprites + 2
|
||||
ld c, SPRITE_GFX_LIST_CAPACITY - 1
|
||||
ld b, a
|
||||
ld a, [hMapObjectIndexBuffer]
|
||||
ldh a, [hMapObjectIndexBuffer]
|
||||
cp 0
|
||||
jr z, .nope
|
||||
ld a, b
|
||||
@@ -54,7 +54,7 @@ DoesSpriteHaveFacings::
|
||||
push hl
|
||||
|
||||
ld b, a
|
||||
ld a, [hROMBank]
|
||||
ldh a, [hROMBank]
|
||||
push af
|
||||
ld a, BANK(_DoesSpriteHaveFacings)
|
||||
rst Bankswitch
|
||||
@@ -96,7 +96,7 @@ GetTileCollision::
|
||||
ld d, 0
|
||||
add hl, de
|
||||
|
||||
ld a, [hROMBank]
|
||||
ldh a, [hROMBank]
|
||||
push af
|
||||
ld a, BANK(TileCollisionTable)
|
||||
rst Bankswitch
|
||||
@@ -210,14 +210,14 @@ GetMapObject::
|
||||
|
||||
CheckObjectVisibility::
|
||||
; Sets carry if the object is not visible on the screen.
|
||||
ld [hMapObjectIndexBuffer], a
|
||||
ldh [hMapObjectIndexBuffer], a
|
||||
call GetMapObject
|
||||
ld hl, MAPOBJECT_OBJECT_STRUCT_ID
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
cp -1
|
||||
jr z, .not_visible
|
||||
ld [hObjectStructIndexBuffer], a
|
||||
ldh [hObjectStructIndexBuffer], a
|
||||
call GetObjectStruct
|
||||
and a
|
||||
ret
|
||||
@@ -301,21 +301,21 @@ CheckObjectTime::
|
||||
ret
|
||||
|
||||
; unused
|
||||
ld [hMapObjectIndexBuffer], a
|
||||
ldh [hMapObjectIndexBuffer], a
|
||||
call GetMapObject
|
||||
call CopyObjectStruct
|
||||
ret
|
||||
|
||||
_CopyObjectStruct::
|
||||
ld [hMapObjectIndexBuffer], a
|
||||
ldh [hMapObjectIndexBuffer], a
|
||||
call UnmaskObject
|
||||
ld a, [hMapObjectIndexBuffer]
|
||||
ldh a, [hMapObjectIndexBuffer]
|
||||
call GetMapObject
|
||||
farcall CopyObjectStruct
|
||||
ret
|
||||
|
||||
ApplyDeletionToMapObject::
|
||||
ld [hMapObjectIndexBuffer], a
|
||||
ldh [hMapObjectIndexBuffer], a
|
||||
call GetMapObject
|
||||
ld hl, MAPOBJECT_OBJECT_STRUCT_ID
|
||||
add hl, bc
|
||||
@@ -394,7 +394,7 @@ Unreferenced_Function19b8:
|
||||
LoadMovementDataPointer::
|
||||
; Load the movement data pointer for object a.
|
||||
ld [wMovementObject], a
|
||||
ld a, [hROMBank]
|
||||
ldh a, [hROMBank]
|
||||
ld [wMovementDataPointer], a
|
||||
ld a, l
|
||||
ld [wMovementDataPointer + 1], a
|
||||
@@ -484,7 +484,7 @@ endr
|
||||
|
||||
CopySpriteMovementData::
|
||||
ld l, a
|
||||
ld a, [hROMBank]
|
||||
ldh a, [hROMBank]
|
||||
push af
|
||||
ld a, BANK(SpriteMovementData)
|
||||
rst Bankswitch
|
||||
@@ -551,7 +551,7 @@ endr
|
||||
|
||||
_GetMovementByte::
|
||||
; Switch to the movement data bank
|
||||
ld a, [hROMBank]
|
||||
ldh a, [hROMBank]
|
||||
push af
|
||||
ld a, [hli]
|
||||
rst Bankswitch
|
||||
|
Reference in New Issue
Block a user