Merge remote-tracking branch 'source/main' into main

This commit is contained in:
Kevin Matocha 2020-08-21 14:19:58 -05:00
commit 3753ea3cd8
76 changed files with 4029 additions and 2851 deletions

View File

@ -36,7 +36,7 @@ jobs:
- name: Install deps
run: |
sudo apt-get install -y eatmydata
sudo eatmydata apt-get install -y gettext librsvg2-bin mingw-w64
sudo eatmydata apt-get install -y gettext librsvg2-bin mingw-w64 latexmk texlive-fonts-recommended texlive-latex-recommended texlive-latex-extra
pip install requests sh click setuptools cpp-coveralls "Sphinx<4" sphinx-rtd-theme recommonmark sphinx-autoapi sphinxcontrib-svg2pdfconverter polib pyyaml astroid isort black awscli
- name: Versions
run: |
@ -73,12 +73,19 @@ jobs:
with:
name: stubs
path: circuitpython-stubs*
- name: Docs
- name: Test Documentation Build (HTML)
run: sphinx-build -E -W -b html -D version=${{ env.CP_VERSION }} -D release=${{ env.CP_VERSION }} . _build/html
- uses: actions/upload-artifact@v2
with:
name: docs
path: _build/html
- name: Test Documentation Build (LaTeX/PDF)
run: |
make latexpdf
- uses: actions/upload-artifact@v2
with:
name: docs
path: _build/latex
- name: Translations
run: make check-translate
- name: New boards check

3
.gitmodules vendored
View File

@ -147,3 +147,6 @@
[submodule "ports/esp32s2/esp-idf"]
path = ports/esp32s2/esp-idf
url = https://github.com/tannewt/esp-idf.git
[submodule "frozen/Adafruit_CircuitPython_RFM9x"]
path = frozen/Adafruit_CircuitPython_RFM9x
url = https://github.com/adafruit/Adafruit_CircuitPython_RFM9x.git

View File

@ -12,6 +12,9 @@ submodules:
include:
- extmod/ulab
formats:
- pdf
python:
version: 3
install:

View File

@ -6,18 +6,28 @@ def rstjinja(app, docname, source):
Render our pages as a jinja template for fancy templating goodness.
"""
# Make sure we're outputting HTML
if app.builder.format != 'html':
if app.builder.format not in ("html", "latex"):
return
# we only want our one jinja template to run through this func
if "shared-bindings/support_matrix" not in docname:
return
src = source[0]
src = rendered = source[0]
print(docname)
rendered = app.builder.templates.render_string(
src, app.config.html_context
)
if app.builder.format == "html":
rendered = app.builder.templates.render_string(
src, app.config.html_context
)
else:
from sphinx.util.template import BaseRenderer
renderer = BaseRenderer()
rendered = renderer.render_string(
src,
app.config.html_context
)
source[0] = rendered
def setup(app):

@ -0,0 +1 @@
Subproject commit cfffc233784961929d722ea4e9acfe5786790609

View File

@ -144,7 +144,7 @@ int readline_process_char(int c) {
goto right_arrow_key;
} else if (c == CHAR_CTRL_K) {
// CTRL-K is kill from cursor to end-of-line, inclusive
vstr_cut_tail_bytes(rl.line, last_line_len - rl.cursor_pos);
vstr_cut_tail_bytes(rl.line, rl.line->len - rl.cursor_pos);
// set redraw parameters
redraw_from_cursor = true;
} else if (c == CHAR_CTRL_N) {
@ -155,6 +155,7 @@ int readline_process_char(int c) {
goto up_arrow_key;
} else if (c == CHAR_CTRL_U) {
// CTRL-U is kill from beginning-of-line up to cursor
cont_chars = count_cont_bytes(rl.line->buf+rl.orig_line_len, rl.line->buf+rl.cursor_pos);
vstr_cut_out_bytes(rl.line, rl.orig_line_len, rl.cursor_pos - rl.orig_line_len);
// set redraw parameters
redraw_step_back = rl.cursor_pos - rl.orig_line_len;
@ -342,6 +343,7 @@ left_arrow_key:
if (c == '~') {
if (rl.escape_seq_buf[0] == '1' || rl.escape_seq_buf[0] == '7') {
home_key:
cont_chars = count_cont_bytes(rl.line->buf+rl.orig_line_len, rl.line->buf+rl.cursor_pos);
redraw_step_back = rl.cursor_pos - rl.orig_line_len;
} else if (rl.escape_seq_buf[0] == '4' || rl.escape_seq_buf[0] == '8') {
end_key:
@ -352,7 +354,12 @@ end_key:
delete_key:
#endif
if (rl.cursor_pos < rl.line->len) {
vstr_cut_out_bytes(rl.line, rl.cursor_pos, 1);
size_t len = 1;
while (UTF8_IS_CONT(rl.line->buf[rl.cursor_pos+len]) &&
rl.cursor_pos+len < rl.line->len) {
len++;
}
vstr_cut_out_bytes(rl.line, rl.cursor_pos, len);
redraw_from_cursor = true;
}
} else {

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: 2020-07-06 18:10+0000\n"
"Last-Translator: oon arfiandwi <oon.arfiandwi@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -72,13 +72,17 @@ msgstr ""
msgid "%q in use"
msgstr "%q sedang digunakan"
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "%q indeks di luar batas"
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgstr "indeks %q harus bilangan bulat, bukan %s"
msgid "%q indices must be integers, not %q"
msgstr ""
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -116,6 +120,42 @@ msgstr "%q() mengambil posisi argumen %d tapi %d yang diberikan"
msgid "'%q' argument required"
msgstr "'%q' argumen dibutuhkan"
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr ""
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr ""
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr ""
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr ""
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -166,48 +206,6 @@ msgstr "'%s' integer %d tidak dalam kisaran %d..%d"
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr "'%s' integer 0x%x tidak cukup didalam mask 0x%x"
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr "Objek '%s' tidak dapat menetapkan atribut '%q'"
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr "Objek '%s' tidak mendukung '%q'"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr "Objek '%s' tidak mendukung penetapan item"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr "Objek '%s' tidak mendukung penghapusan item"
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr "Objek '%s' tidak memiliki atribut '%q'"
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr "Objek '%s' bukan iterator"
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr "Objek '%s' tidak dapat dipanggil"
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr "'%s' objek tidak dapat diulang"
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr "Objek '%s' tidak dapat disubkripsikan"
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr "'=' perataan tidak diizinkan dalam penentu format string"
@ -457,6 +455,10 @@ msgstr "Panjang buffer %d terlalu besar. Itu harus kurang dari %d"
msgid "Buffer length must be a multiple of 512"
msgstr "Panjang buffer harus kelipatan 512"
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Penyangga harus memiliki panjang setidaknya 1"
@ -658,6 +660,10 @@ msgstr "Tidak dapat menginisialisasi ulang timer"
msgid "Could not restart PWM"
msgstr "Tidak dapat memulai ulang PWM"
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr ""
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr "Tidak dapat memulai PWM"
@ -758,7 +764,7 @@ msgstr "Error pada regex"
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr "Diharapkan %q"
@ -841,6 +847,11 @@ msgstr "Gagal menulis flash internal."
msgid "File exists"
msgstr "File sudah ada"
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
@ -866,7 +877,7 @@ msgid "Group full"
msgstr "Grup penuh"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Perangkat keras sibuk, coba pin alternatif"
@ -882,6 +893,10 @@ msgstr "operasi I/O pada file tertutup"
msgid "I2C Init Error"
msgstr "Gagal Inisialisasi I2C"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -929,6 +944,11 @@ msgstr ""
msgid "Invalid %q pin"
msgstr "%q pada tidak valid"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr "Nilai Unit ADC tidak valid"
@ -941,24 +961,12 @@ msgstr "File BMP tidak valid"
msgid "Invalid DAC pin supplied"
msgstr "Pin DAC yang diberikan tidak valid"
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr "Pilihan pin I2C tidak valid"
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr "Frekuensi PWM tidak valid"
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr "Pilihan pin SPI tidak valid"
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr "Pilihan pin UART tidak valid"
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Argumen tidak valid"
@ -1255,6 +1263,10 @@ msgstr "Tidak dapat menyambungkan ke AP"
msgid "Not playing"
msgstr ""
#: main.c
msgid "Not running saved code.\n"
msgstr ""
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1340,8 +1352,13 @@ msgstr "Tambahkan module apapun pada filesystem\n"
msgid "Polygon needs at least 3 points"
msgstr ""
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
@ -1358,6 +1375,10 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr ""
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr ""
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr ""
@ -1419,13 +1440,8 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr ""
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr "Berjalan di mode aman(safe mode)! Auto-reload tidak aktif.\n"
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgid "Running in safe mode! "
msgstr ""
"Berjalan di mode aman(safe mode)! tidak menjalankan kode yang tersimpan.\n"
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
@ -1436,6 +1452,16 @@ msgstr ""
msgid "SDA or SCL needs a pull up"
msgstr "SDA atau SCL membutuhkan pull up"
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO Init Error %d"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr ""
@ -1792,8 +1818,7 @@ msgid "__init__() should return None"
msgstr ""
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgid "__init__() should return None, not '%q'"
msgstr ""
#: py/objobject.c
@ -1948,7 +1973,7 @@ msgstr "byte > 8 bit tidak didukung"
msgid "bytes value out of range"
msgstr ""
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr "kalibrasi keluar dari jangkauan"
@ -1980,47 +2005,17 @@ msgstr ""
msgid "can't assign to expression"
msgstr "tidak dapat menetapkan ke ekspresi"
#: py/obj.c
#, c-format
msgid "can't convert %s to complex"
msgstr ""
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr ""
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr ""
#: py/objint.c
msgid "can't convert NaN to int"
msgstr ""
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr ""
#: py/objint.c
msgid "can't convert inf to int"
msgstr ""
#: py/obj.c
msgid "can't convert to complex"
msgstr ""
#: py/obj.c
msgid "can't convert to float"
msgstr ""
#: py/obj.c
msgid "can't convert to int"
msgid "can't convert to %q"
msgstr ""
#: py/objstr.c
@ -2428,7 +2423,7 @@ msgstr "fungsi kehilangan argumen keyword '%q' yang dibutuhkan"
msgid "function missing required positional argument #%d"
msgstr "fungsi kehilangan argumen posisi #%d yang dibutuhkan"
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr "fungsi mengambil posisi argumen %d tapi %d yang diberikan"
@ -2477,10 +2472,7 @@ msgstr "lapisan (padding) tidak benar"
msgid "index is out of bounds"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr "index keluar dari jangkauan"
@ -2836,8 +2828,7 @@ msgid "number of points must be at least 2"
msgstr ""
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgid "object '%q' is not a tuple or list"
msgstr ""
#: py/obj.c
@ -2873,8 +2864,7 @@ msgid "object not iterable"
msgstr ""
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgid "object of type '%q' has no len()"
msgstr ""
#: py/obj.c
@ -2968,20 +2958,9 @@ msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr "Muncul dari PulseIn yang kosong"
#: py/objset.c
msgid "pop from an empty set"
msgstr ""
#: py/objlist.c
msgid "pop from empty list"
msgstr ""
#: py/objdict.c
msgid "popitem(): dictionary is empty"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr ""
#: py/objint_mpz.c
@ -3138,12 +3117,7 @@ msgid "stream operation not supported"
msgstr ""
#: py/objstrunicode.c
msgid "string index out of range"
msgstr ""
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgid "string indices must be integers, not %q"
msgstr ""
#: py/stream.c
@ -3154,10 +3128,6 @@ msgstr ""
msgid "struct: cannot index"
msgstr "struct: tidak bisa melakukan index"
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr "struct: index keluar dari jangkauan"
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr "struct: tidak ada fields"
@ -3228,7 +3198,7 @@ msgstr ""
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr ""
@ -3236,10 +3206,6 @@ msgstr ""
msgid "tuple/list has wrong length"
msgstr ""
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3295,8 +3261,7 @@ msgid "unknown conversion specifier %c"
msgstr ""
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr ""
#: py/compile.c
@ -3336,7 +3301,7 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr ""
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgid "unsupported type for %q: '%q'"
msgstr ""
#: py/runtime.c
@ -3344,7 +3309,7 @@ msgid "unsupported type for operator"
msgstr ""
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr ""
#: py/objint.c
@ -3424,6 +3389,58 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "indeks %q harus bilangan bulat, bukan %s"
#~ msgid "'%s' object cannot assign attribute '%q'"
#~ msgstr "Objek '%s' tidak dapat menetapkan atribut '%q'"
#~ msgid "'%s' object does not support '%q'"
#~ msgstr "Objek '%s' tidak mendukung '%q'"
#~ msgid "'%s' object does not support item assignment"
#~ msgstr "Objek '%s' tidak mendukung penetapan item"
#~ msgid "'%s' object does not support item deletion"
#~ msgstr "Objek '%s' tidak mendukung penghapusan item"
#~ msgid "'%s' object has no attribute '%q'"
#~ msgstr "Objek '%s' tidak memiliki atribut '%q'"
#~ msgid "'%s' object is not an iterator"
#~ msgstr "Objek '%s' bukan iterator"
#~ msgid "'%s' object is not callable"
#~ msgstr "Objek '%s' tidak dapat dipanggil"
#~ msgid "'%s' object is not iterable"
#~ msgstr "'%s' objek tidak dapat diulang"
#~ msgid "'%s' object is not subscriptable"
#~ msgstr "Objek '%s' tidak dapat disubkripsikan"
#~ msgid "Invalid I2C pin selection"
#~ msgstr "Pilihan pin I2C tidak valid"
#~ msgid "Invalid SPI pin selection"
#~ msgstr "Pilihan pin SPI tidak valid"
#~ msgid "Invalid UART pin selection"
#~ msgstr "Pilihan pin UART tidak valid"
#~ msgid "Running in safe mode! Auto-reload is off.\n"
#~ msgstr "Berjalan di mode aman(safe mode)! Auto-reload tidak aktif.\n"
#~ msgid "Running in safe mode! Not running saved code.\n"
#~ msgstr ""
#~ "Berjalan di mode aman(safe mode)! tidak menjalankan kode yang tersimpan.\n"
#~ msgid "pop from an empty PulseIn"
#~ msgstr "Muncul dari PulseIn yang kosong"
#~ msgid "struct: index out of range"
#~ msgstr "struct: index keluar dari jangkauan"
#~ msgid "'async for' or 'async with' outside async function"
#~ msgstr "'async for' atau 'async with' di luar fungsi async"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-08-14 09:36-0400\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\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"
@ -744,7 +744,7 @@ msgstr ""
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr ""
@ -1328,6 +1328,15 @@ msgstr ""
msgid "Polygon needs at least 3 points"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Prefix buffer must be on the heap"
msgstr ""
@ -1340,6 +1349,10 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr ""
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr ""
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr ""
@ -1958,6 +1971,7 @@ msgid "can't assign to expression"
msgstr ""
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr ""
@ -3155,10 +3169,6 @@ msgstr ""
msgid "tuple/list has wrong length"
msgstr ""
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: 2020-05-24 03:22+0000\n"
"Last-Translator: dronecz <mzuzelka@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -44,11 +44,11 @@ msgstr ""
#: py/obj.c
msgid " File \"%q\""
msgstr "  Soubor \"% q\""
msgstr "  Soubor \"%q\""
#: py/obj.c
msgid " File \"%q\", line %d"
msgstr "  Soubor \"% q\", řádek% d"
msgstr "  Soubor \"%q\", řádek %d"
#: main.c
msgid " output:\n"
@ -57,7 +57,7 @@ msgstr " výstup:\n"
#: py/objstr.c
#, c-format
msgid "%%c requires int or char"
msgstr "%% c vyžaduje int nebo char"
msgstr "%%c vyžaduje int nebo char"
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
@ -72,17 +72,21 @@ msgstr ""
msgid "%q in use"
msgstr "%q se nyní používá"
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "%q index je mimo rozsah"
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgstr "Indexy% q musí být celá čísla, nikoli% s"
msgid "%q indices must be integers, not %q"
msgstr ""
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
msgstr "Seznam% q musí být seznam"
msgstr "Seznam %q musí být seznam"
#: shared-bindings/memorymonitor/AllocationAlarm.c
msgid "%q must be >= 0"
@ -94,11 +98,11 @@ msgstr ""
#: shared-bindings/memorymonitor/AllocationAlarm.c
#: shared-bindings/vectorio/Circle.c shared-bindings/vectorio/Rectangle.c
msgid "%q must be >= 1"
msgstr "% q musí být > = 1"
msgstr " %q musí být > = 1"
#: shared-module/vectorio/Polygon.c
msgid "%q must be a tuple of length 2"
msgstr "% q musí být n-tice délky 2"
msgstr " %q musí být n-tice délky 2"
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
msgid "%q pin invalid"
@ -106,7 +110,7 @@ msgstr ""
#: shared-bindings/fontio/BuiltinFont.c
msgid "%q should be an int"
msgstr "% q by měl být int"
msgstr " %q by měl být int"
#: py/bc.c py/objnamedtuple.c
msgid "%q() takes %d positional arguments but %d were given"
@ -116,6 +120,42 @@ msgstr ""
msgid "'%q' argument required"
msgstr ""
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr ""
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr ""
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr ""
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr ""
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -166,48 +206,6 @@ msgstr ""
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr ""
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr ""
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr ""
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr ""
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr ""
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr ""
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr ""
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr ""
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr ""
@ -455,6 +453,10 @@ msgstr ""
msgid "Buffer length must be a multiple of 512"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr ""
@ -645,6 +647,10 @@ msgstr ""
msgid "Could not restart PWM"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr ""
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr ""
@ -744,7 +750,7 @@ msgstr ""
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr ""
@ -827,6 +833,11 @@ msgstr ""
msgid "File exists"
msgstr ""
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
@ -851,7 +862,7 @@ msgid "Group full"
msgstr ""
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr ""
@ -867,6 +878,10 @@ msgstr ""
msgid "I2C Init Error"
msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -912,6 +927,11 @@ msgstr ""
msgid "Invalid %q pin"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr ""
@ -924,24 +944,12 @@ msgstr ""
msgid "Invalid DAC pin supplied"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr ""
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr ""
@ -1237,6 +1245,10 @@ msgstr ""
msgid "Not playing"
msgstr ""
#: main.c
msgid "Not running saved code.\n"
msgstr ""
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1322,8 +1334,13 @@ msgstr ""
msgid "Polygon needs at least 3 points"
msgstr ""
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
@ -1338,6 +1355,10 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr ""
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr ""
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr ""
@ -1398,11 +1419,7 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr ""
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr ""
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgid "Running in safe mode! "
msgstr ""
#: shared-module/sdcardio/SDCard.c
@ -1414,6 +1431,16 @@ msgstr ""
msgid "SDA or SCL needs a pull up"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO Init Error %d"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr ""
@ -1763,8 +1790,7 @@ msgid "__init__() should return None"
msgstr ""
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgid "__init__() should return None, not '%q'"
msgstr ""
#: py/objobject.c
@ -1918,7 +1944,7 @@ msgstr ""
msgid "bytes value out of range"
msgstr ""
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr ""
@ -1950,47 +1976,17 @@ msgstr ""
msgid "can't assign to expression"
msgstr ""
#: py/obj.c
#, c-format
msgid "can't convert %s to complex"
msgstr ""
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr ""
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr ""
#: py/objint.c
msgid "can't convert NaN to int"
msgstr ""
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr ""
#: py/objint.c
msgid "can't convert inf to int"
msgstr ""
#: py/obj.c
msgid "can't convert to complex"
msgstr ""
#: py/obj.c
msgid "can't convert to float"
msgstr ""
#: py/obj.c
msgid "can't convert to int"
msgid "can't convert to %q"
msgstr ""
#: py/objstr.c
@ -2398,7 +2394,7 @@ msgstr ""
msgid "function missing required positional argument #%d"
msgstr ""
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr ""
@ -2447,10 +2443,7 @@ msgstr ""
msgid "index is out of bounds"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr ""
@ -2806,8 +2799,7 @@ msgid "number of points must be at least 2"
msgstr ""
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgid "object '%q' is not a tuple or list"
msgstr ""
#: py/obj.c
@ -2843,8 +2835,7 @@ msgid "object not iterable"
msgstr ""
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgid "object of type '%q' has no len()"
msgstr ""
#: py/obj.c
@ -2937,20 +2928,9 @@ msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr ""
#: py/objset.c
msgid "pop from an empty set"
msgstr ""
#: py/objlist.c
msgid "pop from empty list"
msgstr ""
#: py/objdict.c
msgid "popitem(): dictionary is empty"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr ""
#: py/objint_mpz.c
@ -3107,12 +3087,7 @@ msgid "stream operation not supported"
msgstr ""
#: py/objstrunicode.c
msgid "string index out of range"
msgstr ""
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgid "string indices must be integers, not %q"
msgstr ""
#: py/stream.c
@ -3123,10 +3098,6 @@ msgstr ""
msgid "struct: cannot index"
msgstr ""
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr ""
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr ""
@ -3196,7 +3167,7 @@ msgstr ""
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr ""
@ -3204,10 +3175,6 @@ msgstr ""
msgid "tuple/list has wrong length"
msgstr ""
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3263,8 +3230,7 @@ msgid "unknown conversion specifier %c"
msgstr ""
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr ""
#: py/compile.c
@ -3304,7 +3270,7 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr ""
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgid "unsupported type for %q: '%q'"
msgstr ""
#: py/runtime.c
@ -3312,7 +3278,7 @@ msgid "unsupported type for operator"
msgstr ""
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr ""
#: py/objint.c
@ -3391,3 +3357,6 @@ msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "Indexy %q musí být celá čísla, nikoli %s"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: 2020-06-16 18:24+0000\n"
"Last-Translator: Andreas Buchen <andreas.buchen@gmail.com>\n"
"Language: de_DE\n"
@ -71,13 +71,17 @@ msgstr ""
msgid "%q in use"
msgstr "%q in Benutzung"
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "Der Index %q befindet sich außerhalb des Bereiches"
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgstr "%q Indizes müssen Integer sein, nicht %s"
msgid "%q indices must be integers, not %q"
msgstr ""
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -115,6 +119,42 @@ msgstr "%q() nimmt %d Argumente ohne Keyword an, aber es wurden %d angegeben"
msgid "'%q' argument required"
msgstr "'%q' Argument erforderlich"
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr ""
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr ""
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr ""
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr ""
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -165,48 +205,6 @@ msgstr "'%s' integer %d ist nicht im Bereich %d..%d"
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr "'%s' Integer 0x%x passt nicht in Maske 0x%x"
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr "Das Objekt '%s' kann das Attribut '%q' nicht zuweisen"
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr "Das Objekt '%s' unterstützt '%q' nicht"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr "'%s' Objekt unterstützt keine Zuweisung von Elementen"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr "'%s' Objekt unterstützt das Löschen von Elementen nicht"
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr "'%s' Objekt hat kein Attribut '%q'"
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr "'%s' Objekt ist kein Iterator"
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr "'%s' object ist nicht aufrufbar"
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr "'%s' Objekt nicht iterierbar"
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr "'%s' Objekt hat keine '__getitem__'-Methode (not subscriptable)"
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr "'='-Ausrichtung ist im String-Formatbezeichner nicht zulässig"
@ -458,6 +456,10 @@ msgstr "Die Pufferlänge %d ist zu groß. Sie muss kleiner als %d sein"
msgid "Buffer length must be a multiple of 512"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Der Puffer muss eine Mindestenslänge von 1 haben"
@ -655,6 +657,10 @@ msgstr "Timer konnte nicht neu gestartet werden"
msgid "Could not restart PWM"
msgstr "PWM konnte nicht neu gestartet werden"
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr ""
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr "PWM konnte nicht gestartet werden"
@ -754,7 +760,7 @@ msgstr "Fehler in regex"
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr "Erwartet ein(e) %q"
@ -838,6 +844,11 @@ msgstr "Interner Flash konnte nicht geschrieben werden."
msgid "File exists"
msgstr "Datei existiert"
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
@ -866,7 +877,7 @@ msgid "Group full"
msgstr "Gruppe voll"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Hardware beschäftigt, versuchen Sie alternative Pins"
@ -882,6 +893,10 @@ msgstr "Lese/Schreibe-operation an geschlossener Datei"
msgid "I2C Init Error"
msgstr "I2C-Init-Fehler"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -929,6 +944,11 @@ msgstr ""
msgid "Invalid %q pin"
msgstr "Ungültiger %q pin"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr "Ungültiger ADC-Einheitenwert"
@ -941,24 +961,12 @@ msgstr "Ungültige BMP-Datei"
msgid "Invalid DAC pin supplied"
msgstr "Ungültiger DAC-Pin angegeben"
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr "Ungültige I2C-Pinauswahl"
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr "Ungültige PWM Frequenz"
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr "Ungültige SPI-Pin-Auswahl"
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr "Ungültige UART-Pinauswahl"
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Ungültiges Argument"
@ -1256,6 +1264,10 @@ msgstr "Nicht verbunden"
msgid "Not playing"
msgstr "Spielt nicht ab"
#: main.c
msgid "Not running saved code.\n"
msgstr ""
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1350,9 +1362,14 @@ msgstr "und alle Module im Dateisystem \n"
msgid "Polygon needs at least 3 points"
msgstr "Polygone brauchen mindestens 3 Punkte"
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
msgstr "Pop aus einem leeren Ps2-Puffer"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Prefix buffer must be on the heap"
@ -1368,6 +1385,10 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr "Pull wird nicht verwendet, wenn die Richtung output ist."
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr "PulseOut wird auf diesem Chip nicht unterstützt"
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr "RNG DeInit-Fehler"
@ -1428,12 +1449,8 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr "Zeileneintrag muss ein digitalio.DigitalInOut sein"
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr "Sicherheitsmodus aktiv! Automatisches Neuladen ist deaktiviert.\n"
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgstr "Sicherheitsmodus aktiv! Gespeicherter Code wird nicht ausgeführt\n"
msgid "Running in safe mode! "
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
@ -1444,6 +1461,16 @@ msgstr ""
msgid "SDA or SCL needs a pull up"
msgstr "SDA oder SCL brauchen pull up"
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO Init Error %d"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr "SPI-Init-Fehler"
@ -1820,9 +1847,8 @@ msgid "__init__() should return None"
msgstr "__init__() sollte None zurückgeben"
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgstr "__init__() sollte None zurückgeben, nicht '%s'"
msgid "__init__() should return None, not '%q'"
msgstr ""
#: py/objobject.c
msgid "__new__ arg must be a user-type"
@ -1975,7 +2001,7 @@ msgstr "bytes mit mehr als 8 bits werden nicht unterstützt"
msgid "bytes value out of range"
msgstr "Byte-Wert außerhalb des Bereichs"
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr "Kalibrierung ist außerhalb der Reichweite"
@ -2009,48 +2035,18 @@ msgstr ""
msgid "can't assign to expression"
msgstr "kann keinem Ausdruck zuweisen"
#: py/obj.c
#, c-format
msgid "can't convert %s to complex"
msgstr "kann %s nicht nach complex konvertieren"
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr "kann %s nicht nach float konvertieren"
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
msgstr "kann %s nicht nach int konvertieren"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr "Kann '%q' Objekt nicht implizit nach %q konvertieren"
#: py/objint.c
msgid "can't convert NaN to int"
msgstr "kann NaN nicht nach int konvertieren"
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr "kann Adresse nicht in int konvertieren"
#: py/objint.c
msgid "can't convert inf to int"
msgstr "kann inf nicht nach int konvertieren"
#: py/obj.c
msgid "can't convert to complex"
msgstr "kann nicht nach complex konvertieren"
#: py/obj.c
msgid "can't convert to float"
msgstr "kann nicht nach float konvertieren"
#: py/obj.c
msgid "can't convert to int"
msgstr "kann nicht nach int konvertieren"
msgid "can't convert to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert to str implicitly"
@ -2468,7 +2464,7 @@ msgstr "Funktion vermisst benötigtes Keyword-Argumente '%q'"
msgid "function missing required positional argument #%d"
msgstr "Funktion vermisst benötigtes Argumente ohne Keyword #%d"
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr ""
@ -2518,10 +2514,7 @@ msgstr "padding ist inkorrekt"
msgid "index is out of bounds"
msgstr "Index ist außerhalb der Grenzen"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr "index außerhalb der Reichweite"
@ -2884,9 +2877,8 @@ msgid "number of points must be at least 2"
msgstr "Die Anzahl der Punkte muss mindestens 2 betragen"
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgstr "Objekt '%s' ist weder tupel noch list"
msgid "object '%q' is not a tuple or list"
msgstr ""
#: py/obj.c
msgid "object does not support item assignment"
@ -2921,9 +2913,8 @@ msgid "object not iterable"
msgstr "Objekt nicht iterierbar"
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgstr "Objekt vom Typ '%s' hat keine len()"
msgid "object of type '%q' has no len()"
msgstr ""
#: py/obj.c
msgid "object with buffer protocol required"
@ -3018,21 +3009,10 @@ msgstr "Polygon kann nur in einem übergeordneten Element registriert werden"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr "pop von einem leeren PulseIn"
#: py/objset.c
msgid "pop from an empty set"
msgstr "pop von einer leeren Menge (set)"
#: py/objlist.c
msgid "pop from empty list"
msgstr "pop von einer leeren Liste"
#: py/objdict.c
msgid "popitem(): dictionary is empty"
msgstr "popitem(): dictionary ist leer"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr ""
#: py/objint_mpz.c
msgid "pow() 3rd argument cannot be 0"
@ -3190,13 +3170,8 @@ msgid "stream operation not supported"
msgstr "stream operation ist nicht unterstützt"
#: py/objstrunicode.c
msgid "string index out of range"
msgstr "String index außerhalb des Bereiches"
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgstr "String indizes müssen Integer sein, nicht %s"
msgid "string indices must be integers, not %q"
msgstr ""
#: py/stream.c
msgid "string not supported; use bytes or bytearray"
@ -3207,10 +3182,6 @@ msgstr ""
msgid "struct: cannot index"
msgstr "struct: kann nicht indexieren"
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr "struct: index außerhalb gültigen Bereichs"
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr "struct: keine Felder"
@ -3280,7 +3251,7 @@ msgstr "zu viele Werte zum Auspacken (erwartet %d)"
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr "Tupelindex außerhalb des Bereichs"
@ -3288,10 +3259,6 @@ msgstr "Tupelindex außerhalb des Bereichs"
msgid "tuple/list has wrong length"
msgstr "tupel/list hat falsche Länge"
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr "Tupel / Liste auf RHS erforderlich"
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3351,9 +3318,8 @@ msgid "unknown conversion specifier %c"
msgstr "unbekannter Konvertierungs specifier %c"
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgstr "unbekannter Formatcode '%c' für Objekt vom Typ '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr ""
#: py/compile.c
msgid "unknown type"
@ -3392,16 +3358,16 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr "nicht unterstütztes Formatzeichen '%c' (0x%x) bei Index %d"
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgstr "nicht unterstützter Type für %q: '%s'"
msgid "unsupported type for %q: '%q'"
msgstr ""
#: py/runtime.c
msgid "unsupported type for operator"
msgstr "nicht unterstützter Typ für Operator"
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgstr "nicht unterstützte Typen für %q: '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr ""
#: py/objint.c
#, c-format
@ -3480,12 +3446,126 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid "tuple/list required on RHS"
#~ msgstr "Tupel / Liste auf RHS erforderlich"
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "%q Indizes müssen Integer sein, nicht %s"
#~ msgid "'%s' object cannot assign attribute '%q'"
#~ msgstr "Das Objekt '%s' kann das Attribut '%q' nicht zuweisen"
#~ msgid "'%s' object does not support '%q'"
#~ msgstr "Das Objekt '%s' unterstützt '%q' nicht"
#~ msgid "'%s' object does not support item assignment"
#~ msgstr "'%s' Objekt unterstützt keine Zuweisung von Elementen"
#~ msgid "'%s' object does not support item deletion"
#~ msgstr "'%s' Objekt unterstützt das Löschen von Elementen nicht"
#~ msgid "'%s' object has no attribute '%q'"
#~ msgstr "'%s' Objekt hat kein Attribut '%q'"
#~ msgid "'%s' object is not an iterator"
#~ msgstr "'%s' Objekt ist kein Iterator"
#~ msgid "'%s' object is not callable"
#~ msgstr "'%s' object ist nicht aufrufbar"
#~ msgid "'%s' object is not iterable"
#~ msgstr "'%s' Objekt nicht iterierbar"
#~ msgid "'%s' object is not subscriptable"
#~ msgstr "'%s' Objekt hat keine '__getitem__'-Methode (not subscriptable)"
#~ msgid "Invalid I2C pin selection"
#~ msgstr "Ungültige I2C-Pinauswahl"
#~ msgid "Invalid SPI pin selection"
#~ msgstr "Ungültige SPI-Pin-Auswahl"
#~ msgid "Invalid UART pin selection"
#~ msgstr "Ungültige UART-Pinauswahl"
#~ msgid "Pop from an empty Ps2 buffer"
#~ msgstr "Pop aus einem leeren Ps2-Puffer"
#~ msgid "Running in safe mode! Auto-reload is off.\n"
#~ msgstr "Sicherheitsmodus aktiv! Automatisches Neuladen ist deaktiviert.\n"
#~ msgid "Running in safe mode! Not running saved code.\n"
#~ msgstr "Sicherheitsmodus aktiv! Gespeicherter Code wird nicht ausgeführt\n"
#~ msgid "__init__() should return None, not '%s'"
#~ msgstr "__init__() sollte None zurückgeben, nicht '%s'"
#~ msgid "can't convert %s to complex"
#~ msgstr "kann %s nicht nach complex konvertieren"
#~ msgid "can't convert %s to float"
#~ msgstr "kann %s nicht nach float konvertieren"
#~ msgid "can't convert %s to int"
#~ msgstr "kann %s nicht nach int konvertieren"
#~ msgid "can't convert NaN to int"
#~ msgstr "kann NaN nicht nach int konvertieren"
#~ msgid "can't convert address to int"
#~ msgstr "kann Adresse nicht in int konvertieren"
#~ msgid "can't convert inf to int"
#~ msgstr "kann inf nicht nach int konvertieren"
#~ msgid "can't convert to complex"
#~ msgstr "kann nicht nach complex konvertieren"
#~ msgid "can't convert to float"
#~ msgstr "kann nicht nach float konvertieren"
#~ msgid "can't convert to int"
#~ msgstr "kann nicht nach int konvertieren"
#~ msgid "object '%s' is not a tuple or list"
#~ msgstr "Objekt '%s' ist weder tupel noch list"
#~ msgid "object of type '%s' has no len()"
#~ msgstr "Objekt vom Typ '%s' hat keine len()"
#~ msgid "pop from an empty PulseIn"
#~ msgstr "pop von einem leeren PulseIn"
#~ msgid "pop from an empty set"
#~ msgstr "pop von einer leeren Menge (set)"
#~ msgid "pop from empty list"
#~ msgstr "pop von einer leeren Liste"
#~ msgid "popitem(): dictionary is empty"
#~ msgstr "popitem(): dictionary ist leer"
#~ msgid "string index out of range"
#~ msgstr "String index außerhalb des Bereiches"
#~ msgid "string indices must be integers, not %s"
#~ msgstr "String indizes müssen Integer sein, nicht %s"
#~ msgid "struct: index out of range"
#~ msgstr "struct: index außerhalb gültigen Bereichs"
#~ msgid "unknown format code '%c' for object of type '%s'"
#~ msgstr "unbekannter Formatcode '%c' für Objekt vom Typ '%s'"
#~ msgid "unsupported type for %q: '%s'"
#~ msgstr "nicht unterstützter Type für %q: '%s'"
#~ msgid "unsupported types for %q: '%s', '%s'"
#~ msgstr "nicht unterstützte Typen für %q: '%s', '%s'"
#~ msgid "'async for' or 'async with' outside async function"
#~ msgstr "'async for' oder 'async with' außerhalb der asynchronen Funktion"
#~ msgid "PulseOut not supported on this chip"
#~ msgstr "PulseOut wird auf diesem Chip nicht unterstützt"
#~ msgid "PulseIn not supported on this chip"
#~ msgstr "PulseIn wird auf diesem Chip nicht unterstützt"

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"PO-Revision-Date: 2020-07-24 21:12+0000\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: 2020-08-17 21:11+0000\n"
"Last-Translator: Alvaro Figueroa <alvaro@greencore.co.cr>\n"
"Language-Team: \n"
"Language: es\n"
@ -75,13 +75,17 @@ msgstr "%q fallo: %d"
msgid "%q in use"
msgstr "%q está siendo utilizado"
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "%q indice fuera de rango"
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgstr "%q indices deben ser enteros, no %s"
msgid "%q indices must be integers, not %q"
msgstr "índices %q deben ser enteros, no %q"
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -119,6 +123,42 @@ msgstr "%q() toma %d argumentos posicionales pero %d fueron dados"
msgid "'%q' argument required"
msgstr "argumento '%q' requerido"
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr "el objeto '%q' no puede asignar el atributo '%q'"
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr "objeto '%q' no tiene capacidad '%q'"
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr "objeto '%q' no tiene capacidad de asignado de artículo"
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr "objeto '%q' no tiene capacidad de borrado de artículo"
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr "objeto '%q' no tiene atributo '%q'"
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr "objeto '%q' no es un iterador"
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr "objeto '%q' no es llamable"
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr "objeto '%q' no es iterable"
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr "objeto '%q' no es subscribible"
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -169,48 +209,6 @@ msgstr "'%s' entero %d no esta dentro del rango %d..%d"
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr "'%s' entero 0x%x no cabe en la máscara 0x%x"
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr "El objeto '%s' no puede asignar al atributo '%q'"
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr "El objeto '%s' no admite '%q'"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr "el objeto '%s' no soporta la asignación de elementos"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr "objeto '%s' no soporta la eliminación de elementos"
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr "objeto '%s' no tiene atributo '%q'"
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr "objeto '%s' no es un iterator"
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr "objeto '%s' no puede ser llamado"
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr "objeto '%s' no es iterable"
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr "el objeto '%s' no es suscriptable"
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr "'=' alineación no permitida en el especificador string format"
@ -229,7 +227,7 @@ msgstr "'await' fuera de la función"
#: py/compile.c
msgid "'await', 'async for' or 'async with' outside async function"
msgstr ""
msgstr "'await', 'async for' o 'async with' fuera de la función async"
#: py/compile.c
msgid "'break' outside loop"
@ -464,6 +462,10 @@ msgstr "La longitud del buffer %d es muy grande. Debe ser menor a %d"
msgid "Buffer length must be a multiple of 512"
msgstr "El tamaño del búfer debe ser múltiplo de 512"
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Buffer must be a multiple of 512 bytes"
msgstr "Búfer deber ser un múltiplo de 512 bytes"
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Buffer debe ser de longitud 1 como minimo"
@ -660,6 +662,10 @@ msgstr "No se pudo reiniciar el temporizador"
msgid "Could not restart PWM"
msgstr "No se pudo reiniciar el PWM"
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr "No se puede definir la dirección"
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr "No se pudo iniciar el PWM"
@ -759,7 +765,7 @@ msgstr "Error en regex"
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr "Se espera un %q"
@ -842,6 +848,11 @@ msgstr "Error al escribir al flash interno."
msgid "File exists"
msgstr "El archivo ya existe"
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr "Framebuffer requiere %d bytes"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr "Frecuencia capturada por encima de la capacidad. Captura en pausa."
@ -867,7 +878,7 @@ msgid "Group full"
msgstr "Group lleno"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Hardware ocupado, pruebe pines alternativos"
@ -883,6 +894,10 @@ msgstr "Operación I/O en archivo cerrado"
msgid "I2C Init Error"
msgstr "Error de inicio de I2C"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "I2SOut no disponible"
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -930,6 +945,11 @@ msgstr "%q inválido"
msgid "Invalid %q pin"
msgstr "Pin %q inválido"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr "selección inválida de pin %q"
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr "Valor de unidad de ADC no válido"
@ -942,24 +962,12 @@ msgstr "Archivo BMP inválido"
msgid "Invalid DAC pin supplied"
msgstr "Pin suministrado inválido para DAC"
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr "Selección de pin I2C no válida"
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr "Frecuencia PWM inválida"
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr "Selección de pin SPI no válida"
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr "Selección de pin UART no válida"
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Argumento inválido"
@ -1255,6 +1263,10 @@ msgstr "No conectado"
msgid "Not playing"
msgstr "No reproduciendo"
#: main.c
msgid "Not running saved code.\n"
msgstr "No ejecutando el código almacenado.\n"
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1350,9 +1362,14 @@ msgstr "Además de cualquier módulo en el sistema de archivos\n"
msgid "Polygon needs at least 3 points"
msgstr "El polígono necesita al menos 3 puntos"
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
msgstr "Pop de un buffer Ps2 vacio"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Prefix buffer must be on the heap"
@ -1367,6 +1384,10 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr "Pull no se usa cuando la dirección es output."
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr "PulseOut no es compatible con este chip"
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr "Error de desinicializado del RNG"
@ -1427,12 +1448,8 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr "La entrada de la fila debe ser digitalio.DigitalInOut"
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr "Ejecutando en modo seguro! La auto-recarga esta deshabilitada.\n"
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgstr "Ejecutando en modo seguro! No se esta ejecutando el código guardado.\n"
msgid "Running in safe mode! "
msgstr "¡Corriendo en modo seguro! "
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
@ -1443,6 +1460,16 @@ msgstr "Sin capacidad para formato CSD para tarjeta SD"
msgid "SDA or SCL needs a pull up"
msgstr "SDA o SCL necesitan una pull up"
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr "Error SDIO GetCardInfo %d"
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO Init Error %d"
msgstr "Error de iniciado de SDIO %d"
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr "Error de inicio de SPI"
@ -1817,9 +1844,8 @@ msgid "__init__() should return None"
msgstr "__init__() deberia devolver None"
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgstr "__init__() deberia devolver None, no '%s'"
msgid "__init__() should return None, not '%q'"
msgstr "__init__() debe retornar None, no '%q'"
#: py/objobject.c
msgid "__new__ arg must be a user-type"
@ -1864,7 +1890,7 @@ msgstr "el argumento tiene un tipo erroneo"
#: extmod/ulab/code/linalg/linalg.c
msgid "argument must be ndarray"
msgstr ""
msgstr "argumento debe ser ndarray"
#: py/argcheck.c shared-bindings/_stage/__init__.c
#: shared-bindings/digitalio/DigitalInOut.c shared-bindings/gamepad/GamePad.c
@ -1972,7 +1998,7 @@ msgstr "bytes > 8 bits no soportados"
msgid "bytes value out of range"
msgstr "valor de bytes fuera de rango"
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr "calibration esta fuera de rango"
@ -2004,48 +2030,18 @@ msgstr "no se puede agregar un método a una clase ya subclasificada"
msgid "can't assign to expression"
msgstr "no se puede asignar a la expresión"
#: py/obj.c
#, c-format
msgid "can't convert %s to complex"
msgstr "no se puede convertir %s a complejo"
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr "no se puede convertir %s a float"
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
msgstr "no se puede convertir %s a int"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr "no puede convertir %q a %q"
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr "no se puede convertir el objeto '%q' a %q implícitamente"
#: py/objint.c
msgid "can't convert NaN to int"
msgstr "no se puede convertir Nan a int"
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr "no se puede convertir address a int"
#: py/objint.c
msgid "can't convert inf to int"
msgstr "no se puede convertir inf en int"
#: py/obj.c
msgid "can't convert to complex"
msgstr "no se puede convertir a complejo"
#: py/obj.c
msgid "can't convert to float"
msgstr "no se puede convertir a float"
#: py/obj.c
msgid "can't convert to int"
msgstr "no se puede convertir a int"
msgid "can't convert to %q"
msgstr "no puede convertir a %q"
#: py/objstr.c
msgid "can't convert to str implicitly"
@ -2459,7 +2455,7 @@ msgstr "la función requiere del argumento por palabra clave '%q'"
msgid "function missing required positional argument #%d"
msgstr "la función requiere del argumento posicional #%d"
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr "la función toma %d argumentos posicionales pero le fueron dados %d"
@ -2508,10 +2504,7 @@ msgstr "relleno (padding) incorrecto"
msgid "index is out of bounds"
msgstr "el índice está fuera de límites"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr "index fuera de rango"
@ -2873,9 +2866,8 @@ msgid "number of points must be at least 2"
msgstr "el número de puntos debe ser al menos 2"
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgstr "el objeto '%s' no es una tupla o lista"
msgid "object '%q' is not a tuple or list"
msgstr "objeto '%q' no es tupla o lista"
#: py/obj.c
msgid "object does not support item assignment"
@ -2910,9 +2902,8 @@ msgid "object not iterable"
msgstr "objeto no iterable"
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgstr "el objeto de tipo '%s' no tiene len()"
msgid "object of type '%q' has no len()"
msgstr "objeto de tipo '%q' no tiene len()"
#: py/obj.c
msgid "object with buffer protocol required"
@ -3004,21 +2995,10 @@ msgstr "el polígono solo se puede registrar en uno de los padres"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr "pop de un PulseIn vacío"
#: py/objset.c
msgid "pop from an empty set"
msgstr "pop desde un set vacío"
#: py/objlist.c
msgid "pop from empty list"
msgstr "pop desde una lista vacía"
#: py/objdict.c
msgid "popitem(): dictionary is empty"
msgstr "popitem(): diccionario vacío"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr "pop desde %q vacía"
#: py/objint_mpz.c
msgid "pow() 3rd argument cannot be 0"
@ -3176,13 +3156,8 @@ msgid "stream operation not supported"
msgstr "operación stream no soportada"
#: py/objstrunicode.c
msgid "string index out of range"
msgstr "string index fuera de rango"
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgstr "índices de string deben ser enteros, no %s"
msgid "string indices must be integers, not %q"
msgstr "índices de cadena deben ser enteros, no %q"
#: py/stream.c
msgid "string not supported; use bytes or bytearray"
@ -3192,10 +3167,6 @@ msgstr "string no soportado; usa bytes o bytearray"
msgid "struct: cannot index"
msgstr "struct: no se puede indexar"
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr "struct: index fuera de rango"
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr "struct: sin campos"
@ -3264,9 +3235,9 @@ msgstr "demasiados valores para descomprimir (%d esperado)"
#: extmod/ulab/code/approx/approx.c
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
msgstr "trapz está definido para arreglos 1D de igual tamaño"
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr "tuple index fuera de rango"
@ -3274,10 +3245,6 @@ msgstr "tuple index fuera de rango"
msgid "tuple/list has wrong length"
msgstr "tupla/lista tiene una longitud incorrecta"
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr "tuple/lista se require en RHS"
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3333,9 +3300,8 @@ msgid "unknown conversion specifier %c"
msgstr "especificador de conversión %c desconocido"
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgstr "codigo format desconocido '%c' para el typo de objeto '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr "formato de código desconocicdo '%c' para objeto de tipo '%q'"
#: py/compile.c
msgid "unknown type"
@ -3374,16 +3340,16 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr "carácter no soportado '%c' (0x%x) en índice %d"
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgstr "tipo no soportado para %q: '%s'"
msgid "unsupported type for %q: '%q'"
msgstr "tipo no soportado para %q: '%q'"
#: py/runtime.c
msgid "unsupported type for operator"
msgstr "tipo de operador no soportado"
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgstr "tipos no soportados para %q: '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr "tipos no soportados para %q: '%q', '%q'"
#: py/objint.c
#, c-format
@ -3396,7 +3362,7 @@ msgstr "value_count debe ser > 0"
#: extmod/ulab/code/linalg/linalg.c
msgid "vectors must have same lengths"
msgstr ""
msgstr "los vectores deben tener el mismo tamaño"
#: shared-bindings/watchdog/WatchDogTimer.c
msgid "watchdog timeout must be greater than 0"
@ -3462,15 +3428,130 @@ msgstr "zi debe ser de tipo flotante"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi debe ser una forma (n_section,2)"
#~ msgid "tuple/list required on RHS"
#~ msgstr "tuple/lista se require en RHS"
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "%q indices deben ser enteros, no %s"
#~ msgid "'%s' object cannot assign attribute '%q'"
#~ msgstr "El objeto '%s' no puede asignar al atributo '%q'"
#~ msgid "'%s' object does not support '%q'"
#~ msgstr "El objeto '%s' no admite '%q'"
#~ msgid "'%s' object does not support item assignment"
#~ msgstr "el objeto '%s' no soporta la asignación de elementos"
#~ msgid "'%s' object does not support item deletion"
#~ msgstr "objeto '%s' no soporta la eliminación de elementos"
#~ msgid "'%s' object has no attribute '%q'"
#~ msgstr "objeto '%s' no tiene atributo '%q'"
#~ msgid "'%s' object is not an iterator"
#~ msgstr "objeto '%s' no es un iterator"
#~ msgid "'%s' object is not callable"
#~ msgstr "objeto '%s' no puede ser llamado"
#~ msgid "'%s' object is not iterable"
#~ msgstr "objeto '%s' no es iterable"
#~ msgid "'%s' object is not subscriptable"
#~ msgstr "el objeto '%s' no es suscriptable"
#~ msgid "Invalid I2C pin selection"
#~ msgstr "Selección de pin I2C no válida"
#~ msgid "Invalid SPI pin selection"
#~ msgstr "Selección de pin SPI no válida"
#~ msgid "Invalid UART pin selection"
#~ msgstr "Selección de pin UART no válida"
#~ msgid "Pop from an empty Ps2 buffer"
#~ msgstr "Pop de un buffer Ps2 vacio"
#~ msgid "Running in safe mode! Auto-reload is off.\n"
#~ msgstr "Ejecutando en modo seguro! La auto-recarga esta deshabilitada.\n"
#~ msgid "Running in safe mode! Not running saved code.\n"
#~ msgstr ""
#~ "Ejecutando en modo seguro! No se esta ejecutando el código guardado.\n"
#~ msgid "__init__() should return None, not '%s'"
#~ msgstr "__init__() deberia devolver None, no '%s'"
#~ msgid "can't convert %s to complex"
#~ msgstr "no se puede convertir %s a complejo"
#~ msgid "can't convert %s to float"
#~ msgstr "no se puede convertir %s a float"
#~ msgid "can't convert %s to int"
#~ msgstr "no se puede convertir %s a int"
#~ msgid "can't convert NaN to int"
#~ msgstr "no se puede convertir Nan a int"
#~ msgid "can't convert address to int"
#~ msgstr "no se puede convertir address a int"
#~ msgid "can't convert inf to int"
#~ msgstr "no se puede convertir inf en int"
#~ msgid "can't convert to complex"
#~ msgstr "no se puede convertir a complejo"
#~ msgid "can't convert to float"
#~ msgstr "no se puede convertir a float"
#~ msgid "can't convert to int"
#~ msgstr "no se puede convertir a int"
#~ msgid "object '%s' is not a tuple or list"
#~ msgstr "el objeto '%s' no es una tupla o lista"
#~ msgid "object of type '%s' has no len()"
#~ msgstr "el objeto de tipo '%s' no tiene len()"
#~ msgid "pop from an empty PulseIn"
#~ msgstr "pop de un PulseIn vacío"
#~ msgid "pop from an empty set"
#~ msgstr "pop desde un set vacío"
#~ msgid "pop from empty list"
#~ msgstr "pop desde una lista vacía"
#~ msgid "popitem(): dictionary is empty"
#~ msgstr "popitem(): diccionario vacío"
#~ msgid "string index out of range"
#~ msgstr "string index fuera de rango"
#~ msgid "string indices must be integers, not %s"
#~ msgstr "índices de string deben ser enteros, no %s"
#~ msgid "struct: index out of range"
#~ msgstr "struct: index fuera de rango"
#~ msgid "unknown format code '%c' for object of type '%s'"
#~ msgstr "codigo format desconocido '%c' para el typo de objeto '%s'"
#~ msgid "unsupported type for %q: '%s'"
#~ msgstr "tipo no soportado para %q: '%s'"
#~ msgid "unsupported types for %q: '%s', '%s'"
#~ msgstr "tipos no soportados para %q: '%s', '%s'"
#~ msgid "'%q' object is not bytes-like"
#~ msgstr "el objeto '%q' no es similar a bytes"
#~ msgid "'async for' or 'async with' outside async function"
#~ msgstr "'async for' o 'async with' fuera de la función async"
#~ msgid "PulseOut not supported on this chip"
#~ msgstr "PulseOut no es compatible con este chip"
#~ msgid "PulseIn not supported on this chip"
#~ msgstr "PulseIn no es compatible con este chip"
@ -3717,8 +3798,8 @@ msgstr "zi debe ser una forma (n_section,2)"
#~ "Only monochrome, indexed 8bpp, and 16bpp or greater BMPs supported: %d "
#~ "bpp given"
#~ msgstr ""
#~ "Solo se admiten BMP monocromos, indexados de 8bpp y 16bpp o superiores:% "
#~ "d bppdado"
#~ "Solo se admiten BMP monocromos, indexados de 8bpp y 16bpp o superiores:%d "
#~ "bppdado"
#, fuzzy
#~ msgid "Only slices with step=1 (aka None) are supported"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: 2018-12-20 22:15-0800\n"
"Last-Translator: Timothy <me@timothygarcia.ca>\n"
"Language-Team: fil\n"
@ -64,13 +64,17 @@ msgstr ""
msgid "%q in use"
msgstr "%q ay ginagamit"
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "%q indeks wala sa sakop"
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgstr "%q indeks ay dapat integers, hindi %s"
msgid "%q indices must be integers, not %q"
msgstr ""
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -111,6 +115,42 @@ msgstr ""
msgid "'%q' argument required"
msgstr "'%q' argument kailangan"
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr ""
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr ""
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr ""
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr ""
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -161,48 +201,6 @@ msgstr "'%s' integer %d ay wala sa sakop ng %d..%d"
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr "'%s' integer 0x%x ay wala sa mask na sakop ng 0x%x"
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr ""
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr "'%s' object hindi sumusuporta ng item assignment"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr "'%s' object ay hindi sumusuporta sa pagtanggal ng item"
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr "'%s' object ay walang attribute '%q'"
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr "'%s' object ay hindi iterator"
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr "'%s' object hindi matatawag"
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr "'%s' object ay hindi ma i-iterable"
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr "'%s' object ay hindi maaaring i-subscript"
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr "'=' Gindi pinapayagan ang alignment sa pag specify ng string format"
@ -453,6 +451,10 @@ msgstr ""
msgid "Buffer length must be a multiple of 512"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Buffer dapat ay hindi baba sa 1 na haba"
@ -646,6 +648,10 @@ msgstr ""
msgid "Could not restart PWM"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr ""
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr ""
@ -748,7 +754,7 @@ msgstr "May pagkakamali sa REGEX"
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr "Umasa ng %q"
@ -833,6 +839,11 @@ msgstr ""
msgid "File exists"
msgstr "Mayroong file"
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
@ -857,7 +868,7 @@ msgid "Group full"
msgstr "Puno ang group"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr ""
@ -873,6 +884,10 @@ msgstr "I/O operasyon sa saradong file"
msgid "I2C Init Error"
msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -920,6 +935,11 @@ msgstr ""
msgid "Invalid %q pin"
msgstr "Mali ang %q pin"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr ""
@ -932,24 +952,12 @@ msgstr "Mali ang BMP file"
msgid "Invalid DAC pin supplied"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr "Mali ang PWM frequency"
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr ""
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Maling argumento"
@ -1246,6 +1254,10 @@ msgstr "Hindi maka connect sa AP"
msgid "Not playing"
msgstr "Hindi playing"
#: main.c
msgid "Not running saved code.\n"
msgstr ""
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1334,8 +1346,13 @@ msgstr "Kasama ang kung ano pang modules na sa filesystem\n"
msgid "Polygon needs at least 3 points"
msgstr ""
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
@ -1352,6 +1369,10 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr "Pull hindi ginagamit kapag ang direksyon ay output."
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr ""
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr ""
@ -1413,12 +1434,8 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr ""
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr "Tumatakbo sa safe mode! Awtomatikong pag re-reload ay OFF.\n"
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgstr "Tumatakbo sa safe mode! Hindi tumatakbo ang nai-save na code.\n"
msgid "Running in safe mode! "
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
@ -1429,6 +1446,16 @@ msgstr ""
msgid "SDA or SCL needs a pull up"
msgstr "Kailangan ng pull up resistors ang SDA o SCL"
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO Init Error %d"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr ""
@ -1788,9 +1815,8 @@ msgid "__init__() should return None"
msgstr "__init __ () dapat magbalik na None"
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgstr "__init__() dapat magbalink na None, hindi '%s'"
msgid "__init__() should return None, not '%q'"
msgstr ""
#: py/objobject.c
msgid "__new__ arg must be a user-type"
@ -1944,7 +1970,7 @@ msgstr "hindi sinusuportahan ang bytes > 8 bits"
msgid "bytes value out of range"
msgstr "bytes value wala sa sakop"
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr "kalibrasion ay wala sa sakop"
@ -1977,48 +2003,18 @@ msgstr ""
msgid "can't assign to expression"
msgstr "hindi ma i-assign sa expression"
#: py/obj.c
#, c-format
msgid "can't convert %s to complex"
msgstr "hindi ma-convert %s sa complex"
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr "hindi ma-convert %s sa int"
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
msgstr "hindi ma-convert %s sa int"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr "hindi maaaring i-convert ang '%q' na bagay sa %q nang walang pahiwatig"
#: py/objint.c
msgid "can't convert NaN to int"
msgstr "hindi ma i-convert NaN sa int"
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr "hindi ma i-convert ang address sa INT"
#: py/objint.c
msgid "can't convert inf to int"
msgstr "hindi ma i-convert inf sa int"
#: py/obj.c
msgid "can't convert to complex"
msgstr "hindi ma-convert sa complex"
#: py/obj.c
msgid "can't convert to float"
msgstr "hindi ma-convert sa float"
#: py/obj.c
msgid "can't convert to int"
msgstr "hindi ma-convert sa int"
msgid "can't convert to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert to str implicitly"
@ -2051,7 +2047,7 @@ msgstr "hindi puede ang maraming *x"
#: py/emitnative.c
msgid "can't implicitly convert '%q' to 'bool'"
msgstr "hindi maaaring ma-convert ang '% qt' sa 'bool'"
msgstr "hindi maaaring ma-convert ang ' %q' sa 'bool'"
#: py/emitnative.c
msgid "can't load from '%q'"
@ -2435,7 +2431,7 @@ msgstr "function nangangailangan ng keyword argument '%q'"
msgid "function missing required positional argument #%d"
msgstr "function nangangailangan ng positional argument #%d"
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr ""
@ -2485,10 +2481,7 @@ msgstr "mali ang padding"
msgid "index is out of bounds"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr "index wala sa sakop"
@ -2848,9 +2841,8 @@ msgid "number of points must be at least 2"
msgstr ""
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgstr "object '%s' ay hindi tuple o list"
msgid "object '%q' is not a tuple or list"
msgstr ""
#: py/obj.c
msgid "object does not support item assignment"
@ -2885,9 +2877,8 @@ msgid "object not iterable"
msgstr "object hindi ma i-iterable"
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgstr "object na type '%s' walang len()"
msgid "object of type '%q' has no len()"
msgstr ""
#: py/obj.c
msgid "object with buffer protocol required"
@ -2981,21 +2972,10 @@ msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr "pop mula sa walang laman na PulseIn"
#: py/objset.c
msgid "pop from an empty set"
msgstr "pop sa walang laman na set"
#: py/objlist.c
msgid "pop from empty list"
msgstr "pop galing sa walang laman na list"
#: py/objdict.c
msgid "popitem(): dictionary is empty"
msgstr "popitem(): dictionary ay walang laman"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr ""
#: py/objint_mpz.c
msgid "pow() 3rd argument cannot be 0"
@ -3154,13 +3134,8 @@ msgid "stream operation not supported"
msgstr "stream operation hindi sinusuportahan"
#: py/objstrunicode.c
msgid "string index out of range"
msgstr "indeks ng string wala sa sakop"
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgstr "ang indeks ng string ay dapat na integer, hindi %s"
msgid "string indices must be integers, not %q"
msgstr ""
#: py/stream.c
msgid "string not supported; use bytes or bytearray"
@ -3170,10 +3145,6 @@ msgstr "string hindi supportado; gumamit ng bytes o kaya bytearray"
msgid "struct: cannot index"
msgstr "struct: hindi ma-index"
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr "struct: index hindi maabot"
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr "struct: walang fields"
@ -3244,7 +3215,7 @@ msgstr "masyadong maraming values para i-unpact (umaasa ng %d)"
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr "indeks ng tuple wala sa sakop"
@ -3252,10 +3223,6 @@ msgstr "indeks ng tuple wala sa sakop"
msgid "tuple/list has wrong length"
msgstr "mali ang haba ng tuple/list"
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3311,9 +3278,8 @@ msgid "unknown conversion specifier %c"
msgstr "hindi alam ang conversion specifier na %c"
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgstr "hindi alam ang format code '%c' para sa object na ang type ay '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr ""
#: py/compile.c
msgid "unknown type"
@ -3352,16 +3318,16 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr "hindi sinusuportahan ang format character na '%c' (0x%x) sa index %d"
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgstr "hindi sinusuportahang type para sa %q: '%s'"
msgid "unsupported type for %q: '%q'"
msgstr ""
#: py/runtime.c
msgid "unsupported type for operator"
msgstr "hindi sinusuportahang type para sa operator"
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgstr "hindi sinusuportahang type para sa %q: '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr ""
#: py/objint.c
#, c-format
@ -3442,6 +3408,102 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "%q indeks ay dapat integers, hindi %s"
#~ msgid "'%s' object does not support item assignment"
#~ msgstr "'%s' object hindi sumusuporta ng item assignment"
#~ msgid "'%s' object does not support item deletion"
#~ msgstr "'%s' object ay hindi sumusuporta sa pagtanggal ng item"
#~ msgid "'%s' object has no attribute '%q'"
#~ msgstr "'%s' object ay walang attribute '%q'"
#~ msgid "'%s' object is not an iterator"
#~ msgstr "'%s' object ay hindi iterator"
#~ msgid "'%s' object is not callable"
#~ msgstr "'%s' object hindi matatawag"
#~ msgid "'%s' object is not iterable"
#~ msgstr "'%s' object ay hindi ma i-iterable"
#~ msgid "'%s' object is not subscriptable"
#~ msgstr "'%s' object ay hindi maaaring i-subscript"
#~ msgid "Running in safe mode! Auto-reload is off.\n"
#~ msgstr "Tumatakbo sa safe mode! Awtomatikong pag re-reload ay OFF.\n"
#~ msgid "Running in safe mode! Not running saved code.\n"
#~ msgstr "Tumatakbo sa safe mode! Hindi tumatakbo ang nai-save na code.\n"
#~ msgid "__init__() should return None, not '%s'"
#~ msgstr "__init__() dapat magbalink na None, hindi '%s'"
#~ msgid "can't convert %s to complex"
#~ msgstr "hindi ma-convert %s sa complex"
#~ msgid "can't convert %s to float"
#~ msgstr "hindi ma-convert %s sa int"
#~ msgid "can't convert %s to int"
#~ msgstr "hindi ma-convert %s sa int"
#~ msgid "can't convert NaN to int"
#~ msgstr "hindi ma i-convert NaN sa int"
#~ msgid "can't convert address to int"
#~ msgstr "hindi ma i-convert ang address sa INT"
#~ msgid "can't convert inf to int"
#~ msgstr "hindi ma i-convert inf sa int"
#~ msgid "can't convert to complex"
#~ msgstr "hindi ma-convert sa complex"
#~ msgid "can't convert to float"
#~ msgstr "hindi ma-convert sa float"
#~ msgid "can't convert to int"
#~ msgstr "hindi ma-convert sa int"
#~ msgid "object '%s' is not a tuple or list"
#~ msgstr "object '%s' ay hindi tuple o list"
#~ msgid "object of type '%s' has no len()"
#~ msgstr "object na type '%s' walang len()"
#~ msgid "pop from an empty PulseIn"
#~ msgstr "pop mula sa walang laman na PulseIn"
#~ msgid "pop from an empty set"
#~ msgstr "pop sa walang laman na set"
#~ msgid "pop from empty list"
#~ msgstr "pop galing sa walang laman na list"
#~ msgid "popitem(): dictionary is empty"
#~ msgstr "popitem(): dictionary ay walang laman"
#~ msgid "string index out of range"
#~ msgstr "indeks ng string wala sa sakop"
#~ msgid "string indices must be integers, not %s"
#~ msgstr "ang indeks ng string ay dapat na integer, hindi %s"
#~ msgid "struct: index out of range"
#~ msgstr "struct: index hindi maabot"
#~ msgid "unknown format code '%c' for object of type '%s'"
#~ msgstr "hindi alam ang format code '%c' para sa object na ang type ay '%s'"
#~ msgid "unsupported type for %q: '%s'"
#~ msgstr "hindi sinusuportahang type para sa %q: '%s'"
#~ msgid "unsupported types for %q: '%s', '%s'"
#~ msgstr "hindi sinusuportahang type para sa %q: '%s', '%s'"
#~ msgid "AP required"
#~ msgstr "AP kailangan"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: 0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: 2020-07-27 21:27+0000\n"
"Last-Translator: Nathan <bonnemainsnathan@gmail.com>\n"
"Language: fr\n"
@ -76,13 +76,17 @@ msgstr "Échec de %q : %d"
msgid "%q in use"
msgstr "%q utilisé"
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "index %q hors gamme"
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgstr "les indices %q doivent être des entiers, pas %s"
msgid "%q indices must be integers, not %q"
msgstr ""
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -120,6 +124,42 @@ msgstr "%q() prend %d arguments positionnels mais %d ont été donnés"
msgid "'%q' argument required"
msgstr "'%q' argument requis"
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr ""
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr ""
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr ""
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr ""
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -170,48 +210,6 @@ msgstr "'%s' l'entier %d n'est pas dans la gamme %d..%d"
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr "'%s' l'entier 0x%x ne correspond pas au masque 0x%x"
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr "L'objet '%s' ne peut pas attribuer '%q'"
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr "L'objet '%s' ne prend pas en charge '%q'"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr "l'objet '%s' ne supporte pas l'assignation d'éléments"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr "l'objet '%s' ne supporte pas la suppression d'éléments"
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr "l'objet '%s' n'a pas d'attribut '%q'"
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr "l'objet '%s' n'est pas un itérateur"
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr "l'objet '%s' n'est pas appelable"
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr "l'objet '%s' n'est pas itérable"
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr "l'objet '%s' n'est pas sous-scriptable"
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr "'=' alignement non autorisé dans la spéc. de format de chaîne"
@ -464,6 +462,10 @@ msgstr "La longueur du tampon %d est trop grande. Il doit être inférieur à %d
msgid "Buffer length must be a multiple of 512"
msgstr "La longueur de la mémoire tampon doit être un multiple de 512"
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Le tampon doit être de longueur au moins 1"
@ -663,6 +665,10 @@ msgstr "Impossible de réinitialiser le minuteur"
msgid "Could not restart PWM"
msgstr "Impossible de redémarrer PWM"
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr ""
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr "Impossible de démarrer PWM"
@ -762,7 +768,7 @@ msgstr "Erreur dans l'expression régulière"
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr "Attendu un %q"
@ -846,6 +852,11 @@ msgstr "Échec de l'écriture du flash interne."
msgid "File exists"
msgstr "Le fichier existe"
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr "La fréquence capturée est au delà des capacités. Capture en pause."
@ -871,7 +882,7 @@ msgid "Group full"
msgstr "Groupe plein"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Matériel occupé, essayez d'autres broches"
@ -887,6 +898,10 @@ msgstr "opération d'E/S sur un fichier fermé"
msgid "I2C Init Error"
msgstr "Erreur d'initialisation I2C"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -934,6 +949,11 @@ msgstr "%q invalide"
msgid "Invalid %q pin"
msgstr "Broche invalide pour '%q'"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr "Valeur d'unité ADC non valide"
@ -946,24 +966,12 @@ msgstr "Fichier BMP invalide"
msgid "Invalid DAC pin supplied"
msgstr "Broche DAC non valide fournie"
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr "Sélection de broches I2C non valide"
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr "Fréquence de PWM invalide"
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr "Sélection de broches SPI non valide"
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr "Sélection de broches UART non valide"
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Argument invalide"
@ -1259,6 +1267,10 @@ msgstr "Non connecté"
msgid "Not playing"
msgstr "Ne joue pas"
#: main.c
msgid "Not running saved code.\n"
msgstr ""
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1357,9 +1369,14 @@ msgstr "Ainsi que tout autre module présent sur le système de fichiers\n"
msgid "Polygon needs at least 3 points"
msgstr "Polygone a besoin dau moins 3 points"
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
msgstr "Pop à partir d'un tampon Ps2 vide"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Prefix buffer must be on the heap"
@ -1373,6 +1390,10 @@ msgstr "Appuyez sur une touche pour entrer sur REPL ou CTRL-D pour recharger."
msgid "Pull not used when direction is output."
msgstr "Le tirage 'pull' n'est pas utilisé quand la direction est 'output'."
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr "PulseOut non pris en charge sur cette puce"
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr "Erreur RNG DeInit"
@ -1433,12 +1454,8 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr "L'entrée de ligne 'Row' doit être un digitalio.DigitalInOut"
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr "Mode sans-échec ! Auto-chargement désactivé.\n"
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgstr "Mode sans-échec ! Le code sauvegardé n'est pas éxecuté.\n"
msgid "Running in safe mode! "
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
@ -1449,6 +1466,16 @@ msgstr "Le format de carte SD CSD n'est pas pris en charge"
msgid "SDA or SCL needs a pull up"
msgstr "SDA ou SCL a besoin d'une résistance de tirage ('pull up')"
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO Init Error %d"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr "Erreur d'initialisation SPI"
@ -1824,9 +1851,8 @@ msgid "__init__() should return None"
msgstr "__init__() doit retourner None"
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgstr "__init__() doit retourner None, pas '%s'"
msgid "__init__() should return None, not '%q'"
msgstr ""
#: py/objobject.c
msgid "__new__ arg must be a user-type"
@ -1979,7 +2005,7 @@ msgstr "octets > 8 bits non supporté"
msgid "bytes value out of range"
msgstr "valeur des octets hors bornes"
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr "étalonnage hors bornes"
@ -2012,48 +2038,18 @@ msgstr ""
msgid "can't assign to expression"
msgstr "ne peut pas assigner à une expression"
#: py/obj.c
#, c-format
msgid "can't convert %s to complex"
msgstr "ne peut convertir %s en nombre complexe"
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr "ne peut convertir %s en nombre à virgule flottante 'float'"
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
msgstr "ne peut convertir %s en entier 'int'"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr "impossible de convertir l'objet '%q' en '%q' implicitement"
#: py/objint.c
msgid "can't convert NaN to int"
msgstr "on ne peut convertir NaN en entier 'int'"
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr "ne peut convertir l'adresse en entier 'int'"
#: py/objint.c
msgid "can't convert inf to int"
msgstr "on ne peut convertir l'infini 'inf' en entier 'int'"
#: py/obj.c
msgid "can't convert to complex"
msgstr "ne peut convertir en nombre complexe"
#: py/obj.c
msgid "can't convert to float"
msgstr "ne peut convertir en nombre à virgule flottante 'float'"
#: py/obj.c
msgid "can't convert to int"
msgstr "ne peut convertir en entier 'int'"
msgid "can't convert to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert to str implicitly"
@ -2476,7 +2472,7 @@ msgstr "il manque l'argument nommé obligatoire '%q'"
msgid "function missing required positional argument #%d"
msgstr "il manque l'argument positionnel obligatoire #%d"
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr "la fonction prend %d argument(s) positionnels mais %d ont été donné(s)"
@ -2525,10 +2521,7 @@ msgstr "espacement incorrect"
msgid "index is out of bounds"
msgstr "l'index est hors limites"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr "index hors gamme"
@ -2891,9 +2884,8 @@ msgid "number of points must be at least 2"
msgstr "le nombre de points doit être d'au moins 2"
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgstr "l'objet '%s' n'est pas un tuple ou une liste"
msgid "object '%q' is not a tuple or list"
msgstr ""
#: py/obj.c
msgid "object does not support item assignment"
@ -2928,9 +2920,8 @@ msgid "object not iterable"
msgstr "objet non itérable"
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgstr "l'objet de type '%s' n'a pas de len()"
msgid "object of type '%q' has no len()"
msgstr ""
#: py/obj.c
msgid "object with buffer protocol required"
@ -3025,21 +3016,10 @@ msgstr "le polygone ne peut être enregistré que dans un parent"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr "'pop' d'une entrée PulseIn vide"
#: py/objset.c
msgid "pop from an empty set"
msgstr "'pop' d'un ensemble set vide"
#: py/objlist.c
msgid "pop from empty list"
msgstr "'pop' d'une liste vide"
#: py/objdict.c
msgid "popitem(): dictionary is empty"
msgstr "popitem() : dictionnaire vide"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr ""
#: py/objint_mpz.c
msgid "pow() 3rd argument cannot be 0"
@ -3197,13 +3177,8 @@ msgid "stream operation not supported"
msgstr "opération de flux non supportée"
#: py/objstrunicode.c
msgid "string index out of range"
msgstr "index de chaîne hors gamme"
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgstr "les indices de chaîne de caractères doivent être des entiers, pas %s"
msgid "string indices must be integers, not %q"
msgstr ""
#: py/stream.c
msgid "string not supported; use bytes or bytearray"
@ -3214,10 +3189,6 @@ msgstr ""
msgid "struct: cannot index"
msgstr "struct : indexage impossible"
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr "struct : index hors limites"
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr "struct : aucun champs"
@ -3287,7 +3258,7 @@ msgstr "trop de valeur à dégrouper (%d attendues)"
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr "index du tuple hors gamme"
@ -3295,10 +3266,6 @@ msgstr "index du tuple hors gamme"
msgid "tuple/list has wrong length"
msgstr "tuple/liste a une mauvaise longueur"
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr "tuple ou liste requis en partie droite"
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3354,9 +3321,8 @@ msgid "unknown conversion specifier %c"
msgstr "spécification %c de conversion inconnue"
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgstr "code de format '%c' inconnu pour un objet de type '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr ""
#: py/compile.c
msgid "unknown type"
@ -3395,16 +3361,16 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr "caractère de format '%c' (0x%x) non supporté à l'index %d"
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgstr "type non supporté pour %q : '%s'"
msgid "unsupported type for %q: '%q'"
msgstr ""
#: py/runtime.c
msgid "unsupported type for operator"
msgstr "type non supporté pour l'opérateur"
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgstr "type non supporté pour %q : '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr ""
#: py/objint.c
#, c-format
@ -3483,12 +3449,127 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid "tuple/list required on RHS"
#~ msgstr "tuple ou liste requis en partie droite"
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "les indices %q doivent être des entiers, pas %s"
#~ msgid "'%s' object cannot assign attribute '%q'"
#~ msgstr "L'objet '%s' ne peut pas attribuer '%q'"
#~ msgid "'%s' object does not support '%q'"
#~ msgstr "L'objet '%s' ne prend pas en charge '%q'"
#~ msgid "'%s' object does not support item assignment"
#~ msgstr "l'objet '%s' ne supporte pas l'assignation d'éléments"
#~ msgid "'%s' object does not support item deletion"
#~ msgstr "l'objet '%s' ne supporte pas la suppression d'éléments"
#~ msgid "'%s' object has no attribute '%q'"
#~ msgstr "l'objet '%s' n'a pas d'attribut '%q'"
#~ msgid "'%s' object is not an iterator"
#~ msgstr "l'objet '%s' n'est pas un itérateur"
#~ msgid "'%s' object is not callable"
#~ msgstr "l'objet '%s' n'est pas appelable"
#~ msgid "'%s' object is not iterable"
#~ msgstr "l'objet '%s' n'est pas itérable"
#~ msgid "'%s' object is not subscriptable"
#~ msgstr "l'objet '%s' n'est pas sous-scriptable"
#~ msgid "Invalid I2C pin selection"
#~ msgstr "Sélection de broches I2C non valide"
#~ msgid "Invalid SPI pin selection"
#~ msgstr "Sélection de broches SPI non valide"
#~ msgid "Invalid UART pin selection"
#~ msgstr "Sélection de broches UART non valide"
#~ msgid "Pop from an empty Ps2 buffer"
#~ msgstr "Pop à partir d'un tampon Ps2 vide"
#~ msgid "Running in safe mode! Auto-reload is off.\n"
#~ msgstr "Mode sans-échec ! Auto-chargement désactivé.\n"
#~ msgid "Running in safe mode! Not running saved code.\n"
#~ msgstr "Mode sans-échec ! Le code sauvegardé n'est pas éxecuté.\n"
#~ msgid "__init__() should return None, not '%s'"
#~ msgstr "__init__() doit retourner None, pas '%s'"
#~ msgid "can't convert %s to complex"
#~ msgstr "ne peut convertir %s en nombre complexe"
#~ msgid "can't convert %s to float"
#~ msgstr "ne peut convertir %s en nombre à virgule flottante 'float'"
#~ msgid "can't convert %s to int"
#~ msgstr "ne peut convertir %s en entier 'int'"
#~ msgid "can't convert NaN to int"
#~ msgstr "on ne peut convertir NaN en entier 'int'"
#~ msgid "can't convert address to int"
#~ msgstr "ne peut convertir l'adresse en entier 'int'"
#~ msgid "can't convert inf to int"
#~ msgstr "on ne peut convertir l'infini 'inf' en entier 'int'"
#~ msgid "can't convert to complex"
#~ msgstr "ne peut convertir en nombre complexe"
#~ msgid "can't convert to float"
#~ msgstr "ne peut convertir en nombre à virgule flottante 'float'"
#~ msgid "can't convert to int"
#~ msgstr "ne peut convertir en entier 'int'"
#~ msgid "object '%s' is not a tuple or list"
#~ msgstr "l'objet '%s' n'est pas un tuple ou une liste"
#~ msgid "object of type '%s' has no len()"
#~ msgstr "l'objet de type '%s' n'a pas de len()"
#~ msgid "pop from an empty PulseIn"
#~ msgstr "'pop' d'une entrée PulseIn vide"
#~ msgid "pop from an empty set"
#~ msgstr "'pop' d'un ensemble set vide"
#~ msgid "pop from empty list"
#~ msgstr "'pop' d'une liste vide"
#~ msgid "popitem(): dictionary is empty"
#~ msgstr "popitem() : dictionnaire vide"
#~ msgid "string index out of range"
#~ msgstr "index de chaîne hors gamme"
#~ msgid "string indices must be integers, not %s"
#~ msgstr ""
#~ "les indices de chaîne de caractères doivent être des entiers, pas %s"
#~ msgid "struct: index out of range"
#~ msgstr "struct : index hors limites"
#~ msgid "unknown format code '%c' for object of type '%s'"
#~ msgstr "code de format '%c' inconnu pour un objet de type '%s'"
#~ msgid "unsupported type for %q: '%s'"
#~ msgstr "type non supporté pour %q : '%s'"
#~ msgid "unsupported types for %q: '%s', '%s'"
#~ msgstr "type non supporté pour %q : '%s', '%s'"
#~ msgid "'async for' or 'async with' outside async function"
#~ msgstr "'async for' ou 'async with' sans fonction asynchrone extérieure"
#~ msgid "PulseOut not supported on this chip"
#~ msgstr "PulseOut non pris en charge sur cette puce"
#~ msgid "PulseIn not supported on this chip"
#~ msgstr "PulseIn non pris en charge sur cette puce"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@ -65,12 +65,16 @@ msgstr ""
msgid "%q in use"
msgstr ""
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr ""
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgid "%q indices must be integers, not %q"
msgstr ""
#: shared-bindings/vectorio/Polygon.c
@ -109,6 +113,42 @@ msgstr ""
msgid "'%q' argument required"
msgstr ""
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr ""
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr ""
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr ""
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr ""
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -159,48 +199,6 @@ msgstr ""
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr ""
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr ""
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr ""
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr ""
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr ""
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr ""
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr ""
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr ""
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr ""
@ -448,6 +446,10 @@ msgstr ""
msgid "Buffer length must be a multiple of 512"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr ""
@ -638,6 +640,10 @@ msgstr ""
msgid "Could not restart PWM"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr ""
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr ""
@ -737,7 +743,7 @@ msgstr ""
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr ""
@ -820,6 +826,11 @@ msgstr ""
msgid "File exists"
msgstr ""
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
@ -844,7 +855,7 @@ msgid "Group full"
msgstr ""
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr ""
@ -860,6 +871,10 @@ msgstr ""
msgid "I2C Init Error"
msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -905,6 +920,11 @@ msgstr ""
msgid "Invalid %q pin"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr ""
@ -917,24 +937,12 @@ msgstr ""
msgid "Invalid DAC pin supplied"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr ""
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr ""
@ -1230,6 +1238,10 @@ msgstr ""
msgid "Not playing"
msgstr ""
#: main.c
msgid "Not running saved code.\n"
msgstr ""
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1315,8 +1327,13 @@ msgstr ""
msgid "Polygon needs at least 3 points"
msgstr ""
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
@ -1331,6 +1348,10 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr ""
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr ""
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr ""
@ -1391,11 +1412,7 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr ""
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr ""
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgid "Running in safe mode! "
msgstr ""
#: shared-module/sdcardio/SDCard.c
@ -1407,6 +1424,16 @@ msgstr ""
msgid "SDA or SCL needs a pull up"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO Init Error %d"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr ""
@ -1756,8 +1783,7 @@ msgid "__init__() should return None"
msgstr ""
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgid "__init__() should return None, not '%q'"
msgstr ""
#: py/objobject.c
@ -1911,7 +1937,7 @@ msgstr ""
msgid "bytes value out of range"
msgstr ""
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr ""
@ -1943,47 +1969,17 @@ msgstr ""
msgid "can't assign to expression"
msgstr ""
#: py/obj.c
#, c-format
msgid "can't convert %s to complex"
msgstr ""
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr ""
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr ""
#: py/objint.c
msgid "can't convert NaN to int"
msgstr ""
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr ""
#: py/objint.c
msgid "can't convert inf to int"
msgstr ""
#: py/obj.c
msgid "can't convert to complex"
msgstr ""
#: py/obj.c
msgid "can't convert to float"
msgstr ""
#: py/obj.c
msgid "can't convert to int"
msgid "can't convert to %q"
msgstr ""
#: py/objstr.c
@ -2391,7 +2387,7 @@ msgstr ""
msgid "function missing required positional argument #%d"
msgstr ""
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr ""
@ -2440,10 +2436,7 @@ msgstr ""
msgid "index is out of bounds"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr ""
@ -2799,8 +2792,7 @@ msgid "number of points must be at least 2"
msgstr ""
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgid "object '%q' is not a tuple or list"
msgstr ""
#: py/obj.c
@ -2836,8 +2828,7 @@ msgid "object not iterable"
msgstr ""
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgid "object of type '%q' has no len()"
msgstr ""
#: py/obj.c
@ -2930,20 +2921,9 @@ msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr ""
#: py/objset.c
msgid "pop from an empty set"
msgstr ""
#: py/objlist.c
msgid "pop from empty list"
msgstr ""
#: py/objdict.c
msgid "popitem(): dictionary is empty"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr ""
#: py/objint_mpz.c
@ -3100,12 +3080,7 @@ msgid "stream operation not supported"
msgstr ""
#: py/objstrunicode.c
msgid "string index out of range"
msgstr ""
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgid "string indices must be integers, not %q"
msgstr ""
#: py/stream.c
@ -3116,10 +3091,6 @@ msgstr ""
msgid "struct: cannot index"
msgstr ""
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr ""
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr ""
@ -3189,7 +3160,7 @@ msgstr ""
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr ""
@ -3197,10 +3168,6 @@ msgstr ""
msgid "tuple/list has wrong length"
msgstr ""
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3256,8 +3223,7 @@ msgid "unknown conversion specifier %c"
msgstr ""
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr ""
#: py/compile.c
@ -3297,7 +3263,7 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr ""
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgid "unsupported type for %q: '%q'"
msgstr ""
#: py/runtime.c
@ -3305,7 +3271,7 @@ msgid "unsupported type for operator"
msgstr ""
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr ""
#: py/objint.c

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: 2018-10-02 16:27+0200\n"
"Last-Translator: Enrico Paganin <enrico.paganin@mail.com>\n"
"Language-Team: \n"
@ -64,13 +64,17 @@ msgstr ""
msgid "%q in use"
msgstr "%q in uso"
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "indice %q fuori intervallo"
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgstr "gli indici %q devono essere interi, non %s"
msgid "%q indices must be integers, not %q"
msgstr ""
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -110,6 +114,42 @@ msgstr "%q() prende %d argomenti posizionali ma ne sono stati forniti %d"
msgid "'%q' argument required"
msgstr "'%q' argomento richiesto"
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr ""
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr ""
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr ""
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr ""
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -160,48 +200,6 @@ msgstr "intero '%s' non è nell'intervallo %d..%d"
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr "intero '%s' non è nell'intervallo %d..%d"
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr ""
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr "oggeto '%s' non supporta assengnamento di item"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr "oggeto '%s' non supporta eliminamento di item"
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr "l'oggetto '%s' non ha l'attributo '%q'"
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr "l'oggetto '%s' non è un iteratore"
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr "oggeto '%s' non è chiamabile"
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr "l'oggetto '%s' non è iterabile"
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr "oggeto '%s' non è "
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr "aligniamento '=' non è permesso per il specificatore formato string"
@ -453,6 +451,10 @@ msgstr ""
msgid "Buffer length must be a multiple of 512"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Il buffer deve essere lungo almeno 1"
@ -647,6 +649,10 @@ msgstr ""
msgid "Could not restart PWM"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr ""
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr ""
@ -748,7 +754,7 @@ msgstr "Errore nella regex"
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr "Atteso un %q"
@ -833,6 +839,11 @@ msgstr ""
msgid "File exists"
msgstr "File esistente"
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
@ -857,7 +868,7 @@ msgid "Group full"
msgstr "Gruppo pieno"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr ""
@ -873,6 +884,10 @@ msgstr "operazione I/O su file chiuso"
msgid "I2C Init Error"
msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -920,6 +935,11 @@ msgstr ""
msgid "Invalid %q pin"
msgstr "Pin %q non valido"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr ""
@ -932,24 +952,12 @@ msgstr "File BMP non valido"
msgid "Invalid DAC pin supplied"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr "Frequenza PWM non valida"
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr ""
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Argomento non valido"
@ -1250,6 +1258,10 @@ msgstr "Impossible connettersi all'AP"
msgid "Not playing"
msgstr "In pausa"
#: main.c
msgid "Not running saved code.\n"
msgstr ""
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1344,8 +1356,13 @@ msgstr "Imposssibile rimontare il filesystem"
msgid "Polygon needs at least 3 points"
msgstr ""
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
@ -1361,6 +1378,10 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr ""
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr ""
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr ""
@ -1422,12 +1443,8 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr ""
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr "Modalità sicura in esecuzione! Auto-reload disattivato.\n"
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgstr "Modalità sicura in esecuzione! Codice salvato non in esecuzione.\n"
msgid "Running in safe mode! "
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
@ -1438,6 +1455,16 @@ msgstr ""
msgid "SDA or SCL needs a pull up"
msgstr "SDA o SCL necessitano un pull-up"
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO Init Error %d"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr ""
@ -1791,9 +1818,8 @@ msgid "__init__() should return None"
msgstr "__init__() deve ritornare None"
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgstr "__init__() deve ritornare None, non '%s'"
msgid "__init__() should return None, not '%q'"
msgstr ""
#: py/objobject.c
msgid "__new__ arg must be a user-type"
@ -1949,7 +1975,7 @@ msgstr "byte > 8 bit non supportati"
msgid "bytes value out of range"
msgstr "valore byte fuori intervallo"
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr "la calibrazione è fuori intervallo"
@ -1982,48 +2008,18 @@ msgstr ""
msgid "can't assign to expression"
msgstr "impossibile assegnare all'espressione"
#: py/obj.c
#, fuzzy, c-format
msgid "can't convert %s to complex"
msgstr "non è possibile convertire a complex"
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr "non è possibile convertire %s a float"
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
msgstr "non è possibile convertire %s a int"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr "impossibile convertire l'oggetto '%q' implicitamente in %q"
#: py/objint.c
msgid "can't convert NaN to int"
msgstr "impossibile convertire NaN in int"
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr "impossible convertire indirizzo in int"
#: py/objint.c
msgid "can't convert inf to int"
msgstr "impossibile convertire inf in int"
#: py/obj.c
msgid "can't convert to complex"
msgstr "non è possibile convertire a complex"
#: py/obj.c
msgid "can't convert to float"
msgstr "non è possibile convertire a float"
#: py/obj.c
msgid "can't convert to int"
msgstr "non è possibile convertire a int"
msgid "can't convert to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert to str implicitly"
@ -2436,7 +2432,7 @@ msgstr "argomento nominato '%q' mancante alla funzione"
msgid "function missing required positional argument #%d"
msgstr "mancante il #%d argomento posizonale obbligatorio della funzione"
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr ""
@ -2486,10 +2482,7 @@ msgstr "padding incorretto"
msgid "index is out of bounds"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr "indice fuori intervallo"
@ -2853,9 +2846,8 @@ msgid "number of points must be at least 2"
msgstr ""
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgstr "oggetto '%s' non è una tupla o una lista"
msgid "object '%q' is not a tuple or list"
msgstr ""
#: py/obj.c
msgid "object does not support item assignment"
@ -2890,9 +2882,8 @@ msgid "object not iterable"
msgstr "oggetto non iterabile"
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgstr "l'oggetto di tipo '%s' non implementa len()"
msgid "object of type '%q' has no len()"
msgstr ""
#: py/obj.c
msgid "object with buffer protocol required"
@ -2988,21 +2979,10 @@ msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr "pop sun un PulseIn vuoto"
#: py/objset.c
msgid "pop from an empty set"
msgstr "pop da un set vuoto"
#: py/objlist.c
msgid "pop from empty list"
msgstr "pop da una lista vuota"
#: py/objdict.c
msgid "popitem(): dictionary is empty"
msgstr "popitem(): il dizionario è vuoto"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr ""
#: py/objint_mpz.c
msgid "pow() 3rd argument cannot be 0"
@ -3161,13 +3141,8 @@ msgid "stream operation not supported"
msgstr "operazione di stream non supportata"
#: py/objstrunicode.c
msgid "string index out of range"
msgstr "indice della stringa fuori intervallo"
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgstr "indici della stringa devono essere interi, non %s"
msgid "string indices must be integers, not %q"
msgstr ""
#: py/stream.c
msgid "string not supported; use bytes or bytearray"
@ -3177,10 +3152,6 @@ msgstr ""
msgid "struct: cannot index"
msgstr "struct: impossibile indicizzare"
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr "struct: indice fuori intervallo"
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr "struct: nessun campo"
@ -3251,7 +3222,7 @@ msgstr "troppi valori da scompattare (%d attesi)"
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr "indice della tupla fuori intervallo"
@ -3259,10 +3230,6 @@ msgstr "indice della tupla fuori intervallo"
msgid "tuple/list has wrong length"
msgstr "tupla/lista ha la lunghezza sbagliata"
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3318,9 +3285,8 @@ msgid "unknown conversion specifier %c"
msgstr "specificatore di conversione %s sconosciuto"
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgstr "codice di formattaione '%c' sconosciuto per oggetto di tipo '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr ""
#: py/compile.c
msgid "unknown type"
@ -3359,16 +3325,16 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr "carattere di formattazione '%c' (0x%x) non supportato all indice %d"
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgstr "tipo non supportato per %q: '%s'"
msgid "unsupported type for %q: '%q'"
msgstr ""
#: py/runtime.c
msgid "unsupported type for operator"
msgstr "tipo non supportato per l'operando"
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgstr "tipi non supportati per %q: '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr ""
#: py/objint.c
#, c-format
@ -3449,6 +3415,103 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "gli indici %q devono essere interi, non %s"
#~ msgid "'%s' object does not support item assignment"
#~ msgstr "oggeto '%s' non supporta assengnamento di item"
#~ msgid "'%s' object does not support item deletion"
#~ msgstr "oggeto '%s' non supporta eliminamento di item"
#~ msgid "'%s' object has no attribute '%q'"
#~ msgstr "l'oggetto '%s' non ha l'attributo '%q'"
#~ msgid "'%s' object is not an iterator"
#~ msgstr "l'oggetto '%s' non è un iteratore"
#~ msgid "'%s' object is not callable"
#~ msgstr "oggeto '%s' non è chiamabile"
#~ msgid "'%s' object is not iterable"
#~ msgstr "l'oggetto '%s' non è iterabile"
#~ msgid "'%s' object is not subscriptable"
#~ msgstr "oggeto '%s' non è "
#~ msgid "Running in safe mode! Auto-reload is off.\n"
#~ msgstr "Modalità sicura in esecuzione! Auto-reload disattivato.\n"
#~ msgid "Running in safe mode! Not running saved code.\n"
#~ msgstr "Modalità sicura in esecuzione! Codice salvato non in esecuzione.\n"
#~ msgid "__init__() should return None, not '%s'"
#~ msgstr "__init__() deve ritornare None, non '%s'"
#, fuzzy
#~ msgid "can't convert %s to complex"
#~ msgstr "non è possibile convertire a complex"
#~ msgid "can't convert %s to float"
#~ msgstr "non è possibile convertire %s a float"
#~ msgid "can't convert %s to int"
#~ msgstr "non è possibile convertire %s a int"
#~ msgid "can't convert NaN to int"
#~ msgstr "impossibile convertire NaN in int"
#~ msgid "can't convert address to int"
#~ msgstr "impossible convertire indirizzo in int"
#~ msgid "can't convert inf to int"
#~ msgstr "impossibile convertire inf in int"
#~ msgid "can't convert to complex"
#~ msgstr "non è possibile convertire a complex"
#~ msgid "can't convert to float"
#~ msgstr "non è possibile convertire a float"
#~ msgid "can't convert to int"
#~ msgstr "non è possibile convertire a int"
#~ msgid "object '%s' is not a tuple or list"
#~ msgstr "oggetto '%s' non è una tupla o una lista"
#~ msgid "object of type '%s' has no len()"
#~ msgstr "l'oggetto di tipo '%s' non implementa len()"
#~ msgid "pop from an empty PulseIn"
#~ msgstr "pop sun un PulseIn vuoto"
#~ msgid "pop from an empty set"
#~ msgstr "pop da un set vuoto"
#~ msgid "pop from empty list"
#~ msgstr "pop da una lista vuota"
#~ msgid "popitem(): dictionary is empty"
#~ msgstr "popitem(): il dizionario è vuoto"
#~ msgid "string index out of range"
#~ msgstr "indice della stringa fuori intervallo"
#~ msgid "string indices must be integers, not %s"
#~ msgstr "indici della stringa devono essere interi, non %s"
#~ msgid "struct: index out of range"
#~ msgstr "struct: indice fuori intervallo"
#~ msgid "unknown format code '%c' for object of type '%s'"
#~ msgstr "codice di formattaione '%c' sconosciuto per oggetto di tipo '%s'"
#~ msgid "unsupported type for %q: '%s'"
#~ msgstr "tipo non supportato per %q: '%s'"
#~ msgid "unsupported types for %q: '%s', '%s'"
#~ msgstr "tipi non supportati per %q: '%s', '%s'"
#~ msgid "AP required"
#~ msgstr "AP richiesto"

File diff suppressed because it is too large Load Diff

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: 2019-05-06 14:22-0700\n"
"Last-Translator: \n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -66,13 +66,17 @@ msgstr ""
msgid "%q in use"
msgstr "%q 사용 중입니다"
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "%q 인덱스 범위를 벗어났습니다"
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgstr "%q 인덱스는 %s 가 아닌 정수 여야합니다"
msgid "%q indices must be integers, not %q"
msgstr ""
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -110,6 +114,42 @@ msgstr ""
msgid "'%q' argument required"
msgstr ""
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr ""
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr ""
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr ""
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr ""
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -160,48 +200,6 @@ msgstr ""
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr ""
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr ""
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr "'%s' 을 지정할 수 없습니다"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr "'%s' 은 삭제할 수 없습니다"
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr "'%s' 은 수정할 수 없습니다"
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr "'%s' 을 검색 할 수 없습니다"
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr "'%s' 은 변경할 수 없습니다"
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr ""
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr ""
@ -451,6 +449,10 @@ msgstr ""
msgid "Buffer length must be a multiple of 512"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "잘못된 크기의 버퍼. >1 여야합니다"
@ -641,6 +643,10 @@ msgstr ""
msgid "Could not restart PWM"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr ""
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr ""
@ -740,7 +746,7 @@ msgstr "Regex에 오류가 있습니다."
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr "%q 이 예상되었습니다."
@ -823,6 +829,11 @@ msgstr ""
msgid "File exists"
msgstr ""
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
@ -847,7 +858,7 @@ msgid "Group full"
msgstr ""
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr ""
@ -863,6 +874,10 @@ msgstr ""
msgid "I2C Init Error"
msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -908,6 +923,11 @@ msgstr ""
msgid "Invalid %q pin"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr ""
@ -920,24 +940,12 @@ msgstr ""
msgid "Invalid DAC pin supplied"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr ""
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr ""
@ -1233,6 +1241,10 @@ msgstr ""
msgid "Not playing"
msgstr ""
#: main.c
msgid "Not running saved code.\n"
msgstr ""
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1318,8 +1330,13 @@ msgstr ""
msgid "Polygon needs at least 3 points"
msgstr ""
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
@ -1334,6 +1351,10 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr ""
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr ""
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr ""
@ -1394,11 +1415,7 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr ""
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr ""
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgid "Running in safe mode! "
msgstr ""
#: shared-module/sdcardio/SDCard.c
@ -1410,6 +1427,16 @@ msgstr ""
msgid "SDA or SCL needs a pull up"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO Init Error %d"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr ""
@ -1760,8 +1787,7 @@ msgid "__init__() should return None"
msgstr ""
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgid "__init__() should return None, not '%q'"
msgstr ""
#: py/objobject.c
@ -1915,7 +1941,7 @@ msgstr ""
msgid "bytes value out of range"
msgstr ""
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr ""
@ -1947,47 +1973,17 @@ msgstr ""
msgid "can't assign to expression"
msgstr ""
#: py/obj.c
#, c-format
msgid "can't convert %s to complex"
msgstr ""
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr ""
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr ""
#: py/objint.c
msgid "can't convert NaN to int"
msgstr ""
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr ""
#: py/objint.c
msgid "can't convert inf to int"
msgstr ""
#: py/obj.c
msgid "can't convert to complex"
msgstr ""
#: py/obj.c
msgid "can't convert to float"
msgstr ""
#: py/obj.c
msgid "can't convert to int"
msgid "can't convert to %q"
msgstr ""
#: py/objstr.c
@ -2395,7 +2391,7 @@ msgstr ""
msgid "function missing required positional argument #%d"
msgstr ""
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr ""
@ -2444,10 +2440,7 @@ msgstr ""
msgid "index is out of bounds"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr ""
@ -2803,8 +2796,7 @@ msgid "number of points must be at least 2"
msgstr ""
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgid "object '%q' is not a tuple or list"
msgstr ""
#: py/obj.c
@ -2840,8 +2832,7 @@ msgid "object not iterable"
msgstr ""
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgid "object of type '%q' has no len()"
msgstr ""
#: py/obj.c
@ -2934,20 +2925,9 @@ msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr ""
#: py/objset.c
msgid "pop from an empty set"
msgstr ""
#: py/objlist.c
msgid "pop from empty list"
msgstr ""
#: py/objdict.c
msgid "popitem(): dictionary is empty"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr ""
#: py/objint_mpz.c
@ -3104,12 +3084,7 @@ msgid "stream operation not supported"
msgstr ""
#: py/objstrunicode.c
msgid "string index out of range"
msgstr ""
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgid "string indices must be integers, not %q"
msgstr ""
#: py/stream.c
@ -3120,10 +3095,6 @@ msgstr ""
msgid "struct: cannot index"
msgstr ""
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr ""
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr ""
@ -3193,7 +3164,7 @@ msgstr ""
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr ""
@ -3201,10 +3172,6 @@ msgstr ""
msgid "tuple/list has wrong length"
msgstr ""
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3260,8 +3227,7 @@ msgid "unknown conversion specifier %c"
msgstr ""
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr ""
#: py/compile.c
@ -3301,7 +3267,7 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr ""
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgid "unsupported type for %q: '%q'"
msgstr ""
#: py/runtime.c
@ -3309,7 +3275,7 @@ msgid "unsupported type for operator"
msgstr ""
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr ""
#: py/objint.c
@ -3389,6 +3355,24 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "%q 인덱스는 %s 가 아닌 정수 여야합니다"
#~ msgid "'%s' object does not support item assignment"
#~ msgstr "'%s' 을 지정할 수 없습니다"
#~ msgid "'%s' object does not support item deletion"
#~ msgstr "'%s' 은 삭제할 수 없습니다"
#~ msgid "'%s' object is not an iterator"
#~ msgstr "'%s' 은 수정할 수 없습니다"
#~ msgid "'%s' object is not callable"
#~ msgstr "'%s' 을 검색 할 수 없습니다"
#~ msgid "'%s' object is not iterable"
#~ msgstr "'%s' 은 변경할 수 없습니다"
#~ msgid "Can't add services in Central mode"
#~ msgstr "센트랄(중앙) 모드에서는 서비스를 추가 할 수 없습니다"

View File

@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"PO-Revision-Date: 2020-07-27 21:27+0000\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: 2020-08-10 19:59+0000\n"
"Last-Translator: _fonzlate <vooralfred@gmail.com>\n"
"Language-Team: none\n"
"Language: nl\n"
@ -72,13 +72,17 @@ msgstr "%q fout: %d"
msgid "%q in use"
msgstr "%q in gebruik"
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "%q index buiten bereik"
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgstr "%q indexen moeten integers zijn, niet %s"
msgid "%q indices must be integers, not %q"
msgstr "%q indices moeten integers zijn, geen %q"
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -116,6 +120,42 @@ msgstr "%q() verwacht %d positionele argumenten maar kreeg %d"
msgid "'%q' argument required"
msgstr "'%q' argument vereist"
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr "'%q' object kan attribuut ' %q' niet toewijzen"
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr "'%q' object ondersteunt geen '%q'"
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr "'%q' object ondersteunt toewijzing van items niet"
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr "'%q' object ondersteunt verwijderen van items niet"
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr "'%q' object heeft geen attribuut '%q'"
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr "'%q' object is geen iterator"
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr "'%q' object is niet aanroepbaar"
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr "'%q' object is niet itereerbaar"
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr "kan niet abonneren op '%q' object"
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -166,48 +206,6 @@ msgstr "'%s' integer %d is niet in bereik %d..%d"
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr "'%s' integer 0x%x past niet in mask 0x%x"
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr "'%s' object kan niet aan attribuut '%q' toewijzen"
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr "'%s' object ondersteunt '%q' niet"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr "'%s' object ondersteunt item toewijzing niet"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr "'%s' object ondersteunt item verwijdering niet"
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr "'%s' object heeft geen attribuut '%q'"
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr "'%s' object is geen iterator"
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr "'%s' object is niet aanroepbaar"
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr "'%s' object is niet itereerbaar"
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr "'%s' object is niet onderschrijfbaar"
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr "'=' uitlijning niet toegestaan in string format specifier"
@ -226,7 +224,7 @@ msgstr "'await' buiten de functie"
#: py/compile.c
msgid "'await', 'async for' or 'async with' outside async function"
msgstr ""
msgstr "'await', 'async for' of 'async with' buiten async functie"
#: py/compile.c
msgid "'break' outside loop"
@ -457,6 +455,12 @@ msgstr "Buffer lengte %d te groot. Het moet kleiner zijn dan %d"
msgid "Buffer length must be a multiple of 512"
msgstr "Buffer lengte moet een veelvoud van 512 zijn"
#: ports/stm/common-hal/sdioio/SDCard.c
#, fuzzy
#| msgid "Buffer length must be a multiple of 512"
msgid "Buffer must be a multiple of 512 bytes"
msgstr "Buffer lengte moet een veelvoud van 512 zijn"
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Buffer moet op zijn minst lengte 1 zijn"
@ -653,6 +657,12 @@ msgstr "Kan timer niet her-initialiseren"
msgid "Could not restart PWM"
msgstr "Kan PWM niet herstarten"
#: shared-bindings/_bleio/Adapter.c
#, fuzzy
#| msgid "Could not start PWM"
msgid "Could not set address"
msgstr "Kan PWM niet starten"
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr "Kan PWM niet starten"
@ -752,7 +762,7 @@ msgstr "Fout in regex"
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr "Verwacht een %q"
@ -835,6 +845,11 @@ msgstr "Schrijven naar interne flash mislukt."
msgid "File exists"
msgstr "Bestand bestaat"
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
@ -861,7 +876,7 @@ msgid "Group full"
msgstr "Groep is vol"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Hardware bezig, probeer alternatieve pinnen"
@ -877,6 +892,10 @@ msgstr "I/O actie op gesloten bestand"
msgid "I2C Init Error"
msgstr "I2C Init Fout"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "I2SOut is niet beschikbaar"
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -924,6 +943,13 @@ msgstr "Ongeldige %q"
msgid "Invalid %q pin"
msgstr "Ongeldige %q pin"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#, fuzzy
#| msgid "Invalid I2C pin selection"
msgid "Invalid %q pin selection"
msgstr "Ongeldige I2C pin selectie"
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr "Ongeldige ADC Unit waarde"
@ -936,24 +962,12 @@ msgstr "Ongeldig BMP bestand"
msgid "Invalid DAC pin supplied"
msgstr "Ongeldige DAC pin opgegeven"
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr "Ongeldige I2C pin selectie"
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr "Ongeldige PWM frequentie"
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr "Ongeldige SPI pin selectie"
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr "Ongeldige UART pin selectie"
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Ongeldig argument"
@ -1249,6 +1263,10 @@ msgstr "Niet verbonden"
msgid "Not playing"
msgstr "Wordt niet afgespeeld"
#: main.c
msgid "Not running saved code.\n"
msgstr "Opgeslagen code wordt niet uitgevoerd.\n"
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1346,9 +1364,14 @@ msgstr "En iedere module in het bestandssysteem\n"
msgid "Polygon needs at least 3 points"
msgstr "Polygon heeft op zijn minst 3 punten nodig"
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
msgstr "Pop van een lege Ps2 buffer"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Prefix buffer must be on the heap"
@ -1364,6 +1387,10 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr "Pull niet gebruikt wanneer de richting output is."
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr "PulseOut niet ondersteund door deze chip"
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr "RNG DeInit Fout"
@ -1424,12 +1451,8 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr "Rij invoeging moet digitalio.DigitalInOut zijn"
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr "Draaiende in veilige modus! Auto-herlaad is uit.\n"
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgstr "Draaiende in veilige modus! Opgeslagen code wordt niet uitgevoerd.\n"
msgid "Running in safe mode! "
msgstr "Veilige modus wordt uitgevoerd! "
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
@ -1440,6 +1463,17 @@ msgstr "SD kaart CSD formaat niet ondersteund"
msgid "SDA or SCL needs a pull up"
msgstr "SDA of SCL hebben een pullup nodig"
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, fuzzy, c-format
#| msgid "SPI Init Error"
msgid "SDIO Init Error %d"
msgstr "SPI Init Fout"
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr "SPI Init Fout"
@ -1810,9 +1844,8 @@ msgid "__init__() should return None"
msgstr "__init __ () zou None moeten retourneren"
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgstr "__init __ () zou None moeten retouneren, niet '%s'"
msgid "__init__() should return None, not '%q'"
msgstr "__init__() moet None teruggeven, niet '%q'"
#: py/objobject.c
msgid "__new__ arg must be a user-type"
@ -1857,7 +1890,7 @@ msgstr "argument heeft onjuist type"
#: extmod/ulab/code/linalg/linalg.c
msgid "argument must be ndarray"
msgstr ""
msgstr "argument moet ndarray zijn"
#: py/argcheck.c shared-bindings/_stage/__init__.c
#: shared-bindings/digitalio/DigitalInOut.c shared-bindings/gamepad/GamePad.c
@ -1965,7 +1998,7 @@ msgstr "butes > 8 niet ondersteund"
msgid "bytes value out of range"
msgstr "bytes waarde buiten bereik"
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr "calibration is buiten bereik"
@ -1998,48 +2031,18 @@ msgstr ""
msgid "can't assign to expression"
msgstr "kan niet toewijzen aan expressie"
#: py/obj.c
#, c-format
msgid "can't convert %s to complex"
msgstr "kan %s niet converteren naar een complex"
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr "kan %s niet omzetten naar een float"
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
msgstr "kan %s niet omzetten naar een int"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr "kan %q niet naar %q converteren"
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr "kan '%q' object niet omzetten naar %q impliciet"
#: py/objint.c
msgid "can't convert NaN to int"
msgstr "kan NaN niet omzetten naar int"
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr "kan adres niet omzetten naar int"
#: py/objint.c
msgid "can't convert inf to int"
msgstr "kan inf niet omzetten naar int"
#: py/obj.c
msgid "can't convert to complex"
msgstr "kan niet omzetten naar complex"
#: py/obj.c
msgid "can't convert to float"
msgstr "kan niet omzetten naar float"
#: py/obj.c
msgid "can't convert to int"
msgstr "kan niet omzetten naar int"
msgid "can't convert to %q"
msgstr "kan niet naar %q converteren"
#: py/objstr.c
msgid "can't convert to str implicitly"
@ -2449,7 +2452,7 @@ msgstr "functie mist vereist sleutelwoord argument \"%q"
msgid "function missing required positional argument #%d"
msgstr "functie mist vereist positie-argument #%d"
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr ""
@ -2499,10 +2502,7 @@ msgstr "vulling (padding) is onjuist"
msgid "index is out of bounds"
msgstr "index is buiten bereik"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr "index is buiten bereik"
@ -2564,7 +2564,7 @@ msgstr "integer vereist"
#: extmod/ulab/code/approx/approx.c
msgid "interp is defined for 1D arrays of equal length"
msgstr "interp is gedefinieerd for eendimensionale arrays van gelijke lengte"
msgstr "interp is gedefinieerd voor eendimensionale arrays van gelijke lengte"
#: shared-bindings/_bleio/Adapter.c
#, c-format
@ -2861,9 +2861,8 @@ msgid "number of points must be at least 2"
msgstr "aantal punten moet minimaal 2 zijn"
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgstr "object '%s' is geen tuple of lijst"
msgid "object '%q' is not a tuple or list"
msgstr "object '%q' is geen tuple of lijst"
#: py/obj.c
msgid "object does not support item assignment"
@ -2898,9 +2897,8 @@ msgid "object not iterable"
msgstr "object niet itereerbaar"
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgstr "object van type '%s' heeft geen len()"
msgid "object of type '%q' has no len()"
msgstr "object van type '%q' heeft geen len()"
#: py/obj.c
msgid "object with buffer protocol required"
@ -2993,21 +2991,10 @@ msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr "pop van een lege PulseIn"
#: py/objset.c
msgid "pop from an empty set"
msgstr "pop van een lege set"
#: py/objlist.c
msgid "pop from empty list"
msgstr "pop van een lege lijst"
#: py/objdict.c
msgid "popitem(): dictionary is empty"
msgstr "popitem(): dictionary is leeg"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr "pop van een lege %q"
#: py/objint_mpz.c
msgid "pow() 3rd argument cannot be 0"
@ -3165,13 +3152,8 @@ msgid "stream operation not supported"
msgstr "stream operatie niet ondersteund"
#: py/objstrunicode.c
msgid "string index out of range"
msgstr "string index buiten bereik"
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgstr "string indices moeten integer zijn, niet %s"
msgid "string indices must be integers, not %q"
msgstr "string indices moeten integers zijn, geen %q"
#: py/stream.c
msgid "string not supported; use bytes or bytearray"
@ -3181,10 +3163,6 @@ msgstr "string niet ondersteund; gebruik bytes of bytearray"
msgid "struct: cannot index"
msgstr "struct: kan niet indexeren"
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr "struct: index buiten bereik"
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr "struct: geen velden"
@ -3252,9 +3230,9 @@ msgstr "te veel waarden om uit te pakken (%d verwacht)"
#: extmod/ulab/code/approx/approx.c
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
msgstr "trapz is gedefinieerd voor eendimensionale arrays van gelijke lengte"
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr "tuple index buiten bereik"
@ -3262,10 +3240,6 @@ msgstr "tuple index buiten bereik"
msgid "tuple/list has wrong length"
msgstr "tuple of lijst heeft onjuiste lengte"
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr "tuple of lijst vereist op RHS"
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3321,9 +3295,8 @@ msgid "unknown conversion specifier %c"
msgstr "onbekende conversiespecificatie %c"
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgstr "onbekende formaatcode '%c' voor object van type '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr "onbekende formaatcode '%c' voor object van type '%q'"
#: py/compile.c
msgid "unknown type"
@ -3362,16 +3335,16 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr "niet ondersteund formaatkarakter '%c' (0x%x) op index %d"
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgstr "niet ondersteund type voor %q: '%s'"
msgid "unsupported type for %q: '%q'"
msgstr "niet ondersteund type voor %q: '%q'"
#: py/runtime.c
msgid "unsupported type for operator"
msgstr "niet ondersteund type voor operator"
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgstr "niet ondersteunde types voor %q: '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr "niet ondersteunde types voor %q: '%q', '%q'"
#: py/objint.c
#, c-format
@ -3384,7 +3357,7 @@ msgstr "value_count moet groter dan 0 zijn"
#: extmod/ulab/code/linalg/linalg.c
msgid "vectors must have same lengths"
msgstr ""
msgstr "vectoren moeten van gelijke lengte zijn"
#: shared-bindings/watchdog/WatchDogTimer.c
msgid "watchdog timeout must be greater than 0"
@ -3450,15 +3423,124 @@ msgstr "zi moet van type float zijn"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi moet vorm (n_section, 2) hebben"
#~ msgid "'%q' object is not bytes-like"
#~ msgstr "'%q' object is niet bytes-achtig"
#~ msgid "tuple/list required on RHS"
#~ msgstr "tuple of lijst vereist op RHS"
#~ msgid "Invalid SPI pin selection"
#~ msgstr "Ongeldige SPI pin selectie"
#~ msgid "Invalid UART pin selection"
#~ msgstr "Ongeldige UART pin selectie"
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "%q indexen moeten integers zijn, niet %s"
#~ msgid "'%s' object cannot assign attribute '%q'"
#~ msgstr "'%s' object kan niet aan attribuut '%q' toewijzen"
#~ msgid "'%s' object does not support '%q'"
#~ msgstr "'%s' object ondersteunt '%q' niet"
#~ msgid "'%s' object does not support item assignment"
#~ msgstr "'%s' object ondersteunt item toewijzing niet"
#~ msgid "'%s' object does not support item deletion"
#~ msgstr "'%s' object ondersteunt item verwijdering niet"
#~ msgid "'%s' object has no attribute '%q'"
#~ msgstr "'%s' object heeft geen attribuut '%q'"
#~ msgid "'%s' object is not an iterator"
#~ msgstr "'%s' object is geen iterator"
#~ msgid "'%s' object is not callable"
#~ msgstr "'%s' object is niet aanroepbaar"
#~ msgid "'%s' object is not iterable"
#~ msgstr "'%s' object is niet itereerbaar"
#~ msgid "'%s' object is not subscriptable"
#~ msgstr "'%s' object is niet onderschrijfbaar"
#~ msgid "Pop from an empty Ps2 buffer"
#~ msgstr "Pop van een lege Ps2 buffer"
#~ msgid "Running in safe mode! Auto-reload is off.\n"
#~ msgstr "Draaiende in veilige modus! Auto-herlaad is uit.\n"
#~ msgid "Running in safe mode! Not running saved code.\n"
#~ msgstr ""
#~ "Draaiende in veilige modus! Opgeslagen code wordt niet uitgevoerd.\n"
#~ msgid "__init__() should return None, not '%s'"
#~ msgstr "__init __ () zou None moeten retouneren, niet '%s'"
#~ msgid "can't convert %s to complex"
#~ msgstr "kan %s niet converteren naar een complex"
#~ msgid "can't convert %s to float"
#~ msgstr "kan %s niet omzetten naar een float"
#~ msgid "can't convert %s to int"
#~ msgstr "kan %s niet omzetten naar een int"
#~ msgid "can't convert NaN to int"
#~ msgstr "kan NaN niet omzetten naar int"
#~ msgid "can't convert address to int"
#~ msgstr "kan adres niet omzetten naar int"
#~ msgid "can't convert inf to int"
#~ msgstr "kan inf niet omzetten naar int"
#~ msgid "can't convert to complex"
#~ msgstr "kan niet omzetten naar complex"
#~ msgid "can't convert to float"
#~ msgstr "kan niet omzetten naar float"
#~ msgid "can't convert to int"
#~ msgstr "kan niet omzetten naar int"
#~ msgid "object '%s' is not a tuple or list"
#~ msgstr "object '%s' is geen tuple of lijst"
#~ msgid "object of type '%s' has no len()"
#~ msgstr "object van type '%s' heeft geen len()"
#~ msgid "pop from an empty PulseIn"
#~ msgstr "pop van een lege PulseIn"
#~ msgid "pop from an empty set"
#~ msgstr "pop van een lege set"
#~ msgid "pop from empty list"
#~ msgstr "pop van een lege lijst"
#~ msgid "popitem(): dictionary is empty"
#~ msgstr "popitem(): dictionary is leeg"
#~ msgid "string index out of range"
#~ msgstr "string index buiten bereik"
#~ msgid "string indices must be integers, not %s"
#~ msgstr "string indices moeten integer zijn, niet %s"
#~ msgid "struct: index out of range"
#~ msgstr "struct: index buiten bereik"
#~ msgid "unknown format code '%c' for object of type '%s'"
#~ msgstr "onbekende formaatcode '%c' voor object van type '%s'"
#~ msgid "unsupported type for %q: '%s'"
#~ msgstr "niet ondersteund type voor %q: '%s'"
#~ msgid "unsupported types for %q: '%s', '%s'"
#~ msgstr "niet ondersteunde types voor %q: '%s', '%s'"
#~ msgid "'async for' or 'async with' outside async function"
#~ msgstr "'async for' of 'async with' buiten async functie"
#~ msgid "PulseOut not supported on this chip"
#~ msgstr "PulseOut niet ondersteund door deze chip"
#~ msgid "PulseIn not supported on this chip"
#~ msgstr "PusleIn niet ondersteund door deze chip"
@ -3485,3 +3567,6 @@ msgstr "zi moet vorm (n_section, 2) hebben"
#~ msgid "must specify all of sck/mosi/miso"
#~ msgstr "sck/mosi/miso moeten alle gespecificeerd worden"
#~ msgid "'%q' object is not bytes-like"
#~ msgstr "'%q' object is niet bytes-achtig"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: 2019-03-19 18:37-0700\n"
"Last-Translator: Radomir Dopieralski <circuitpython@sheep.art.pl>\n"
"Language-Team: pl\n"
@ -66,13 +66,17 @@ msgstr ""
msgid "%q in use"
msgstr "%q w użyciu"
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "%q poza zakresem"
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgstr "%q indeks musi być liczbą całkowitą, a nie %s"
msgid "%q indices must be integers, not %q"
msgstr ""
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -110,6 +114,42 @@ msgstr "%q() bierze %d argumentów pozycyjnych, lecz podano %d"
msgid "'%q' argument required"
msgstr "'%q' wymaga argumentu"
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr ""
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr ""
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr ""
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr ""
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -160,48 +200,6 @@ msgstr "'%s' liczba %d poza zakresem %d..%d"
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr "'%s' liczba 0x%x nie pasuje do maski 0x%x"
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr ""
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr "'%s' obiekt nie wspiera przypisania do elementów"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr "'%s' obiekt nie wspiera usuwania elementów"
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr "'%s' obiekt nie ma atrybutu '%q'"
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr "'%s' obiekt nie jest iteratorem"
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr "'%s' nie można wywoływać obiektu"
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr "'%s' nie można iterować po obiekcie"
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr "'%s' nie można indeksować obiektu"
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr "wyrównanie '=' niedozwolone w specyfikacji formatu"
@ -451,6 +449,10 @@ msgstr ""
msgid "Buffer length must be a multiple of 512"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Bufor musi mieć długość 1 lub więcej"
@ -641,6 +643,10 @@ msgstr ""
msgid "Could not restart PWM"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr ""
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr ""
@ -740,7 +746,7 @@ msgstr "Błąd w regex"
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr "Oczekiwano %q"
@ -823,6 +829,11 @@ msgstr ""
msgid "File exists"
msgstr "Plik istnieje"
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr "Uzyskana częstotliwość jest niemożliwa. Spauzowano."
@ -847,7 +858,7 @@ msgid "Group full"
msgstr "Grupa pełna"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr ""
@ -863,6 +874,10 @@ msgstr "Operacja I/O na zamkniętym pliku"
msgid "I2C Init Error"
msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -910,6 +925,11 @@ msgstr ""
msgid "Invalid %q pin"
msgstr "Zła nóżka %q"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr ""
@ -922,24 +942,12 @@ msgstr "Zły BMP"
msgid "Invalid DAC pin supplied"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr "Zła częstotliwość PWM"
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr ""
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Zły argument"
@ -1235,6 +1243,10 @@ msgstr "Nie podłączono"
msgid "Not playing"
msgstr "Nic nie jest odtwarzane"
#: main.c
msgid "Not running saved code.\n"
msgstr ""
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1320,8 +1332,13 @@ msgstr "Oraz moduły w systemie plików\n"
msgid "Polygon needs at least 3 points"
msgstr ""
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
@ -1336,6 +1353,10 @@ msgstr "Dowolny klawisz aby uruchomić konsolę. CTRL-D aby przeładować."
msgid "Pull not used when direction is output."
msgstr "Podciągnięcie nieużywane w trybie wyjścia."
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr ""
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr ""
@ -1396,12 +1417,8 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr "Rzędy muszą być digitalio.DigitalInOut"
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr "Uruchomiony tryb bezpieczeństwa! Samo-przeładowanie wyłączone.\n"
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgstr "Uruchomiony tryb bezpieczeństwa! Zapisany kod nie jest uruchamiany.\n"
msgid "Running in safe mode! "
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
@ -1412,6 +1429,16 @@ msgstr ""
msgid "SDA or SCL needs a pull up"
msgstr "SDA lub SCL wymagają podciągnięcia"
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO Init Error %d"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr ""
@ -1764,9 +1791,8 @@ msgid "__init__() should return None"
msgstr "__init__() powinien zwracać None"
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgstr "__init__() powinien zwracać None, nie '%s'"
msgid "__init__() should return None, not '%q'"
msgstr ""
#: py/objobject.c
msgid "__new__ arg must be a user-type"
@ -1919,7 +1945,7 @@ msgstr "bajty większe od 8 bitów są niewspierane"
msgid "bytes value out of range"
msgstr "wartość bytes poza zakresem"
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr "kalibracja poza zakresem"
@ -1951,48 +1977,18 @@ msgstr "nie można dodać specjalnej metody do podklasy"
msgid "can't assign to expression"
msgstr "przypisanie do wyrażenia"
#: py/obj.c
#, c-format
msgid "can't convert %s to complex"
msgstr "nie można skonwertować %s do complex"
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr "nie można skonwertować %s do float"
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
msgstr "nie można skonwertować %s do int"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr "nie można automatycznie skonwertować '%q' do '%q'"
#: py/objint.c
msgid "can't convert NaN to int"
msgstr "nie można skonwertować NaN do int"
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr "nie można skonwertować adresu do int"
#: py/objint.c
msgid "can't convert inf to int"
msgstr "nie można skonwertować inf do int"
#: py/obj.c
msgid "can't convert to complex"
msgstr "nie można skonwertować do complex"
#: py/obj.c
msgid "can't convert to float"
msgstr "nie można skonwertować do float"
#: py/obj.c
msgid "can't convert to int"
msgstr "nie można skonwertować do int"
msgid "can't convert to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert to str implicitly"
@ -2400,7 +2396,7 @@ msgstr "brak wymaganego argumentu nazwanego '%q' funkcji"
msgid "function missing required positional argument #%d"
msgstr "brak wymaganego argumentu pozycyjnego #%d funkcji"
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr "funkcja wymaga %d argumentów pozycyjnych, ale jest %d"
@ -2449,10 +2445,7 @@ msgstr "złe wypełnienie"
msgid "index is out of bounds"
msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr "indeks poza zakresem"
@ -2808,9 +2801,8 @@ msgid "number of points must be at least 2"
msgstr ""
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgstr "obiekt '%s' nie jest krotką ani listą"
msgid "object '%q' is not a tuple or list"
msgstr ""
#: py/obj.c
msgid "object does not support item assignment"
@ -2845,9 +2837,8 @@ msgid "object not iterable"
msgstr "obiekt nie jest iterowalny"
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgstr "obiekt typu '%s' nie ma len()"
msgid "object of type '%q' has no len()"
msgstr ""
#: py/obj.c
msgid "object with buffer protocol required"
@ -2940,21 +2931,10 @@ msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr "pop z pustego PulseIn"
#: py/objset.c
msgid "pop from an empty set"
msgstr "pop z pustego zbioru"
#: py/objlist.c
msgid "pop from empty list"
msgstr "pop z pustej listy"
#: py/objdict.c
msgid "popitem(): dictionary is empty"
msgstr "popitem(): słownik jest pusty"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr ""
#: py/objint_mpz.c
msgid "pow() 3rd argument cannot be 0"
@ -3111,13 +3091,8 @@ msgid "stream operation not supported"
msgstr "operacja na strumieniu nieobsługiwana"
#: py/objstrunicode.c
msgid "string index out of range"
msgstr "indeks łańcucha poza zakresem"
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgstr "indeksy łańcucha muszą być całkowite, nie %s"
msgid "string indices must be integers, not %q"
msgstr ""
#: py/stream.c
msgid "string not supported; use bytes or bytearray"
@ -3127,10 +3102,6 @@ msgstr "łańcuchy nieobsługiwane; użyj bytes lub bytearray"
msgid "struct: cannot index"
msgstr "struct: nie można indeksować"
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr "struct: indeks poza zakresem"
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr "struct: brak pól"
@ -3200,7 +3171,7 @@ msgstr "zbyt wiele wartości do rozpakowania (oczekiwano %d)"
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr "indeks krotki poza zakresem"
@ -3208,10 +3179,6 @@ msgstr "indeks krotki poza zakresem"
msgid "tuple/list has wrong length"
msgstr "krotka/lista ma złą długość"
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr "wymagana krotka/lista po prawej stronie"
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3267,9 +3234,8 @@ msgid "unknown conversion specifier %c"
msgstr "zła specyfikacja konwersji %c"
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgstr "zły kod formatowania '%c' dla obiektu typu '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr ""
#: py/compile.c
msgid "unknown type"
@ -3308,16 +3274,16 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr "zły znak formatowania '%c' (0x%x) na pozycji %d"
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgstr "zły typ dla %q: '%s'"
msgid "unsupported type for %q: '%q'"
msgstr ""
#: py/runtime.c
msgid "unsupported type for operator"
msgstr "zły typ dla operatora"
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgstr "złe typy dla %q: '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr ""
#: py/objint.c
#, c-format
@ -3396,6 +3362,106 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid "tuple/list required on RHS"
#~ msgstr "wymagana krotka/lista po prawej stronie"
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "%q indeks musi być liczbą całkowitą, a nie %s"
#~ msgid "'%s' object does not support item assignment"
#~ msgstr "'%s' obiekt nie wspiera przypisania do elementów"
#~ msgid "'%s' object does not support item deletion"
#~ msgstr "'%s' obiekt nie wspiera usuwania elementów"
#~ msgid "'%s' object has no attribute '%q'"
#~ msgstr "'%s' obiekt nie ma atrybutu '%q'"
#~ msgid "'%s' object is not an iterator"
#~ msgstr "'%s' obiekt nie jest iteratorem"
#~ msgid "'%s' object is not callable"
#~ msgstr "'%s' nie można wywoływać obiektu"
#~ msgid "'%s' object is not iterable"
#~ msgstr "'%s' nie można iterować po obiekcie"
#~ msgid "'%s' object is not subscriptable"
#~ msgstr "'%s' nie można indeksować obiektu"
#~ msgid "Running in safe mode! Auto-reload is off.\n"
#~ msgstr "Uruchomiony tryb bezpieczeństwa! Samo-przeładowanie wyłączone.\n"
#~ msgid "Running in safe mode! Not running saved code.\n"
#~ msgstr ""
#~ "Uruchomiony tryb bezpieczeństwa! Zapisany kod nie jest uruchamiany.\n"
#~ msgid "__init__() should return None, not '%s'"
#~ msgstr "__init__() powinien zwracać None, nie '%s'"
#~ msgid "can't convert %s to complex"
#~ msgstr "nie można skonwertować %s do complex"
#~ msgid "can't convert %s to float"
#~ msgstr "nie można skonwertować %s do float"
#~ msgid "can't convert %s to int"
#~ msgstr "nie można skonwertować %s do int"
#~ msgid "can't convert NaN to int"
#~ msgstr "nie można skonwertować NaN do int"
#~ msgid "can't convert address to int"
#~ msgstr "nie można skonwertować adresu do int"
#~ msgid "can't convert inf to int"
#~ msgstr "nie można skonwertować inf do int"
#~ msgid "can't convert to complex"
#~ msgstr "nie można skonwertować do complex"
#~ msgid "can't convert to float"
#~ msgstr "nie można skonwertować do float"
#~ msgid "can't convert to int"
#~ msgstr "nie można skonwertować do int"
#~ msgid "object '%s' is not a tuple or list"
#~ msgstr "obiekt '%s' nie jest krotką ani listą"
#~ msgid "object of type '%s' has no len()"
#~ msgstr "obiekt typu '%s' nie ma len()"
#~ msgid "pop from an empty PulseIn"
#~ msgstr "pop z pustego PulseIn"
#~ msgid "pop from an empty set"
#~ msgstr "pop z pustego zbioru"
#~ msgid "pop from empty list"
#~ msgstr "pop z pustej listy"
#~ msgid "popitem(): dictionary is empty"
#~ msgstr "popitem(): słownik jest pusty"
#~ msgid "string index out of range"
#~ msgstr "indeks łańcucha poza zakresem"
#~ msgid "string indices must be integers, not %s"
#~ msgstr "indeksy łańcucha muszą być całkowite, nie %s"
#~ msgid "struct: index out of range"
#~ msgstr "struct: indeks poza zakresem"
#~ msgid "unknown format code '%c' for object of type '%s'"
#~ msgstr "zły kod formatowania '%c' dla obiektu typu '%s'"
#~ msgid "unsupported type for %q: '%s'"
#~ msgstr "zły typ dla %q: '%s'"
#~ msgid "unsupported types for %q: '%s', '%s'"
#~ msgstr "złe typy dla %q: '%s', '%s'"
#~ msgid "Address is not %d bytes long or is in wrong format"
#~ msgstr "Adres nie ma długości %d bajtów lub zły format"

View File

@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"PO-Revision-Date: 2020-07-28 15:41+0000\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: 2020-08-16 02:25+0000\n"
"Last-Translator: Wellington Terumi Uemura <wellingtonuemura@gmail.com>\n"
"Language-Team: \n"
"Language: pt_BR\n"
@ -72,13 +72,17 @@ msgstr "%q falha: %d"
msgid "%q in use"
msgstr "%q em uso"
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "O índice %q está fora do intervalo"
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgstr "Os índices %q devem ser inteiros, e não %s"
msgid "%q indices must be integers, not %q"
msgstr "Os indicadores %q devem ser inteiros, não %q"
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -116,6 +120,42 @@ msgstr "%q() recebe %d argumentos posicionais, porém %d foram informados"
msgid "'%q' argument required"
msgstr "'%q' argumento(s) requerido(s)"
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr "O objeto '%q' não pode definir o atributo '%q'"
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr "O objeto '%q' não suporta '%q'"
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr "O objeto '%q' não suporta a atribuição do item"
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr "O objeto '%q' não suporta a exclusão dos itens"
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr "O objeto '%q' não possui qualquer atributo '%q'"
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr "O objeto '%q' não é um iterador"
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr "O objeto '%s' não é invocável"
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr "O objeto '%q' não é iterável"
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr "O objeto '%q' não é subscritível"
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -166,48 +206,6 @@ msgstr "O número inteiro '%s' %d não está dentro do intervalo %d..%d"
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr "O número inteiro '%s' 0x%x não cabe na máscara 0x%x"
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr "O objeto '%s' não pode definir o atributo '%q'"
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr "O objeto '%s' não é compatível com '%q'"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr "O objeto '%s' não compatível com a atribuição dos itens"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr "O objeto '%s' não é compatível com exclusão do item"
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr "O objeto '%s' não possui o atributo '%q'"
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr "O objeto '%s' não é um iterador"
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr "O objeto '%s' não é invocável"
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr "O objeto '%s' não é iterável"
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr "O objeto '%s' não é subroteirizável"
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr ""
@ -465,6 +463,10 @@ msgstr "O tamanho do buffer %d é muito grande. Deve ser menor que %d"
msgid "Buffer length must be a multiple of 512"
msgstr "O comprimento do Buffer deve ser um múltiplo de 512"
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Buffer must be a multiple of 512 bytes"
msgstr "O buffer deve ser um múltiplo de 512 bytes"
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "O comprimento do buffer deve ter pelo menos 1"
@ -662,6 +664,10 @@ msgstr "Não foi possível reiniciar o temporizador"
msgid "Could not restart PWM"
msgstr "Não foi possível reiniciar o PWM"
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr "Não foi possível definir o endereço"
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr "Não foi possível iniciar o PWM"
@ -761,7 +767,7 @@ msgstr "Erro no regex"
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr "Esperado um"
@ -844,6 +850,11 @@ msgstr "Falha ao gravar o flash interno."
msgid "File exists"
msgstr "Arquivo já existe"
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr "O Framebuffer requer %d bytes"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
@ -870,7 +881,7 @@ msgid "Group full"
msgstr "Grupo cheio"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "O hardware está ocupado, tente os pinos alternativos"
@ -886,6 +897,10 @@ msgstr "Operação I/O no arquivo fechado"
msgid "I2C Init Error"
msgstr "Erro de inicialização do I2C"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "O I2SOut não está disponível"
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -933,6 +948,11 @@ msgstr "%q Inválido"
msgid "Invalid %q pin"
msgstr "Pino do %q inválido"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr "Seleção inválida dos pinos %q"
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr "Valor inválido da unidade ADC"
@ -945,24 +965,12 @@ msgstr "Arquivo BMP inválido"
msgid "Invalid DAC pin supplied"
msgstr "O pino DAC informado é inválido"
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr "A seleção dos pinos I2C é inválido"
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr "Frequência PWM inválida"
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr "A seleção do pino SPI é inválido"
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr "A seleção dos pinos UART é inválido"
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Argumento inválido"
@ -1258,6 +1266,10 @@ msgstr "Não Conectado"
msgid "Not playing"
msgstr "Não está jogando"
#: main.c
msgid "Not running saved code.\n"
msgstr "O código salvo não está em execução.\n"
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1355,9 +1367,14 @@ msgstr "Além de quaisquer módulos no sistema de arquivos\n"
msgid "Polygon needs at least 3 points"
msgstr "O Polígono precisa de pelo menos 3 pontos"
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
msgstr "Buffer Ps2 vazio"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Prefix buffer must be on the heap"
@ -1374,6 +1391,10 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr "O Pull não foi usado quando a direção for gerada."
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr "O PulseOut não é compatível neste CI"
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr "Erro DeInit RNG"
@ -1434,12 +1455,8 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr "A entrada da linha deve ser digitalio.DigitalInOut"
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr "Rodando em modo seguro! Atualização automática está desligada.\n"
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgstr "Rodando em modo seguro! Não está executando o código salvo.\n"
msgid "Running in safe mode! "
msgstr "Executando no modo de segurança! "
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
@ -1450,6 +1467,16 @@ msgstr "O formato CSD do Cartão SD não é compatível"
msgid "SDA or SCL needs a pull up"
msgstr "SDA ou SCL precisa de um pull up"
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr "Erro SDIO GetCardInfo %d"
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO Init Error %d"
msgstr "Erro SDIO Init %d"
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr "Houve um erro na inicialização SPI"
@ -1825,9 +1852,8 @@ msgid "__init__() should return None"
msgstr "O __init__() deve retornar Nenhum"
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgstr "O __init__() deve retornar Nenhum, não '%s'"
msgid "__init__() should return None, not '%q'"
msgstr "O __init__() deve retornar Nenhum, não '%q'"
#: py/objobject.c
msgid "__new__ arg must be a user-type"
@ -1872,7 +1898,7 @@ msgstr "argumento tem tipo errado"
#: extmod/ulab/code/linalg/linalg.c
msgid "argument must be ndarray"
msgstr ""
msgstr "o argumento deve ser ndarray"
#: py/argcheck.c shared-bindings/_stage/__init__.c
#: shared-bindings/digitalio/DigitalInOut.c shared-bindings/gamepad/GamePad.c
@ -1980,7 +2006,7 @@ msgstr "bytes > 8 bits não suportado"
msgid "bytes value out of range"
msgstr "o valor dos bytes estão fora do alcance"
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr "Calibração está fora do intervalo"
@ -2012,48 +2038,18 @@ msgstr "não é possível adicionar o método especial à classe já subclassifi
msgid "can't assign to expression"
msgstr "a expressão não pode ser atribuída"
#: py/obj.c
#, c-format
msgid "can't convert %s to complex"
msgstr "Não é possível converter %s para complex"
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr "Não é possível converter %s para float"
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
msgstr "Não é possível converter %s para int"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr "não é possível converter %q para %q"
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr "não é possível converter implicitamente o objeto '%q' para %q"
#: py/objint.c
msgid "can't convert NaN to int"
msgstr "Não é possível converter NaN para int"
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr "não é possível converter o endereço para int"
#: py/objint.c
msgid "can't convert inf to int"
msgstr "não é possível converter inf para int"
#: py/obj.c
msgid "can't convert to complex"
msgstr "não é possível converter para complex"
#: py/obj.c
msgid "can't convert to float"
msgstr "não é possível converter para float"
#: py/obj.c
msgid "can't convert to int"
msgstr "não é possível converter para int"
msgid "can't convert to %q"
msgstr "não é possível converter para %q"
#: py/objstr.c
msgid "can't convert to str implicitly"
@ -2470,7 +2466,7 @@ msgstr "falta apenas a palavra chave do argumento '%q' da função"
msgid "function missing required positional argument #%d"
msgstr "falta o argumento #%d da posição necessária da função"
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr "função leva %d argumentos posicionais, mas apenas %d foram passadas"
@ -2519,10 +2515,7 @@ msgstr "preenchimento incorreto"
msgid "index is out of bounds"
msgstr "o índice está fora dos limites"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr "Índice fora do intervalo"
@ -2883,9 +2876,8 @@ msgid "number of points must be at least 2"
msgstr "a quantidade dos pontos deve ser pelo menos 2"
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgstr "o objeto '%s' não é uma tupla ou uma lista"
msgid "object '%q' is not a tuple or list"
msgstr "o objeto '%q' não é uma tupla ou uma lista"
#: py/obj.c
msgid "object does not support item assignment"
@ -2920,9 +2912,8 @@ msgid "object not iterable"
msgstr "objeto não iterável"
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgstr "O objeto do tipo '%s' não possui len()"
msgid "object of type '%q' has no len()"
msgstr "o objeto do tipo '%q' não tem len()"
#: py/obj.c
msgid "object with buffer protocol required"
@ -3019,21 +3010,10 @@ msgstr "o polígono só pode ser registrado em um pai"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr "pop a partir de um PulseIn vazio"
#: py/objset.c
msgid "pop from an empty set"
msgstr "pop a partir de um conjunto vazio"
#: py/objlist.c
msgid "pop from empty list"
msgstr "pop a partir da lista vazia"
#: py/objdict.c
msgid "popitem(): dictionary is empty"
msgstr "popitem(): o dicionário está vazio"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr "pop a partir do %q vazio"
#: py/objint_mpz.c
msgid "pow() 3rd argument cannot be 0"
@ -3070,7 +3050,7 @@ msgstr "a anotação do retorno deve ser um identificador"
#: py/emitnative.c
msgid "return expected '%q' but got '%q'"
msgstr "o retorno esperado era '%q', porém obteve '% q'"
msgstr "o retorno esperado era '%q', porém obteve '%q'"
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
@ -3191,13 +3171,8 @@ msgid "stream operation not supported"
msgstr "a operação do fluxo não é compatível"
#: py/objstrunicode.c
msgid "string index out of range"
msgstr "o índice da string está fora do intervalo"
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgstr "o índices das string devem ser números inteiros, não %s"
msgid "string indices must be integers, not %q"
msgstr "a sequência dos índices devem ser inteiros, não %q"
#: py/stream.c
msgid "string not supported; use bytes or bytearray"
@ -3207,10 +3182,6 @@ msgstr "a string não é compatível; use bytes ou bytearray"
msgid "struct: cannot index"
msgstr "struct: não pode indexar"
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr "struct: índice fora do intervalo"
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr "struct: sem campos"
@ -3278,9 +3249,9 @@ msgstr "valores demais para descompactar (esperado %d)"
#: extmod/ulab/code/approx/approx.c
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
msgstr "o trapz está definido para 1D arrays de igual tamanho"
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr "o índice da tupla está fora do intervalo"
@ -3288,10 +3259,6 @@ msgstr "o índice da tupla está fora do intervalo"
msgid "tuple/list has wrong length"
msgstr "a tupla/lista está com tamanho incorreto"
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr "a tupla/lista necessária no RHS"
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3347,9 +3314,8 @@ msgid "unknown conversion specifier %c"
msgstr "especificador de conversão desconhecido %c"
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgstr "código de formato desconhecido '%c' para o objeto do tipo '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr "o formato do código '%c' é desconhecido para o objeto do tipo '%q'"
#: py/compile.c
msgid "unknown type"
@ -3388,16 +3354,16 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr "o caractere do formato não é compatível '%c' (0x%x) no índice %d"
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgstr "tipo não compatível para %q: '%s'"
msgid "unsupported type for %q: '%q'"
msgstr "tipo sem suporte para %q: '%q'"
#: py/runtime.c
msgid "unsupported type for operator"
msgstr "tipo não compatível para o operador"
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgstr "tipos não compatíveis para %q: '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr "tipo sem suporte para %q: '%q', '%q'"
#: py/objint.c
#, c-format
@ -3410,7 +3376,7 @@ msgstr "o value_count deve ser > 0"
#: extmod/ulab/code/linalg/linalg.c
msgid "vectors must have same lengths"
msgstr ""
msgstr "os vetores devem ter os mesmos comprimentos"
#: shared-bindings/watchdog/WatchDogTimer.c
msgid "watchdog timeout must be greater than 0"
@ -3476,15 +3442,129 @@ msgstr "zi deve ser de um tipo float"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi deve estar na forma (n_section, 2)"
#~ msgid "tuple/list required on RHS"
#~ msgstr "a tupla/lista necessária no RHS"
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "Os índices %q devem ser inteiros, e não %s"
#~ msgid "'%s' object cannot assign attribute '%q'"
#~ msgstr "O objeto '%s' não pode definir o atributo '%q'"
#~ msgid "'%s' object does not support '%q'"
#~ msgstr "O objeto '%s' não é compatível com '%q'"
#~ msgid "'%s' object does not support item assignment"
#~ msgstr "O objeto '%s' não compatível com a atribuição dos itens"
#~ msgid "'%s' object does not support item deletion"
#~ msgstr "O objeto '%s' não é compatível com exclusão do item"
#~ msgid "'%s' object has no attribute '%q'"
#~ msgstr "O objeto '%s' não possui o atributo '%q'"
#~ msgid "'%s' object is not an iterator"
#~ msgstr "O objeto '%s' não é um iterador"
#~ msgid "'%s' object is not callable"
#~ msgstr "O objeto '%s' não é invocável"
#~ msgid "'%s' object is not iterable"
#~ msgstr "O objeto '%s' não é iterável"
#~ msgid "'%s' object is not subscriptable"
#~ msgstr "O objeto '%s' não é subroteirizável"
#~ msgid "Invalid I2C pin selection"
#~ msgstr "A seleção dos pinos I2C é inválido"
#~ msgid "Invalid SPI pin selection"
#~ msgstr "A seleção do pino SPI é inválido"
#~ msgid "Invalid UART pin selection"
#~ msgstr "A seleção dos pinos UART é inválido"
#~ msgid "Pop from an empty Ps2 buffer"
#~ msgstr "Buffer Ps2 vazio"
#~ msgid "Running in safe mode! Auto-reload is off.\n"
#~ msgstr "Rodando em modo seguro! Atualização automática está desligada.\n"
#~ msgid "Running in safe mode! Not running saved code.\n"
#~ msgstr "Rodando em modo seguro! Não está executando o código salvo.\n"
#~ msgid "__init__() should return None, not '%s'"
#~ msgstr "O __init__() deve retornar Nenhum, não '%s'"
#~ msgid "can't convert %s to complex"
#~ msgstr "Não é possível converter %s para complex"
#~ msgid "can't convert %s to float"
#~ msgstr "Não é possível converter %s para float"
#~ msgid "can't convert %s to int"
#~ msgstr "Não é possível converter %s para int"
#~ msgid "can't convert NaN to int"
#~ msgstr "Não é possível converter NaN para int"
#~ msgid "can't convert address to int"
#~ msgstr "não é possível converter o endereço para int"
#~ msgid "can't convert inf to int"
#~ msgstr "não é possível converter inf para int"
#~ msgid "can't convert to complex"
#~ msgstr "não é possível converter para complex"
#~ msgid "can't convert to float"
#~ msgstr "não é possível converter para float"
#~ msgid "can't convert to int"
#~ msgstr "não é possível converter para int"
#~ msgid "object '%s' is not a tuple or list"
#~ msgstr "o objeto '%s' não é uma tupla ou uma lista"
#~ msgid "object of type '%s' has no len()"
#~ msgstr "O objeto do tipo '%s' não possui len()"
#~ msgid "pop from an empty PulseIn"
#~ msgstr "pop a partir de um PulseIn vazio"
#~ msgid "pop from an empty set"
#~ msgstr "pop a partir de um conjunto vazio"
#~ msgid "pop from empty list"
#~ msgstr "pop a partir da lista vazia"
#~ msgid "popitem(): dictionary is empty"
#~ msgstr "popitem(): o dicionário está vazio"
#~ msgid "string index out of range"
#~ msgstr "o índice da string está fora do intervalo"
#~ msgid "string indices must be integers, not %s"
#~ msgstr "o índices das string devem ser números inteiros, não %s"
#~ msgid "struct: index out of range"
#~ msgstr "struct: índice fora do intervalo"
#~ msgid "unknown format code '%c' for object of type '%s'"
#~ msgstr "código de formato desconhecido '%c' para o objeto do tipo '%s'"
#~ msgid "unsupported type for %q: '%s'"
#~ msgstr "tipo não compatível para %q: '%s'"
#~ msgid "unsupported types for %q: '%s', '%s'"
#~ msgstr "tipos não compatíveis para %q: '%s', '%s'"
#~ msgid "'%q' object is not bytes-like"
#~ msgstr "objetos '%q' não são bytes-like"
#~ msgid "'async for' or 'async with' outside async function"
#~ msgstr "'assíncrono para' ou 'assíncrono com' função assíncrona externa"
#~ msgid "PulseOut not supported on this chip"
#~ msgstr "O PulseOut não é compatível neste CI"
#~ msgid "PulseIn not supported on this chip"
#~ msgstr "O PulseIn não é compatível neste CI"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-07-28 16:57-0500\n"
"POT-Creation-Date: 2020-08-18 11:19-0400\n"
"PO-Revision-Date: 2020-07-25 20:58+0000\n"
"Last-Translator: Jonny Bergdahl <jonny@bergdahl.it>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -72,13 +72,17 @@ msgstr "%q-fel: %d"
msgid "%q in use"
msgstr "%q används redan"
#: py/obj.c
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "Index %q ligger utanför intervallet"
#: py/obj.c
msgid "%q indices must be integers, not %s"
msgstr "Indexet %q måste vara ett heltal, inte %s"
msgid "%q indices must be integers, not %q"
msgstr ""
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -116,6 +120,42 @@ msgstr "%q() kräver %d positionsargument men %d gavs"
msgid "'%q' argument required"
msgstr "'%q' argument krävs"
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr ""
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr ""
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr ""
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr ""
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
msgstr ""
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr ""
#: py/obj.c
msgid "'%q' object is not subscriptable"
msgstr ""
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects a label"
@ -166,48 +206,6 @@ msgstr "'%s' heltal %d ligger inte inom intervallet %d..%d"
msgid "'%s' integer 0x%x does not fit in mask 0x%x"
msgstr "'%s' heltal 0x%x ryms inte i mask 0x%x"
#: py/runtime.c
msgid "'%s' object cannot assign attribute '%q'"
msgstr "Objektet '%s' kan inte tilldela attributet '%q'"
#: py/proto.c
msgid "'%s' object does not support '%q'"
msgstr "Objektet '%s' har inte stöd för '%q'"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item assignment"
msgstr "Objektet '%s' stöder inte tilldelningen"
#: py/obj.c
#, c-format
msgid "'%s' object does not support item deletion"
msgstr "Objektet '%s' stöder inte borttagning av objekt"
#: py/runtime.c
msgid "'%s' object has no attribute '%q'"
msgstr "Objektet '%s' har inget attribut '%q'"
#: py/runtime.c
#, c-format
msgid "'%s' object is not an iterator"
msgstr "Objektet '%s' är inte en iterator"
#: py/objtype.c py/runtime.c
#, c-format
msgid "'%s' object is not callable"
msgstr "Objektet '%s' kan inte anropas"
#: py/runtime.c
#, c-format
msgid "'%s' object is not iterable"
msgstr "Objektet '%s' är inte itererable"
#: py/obj.c
#, c-format
msgid "'%s' object is not subscriptable"
msgstr "Objektet '%s' är inte indexbar"
#: py/objstr.c
msgid "'=' alignment not allowed in string format specifier"
msgstr "'='-justering tillåts inte i strängformatspecifikation"
@ -457,6 +455,10 @@ msgstr "Buffertlängd %d för stor. Den måste vara mindre än %d"
msgid "Buffer length must be a multiple of 512"
msgstr "Buffertlängd måste vara en multipel av 512"
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Bufferten måste ha minst längd 1"
@ -653,6 +655,10 @@ msgstr "Det gick inte att återinitiera timern"
msgid "Could not restart PWM"
msgstr "Det gick inte att starta om PWM"
#: shared-bindings/_bleio/Adapter.c
msgid "Could not set address"
msgstr ""
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid "Could not start PWM"
msgstr "Det gick inte att starta PWM"
@ -752,7 +758,7 @@ msgstr "Fel i regex"
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/neopixel_write/__init__.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
msgstr "Förväntade %q"
@ -835,6 +841,11 @@ msgstr "Det gick inte att skriva till intern flash."
msgid "File exists"
msgstr "Filen finns redan"
#: shared-module/framebufferio/FramebufferDisplay.c
#, c-format
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr "Infångningsfrekvens är för hög. Infångning pausad."
@ -859,7 +870,7 @@ msgid "Group full"
msgstr "Gruppen är full"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Hårdvaran är upptagen, prova alternativa pinnar"
@ -875,6 +886,10 @@ msgstr "I/O-operation på stängd fil"
msgid "I2C Init Error"
msgstr "I2C init-fel"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -922,6 +937,11 @@ msgstr "Ogiltig %q"
msgid "Invalid %q pin"
msgstr "Ogiltig %q-pinne"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
#: ports/stm/common-hal/analogio/AnalogIn.c
msgid "Invalid ADC Unit value"
msgstr "Ogiltigt ADC-enhetsvärde"
@ -934,24 +954,12 @@ msgstr "Ogiltig BMP-fil"
msgid "Invalid DAC pin supplied"
msgstr "Ogiltig DAC-pinne angiven"
#: ports/stm/common-hal/busio/I2C.c
msgid "Invalid I2C pin selection"
msgstr "Ogiltigt val av I2C-pinne"
#: ports/atmel-samd/common-hal/pulseio/PWMOut.c
#: ports/cxd56/common-hal/pulseio/PWMOut.c
#: ports/nrf/common-hal/pulseio/PWMOut.c shared-bindings/pulseio/PWMOut.c
msgid "Invalid PWM frequency"
msgstr "Ogiltig PWM-frekvens"
#: ports/stm/common-hal/busio/SPI.c
msgid "Invalid SPI pin selection"
msgstr "Ogiltigt val av SPI-pinne"
#: ports/stm/common-hal/busio/UART.c
msgid "Invalid UART pin selection"
msgstr "Ogiltigt val av UART-pinne"
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Ogiltigt argument"
@ -1248,6 +1256,10 @@ msgstr "Inte ansluten"
msgid "Not playing"
msgstr "Ingen uppspelning"
#: main.c
msgid "Not running saved code.\n"
msgstr ""
#: shared-bindings/util.c
msgid ""
"Object has been deinitialized and can no longer be used. Create a new object."
@ -1343,9 +1355,14 @@ msgstr "Plus eventuella moduler i filsystemet\n"
msgid "Polygon needs at least 3 points"
msgstr "Polygonen behöver minst 3 punkter"
#: shared-bindings/ps2io/Ps2.c
msgid "Pop from an empty Ps2 buffer"
msgstr "Pop från en tom Ps2-buffert"
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/pulseio/PulseOut.c
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid ""
"Port does not accept pins or frequency. "
"Construct and pass a PWMOut Carrier instead"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Prefix buffer must be on the heap"
@ -1360,6 +1377,10 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr "Pull används inte när riktningen är output."
#: ports/stm/ref/pulseout-pre-timeralloc.c
msgid "PulseOut not supported on this chip"
msgstr "PulseIn stöds inte av detta chip"
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr "RNG DeInit-fel"
@ -1420,12 +1441,8 @@ msgid "Row entry must be digitalio.DigitalInOut"
msgstr "Radvärdet måste vara digitalio.DigitalInOut"
#: main.c
msgid "Running in safe mode! Auto-reload is off.\n"
msgstr "Kör i säkert läge! Autoladdning är avstängd.\n"
#: main.c
msgid "Running in safe mode! Not running saved code.\n"
msgstr "Kör i säkert läge! Sparad kod körs inte.\n"
msgid "Running in safe mode! "
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
@ -1436,6 +1453,16 @@ msgstr "SD-kort CSD-format stöds inte"
msgid "SDA or SCL needs a pull up"
msgstr "SDA eller SCL behöver en pullup"
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO GetCardInfo Error %d"
msgstr ""
#: ports/stm/common-hal/sdioio/SDCard.c
#, c-format
msgid "SDIO Init Error %d"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "SPI Init Error"
msgstr "SPI Init-fel"
@ -1803,9 +1830,8 @@ msgid "__init__() should return None"
msgstr "__init __ () ska returnera None"
#: py/objtype.c
#, c-format
msgid "__init__() should return None, not '%s'"
msgstr "__init __ () ska returnera None, inte '%s'"
msgid "__init__() should return None, not '%q'"
msgstr ""
#: py/objobject.c
msgid "__new__ arg must be a user-type"
@ -1958,7 +1984,7 @@ msgstr "bytes> 8 bitar stöds inte"
msgid "bytes value out of range"
msgstr "bytevärde utanför intervallet"
#: ports/atmel-samd/bindings/samd/Clock.c
#: ports/atmel-samd/bindings/samd/Clock.c ports/atmel-samd/common-hal/rtc/RTC.c
msgid "calibration is out of range"
msgstr "kalibrering är utanför intervallet"
@ -1990,48 +2016,18 @@ msgstr "kan inte lägga till särskild metod för redan subklassad klass"
msgid "can't assign to expression"
msgstr "kan inte tilldela uttryck"
#: py/obj.c
#, c-format
msgid "can't convert %s to complex"
msgstr "kan inte konvertera %s till komplex"
#: py/obj.c
#, c-format
msgid "can't convert %s to float"
msgstr "kan inte konvertera %s till float"
#: py/obj.c
#, c-format
msgid "can't convert %s to int"
msgstr "kan inte konvertera %s till int"
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-module/_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert '%q' object to %q implicitly"
msgstr "kan inte konvertera '%q' objekt implicit till %q"
#: py/objint.c
msgid "can't convert NaN to int"
msgstr "kan inte konvertera NaN till int"
#: shared-bindings/i2cperipheral/I2CPeripheral.c
msgid "can't convert address to int"
msgstr "kan inte konvertera address till int"
#: py/objint.c
msgid "can't convert inf to int"
msgstr "kan inte konvertera inf till int"
#: py/obj.c
msgid "can't convert to complex"
msgstr "kan inte konvertera till komplex"
#: py/obj.c
msgid "can't convert to float"
msgstr "kan inte konvertera till float"
#: py/obj.c
msgid "can't convert to int"
msgstr "kan inte konvertera till int"
msgid "can't convert to %q"
msgstr ""
#: py/objstr.c
msgid "can't convert to str implicitly"
@ -2115,7 +2111,7 @@ msgstr ""
#: py/objtype.c
msgid "cannot create '%q' instances"
msgstr "kan inte skapa instanser av '% q'"
msgstr "kan inte skapa instanser av '%q'"
#: py/objtype.c
msgid "cannot create instance"
@ -2443,7 +2439,7 @@ msgstr "funktionen saknar det obligatoriska nyckelordsargumentet '%q'"
msgid "function missing required positional argument #%d"
msgstr "funktionen saknar det obligatoriska positionsargumentet #%d"
#: py/argcheck.c py/bc.c py/objnamedtuple.c
#: py/argcheck.c py/bc.c py/objnamedtuple.c shared-bindings/time/__init__.c
#, c-format
msgid "function takes %d positional arguments but %d were given"
msgstr "funktionen kräver %d positionsargument men %d angavs"
@ -2492,10 +2488,7 @@ msgstr "felaktig utfyllnad"
msgid "index is out of bounds"
msgstr "index är utanför gränserna"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c
#: py/obj.c
msgid "index out of range"
msgstr "index utanför intervallet"
@ -2854,9 +2847,8 @@ msgid "number of points must be at least 2"
msgstr "antal punkter måste vara minst 2"
#: py/obj.c
#, c-format
msgid "object '%s' is not a tuple or list"
msgstr "objektet '%s' är inte en tupel eller lista"
msgid "object '%q' is not a tuple or list"
msgstr ""
#: py/obj.c
msgid "object does not support item assignment"
@ -2891,9 +2883,8 @@ msgid "object not iterable"
msgstr "objektet är inte iterable"
#: py/obj.c
#, c-format
msgid "object of type '%s' has no len()"
msgstr "objekt av typen '%s' har ingen len()"
msgid "object of type '%q' has no len()"
msgstr ""
#: py/obj.c
msgid "object with buffer protocol required"
@ -2986,21 +2977,10 @@ msgstr "polygon kan endast registreras i en förälder"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
#: ports/nrf/common-hal/pulseio/PulseIn.c
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "pop from an empty PulseIn"
msgstr "pop från en tom PulseIn"
#: py/objset.c
msgid "pop from an empty set"
msgstr "pop från en tom uppsättning"
#: py/objlist.c
msgid "pop from empty list"
msgstr "pop från tom lista"
#: py/objdict.c
msgid "popitem(): dictionary is empty"
msgstr "popitem(): ordlistan är tom"
#: ports/stm/common-hal/pulseio/PulseIn.c py/objdict.c py/objlist.c py/objset.c
#: shared-bindings/ps2io/Ps2.c
msgid "pop from empty %q"
msgstr ""
#: py/objint_mpz.c
msgid "pow() 3rd argument cannot be 0"
@ -3158,13 +3138,8 @@ msgid "stream operation not supported"
msgstr "stream-åtgärd stöds inte"
#: py/objstrunicode.c
msgid "string index out of range"
msgstr "strängindex utanför intervallet"
#: py/objstrunicode.c
#, c-format
msgid "string indices must be integers, not %s"
msgstr "strängindex måste vara heltal, inte %s"
msgid "string indices must be integers, not %q"
msgstr ""
#: py/stream.c
msgid "string not supported; use bytes or bytearray"
@ -3174,10 +3149,6 @@ msgstr "sträng stöds inte; använd bytes eller bytearray"
msgid "struct: cannot index"
msgstr "struct: kan inte indexera"
#: extmod/moductypes.c
msgid "struct: index out of range"
msgstr "struct: index utanför intervallet"
#: extmod/moductypes.c
msgid "struct: no fields"
msgstr "struct: inga fält"
@ -3247,7 +3218,7 @@ msgstr "för många värden att packa upp (förväntat %d)"
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr "tupelindex utanför intervallet"
@ -3255,10 +3226,6 @@ msgstr "tupelindex utanför intervallet"
msgid "tuple/list has wrong length"
msgstr "tupel/lista har fel längd"
#: shared-bindings/_pixelbuf/PixelBuf.c
msgid "tuple/list required on RHS"
msgstr "tupel/lista krävs för RHS"
#: ports/atmel-samd/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
#: shared-bindings/busio/UART.c
msgid "tx and rx cannot both be None"
@ -3314,9 +3281,8 @@ msgid "unknown conversion specifier %c"
msgstr "okänd konverteringsspecificerare %c"
#: py/objstr.c
#, c-format
msgid "unknown format code '%c' for object of type '%s'"
msgstr "okänt format '%c' för objekt av typ '%s'"
msgid "unknown format code '%c' for object of type '%q'"
msgstr ""
#: py/compile.c
msgid "unknown type"
@ -3355,16 +3321,16 @@ msgid "unsupported format character '%c' (0x%x) at index %d"
msgstr "Formattecknet '%c' (0x%x) stöds inte vid index %d"
#: py/runtime.c
msgid "unsupported type for %q: '%s'"
msgstr "typ som inte stöds för %q: '%s'"
msgid "unsupported type for %q: '%q'"
msgstr ""
#: py/runtime.c
msgid "unsupported type for operator"
msgstr "typ stöds inte för operatören"
#: py/runtime.c
msgid "unsupported types for %q: '%s', '%s'"
msgstr "typ som inte stöds för %q: '%s', '%s'"
msgid "unsupported types for %q: '%q', '%q'"
msgstr ""
#: py/objint.c
#, c-format
@ -3443,15 +3409,129 @@ msgstr "zi måste vara av typ float"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi måste vara i formen (n_section, 2)"
#~ msgid "tuple/list required on RHS"
#~ msgstr "tupel/lista krävs för RHS"
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "Indexet %q måste vara ett heltal, inte %s"
#~ msgid "'%s' object cannot assign attribute '%q'"
#~ msgstr "Objektet '%s' kan inte tilldela attributet '%q'"
#~ msgid "'%s' object does not support '%q'"
#~ msgstr "Objektet '%s' har inte stöd för '%q'"
#~ msgid "'%s' object does not support item assignment"
#~ msgstr "Objektet '%s' stöder inte tilldelningen"
#~ msgid "'%s' object does not support item deletion"
#~ msgstr "Objektet '%s' stöder inte borttagning av objekt"
#~ msgid "'%s' object has no attribute '%q'"
#~ msgstr "Objektet '%s' har inget attribut '%q'"
#~ msgid "'%s' object is not an iterator"
#~ msgstr "Objektet '%s' är inte en iterator"
#~ msgid "'%s' object is not callable"
#~ msgstr "Objektet '%s' kan inte anropas"
#~ msgid "'%s' object is not iterable"
#~ msgstr "Objektet '%s' är inte itererable"
#~ msgid "'%s' object is not subscriptable"
#~ msgstr "Objektet '%s' är inte indexbar"
#~ msgid "Invalid I2C pin selection"
#~ msgstr "Ogiltigt val av I2C-pinne"
#~ msgid "Invalid SPI pin selection"
#~ msgstr "Ogiltigt val av SPI-pinne"
#~ msgid "Invalid UART pin selection"
#~ msgstr "Ogiltigt val av UART-pinne"
#~ msgid "Pop from an empty Ps2 buffer"
#~ msgstr "Pop från en tom Ps2-buffert"
#~ msgid "Running in safe mode! Auto-reload is off.\n"
#~ msgstr "Kör i säkert läge! Autoladdning är avstängd.\n"
#~ msgid "Running in safe mode! Not running saved code.\n"
#~ msgstr "Kör i säkert läge! Sparad kod körs inte.\n"
#~ msgid "__init__() should return None, not '%s'"
#~ msgstr "__init __ () ska returnera None, inte '%s'"
#~ msgid "can't convert %s to complex"
#~ msgstr "kan inte konvertera %s till komplex"
#~ msgid "can't convert %s to float"
#~ msgstr "kan inte konvertera %s till float"
#~ msgid "can't convert %s to int"
#~ msgstr "kan inte konvertera %s till int"
#~ msgid "can't convert NaN to int"
#~ msgstr "kan inte konvertera NaN till int"
#~ msgid "can't convert address to int"
#~ msgstr "kan inte konvertera address till int"
#~ msgid "can't convert inf to int"
#~ msgstr "kan inte konvertera inf till int"
#~ msgid "can't convert to complex"
#~ msgstr "kan inte konvertera till komplex"
#~ msgid "can't convert to float"
#~ msgstr "kan inte konvertera till float"
#~ msgid "can't convert to int"
#~ msgstr "kan inte konvertera till int"
#~ msgid "object '%s' is not a tuple or list"
#~ msgstr "objektet '%s' är inte en tupel eller lista"
#~ msgid "object of type '%s' has no len()"
#~ msgstr "objekt av typen '%s' har ingen len()"
#~ msgid "pop from an empty PulseIn"
#~ msgstr "pop från en tom PulseIn"
#~ msgid "pop from an empty set"
#~ msgstr "pop från en tom uppsättning"
#~ msgid "pop from empty list"
#~ msgstr "pop från tom lista"
#~ msgid "popitem(): dictionary is empty"
#~ msgstr "popitem(): ordlistan är tom"
#~ msgid "string index out of range"
#~ msgstr "strängindex utanför intervallet"
#~ msgid "string indices must be integers, not %s"
#~ msgstr "strängindex måste vara heltal, inte %s"
#~ msgid "struct: index out of range"
#~ msgstr "struct: index utanför intervallet"
#~ msgid "unknown format code '%c' for object of type '%s'"
#~ msgstr "okänt format '%c' för objekt av typ '%s'"
#~ msgid "unsupported type for %q: '%s'"
#~ msgstr "typ som inte stöds för %q: '%s'"
#~ msgid "unsupported types for %q: '%s', '%s'"
#~ msgstr "typ som inte stöds för %q: '%s', '%s'"
#~ msgid "'%q' object is not bytes-like"
#~ msgstr "%q-objektet är inte byte-lik"
#~ msgid "'async for' or 'async with' outside async function"
#~ msgstr "'async for' eller 'async with' utanför async-funktion"
#~ msgid "PulseOut not supported on this chip"
#~ msgstr "PulseIn stöds inte av detta chip"
#~ msgid "PulseIn not supported on this chip"
#~ msgstr "PulseIn stöds inte av detta chip"

File diff suppressed because it is too large Load Diff

View File

@ -6,7 +6,6 @@ PROG=mpy-cross.static-raspbian
BUILD=build-static-raspbian
STATIC_BUILD=1
$(shell if ! [ -d pitools ]; then echo 1>&2 "Fetching pi build tools. This may take awhile."; git clone -q https://github.com/raspberrypi/tools.git --depth=1 pitools; fi)
CROSS_COMPILE = pitools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/arm-linux-gnueabihf-
include mpy-cross.mk
$(shell [ -d pitools ] || git clone --progress --verbose https://github.com/raspberrypi/tools.git --depth=1 pitools)

View File

@ -103,7 +103,7 @@ ifeq ($(CHIP_FAMILY), same54)
PERIPHERALS_CHIP_FAMILY=sam_d5x_e5x
OPTIMIZATION_FLAGS ?= -O2
# TinyUSB defines
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_SAMD51 -DCFG_TUD_MIDI_RX_BUFSIZE=128 -DCFG_TUD_CDC_RX_BUFSIZE=256 -DCFG_TUD_MIDI_TX_BUFSIZE=128 -DCFG_TUD_CDC_TX_BUFSIZE=256 -DCFG_TUD_MSC_BUFSIZE=1024
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_SAME5X -DCFG_TUD_MIDI_RX_BUFSIZE=128 -DCFG_TUD_CDC_RX_BUFSIZE=256 -DCFG_TUD_MIDI_TX_BUFSIZE=128 -DCFG_TUD_CDC_TX_BUFSIZE=256 -DCFG_TUD_MSC_BUFSIZE=1024
endif
# option to override default optimization level, set in boards/$(BOARD)/mpconfigboard.mk

View File

@ -15,5 +15,5 @@ CIRCUITPY_BITBANGIO = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_VECTORIO = 0
CFLAGS_INLINE_LIMIT = 60
CFLAGS_INLINE_LIMIT = 50
SUPEROPT_GC = 0

View File

@ -10,4 +10,22 @@ INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
CIRCUITPY_FULL_BUILD = 0
# A number of modules are removed for RFM9x to make room for frozen libraries.
# Many I/O functions are not available.
CIRCUITPY_ANALOGIO = 0
CIRCUITPY_PULSEIO = 0
CIRCUITPY_NEOPIXEL_WRITE = 1
CIRCUITPY_ROTARYIO = 0
CIRCUITPY_RTC = 0
CIRCUITPY_SAMD = 0
CIRCUITPY_USB_MIDI = 0
CIRCUITPY_USB_HID = 0
CIRCUITPY_TOUCHIO = 0
CFLAGS_INLINE_LIMIT = 35
# Make more room.
SUPEROPT_GC = 0
# Include these Python libraries in firmware.
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_RFM9x

View File

@ -7,8 +7,8 @@ CHIP_VARIANT = SAMD51G19A
CHIP_FAMILY = samd51
QSPI_FLASH_FILESYSTEM = 1
EXTERNAL_FLASH_DEVICE_COUNT = 1
EXTERNAL_FLASH_DEVICES = "W25Q16JV_IM"
EXTERNAL_FLASH_DEVICE_COUNT = 2
EXTERNAL_FLASH_DEVICES = "W25Q16JV_IM, W25Q16JV_IQ"
LONGINT_IMPL = MPZ
# No I2S on SAMD51G

View File

@ -96,7 +96,15 @@ void pulseout_reset() {
}
void common_hal_pulseio_pulseout_construct(pulseio_pulseout_obj_t* self,
const pulseio_pwmout_obj_t* carrier) {
const pulseio_pwmout_obj_t* carrier,
const mcu_pin_obj_t* pin,
uint32_t frequency,
uint16_t duty_cycle) {
if (!carrier || pin || frequency) {
mp_raise_NotImplementedError(translate("Port does not accept pins or frequency. \
Construct and pass a PWMOut Carrier instead"));
}
if (refcount == 0) {
// Find a spare timer.
Tc *tc = NULL;

View File

@ -47,6 +47,16 @@ USB_MSC_EP_NUM_OUT = 1
CIRCUITPY_ULAB = 0
ifeq ($(TRANSLATION), ja)
RELEASE_NEEDS_CLEAN_BUILD = 1
CIRCUITPY_TERMINALIO = 0
endif
ifeq ($(TRANSLATION), ko)
RELEASE_NEEDS_CLEAN_BUILD = 1
CIRCUITPY_TERMINALIO = 0
endif
endif # samd21
# Put samd51-only choices here.
@ -81,3 +91,5 @@ endif # samd51
INTERNAL_LIBM = 1
USB_SERIAL_NUMBER_LENGTH = 32
USB_NUM_EP = 8

View File

@ -58,8 +58,16 @@ static bool pulseout_timer_handler(unsigned int *next_interval_us, void *arg)
return true;
}
void common_hal_pulseio_pulseout_construct(pulseio_pulseout_obj_t *self,
const pulseio_pwmout_obj_t *carrier) {
void common_hal_pulseio_pulseout_construct(pulseio_pulseout_obj_t* self,
const pulseio_pwmout_obj_t* carrier,
const mcu_pin_obj_t* pin,
uint32_t frequency,
uint16_t duty_cycle) {
if (!carrier || pin || frequency) {
mp_raise_NotImplementedError(translate("Port does not accept pins or frequency. \
Construct and pass a PWMOut Carrier instead"));
}
if (pulse_fd < 0) {
pulse_fd = open("/dev/timer0", O_RDONLY);
}

View File

@ -36,6 +36,8 @@
#include "boards/board.h"
#include "supervisor/port.h"
#include "supervisor/background_callback.h"
#include "supervisor/usb.h"
#include "supervisor/shared/tick.h"
#include "common-hal/microcontroller/Pin.h"
@ -114,6 +116,11 @@ uint32_t port_get_saved_word(void) {
return _ebss;
}
static background_callback_t callback;
static void usb_background_do(void* unused) {
usb_background();
}
volatile bool _tick_enabled;
void board_timerhook(void)
{
@ -121,6 +128,8 @@ void board_timerhook(void)
if (_tick_enabled) {
supervisor_tick();
}
background_callback_add(&callback, usb_background_do, NULL);
}
uint64_t port_get_raw_ticks(uint8_t* subticks) {

View File

@ -35,10 +35,17 @@
#include "shared-module/displayio/__init__.h"
#endif
#if CIRCUITPY_PULSEIO
#include "common-hal/pulseio/PulseIn.h"
#endif
void port_background_task(void) {
// Zero delay in case FreeRTOS wants to switch to something else.
vTaskDelay(0);
#if CIRCUITPY_PULSEIO
pulsein_background();
#endif
}
void port_start_background_task(void) {}

View File

@ -42,5 +42,7 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_IO44), MP_ROM_PTR(&pin_GPIO44) },
{ MP_ROM_QSTR(MP_QSTR_IO45), MP_ROM_PTR(&pin_GPIO45) },
{ MP_ROM_QSTR(MP_QSTR_IO46), MP_ROM_PTR(&pin_GPIO46) },
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_GPIO18) },
};
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

View File

@ -93,6 +93,9 @@ void common_hal_neopixel_write (const digitalio_digitalinout_obj_t* digitalinout
// Reserve channel
uint8_t number = digitalinout->pin->number;
rmt_channel_t channel = esp32s2_peripherals_find_and_reserve_rmt();
if (channel == RMT_CHANNEL_MAX) {
mp_raise_RuntimeError(translate("All timers in use"));
}
// Configure Channel
rmt_config_t config = RMT_DEFAULT_CONFIG_TX(number, channel);

View File

@ -25,51 +25,184 @@
*/
#include "common-hal/pulseio/PulseIn.h"
#include "shared-bindings/microcontroller/__init__.h"
#include "py/runtime.h"
// STATIC void pulsein_handler(uint8_t num) {
// }
STATIC uint8_t refcount = 0;
STATIC pulseio_pulsein_obj_t * handles[RMT_CHANNEL_MAX];
// Requires rmt.c void esp32s2_peripherals_reset_all(void) to reset
STATIC void update_internal_buffer(pulseio_pulsein_obj_t* self) {
uint32_t length = 0;
rmt_item32_t *items = (rmt_item32_t *) xRingbufferReceive(self->buf_handle, &length, 0);
if (items) {
length /= 4;
for (size_t i=0; i < length; i++) {
uint16_t pos = (self->start + self->len) % self->maxlen;
self->buffer[pos] = items[i].duration0 * 3;
// Check if second item exists before incrementing
if (items[i].duration1) {
self->buffer[pos+1] = items[i].duration1 * 3;
if (self->len < (self->maxlen - 1)) {
self->len += 2;
} else {
self->start += 2;
}
} else {
if (self->len < self->maxlen) {
self->len++;
} else {
self->start++;
}
}
}
vRingbufferReturnItem(self->buf_handle, (void *) items);
}
}
// We can't access the RMT interrupt, so we need a global service to prevent
// the ringbuffer from overflowing and crashing the peripheral
void pulsein_background(void) {
for (size_t i = 0; i < RMT_CHANNEL_MAX; i++) {
if (handles[i]) {
update_internal_buffer(handles[i]);
UBaseType_t items_waiting;
vRingbufferGetInfo(handles[i]->buf_handle, NULL, NULL, NULL, NULL, &items_waiting);
}
}
}
void pulsein_reset(void) {
for (size_t i = 0; i < RMT_CHANNEL_MAX; i++) {
handles[i] = NULL;
}
supervisor_disable_tick();
refcount = 0;
}
void common_hal_pulseio_pulsein_construct(pulseio_pulsein_obj_t* self, const mcu_pin_obj_t* pin,
uint16_t maxlen, bool idle_state) {
mp_raise_NotImplementedError(translate("PulseIn not supported on this chip"));
self->buffer = (uint16_t *) m_malloc(maxlen * sizeof(uint16_t), false);
if (self->buffer == NULL) {
mp_raise_msg_varg(&mp_type_MemoryError, translate("Failed to allocate RX buffer of %d bytes"), maxlen * sizeof(uint16_t));
}
self->pin = pin;
self->maxlen = maxlen;
self->idle_state = idle_state;
self->start = 0;
self->len = 0;
self->paused = false;
// Set pull settings
gpio_pullup_dis(pin->number);
gpio_pulldown_dis(pin->number);
if (idle_state) {
gpio_pullup_en(pin->number);
} else {
gpio_pulldown_en(pin->number);
}
// Find a free RMT Channel and configure it
rmt_channel_t channel = esp32s2_peripherals_find_and_reserve_rmt();
if (channel == RMT_CHANNEL_MAX) {
mp_raise_RuntimeError(translate("All timers in use"));
}
rmt_config_t config = RMT_DEFAULT_CONFIG_RX(pin->number, channel);
config.rx_config.filter_en = true;
config.rx_config.idle_threshold = 30000; // 30*3=90ms idle required to register a sequence
config.clk_div = 240; // All measurements are divided by 3 to accomodate 65ms pulses
rmt_config(&config);
rmt_driver_install(channel, 1000, 0); //TODO: pick a more specific buffer size?
// Store this object and the buffer handle for background updates
self->channel = channel;
handles[channel] = self;
rmt_get_ringbuf_handle(channel, &(self->buf_handle));
// start RMT RX, and enable ticks so the core doesn't turn off.
rmt_rx_start(channel, true);
supervisor_enable_tick();
refcount++;
}
bool common_hal_pulseio_pulsein_deinited(pulseio_pulsein_obj_t* self) {
return false;
return handles[self->channel] ? false : true;
}
void common_hal_pulseio_pulsein_deinit(pulseio_pulsein_obj_t* self) {
handles[self->channel] = NULL;
esp32s2_peripherals_free_rmt(self->channel);
reset_pin_number(self->pin->number);
refcount--;
if (refcount == 0) {
supervisor_disable_tick();
}
}
void common_hal_pulseio_pulsein_pause(pulseio_pulsein_obj_t* self) {
self->paused = true;
rmt_rx_stop(self->channel);
}
void common_hal_pulseio_pulsein_resume(pulseio_pulsein_obj_t* self, uint16_t trigger_duration) {
// Make sure we're paused.
if ( !self->paused ) {
common_hal_pulseio_pulsein_pause(self);
}
if (trigger_duration > 0) {
gpio_set_direction(self->pin->number, GPIO_MODE_DEF_OUTPUT);
gpio_set_level(self->pin->number, !self->idle_state);
common_hal_mcu_delay_us((uint32_t)trigger_duration);
gpio_set_level(self->pin->number, self->idle_state);
gpio_set_direction(self->pin->number, GPIO_MODE_INPUT); // should revert to pull direction
}
self->paused = false;
rmt_rx_start(self->channel, false);
}
void common_hal_pulseio_pulsein_clear(pulseio_pulsein_obj_t* self) {
// Buffer only updates in BG tasks or fetches, so no extra protection is needed
self->start = 0;
self->len = 0;
}
uint16_t common_hal_pulseio_pulsein_get_item(pulseio_pulsein_obj_t* self, int16_t index) {
return false;
update_internal_buffer(self);
if (index < 0) {
index += self->len;
}
if (index < 0 || index >= self->len) {
mp_raise_IndexError(translate("index out of range"));
}
uint16_t value = self->buffer[(self->start + index) % self->maxlen];
return value;
}
uint16_t common_hal_pulseio_pulsein_popleft(pulseio_pulsein_obj_t* self) {
return false;
update_internal_buffer(self);
if (self->len == 0) {
mp_raise_IndexError(translate("pop from an empty PulseIn"));
}
uint16_t value = self->buffer[self->start];
self->start = (self->start + 1) % self->maxlen;
self->len--;
return value;
}
uint16_t common_hal_pulseio_pulsein_get_maxlen(pulseio_pulsein_obj_t* self) {
return false;
return self->maxlen;
}
bool common_hal_pulseio_pulsein_get_paused(pulseio_pulsein_obj_t* self) {
return false;
return self->paused;
}
uint16_t common_hal_pulseio_pulsein_get_len(pulseio_pulsein_obj_t* self) {
return false;
return self->len;
}

View File

@ -30,24 +30,27 @@
#include "common-hal/microcontroller/Pin.h"
#include "py/obj.h"
#include "driver/rmt.h"
#include "rmt.h"
typedef struct {
mp_obj_base_t base;
const mcu_pin_obj_t* pin;
rmt_channel_t channel;
bool idle_state;
bool paused;
volatile bool first_edge;
RingbufHandle_t buf_handle;
uint16_t* buffer;
uint16_t maxlen;
volatile uint16_t start;
volatile uint16_t len;
volatile uint32_t last_overflow;
volatile uint16_t last_count;
} pulseio_pulsein_obj_t;
void pulsein_reset(void);
void pulsein_background(void);
#endif // MICROPY_INCLUDED_ESP32S2_COMMON_HAL_PULSEIO_PULSEIN_H

View File

@ -29,32 +29,63 @@
#include "shared-bindings/pulseio/PWMOut.h"
#include "py/runtime.h"
// STATIC void turn_on(pulseio_pulseout_obj_t *pulseout) {
// }
// STATIC void turn_off(pulseio_pulseout_obj_t *pulseout) {
// }
// STATIC void start_timer(void) {
// }
// STATIC void pulseout_event_handler(void) {
// }
void pulseout_reset() {
}
// Requires rmt.c void esp32s2_peripherals_reset_all(void) to reset
void common_hal_pulseio_pulseout_construct(pulseio_pulseout_obj_t* self,
const pulseio_pwmout_obj_t* carrier) {
mp_raise_NotImplementedError(translate("PulseOut not supported on this chip"));
const pulseio_pwmout_obj_t* carrier,
const mcu_pin_obj_t* pin,
uint32_t frequency,
uint16_t duty_cycle) {
if (carrier || !pin || !frequency) {
mp_raise_NotImplementedError(translate("Port does not accept PWM carrier. \
Pass a pin, frequency and duty cycle instead"));
}
rmt_channel_t channel = esp32s2_peripherals_find_and_reserve_rmt();
if (channel == RMT_CHANNEL_MAX) {
mp_raise_RuntimeError(translate("All timers in use"));
}
// Configure Channel
rmt_config_t config = RMT_DEFAULT_CONFIG_TX(pin->number, channel);
config.tx_config.carrier_en = true;
config.tx_config.carrier_duty_percent = (duty_cycle * 100) / (1<<16);
config.tx_config.carrier_freq_hz = frequency;
config.clk_div = 80;
rmt_config(&config);
rmt_driver_install(channel, 0, 0);
self->channel = channel;
}
bool common_hal_pulseio_pulseout_deinited(pulseio_pulseout_obj_t* self) {
return false;
return (self->channel == RMT_CHANNEL_MAX);
}
void common_hal_pulseio_pulseout_deinit(pulseio_pulseout_obj_t* self) {
esp32s2_peripherals_free_rmt(self->channel);
self->channel = RMT_CHANNEL_MAX;
}
void common_hal_pulseio_pulseout_send(pulseio_pulseout_obj_t* self, uint16_t* pulses, uint16_t length) {
rmt_item32_t items[length];
// Circuitpython allows 16 bit pulse values, while ESP32 only allows 15 bits
// Thus, we use entire items for one pulse, rather than switching inside each item
for (size_t i = 0; i < length; i++) {
// Setting the RMT duration to 0 has undefined behavior, so avoid that pre-emptively.
if (pulses[i] == 0) {
pulses[i] = 1;
}
uint32_t level = (i % 2) ? 0 : 1;
const rmt_item32_t item = {{{ (pulses[i] & 0x8000 ? 0x7FFF : 1), level, (pulses[i] & 0x7FFF), level}}};
items[i] = item;
}
rmt_write_items(self->channel, items, length, true);
while (rmt_wait_tx_done(self->channel, 0) != ESP_OK) {
RUN_BACKGROUND_TASKS;
}
}

View File

@ -29,14 +29,14 @@
#include "common-hal/microcontroller/Pin.h"
#include "common-hal/pulseio/PWMOut.h"
#include "driver/rmt.h"
#include "rmt.h"
#include "py/obj.h"
typedef struct {
mp_obj_base_t base;
pulseio_pwmout_obj_t *pwmout;
rmt_channel_t channel;
} pulseio_pulseout_obj_t;
void pulseout_reset(void);
#endif // MICROPY_INCLUDED_ESP32S2_COMMON_HAL_PULSEIO_PULSEOUT_H

View File

@ -28,19 +28,18 @@
#ifndef ESP32S2_MPCONFIGPORT_H__
#define ESP32S2_MPCONFIGPORT_H__
#define CIRCUITPY_INTERNAL_NVM_SIZE (0)
#define MICROPY_NLR_THUMB (0)
#define CIRCUITPY_INTERNAL_NVM_SIZE (0)
#define MICROPY_NLR_THUMB (0)
#define MICROPY_PY_UJSON (0)
#define MICROPY_USE_INTERNAL_PRINTF (0)
#define MICROPY_PY_UJSON (0)
#define MICROPY_USE_INTERNAL_PRINTF (0)
#include "py/circuitpy_mpconfig.h"
#define MICROPY_PORT_ROOT_POINTERS \
CIRCUITPY_COMMON_ROOT_POINTERS
#define MICROPY_NLR_SETJMP (1)
#define CIRCUITPY_DEFAULT_STACK_SIZE 0x6000
#define MICROPY_NLR_SETJMP (1)
#define CIRCUITPY_DEFAULT_STACK_SIZE (0x6000)
#endif // __INCLUDED_ESP32S2_MPCONFIGPORT_H

View File

@ -29,6 +29,14 @@
bool rmt_reserved_channels[RMT_CHANNEL_MAX];
void esp32s2_peripherals_rmt_reset(void) {
for (size_t i = 0; i < RMT_CHANNEL_MAX; i++) {
if (rmt_reserved_channels[i]) {
esp32s2_peripherals_free_rmt(i);
}
}
}
rmt_channel_t esp32s2_peripherals_find_and_reserve_rmt(void) {
for (size_t i = 0; i < RMT_CHANNEL_MAX; i++) {
if (!rmt_reserved_channels[i]) {
@ -36,8 +44,8 @@ rmt_channel_t esp32s2_peripherals_find_and_reserve_rmt(void) {
return i;
}
}
mp_raise_RuntimeError(translate("All timers in use"));
return false;
// Returning the max indicates a reservation failure.
return RMT_CHANNEL_MAX;
}
void esp32s2_peripherals_free_rmt(rmt_channel_t chan) {

View File

@ -31,6 +31,7 @@
#include "driver/rmt.h"
#include <stdint.h>
void esp32s2_peripherals_rmt_reset(void);
rmt_channel_t esp32s2_peripherals_find_and_reserve_rmt(void);
void esp32s2_peripherals_free_rmt(rmt_channel_t chan);

View File

@ -39,9 +39,12 @@
#include "common-hal/busio/SPI.h"
#include "common-hal/busio/UART.h"
#include "common-hal/pulseio/PWMOut.h"
#include "common-hal/pulseio/PulseIn.h"
#include "supervisor/memory.h"
#include "supervisor/shared/tick.h"
#include "rmt.h"
STATIC esp_timer_handle_t _tick_timer;
void tick_timer_cb(void* arg) {
@ -66,7 +69,9 @@ void reset_port(void) {
vTaskDelay(4);
#if CIRCUITPY_PULSEIO
esp32s2_peripherals_rmt_reset();
pwmout_reset();
pulsein_reset();
#endif
#if CIRCUITPY_BUSIO
i2c_reset();

View File

@ -94,7 +94,10 @@ void pulseout_reset() {
}
void common_hal_pulseio_pulseout_construct(pulseio_pulseout_obj_t* self,
const pulseio_pwmout_obj_t* carrier) {
const pulseio_pwmout_obj_t* carrier,
const mcu_pin_obj_t* pin,
uint32_t frequency,
uint16_t duty_cycle) {
// if (refcount == 0) {
// // Find a spare timer.
// Tc *tc = NULL;

View File

@ -6,10 +6,3 @@ USB_MANUFACTURER = "Arduino"
MCU_CHIP = nrf52840
INTERNAL_FLASH_FILESYSTEM = 1
# Allocate two, not just one I2C peripheral, so that we have both
# on-board and off-board I2C available.
# When SPIM3 becomes available we'll be able to have two I2C and two SPI peripherals.
# We use a CFLAGS define here because there are include order issues
# if we try to include "mpconfigport.h" into nrfx_config.h .
CFLAGS += -DCIRCUITPY_NRF_NUM_I2C=2

View File

@ -8,9 +8,3 @@ MCU_CHIP = nrf52840
QSPI_FLASH_FILESYSTEM = 1
EXTERNAL_FLASH_DEVICE_COUNT = 1
EXTERNAL_FLASH_DEVICES = "GD25Q16C"
# Allocate two, not just one I2C peripheral for CPB, so that we have both
# on-board and off-board I2C available.
# We use a CFLAGS define here because there are include order issues
# if we try to include "mpconfigport.h" into nrfx_config.h .
CFLAGS += -DCIRCUITPY_NRF_NUM_I2C=2

View File

@ -18,13 +18,16 @@ MEMORY
FLASH_BOOTLOADER_SETTINGS (r) : ORIGIN = ${BOOTLOADER_SETTINGS_START_ADDR}, LENGTH = ${BOOTLOADER_SETTINGS_SIZE}
/* 0x2000000 - RAM:ORIGIN is reserved for Softdevice */
/* SoftDevice 6.1.0 with 5 connections and various increases takes just under 64kiB.
/* To measure the minimum required amount of memory for given configuration, set this number
high enough to work and then check the mutation of the value done by sd_ble_enable. */
SPIM3_RAM (rw) : ORIGIN = 0x20000000 + ${SOFTDEVICE_RAM_SIZE}, LENGTH = ${SPIM3_BUFFER_SIZE}
RAM (xrw) : ORIGIN = 0x20000000 + ${SOFTDEVICE_RAM_SIZE} + ${SPIM3_BUFFER_SIZE}, LENGTH = ${RAM_SIZE} - ${SOFTDEVICE_RAM_SIZE} -${SPIM3_BUFFER_SIZE}
/* SoftDevice RAM must start at the beginning of RAM: 0x2000000 (RAM_START_ADDR).
On nRF52840, the first 64kB of RAM is composed of 8 8kB RAM blocks. Above those is
RAM block 8, which is 192kB.
If SPIM3_BUFFER_RAM_SIZE is 8kB, as opposed to zero, it must be in the first 64kB of RAM.
So the amount of RAM reserved for the SoftDevice must be no more than 56kB.
*/
RAM (xrw) : ORIGIN = ${RAM_START_ADDR}, LENGTH = ${RAM_SIZE}
SD_RAM (rw) : ORIGIN = ${SOFTDEVICE_RAM_START_ADDR}, LENGTH = ${SOFTDEVICE_RAM_SIZE}
SPIM3_RAM (rw) : ORIGIN = ${SPIM3_BUFFER_RAM_START_ADDR}, LENGTH = ${SPIM3_BUFFER_RAM_SIZE}
APP_RAM (xrw) : ORIGIN = ${APP_RAM_START_ADDR}, LENGTH = ${APP_RAM_SIZE}
}
/* produce a link error if there is not this amount of RAM available */
@ -32,16 +35,16 @@ _minimum_heap_size = 0;
/* top end of the stack */
/*_stack_end = ORIGIN(RAM) + LENGTH(RAM);*/
_estack = ORIGIN(RAM) + LENGTH(RAM);
/*_stack_end = ORIGIN(APP_RAM) + LENGTH(APP_RAM);*/
_estack = ORIGIN(APP_RAM) + LENGTH(APP_RAM);
/* RAM extents for the garbage collector */
_ram_end = ORIGIN(RAM) + LENGTH(RAM);
_ram_end = ORIGIN(APP_RAM) + LENGTH(APP_RAM);
_heap_end = 0x20020000; /* tunable */
/* nrf52840 SPIM3 needs its own area to work around hardware problems. Nothing else may use this space. */
_spim3_ram = ORIGIN(SPIM3_RAM);
_spim3_ram_end = ORIGIN(SPIM3_RAM) + LENGTH(RAM);
_spim3_ram_end = ORIGIN(SPIM3_RAM) + LENGTH(SPIM3_RAM);
/* define output sections */
SECTIONS
@ -87,7 +90,7 @@ SECTIONS
. = ALIGN(4);
_edata = .; /* define a global symbol at data end; used by startup code in order to initialise the .data section in RAM */
} >RAM
} >APP_RAM
/* Zero-initialized data section */
.bss :
@ -100,7 +103,7 @@ SECTIONS
. = ALIGN(4);
_ebss = .; /* define a global symbol at bss end; used by startup code and GC */
} >RAM
} >APP_RAM
/* Uninitialized data section
Data placed into this section will remain unchanged across reboots. */
@ -113,7 +116,7 @@ SECTIONS
. = ALIGN(4);
_euninitialized = .; /* define a global symbol at uninitialized end; currently unused */
} >RAM
} >APP_RAM
/* this is to define the start of the heap, and make sure we have a minimum size */
.heap :
@ -123,7 +126,7 @@ SECTIONS
PROVIDE ( _end = . );
_heap_start = .; /* define a global symbol at heap start */
. = . + _minimum_heap_size;
} >RAM
} >APP_RAM
/* this just checks there is enough RAM for the stack */
.stack :
@ -131,7 +134,7 @@ SECTIONS
. = ALIGN(4);
. = . + ${CIRCUITPY_DEFAULT_STACK_SIZE};
. = ALIGN(4);
} >RAM
} >APP_RAM
/* Remove exception unwinding information, since Circuit Python
does not support this GCC feature. */

View File

@ -8,10 +8,3 @@ MCU_CHIP = nrf52840
QSPI_FLASH_FILESYSTEM = 1
EXTERNAL_FLASH_DEVICE_COUNT = 1
EXTERNAL_FLASH_DEVICES = "W25Q16JV_IQ"
# Allocate two, not just one I2C peripheral for Bluefi, so that we have both
# on-board and off-board I2C available.
# When SPIM3 becomes available we'll be able to have two I2C and two SPI peripherals.
# We use a CFLAGS define here because there are include order issues
# if we try to include "mpconfigport.h" into nrfx_config.h .
CFLAGS += -DCIRCUITPY_NRF_NUM_I2C=2

View File

@ -46,3 +46,5 @@
#define BLEIO_PERIPH_ROLE_COUNT 2
#define BLEIO_TOTAL_CONNECTION_COUNT 2
#define BLEIO_ATTR_TAB_SIZE (BLE_GATTS_ATTR_TAB_SIZE_DEFAULT * 2)
#define SOFTDEVICE_RAM_SIZE (32*1024)

View File

@ -27,9 +27,5 @@ CIRCUITPY_ULAB = 0
SUPEROPT_GC = 0
# These defines must be overridden before mpconfigboard.h is included, which is
# why they are passed on the command line.
CFLAGS += -DSPIM3_BUFFER_SIZE=0 -DSOFTDEVICE_RAM_SIZE='(32*1024)'
# Override optimization to keep binary small
OPTIMIZATION_FLAGS = -Os

View File

@ -45,6 +45,9 @@
#define BOOTLOADER_SIZE (0x4000) // 12 kiB
#define CIRCUITPY_BLE_CONFIG_SIZE (12*1024)
#define DEFAULT_I2C_BUS_SCL (&pin_P0_08)
#define DEFAULT_I2C_BUS_SDA (&pin_P1_09)
// Reduce nRF SoftRadio memory usage
#define BLEIO_VS_UUID_COUNT 10
#define BLEIO_HVN_TX_QUEUE_SIZE 2
@ -52,3 +55,5 @@
#define BLEIO_PERIPH_ROLE_COUNT 2
#define BLEIO_TOTAL_CONNECTION_COUNT 2
#define BLEIO_ATTR_TAB_SIZE (BLE_GATTS_ATTR_TAB_SIZE_DEFAULT * 2)
#define SOFTDEVICE_RAM_SIZE (32*1024)

View File

@ -29,9 +29,5 @@ CIRCUITPY_WATCHDOG = 1
# Enable micropython.native
#CIRCUITPY_ENABLE_MPY_NATIVE = 1
# These defines must be overridden before mpconfigboard.h is included, which is
# why they are passed on the command line.
CFLAGS += -DSPIM3_BUFFER_SIZE=0 -DSOFTDEVICE_RAM_SIZE='(32*1024)' -DNRFX_SPIM3_ENABLED=0
# Override optimization to keep binary small
OPTIMIZATION_FLAGS = -Os

View File

@ -9,19 +9,15 @@ STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR_NFC1), MP_ROM_PTR(&pin_P0_09) },
{ MP_ROM_QSTR(MP_QSTR_NFC2), MP_ROM_PTR(&pin_P0_10) },
{ MP_ROM_QSTR(MP_QSTR_I2S_LRCK), MP_ROM_PTR(&pin_P0_08) },
{ MP_ROM_QSTR(MP_QSTR_I2S_SDIN), MP_ROM_PTR(&pin_P1_09) },
{ MP_ROM_QSTR(MP_QSTR_I2S_SCK), MP_ROM_PTR(&pin_P0_12) },
{ MP_ROM_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_P0_06) },
{ MP_ROM_QSTR(MP_QSTR_CHG), MP_ROM_PTR(&pin_P0_04) },
{ MP_ROM_QSTR(MP_QSTR_PWM), MP_ROM_PTR(&pin_P0_02) },
{ MP_ROM_QSTR(MP_QSTR_PWM_N), MP_ROM_PTR(&pin_P0_19) },
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_P0_08) },
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_P1_09) },
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
};
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);

View File

@ -61,7 +61,7 @@
#endif
#ifndef BLEIO_HVN_TX_QUEUE_SIZE
#define BLEIO_HVN_TX_QUEUE_SIZE 9
#define BLEIO_HVN_TX_QUEUE_SIZE 5
#endif
#ifndef BLEIO_CENTRAL_ROLE_COUNT
@ -120,11 +120,11 @@ STATIC uint32_t ble_stack_enable(void) {
// Start with no event handlers, etc.
ble_drv_reset();
// Set everything up to have one persistent code editing connection and one user managed
// connection. In the future we could move .data and .bss to the other side of the stack and
// In the future we might move .data and .bss to the other side of the stack and
// dynamically adjust for different memory requirements of the SD based on boot.py
// configuration.
uint32_t app_ram_start = (uint32_t) &_ram_start;
// configuration. But we still need to keep the SPIM3 buffer (if needed) in the first 64kB of RAM.
uint32_t sd_ram_end = SOFTDEVICE_RAM_START_ADDR + SOFTDEVICE_RAM_SIZE;
ble_cfg_t ble_conf;
ble_conf.conn_cfg.conn_cfg_tag = BLE_CONN_CFG_TAG_CUSTOM;
@ -135,7 +135,7 @@ STATIC uint32_t ble_stack_enable(void) {
// Event length here can influence throughput so perhaps make multiple connection profiles
// available.
ble_conf.conn_cfg.params.gap_conn_cfg.event_length = BLE_GAP_EVENT_LENGTH_DEFAULT;
err_code = sd_ble_cfg_set(BLE_CONN_CFG_GAP, &ble_conf, app_ram_start);
err_code = sd_ble_cfg_set(BLE_CONN_CFG_GAP, &ble_conf, sd_ram_end);
if (err_code != NRF_SUCCESS) {
return err_code;
}
@ -147,7 +147,7 @@ STATIC uint32_t ble_stack_enable(void) {
ble_conf.gap_cfg.role_count_cfg.periph_role_count = BLEIO_PERIPH_ROLE_COUNT;
// central_role_count costs 648 bytes for 1 to 2, then ~1250 for each further increment.
ble_conf.gap_cfg.role_count_cfg.central_role_count = BLEIO_CENTRAL_ROLE_COUNT;
err_code = sd_ble_cfg_set(BLE_GAP_CFG_ROLE_COUNT, &ble_conf, app_ram_start);
err_code = sd_ble_cfg_set(BLE_GAP_CFG_ROLE_COUNT, &ble_conf, sd_ram_end);
if (err_code != NRF_SUCCESS) {
return err_code;
}
@ -158,7 +158,7 @@ STATIC uint32_t ble_stack_enable(void) {
// DevZone recommends not setting this directly, but instead changing gap_conn_cfg.event_length.
// However, we are setting connection extension, so this seems to make sense.
ble_conf.conn_cfg.params.gatts_conn_cfg.hvn_tx_queue_size = BLEIO_HVN_TX_QUEUE_SIZE;
err_code = sd_ble_cfg_set(BLE_CONN_CFG_GATTS, &ble_conf, app_ram_start);
err_code = sd_ble_cfg_set(BLE_CONN_CFG_GATTS, &ble_conf, sd_ram_end);
if (err_code != NRF_SUCCESS) {
return err_code;
}
@ -167,7 +167,7 @@ STATIC uint32_t ble_stack_enable(void) {
memset(&ble_conf, 0, sizeof(ble_conf));
ble_conf.conn_cfg.conn_cfg_tag = BLE_CONN_CFG_TAG_CUSTOM;
ble_conf.conn_cfg.params.gatt_conn_cfg.att_mtu = BLE_GATTS_VAR_ATTR_LEN_MAX;
err_code = sd_ble_cfg_set(BLE_CONN_CFG_GATT, &ble_conf, app_ram_start);
err_code = sd_ble_cfg_set(BLE_CONN_CFG_GATT, &ble_conf, sd_ram_end);
if (err_code != NRF_SUCCESS) {
return err_code;
}
@ -177,7 +177,7 @@ STATIC uint32_t ble_stack_enable(void) {
memset(&ble_conf, 0, sizeof(ble_conf));
// Each increment to the BLE_GATTS_ATTR_TAB_SIZE_DEFAULT multiplier costs 1408 bytes.
ble_conf.gatts_cfg.attr_tab_size.attr_tab_size = BLEIO_ATTR_TAB_SIZE;
err_code = sd_ble_cfg_set(BLE_GATTS_CFG_ATTR_TAB_SIZE, &ble_conf, app_ram_start);
err_code = sd_ble_cfg_set(BLE_GATTS_CFG_ATTR_TAB_SIZE, &ble_conf, sd_ram_end);
if (err_code != NRF_SUCCESS) {
return err_code;
}
@ -187,13 +187,15 @@ STATIC uint32_t ble_stack_enable(void) {
memset(&ble_conf, 0, sizeof(ble_conf));
// Each additional vs_uuid_count costs 16 bytes.
ble_conf.common_cfg.vs_uuid_cfg.vs_uuid_count = BLEIO_VS_UUID_COUNT; // Defaults to 10.
err_code = sd_ble_cfg_set(BLE_COMMON_CFG_VS_UUID, &ble_conf, app_ram_start);
err_code = sd_ble_cfg_set(BLE_COMMON_CFG_VS_UUID, &ble_conf, sd_ram_end);
if (err_code != NRF_SUCCESS) {
return err_code;
}
// This sets app_ram_start to the minimum value needed for the settings set above.
err_code = sd_ble_enable(&app_ram_start);
// This sets sd_ram_end to the minimum value needed for the settings set above.
// You can set a breakpoint just after this call and examine sd_ram_end to see
// how much RAM the SD needs with the configuration above.
err_code = sd_ble_enable(&sd_ram_end);
if (err_code != NRF_SUCCESS) {
return err_code;
}
@ -483,8 +485,8 @@ mp_obj_t common_hal_bleio_adapter_start_scan(bleio_adapter_obj_t *self, uint8_t*
err_code = sd_ble_gap_scan_start(&scan_params, sd_data);
if (err_code != NRF_SUCCESS) {
self->scan_results = NULL;
ble_drv_remove_event_handler(scan_on_ble_evt, self->scan_results);
self->scan_results = NULL;
check_nrf_error(err_code);
}

View File

@ -57,7 +57,7 @@ STATIC spim_peripheral_t spim_peripherals[] = {
// Allocate SPIM3 first.
{ .spim = NRFX_SPIM_INSTANCE(3),
.max_frequency = 32000000,
.max_xfer_size = MIN(SPIM3_BUFFER_SIZE, (1UL << SPIM3_EASYDMA_MAXCNT_SIZE) - 1)
.max_xfer_size = MIN(SPIM3_BUFFER_RAM_SIZE, (1UL << SPIM3_EASYDMA_MAXCNT_SIZE) - 1)
},
#endif
#if NRFX_CHECK(NRFX_SPIM2_ENABLED)
@ -87,8 +87,7 @@ STATIC bool never_reset[MP_ARRAY_SIZE(spim_peripherals)];
// Separate RAM area for SPIM3 transmit buffer to avoid SPIM3 hardware errata.
// https://infocenter.nordicsemi.com/index.jsp?topic=%2Ferrata_nRF52840_Rev2%2FERR%2FnRF52840%2FRev2%2Flatest%2Fanomaly_840_198.html
extern uint32_t _spim3_ram;
STATIC uint8_t *spim3_transmit_buffer = (uint8_t *) &_spim3_ram;
STATIC uint8_t *spim3_transmit_buffer = (uint8_t *) SPIM3_BUFFER_RAM_START_ADDR;
void spi_reset(void) {
for (size_t i = 0 ; i < MP_ARRAY_SIZE(spim_peripherals); i++) {

View File

@ -100,7 +100,15 @@ void pulseout_reset() {
}
void common_hal_pulseio_pulseout_construct(pulseio_pulseout_obj_t* self,
const pulseio_pwmout_obj_t* carrier) {
const pulseio_pwmout_obj_t* carrier,
const mcu_pin_obj_t* pin,
uint32_t frequency,
uint16_t duty_cycle) {
if (!carrier || pin || frequency) {
mp_raise_NotImplementedError(translate("Port does not accept pins or frequency. \
Construct and pass a PWMOut Carrier instead"));
}
if (refcount == 0) {
timer = nrf_peripherals_allocate_timer_or_throw();
}

View File

@ -10,6 +10,7 @@
// START_LD_DEFINES
/*FLASH_SIZE=*/ FLASH_SIZE;
/*RAM_START_ADDR=*/ RAM_START_ADDR;
/*RAM_SIZE=*/ RAM_SIZE;
/*MBR_START_ADDR=*/ MBR_START_ADDR;
@ -41,5 +42,11 @@
/*BOOTLOADER_SETTINGS_START_ADDR=*/ BOOTLOADER_SETTINGS_START_ADDR;
/*BOOTLOADER_SETTINGS_SIZE=*/ BOOTLOADER_SETTINGS_SIZE;
/*SOFTDEVICE_RAM_START_ADDR=*/ SOFTDEVICE_RAM_START_ADDR;
/*SOFTDEVICE_RAM_SIZE=*/ SOFTDEVICE_RAM_SIZE;
/*SPIM3_BUFFER_SIZE=*/ SPIM3_BUFFER_SIZE;
/*SPIM3_BUFFER_RAM_START_ADDR=*/ SPIM3_BUFFER_RAM_START_ADDR;
/*SPIM3_BUFFER_RAM_SIZE=*/ SPIM3_BUFFER_RAM_SIZE;
/*APP_RAM_START_ADDR=*/ APP_RAM_START_ADDR;
/*APP_RAM_SIZE=*/ APP_RAM_SIZE;

View File

@ -34,32 +34,6 @@
#include "nrf_sdm.h" // for SD_FLASH_SIZE
#include "peripherals/nrf/nvm.h" // for FLASH_PAGE_SIZE
// Max RAM used by SoftDevice. Can be changed when SoftDevice parameters are changed.
// See common.template.ld.
#ifndef SOFTDEVICE_RAM_SIZE
#define SOFTDEVICE_RAM_SIZE (64*1024)
#endif
#ifdef NRF52840
#define MICROPY_PY_SYS_PLATFORM "nRF52840"
#define FLASH_SIZE (0x100000) // 1MiB
#define RAM_SIZE (0x40000) // 256 KiB
// Special RAM area for SPIM3 transmit buffer, to work around hardware bug.
// See common.template.ld.
#define SPIM3_BUFFER_SIZE (8192)
#endif
#ifdef NRF52833
#define MICROPY_PY_SYS_PLATFORM "nRF52833"
#define FLASH_SIZE (0x80000) // 512 KiB
#define RAM_SIZE (0x20000) // 128 KiB
// Special RAM area for SPIM3 transmit buffer, to work around hardware bug.
// See common.template.ld.
#ifndef SPIM3_BUFFER_SIZE
#define SPIM3_BUFFER_SIZE (8192)
#endif
#endif
#define MICROPY_PY_COLLECTIONS_ORDEREDDICT (1)
#define MICROPY_PY_FUNCTION_ATTRS (1)
#define MICROPY_PY_IO (1)
@ -69,7 +43,26 @@
#define MICROPY_PY_UJSON (1)
// 24kiB stack
#define CIRCUITPY_DEFAULT_STACK_SIZE 0x6000
#define CIRCUITPY_DEFAULT_STACK_SIZE (24*1024)
#ifdef NRF52840
#define MICROPY_PY_SYS_PLATFORM "nRF52840"
#define FLASH_SIZE (1024*1024) // 1MiB
#define RAM_SIZE (256*1024) // 256 KiB
// Special RAM area for SPIM3 transmit buffer, to work around hardware bug.
// See common.template.ld.
#define SPIM3_BUFFER_RAM_SIZE (8*1024) // 8 KiB
#endif
#ifdef NRF52833
#define MICROPY_PY_SYS_PLATFORM "nRF52833"
#define FLASH_SIZE (512*1024) // 512 KiB
#define RAM_SIZE (128*1024) // 128 KiB
// SPIM3 buffer is not needed on nRF52833: the SPIM3 hw bug is not present.
#ifndef SPIM3_BUFFER_RAM_SIZE
#define SPIM3_BUFFER_RAM_SIZE (0)
#endif
#endif
////////////////////////////////////////////////////////////////////////////////////////////////////
@ -79,7 +72,7 @@
// Definitions that might be overriden by mpconfigboard.h
#ifndef CIRCUITPY_INTERNAL_NVM_SIZE
#define CIRCUITPY_INTERNAL_NVM_SIZE (8192)
#define CIRCUITPY_INTERNAL_NVM_SIZE (8*1024)
#endif
#ifndef BOARD_HAS_32KHZ_XTAL
@ -88,11 +81,11 @@
#endif
#if INTERNAL_FLASH_FILESYSTEM
#ifndef CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE
#define CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE (256*1024)
#endif
#ifndef CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE
#define CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE (256*1024)
#endif
#else
#define CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE (0)
#define CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE (0)
#endif
// Flash layout, starting at 0x00000000
@ -116,7 +109,7 @@
// SD_FLASH_SIZE is from nrf_sdm.h
#define ISR_START_ADDR (SD_FLASH_START_ADDR + SD_FLASH_SIZE)
#define ISR_SIZE (0x1000) // 4kiB
#define ISR_SIZE (4*1024) // 4kiB
// Smallest unit of flash that can be erased.
#define FLASH_ERASE_SIZE FLASH_PAGE_SIZE
@ -127,12 +120,12 @@
// Bootloader values from https://github.com/adafruit/Adafruit_nRF52_Bootloader/blob/master/src/linker/s140_v6.ld
#define BOOTLOADER_START_ADDR (FLASH_SIZE - BOOTLOADER_SIZE - BOOTLOADER_SETTINGS_SIZE - BOOTLOADER_MBR_SIZE)
#define BOOTLOADER_MBR_SIZE (0x1000) // 4kib
#define BOOTLOADER_MBR_SIZE (4*1024) // 4kib
#ifndef BOOTLOADER_SIZE
#define BOOTLOADER_SIZE (0xA000) // 40kiB
#define BOOTLOADER_SIZE (40*1024) // 40kiB
#endif
#define BOOTLOADER_SETTINGS_START_ADDR (FLASH_SIZE - BOOTLOADER_SETTINGS_SIZE)
#define BOOTLOADER_SETTINGS_SIZE (0x1000) // 4kiB
#define BOOTLOADER_SETTINGS_SIZE (4*1024) // 4kiB
#define CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_START_ADDR (BOOTLOADER_START_ADDR - CIRCUITPY_INTERNAL_FLASH_FILESYSTEM_SIZE)
@ -180,11 +173,46 @@
#error No space left in flash for firmware after specifying other regions!
#endif
////////////////////////////////////////////////////////////////////////////////////////////////////
// RAM space definitions
#define MICROPY_PORT_ROOT_POINTERS \
CIRCUITPY_COMMON_ROOT_POINTERS \
uint16_t* pixels_pattern_heap; \
ble_drv_evt_handler_entry_t* ble_drv_evt_handler_entries; \
// Max RAM used by SoftDevice. Can be changed when SoftDevice parameters are changed.
// On nRF52840, the first 64kB of RAM is composed of 8 8kB RAM blocks. Above those is
// RAM block 8, which is 192kB.
// If SPIM3_BUFFER_RAM_SIZE is 8kB, as opposed to zero, it must be in the first 64kB of RAM.
// So the amount of RAM reserved for the SoftDevice must be no more than 56kB.
// SoftDevice 6.1.0 with 5 connections and various increases can be made to use < 56kB.
// To measure the minimum required amount of memory for given configuration, set this number
// high enough to work and then check the mutation of the value done by sd_ble_enable().
// See common.template.ld.
#ifndef SOFTDEVICE_RAM_SIZE
#define SOFTDEVICE_RAM_SIZE (56*1024)
#endif
#define RAM_START_ADDR (0x20000000)
#define SOFTDEVICE_RAM_START_ADDR (RAM_START_ADDR)
#define SPIM3_BUFFER_RAM_START_ADDR (SOFTDEVICE_RAM_START_ADDR + SOFTDEVICE_RAM_SIZE)
#define APP_RAM_START_ADDR (SPIM3_BUFFER_RAM_START_ADDR + SPIM3_BUFFER_RAM_SIZE)
#define APP_RAM_SIZE (RAM_START_ADDR + RAM_SIZE - APP_RAM_START_ADDR)
#if SPIM3_BUFFER_RAM_SIZE > 0 && SOFTDEVICE_RAM_SIZE + SPIM3_BUFFER_RAM_SIZE > (64*1024)
#error SPIM3 buffer must be in the first 64kB of RAM.
#endif
#if SOFTDEVICE_RAM_SIZE + SPIM3_BUFFER_RAM_SIZE + APP_RAM_SIZE > RAM_SIZE
#error RAM size regions overflow RAM
#endif
#if SOFTDEVICE_RAM_SIZE + SPIM3_BUFFER_RAM_SIZE + APP_RAM_SIZE < RAM_SIZE
#error RAM size regions do not use all of RAM
#endif
#define MICROPY_PORT_ROOT_POINTERS \
CIRCUITPY_COMMON_ROOT_POINTERS \
uint16_t* pixels_pattern_heap; \
ble_drv_evt_handler_entry_t* ble_drv_evt_handler_entries; \
#endif // NRF5_MPCONFIGPORT_H__

View File

@ -5,7 +5,7 @@
#define NRFX_POWER_ENABLED 1
#define NRFX_POWER_DEFAULT_CONFIG_IRQ_PRIORITY 7
// NOTE: THIS WORKAROUND CAUSES BLE CODE TO CRASH.
// NOTE: THIS WORKAROUND CAUSES BLE CODE TO CRASH. DO NOT USE.
// It doesn't work with the SoftDevice.
// See https://devzone.nordicsemi.com/f/nordic-q-a/33982/sdk-15-software-crash-during-spi-session
// Turn on nrfx supported workarounds for errata in Rev1 of nRF52840

View File

@ -113,7 +113,15 @@ void pulseout_reset() {
}
void common_hal_pulseio_pulseout_construct(pulseio_pulseout_obj_t* self,
const pulseio_pwmout_obj_t* carrier) {
const pulseio_pwmout_obj_t* carrier,
const mcu_pin_obj_t* pin,
uint32_t frequency,
uint16_t duty_cycle) {
if (!carrier || pin || frequency) {
mp_raise_NotImplementedError(translate("Port does not accept pins or frequency. \
Construct and pass a PWMOut Carrier instead"));
}
// Add to active PulseOuts
refcount++;
TIM_TypeDef * tim_instance = stm_peripherals_find_timer();

View File

@ -145,7 +145,7 @@ ifeq ($(CIRCUITPY_DIGITALIO),1)
SRC_PATTERNS += digitalio/%
endif
ifeq ($(CIRCUITPY_DISPLAYIO),1)
SRC_PATTERNS += displayio/% terminalio/% fontio/%
SRC_PATTERNS += displayio/%
endif
ifeq ($(CIRCUITPY_VECTORIO),1)
SRC_PATTERNS += vectorio/%
@ -237,6 +237,9 @@ endif
ifeq ($(CIRCUITPY_SUPERVISOR),1)
SRC_PATTERNS += supervisor/%
endif
ifeq ($(CIRCUITPY_TERMINALIO),1)
SRC_PATTERNS += terminalio/% fontio/%
endif
ifeq ($(CIRCUITPY_TIME),1)
SRC_PATTERNS += time/%
endif

View File

@ -347,16 +347,20 @@ extern const struct _mp_obj_module_t displayio_module;
extern const struct _mp_obj_module_t fontio_module;
extern const struct _mp_obj_module_t terminalio_module;
#define DISPLAYIO_MODULE { MP_OBJ_NEW_QSTR(MP_QSTR_displayio), (mp_obj_t)&displayio_module },
#define FONTIO_MODULE { MP_OBJ_NEW_QSTR(MP_QSTR_fontio), (mp_obj_t)&fontio_module },
#define TERMINALIO_MODULE { MP_OBJ_NEW_QSTR(MP_QSTR_terminalio), (mp_obj_t)&terminalio_module },
#ifndef CIRCUITPY_DISPLAY_LIMIT
#define CIRCUITPY_DISPLAY_LIMIT (1)
#endif
#else
#define DISPLAYIO_MODULE
#define CIRCUITPY_DISPLAY_LIMIT (0)
#endif
#if CIRCUITPY_DISPLAYIO && CIRCUITPY_TERMINALIO
#define FONTIO_MODULE { MP_OBJ_NEW_QSTR(MP_QSTR_fontio), (mp_obj_t)&fontio_module },
#define TERMINALIO_MODULE { MP_OBJ_NEW_QSTR(MP_QSTR_terminalio), (mp_obj_t)&terminalio_module },
#else
#define FONTIO_MODULE
#define TERMINALIO_MODULE
#define CIRCUITPY_DISPLAY_LIMIT (0)
#endif
#if CIRCUITPY_FRAMEBUFFERIO

View File

@ -195,6 +195,9 @@ CFLAGS += -DCIRCUITPY_STRUCT=$(CIRCUITPY_STRUCT)
CIRCUITPY_SUPERVISOR ?= 1
CFLAGS += -DCIRCUITPY_SUPERVISOR=$(CIRCUITPY_SUPERVISOR)
CIRCUITPY_TERMINALIO ?= $(CIRCUITPY_DISPLAYIO)
CFLAGS += -DCIRCUITPY_TERMINALIO=$(CIRCUITPY_TERMINALIO)
CIRCUITPY_TIME ?= 1
CFLAGS += -DCIRCUITPY_TIME=$(CIRCUITPY_TIME)

View File

@ -102,10 +102,6 @@ def translate(translation_file, i18ns):
def compute_huffman_coding(translations, qstrs, compression_filename):
all_strings = [x[1] for x in translations]
# go through each qstr and print it out
for _, _, qstr in qstrs.values():
all_strings.append(qstr)
all_strings_concat = "".join(all_strings)
counts = collections.Counter(all_strings_concat)
cb = huffman.codebook(counts.items())
@ -259,8 +255,6 @@ def compress(encoding_table, decompressed, encoded_length_bits, len_translation_
current_bit -= 1
if current_bit != 7:
current_byte += 1
if current_byte > len(decompressed):
print("Note: compression increased length", repr(decompressed), len(decompressed), current_byte, file=sys.stderr)
return enc[:current_byte]
def qstr_escape(qst):

View File

@ -40,6 +40,10 @@
#include "shared-module/_pixelbuf/PixelBuf.h"
#include "shared-bindings/digitalio/DigitalInOut.h"
#ifdef CIRCUITPY_ULAB
#include "extmod/ulab/code/ndarray.h"
#endif
extern const int32_t colorwheel(float pos);
static void parse_byteorder(mp_obj_t byteorder_obj, pixelbuf_byteorder_details_t* parsed);
@ -305,6 +309,16 @@ STATIC mp_obj_t pixelbuf_pixelbuf_subscr(mp_obj_t self_in, mp_obj_t index_in, mp
size_t length = common_hal__pixelbuf_pixelbuf_get_len(self_in);
mp_seq_get_fast_slice_indexes(length, index_in, &slice);
static mp_obj_tuple_t flat_item_tuple = {
.base = {&mp_type_tuple},
.len = 0,
.items = {
mp_const_none,
mp_const_none,
mp_const_none,
mp_const_none,
}
};
size_t slice_len;
if (slice.step > 0) {
@ -326,27 +340,13 @@ STATIC mp_obj_t pixelbuf_pixelbuf_subscr(mp_obj_t self_in, mp_obj_t index_in, mp
} else { // Set
#if MICROPY_PY_ARRAY_SLICE_ASSIGN
if (!(MP_OBJ_IS_TYPE(value, &mp_type_list) || MP_OBJ_IS_TYPE(value, &mp_type_tuple))) {
mp_raise_ValueError(translate("tuple/list required on RHS"));
}
size_t num_items = mp_obj_get_int(mp_obj_len(value));
mp_obj_t *src_objs;
size_t num_items;
if (MP_OBJ_IS_TYPE(value, &mp_type_list)) {
mp_obj_list_t *t = MP_OBJ_TO_PTR(value);
num_items = t->len;
src_objs = t->items;
} else {
mp_obj_tuple_t *l = MP_OBJ_TO_PTR(value);
num_items = l->len;
src_objs = l->items;
if (num_items != slice_len && num_items != (slice_len * common_hal__pixelbuf_pixelbuf_get_bpp(self_in))) {
mp_raise_ValueError_varg(translate("Unmatched number of items on RHS (expected %d, got %d)."), slice_len, num_items);
}
if (num_items != slice_len) {
mp_raise_ValueError_varg(translate("Unmatched number of items on RHS (expected %d, got %d)."),
slice_len, num_items);
}
common_hal__pixelbuf_pixelbuf_set_pixels(self_in, slice.start, slice.step, slice_len, src_objs);
common_hal__pixelbuf_pixelbuf_set_pixels(self_in, slice.start, slice.step, slice_len, value,
num_items != slice_len ? &flat_item_tuple : mp_const_none);
return mp_const_none;
#else
return MP_OBJ_NULL; // op not supported

View File

@ -47,6 +47,6 @@ void common_hal__pixelbuf_pixelbuf_fill(mp_obj_t self, mp_obj_t item);
void common_hal__pixelbuf_pixelbuf_show(mp_obj_t self);
mp_obj_t common_hal__pixelbuf_pixelbuf_get_pixel(mp_obj_t self, size_t index);
void common_hal__pixelbuf_pixelbuf_set_pixel(mp_obj_t self, size_t index, mp_obj_t item);
void common_hal__pixelbuf_pixelbuf_set_pixels(mp_obj_t self_in, size_t start, mp_int_t step, size_t slice_len, mp_obj_t* values);
void common_hal__pixelbuf_pixelbuf_set_pixels(mp_obj_t self_in, size_t start, mp_int_t step, size_t slice_len, mp_obj_t* values, mp_obj_tuple_t *flatten_to);
#endif // CP_SHARED_BINDINGS_PIXELBUF_PIXELBUF_H

View File

@ -64,20 +64,29 @@
//| pulse.send(pulses)"""
//| ...
//|
STATIC mp_obj_t pulseio_pulseout_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
mp_arg_check_num(n_args, kw_args, 1, 1, false);
mp_obj_t carrier_obj = args[0];
STATIC mp_obj_t pulseio_pulseout_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
if (!MP_OBJ_IS_TYPE(carrier_obj, &pulseio_pwmout_type)) {
mp_raise_TypeError_varg(translate("Expected a %q"), pulseio_pwmout_type.name);
}
// create Pulse object from the given pin
pulseio_pulseout_obj_t *self = m_new_obj(pulseio_pulseout_obj_t);
self->base.type = &pulseio_pulseout_type;
common_hal_pulseio_pulseout_construct(self, (pulseio_pwmout_obj_t *)MP_OBJ_TO_PTR(carrier_obj));
mp_obj_t carrier_obj = pos_args[0];
if (MP_OBJ_IS_TYPE(carrier_obj, &pulseio_pwmout_type)) {
// Use a PWMOut Carrier
mp_arg_check_num(n_args, kw_args, 1, 1, false);
common_hal_pulseio_pulseout_construct(self, (pulseio_pwmout_obj_t *)MP_OBJ_TO_PTR(carrier_obj), NULL, 0, 0);
} else {
// Use a Pin, frequency, and duty cycle
enum { ARG_pin, ARG_frequency};
static const mp_arg_t allowed_args[] = {
{ MP_QSTR_pin, MP_ARG_REQUIRED | MP_ARG_OBJ },
{ MP_QSTR_frequency, MP_ARG_KW_ONLY | MP_ARG_INT, {.u_int = 38000} },
{ MP_QSTR_duty_cycle, MP_ARG_KW_ONLY | MP_ARG_INT, {.u_int = 1<<15} },
};
mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)];
mp_arg_parse_all(n_args, pos_args, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
const mcu_pin_obj_t* pin = validate_obj_is_free_pin(args[ARG_pin].u_obj);
common_hal_pulseio_pulseout_construct(self, NULL, pin, args[ARG_frequency].u_int, args[ARG_frequency].u_int);
}
return MP_OBJ_FROM_PTR(self);
}

View File

@ -34,7 +34,11 @@
extern const mp_obj_type_t pulseio_pulseout_type;
extern void common_hal_pulseio_pulseout_construct(pulseio_pulseout_obj_t* self,
const pulseio_pwmout_obj_t* carrier);
const pulseio_pwmout_obj_t* carrier,
const mcu_pin_obj_t* pin,
uint32_t frequency,
uint16_t duty_cycle);
extern void common_hal_pulseio_pulseout_deinit(pulseio_pulseout_obj_t* self);
extern bool common_hal_pulseio_pulseout_deinited(pulseio_pulseout_obj_t* self);
extern void common_hal_pulseio_pulseout_send(pulseio_pulseout_obj_t* self,

View File

@ -132,6 +132,18 @@ void common_hal__pixelbuf_pixelbuf_set_brightness(mp_obj_t self_in, mp_float_t b
}
}
uint8_t _pixelbuf_get_as_uint8(mp_obj_t obj) {
if (MP_OBJ_IS_SMALL_INT(obj)) {
return MP_OBJ_SMALL_INT_VALUE(obj);
} else if (MP_OBJ_IS_INT(obj)) {
return mp_obj_get_int_truncated(obj);
} else if (mp_obj_is_float(obj)) {
return (uint8_t)mp_obj_get_float(obj);
}
mp_raise_TypeError_varg(
translate("can't convert %q to %q"), mp_obj_get_type_qstr(obj), MP_QSTR_int);
}
void _pixelbuf_parse_color(pixelbuf_pixelbuf_obj_t* self, mp_obj_t color, uint8_t* r, uint8_t* g, uint8_t* b, uint8_t* w) {
pixelbuf_byteorder_details_t *byteorder = &self->byteorder;
// w is shared between white in NeoPixels and brightness in dotstars (so that DotStars can have
@ -142,8 +154,8 @@ void _pixelbuf_parse_color(pixelbuf_pixelbuf_obj_t* self, mp_obj_t color, uint8_
*w = 0;
}
if (MP_OBJ_IS_INT(color)) {
mp_int_t value = mp_obj_get_int_truncated(color);
if (MP_OBJ_IS_INT(color) || mp_obj_is_float(color)) {
mp_int_t value = MP_OBJ_IS_INT(color) ? mp_obj_get_int_truncated(color) : mp_obj_get_float(color);
*r = value >> 16 & 0xff;
*g = (value >> 8) & 0xff;
*b = value & 0xff;
@ -155,9 +167,9 @@ void _pixelbuf_parse_color(pixelbuf_pixelbuf_obj_t* self, mp_obj_t color, uint8_
mp_raise_ValueError_varg(translate("Expected tuple of length %d, got %d"), byteorder->bpp, len);
}
*r = mp_obj_get_int_truncated(items[PIXEL_R]);
*g = mp_obj_get_int_truncated(items[PIXEL_G]);
*b = mp_obj_get_int_truncated(items[PIXEL_B]);
*r = _pixelbuf_get_as_uint8(items[PIXEL_R]);
*g = _pixelbuf_get_as_uint8(items[PIXEL_G]);
*b = _pixelbuf_get_as_uint8(items[PIXEL_B]);
if (len > 3) {
if (mp_obj_is_float(items[PIXEL_W])) {
*w = 255 * mp_obj_get_float(items[PIXEL_W]);
@ -218,17 +230,35 @@ void _pixelbuf_set_pixel(pixelbuf_pixelbuf_obj_t* self, size_t index, mp_obj_t v
_pixelbuf_set_pixel_color(self, index, r, g, b, w);
}
void common_hal__pixelbuf_pixelbuf_set_pixels(mp_obj_t self_in, size_t start, mp_int_t step, size_t slice_len, mp_obj_t* values) {
void common_hal__pixelbuf_pixelbuf_set_pixels(mp_obj_t self_in, size_t start, mp_int_t step, size_t slice_len, mp_obj_t* values,
mp_obj_tuple_t *flatten_to)
{
pixelbuf_pixelbuf_obj_t* self = native_pixelbuf(self_in);
for (size_t i = 0; i < slice_len; i++) {
_pixelbuf_set_pixel(self, start, values[i]);
start+=step;
mp_obj_iter_buf_t iter_buf;
mp_obj_t iterable = mp_getiter(values, &iter_buf);
mp_obj_t item;
size_t i = 0;
bool flattened = flatten_to != mp_const_none;
if (flattened) flatten_to->len = self->bytes_per_pixel;
while ((item = mp_iternext(iterable)) != MP_OBJ_STOP_ITERATION) {
if (flattened) {
flatten_to->items[i % self->bytes_per_pixel] = item;
if (++i % self->bytes_per_pixel == 0) {
_pixelbuf_set_pixel(self, start, flatten_to);
start+=step;
}
} else {
_pixelbuf_set_pixel(self, start, item);
start+=step;
}
}
if (self->auto_write) {
common_hal__pixelbuf_pixelbuf_show(self_in);
}
}
void common_hal__pixelbuf_pixelbuf_set_pixel(mp_obj_t self_in, size_t index, mp_obj_t value) {
pixelbuf_pixelbuf_obj_t* self = native_pixelbuf(self_in);
_pixelbuf_set_pixel(self, index, value);

View File

@ -39,6 +39,11 @@
#include "shared-module/displayio/__init__.h"
#endif
#if CIRCUITPY_SHARPDISPLAY
#include "shared-bindings/sharpdisplay/SharpMemoryFramebuffer.h"
#include "shared-module/sharpdisplay/SharpMemoryFramebuffer.h"
#endif
#if BOARD_I2C
// Statically allocate the I2C object so it can live past the end of the heap and into the next VM.
// That way it can be used by built-in I2CDisplay displays and be accessible through board.I2C().
@ -148,10 +153,17 @@ void reset_board_busses(void) {
bool display_using_spi = false;
#if CIRCUITPY_DISPLAYIO
for (uint8_t i = 0; i < CIRCUITPY_DISPLAY_LIMIT; i++) {
if (displays[i].fourwire_bus.bus == spi_singleton) {
mp_const_obj_t bus_type = displays[i].bus_base.type;
if (bus_type == &displayio_fourwire_type && displays[i].fourwire_bus.bus == spi_singleton) {
display_using_spi = true;
break;
}
#if CIRCUITPY_SHARPDISPLAY
if (displays[i].bus_base.type == &sharpdisplay_framebuffer_type && displays[i].sharpdisplay.bus == spi_singleton) {
display_using_spi = true;
break;
}
#endif
}
#endif
if (!display_using_spi) {

View File

@ -26,7 +26,7 @@
primary_display_t displays[CIRCUITPY_DISPLAY_LIMIT];
#if CIRCUITPY_RGBMATRIX || CIRCUITPY_SHARPDISPLAY
#if CIRCUITPY_RGBMATRIX
STATIC bool any_display_uses_this_framebuffer(mp_obj_base_t *obj) {
for (uint8_t i = 0; i < CIRCUITPY_DISPLAY_LIMIT; i++) {
if (displays[i].display_base.type == &framebufferio_framebufferdisplay_type) {
@ -186,11 +186,7 @@ void reset_displays(void) {
#if CIRCUITPY_SHARPDISPLAY
} else if (displays[i].bus_base.type == &sharpdisplay_framebuffer_type) {
sharpdisplay_framebuffer_obj_t * sharp = &displays[i].sharpdisplay;
if(any_display_uses_this_framebuffer(&sharp->base)) {
common_hal_sharpdisplay_framebuffer_reset(sharp);
} else {
common_hal_sharpdisplay_framebuffer_deinit(sharp);
}
common_hal_sharpdisplay_framebuffer_reset(sharp);
#endif
} else {
// Not an active display bus.
@ -398,8 +394,8 @@ primary_display_t *allocate_display_or_raise(void) {
}
primary_display_t *allocate_display_bus(void) {
for (uint8_t i = 0; i < CIRCUITPY_DISPLAY_LIMIT; i++) {
mp_const_obj_t display_type = displays[i].display.base.type;
if (display_type == NULL || display_type == &mp_type_NoneType) {
mp_const_obj_t display_bus_type = displays[i].bus_base.type;
if (display_bus_type == NULL || display_bus_type == &mp_type_NoneType) {
return &displays[i];
}
}

View File

@ -29,6 +29,7 @@
#include <string.h>
#include "py/mpstate.h"
#include "shared-bindings/displayio/Bitmap.h"
#include "shared-bindings/displayio/Group.h"
#include "shared-bindings/displayio/Palette.h"
#include "shared-bindings/displayio/TileGrid.h"
@ -48,15 +49,21 @@ extern size_t blinka_bitmap_data[];
extern displayio_bitmap_t blinka_bitmap;
extern displayio_group_t circuitpython_splash;
#if CIRCUITPY_TERMINALIO
static supervisor_allocation* tilegrid_tiles = NULL;
#endif
void supervisor_start_terminal(uint16_t width_px, uint16_t height_px) {
// Default the scale to 2 because we may show blinka without the terminal for
// languages that don't have font support.
uint8_t scale = 2;
#if CIRCUITPY_TERMINALIO
displayio_tilegrid_t* grid = &supervisor_terminal_text_grid;
uint16_t width_in_tiles = (width_px - blinka_bitmap.width) / grid->tile_width;
// determine scale based on h
uint8_t scale = 1;
if (width_in_tiles > 80) {
scale = 2;
if (width_in_tiles < 80) {
scale = 1;
}
width_in_tiles = (width_px - blinka_bitmap.width * scale) / (grid->tile_width * scale);
uint16_t height_in_tiles = height_px / (grid->tile_height * scale);
@ -64,7 +71,6 @@ void supervisor_start_terminal(uint16_t width_px, uint16_t height_px) {
if (remaining_pixels > 0) {
height_in_tiles += 1;
}
circuitpython_splash.scale = scale;
uint16_t total_tiles = width_in_tiles * height_in_tiles;
@ -94,34 +100,42 @@ void supervisor_start_terminal(uint16_t width_px, uint16_t height_px) {
grid->full_change = true;
common_hal_terminalio_terminal_construct(&supervisor_terminal, grid, &supervisor_terminal_font);
#endif
circuitpython_splash.scale = scale;
}
void supervisor_stop_terminal(void) {
#if CIRCUITPY_TERMINALIO
if (tilegrid_tiles != NULL) {
free_memory(tilegrid_tiles);
tilegrid_tiles = NULL;
supervisor_terminal_text_grid.inline_tiles = false;
supervisor_terminal_text_grid.tiles = NULL;
}
#endif
}
void supervisor_display_move_memory(void) {
#if CIRCUITPY_DISPLAYIO
#if CIRCUITPY_TERMINALIO
displayio_tilegrid_t* grid = &supervisor_terminal_text_grid;
if (MP_STATE_VM(terminal_tilegrid_tiles) == NULL || grid->tiles != MP_STATE_VM(terminal_tilegrid_tiles)) {
return;
}
uint16_t total_tiles = grid->width_in_tiles * grid->height_in_tiles;
if (MP_STATE_VM(terminal_tilegrid_tiles) != NULL &&
grid->tiles == MP_STATE_VM(terminal_tilegrid_tiles)) {
uint16_t total_tiles = grid->width_in_tiles * grid->height_in_tiles;
tilegrid_tiles = allocate_memory(align32_size(total_tiles), false);
if (tilegrid_tiles != NULL) {
memcpy(tilegrid_tiles->ptr, grid->tiles, total_tiles);
grid->tiles = (uint8_t*) tilegrid_tiles->ptr;
} else {
grid->tiles = NULL;
grid->inline_tiles = false;
tilegrid_tiles = allocate_memory(align32_size(total_tiles), false);
if (tilegrid_tiles != NULL) {
memcpy(tilegrid_tiles->ptr, grid->tiles, total_tiles);
grid->tiles = (uint8_t*) tilegrid_tiles->ptr;
} else {
grid->tiles = NULL;
grid->inline_tiles = false;
}
MP_STATE_VM(terminal_tilegrid_tiles) = NULL;
}
MP_STATE_VM(terminal_tilegrid_tiles) = NULL;
#endif
#if CIRCUITPY_DISPLAYIO
for (uint8_t i = 0; i < CIRCUITPY_DISPLAY_LIMIT; i++) {
#if CIRCUITPY_RGBMATRIX
if (displays[i].rgbmatrix.base.type == &rgbmatrix_RGBMatrix_type) {
@ -254,18 +268,26 @@ displayio_tilegrid_t blinka_sprite = {
.in_group = true
};
#if CIRCUITPY_TERMINALIO
#define CHILD_COUNT 2
displayio_group_child_t splash_children[2] = {
{&blinka_sprite, &blinka_sprite},
{&supervisor_terminal_text_grid, &supervisor_terminal_text_grid}
};
#else
#define CHILD_COUNT 1
displayio_group_child_t splash_children[1] = {
{&blinka_sprite, &blinka_sprite},
};
#endif
displayio_group_t circuitpython_splash = {
.base = {.type = &displayio_group_type },
.x = 0,
.y = 0,
.scale = 2,
.size = 2,
.max_size = 2,
.size = CHILD_COUNT,
.max_size = CHILD_COUNT,
.children = splash_children,
.item_removed = false,
.in_group = false,

View File

@ -27,6 +27,10 @@
#ifndef MICROPY_INCLUDED_SUPERVISOR_SHARED_DISPLAY_H
#define MICROPY_INCLUDED_SUPERVISOR_SHARED_DISPLAY_H
#include <stdint.h>
#if CIRCUITPY_TERMINALIO
#include "shared-bindings/displayio/Bitmap.h"
#include "shared-bindings/displayio/TileGrid.h"
#include "shared-bindings/fontio/BuiltinFont.h"
@ -42,6 +46,8 @@ extern displayio_bitmap_t supervisor_terminal_font_bitmap;
extern displayio_tilegrid_t supervisor_terminal_text_grid;
extern terminalio_terminal_obj_t supervisor_terminal;
#endif
void supervisor_start_terminal(uint16_t width_px, uint16_t height_px);
void supervisor_stop_terminal(void);

View File

@ -99,7 +99,7 @@ void serial_write_substring(const char* text, uint32_t length) {
if (length == 0) {
return;
}
#if CIRCUITPY_DISPLAYIO
#if CIRCUITPY_TERMINALIO
int errcode;
common_hal_terminalio_terminal_write(&supervisor_terminal, (const uint8_t*) text, length, &errcode);
#endif

View File

@ -110,7 +110,9 @@ ifeq ($(CIRCUITPY_DISPLAYIO), 1)
SRC_SUPERVISOR += \
supervisor/shared/display.c
SUPERVISOR_O += $(BUILD)/autogen_display_resources.o
ifeq ($(CIRCUITPY_TERMINALIO), 1)
SUPERVISOR_O += $(BUILD)/autogen_display_resources.o
endif
endif
ifndef USB_INTERFACE_NAME
USB_INTERFACE_NAME = "CircuitPython"
@ -169,6 +171,10 @@ ifndef USB_MIDI_EP_NUM_IN
USB_MIDI_EP_NUM_IN = 0
endif
ifndef USB_NUM_EP
USB_NUM_EP = 0
endif
USB_DESCRIPTOR_ARGS = \
--manufacturer $(USB_MANUFACTURER)\
--product $(USB_PRODUCT)\
@ -178,6 +184,7 @@ USB_DESCRIPTOR_ARGS = \
--interface_name $(USB_INTERFACE_NAME)\
--devices $(USB_DEVICES)\
--hid_devices $(USB_HID_DEVICES)\
--max_ep $(USB_NUM_EP) \
--cdc_ep_num_notification $(USB_CDC_EP_NUM_NOTIFICATION)\
--cdc_ep_num_data_out $(USB_CDC_EP_NUM_DATA_OUT)\
--cdc_ep_num_data_in $(USB_CDC_EP_NUM_DATA_IN)\

View File

@ -58,16 +58,20 @@ filtered_characters = all_characters
# Try to pre-load all of the glyphs. Misses will still be slow later.
f.load_glyphs(set(ord(c) for c in all_characters))
missing = 0
# Get each glyph.
for c in set(all_characters):
if ord(c) not in f._glyphs:
print("Font missing character:", c, ord(c))
missing += 1
filtered_characters = filtered_characters.replace(c, "")
continue
g = f.get_glyph(ord(c))
if g["shift"][1] != 0:
raise RuntimeError("y shift")
if missing > 0:
print("Font missing", missing, "characters", file=sys.stderr)
x, y, dx, dy = f.get_bounding_box()
tile_x, tile_y = x - dx, y - dy
total_bits = tile_x * len(all_characters)

View File

@ -62,6 +62,8 @@ parser.add_argument('--midi_ep_num_out', type=int, default=0,
help='endpoint number of MIDI OUT')
parser.add_argument('--midi_ep_num_in', type=int, default=0,
help='endpoint number of MIDI IN')
parser.add_argument('--max_ep', type=int, default=0,
help='total number of endpoints available')
parser.add_argument('--output_c_file', type=argparse.FileType('w', encoding='UTF-8'), required=True)
parser.add_argument('--output_h_file', type=argparse.FileType('w', encoding='UTF-8'), required=True)
@ -376,6 +378,15 @@ if 'AUDIO' in args.devices:
# interface cross-references.
interfaces = util.join_interfaces(interfaces_to_join, renumber_endpoints=args.renumber_endpoints)
if args.max_ep != 0:
for interface in interfaces:
for subdescriptor in interface.subdescriptors:
endpoint_address = getattr(subdescriptor, 'bEndpointAddress', 0) & 0x7f
if endpoint_address > args.max_ep:
raise ValueError("Endpoint address %d of %s may not exceed %d" % (endpoint_address & 0x7f, interface.description, args.max_ep))
else:
print("Unable to check whether maximum number of endpoints is respected", file=sys.stderr)
# Now adjust the CDC interface cross-references.
cdc_union.bMasterInterface = cdc_comm_interface.bInterfaceNumber