various: Spelling fixes
This commit is contained in:
parent
e5e49bedcb
commit
ca16c38210
|
@ -138,7 +138,7 @@ If `WIPY_IP`, `WIPY_USER` or `WIPY_PWD` are omitted the default values (the ones
|
||||||
## Regarding old revisions of the CC3200-LAUNCHXL
|
## Regarding old revisions of the CC3200-LAUNCHXL
|
||||||
|
|
||||||
First silicon (pre-release) revisions of the CC3200 had issues with the ram blocks, and MicroPython cannot run
|
First silicon (pre-release) revisions of the CC3200 had issues with the ram blocks, and MicroPython cannot run
|
||||||
there. Make sure to use a **v4.1 (or higer) LAUNCHXL board** when trying this port, otherwise it won't work.
|
there. Make sure to use a **v4.1 (or higher) LAUNCHXL board** when trying this port, otherwise it won't work.
|
||||||
|
|
||||||
### Note regarding FileZilla
|
### Note regarding FileZilla
|
||||||
|
|
||||||
|
|
|
@ -69,7 +69,7 @@ Functions
|
||||||
|
|
||||||
Open a database from a random-access `stream` (like an open file). All
|
Open a database from a random-access `stream` (like an open file). All
|
||||||
other parameters are optional and keyword-only, and allow to tweak advanced
|
other parameters are optional and keyword-only, and allow to tweak advanced
|
||||||
paramters of the database operation (most users will not need them):
|
parameters of the database operation (most users will not need them):
|
||||||
|
|
||||||
* `flags` - Currently unused.
|
* `flags` - Currently unused.
|
||||||
* `cachesize` - Suggested maximum memory cache size in bytes. For a
|
* `cachesize` - Suggested maximum memory cache size in bytes. For a
|
||||||
|
|
|
@ -34,7 +34,7 @@ Methods
|
||||||
|
|
||||||
.. method:: SD.init(id=0, pins=('GP10', 'GP11', 'GP15'))
|
.. method:: SD.init(id=0, pins=('GP10', 'GP11', 'GP15'))
|
||||||
|
|
||||||
Enable the SD card. In order to initalize the card, give it a 3-tuple:
|
Enable the SD card. In order to initialize the card, give it a 3-tuple:
|
||||||
``(clk_pin, cmd_pin, dat0_pin)``.
|
``(clk_pin, cmd_pin, dat0_pin)``.
|
||||||
|
|
||||||
.. method:: SD.deinit()
|
.. method:: SD.deinit()
|
||||||
|
|
|
@ -16,7 +16,7 @@ UART objects can be created and initialised using::
|
||||||
uart = UART(1, 9600) # init with given baudrate
|
uart = UART(1, 9600) # init with given baudrate
|
||||||
uart.init(9600, bits=8, parity=None, stop=1) # init with given parameters
|
uart.init(9600, bits=8, parity=None, stop=1) # init with given parameters
|
||||||
|
|
||||||
Supported paramters differ on a board:
|
Supported parameters differ on a board:
|
||||||
|
|
||||||
Pyboard: Bits can be 7, 8 or 9. Stop can be 1 or 2. With `parity=None`,
|
Pyboard: Bits can be 7, 8 or 9. Stop can be 1 or 2. With `parity=None`,
|
||||||
only 8 and 9 bits are supported. With parity enabled, only 7 and 8 bits
|
only 8 and 9 bits are supported. With parity enabled, only 7 and 8 bits
|
||||||
|
|
|
@ -15,11 +15,11 @@ be implemented:
|
||||||
|
|
||||||
* SHA1 - A previous generation algorithm. Not recommended for new usages,
|
* SHA1 - A previous generation algorithm. Not recommended for new usages,
|
||||||
but SHA1 is a part of number of Internet standards and existing
|
but SHA1 is a part of number of Internet standards and existing
|
||||||
applications, so boards targetting network connectivity and
|
applications, so boards targeting network connectivity and
|
||||||
interoperatiability will try to provide this.
|
interoperatiability will try to provide this.
|
||||||
|
|
||||||
* MD5 - A legacy algorithm, not considered cryptographically secure. Only
|
* MD5 - A legacy algorithm, not considered cryptographically secure. Only
|
||||||
selected boards, targetting interoperatibility with legacy applications,
|
selected boards, targeting interoperatibility with legacy applications,
|
||||||
will offer this.
|
will offer this.
|
||||||
|
|
||||||
Constructors
|
Constructors
|
||||||
|
|
|
@ -146,8 +146,8 @@ Functions
|
||||||
too distant inbetween, see below). The function returns **signed** value in the range
|
too distant inbetween, see below). The function returns **signed** value in the range
|
||||||
[``-TICKS_PERIOD/2`` .. ``TICKS_PERIOD/2-1``] (that's a typical range definition for
|
[``-TICKS_PERIOD/2`` .. ``TICKS_PERIOD/2-1``] (that's a typical range definition for
|
||||||
two's-complement signed binary integers). If the result is negative, it means that
|
two's-complement signed binary integers). If the result is negative, it means that
|
||||||
``ticks1`` occured earlier in time than ``ticks2``. Otherwise, it means that
|
``ticks1`` occurred earlier in time than ``ticks2``. Otherwise, it means that
|
||||||
``ticks1`` occured after ``ticks2``. This holds ``only`` if ``ticks1`` and ``ticks2``
|
``ticks1`` occurred after ``ticks2``. This holds ``only`` if ``ticks1`` and ``ticks2``
|
||||||
are apart from each other for no more than ``TICKS_PERIOD/2-1`` ticks. If that does
|
are apart from each other for no more than ``TICKS_PERIOD/2-1`` ticks. If that does
|
||||||
not hold, incorrect result will be returned. Specifically, if two tick values are
|
not hold, incorrect result will be returned. Specifically, if two tick values are
|
||||||
apart for ``TICKS_PERIOD/2-1`` ticks, that value will be returned by the function.
|
apart for ``TICKS_PERIOD/2-1`` ticks, that value will be returned by the function.
|
||||||
|
|
|
@ -66,7 +66,7 @@ index for PDF, just the same as for HTML.
|
||||||
search_auto_exclude
|
search_auto_exclude
|
||||||
-------------------
|
-------------------
|
||||||
|
|
||||||
Even if you exclude soem documents from toctree:: using only::
|
Even if you exclude some documents from toctree:: using only::
|
||||||
directive, they will be indexed for full-text search, so user may
|
directive, they will be indexed for full-text search, so user may
|
||||||
find them and get confused. This plugin follows very simple idea
|
find them and get confused. This plugin follows very simple idea
|
||||||
that if you didn't include some documents in the toctree, then
|
that if you didn't include some documents in the toctree, then
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# This is a Sphinx documentation tool extension which allows to
|
# This is a Sphinx documentation tool extension which allows to
|
||||||
# exclude some Python modules from the generated indexes. Modules
|
# exclude some Python modules from the generated indexes. Modules
|
||||||
# are excluded both from "modindex" and "genindex" index tables
|
# are excluded both from "modindex" and "genindex" index tables
|
||||||
# (in the latter case, all members of a module are exlcuded).
|
# (in the latter case, all members of a module are excluded).
|
||||||
# To control exclusion, set "modindex_exclude" variable in Sphinx
|
# To control exclusion, set "modindex_exclude" variable in Sphinx
|
||||||
# conf.py to the list of modules to exclude. Note: these should be
|
# conf.py to the list of modules to exclude. Note: these should be
|
||||||
# modules (as defined by py:module directive, not just raw filenames).
|
# modules (as defined by py:module directive, not just raw filenames).
|
||||||
|
|
|
@ -100,7 +100,7 @@ programming).
|
||||||
|
|
||||||
__WiFi__
|
__WiFi__
|
||||||
|
|
||||||
Initally, the device configures itself as a WiFi access point (AP).
|
Initially, the device configures itself as a WiFi access point (AP).
|
||||||
- ESSID: MicroPython-xxxxxx (x’s are replaced with part of the MAC address).
|
- ESSID: MicroPython-xxxxxx (x’s are replaced with part of the MAC address).
|
||||||
- Password: micropythoN (note the upper-case N).
|
- Password: micropythoN (note the upper-case N).
|
||||||
- IP address of the board: 192.168.4.1.
|
- IP address of the board: 192.168.4.1.
|
||||||
|
|
|
@ -93,7 +93,7 @@ void pyb_rtc_set_us_since_2000(uint64_t nowus) {
|
||||||
int64_t delta = nowus - (((uint64_t)rtc_last_ticks * cal) >> 12);
|
int64_t delta = nowus - (((uint64_t)rtc_last_ticks * cal) >> 12);
|
||||||
|
|
||||||
// As the calibration value jitters quite a bit, to make the
|
// As the calibration value jitters quite a bit, to make the
|
||||||
// clock at least somewhat practially usable, we need to store it
|
// clock at least somewhat practically usable, we need to store it
|
||||||
system_rtc_mem_write(MEM_CAL_ADDR, &cal, sizeof(cal));
|
system_rtc_mem_write(MEM_CAL_ADDR, &cal, sizeof(cal));
|
||||||
system_rtc_mem_write(MEM_DELTA_ADDR, &delta, sizeof(delta));
|
system_rtc_mem_write(MEM_DELTA_ADDR, &delta, sizeof(delta));
|
||||||
};
|
};
|
||||||
|
|
|
@ -8,7 +8,7 @@ lcd.light(1)
|
||||||
def conway_step():
|
def conway_step():
|
||||||
for x in range(128): # loop over x coordinates
|
for x in range(128): # loop over x coordinates
|
||||||
for y in range(32): # loop over y coordinates
|
for y in range(32): # loop over y coordinates
|
||||||
# count number of neigbours
|
# count number of neighbours
|
||||||
num_neighbours = (lcd.get(x - 1, y - 1) +
|
num_neighbours = (lcd.get(x - 1, y - 1) +
|
||||||
lcd.get(x, y - 1) +
|
lcd.get(x, y - 1) +
|
||||||
lcd.get(x + 1, y - 1) +
|
lcd.get(x + 1, y - 1) +
|
||||||
|
@ -25,7 +25,7 @@ def conway_step():
|
||||||
if self and not (2 <= num_neighbours <= 3):
|
if self and not (2 <= num_neighbours <= 3):
|
||||||
lcd.pixel(x, y, 0) # not enough, or too many neighbours: cell dies
|
lcd.pixel(x, y, 0) # not enough, or too many neighbours: cell dies
|
||||||
elif not self and num_neighbours == 3:
|
elif not self and num_neighbours == 3:
|
||||||
lcd.pixel(x, y, 1) # exactly 3 neigbours around an empty cell: cell is born
|
lcd.pixel(x, y, 1) # exactly 3 neighbours around an empty cell: cell is born
|
||||||
|
|
||||||
# randomise the start
|
# randomise the start
|
||||||
def conway_rand():
|
def conway_rand():
|
||||||
|
|
|
@ -170,7 +170,7 @@ SRC_QSTR_AUTO_DEPS +=
|
||||||
include $(MPTOP)/py/mkrules.mk
|
include $(MPTOP)/py/mkrules.mk
|
||||||
|
|
||||||
# Value of configure's --host= option (required for cross-compilation).
|
# Value of configure's --host= option (required for cross-compilation).
|
||||||
# Deduce it from CROSS_COMPILE by default, but can be overriden.
|
# Deduce it from CROSS_COMPILE by default, but can be overridden.
|
||||||
ifneq ($(CROSS_COMPILE),)
|
ifneq ($(CROSS_COMPILE),)
|
||||||
CROSS_COMPILE_HOST = --host=$(patsubst %-,%,$(CROSS_COMPILE))
|
CROSS_COMPILE_HOST = --host=$(patsubst %-,%,$(CROSS_COMPILE))
|
||||||
else
|
else
|
||||||
|
|
|
@ -18,7 +18,7 @@ Building the example is as simple as running:
|
||||||
It's worth to trace what's happening behind the scenes though:
|
It's worth to trace what's happening behind the scenes though:
|
||||||
|
|
||||||
1. As a first step, a MicroPython library is built. This is handled by a
|
1. As a first step, a MicroPython library is built. This is handled by a
|
||||||
seperate makefile, Makefile.upylib. It is more or less complex, but the
|
separate makefile, Makefile.upylib. It is more or less complex, but the
|
||||||
good news is that you won't need to change anything in it, just use it
|
good news is that you won't need to change anything in it, just use it
|
||||||
as is, the main Makefile shows how. What may require editing though is
|
as is, the main Makefile shows how. What may require editing though is
|
||||||
a MicroPython configuration file. MicroPython is highly configurable, so
|
a MicroPython configuration file. MicroPython is highly configurable, so
|
||||||
|
|
|
@ -373,7 +373,7 @@ STATIC err_t _lwip_tcp_recv(void *arg, struct tcp_pcb *tcpb, struct pbuf *p, err
|
||||||
}
|
}
|
||||||
|
|
||||||
/*******************************************************************************/
|
/*******************************************************************************/
|
||||||
// Functions for socket send/recieve operations. Socket send/recv and friends call
|
// Functions for socket send/receive operations. Socket send/recv and friends call
|
||||||
// these to do the work.
|
// these to do the work.
|
||||||
|
|
||||||
// Helper function for send/sendto to handle UDP packets.
|
// Helper function for send/sendto to handle UDP packets.
|
||||||
|
@ -805,7 +805,7 @@ STATIC mp_obj_t lwip_socket_connect(mp_obj_t self_in, mp_obj_t addr_in) {
|
||||||
mp_raise_OSError(MP_EINPROGRESS);
|
mp_raise_OSError(MP_EINPROGRESS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Register our recieve callback.
|
// Register our receive callback.
|
||||||
tcp_recv(socket->pcb.tcp, _lwip_tcp_recv);
|
tcp_recv(socket->pcb.tcp, _lwip_tcp_recv);
|
||||||
socket->state = STATE_CONNECTING;
|
socket->state = STATE_CONNECTING;
|
||||||
err = tcp_connect(socket->pcb.tcp, &dest, port, _lwip_tcp_connected);
|
err = tcp_connect(socket->pcb.tcp, &dest, port, _lwip_tcp_connected);
|
||||||
|
|
|
@ -132,7 +132,7 @@ STATIC mp_uint_t websocket_read(mp_obj_t self_in, void *buf, mp_uint_t size, int
|
||||||
|
|
||||||
self->buf_pos = 0;
|
self->buf_pos = 0;
|
||||||
self->to_recv = to_recv;
|
self->to_recv = to_recv;
|
||||||
self->msg_sz = sz; // May be overriden by FRAME_OPT
|
self->msg_sz = sz; // May be overridden by FRAME_OPT
|
||||||
if (to_recv != 0) {
|
if (to_recv != 0) {
|
||||||
self->state = FRAME_OPT;
|
self->state = FRAME_OPT;
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -165,7 +165,7 @@ mp_uint_t timeutils_mktime(mp_uint_t year, mp_int_t month, mp_int_t mday,
|
||||||
//
|
//
|
||||||
// tm_tomorrow = list(time.localtime())
|
// tm_tomorrow = list(time.localtime())
|
||||||
// tm_tomorrow[2] += 1 # Adds 1 to mday
|
// tm_tomorrow[2] += 1 # Adds 1 to mday
|
||||||
// tomorrow = time.mktime(tm_tommorrow)
|
// tomorrow = time.mktime(tm_tomorrow)
|
||||||
//
|
//
|
||||||
// And not have to worry about all the weird overflows.
|
// And not have to worry about all the weird overflows.
|
||||||
//
|
//
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
* implementation below can be used.
|
* implementation below can be used.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Send "cooked" string of given length, where every occurance of
|
// Send "cooked" string of given length, where every occurrence of
|
||||||
// LF character is replaced with CR LF.
|
// LF character is replaced with CR LF.
|
||||||
void mp_hal_stdout_tx_strn_cooked(const char *str, size_t len) {
|
void mp_hal_stdout_tx_strn_cooked(const char *str, size_t len) {
|
||||||
while (len--) {
|
while (len--) {
|
||||||
|
|
|
@ -52,7 +52,7 @@ void asm_thumb_end_pass(asm_thumb_t *as) {
|
||||||
|
|
||||||
#if defined(MCU_SERIES_F7)
|
#if defined(MCU_SERIES_F7)
|
||||||
if (as->base.pass == MP_ASM_PASS_EMIT) {
|
if (as->base.pass == MP_ASM_PASS_EMIT) {
|
||||||
// flush D-cache, so the code emited is stored in memory
|
// flush D-cache, so the code emitted is stored in memory
|
||||||
SCB_CleanDCache_by_Addr((uint32_t*)as->base.code_base, as->base.code_size);
|
SCB_CleanDCache_by_Addr((uint32_t*)as->base.code_base, as->base.code_size);
|
||||||
// invalidate I-cache
|
// invalidate I-cache
|
||||||
SCB_InvalidateICache();
|
SCB_InvalidateICache();
|
||||||
|
|
|
@ -271,7 +271,7 @@ mp_obj_t mp_builtin___import__(size_t n_args, const mp_obj_t *args) {
|
||||||
if (level != 0) {
|
if (level != 0) {
|
||||||
// What we want to do here is to take name of current module,
|
// What we want to do here is to take name of current module,
|
||||||
// chop <level> trailing components, and concatenate with passed-in
|
// chop <level> trailing components, and concatenate with passed-in
|
||||||
// module name, thus resolving relative import name into absolue.
|
// module name, thus resolving relative import name into absolute.
|
||||||
// This even appears to be correct per
|
// This even appears to be correct per
|
||||||
// http://legacy.python.org/dev/peps/pep-0328/#relative-imports-and-name
|
// http://legacy.python.org/dev/peps/pep-0328/#relative-imports-and-name
|
||||||
// "Relative imports use a module's __name__ attribute to determine that
|
// "Relative imports use a module's __name__ attribute to determine that
|
||||||
|
@ -441,7 +441,7 @@ mp_obj_t mp_builtin___import__(size_t n_args, const mp_obj_t *args) {
|
||||||
#if MICROPY_CPYTHON_COMPAT
|
#if MICROPY_CPYTHON_COMPAT
|
||||||
// Store module as "__main__" in the dictionary of loaded modules (returned by sys.modules).
|
// Store module as "__main__" in the dictionary of loaded modules (returned by sys.modules).
|
||||||
mp_obj_dict_store(MP_OBJ_FROM_PTR(&MP_STATE_VM(mp_loaded_modules_dict)), MP_OBJ_NEW_QSTR(MP_QSTR___main__), module_obj);
|
mp_obj_dict_store(MP_OBJ_FROM_PTR(&MP_STATE_VM(mp_loaded_modules_dict)), MP_OBJ_NEW_QSTR(MP_QSTR___main__), module_obj);
|
||||||
// Store real name in "__main__" attribute. Choosen semi-randonly, to reuse existing qstr's.
|
// Store real name in "__main__" attribute. Chosen semi-randonly, to reuse existing qstr's.
|
||||||
mp_obj_dict_store(MP_OBJ_FROM_PTR(o->globals), MP_OBJ_NEW_QSTR(MP_QSTR___main__), MP_OBJ_NEW_QSTR(mod_name));
|
mp_obj_dict_store(MP_OBJ_FROM_PTR(o->globals), MP_OBJ_NEW_QSTR(MP_QSTR___main__), MP_OBJ_NEW_QSTR(mod_name));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
|
@ -939,7 +939,7 @@ STATIC void c_del_stmt(compiler_t *comp, mp_parse_node_t pn) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// some arbitrary statment that we can't delete (eg del 1)
|
// some arbitrary statement that we can't delete (eg del 1)
|
||||||
goto cannot_delete;
|
goto cannot_delete;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1090,7 +1090,7 @@ STATIC void compile_import_name(compiler_t *comp, mp_parse_node_struct_t *pns) {
|
||||||
STATIC void compile_import_from(compiler_t *comp, mp_parse_node_struct_t *pns) {
|
STATIC void compile_import_from(compiler_t *comp, mp_parse_node_struct_t *pns) {
|
||||||
mp_parse_node_t pn_import_source = pns->nodes[0];
|
mp_parse_node_t pn_import_source = pns->nodes[0];
|
||||||
|
|
||||||
// extract the preceeding .'s (if any) for a relative import, to compute the import level
|
// extract the preceding .'s (if any) for a relative import, to compute the import level
|
||||||
uint import_level = 0;
|
uint import_level = 0;
|
||||||
do {
|
do {
|
||||||
mp_parse_node_t pn_rel;
|
mp_parse_node_t pn_rel;
|
||||||
|
|
|
@ -197,7 +197,7 @@ int DEBUG_printf(const char *fmt, ...);
|
||||||
extern mp_uint_t mp_verbose_flag;
|
extern mp_uint_t mp_verbose_flag;
|
||||||
|
|
||||||
// This is useful for unicode handling. Some CPU archs has
|
// This is useful for unicode handling. Some CPU archs has
|
||||||
// special instructions for efficient implentation of this
|
// special instructions for efficient implementation of this
|
||||||
// function (e.g. CLZ on ARM).
|
// function (e.g. CLZ on ARM).
|
||||||
// NOTE: this function is unused at the moment
|
// NOTE: this function is unused at the moment
|
||||||
#ifndef count_lead_ones
|
#ifndef count_lead_ones
|
||||||
|
|
|
@ -32,7 +32,7 @@ ifeq ($(BUILD_VERBOSE),0)
|
||||||
$(info Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.)
|
$(info Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# default settings; can be overriden in main Makefile
|
# default settings; can be overridden in main Makefile
|
||||||
|
|
||||||
PY_SRC ?= $(TOP)/py
|
PY_SRC ?= $(TOP)/py
|
||||||
BUILD ?= build
|
BUILD ?= build
|
||||||
|
|
|
@ -32,7 +32,7 @@
|
||||||
|
|
||||||
// mpconfigport.h is a file containing configuration settings for a
|
// mpconfigport.h is a file containing configuration settings for a
|
||||||
// particular port. mpconfigport.h is actually a default name for
|
// particular port. mpconfigport.h is actually a default name for
|
||||||
// such config, and it can be overriden using MP_CONFIGFILE preprocessor
|
// such config, and it can be overridden using MP_CONFIGFILE preprocessor
|
||||||
// define (you can do that by passing CFLAGS_EXTRA='-DMP_CONFIGFILE="<file.h>"'
|
// define (you can do that by passing CFLAGS_EXTRA='-DMP_CONFIGFILE="<file.h>"'
|
||||||
// argument to make when using standard MicroPython makefiles).
|
// argument to make when using standard MicroPython makefiles).
|
||||||
// This is useful to have more than one config per port, for example,
|
// This is useful to have more than one config per port, for example,
|
||||||
|
|
2
py/obj.c
2
py/obj.c
|
@ -401,7 +401,7 @@ mp_obj_t mp_obj_id(mp_obj_t o_in) {
|
||||||
return MP_OBJ_NEW_SMALL_INT(id);
|
return MP_OBJ_NEW_SMALL_INT(id);
|
||||||
} else {
|
} else {
|
||||||
// If that didn't work, well, let's return long int, just as
|
// If that didn't work, well, let's return long int, just as
|
||||||
// a (big) positve value, so it will never clash with the range
|
// a (big) positive value, so it will never clash with the range
|
||||||
// of small int returned in previous case.
|
// of small int returned in previous case.
|
||||||
return mp_obj_new_int_from_uint((mp_uint_t)id);
|
return mp_obj_new_int_from_uint((mp_uint_t)id);
|
||||||
}
|
}
|
||||||
|
|
|
@ -798,7 +798,7 @@ STATIC mp_obj_t str_uni_strip(int type, size_t n_args, const mp_obj_t *args) {
|
||||||
}
|
}
|
||||||
|
|
||||||
assert(last_good_char_pos >= first_good_char_pos);
|
assert(last_good_char_pos >= first_good_char_pos);
|
||||||
//+1 to accomodate the last character
|
//+1 to accommodate the last character
|
||||||
size_t stripped_len = last_good_char_pos - first_good_char_pos + 1;
|
size_t stripped_len = last_good_char_pos - first_good_char_pos + 1;
|
||||||
if (stripped_len == orig_str_len) {
|
if (stripped_len == orig_str_len) {
|
||||||
// If nothing was stripped, don't bother to dup original string
|
// If nothing was stripped, don't bother to dup original string
|
||||||
|
@ -1811,7 +1811,7 @@ STATIC mp_obj_t str_islower(mp_obj_t self_in) {
|
||||||
}
|
}
|
||||||
|
|
||||||
#if MICROPY_CPYTHON_COMPAT
|
#if MICROPY_CPYTHON_COMPAT
|
||||||
// These methods are superfluous in the presense of str() and bytes()
|
// These methods are superfluous in the presence of str() and bytes()
|
||||||
// constructors.
|
// constructors.
|
||||||
// TODO: should accept kwargs too
|
// TODO: should accept kwargs too
|
||||||
STATIC mp_obj_t bytes_decode(size_t n_args, const mp_obj_t *args) {
|
STATIC mp_obj_t bytes_decode(size_t n_args, const mp_obj_t *args) {
|
||||||
|
|
2
py/py.mk
2
py/py.mk
|
@ -25,7 +25,7 @@ ifeq ($(MICROPY_SSL_AXTLS),1)
|
||||||
CFLAGS_MOD += -DMICROPY_SSL_AXTLS=1 -I../lib/axtls/ssl -I../lib/axtls/crypto -I../lib/axtls/config
|
CFLAGS_MOD += -DMICROPY_SSL_AXTLS=1 -I../lib/axtls/ssl -I../lib/axtls/crypto -I../lib/axtls/config
|
||||||
LDFLAGS_MOD += -Lbuild -laxtls
|
LDFLAGS_MOD += -Lbuild -laxtls
|
||||||
else ifeq ($(MICROPY_SSL_MBEDTLS),1)
|
else ifeq ($(MICROPY_SSL_MBEDTLS),1)
|
||||||
# Can be overriden by ports which have "builtin" mbedTLS
|
# Can be overridden by ports which have "builtin" mbedTLS
|
||||||
MICROPY_SSL_MBEDTLS_INCLUDE ?= ../lib/mbedtls/include
|
MICROPY_SSL_MBEDTLS_INCLUDE ?= ../lib/mbedtls/include
|
||||||
CFLAGS_MOD += -DMICROPY_SSL_MBEDTLS=1 -I$(MICROPY_SSL_MBEDTLS_INCLUDE)
|
CFLAGS_MOD += -DMICROPY_SSL_MBEDTLS=1 -I$(MICROPY_SSL_MBEDTLS_INCLUDE)
|
||||||
LDFLAGS_MOD += -L../lib/mbedtls/library -lmbedx509 -lmbedtls -lmbedcrypto
|
LDFLAGS_MOD += -L../lib/mbedtls/library -lmbedx509 -lmbedtls -lmbedcrypto
|
||||||
|
|
|
@ -33,7 +33,7 @@ typedef struct _ringbuf_t {
|
||||||
uint16_t iput;
|
uint16_t iput;
|
||||||
} ringbuf_t;
|
} ringbuf_t;
|
||||||
|
|
||||||
// Static initalization:
|
// Static initialization:
|
||||||
// byte buf_array[N];
|
// byte buf_array[N];
|
||||||
// ringbuf_t buf = {buf_array, sizeof(buf_array)};
|
// ringbuf_t buf = {buf_array, sizeof(buf_array)};
|
||||||
|
|
||||||
|
|
|
@ -51,7 +51,7 @@ STATIC mp_obj_t stream_readall(mp_obj_t self_in);
|
||||||
#define STREAM_CONTENT_TYPE(stream) (((stream)->is_text) ? &mp_type_str : &mp_type_bytes)
|
#define STREAM_CONTENT_TYPE(stream) (((stream)->is_text) ? &mp_type_str : &mp_type_bytes)
|
||||||
|
|
||||||
// Returns error condition in *errcode, if non-zero, return value is number of bytes written
|
// Returns error condition in *errcode, if non-zero, return value is number of bytes written
|
||||||
// before error condition occured. If *errcode == 0, returns total bytes written (which will
|
// before error condition occurred. If *errcode == 0, returns total bytes written (which will
|
||||||
// be equal to input size).
|
// be equal to input size).
|
||||||
mp_uint_t mp_stream_rw(mp_obj_t stream, void *buf_, mp_uint_t size, int *errcode, byte flags) {
|
mp_uint_t mp_stream_rw(mp_obj_t stream, void *buf_, mp_uint_t size, int *errcode, byte flags) {
|
||||||
byte *buf = buf_;
|
byte *buf = buf_;
|
||||||
|
|
4
py/vm.c
4
py/vm.c
|
@ -947,7 +947,7 @@ unwind_jump:;
|
||||||
DECODE_UINT;
|
DECODE_UINT;
|
||||||
// unum & 0xff == n_positional
|
// unum & 0xff == n_positional
|
||||||
// (unum >> 8) & 0xff == n_keyword
|
// (unum >> 8) & 0xff == n_keyword
|
||||||
// We have folowing stack layout here:
|
// We have following stack layout here:
|
||||||
// fun arg0 arg1 ... kw0 val0 kw1 val1 ... seq dict <- TOS
|
// fun arg0 arg1 ... kw0 val0 kw1 val1 ... seq dict <- TOS
|
||||||
sp -= (unum & 0xff) + ((unum >> 7) & 0x1fe) + 2;
|
sp -= (unum & 0xff) + ((unum >> 7) & 0x1fe) + 2;
|
||||||
#if MICROPY_STACKLESS
|
#if MICROPY_STACKLESS
|
||||||
|
@ -1018,7 +1018,7 @@ unwind_jump:;
|
||||||
DECODE_UINT;
|
DECODE_UINT;
|
||||||
// unum & 0xff == n_positional
|
// unum & 0xff == n_positional
|
||||||
// (unum >> 8) & 0xff == n_keyword
|
// (unum >> 8) & 0xff == n_keyword
|
||||||
// We have folowing stack layout here:
|
// We have following stack layout here:
|
||||||
// fun self arg0 arg1 ... kw0 val0 kw1 val1 ... seq dict <- TOS
|
// fun self arg0 arg1 ... kw0 val0 kw1 val1 ... seq dict <- TOS
|
||||||
sp -= (unum & 0xff) + ((unum >> 7) & 0x1fe) + 3;
|
sp -= (unum & 0xff) + ((unum >> 7) & 0x1fe) + 3;
|
||||||
#if MICROPY_STACKLESS
|
#if MICROPY_STACKLESS
|
||||||
|
|
|
@ -4,7 +4,7 @@ provided by QEMU (http://qemu.org).
|
||||||
The purposes of this port are to enable:
|
The purposes of this port are to enable:
|
||||||
|
|
||||||
1. Continuous integration
|
1. Continuous integration
|
||||||
- run tests agains architecture-specific parts of code base
|
- run tests against architecture-specific parts of code base
|
||||||
2. Experimentation
|
2. Experimentation
|
||||||
- simulation & prototyping of anything that has architecture-specific
|
- simulation & prototyping of anything that has architecture-specific
|
||||||
code
|
code
|
||||||
|
|
|
@ -76,7 +76,7 @@ T4 = namedtuple("TupTuple", ("foo", "bar"))
|
||||||
t = T4(1, 2)
|
t = T4(1, 2)
|
||||||
print(t.foo, t.bar)
|
print(t.foo, t.bar)
|
||||||
|
|
||||||
# Try single string with comma field seperator
|
# Try single string with comma field separator
|
||||||
# Not implemented so far
|
# Not implemented so far
|
||||||
#T2 = namedtuple("TupComma", "foo,bar")
|
#T2 = namedtuple("TupComma", "foo,bar")
|
||||||
#t = T2(1, 2)
|
#t = T2(1, 2)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Reraise not the latest occured exception
|
# Reraise not the latest occurred exception
|
||||||
def f():
|
def f():
|
||||||
try:
|
try:
|
||||||
raise ValueError("val", 3)
|
raise ValueError("val", 3)
|
||||||
|
|
|
@ -158,7 +158,7 @@ print(can.recv(1))
|
||||||
|
|
||||||
del can
|
del can
|
||||||
|
|
||||||
# Testing asyncronous send
|
# Testing asynchronous send
|
||||||
can = CAN(1, CAN.LOOPBACK)
|
can = CAN(1, CAN.LOOPBACK)
|
||||||
can.setfilter(0, CAN.MASK16, 0, (0, 0, 0, 0))
|
can.setfilter(0, CAN.MASK16, 0, (0, 0, 0, 0))
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
#
|
#
|
||||||
# The AES code comes first (code originates from a C version authored by D.P.George)
|
# The AES code comes first (code originates from a C version authored by D.P.George)
|
||||||
# and then the test harness at the bottom. It can be tuned to be more/less
|
# and then the test harness at the bottom. It can be tuned to be more/less
|
||||||
# agressive by changing the amount of data to encrypt, the number of loops and
|
# aggressive by changing the amount of data to encrypt, the number of loops and
|
||||||
# the number of threads.
|
# the number of threads.
|
||||||
#
|
#
|
||||||
# MIT license; Copyright (c) 2016 Damien P. George on behalf of Pycom Ltd
|
# MIT license; Copyright (c) 2016 Damien P. George on behalf of Pycom Ltd
|
||||||
|
|
|
@ -95,7 +95,7 @@ print(uart1.read() == None)
|
||||||
print(uart1.write(b'123') == 3)
|
print(uart1.write(b'123') == 3)
|
||||||
print(uart0.read() == b'123')
|
print(uart0.read() == b'123')
|
||||||
|
|
||||||
# no pin assignemnt
|
# no pin assignment
|
||||||
uart0 = UART(0, 1000000, pins=(None, None))
|
uart0 = UART(0, 1000000, pins=(None, None))
|
||||||
print(uart0.write(b'123456789') == 9)
|
print(uart0.write(b'123456789') == 9)
|
||||||
print(uart1.read() == None)
|
print(uart1.read() == None)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Reads the USB VID and PID from the file specifed by sys.arg[1] and then
|
# Reads the USB VID and PID from the file specified by sys.argv[1] and then
|
||||||
# inserts those values into the template file specified by sys.argv[2],
|
# inserts those values into the template file specified by sys.argv[2],
|
||||||
# printing the result to stdout
|
# printing the result to stdout
|
||||||
|
|
||||||
|
|
|
@ -69,7 +69,7 @@ class TelnetToSerial:
|
||||||
self.tn.write(bytes(password, 'ascii') + b"\r\n")
|
self.tn.write(bytes(password, 'ascii') + b"\r\n")
|
||||||
|
|
||||||
if b'for more information.' in self.tn.read_until(b'Type "help()" for more information.', timeout=read_timeout):
|
if b'for more information.' in self.tn.read_until(b'Type "help()" for more information.', timeout=read_timeout):
|
||||||
# login succesful
|
# login successful
|
||||||
from collections import deque
|
from collections import deque
|
||||||
self.fifo = deque()
|
self.fifo = deque()
|
||||||
return
|
return
|
||||||
|
|
|
@ -262,7 +262,7 @@ coverage_test: coverage
|
||||||
gcov -o build-coverage/extmod ../extmod/*.c
|
gcov -o build-coverage/extmod ../extmod/*.c
|
||||||
|
|
||||||
# Value of configure's --host= option (required for cross-compilation).
|
# Value of configure's --host= option (required for cross-compilation).
|
||||||
# Deduce it from CROSS_COMPILE by default, but can be overriden.
|
# Deduce it from CROSS_COMPILE by default, but can be overridden.
|
||||||
ifneq ($(CROSS_COMPILE),)
|
ifneq ($(CROSS_COMPILE),)
|
||||||
CROSS_COMPILE_HOST = --host=$(patsubst %-,%,$(CROSS_COMPILE))
|
CROSS_COMPILE_HOST = --host=$(patsubst %-,%,$(CROSS_COMPILE))
|
||||||
else
|
else
|
||||||
|
|
|
@ -58,7 +58,7 @@
|
||||||
from socket_more_funcs2 import *
|
from socket_more_funcs2 import *
|
||||||
-------------------
|
-------------------
|
||||||
I.e. this module should stay lean, and more functions (if needed)
|
I.e. this module should stay lean, and more functions (if needed)
|
||||||
should be add to seperate modules (C or Python level).
|
should be add to separate modules (C or Python level).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define MICROPY_SOCKET_EXTRA (0)
|
#define MICROPY_SOCKET_EXTRA (0)
|
||||||
|
|
|
@ -72,7 +72,7 @@ void mp_hal_stdio_mode_orig(void) {
|
||||||
// Previous versions of the mp_hal code would install a handler whenever Ctrl-C input is
|
// Previous versions of the mp_hal code would install a handler whenever Ctrl-C input is
|
||||||
// allowed and remove the handler again when it is not. That is not necessary though (1),
|
// allowed and remove the handler again when it is not. That is not necessary though (1),
|
||||||
// and it might introduce problems (2) because console notifications are delivered to the
|
// and it might introduce problems (2) because console notifications are delivered to the
|
||||||
// application in a seperate thread.
|
// application in a separate thread.
|
||||||
// (1) mp_hal_set_interrupt_char effectively enables/disables processing of Ctrl-C via the
|
// (1) mp_hal_set_interrupt_char effectively enables/disables processing of Ctrl-C via the
|
||||||
// ENABLE_PROCESSED_INPUT flag so in raw mode console_sighandler won't be called.
|
// ENABLE_PROCESSED_INPUT flag so in raw mode console_sighandler won't be called.
|
||||||
// (2) if mp_hal_set_interrupt_char would remove the handler while Ctrl-C was issued earlier,
|
// (2) if mp_hal_set_interrupt_char would remove the handler while Ctrl-C was issued earlier,
|
||||||
|
|
|
@ -36,7 +36,7 @@
|
||||||
#include "extmod/utime_mphal.h"
|
#include "extmod/utime_mphal.h"
|
||||||
|
|
||||||
STATIC mp_obj_t mod_time_time(void) {
|
STATIC mp_obj_t mod_time_time(void) {
|
||||||
/* The absense of FP support is deliberate. The Zephyr port uses
|
/* The absence of FP support is deliberate. The Zephyr port uses
|
||||||
* single precision floats so the fraction component will start to
|
* single precision floats so the fraction component will start to
|
||||||
* lose precision on devices with a long uptime.
|
* lose precision on devices with a long uptime.
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue