| Commit message (Collapse) | Author | Age |
|\
| |
| | |
Add support for storing args during an exception raised by an irq.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The user code should call micropython.alloc_emergency_exception_buf(size)
where size is the size of the buffer used to print the argument
passed to the exception.
With the test code from #732, and a call to
micropython.alloc_emergenncy_exception_buf(100) the following error is
now printed:
```python
>>> import heartbeat_irq
Uncaught exception in Timer(4) interrupt handler
Traceback (most recent call last):
File "0://heartbeat_irq.py", line 14, in heartbeat_cb
NameError: name 'led' is not defined
```
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Many OSes/CPUs have affinity to put "user" data into lower half of address
space. Take advantage of that and remap such addresses into full small int
range (including negative part).
If address is from upper half, long int will be used. Previously, small
int was returned for lower quarter of address space, and upper quarter. For
2 middle quarters, long int was used, which is clearly worse schedule than
the above.
|
|/ |
|
|
|
|
| |
Addresses issue #765.
|
| |
|
| |
|
|
|
|
| |
With this fix, file_long_read now passes.
|
|
|
|
|
| |
And not system printf(), like it was before. For this, move pfenv_printf()
from stmhal port to py/.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With unicode enabled, this patch allows reading a fixed number of
characters from text-mode streams; eg file.read(5) will read 5 unicode
chars, which can made of more than 5 bytes.
For an ASCII stream (ie no chars > 127) it only needs to do 1 read. If
there are lots of non-ASCII chars in a stream, then it needs multiple
reads of the underlying object.
Adds a new test for this case. Enables unicode support by default on
unix and stmhal ports.
|
| |
|
| |
|
|
|
|
| |
Addresses issue #753.
|
| |
|
| |
|
|
|
|
|
|
|
| |
dummy_data field is accessed as uint value (e.g.
in emit_write_bytecode_byte_ptr), but is not aligned as such, which causes
bus errors or incorrect behavior on any arch requiring strictly aligned
data (ARM pre-v7, MIPS, etc, etc).
|
| |
|
|
|
|
|
| |
But much smaller and memory-efficient. Uses Python builtin data structures
(dict, tuple, int) to describe structure layout.
|
| |
|
|
|
|
| |
Addresses issue #622.
|
|
|
|
|
| |
Implementing it as a static constant is a bit peculiar and require cooperation
from long int implementation.
|
| |
|
| |
|
|
|
|
| |
See discussion in issue #50.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
dhylands-teensy-new
Conflicts:
stmhal/pin_named_pins.c
stmhal/readline.c
Renamed HAL_H to MICROPY_HAL_H. Made stmhal/mphal.h which intends to
define the generic Micro Python HAL, which in stmhal sits above the ST
HAL.
|
| |
| |
| |
| | |
Refactored some stmhal files which are shared with teensy.
|
| | |
|
|\ \
| | |
| | |
| | | |
dhylands-preserve-except
|
| | |
| | |
| | |
| | |
| | |
| | | |
handling.
Step 1 fixes #732
|
| | | |
|
|\ \ \
| | | |
| | | | |
Fix assert_func warning/error
|
| | | |
| | | |
| | | |
| | | |
| | | | |
* Add while(1) to assert_func to avoid func returns warning
* Define a weak attr in mpconfig.h
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Native emitter can now compile try/except blocks using nlr_push/nlr_pop.
It probably only works for 1 level of exception handling. It doesn't
work on Thumb (only x64).
Native emitter can also handle some additional op codes.
With this patch, 198 tests now pass using "-X emit=native" option to
micropython.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
- rearrange/add definitions that were not there so it's easier to compare both
- use MICROPY_PY_SYS_PLATFORM in main.c since it's available anyway
- define EWOULDBLOCK, it is missing from ingw32
|
| | | | |
|
| | | | |
|
| | | | |
|
|\ \ \ \
| | |/ /
| |/| |
| | | |
| | | | |
Conflicts:
py/mpconfig.h
|
| | | |
| | | |
| | | |
| | | | |
With a test which cannot be automatically validated so far.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
array.array and bytearray share big deal of code, so to get real savings,
both need to be disabled.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
As stack checking is enabled by default, ports which don't call
stack_ctrl_init() are broken now (report RuntimeError on startup). Save
them trouble and just init stack control framework in interpreter init.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
Based on config define.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Useful when we have pointer to char inside string, but need to return char
index. (E.g. str.find()).
|