Atmosphere/libraries/libstratosphere
SciresM 87ec045a98
mem: implement most of StandardAllocator (#860)
This was tested using `https://github.com/node-dot-cpp/alloc-test` plus a few other by-hand tests.

It seems to work for the case we care about (sysmodules without thread cache-ing).

External users are advised to build with assertions on and contact SciresM if you find issues.

This is a lot of code to have gotten right in one go, and it was written mostly after midnight while sick, so there are probably un-noticed issues.
2020-03-29 14:43:16 -07:00
..
include mem: implement most of StandardAllocator (#860) 2020-03-29 14:43:16 -07:00
source mem: implement most of StandardAllocator (#860) 2020-03-29 14:43:16 -07:00
Makefile mem: implement most of StandardAllocator (#860) 2020-03-29 14:43:16 -07:00
README.md Add additional licensing exemption 2020-02-24 20:47:11 -08:00

License

libstratosphere is a work-in-progress C++ library for development of system modules for the Nintendo Switch.

It is built around extending libnx.

It also provides bindings for custom extensions to Horizon OS implemented by Atmosphère.

Licensing

This software is licensed under the terms of the GPLv2, with exemptions for specific projects noted below.

You can find a copy of the license in the LICENSE file.

Exemptions:

  • The yuzu emulator project is exempt from GPLv2 licensing and may (at its option) instead license any source code authored for the libstratosphere project as GPLv2 or later.
  • Nintendo is exempt from GPLv2 licensing and may (at its option) instead license any source code authored for the libstratosphere project under the Zero-Clause BSD license.

Credits

libstratosphere is currently being developed and maintained by SciresM.

In addition to those credited in Atmosphère's credits, we would like to thank for contributing to libstratosphere in some significant way:

  • hthh
  • fincs
  • lioncash
  • misson20000
  • neobrain
  • yellows8
  • @Nintendo