918 B

To do

  • Get software interrupts to work and replace vblank() while cycles
  • Further reduce update() instruction cycles by removing updateOam() on each update - only change what is needed. Might cause breaking API changes.
  • Replace VECTOR return values everywhere with GBAVector, refactor to Vector2d. Check for performance hits; copying value-objects in update loop is not a good idea.
  • Rename updateSpritesInScene to reRenderAll

To investigate

  • Affine sprites overwrite the flip flag, should the flip functions do something or not?
  • Would it be possible to dynamically update tiles for a sprite within the same scene? What about size differences?
  • How does saving/loading data to and from RAM work? Can I serialize objects? For instance, binary header-only serialization with Cereral