This commit is contained in:
askpatricw 2020-10-22 21:59:54 -07:00
commit e2c833adf4
4 changed files with 23 additions and 21 deletions

View File

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-16 19:50-0500\n"
"PO-Revision-Date: 2020-10-17 02:31+0000\n"
"PO-Revision-Date: 2020-10-22 22:15+0000\n"
"Last-Translator: Alvaro Figueroa <alvaro@greencore.co.cr>\n"
"Language-Team: \n"
"Language: es\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.3.1-dev\n"
"X-Generator: Weblate 4.3.1\n"
#: main.c
msgid ""
@ -1434,7 +1434,7 @@ msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
msgstr "Solo un color puede ser transparente a la vez"
#: shared-bindings/ipaddress/__init__.c
msgid "Only raw int supported for ip"
@ -2175,7 +2175,7 @@ msgstr "buffer demasiado pequeño"
#: shared-bindings/socketpool/Socket.c
msgid "buffer too small for requested bytes"
msgstr ""
msgstr "búfer muy pequeño para los bytes solicitados"
#: shared-bindings/_pew/PewPew.c
msgid "buttons must be digitalio.DigitalInOut"

View File

@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: 0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-16 19:50-0500\n"
"PO-Revision-Date: 2020-10-17 15:35+0000\n"
"PO-Revision-Date: 2020-10-22 20:48+0000\n"
"Last-Translator: Antonin ENFRUN <antonin.e@me.com>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.3.1-dev\n"
"X-Generator: Weblate 4.3.1\n"
#: main.c
msgid ""
@ -1439,7 +1439,7 @@ msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
msgstr "Une seule couleur peut être transparente à la fois"
#: shared-bindings/ipaddress/__init__.c
msgid "Only raw int supported for ip"
@ -2185,7 +2185,7 @@ msgstr "tampon trop petit"
#: shared-bindings/socketpool/Socket.c
msgid "buffer too small for requested bytes"
msgstr ""
msgstr "tampon trop petit pour le nombre d'octets demandé"
#: shared-bindings/_pew/PewPew.c
msgid "buttons must be digitalio.DigitalInOut"

View File

@ -7,7 +7,7 @@ msgstr ""
"Project-Id-Version: circuitpython-cn\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-16 19:50-0500\n"
"PO-Revision-Date: 2020-10-17 02:31+0000\n"
"PO-Revision-Date: 2020-10-22 20:48+0000\n"
"Last-Translator: hexthat <hexthat@gmail.com>\n"
"Language-Team: Chinese Hanyu Pinyin\n"
"Language: zh_Latn_pinyin\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.3.1-dev\n"
"X-Generator: Weblate 4.3.1\n"
#: main.c
msgid ""
@ -1423,7 +1423,7 @@ msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
msgstr "Yīcì zhǐ néng yǒuyī zhǒng yánsè shì tòumíng de"
#: shared-bindings/ipaddress/__init__.c
msgid "Only raw int supported for ip"
@ -2153,7 +2153,7 @@ msgstr "huǎnchōng qū tài xiǎo"
#: shared-bindings/socketpool/Socket.c
msgid "buffer too small for requested bytes"
msgstr ""
msgstr "huǎn chōng qū tài xiǎo, duì yú qǐng qiú de zì jié"
#: shared-bindings/_pew/PewPew.c
msgid "buttons must be digitalio.DigitalInOut"

View File

@ -34,21 +34,22 @@
#include "shared-module/sharpdisplay/SharpMemoryFramebuffer.h"
#include "supervisor/memory.h"
#include "supervisor/shared/safe_mode.h"
#define SHARPMEM_BIT_WRITECMD_LSB (0x80)
#define SHARPMEM_BIT_VCOM_LSB (0x40)
static inline void *hybrid_alloc(size_t sz) {
if (gc_alloc_possible()) {
return m_malloc(sz + sizeof(void*), true);
} else {
supervisor_allocation *allocation = allocate_memory(align32_size(sz), false);
if (!allocation) {
return NULL;
}
static void *hybrid_alloc(size_t sz) {
supervisor_allocation *allocation = allocate_memory(align32_size(sz), false);
if (allocation) {
memset(allocation->ptr, 0, sz);
return allocation->ptr;
}
if (gc_alloc_possible()) {
return m_malloc(sz, true);
}
reset_into_safe_mode(MEM_MANAGE);
return NULL; // unreached
}
static inline void hybrid_free(void *ptr_in) {
@ -155,7 +156,8 @@ void common_hal_sharpdisplay_framebuffer_construct(sharpdisplay_framebuffer_obj_
int row_stride = common_hal_sharpdisplay_framebuffer_get_row_stride(self);
self->bufinfo.len = row_stride * height + 2;
self->bufinfo.buf = gc_alloc(self->bufinfo.len, false, true);
// re-use a supervisor allocation if possible
self->bufinfo.buf = hybrid_alloc(self->bufinfo.len);
uint8_t *data = self->bufinfo.buf;
*data++ = SHARPMEM_BIT_WRITECMD_LSB;