Allow users to build with the old "V3" framework if they want. All release builds are still using V4.
* fixed wrong references in some legacy envs
* added ${esp32_legacy.build_unflags}
* changed esp32_4MB_S_base and esp32_4MB_M_base to use old V3 framework
I just tried to OTA update an esp32 to a "tasmota" arduino build, and the results were very bad. == back to previous, even when flash size is a problem.
* solved a few platformio.ini problems that lead to an unhealthy mix-up of espressif and tasmota platforms
* re-enabled "full font" support for -C3
* re-enabled full ParticleFX support for -C3
Temporarily disable deviceID retrieval to prevent crashes on some ESP32 boards. This prevents the DeviceID from being added to /json/info, until we find a solution that does not crash my esp32.
* Compile with -D WLED_ENABLE_FULL_FONTS to use all character defined in the font files (including EU spechial cars, line art, and some symbols and icons) -> increases flash size by ~8KBytes
* Unicode support added for scrolling text - allows to use all characters of the font
* Conversion from UTF-8 to "codepage 437" - can be extended to other codepages if you have a font that needs another codepage
* Support added for WLED_MAX_SEGNAME_LEN (default:48) - needs more testing
* Segment names > WLED_MAX_SEGNAME_LEN will be truncated, instead of silently deleting
* Preparations for future additions like user-defined font files and font width > 8 pixels
* replace strlen with strnlen
* avoid static variable in getFontInfo
* remove legacy code in drawCharacter (new code works well)
it works for me, let's ship it ;-)
* centralize font selection logic into getFontInfo()
* removed unneeded parameter "numberOfChars" from drawText()
* new file: wled_fonts.hpp to centralize font management logic (inline)
* only compile wchar16ToCodepage437 when WLED_ENABLE_FULL_FONTS
* minor cleanup
* explanation for CP437 glyph groups
* translation for MonnModules symbol
* "smiley" replacement for 4-bytes and overlong unicode codes
* always compile unicodetool.cpp (codepage translation still depends on WLED_ENABLE_UNICODE)
* bugfix: DrawString now skips over glyphs that would be rejected by DrawCharacter
* minor cleanup