---
title: 'Internal documentation'
weight: 5
---

This section contains documentation for BlocksDS developers, but it may also be
useful for users in some cases.

- [BlocksDS release process](release_process): It describes how new versions of
  BlocksDS are published.

- [Build process information](build_process): It explains how the build system
  of BlocksDS works. This can be useful if you're creating your own build
  system.

- [Design choices](design_guide): It explains some of the choices taken during
  the design and development of BlocksDS.

- [Dynamic libraries](dynamic_libraries): It describes how dynamic libraries are
  built and loaded internally.

- [Exit to loader protocol](exit_to_loader): It explains how homebrew
  applications can return to the loader thanks to a small bootloader left by the
  loader in RAM.

- [Memory map](memory_map): It shows how BlocksDS uses the different memory
  regions of the Nintendo DS and DSi, and how all reserved memory areas are
  used.
