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
Damien George
891e444fec
stmhal: Add boot.py and main.py to qstr definitions, to save some RAM.
2015-02-10 22:27:47 +00:00
Damien George
596f41da04
py: Reuse value stack in VM WITH_CLEANUP opcode to reduce C-stack size.
...
Saves 8 bytes C-stack on stmhal and 16 bytes on unix x86.
2015-02-10 13:21:42 +00:00
Damien George
ea0461dcd3
py: Add option to micropython.qstr_info() to dump actual qstrs.
2015-02-10 11:02:28 +00:00
danicampora
53716fcc3e
cc3200: Rename GPIO module to Pin.
...
This change helps making the cc3200 port API a bit closer to stmhal.
The ramaining differences are due to the specific hardware details
of each chip. One feature that has been deliberately disabled is the
possibility to add custom names and custom pin mappings. Those
features are nice and convenient, but in this port, code size is a
major concern.
2015-02-09 20:01:54 +01:00
Damien George
d0df10b2c6
py: Don't unnecessarily create a bound method.
2015-02-09 16:59:15 +00:00
Damien George
48244044a2
py: Allow subclass of native object to delegate to the native buffer_p.
...
Addresses issue #1109 .
2015-02-09 15:08:00 +00:00
Damien George
1a6721fefd
py: Remove obsolete MP_F_LOAD_CONST_{INT,DEC} from emitnative.c.
2015-02-09 14:53:16 +00:00
danicampora
f8146d021b
cc3200: Add bootmanager relocator to the repository.
...
This file was accidentally skipped when the cc3200 port was added to the
tree since binary files are by default igonerd by git. This is a small
precompiled piece of software provided by TI that simply relocates the
boot manager to the beginning of the RAM space after it has been written
by the ROM bootloader.
2015-02-09 15:03:12 +01:00
Paul Sokolovsky
194117a066
objstr: Fix bytes creation from array of long ints.
2015-02-09 12:11:49 +08:00
Damien George
28631537bd
py: Add MICROPY_OBJ_BASE_ALIGNMENT to help with 16-bit ports.
2015-02-08 13:42:00 +00:00
Damien George
5351a48185
stmhal: Change type of received chr from char to int.
2015-02-08 13:41:28 +00:00
Damien George
f804833a97
py: Initialise variables in mp_parse correctly, to satisfy gcc warning.
2015-02-08 13:40:20 +00:00
Damien George
7d414a1b52
py: Parse big-int/float/imag constants directly in parser.
...
Previous to this patch, a big-int, float or imag constant was interned
(made into a qstr) and then parsed at runtime to create an object each
time it was needed. This is wasteful in RAM and not efficient. Now,
these constants are parsed straight away in the parser and turned into
objects. This allows constants with large numbers of digits (so
addresses issue #1103 ) and takes us a step closer to #722 .
2015-02-08 01:57:40 +00:00
Damien George
5f97aaeca4
py: Fix instance lookup, since object is not a real type.
2015-02-08 00:42:13 +00:00
Damien George
b5a790d2e6
unix-cpy: Fix compiler warning about unused variable.
2015-02-07 18:50:54 +00:00
Damien George
0bfc7638ba
py: Protect mp_parse and mp_compile with nlr push/pop block.
...
To enable parsing constants more efficiently, mp_parse should be allowed
to raise an exception, and mp_compile can already raise a MemoryError.
So these functions need to be protected by an nlr push/pop block.
This patch adds that feature in all places. This allows to simplify how
mp_parse and mp_compile are called: they now raise an exception if they
have an error and so explicit checking is not needed anymore.
2015-02-07 18:33:58 +00:00