Skip to content

Releases: agbrs/agb

0.21.3

01 Feb 17:01
b8846e9
Compare
Choose a tag to compare
  • 0.21.2 failed to publish properly.

Added

  • Optional serde support for agb-hashmap and agb-fixnum via the serde feature flag. The flag is also exposed in the agb crate.
  • Added set_background_palette to be able to set a single background palette.

Changed

  • Using neither of the testing and backtrace features will mean there is no panic handler.

Fixed

  • Fixed build error due to breaking change in xmrs.
  • The backtrace feature works on ARM now.

0.21.1

02 Oct 22:13
Compare
Choose a tag to compare

Added

  • Added support for s3m and mod format files to agb-tracker.
  • Added a HashSet implementation in agb::hashmap.

Changed

  • Changed how 16 colour palettes are optimised to give better average case results. You should find that
    either your palettes will always import, or never import correctly.

Fixed

0.21.0

24 Sep 19:44
d07970a
Compare
Choose a tag to compare

Added

  • Added support for vibrato in agb-tracker's XM format
  • Method to stop the tracker

Changed

  • agb-tracker now has an agb feature which you must enable to use it with agb. You won't notice
    unless you've been using default-features = false in which case we recommend removing that from your Cargo.toml.

Fixed

  • There are no longer gaps between tiles in affine graphics modes.

Added

  • Added option to export imported background graphics from include_background_gfx as pub.

0.20.5

18 Jun 16:55
a4d6ba5
Compare
Choose a tag to compare

Fixed

  • Resolved incompatibility with a dependency's update in agb-tracker. If you are already using agb-tracker, then this won't yet cause an issue as your lockfile will maintain the working version. However if start a new project, or update dependencies, cargo will choose the later incompatible version.

0.20.4

13 Jun 22:17
ac2e6b5
Compare
Choose a tag to compare

Changed

  • manhattan_distance and magnitude_squared no longer require the fixed point number.

0.20.3

12 Jun 17:06
a6e4be0
Compare
Choose a tag to compare

Added

  • Added find_colour_index_16 and find_colour_index_256 to the VRamManager to find where a colour is in a palette.
  • Added set_graphics_mode to unmanaged sprites. This allows you to change to the blending and window modes.

Fixed

  • Affine background center position didn't work outside of the upper left quadrant of the gba's screen.
  • Fixed backtrace pointing to the wrong line of code (being out by one).
  • Fixes overflow caused by certain font characteristics on boundaries of sprites in the object text renderer.

0.20.2

25 May 12:25
d05965b
Compare
Choose a tag to compare

Fixed

  • Fixed the crash screen to show debug text even if the qr code fails to generate.
  • Fixed the crash screen to prevent the qr code always failing to generate.

0.20.1

17 May 22:13
6a53460
Compare
Choose a tag to compare

Added

  • Added dot and cross product methods for Vector2D.

Fixed

  • Fixed an issue with agb tracker where XM files with linear frequencies were playing the wrong notes

0.20.0

14 May 22:01
737b547
Compare
Choose a tag to compare

Added

  • Added a new crash screen which provides a mechanism for seeing a full stack trace of your program when it panics. This requires a change to your .cargo/config.toml. You must add the rust flag "-Cforce-frame-pointers=yes" to your rustflags field. This can also be disabled by removing the backtrace feature.
  • Initial unicode support for font rendering.
  • Kerning support for font rendering.
  • Added set_next method to OamIterator to avoid repeated boilerplate when dealing with unmanaged objects.

Fixed

  • Export the dma module correctly so you can write the types from it and use it in more complex cases.

Changed

  • Many macros now emit statics rather than consts OR can be used as statics OR have had examples changed to use statics. You should use statics where possible for assets as consts can lead to them being included multiple times in the ROM.
  • Fixnums are now implemented with num_traits trait definitions.
  • Rather than having our own sync with Statics, use the standard portable atomics crate. These are reexported for convenience.
  • Mgba no longer implements Write. You're unlikely to notice as agb::println! is unchanged.
  • Writes of long messages to mgba are split over multiple log messages if they overflow mgba's buffer. On a panic, only the final message will be Fatal with the preceding ones (if needed) being Info.

0.19.1

06 Mar 19:17
9e63b2c
Compare
Choose a tag to compare

Added

  • .abs() on Vector2D and Rect

Fixed

  • InfiniteScrolledMap can now scroll more than 1 tile in a single frame without corrupting.