Commit Graph

  • 8fe8413b56 stm: servos on PA0-3; MMA filtering; timer for Python REPL. Damien 2013-11-30 15:06:24 +0000
  • 11809ee5d4 stm: disable audio function in systick. Damien 2013-11-30 15:02:49 +0000
  • 81cc0e8f00 stm: add function to LCD module to show text. Damien 2013-11-30 15:02:29 +0000
  • d3e59feb6b stm: reorder things in Makefile. Damien 2013-11-30 15:02:11 +0000
  • 033d17a633 py: built-in range now accepts variable number of arguments. Damien 2013-11-28 19:22:56 +0000
  • d79338969b py: restrict further when for-range optimisation is done. Damien 2013-11-28 19:12:18 +0000
  • 86c7fc7dd9 py: add list pop and sort, unpack_sequence, and keywords in method_call. Damien 2013-11-26 15:16:41 +0000
  • 6f3e7fc505 py: add UNPACK_SEQUENCE and keyword methods to VM. Damien 2013-11-26 15:15:50 +0000
  • ff099f36d6 py: add more functionality to showbc. Damien 2013-11-26 15:14:50 +0000
  • d47f9d5a4f py: add call to __init__ when instantiating class object. Damien 2013-11-25 23:40:02 +0000
  • c1075ddc8f py: add some more opcodes to showbc. Damien 2013-11-25 23:39:36 +0000
  • 1895cf91af Link showbc.o in unix version. Damien 2013-11-17 13:20:13 +0000
  • f03001f8a6 Add function to decode and show byte code. Damien 2013-11-17 13:19:33 +0000
  • 0446a0d76d Change some debugging/output messages for native code generation. Damien 2013-11-17 13:16:36 +0000
  • 6d4f3462c4 Viper: function calls now convert constant arguments to objects. Damien 2013-11-16 20:44:39 +0000
  • 39c6c59868 STM: add LCD functions for pixel access; add RNG Py bindings. Damien 2013-11-09 20:15:48 +0000
  • 5c13dbf6ee STM: add RNG support. Damien 2013-11-09 20:15:17 +0000
  • 087d218d95 Unix: add machine-specific sqrt support. Damien 2013-11-09 20:14:30 +0000
  • 6b92d451b2 Add len and subscr (a hack) support for strings. Damien 2013-11-09 20:13:55 +0000
  • 94658e2e25 Add JUMP_IF_x_OR_POP opcodes to VM. Damien 2013-11-09 20:12:32 +0000
  • f3822fc34c Fix but with optimised range being 1 over. Damien 2013-11-09 20:12:03 +0000
  • 6d42ab6625 Small improvements to timer module. Damien 2013-11-09 11:29:49 +0000
  • bd8e110207 Add to STM code timer functionality to call Python on interrupt. Damien 2013-11-06 23:04:33 +0000
  • f72fd0e875 Add optimisation for "for x in range". Damien 2013-11-06 20:20:49 +0000
  • 5bf32c3b6b Built-in print function supports variable number of arguments. Damien 2013-11-06 17:16:35 +0000
  • ae0bc08a37 Viper supports inplace add (trivial). Damien 2013-11-06 17:11:07 +0000
  • 40fdfe3000 Improve allocation of stack for byte code. Damien 2013-11-05 22:16:22 +0000
  • 03c9cfb015 Make byte code jumps relative. Damien 2013-11-05 22:06:08 +0000
  • 1c62d04e2e Add DAC, and simple audio driver to STM code. Damien 2013-11-04 23:05:48 +0000
  • 6addc89e55 Byte code for SMALL_INT uses 3 bytes for integer. Damien 2013-11-04 23:04:50 +0000
  • 0c70f88734 Add simple PWM control command to STM code. Damien 2013-11-03 18:30:57 +0000
  • e8674399f1 Add vprintf, vsnprintf to STM code. Damien 2013-11-03 18:30:30 +0000
  • 96a0addb18 Fixup include of stdarg and va_list definition. Damien 2013-11-03 18:30:10 +0000
  • 2f06c57f8a Add simple var-arg functions; add simple string.format. Damien 2013-11-03 18:20:56 +0000
  • 0e496733fe Add simple file support to board. Damien 2013-11-03 14:53:34 +0000
  • 33af3bf028 Change Py API names, py_get_* -> py_obj_get_*. Damien 2013-11-03 14:39:47 +0000
  • 014e19fc4d Fix compiler warnings in unix/main.c. Damien 2013-11-03 14:26:21 +0000
  • 9b9e996df6 Support for for-loop in native thumb. Damien 2013-11-03 14:25:43 +0000
  • 1a6633a74d Implement more thumb branch instructions. Damien 2013-11-03 13:58:19 +0000
  • a53f694dc3 Test code for user objects. Damien 2013-11-02 23:58:38 +0000
  • d57eba51e5 Add user object to runtime. Damien 2013-11-02 23:58:14 +0000
  • 6ba1314265 Fix bug: emit native didn't clear last_was_return in label_assign. Damien 2013-11-02 20:34:54 +0000
  • 7410e440ab Add basic complex number support. Damien 2013-11-02 19:47:57 +0000
  • fecee2b0ae Floats work with MP on board; function for LCD pixel manipulation. Damien 2013-11-02 16:41:51 +0000
  • e0b1864337 Small hack to temporarily fix allocation of unique_code slots. Damien 2013-11-02 16:41:24 +0000
  • ccfc9c51ba Py runtime: list.append returns None. Damien 2013-11-02 15:10:37 +0000
  • 4ebb32fb95 Implement: str.join, more float support, ROT_TWO in VM. Damien 2013-11-02 14:33:10 +0000
  • 4c51cbdc0b Add proper FPU compile flags; disable Python float support. Damien 2013-11-01 23:25:37 +0000
  • e8217c2a9b Remove debugging print for SD card; add comment to possibly-buggy USB code. Damien 2013-11-01 23:25:08 +0000
  • c1764e997c Add syscfg and SPI libraries from STM. Damien 2013-11-01 22:27:51 +0000
  • 4a14eb0b8d PC13 (SDIO detect) can handle at most 2MHz speed config. Damien 2013-10-30 22:27:38 +0000
  • 5892f4710e Working SD card, but no functionality yet (was hardware error). Damien 2013-10-26 18:02:46 +0100
  • 8f7491a109 Add USART support, connected to stdio for REPL. Damien 2013-10-26 18:01:48 +0100
  • 9281cd66c9 Add simple readline history. Damien 2013-10-26 02:29:02 +0100
  • 8128941e6c Add support for RTC, used as a calendar. Damien 2013-10-26 02:06:37 +0100
  • 58a1b4c6cf Add USB HID support. Runs as an alternative to VCP+MSC. Damien 2013-10-25 20:53:54 +0100
  • 2839168340 Add py_get_array_fixed_n function. Damien 2013-10-25 00:40:38 +0100
  • 7ee80bac8e Add support for SD card (not working). Damien 2013-10-24 00:22:27 +0100
  • 6f08f8ce51 Add working MMA support. Damien 2013-10-23 22:17:26 +0100
  • d2c1a732e5 Call gc_free in gc_realloc after allocating new block. Damien 2013-10-23 21:03:27 +0100
  • 0f6545139b Implement simple servo control using PWM. Damien 2013-10-23 20:39:20 +0100
  • 8b3a7c2237 Fix func decls with no arguments: () -> (void). Damien 2013-10-23 20:20:17 +0100
  • 94186c8239 Implement boot-up commands; run main script after boot. Damien 2013-10-23 00:02:06 +0100
  • 9fc7933ff2 Add py_get_qstr. Damien 2013-10-23 00:01:10 +0100
  • e9f1e50be4 Board running boot.py, working REPL, soft reboot. Damien 2013-10-22 23:09:25 +0100
  • ec63cce470 Add simple support for C modules. Damien 2013-10-22 22:58:17 +0100
  • 92c06561a3 Improve REPL compount statement detection. Damien 2013-10-22 22:32:27 +0100
  • 9d63932b3d Add gchelper.s, to load registers and clean stack for GC. Damien 2013-10-22 21:13:59 +0100
  • 0c5827fc65 stm: improved GC, and cooked output for VCP. Damien 2013-10-22 21:13:36 +0100
  • bb5316b905 gc: reserve first block; lexer: free vstr. Damien 2013-10-22 21:12:29 +0100
  • fd8b6bcf55 Add gc_free function to force a block to be freed. Damien 2013-10-22 20:26:36 +0100
  • 7b2d3f38ce Implement some more operators, mostly for small ints. Damien 2013-10-22 16:53:02 +0100
  • 1b50affca8 Remove unnecessary USB files from stm. Damien 2013-10-22 16:23:53 +0100
  • d276f6357e Get unix version compling. Damien 2013-10-22 16:05:47 +0100
  • f086ecf57c Shrink py_obj_base_t size to 4 machine words. Damien 2013-10-22 16:05:11 +0100
  • eefcc79022 Clear ATBs on gc_init; better gc_info. Damien 2013-10-22 15:25:25 +0100
  • 3f69aca2e2 Make stm use garbage collector. Damien 2013-10-21 23:46:04 +0100
  • dcced92c26 Add mark-sweep garbage collector. Damien 2013-10-21 23:45:08 +0100
  • f48cf67108 Implement crude but working REPL for board. Damien 2013-10-21 10:42:06 +0100
  • cbb8868f74 VCP works, need to init comm port PC side; add some debugging output. Damien 2013-10-21 10:41:12 +0100
  • 4b6e85ca26 Try to get REPL working, but bug with CDC VCP... Damien 2013-10-21 09:56:56 +0100
  • fa2162bc77 Integrate new lexer stream with stm framework. Damien 2013-10-20 17:42:00 +0100
  • 27fb45eb1c Add local_num skeleton framework to deref/closure emit calls. Damien 2013-10-20 15:07:49 +0100
  • a5185f4bc8 Abstract out back-end stream functionality from lexer. Damien 2013-10-20 14:41:27 +0100
  • 68f59a96e3 Add vstr and its functions. Damien 2013-10-20 14:39:58 +0100
  • df4b4f31ef Make grammar rules const so the go in .text section. Damien 2013-10-19 18:28:01 +0100
  • 4d7adce9c5 Remove obsolete emitthumb.c (now use emitnative.c). Damien 2013-10-19 18:17:12 +0100
  • afe12bca23 Fix IRQ priority issue to give working USB; and some cleanup. Damien 2013-10-19 18:13:48 +0100
  • fb42ec17bc Try to re-add USB support... Damien 2013-10-19 15:37:09 +0100
  • d7a7a30a4f Make pfenv's const so they go in .text section. Damien 2013-10-19 15:36:20 +0100
  • 1595f3257e Make rt_fun_table const, so it goes in .text section. Damien 2013-10-19 15:09:32 +0100
  • 00ff04fc49 Working SysTick, code factoring, some boot-up code. Damien 2013-10-19 14:40:54 +0100
  • 995b8aabb1 Partially implement proper flash storage. Damien 2013-10-18 23:44:05 +0100
  • 5ac1b2efbd Implement REPL. Damien 2013-10-18 19:58:12 +0100
  • 7bbd110691 Remove line in emitbc.c to print code size. Damien 2013-10-18 19:57:17 +0100
  • 3997be444c Add single_input rule to grammar, for REPL. Damien 2013-10-18 19:56:48 +0100
  • 9f770c658f Fix up insertion of newline at end of lexer stream. Damien 2013-10-18 19:54:31 +0100
  • 4a175e1f11 Fix up linker script; improve startup code; printf to USB. Damien 2013-10-17 22:50:21 +0100
  • d2755ec538 Add iterators and comprehension to emitnative. Damien 2013-10-16 23:58:48 +0100
  • c12aa468a1 Add SET_ADD opcode to VM. Damien 2013-10-16 20:57:49 +0100