The major version number has been incremented only because there's a
chance that a sketch that sets text wrap on will behave differently,
due to the changes in the way wrapping is now handled.
An image converted using the cabi utility must have a height that is
a multiple of 8 pixels. An error is now reported if not.
Also, the README.md file for cabi was updated with this requirement.
Files arduboy_logo.png and arduboy_screen.png had some pixels that
were a dark gray color instead of fully black. The images now contain
only fully black and fully white pixels.
Also added file sample.png in the cabi directory, which is used
for the example sketch in the Cabi README.md file
Also added a note referring to Cabi in the documentation for
drawCompressed()
Compiler warnings generated by cabi.c were mostly due to
signed/unsigned mismatches and unused variables. Unused variables
were removed and most type int variables were changed to unsigned,
since there is no signed math or negative numbers required.
More detailed error messages are reported by using the LodePNG
capability to provide text descriptions for its error codes.
The default output array name prefix was changed
from "out" to "compressed_image".
Changed the on/off opaque/transparent thresholds from 128 to 127,
the half way point, because it makes more sense.
Added a program description to the usage output given when no
arguments are provided.
Other unused code was removed and some code was refactored.
Added lodepng.c (renamed from lodepng.cpp), lodepng.h and LICENSE from
the LodePNG project by Lode Vandevenne.
https://github.com/lvandeve/lodepng
Since this code is licensed separately from the cabi code, it has been
placed in its own subdirectory named lodepng.
cabi.c and README.md have been modified for the LodePNG file location.
cabi is a command line program written in C. Its purpose is to read
a PNG file containing a bitmap image and convert it to C/C++ code
suitable for use with the drawCompressed() function.
cabi was published by the Team A.R.G. organization. This organization
has been dissolved and its presence on the internet has been removed,
thus public access to cabi from them is no longer available.
A copy of the relevant cabi files has been added under the extras
directory to maintain a method of creating drawCompressed() compatible
bitmaps.
Includes some suggestions and guidance by @Pharap
API:
- Rename non-API function swap() to swapInt16()
- Make swapInt16(), drawCircleHelper(), fillCircleHelper() and
struct BitStreamReader protected members of Arduboy2Base
- Add #define ARDUBOY_UNIT_NAME_BUFFER_SIZE for the size of a buffer
to hold a Unit Name
- Move the position of the PROGMEM keyword for lcdBootProgram[]
for consistency
Documentation:
- Remove absolute values referring to a Unit Name
- More details relating to the use of the Unit Name
- More details relating to the font and text functions
- Other minor documentation changes and spelling corrections
Also:
- Changes to show the unit name on the boot logo screen
- Added new example sketch SetNameAndID to allow setting the name and ID
- Updated the LICENSE.txt file and made changes to include it in the
Doxygen generated documentation