Update make translate script

This commit is contained in:
microDev 2020-09-29 11:14:30 +05:30
parent d6da406d0f
commit 4c7d9e3aaf
No known key found for this signature in database
GPG Key ID: 2C0867BE60967730
15 changed files with 145 additions and 31 deletions

View File

@ -40,7 +40,8 @@ ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(BASEOPTS)
# the i18n builder cannot share the environment and doctrees with the others
I18NSPHINXOPTS = $(BASEOPTS)
TRANSLATE_SOURCES = extmod lib main.c ports/atmel-samd ports/cxd56 ports/mimxrt10xx ports/nrf ports/stm py shared-bindings shared-module supervisor
TRANSLATE_SOURCES = extmod lib main.c ports/atmel-samd ports/cxd56 ports/esp32s2 ports/mimxrt10xx ports/nrf ports/stm py shared-bindings shared-module supervisor
TRANSLATE_SOURCES_EXC = -path ports/*/build-* -o -path ports/esp32s2/esp-idf
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext stubs
@ -210,7 +211,7 @@ pseudoxml:
all-source:
locale/circuitpython.pot: all-source
find $(TRANSLATE_SOURCES) -iname "*.c" -print | (LC_ALL=C sort) | xgettext -f- -L C -s --add-location=file --keyword=translate -o circuitpython.pot -p locale
find $(TRANSLATE_SOURCES) -type d \( $(TRANSLATE_SOURCES_EXC) \) -prune -o -type f \( -iname "*.c" -o -iname "*.h" \) -print | (LC_ALL=C sort) | xgettext -f- -L C -s --add-location=file --keyword=translate -o circuitpython.pot -p locale
# Historically, `make translate` updated the .pot file and ran msgmerge.
# However, this was a frequent source of merge conflicts. Weblate can perform
@ -235,7 +236,7 @@ merge-translate:
.PHONY: check-translate
check-translate:
find $(TRANSLATE_SOURCES) -iname "*.c" -print | (LC_ALL=C sort) | xgettext -f- -L C -s --add-location=file --keyword=translate -o circuitpython.pot.tmp -p locale
find $(TRANSLATE_SOURCES) -type d \( $(TRANSLATE_SOURCES_EXC) \) -prune -o -type f \( -iname "*.c" -o -iname "*.h" \) -print | (LC_ALL=C sort) | xgettext -f- -L C -s --add-location=file --keyword=translate -o circuitpython.pot.tmp -p locale
$(PYTHON) tools/check_translations.py locale/circuitpython.pot.tmp locale/circuitpython.pot; status=$$?; rm -f locale/circuitpython.pot.tmp; exit $$status
stubs:

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-09-24 16:55-0500\n"
"POT-Creation-Date: 2020-09-29 11:11+0530\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -280,7 +280,7 @@ msgstr ""
msgid "Address type out of range"
msgstr ""
#: ports/nrf/common-hal/busio/I2C.c
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
msgid "All I2C peripherals are in use"
msgstr ""
@ -288,11 +288,11 @@ msgstr ""
msgid "All RX FIFOs in use"
msgstr ""
#: ports/nrf/common-hal/busio/SPI.c
#: ports/esp32s2/common-hal/busio/SPI.c ports/nrf/common-hal/busio/SPI.c
msgid "All SPI peripherals are in use"
msgstr ""
#: ports/nrf/common-hal/busio/UART.c
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
msgid "All UART peripherals are in use"
msgstr ""
@ -314,6 +314,9 @@ msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
#: ports/stm/peripherals/timers.c shared-bindings/pwmio/PWMOut.c
@ -333,6 +336,10 @@ msgstr ""
msgid "Already running"
msgstr ""
#: ports/esp32s2/common-hal/wifi/Radio.c
msgid "Already scanning for wifi networks"
msgstr ""
#: ports/cxd56/common-hal/analogio/AnalogIn.c
msgid "AnalogIn not supported on given pin"
msgstr ""
@ -550,6 +557,7 @@ msgstr ""
msgid "Cannot set value when direction is input."
msgstr ""
#: ports/esp32s2/common-hal/busio/UART.c
#: ports/mimxrt10xx/common-hal/busio/UART.c
msgid "Cannot specify RTS or CTS in RS485 mode"
msgstr ""
@ -640,14 +648,15 @@ msgid "Could not initialize SDCard"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
#: ports/esp32s2/common-hal/busio/UART.c
msgid "Could not initialize UART"
msgstr ""
#: ports/stm/common-hal/pwmio/PWMOut.c
#: ports/esp32s2/common-hal/pwmio/PWMOut.c ports/stm/common-hal/pwmio/PWMOut.c
msgid "Could not initialize channel"
msgstr ""
#: ports/stm/common-hal/pwmio/PWMOut.c
#: ports/esp32s2/common-hal/pwmio/PWMOut.c ports/stm/common-hal/pwmio/PWMOut.c
msgid "Could not initialize timer"
msgstr ""
@ -663,6 +672,10 @@ msgstr ""
msgid "Could not restart PWM"
msgstr ""
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
msgid "Could not retrieve clock"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr ""
@ -753,6 +766,10 @@ msgstr ""
msgid "ECB only operates on 16 bytes at a time"
msgstr ""
#: ports/esp32s2/common-hal/busio/SPI.c
msgid "ESP-IDF memory allocation failed"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/atmel-samd/common-hal/ps2io/Ps2.c
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
@ -810,6 +827,10 @@ msgstr ""
msgid "FFT is defined for ndarrays only"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/Socket.c
msgid "Failed SSL handshake"
msgstr ""
#: shared-bindings/ps2io/Ps2.c
msgid "Failed sending command."
msgstr ""
@ -826,12 +847,21 @@ msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
#, c-format
msgid "Failed to allocate RX buffer of %d bytes"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Failed to allocate Wifi memory"
msgstr ""
#: ports/esp32s2/common-hal/wifi/ScannedNetworks.c
msgid "Failed to allocate wifi scan memory"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "Failed to connect: internal error"
msgstr ""
@ -840,6 +870,10 @@ msgstr ""
msgid "Failed to connect: timeout"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Failed to init wifi"
msgstr ""
#: shared-module/audiomp3/MP3Decoder.c
msgid "Failed to parse MP3 file"
msgstr ""
@ -933,7 +967,7 @@ msgstr ""
msgid "Input taking too long"
msgstr ""
#: py/moduerrno.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c py/moduerrno.c
msgid "Input/output error"
msgstr ""
@ -1026,6 +1060,10 @@ msgstr ""
msgid "Invalid format chunk size"
msgstr ""
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
msgid "Invalid frequency"
msgstr ""
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Invalid frequency supplied"
msgstr ""
@ -1063,6 +1101,8 @@ msgstr ""
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
#: ports/esp32s2/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/SPI.c
#: ports/esp32s2/common-hal/busio/UART.c
#: ports/mimxrt10xx/common-hal/busio/I2C.c
#: ports/mimxrt10xx/common-hal/busio/SPI.c
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
@ -1194,21 +1234,25 @@ msgstr ""
msgid "No DMA channel found"
msgstr ""
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/SPI.c
#: ports/esp32s2/common-hal/busio/SPI.c ports/mimxrt10xx/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c
msgid "No MISO Pin"
msgstr ""
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/SPI.c
#: ports/esp32s2/common-hal/busio/SPI.c ports/mimxrt10xx/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c
msgid "No MOSI Pin"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c
#: ports/esp32s2/common-hal/busio/UART.c
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: ports/stm/common-hal/busio/UART.c
msgid "No RX pin"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c
#: ports/esp32s2/common-hal/busio/UART.c
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: ports/stm/common-hal/busio/UART.c
msgid "No TX pin"
@ -1251,6 +1295,14 @@ msgstr ""
msgid "No long integer support"
msgstr ""
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
msgid "No more channels available"
msgstr ""
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
msgid "No more timers available"
msgstr ""
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "No more timers available on this pin."
msgstr ""
@ -1314,6 +1366,14 @@ msgstr ""
msgid "Only 8 or 16 bit mono with "
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""
@ -1331,6 +1391,10 @@ msgstr ""
msgid "Only raw int supported for ip"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Out of sockets"
msgstr ""
#: shared-bindings/audiobusio/PDMIn.c
msgid "Oversample must be multiple of 8."
msgstr ""
@ -1345,6 +1409,7 @@ msgid ""
"PWM frequency not writable when variable_frequency is False on construction."
msgstr ""
#: ports/esp32s2/common-hal/displayio/ParallelBus.c
#: ports/mimxrt10xx/common-hal/displayio/ParallelBus.c
#: ports/stm/common-hal/displayio/ParallelBus.c
msgid "ParallelBus not yet supported"
@ -1390,6 +1455,12 @@ msgstr ""
msgid "Polygon needs at least 3 points"
msgstr ""
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept PWM carrier. Pass a pin, frequency and duty cycle "
"instead"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
@ -1419,12 +1490,13 @@ msgstr ""
msgid "RNG Init Error"
msgstr ""
#: ports/esp32s2/common-hal/busio/UART.c
#: ports/mimxrt10xx/common-hal/busio/UART.c
msgid "RS485 inversion specified when not in RS485 mode"
msgstr ""
#: ports/cxd56/common-hal/rtc/RTC.c ports/mimxrt10xx/common-hal/rtc/RTC.c
#: ports/nrf/common-hal/rtc/RTC.c
#: ports/cxd56/common-hal/rtc/RTC.c ports/esp32s2/common-hal/rtc/RTC.c
#: ports/mimxrt10xx/common-hal/rtc/RTC.c ports/nrf/common-hal/rtc/RTC.c
msgid "RTC calibration is not supported on this board"
msgstr ""
@ -1478,7 +1550,7 @@ msgstr ""
msgid "SD card CSD format not supported"
msgstr ""
#: ports/atmel-samd/common-hal/busio/I2C.c
#: ports/atmel-samd/common-hal/busio/I2C.c ports/esp32s2/common-hal/busio/I2C.c
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
msgid "SDA or SCL needs a pull up"
msgstr ""
@ -1546,6 +1618,10 @@ msgstr ""
msgid "Slices not supported"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "SocketPool can only be used with wifi.radio"
msgstr ""
#: shared-bindings/aesio/aes.c
msgid "Source and destination buffers must be the same length"
msgstr ""
@ -1708,6 +1784,10 @@ msgstr ""
msgid "Unable to allocate buffers for signed conversion"
msgstr ""
#: ports/esp32s2/common-hal/busio/I2C.c
msgid "Unable to create lock"
msgstr ""
#: shared-module/displayio/I2CDisplay.c
#, c-format
msgid "Unable to find I2C Display at %x"
@ -1734,6 +1814,11 @@ msgstr ""
msgid "Unexpected nrfx uuid type"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/Socket.c
#, c-format
msgid "Unhandled ESP TLS error %d %d %x %d"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "Unknown failure"
msgstr ""
@ -1769,7 +1854,7 @@ msgid ""
msgstr ""
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/I2C.c
#: ports/esp32s2/common-hal/busio/UART.c ports/stm/common-hal/busio/I2C.c
msgid "Unsupported baudrate"
msgstr ""
@ -2009,6 +2094,7 @@ msgid "byteorder is not a string"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c
#: ports/esp32s2/common-hal/busio/UART.c
msgid "bytes > 8 bits not supported"
msgstr ""
@ -2523,7 +2609,7 @@ msgstr ""
msgid "index is out of bounds"
msgstr ""
#: py/obj.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c py/obj.c
msgid "index out of range"
msgstr ""
@ -3026,6 +3112,10 @@ msgstr ""
msgid "polygon can only be registered in one parent"
msgstr ""
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
@ -3042,6 +3132,24 @@ msgstr ""
msgid "pow() with 3 arguments requires integers"
msgstr ""
#: ports/esp32s2/boards/electroniccats_bastwifi/mpconfigboard.h
#: ports/esp32s2/boards/espressif_kaluga_1/mpconfigboard.h
#: ports/esp32s2/boards/espressif_saola_1_wroom/mpconfigboard.h
#: ports/esp32s2/boards/espressif_saola_1_wrover/mpconfigboard.h
#: ports/esp32s2/boards/microdev_micro_s2/mpconfigboard.h
#: ports/esp32s2/boards/muselab_nanoesp32_s2/mpconfigboard.h
#: ports/esp32s2/boards/unexpectedmaker_feathers2/mpconfigboard.h
msgid "pressing boot button at start up.\n"
msgstr ""
#: ports/atmel-samd/boards/circuitplayground_express/mpconfigboard.h
#: ports/atmel-samd/boards/circuitplayground_express_crickit/mpconfigboard.h
#: ports/atmel-samd/boards/circuitplayground_express_displayio/mpconfigboard.h
#: ports/atmel-samd/boards/escornabot_makech/mpconfigboard.h
#: ports/atmel-samd/boards/meowmeow/mpconfigboard.h
msgid "pressing both buttons at start up.\n"
msgstr ""
#: extmod/modutimeq.c
msgid "queue overflow"
msgstr ""
@ -3284,7 +3392,8 @@ msgstr ""
msgid "tuple/list has wrong length"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: ports/atmel-samd/common-hal/busio/UART.c
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c shared-bindings/canio/CAN.c
msgid "tx and rx cannot both be None"
msgstr ""

View File

@ -25,7 +25,7 @@
#define CALIBRATE_CRYSTALLESS 1
// Explanation of how a user got into safe mode.
#define BOARD_USER_SAFE_MODE_ACTION "pressing both buttons at start up.\n"
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing both buttons at start up.\n")
// Increase stack size slightly due to CPX library import nesting
#define CIRCUITPY_DEFAULT_STACK_SIZE (4248) //divisible by 8

View File

@ -27,7 +27,7 @@
#define USER_NEOPIXELS_PIN (&pin_PB23)
// Explanation of how a user got into safe mode.
#define BOARD_USER_SAFE_MODE_ACTION "pressing both buttons at start up.\n"
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing both buttons at start up.\n")
// Increase stack size slightly due to CPX library import nesting
#define CIRCUITPY_DEFAULT_STACK_SIZE (4248) // divisible by 8

View File

@ -25,7 +25,7 @@
#define CALIBRATE_CRYSTALLESS 1
// Explanation of how a user got into safe mode.
#define BOARD_USER_SAFE_MODE_ACTION "pressing both buttons at start up.\n"
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing both buttons at start up.\n")
// Increase stack size slightly due to CPX library import nesting.
#define CIRCUITPY_DEFAULT_STACK_SIZE (4248) // divisible by 8

View File

@ -11,7 +11,7 @@
#define CALIBRATE_CRYSTALLESS 1
// Explanation of how a user got into safe mode.
#define BOARD_USER_SAFE_MODE_ACTION "pressing both buttons at start up.\n"
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing both buttons at start up.\n")
#define DEFAULT_I2C_BUS_SCL (&pin_PA08)
#define DEFAULT_I2C_BUS_SDA (&pin_PA09)

View File

@ -11,7 +11,7 @@
#define CALIBRATE_CRYSTALLESS 1
// Explanation of how a user got into safe mode.
#define BOARD_USER_SAFE_MODE_ACTION "pressing both buttons at start up.\n"
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing both buttons at start up.\n")
#define DEFAULT_I2C_BUS_SCL (&pin_PA01)
#define DEFAULT_I2C_BUS_SDA (&pin_PA00)

View File

@ -31,6 +31,6 @@
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO0)
#define BOARD_USER_SAFE_MODE_ACTION "pressing boot button at start up.\n"
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing boot button at start up.\n")
#define AUTORESET_DELAY_MS 500

View File

@ -33,6 +33,6 @@
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO0)
#define BOARD_USER_SAFE_MODE_ACTION "pressing boot button at start up.\n"
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing boot button at start up.\n")
#define AUTORESET_DELAY_MS 500

View File

@ -33,6 +33,6 @@
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO0)
#define BOARD_USER_SAFE_MODE_ACTION "pressing boot button at start up.\n"
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing boot button at start up.\n")
#define AUTORESET_DELAY_MS 500

View File

@ -33,6 +33,6 @@
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO0)
#define BOARD_USER_SAFE_MODE_ACTION "pressing boot button at start up.\n"
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing boot button at start up.\n")
#define AUTORESET_DELAY_MS 500

View File

@ -35,6 +35,6 @@
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO0)
#define BOARD_USER_SAFE_MODE_ACTION "pressing boot button at start up.\n"
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing boot button at start up.\n")
#define AUTORESET_DELAY_MS 500

View File

@ -31,4 +31,8 @@
#define MICROPY_HW_NEOPIXEL (&pin_GPIO18)
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO0)
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing boot button at start up.\n")
#define AUTORESET_DELAY_MS 500

View File

@ -31,7 +31,7 @@
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO0)
#define BOARD_USER_SAFE_MODE_ACTION "pressing boot button at start up.\n"
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing boot button at start up.\n")
#define AUTORESET_DELAY_MS 500

View File

@ -119,9 +119,9 @@ void print_safe_mode_message(safe_mode_t reason) {
#ifdef BOARD_USER_SAFE_MODE_ACTION
// Output a user safe mode string if it's set.
serial_write_compressed(translate("You requested starting safe mode by "));
serial_write_compressed(translate(BOARD_USER_SAFE_MODE_ACTION));
serial_write_compressed(BOARD_USER_SAFE_MODE_ACTION);
serial_write_compressed(translate("To exit, please reset the board without "));
serial_write_compressed(translate(BOARD_USER_SAFE_MODE_ACTION));
serial_write_compressed(BOARD_USER_SAFE_MODE_ACTION);
#else
break;
#endif