agbabi

Provides GBA optimized functions for some common, handy operations.

OTHER License

Stars
68

Bot releases are visible (Hide)

agbabi - agbabi 2.1.7 Latest Release

Published by felixjones 7 months ago

Changes in rtc.c:

  • RTC compatibility improved.
  • rtc.c now compiles with __ARM_ASM_SYNTAX_UNIFIED__.

Full Changelog: https://github.com/felixjones/agbabi/compare/v2.1.6...v2.1.7

agbabi - agbabi 2.1.6

Published by felixjones 10 months ago

RTC has been updated to provide compatibility with official cartridges that have RTC support. This can be tested via Multiboot ROMs that read/write to the RTC. Thanks to @Lorenzooone for both contributing fixes and providing critical testing for RTC functionality.

There are no API changes with this release.

What's Changed

New Contributors

Full Changelog: https://github.com/felixjones/agbabi/compare/v2.1.5...v2.1.6

agbabi - agbabi 2.1.5

Published by felixjones about 1 year ago

Added __agbabi_poll_ewram for detecting "overclockable" EWRAM.

Example:

#include <agbabi.h>

#define REG_MEMCTL (*(volatile int*) 0x4000800)

int main() {
    if (__agbabi_poll_ewram()) {
        /* It is (probably) safe to activate fast EWRAM */
        REG_MEMCTL = 0x0E000020;
    }
}

What's Changed

Full Changelog: https://github.com/felixjones/agbabi/compare/v2.1.4...v2.1.5

agbabi - agbabi 2.1.4

Published by felixjones over 1 year ago

This release is a tiny maintenance clean-up, with -Wstrict-prototypes enabled (thanks @Lorenzooone), and some documentation clarification for __agbabi_coro_resume (suggested by @asiekierka).

Contributions and suggestions are coming from the BlocksDS project, which uses parts of agbabi in its development library for the NDS, so check out that project if you're also interested in NDS development.

What's Changed

New Contributors

Full Changelog: https://github.com/felixjones/agbabi/compare/v2.1.3...v2.1.4

agbabi - agbabi 2.1.3 hotfix

Published by felixjones over 1 year ago

his hotfix solves a critical issue in memset regarding setting more than 64 bytes

There is no API change

Thanks to @asiekierka for identifying the issue and writing a failing test

agbabi - agbabi 2.1.2 hotfix

Published by felixjones over 1 year ago

This hotfix solves a critical issue in memset regarding 16-bit alignments

There is no API change

An early implementation of the WIP test suite is also provided to catch further regressions

agbabi - agbabi 2.1.1 hotfix

Published by felixjones over 1 year ago

This hotfix makes agbabi usable as a Meson subproject

agbabi_dep = declare_dependency(
  include_directories: includes,
  link_with: agbabi,
  version: meson.project_version())

meson.override_dependency('agbabi', agbabi_dep)

There is no API change, and no binary change

Thanks to @LunarLambda for support

agbabi - libagbabi 2.1.0

Published by felixjones over 1 year ago

This is a clean-up & re-write of the entire project. We will be using GitHub Releases and Tags from now on.

Project changes

  • New README.md and docs
  • Provided minimal cross-build environments for standalone Meson and CMake builds

Clean-ups

  • Removed C pre-processor use from assembly code
    • This includes the C/C++ style comments
  • Moved some non-existant aeabi functions into agbabi
  • Removed the fixed-point print formatting code
    • This will likely one day return in some other form

Re-writes

  • Reversed some compiled & optimised assembly back into C code
    • GNU vector extensions are used to achieve optimal code-gen
  • Removed DEVKITARM related macros
    • More explicit, compile-time feature detection is used instead

Additions

  • Multiboot function added
    • This is a little experimental and may be buggy

Special thanks

@LunarLambda for Meson support