Sprites - itIsBrando/GBzLib GitHub Wiki

sprite.asm contains routines for OAM control.

Note: this library requires video.asm

List of routines:

obj_init

  • Initializes shadow OAM

Parameters: None

Destroys: All

obj_blit

  • Copies sprites from shadow RAM to OAM.
  • Call this routine when you want your sprites to appear in OAM.
  • preferably during VBlank

Parameters: None

Destroys: AF, B, DE, HL

obj_set_tile

  • Sets the tile number for a sprite.

Parameters: A-sprite number (0-39), D-tile number

Destroys: BC, HL

obj_set_tile

  • Gets the tile number for a sprite.

Parameters: A - sprite number (0-39)

Outputs: D - tile number

Destroys: BC, HL

obj_set_flag

  • Sets the flag byte for a sprite. @todo complete doc

Parameters: A - sprite number, D - flag

Destroys: BC, HL

obj_get_flag

  • Gets the flag byte for a sprite.

Parameters: A - sprite number

Outputs: D - flag

Destroys: BC, HL

obj_set_position

  • Moves the sprite to (x, y).
  • Remember that the top left position of a sprite is at coordinate (8, 16).

Parameters: A - sprite number, H - x, L - y

Destroys: DE, HL

obj_get_position

  • Gets the position of a sprite.
  • Remember that the top left position of a sprite is at coordinate (8, 16).

Parameters: A - sprite number,

Outputs: H - x, L - y Destroys: DE, HL