Commit Graph

1419 Commits

Author SHA1 Message Date
Damien George d5e81826ec py: Reduce size of mp_obj_fun_native_t struct by packing ints. 2014-02-26 17:47:05 +00:00
Damien George 510477557d py: Take out bitfield entries from their own structure.
Don't need to wrap bitfields in their own struct.  Compiler does the
correct thing without it.
2014-02-26 17:40:52 +00:00
Damien George 98fb8935bc stm: Reinstate code to handle CC3000 EXTI (commented out for now). 2014-02-26 17:04:12 +00:00
Damien George 1dc76af7bf py: Remove name of var arg from macros with var args. 2014-02-26 16:57:08 +00:00
Damien George c5ac2ac590 py: Start to implement shl/shr for mpz. Fix return void. 2014-02-26 16:56:30 +00:00
Damien George f8a4fbbb79 stm: Open header file in text mode (in make-pins). 2014-02-26 16:30:33 +00:00
Damien George 43122c320b Merge pull request #325 from dhylands/led
Update LED configuration
2014-02-26 16:07:18 +00:00
Damien George 4273498cb8 Merge pull request #324 from dhylands/board-check
Print an error if an invalid BOARD is specified
2014-02-26 16:03:59 +00:00
Damien George c4361227ba Merge pull request #318 from dhylands/exti
Add EXTI support
2014-02-26 16:01:54 +00:00
Damien George e70700851a Merge pull request #323 from dhylands/fix-float-print
Fix floating point printing of negative numbers in the range (0, -1.0)
2014-02-26 09:17:22 +00:00
Dave Hylands 34f66023d4 Update LED configuration 2014-02-26 00:05:34 -08:00
Dave Hylands c3813ff50d Print an error if a non-valid BOARD is specified. 2014-02-26 00:04:01 -08:00
Dave Hylands 49b5533000 Fix floating point printing of negative numbers in the range (0, -1.0) 2014-02-25 15:24:25 -08:00
Damien George aca141269e py: Fix mpn_sub, was increasing wrong source pointer.
Also change int -> machine_int_t where appropriate.
2014-02-24 21:32:52 +00:00
Damien George 2ee55c312d stm: Add option to pyb_usb_dev_init() to use USB HID interface.
With this option selected, only HID on its own works, not VCP+HID.
2014-02-24 01:12:04 +00:00
Dave Hylands ee31f71d39 Add EXTI support
Revamp usrsw to use new exti code.
Add user switch callback function.
2014-02-23 11:26:22 -08:00
Damien George 790eed6f93 stm: Make pendsv_nlr_jump work when debugging is enabled.
Stack layout is different when -g used, so need to handle the pendsv
jump differently.  Addresses Issue #315.
2014-02-23 00:31:11 +00:00
Damien George ee462489f1 stm: Add USART enum for pyboard skin labels. 2014-02-23 00:30:48 +00:00
Damien George ed73fcd7d2 Merge pull request #316 from iabdalkader/fatfs_lfn
Add Configurable LFN support to FatFS
2014-02-22 22:36:24 +00:00
mux 1e2cf746d4 Add Configurable LFN support to FatFS 2014-02-22 22:09:00 +02:00
Damien George 9982f2795d Merge branch 'master' of github.com:micropython/micropython 2014-02-22 19:27:44 +00:00
Damien George 438c88dd2f Add arbitrary precision integer support.
Some functionality is still missing (eg and, or, bit shift), and some
things are buggy (eg subtract).
2014-02-22 19:25:23 +00:00
Paul Sokolovsky 135002a086 Add basic super() test. 2014-02-22 20:25:05 +02:00
Damien George 2077397118 py: Put number parsing code together in parsenum.c. 2014-02-22 18:12:43 +00:00
Damien George 2613ffde43 py: Rename strtonum to mp_strtonum.
strtonum clashes with BSD function of same name, and our version is
different so warrants a unique name.  Addresses Issue #305.
2014-02-22 17:49:15 +00:00
Damien George 0379b55ab0 py: Fix casting and printing of small int. 2014-02-22 17:34:09 +00:00
Damien George b25ef4db3b Merge pull request #314 from pfalcon/parse-node-refactor
parse: Refactor parse node encoding to support full range of small ints.
2014-02-22 17:07:01 +00:00
Paul Sokolovsky 56e5ef203b parse: Refactor parse node encoding to support full range of small ints.
Based on suggestion by @dpgeorge at
https://github.com/micropython/micropython/pull/313
2014-02-22 16:39:45 +02:00
Paul Sokolovsky bbf0e2fe12 parse: Note that fact that parser's small ints are different than VM small int.
Specifically, VM's small ints are 31 bit, while parser's only 28. There's already
MP_OBJ_FITS_SMALL_INT(), so, for clarity, rename MP_FIT_SMALL_INT() to
MP_PARSE_FITS_SMALL_INT().
2014-02-21 03:27:09 +02:00
Paul Sokolovsky 1d30b11685 showbc: Update for recent int varlen storage refactor.
TODO: De-duplicate DECODE_UINT, etc. definitions.
2014-02-21 03:26:56 +02:00
Paul Sokolovsky feacaa12ac __import__: Catch relative import attempts and throw NotImplementedError. 2014-02-21 01:15:20 +02:00
Paul Sokolovsky a8d31b28bc emitbc: Correct buffer sizes for varlen int encoding.
Assuming we have truncating (floor) division, way to do ceiling division
by N is to use formula (x + (N-1)) / N. Specifically, 63 bits, if stored
7 bits per byte, require exactly 9 bytes. 64 bits overflow that and require
10 bytes.
2014-02-20 13:25:05 +02:00
Paul Sokolovsky a1aba36feb compile: Add comments ergarding non-implemented relative imports. 2014-02-20 13:22:28 +02:00
Damien George 4d79d5dd7c py: Fix type of integer in decoding int. 2014-02-20 00:00:04 +00:00
Damien George b74501c98f Merge pull request #312 from pfalcon/int-varlen
Support varlen encoding for arbitrary int and uint numbers
2014-02-19 23:56:23 +00:00
Damien George 2e87c62cf6 stm: Update PYBOARD4 pin mapping. 2014-02-19 23:38:42 +00:00
Damien George 948a58d56e Merge pull request #310 from dhylands/pin_map
Add pin mapping code.
2014-02-19 23:19:18 +00:00
Damien George 1b182a30d0 Merge branch 'master' of github.com:micropython/micropython 2014-02-19 23:15:40 +00:00
Damien George 302646625b stm: Add RTC start-up info, and uPy bindings. 2014-02-19 23:15:09 +00:00
Paul Sokolovsky fb7f94392d import: Implement "from pkg.mod import sym" syntax properly.
http://docs.python.org/3.3/library/functions.html#__import__ :
"When the name variable is of the form package.module, normally, the
top-level package (the name up till the first dot) is returned, not
the module named by name. However, when a non-empty fromlist argument
is given, the module named by name is returned."
2014-02-20 00:37:12 +02:00
Paul Sokolovsky 047cd40313 Bytecode int varlen encoding: support arbitrary values for signed ints too. 2014-02-19 15:53:41 +02:00
Paul Sokolovsky 0f96ec8268 Bytecode uint varlen encoding: support arbitrary values. 2014-02-19 15:52:57 +02:00
Dave Hylands 51dabac096 Add pin mapping code.
This commit also introduces board directories and moves board
specific config into the appropriate board directory.

boards/stm32f4xx-af.csv was extracted from the STM32F4xx datasheet
and hand-tweaked.

make-pins.py takes boards/stm32f4xx-af.csv, boards/stm32f4xx-prefix.c,
and boards/BOARD-NAME/pins.csv as input and generates the file
build/pins_BOARD_NAME.c

The generated pin file for PYBOARD4 looks like this:
https://gist.github.com/dhylands/9063231

The generated pins file includes all of the supported alternate
functions, and includes upsupported alternate functions as comments.

See the commnet block at the top of stm/pin_map.c for details on
how to use the pin mapper.

I also went ahead and modified stm/gpio.c to use the pin mapper.
2014-02-17 21:20:38 -08:00
Damien George 46239413d0 stm: Implement mp_import_stat.
To follow up pull request #309.
2014-02-17 22:44:20 +00:00
Paul Sokolovsky 4d0588df56 objint_longlong: Don't assert on invalid syntax, raise SyntaxError instead. 2014-02-18 00:22:19 +02:00
Damien George 517e1706bd Merge pull request #309 from pfalcon/stm-sys-path
stm: Initialize sys.path with ["0:/", "0:/src", "0:/lib"].
2014-02-17 22:21:25 +00:00
Damien George ff77dc567c Merge pull request #307 from iabdalkader/master
Fix usart_obj_tx_char
2014-02-17 22:17:56 +00:00
Paul Sokolovsky 4aee119f94 stm: Initialize sys.path with ["0:/", "0:/src", "0:/lib"].
This is compatible with what search path was before sys.path refactor,
with addition of module library path ("0:/lib").
2014-02-18 00:06:37 +02:00
mux d0ffda91cc Fix usart_obj_tx_char 2014-02-17 21:49:07 +02:00
Damien George f34947703a Merge pull request #303 from dhylands/fix-netduino-disc
Fix build for netduino and stm32f4disc
2014-02-17 09:48:53 +00:00