Commit Graph

68 Commits

Author SHA1 Message Date
Antonio Niño Díaz
12537467ca examples: Replace some prebuilt graphics by images and scripts 2023-05-12 01:45:24 +01:00
Antonio Niño Díaz
0ef790e8b9 examples: Fix typo 2023-05-12 01:45:24 +01:00
Antonio Niño Díaz
9e31687288 library: Start using semver
The library has never had a version number based on semver, so the
first tagged release will be 1.0.0 and it will define the first stable
API.

This versioning strategy makes it easier to detect incompatibilities
between library versions.

Information about semver 2.0.0: https://semver.org/
2023-05-12 00:01:37 +01:00
Antonio Niño Díaz
64768e92d8 library: Fix header guards
Symbols that start with two underscores plus an uppercase letter are
reserved by the C standard.
2023-05-11 23:55:01 +01:00
Antonio Niño Díaz
c34dbb2912 library: Remove version number from source files
This is misleading unless it's updated every single time there is a
commit, which isn't realistic.
2023-05-11 23:49:33 +01:00
Antonio Niño Díaz
57cc1d519c library: Cleanup headers 2023-05-11 23:36:27 +01:00
Antonio Niño Díaz
7aac024b0b template: Support building it in BlocksDS 2023-05-09 02:28:13 +02:00
Antonio Niño Díaz
0394efbf77 Small cleanup of loop variables 2023-05-03 01:48:58 +01:00
Antonio Niño Díaz
e0296e0856 Remove superfluous comments 2023-05-03 01:48:58 +01:00
Antonio Niño Díaz
54d5435650 Reorganize includes
libc includes go first, then libraries like libnds and dswifi, then
NFLib includes.
2023-05-03 01:48:58 +01:00
Antonio Niño Díaz
fe33d66d91 Remove trailing whitespace 2023-05-03 01:21:56 +01:00
Antonio Niño Díaz
f77bbf104d docs: Remove outdated note from readme 2023-05-02 18:40:21 +01:00
Antonio Niño Díaz
63ca9c5a2f doxygen: Fix comments 2023-05-02 02:26:03 +01:00
Antonio Niño Díaz
080a46a5bd Fix warning incorrect type warning 2023-05-02 02:23:16 +01:00
Antonio Niño Díaz
5bac142de7 doxygen: Document WiFi helpers in header
Remove the old PDF files as they are no longer needed (and they were
both in Spanish, anyway).
2023-05-02 02:23:16 +01:00
Antonio Niño Díaz
7e65d659a4 Add missing C++ header guards 2023-05-02 02:23:16 +01:00
Antonio Niño Díaz
fc0d3365b6 Move wifi helpers to the main library 2023-05-02 02:23:16 +01:00
Antonio Niño Díaz
d9d06081ca Remove PAlib definitions and use libnds instead 2023-05-01 03:17:37 +01:00
Antonio Niño Díaz
ab04d9a801 docs: Remove old PDFs and add Doxygen makefile target
All the documentation is now generated with Doxygen.
2023-05-01 03:07:32 +01:00
Antonio Niño Díaz
b8e80a70dd doxygen: Fix comments 2023-05-01 03:04:30 +01:00
Antonio Niño Díaz
92f39078a1 library: Fix typo in function name 2023-05-01 03:02:26 +01:00
Antonio Niño Díaz
7dd92e646b doxygen: Document remaining functions 2023-05-01 03:00:01 +01:00
Antonio Niño Díaz
0456094207 doxygen: Replace HTML tags by markdown 2023-05-01 01:33:43 +01:00
Antonio Niño Díaz
035b8bb49e doxygen: Document affine backgrounds functions 2023-05-01 01:00:59 +01:00
Antonio Niño Díaz
d88ba43731 doxygen: Document bitmap background functions 2023-05-01 00:17:42 +01:00
Antonio Niño Díaz
be55199098 doxygen: Document collision and sound modules 2023-04-30 15:47:47 +01:00
Antonio Niño Díaz
027e5579be Fix typo in "collision" everywhere
Some defines have been added to preserve backwards compatibility with
the old names.
2023-04-30 14:53:37 +01:00
Antonio Niño Díaz
02b0eff087 doxygen: Document 8x16 font text functions 2023-04-30 14:44:05 +01:00
Antonio Niño Díaz
59b9cb02ec doxygen: Add 2D functions to a doxygen group 2023-04-30 03:09:18 +01:00
Antonio Niño Díaz
1b344843f4 doxygen: Document text functions 2023-04-30 03:03:12 +01:00
Antonio Niño Díaz
809316450d doxygen: Add doxyfile 2023-04-30 02:18:22 +01:00
Antonio Niño Díaz
4dcbf74e1d docs: Move changelog to the root of the repository 2023-04-30 02:17:26 +01:00
Antonio Niño Díaz
9dde256592 doxygen: Create documentation groups 2023-04-30 02:15:43 +01:00
Antonio Niño Díaz
687cc91511 doxygen: Document 256 color sprite functions 2023-04-30 01:48:50 +01:00
Antonio Niño Díaz
245db3169d doxygen: Remove HTML tags
Markdown is supported by Doxygen.
2023-04-29 12:38:53 +01:00
Antonio Niño Díaz
55feace39a library: Add more doxygen comments
The public structs and definitions aren't described in the manual.
2023-04-29 03:30:26 +01:00
Antonio Niño Díaz
733c7d16ce Add more doxygen comments to library 2023-04-28 02:24:24 +01:00
Antonio Niño Díaz
c693abda87 Increase size of NF_ROOTFOLDER 2023-04-28 01:40:33 +01:00
Antonio Niño Díaz
e1ed5b15ef Start using doxygen comments in library headers 2023-04-28 01:38:37 +01:00
Antonio Niño Díaz
32834534b1 docs: Remove outdated license files
The new ones are in the licenses folder.
2023-04-28 00:42:45 +01:00
Antonio Niño Díaz
b7efd8954b Fix remaining Wextra warning 2023-04-22 01:53:16 +01:00
Antonio Niño Díaz
0c0a9e743e Enable -Wextra
- Fix most new warnings (silence a few of them, though).

- Replace all sprintf() by the safer snprintf().
2023-04-22 01:48:47 +01:00
Antonio Niño Díaz
4a257af310 Improve detection of device that contains the NDS ROM
When accessing the filesystem, what a user normally wants is to access
the same drive that holds the NDS ROM being run.

On the DS it is easy. The only available drive is the one of the DLDI
driver.

On DSi, it isn't so easy. It is possible to run a ROM that is either on
the SD card or in a flashcard (accessed with DLDI).

The easiest way to determine the right drive to use is to use argv[0].
The loader stores the location of the NDS ROM there, including the
drive.

The trivial detection should only be used as a fallback mechanism if
argv[0] isn't present.
2023-04-19 00:47:52 +01:00
Cesar Rincon Nadal
5ef632b409
Merge pull request #8 from lifehackerhansol/master
Do not force libfilesystem or libfat dependency
2023-04-16 12:38:12 +02:00
lifehackerhansol
ef23e0418a
Do not force libfilesystem or libfat dependency
This removes dependency from the (frankly awful) libfilesystem, as well
as libfat.

fatInitDefault() or nitroFSInit() should be initialized outside of
NFlib, if one requires it. Within NFLib, we will only check whether
NitroFS is accessible, and fail otherwise.

This allows a user to still use libfat, libfilesystem or any other
NitroFS / FAT implementation, should one wish to use it, as long as the
implementation of NitroFS mounts to `nitro:/`, or the storage medium is
mounted to `sd:/` or `fat:/`.

This is a breaking change: users will need to update their code to
handle NitroFS and/or FAT inits on their own.

This also removes unnecessary filesystem.h and fat.h includes from all
other files.
2023-04-13 11:30:37 -07:00
Antonio Niño Díaz
61fde2b572 Use UTF-8 across all codebase
This has been done with:

    for f in `ls`; do
        iconv -f ISO-8859-1 -t UTF-8//TRANSLIT "$f" -o "$f".2;
        mv "$f".2 "$f"
    done
2023-04-13 18:51:09 +01:00
Cesar Rincon Nadal
fb2d400e39
Merge pull request #7 from knightfox75/license
license: Fix licenses
2023-04-02 13:10:00 +02:00
Antonio Niño Díaz
151db13cc0 license: Fix licenses
- Creative Commons (except for CC0) shouldn't be used for code:

   https://creativecommons.org/faq/#can-i-apply-a-creative-commons-license-to-software

   MIT has the same spirit as the CC-BY license.

- CC-BY has been retained for the assets included in the repository.

- Also, the years were wrong, this library was started in 2009.

- Make all examples use the CC0 license.
2023-04-01 19:56:45 +01:00
Antonio Niño Díaz
f3e86a56d1 build: docs: Introduce and document build system for BlocksDS
Also, some minor fixes to the examples so that they can build.
2023-04-01 19:06:03 +01:00
Cesar Rincon Nadal
5d1d3cf8e6
Merge pull request #6 from knightfox75/license
license: Change to CC BY 4.0
2023-04-01 18:52:26 +02:00