Damien George
bd17e1b3ae
unix: Allocate more heap memory by default on 64 bit machines.
...
Pointers are 2x bigger on 64 bit machines, so we should allocate twice
the memory to have a comparable heap size.
2014-04-04 14:29:00 +01:00
Damien George
9b1599c663
Merge pull request #422 from dhylands/str-modulo
...
Str modulo
2014-04-04 12:37:52 +01:00
Damien George
af27259439
py: Enable optimisation of multiplying 2 small ints in compiler.
2014-04-04 11:21:58 +00:00
Damien George
28390340e5
tests: Make rge-sm.py use less memory (integration step increased).
...
In addition to memory allocation failure, other problem was that 10**17
was overflowing. Now passes.
2014-04-04 11:15:54 +00:00
Damien George
ecf5b77123
py: This time, real proper overflow checking of small int power.
...
Previous overflow test was inadequate.
2014-04-04 11:13:51 +00:00
Damien George
6902eeda25
py: Add m_malloc_fail function to handle memory allocation error.
...
A malloc/realloc fail now throws MemoryError.
2014-04-04 10:52:59 +00:00
Paul Sokolovsky
072cf022e0
tests/file-with: Add testcase which failed for @dpgeorge.
...
Works on x86.
2014-04-04 12:15:39 +03:00
Dave Hylands
6756a37a77
Implements most of str.modulo
...
The alternate form for floating point doesn't work yet.
The %(name)s form doesn't work yet.
2014-04-03 23:55:02 -07:00
Damien George
5bf565e353
py: Handle small int power overflow correctly.
2014-04-04 00:16:32 +01:00
Damien George
4b34c76fd6
Changes to get unix/ port compiling on Cygwin.
2014-04-03 23:51:16 +01:00
Damien George
3996611c1b
stmhal: Add home/end cursor support in readline.
...
Home/end work in picocom and screen (different codes in those 2
programs). Also, CTRL-A (for non-empty liny) and CTRL-E act as
home/end.
2014-04-03 23:30:24 +01:00
Damien George
3269cf2f93
Merge pull request #419 from pfalcon/stmhal-file-streams
...
stmhal: Reimplement file support using stream protocol API.
2014-04-03 22:48:32 +01:00
Damien George
2309369291
tests: Allow to run tests on pyboard.
...
To run the tests on the pyboard you need to set the "test_on_pyboard"
variable to "True", and also have tools/pyboard.py available for import
(easiest is to symlink to it).
2014-04-03 22:44:51 +01:00
Damien George
d71fc37af7
tools: Improve reading back from pyboard.
2014-04-03 22:44:37 +01:00
Damien George
57ad7aa66b
stmhal: On soft reset, if in raw REPL mode, don't run main.py.
2014-04-03 22:44:08 +01:00
Damien George
0e49642965
tools: pyboard.py can now execute a file remotely!
2014-04-03 22:12:01 +01:00
Damien George
d8b47d3e02
stmhal: Fix raw REPL so that it passes through more ASCII chars.
2014-04-03 22:11:43 +01:00
Damien George
769b23a9c6
stmhal: Add powf, logf, log2f, log10f.
2014-04-03 22:11:28 +01:00
Damien George
aba9f51fef
stmhal: #undef log2f if it's defined.
2014-04-03 21:16:37 +01:00
Paul Sokolovsky
6693e6c506
README: ARM Linux is supported.
...
Retested again on Ubuntu 12.04 armhf running in chroot on Samsung
ARM Chromebook (Cortex-A15).
2014-04-03 22:30:45 +03:00
Paul Sokolovsky
1d4d9ddd9e
stmhal: Reimplement file support using stream protocol API.
...
This adds readline(), readall(), etc. methods. Also other fixes to make
Python API compliant and "with" support.
2014-04-03 22:14:29 +03:00
Paul Sokolovsky
34e1199b3a
run-tests: Allow to override python3 command to use via environment var.
2014-04-03 22:09:12 +03:00
Paul Sokolovsky
c61ce96590
unix file: Implement context manager protocol (for "with" statement).
2014-04-03 22:09:05 +03:00
Paul Sokolovsky
98a627dc03
py: Add "io" module.
...
So far just includes "open" function, which should be supplied by a port.
TODO: Make the module #ifdef'ed.
2014-04-03 22:08:57 +03:00
Damien George
8270e3853d
py: More robust int conversion and overflow checking.
2014-04-03 11:00:54 +00:00
Damien George
a58a7aefbd
Merge pull request #417 from pfalcon/unix-enable-gc
...
unix: Enable GC.
2014-04-02 21:20:33 +01:00
Damien George
cc7085c1ce
Merge branch 'fix-format-int' of github.com:dhylands/micropython into dhylands-fix-format-int
...
Conflicts:
py/objstr.c
2014-04-02 20:37:05 +01:00
Dave Hylands
22fe4d7344
Fix str.format to work with {:f/g/e} and ints
...
Also fix objstr.c to compile when floats disabled.
2014-04-02 12:10:18 -07:00
Damien George
c322c5f07f
py: Fix regress for printing of floats and #if.
...
Also change formating modifier in test script (it still passes with
original format though).
2014-04-02 20:04:15 +01:00
Damien George
a05f5dd952
Merge branch 'master' of github.com:micropython/micropython
2014-04-02 19:55:26 +01:00
Damien George
e90eefc84b
stmhal: Fix servo object; add fpclassify to math functions.
2014-04-02 19:55:08 +01:00
Paul Sokolovsky
78e8e30c87
unix: Enable GC.
...
GC support for "unix" port was implemented some time ago, but still not
enabled.
2014-04-02 20:57:19 +03:00
Paul Sokolovsky
ad1bac63f7
tests/string-format: Add test for formatting ints with float format.
...
Fail currently.
2014-04-02 20:41:34 +03:00
Paul Sokolovsky
e807fa8d60
gc: Uses uint defined in misc.h.
2014-04-02 20:36:32 +03:00
Paul Sokolovsky
d440dc0513
unix: Use argv[0] for command name in usage.
2014-04-02 20:31:18 +03:00
Paul Sokolovsky
a55a5469c3
unix: Support #if-able impl-specific cmdline options.
...
For example, we still build w/o GC enabled, so cannot really set heap size.
2014-04-02 20:29:18 +03:00
Paul Sokolovsky
d4e7e06d7f
unix: Properly recognize and report when script on cmdline not found.
...
Previosuly just silently exited.
2014-04-02 20:25:01 +03:00
Damien George
094d450003
py: Wrap compile_scope_inline_asm in #if; remove comment from misc.h.
2014-04-02 17:31:27 +01:00
Damien George
70f33cde48
py: Fix up so that it can compile without float.
2014-04-02 17:06:05 +01:00
Damien George
af6edc61bd
py: Enable a jump optimisation in the compiler.
2014-04-02 16:12:28 +01:00
Damien George
882b363564
py: Move to Python 3.4.0 compatibility.
...
Very little has changed. In Python 3.4 they removed the opcode
STORE_LOCALS, but in Micro Python we only ever used this for CPython
compatibility, so it was a trivial thing to remove. It also allowed to
clean up some dead code (eg the 0xdeadbeef in class construction), and
now class builders use 1 less stack word.
Python 3.4.0 introduced the LOAD_CLASSDEREF opcode, which I have not
yet understood. Still, all tests (apart from bytecode test) still pass.
Bytecode tests needs some more attention, but they are not that
important anymore.
2014-04-02 15:56:31 +01:00
Damien George
929a675a3d
Change test scripts to use python3; bytecode tests use python3.4.
...
I upgraded to Python 3.4.0, so needed to make these changes. Hopefully
the tests still run with Python 3.3.x (the scripts use python3 so are
agnostic as to the subversion).
Bytecode tests are tightly coupled to the Python version, and now some
fail against Python 3.4.
2014-04-02 15:31:39 +01:00
Damien George
4d4a7f5354
Merge branch 'pip-micropy' of github.com:pfalcon/micropython into pfalcon-pip-micropy
2014-04-02 15:14:28 +01:00
Damien George
a12be917a4
stmhal: Add timer module; move servo PWM from TIM2 to TIM5.
...
As per issue #257 , servo is better on TIM5 because TIM2 is connected to
more GPIO.
2014-04-02 15:09:36 +01:00
Damien George
69dee59ce4
stmhal: Add backspace key to readline (along with delete key).
2014-04-02 14:28:58 +01:00
Damien George
10e21b9770
Add more tests.
2014-04-02 14:23:04 +01:00
Damien George
93b7faa29a
py: Factor out static/class method unwrapping code; add tests.
2014-04-02 14:13:26 +01:00
Damien George
e4c834fc1e
Add a test.
2014-04-02 13:32:37 +01:00
Damien George
b23fbb3126
py: Implement floating point power binop.
2014-04-02 12:26:49 +01:00
Damien George
660aef67c4
py: Allow multiple of str/list/tuple on left by an integer.
2014-04-02 12:22:07 +01:00