<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/teensy, branch v1.6</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=v1.6</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=v1.6'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2016-01-29T00:13:42+00:00</updated>
<entry>
<title>py/runtime: mp_stack_ctrl_init() should be called immediately on startup.</title>
<updated>2016-01-29T00:13:42+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2016-01-28T23:05:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=d3b1f0b627ccc6705d9fe958549badb87a74ded1'/>
<id>urn:sha1:d3b1f0b627ccc6705d9fe958549badb87a74ded1</id>
<content type='text'>
Calling it from mp_init() is too late for some ports (like Unix), and leads
to incomplete stack frame being captured, with following GC issues. So, now
each port should call mp_stack_ctrl_init() on its own, ASAP after startup,
and taking special precautions so it really was called before stack variables
get allocated (because if such variable with a pointer is missed, it may lead
to over-collecting (typical symptom is segfaulting)).
</content>
</entry>
<entry>
<title>py: Change first arg of type.make_new from mp_obj_t to mp_obj_type_t*.</title>
<updated>2016-01-11T00:49:27+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-01-03T15:55:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=5b3f0b7f39bd67cc9182993c288f09f67a0890df'/>
<id>urn:sha1:5b3f0b7f39bd67cc9182993c288f09f67a0890df</id>
<content type='text'>
The first argument to the type.make_new method is naturally a uPy type,
and all uses of this argument cast it directly to a pointer to a type
structure.  So it makes sense to just have it a pointer to a type from
the very beginning (and a const pointer at that).  This patch makes
such a change, and removes all unnecessary casting to/from mp_obj_t.
</content>
</entry>
<entry>
<title>lib/utils: Add pyexec_frozen_module to load and execute frozen module.</title>
<updated>2015-12-26T12:32:33+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-12-26T12:32:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=84b245f187f9711357b1fd46bebc67266bd028e5'/>
<id>urn:sha1:84b245f187f9711357b1fd46bebc67266bd028e5</id>
<content type='text'>
This is a convenience function similar to pyexec_file.  It should be used
instead of raw mp_parse_compile_execute because the latter does not catch
and report exceptions.
</content>
</entry>
<entry>
<title>stmhal: uart.any() function now returns number of bytes available.</title>
<updated>2015-11-30T13:07:20+00:00</updated>
<author>
<name>Ryan Shaw</name>
<email>ryannathans@hotmail.com</email>
</author>
<published>2015-11-27T15:31:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=f99491cbf743d51fd2aa7332c0e03da64448d60a'/>
<id>urn:sha1:f99491cbf743d51fd2aa7332c0e03da64448d60a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>lib/utils/printf: Move from stmhal/ .</title>
<updated>2015-11-10T16:58:58+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2015-11-10T16:57:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=73ff0687f2f5331e962a4af0126097e9921db631'/>
<id>urn:sha1:73ff0687f2f5331e962a4af0126097e9921db631</id>
<content type='text'>
This file contains various MicroPython-specific helper functions, so isn't
good fit for lib/libc/.
</content>
</entry>
<entry>
<title>lib/pyexec: Move header pyexec.h from stmhal directory.</title>
<updated>2015-11-09T13:13:09+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-11-09T13:13:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=40274fec9c0f8e1ce06f999927f550106b9aa5e8'/>
<id>urn:sha1:40274fec9c0f8e1ce06f999927f550106b9aa5e8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>teensy: Switch over to using frozen modules instead of memzip</title>
<updated>2015-11-04T14:21:21+00:00</updated>
<author>
<name>Dave Hylands</name>
<email>dhylands@gmail.com</email>
</author>
<published>2015-11-01T05:55:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=53ea2b5ce2f7088c871c6c264899e4eae7973859'/>
<id>urn:sha1:53ea2b5ce2f7088c871c6c264899e4eae7973859</id>
<content type='text'>
I left memzip in for the time being, so you can choose in
the Makefile whether to USE_FROZEN or USE_MEMZIP.

It looks like using frozen saves about 2472 bytes (using my
set of 15 python files), mostly due to overheads in the
zip file format.
</content>
</entry>
<entry>
<title>lib/memzip: Factor out memzip from teensy/ into lib/memzip.</title>
<updated>2015-11-04T14:21:10+00:00</updated>
<author>
<name>Dave Hylands</name>
<email>dhylands@gmail.com</email>
</author>
<published>2015-11-01T04:24:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=074d713bfb845a87e557e608f5215f53694e7d01'/>
<id>urn:sha1:074d713bfb845a87e557e608f5215f53694e7d01</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stmhal: pyexec.c is common module, move to lib/utils/ .</title>
<updated>2015-10-31T16:35:10+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2015-10-31T16:35:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=0ec51441de4db3fc776b1f2013005391caa910d3'/>
<id>urn:sha1:0ec51441de4db3fc776b1f2013005391caa910d3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>all: Add py/mphal.h and use it in all ports.</title>
<updated>2015-10-31T16:14:30+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-10-30T23:03:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=731f359292c0e2630873df1a19c5baac7287024f'/>
<id>urn:sha1:731f359292c0e2630873df1a19c5baac7287024f</id>
<content type='text'>
py/mphal.h contains declarations for generic mp_hal_XXX functions, such
as stdio and delay/ticks, which ports should provide definitions for.  A
port will also provide mphalport.h with further HAL declarations.
</content>
</entry>
</feed>
