Commit Graph

1882 Commits

Author SHA1 Message Date
Damien George 5be40afb4c Merge pull request #515 from errordeveloper/qemu
Qemu
2014-04-24 22:24:00 +01:00
Damien George c0dc7c3dfa py, vm: Fix recent bug where state is freed too early. 2014-04-24 15:42:05 +01:00
Damien George d5e8482c4a py, vm: Free heap-allocated state if it was allocated on the heap. 2014-04-24 13:52:06 +01:00
Damien George 978939156d Merge pull request #519 from pfalcon/exc-no-ptr-to-field
objexcept: Don't store args tuple within exception object.
2014-04-24 11:14:18 +01:00
Damien George 1cbb99d1db Merge pull request #518 from pfalcon/vm-trace
vm: Add rudimentary bytecode execution tracing capability.
2014-04-24 11:06:10 +01:00
Paul Sokolovsky 1c1d902cd3 Makefile: Allow to override "super optimization" options used for some files.
To help with debugging issue like #510 for example.
2014-04-24 02:59:43 +03:00
Paul Sokolovsky 6c94abe347 windows/README: Use CROSS_COMPILE instead of CC to cover other tools too.
Suggested by @lurch.
2014-04-23 20:45:53 +03:00
Paul Sokolovsky 1acf22f17b objexcept: Don't store args tuple within exception object.
To avoid pointer-to-field GC problem.
2014-04-23 04:07:00 +03:00
Paul Sokolovsky c5e32c6995 vm: Add rudimentary bytecode execution tracing capability. 2014-04-23 03:46:00 +03:00
Paul Sokolovsky 4c6b375960 showbc: MAKE_CLOSURE*: Update for new closed-over encoding. 2014-04-23 03:23:39 +03:00
Paul Sokolovsky 5e3e2d00ea emitglue: Typo fix in var name. 2014-04-23 03:23:32 +03:00
Paul Sokolovsky 20e9ed3916 builtinimport: If there was error compiling imported module, raise exception. 2014-04-22 02:53:20 +03:00
Paul Sokolovsky fa6f0506c1 unix: Workaround MP_OBJ_NEW_SMALL_INT() 64-bit issues. 2014-04-22 00:16:46 +03:00
Paul Sokolovsky 5d3a830171 modsocket: Clean up OSError-like exception a bit.
Some BSD socket functions don't return error numbers in errno namespace, but
rather in other error namespaces. CPython resolves this by using OSError
subclasses for them. We don't do that so far, so there's ambiguity here.
2014-04-22 00:02:51 +03:00
Paul Sokolovsky acb13886fc unix: OSError's args[0] should be errno numeric value.
Well, Python3 also defines an attribute for that, but that's bloat.
2014-04-22 00:02:51 +03:00
Paul Sokolovsky dec31bb872 objexcept: Add mp_obj_new_exception_arg1() convenience function. 2014-04-22 00:02:51 +03:00
Paul Sokolovsky b418b6fb0d modffi: Don't use OSError for clearly unrelated errors. 2014-04-22 00:02:51 +03:00
Paul Sokolovsky 88972b0d94 modffi: Describe typecodes where they differ from used by struct module.
Exact behavior of typecodes may be not yet enforced.
2014-04-22 00:02:51 +03:00
Ilya Dmitrichenko 6820937892 travis: should test building qemu-arm as well. 2014-04-21 21:10:15 +01:00
Ilya Dmitrichenko b554bc5691 qemu-arm: update makefile (d553be5). 2014-04-21 21:08:15 +01:00
Ilya Dmitrichenko 2face99cfe qemu-arm: more generic port name. 2014-04-21 21:04:04 +01:00
Ilya Dmitrichenko ee857853d6 cortex-m3-qemu: refactor the port.
Switch from CodeSourcery to ARM GCC and clean-up some stale files,
also copy `main.c` and `mpconfigport.h` from bare-arm.
2014-04-21 21:04:04 +01:00
Ilya Dmitrichenko 5130b81eec cortex-m3-qemu: a working port 2014-04-21 21:04:04 +01:00
Damien George ca045d97b9 tools: Update pyboard.py to work with latest changes to RTC. 2014-04-21 20:18:37 +01:00
Damien George 5ea69859c9 stmhal: Update help text. 2014-04-21 20:18:22 +01:00
Damien George 350cb6bf20 stmhal: Fix bug with pin GPIO reading. 2014-04-21 20:18:06 +01:00
Damien George ef255e47c1 stmhal, usrsw: Wrap usrsw.c in #if, for when switch is not available. 2014-04-21 18:31:40 +01:00
Damien George b97c2f4c14 stmhal, accel: Add TODO comment. 2014-04-21 18:30:38 +01:00
Damien George 46e1f26615 stmhal, usrsw: Update comments for new switch API. 2014-04-21 18:28:23 +01:00
Damien George 6125ba4a7f stmhal: Make switch a class, to follow suit of all other modules.
Instead of pyb.switch() as a function, it's more consistent (with
respect to all the other modules and peripherals) to have
pyb.Switch() create a switch object.  This then generalises to having
multiple switches.  Call the object to get its state.  Use sw.callback
to set the callback function for when the switch is pressed.
2014-04-21 18:23:50 +01:00
Damien George af797f476f stmhal, servo: Rename calibrate method to calibration.
It should be a noun, since it supports getting and setting depending on
the number of arguments given.
2014-04-21 18:21:07 +01:00
Damien George 6691c9e655 stmhal, timer: Remove obsolete global variable. 2014-04-21 18:19:50 +01:00
Damien George 7fdfa93700 stmhal: Add Timer class: simple TIM control, incl callback on IRQ.
Simple but functional timer control.  More sophistication will
eventually be added, or for now just use direct register access :)

Also added pyb.freq() function to get MCU clock frequencies.
2014-04-21 16:48:16 +01:00
Damien George e5f8a77db6 py: Add 'align' and 'data' meta-instructions to inline assembler. 2014-04-21 13:33:15 +01:00
Damien George 764af4b7c5 stmhal: Make DAC dynamically allocate instances; rename dma->write_timed. 2014-04-21 13:06:19 +01:00
Damien George 83407ad082 stmhal: Clean up rtc.c a bit. 2014-04-21 12:45:59 +01:00
Damien George 7533700393 stmhal: Rename USART to UART.
It's really a UART because there is no external clock line (and hence no
synchronous ability, at least in the implementation of this module).
USART should be reserved for a module that has "S"ynchronous capabilities.

Also, UART is shorter and easier to type :)
2014-04-21 12:03:09 +01:00
Damien George 806f4aef9a py: Fix super() bug, where it didn't allow instance access.
This is a one-liner fix.  It gets the class-super.py test passing, but
is probably not a complete fix.
2014-04-21 02:11:07 +01:00
Damien George b33d72aa89 Merge branch 'master' of github.com:micropython/micropython 2014-04-21 02:00:03 +01:00
Damien George 34f01c2ca1 stmhal: Add some documentation to I2C, SPI and USART modules. 2014-04-21 01:59:43 +01:00
Damien George c7d2b10b85 Merge pull request #513 from errordeveloper/misc_fix/modffi_pkg_config
modffi: Fix how we call `pkg-config`
2014-04-21 01:22:27 +01:00
Damien George 0ae21a81f7 Merge branch 'master' of github.com:micropython/micropython 2014-04-21 01:18:05 +01:00
Damien George 3771a097da stmhal: Improve USART class, to be more like SPI and I2C.
The three classes I2C, SPI and USART now have a fairly uniform (Python)
API.  All are constructed, initialised and deinitialised in the same
way.  They can have most of their parameters set, using keyword arguments.
All have send and recv (although slightly different with I2C requiring an
address in master mode).  recv can do inplace receiving (ie store the
data in a previously-created bytearray).

It's just polling mode at the moment, but interrupt and DMA would be
nice to add.
2014-04-21 01:14:14 +01:00
Damien George eb8bdf4df3 stmhal, SPI and I2C: Improvements to functionality and consistency. 2014-04-21 00:10:04 +01:00
Damien George 64ba6ca127 py: Small change to mp_arg_parse_all. 2014-04-21 00:09:44 +01:00
Paul Sokolovsky 521de04ce2 windows: Add README with basic cross-compile instructions. 2014-04-20 22:35:11 +03:00
Paul Sokolovsky 7f7c7aa76a windows: Unbreak mingw32 build (cross-compiling under Linux). 2014-04-20 22:24:44 +03:00
Paul Sokolovsky a196d08dfc unix windows: mingw32 doesn't have realpath(), use _fullpath() instead. 2014-04-20 22:24:44 +03:00
Paul Sokolovsky 1f2ca1c1f9 unix file: mingw32 has STDIN_FILENO and friends in stdio.h .
TODO: Never "optimize" includes any more!
2014-04-20 22:24:44 +03:00
Paul Sokolovsky 353b0289f3 py: Add win32-specific header for alloca(). 2014-04-20 22:24:44 +03:00