pokecrystal/home/clear_sprites.asm

24 lines
389 B
NASM

ClearSprites::
; Erase OAM data
ld hl, wVirtualOAM
ld b, wVirtualOAMEnd - wVirtualOAM
xor a
.loop
ld [hli], a
dec b
jr nz, .loop
ret
HideSprites::
; Set all OAM y-positions to 160 to hide them offscreen
ld hl, wVirtualOAMSprite00YCoord
ld de, SPRITEOAMSTRUCT_LENGTH
ld b, NUM_SPRITE_OAM_STRUCTS
ld a, SCREEN_WIDTH_PX
.loop
ld [hl], a ; y
add hl, de
dec b
jr nz, .loop
ret