Damien George
690458300b
extmod/modure: Make num_matches store actual number of matches.
2015-02-18 14:47:14 +00:00
Paul Sokolovsky
8c705233f3
py: Fix mp_obj_print() to work when Python streams are not used.
2015-02-17 00:32:18 +02:00
Paul Sokolovsky
1f91e92cc6
py: Revamp mp_obj_print() to use Python streams.
...
Most of printing infrastructure now uses streams, but mp_obj_print() used
libc's printf(), which led to weird buffering issues in output. So, switch
mp_obj_print() to streams too, even though it may make sense to move it to
a separate file, as it is purely a debugging function now.
2015-02-17 00:13:01 +02:00
Damien George
eff10f66a6
py: Implement bl/bx instructions for inline Thumb assembler.
2015-02-16 18:17:07 +00:00
Damien George
42495392da
py: Implement "it" instruction for inline Thumb assembler.
2015-02-16 17:46:49 +00:00
Damien George
3d7bf5d4b1
py: More robust checking in inline assembler compiler.
2015-02-16 17:46:28 +00:00
Damien George
b191038198
qemu-arm: Enable source line numbers, for easier debugging.
2015-02-16 17:45:34 +00:00
Paul Sokolovsky
ee831cafa9
tests: Add another testcase for relative imports.
2015-02-16 12:11:41 +02:00
Paul Sokolovsky
9e6c82960e
builtinimport: Revamp&refactor handling of relative imports.
...
Relative imports are based of a package, so we're currently at a module
within a package, we should get to package first.
Also, factor out path travsering operation, but this broke testing for
boundary errors with relative imports. TODO: reintroduce them, together
with proper tests.
2015-02-16 12:11:34 +02:00
Paul Sokolovsky
078172dcab
builtinimport: Improve debugging output.
2015-02-16 12:11:03 +02:00
Paul Sokolovsky
e8432b3c72
stackctrl: Encode "recursion depth exceeded" message as qstr.
...
So corresponding exception can be thrown even under tight memory conditions.
2015-02-15 22:41:14 +03:00
Paul Sokolovsky
fa3b895145
objexcept: Optimize traceback allocation for exception.
...
Traceback allocation for exception will now never lead to recursive
MemoryError exception - if there's no memory for traceback, it simply
won't be created.
2015-02-15 22:41:14 +03:00
Paul Sokolovsky
29c4f92e13
objexcept: Optimize using messages without formatting substitutions.
...
They are directly cast to str object, skipping allocation of formatting
buffer.
2015-02-15 22:41:14 +03:00
Paul Sokolovsky
3077fbff26
nlr: Add even more optional debugging logging.
...
Has to be enabled by manual editing, but at least it's there, as debugging
NLR issues may be weird.
2015-02-15 20:28:18 +03:00
Paul Sokolovsky
e89cc13e5c
nlr: If DEBUG, guard against recursive nlr_push().
...
Pushing same NLR record twice would lead to "infinite loop" in nlr_jump
(but more realistically, it will crash as soon as NLR record on stack is
overwritten).
2015-02-15 20:23:52 +03:00
Paul Sokolovsky
53e5e0fa28
py: Make old_globals part of mp_code_state structure.
...
Conceptually it is part of code state, so let it be allocated in the same way
as the rest of state.
2015-02-15 19:24:15 +03:00
Damien George
e5039c6ff8
py: Use TextIOWrapper only if PY_IO_FILEIO def'd; cast size_t for print.
2015-02-15 13:17:11 +00:00
Henrik Sölver
f80f1a7077
stmhal: Add support for CAN rx callbacks.
2015-02-15 03:10:53 +00:00
Damien George
ed8b4da0db
tests: Remove obsolete test; don't use fp in micropython/ tests.
2015-02-15 01:57:39 +00:00
Damien George
f6532bb9e0
py: Simplify and remove redundant code for __iter__ method lookup.
2015-02-15 01:10:13 +00:00
Damien George
d1c3788375
py: Fix loading of immediate pointer in Thumb assembler.
...
Addresses issue #1117 .
2015-02-15 00:45:28 +00:00
Damien George
0868942e77
py: Check for valid file when creating lexer for execfile.
...
Addresses issue #1119 .
2015-02-15 00:02:27 +00:00
stijn
1b8e76b8e6
py: Cleanup duplication in instance_is_callable/instance_call.
2015-02-14 23:49:04 +00:00
stijn
c1832fd206
py: Add setattr builtin.
2015-02-14 23:35:00 +00:00
Damien George
aa730620bb
stmhal: Fix setting of VID.
2015-02-13 22:25:55 +00:00
Damien George
87c6250b4c
esp8266: Add basic pyb.Pin class; supports output mode only.
2015-02-13 22:21:44 +00:00
Damien George
baafb290ad
stmhal: Add uart.sendbreak() method, to send a break condition.
2015-02-13 19:04:24 +00:00
Paul Sokolovsky
089c3f321e
py/asm*.c: Typo fixes in comments.
2015-02-14 02:20:35 +08:00
danicampora
99f3f6b5de
cc3200: Add I2C module. Only master mode is currently supported.
2015-02-13 17:54:04 +01:00
Damien George
601c814603
minimal: Allow to compile without defining MICROPY_HAL_H.
2015-02-13 15:26:53 +00:00
Damien George
ccf45a4283
cc3200: Get bootloader compiling with changes to HAL.
2015-02-13 15:26:22 +00:00
Damien George
0b32e50365
stmhal: Make pybstdio usable by other ports, and use it.
...
Now all ports can use pybstdio.c to provide sys.stdin/stdout/stderr, so
long as they implement mp_hal_stdin_* and mp_hal_stdout_* functions.
2015-02-13 15:04:53 +00:00
Damien George
c385a639e6
stmhal: Remove obsolete usbdev file.
2015-02-13 14:03:44 +00:00
Damien George
b157a99a8b
stmhal: Coding style cleanup in usbd_cdc_msc_hid.c.
2015-02-13 14:02:51 +00:00
Damien George
55d6218b9a
stmhal: Properly define pyb.usb_mode() semantics.
2015-02-13 14:02:51 +00:00
Damien George
65af7ebdc5
stmhal: Put CDC last in config descriptors to match with iface nums.
...
Apparently the order of interface numbers should be sequential and
increasing in a config descriptor. So as to retain compatibility with
Windows drivers for the CDC+MSC and CDC+HID modes, we move the CDC
configs to the end of the descriptors, instead of changing the interface
numbers.
See PR #957 for background.
2015-02-13 14:02:51 +00:00
Damien George
39ce2db181
stmhal: Add "CDC" option to pyb.usb_mode, for CDC device only.
2015-02-13 14:02:51 +00:00
Damien George
d39c7aa517
stmhal: Add Python-configurable USB HID mode.
...
Different HID modes can be configured in Python. You can either use
predefined mouse or keyboard, or write your own report descriptor.
2015-02-13 14:02:51 +00:00
Damien George
b384bcc5de
stmhal: Remove unused usbdev files, and move used ones up a dir.
...
The unused files are from the ST demos for different USB classes and are
not needed for the stmhal port.
2015-02-13 14:02:51 +00:00
Damien George
fb2006cc69
tools: Make gen-changelog.sh sort version strings correctly.
2015-02-13 13:31:02 +00:00
Damien George
79dc0a0886
docs: Bump version to 1.3.10.
2015-02-13 13:26:44 +00:00
Damien George
418ec8bbba
stmhal: Properly deinit timer object.
...
Addresses issue #1113 .
2015-02-13 11:57:29 +00:00
Damien George
192d536fe4
py: Implement clz and rbit for inline Thumb assembler.
2015-02-13 11:06:23 +00:00
Damien George
32f0b7942c
py: Implement sdiv/udiv for inline Thumb assembler.
2015-02-13 10:43:05 +00:00
Damien George
0d967b8ae4
py: Implement push/pop for inline Thumb assembler.
2015-02-13 02:30:35 +00:00
Damien George
dfe944c3e5
py: Expose compile.c:list_get as mp_parse_node_extract_list.
2015-02-13 02:29:46 +00:00
Damien George
8dfbd2d589
py: Make inline assembler raise proper SyntaxError exception on error.
...
Also gives line number of location of error. Very useful!
2015-02-13 01:00:51 +00:00
Damien George
1bf5a022fe
py: Add ldrex and strex to thumb2 inline assembler.
...
These are useful for implementing atomic lock operations.
2015-02-12 22:52:42 +00:00
Damien George
91fc4a9ce1
stmhal: Fix ADC multiplier from 4096 to 4095; optimise fp operation.
2015-02-11 00:25:22 +00:00
Paul Sokolovsky
99bcaa2fb6
modffi: Add toplevel func() function to create a function by pointer.
2015-02-11 07:21:03 +08:00