Commit Graph

121 Commits

Author SHA1 Message Date
Damien
bd8e110207 Add to STM code timer functionality to call Python on interrupt. 2013-11-06 23:04:33 +00:00
Damien
f72fd0e875 Add optimisation for "for x in range". 2013-11-06 20:20:49 +00:00
Damien
5bf32c3b6b Built-in print function supports variable number of arguments. 2013-11-06 17:16:35 +00:00
Damien
ae0bc08a37 Viper supports inplace add (trivial). 2013-11-06 17:11:07 +00:00
Damien
40fdfe3000 Improve allocation of stack for byte code. 2013-11-05 22:16:22 +00:00
Damien
03c9cfb015 Make byte code jumps relative. 2013-11-05 22:06:08 +00:00
Damien
1c62d04e2e Add DAC, and simple audio driver to STM code. 2013-11-04 23:05:48 +00:00
Damien
6addc89e55 Byte code for SMALL_INT uses 3 bytes for integer. 2013-11-04 23:04:50 +00:00
Damien
0c70f88734 Add simple PWM control command to STM code. 2013-11-03 18:30:57 +00:00
Damien
e8674399f1 Add vprintf, vsnprintf to STM code. 2013-11-03 18:30:30 +00:00
Damien
96a0addb18 Fixup include of stdarg and va_list definition. 2013-11-03 18:30:10 +00:00
Damien
2f06c57f8a Add simple var-arg functions; add simple string.format. 2013-11-03 18:20:56 +00:00
Damien
0e496733fe Add simple file support to board. 2013-11-03 14:53:34 +00:00
Damien
33af3bf028 Change Py API names, py_get_* -> py_obj_get_*. 2013-11-03 14:39:47 +00:00
Damien
014e19fc4d Fix compiler warnings in unix/main.c. 2013-11-03 14:26:21 +00:00
Damien
9b9e996df6 Support for for-loop in native thumb. 2013-11-03 14:25:43 +00:00
Damien
1a6633a74d Implement more thumb branch instructions. 2013-11-03 13:58:19 +00:00
Damien
a53f694dc3 Test code for user objects. 2013-11-02 23:58:38 +00:00
Damien
d57eba51e5 Add user object to runtime. 2013-11-02 23:58:14 +00:00
Damien
6ba1314265 Fix bug: emit native didn't clear last_was_return in label_assign. 2013-11-02 20:34:54 +00:00
Damien
7410e440ab Add basic complex number support. 2013-11-02 19:47:57 +00:00
Damien
fecee2b0ae Floats work with MP on board; function for LCD pixel manipulation. 2013-11-02 16:41:51 +00:00
Damien
e0b1864337 Small hack to temporarily fix allocation of unique_code slots. 2013-11-02 16:41:24 +00:00
Damien
ccfc9c51ba Py runtime: list.append returns None. 2013-11-02 15:10:37 +00:00
Damien
4ebb32fb95 Implement: str.join, more float support, ROT_TWO in VM. 2013-11-02 14:33:10 +00:00
Damien
4c51cbdc0b Add proper FPU compile flags; disable Python float support. 2013-11-01 23:25:37 +00:00
Damien
e8217c2a9b Remove debugging print for SD card; add comment to possibly-buggy USB code. 2013-11-01 23:25:08 +00:00
Damien
c1764e997c Add syscfg and SPI libraries from STM. 2013-11-01 22:27:51 +00:00
Damien
4a14eb0b8d PC13 (SDIO detect) can handle at most 2MHz speed config. 2013-10-30 22:27:38 +00:00
Damien
5892f4710e Working SD card, but no functionality yet (was hardware error). 2013-10-26 18:02:46 +01:00
Damien
8f7491a109 Add USART support, connected to stdio for REPL. 2013-10-26 18:01:48 +01:00
Damien
9281cd66c9 Add simple readline history. 2013-10-26 02:29:02 +01:00
Damien
8128941e6c Add support for RTC, used as a calendar. 2013-10-26 02:06:37 +01:00
Damien
58a1b4c6cf Add USB HID support. Runs as an alternative to VCP+MSC. 2013-10-25 20:53:54 +01:00
Damien
2839168340 Add py_get_array_fixed_n function. 2013-10-25 00:40:38 +01:00
Damien
7ee80bac8e Add support for SD card (not working). 2013-10-24 00:22:27 +01:00
Damien
6f08f8ce51 Add working MMA support. 2013-10-23 22:17:26 +01:00
Damien
d2c1a732e5 Call gc_free in gc_realloc after allocating new block. 2013-10-23 21:03:27 +01:00
Damien
0f6545139b Implement simple servo control using PWM. 2013-10-23 20:39:20 +01:00
Damien
8b3a7c2237 Fix func decls with no arguments: () -> (void). 2013-10-23 20:20:17 +01:00
Damien
94186c8239 Implement boot-up commands; run main script after boot. 2013-10-23 00:02:06 +01:00
Damien
9fc7933ff2 Add py_get_qstr. 2013-10-23 00:01:10 +01:00
Damien
e9f1e50be4 Board running boot.py, working REPL, soft reboot. 2013-10-22 23:09:25 +01:00
Damien
ec63cce470 Add simple support for C modules. 2013-10-22 22:58:17 +01:00
Damien
92c06561a3 Improve REPL compount statement detection. 2013-10-22 22:32:27 +01:00
Damien
9d63932b3d Add gchelper.s, to load registers and clean stack for GC. 2013-10-22 21:13:59 +01:00
Damien
0c5827fc65 stm: improved GC, and cooked output for VCP. 2013-10-22 21:13:36 +01:00
Damien
bb5316b905 gc: reserve first block; lexer: free vstr. 2013-10-22 21:12:29 +01:00
Damien
fd8b6bcf55 Add gc_free function to force a block to be freed. 2013-10-22 20:26:36 +01:00
Damien
7b2d3f38ce Implement some more operators, mostly for small ints. 2013-10-22 16:53:02 +01:00