- Jul 18, 2017
-
-
Alexander Steffen authored
The code conventions suggest using header guards, but do not define how those should look like and instead point to existing files. However, not all existing files follow the same scheme, sometimes omitting header guards altogether, sometimes using non-standard names, making it easy to accidentally pick a "wrong" example. This commit ensures that all header files of the MicroPython project (that were not simply copied from somewhere else) follow the same pattern, that was already present in the majority of files, especially in the py folder. The rules are as follows. Naming convention: * start with the words MICROPY_INCLUDED * contain the full path to the file * replace special characters with _ In addition, there are no empty lines before #ifndef, between #ifndef and one empty line before #endif. #endif is followed by a comment containing the name of the guard macro. py/grammar.h cannot use header guards by design, since it has to be included multiple times in a single C file. Several other files also do not need header guards as they are only used internally and guaranteed to be included only once: * MICROPY_MPHALPORT_H * mpconfigboard.h * mpconfigport.h * mpthreadport.h * pin_defs_*.h * qstrdefs*.h
-
- Jun 28, 2016
-
-
Damien George authored
-
Damien George authored
We rely on the port setting and adjusting the stack size so there is enough room to recover from hitting the stack limit.
-
Damien George authored
The GIL macros are needed even if threading is not enabled.
-
Damien George authored
This makes the VM/runtime thread safe, at the cost of not being able to run code in parallel.
-
Damien George authored
So the underlying thread implementation can do any necessary bookkeeping.
-
Damien George authored
By using a single, global mutex, all memory-related functions (alloc, free, realloc, collect, etc) are made thread safe. This means that only one thread can be in such a function at any one time.
-
Damien George authored
-
Damien George authored
-
Damien George authored
-
- May 20, 2016
-
-
Paul Sokolovsky authored
Make dupterm subsystem close a term stream object when EOF or error occurs. There's no other party than dupterm itself in a better position to do this, and this is required to properly reclaim stream resources, especially if multiple dupterm sessions may be established (e.g. as networking connections).
-
- Jan 01, 2016
-
-
Paul Sokolovsky authored
Function to actually spool output terminal data to dupterm object.
-
Paul Sokolovsky authored
That's just function which sets/gets dup terminal object, and can be easily reused across ports.
-
- May 03, 2014
-
-
Damien George authored
Blanket wide to all .c and .h files. Some files originating from ST are difficult to deal with (license wise) so it was left out of those. Also merged modpyb.h, modos.h, modstm.h and modtime.h in stmhal/.
-
- Apr 02, 2014
-
-
Damien George authored
As per issue #257, servo is better on TIM5 because TIM2 is connected to more GPIO.
-
- Mar 24, 2014
-
-
Damien George authored
-
- Mar 22, 2014
-
-
Damien George authored
-
Damien George authored
-
Damien George authored
-
- Mar 08, 2014
-
-
Damien George authored
-
- Dec 21, 2013
-
-
Damien authored
A big change. Micro Python objects are allocated as individual structs with the first element being a pointer to the type information (which is itself an object). This scheme follows CPython. Much more flexible, not necessarily slower, uses same heap memory, and can allocate objects statically. Also change name prefix, from py_ to mp_ (mp for Micro Python).
-