-
03c9cfb015
Make byte code jumps relative.
Damien
2013-11-05 22:06:08 +00:00
-
1c62d04e2e
Add DAC, and simple audio driver to STM code.
Damien
2013-11-04 23:05:48 +00:00
-
6addc89e55
Byte code for SMALL_INT uses 3 bytes for integer.
Damien
2013-11-04 23:04:50 +00:00
-
0c70f88734
Add simple PWM control command to STM code.
Damien
2013-11-03 18:30:57 +00:00
-
e8674399f1
Add vprintf, vsnprintf to STM code.
Damien
2013-11-03 18:30:30 +00:00
-
96a0addb18
Fixup include of stdarg and va_list definition.
Damien
2013-11-03 18:30:10 +00:00
-
2f06c57f8a
Add simple var-arg functions; add simple string.format.
Damien
2013-11-03 18:20:56 +00:00
-
0e496733fe
Add simple file support to board.
Damien
2013-11-03 14:53:34 +00:00
-
33af3bf028
Change Py API names, py_get_* -> py_obj_get_*.
Damien
2013-11-03 14:39:47 +00:00
-
014e19fc4d
Fix compiler warnings in unix/main.c.
Damien
2013-11-03 14:26:21 +00:00
-
9b9e996df6
Support for for-loop in native thumb.
Damien
2013-11-03 14:25:43 +00:00
-
1a6633a74d
Implement more thumb branch instructions.
Damien
2013-11-03 13:58:19 +00:00
-
a53f694dc3
Test code for user objects.
Damien
2013-11-02 23:58:38 +00:00
-
d57eba51e5
Add user object to runtime.
Damien
2013-11-02 23:58:14 +00:00
-
6ba1314265
Fix bug: emit native didn't clear last_was_return in label_assign.
Damien
2013-11-02 20:34:54 +00:00
-
7410e440ab
Add basic complex number support.
Damien
2013-11-02 19:47:57 +00:00
-
fecee2b0ae
Floats work with MP on board; function for LCD pixel manipulation.
Damien
2013-11-02 16:41:51 +00:00
-
e0b1864337
Small hack to temporarily fix allocation of unique_code slots.
Damien
2013-11-02 16:41:24 +00:00
-
ccfc9c51ba
Py runtime: list.append returns None.
Damien
2013-11-02 15:10:37 +00:00
-
4ebb32fb95
Implement: str.join, more float support, ROT_TWO in VM.
Damien
2013-11-02 14:33:10 +00:00
-
4c51cbdc0b
Add proper FPU compile flags; disable Python float support.
Damien
2013-11-01 23:25:37 +00:00
-
e8217c2a9b
Remove debugging print for SD card; add comment to possibly-buggy USB code.
Damien
2013-11-01 23:25:08 +00:00
-
c1764e997c
Add syscfg and SPI libraries from STM.
Damien
2013-11-01 22:27:51 +00:00
-
4a14eb0b8d
PC13 (SDIO detect) can handle at most 2MHz speed config.
Damien
2013-10-30 22:27:38 +00:00
-
5892f4710e
Working SD card, but no functionality yet (was hardware error).
Damien
2013-10-26 18:02:46 +01:00
-
8f7491a109
Add USART support, connected to stdio for REPL.
Damien
2013-10-26 18:01:48 +01:00
-
9281cd66c9
Add simple readline history.
Damien
2013-10-26 02:29:02 +01:00
-
8128941e6c
Add support for RTC, used as a calendar.
Damien
2013-10-26 02:06:37 +01:00
-
58a1b4c6cf
Add USB HID support. Runs as an alternative to VCP+MSC.
Damien
2013-10-25 20:53:54 +01:00
-
2839168340
Add py_get_array_fixed_n function.
Damien
2013-10-25 00:40:38 +01:00
-
7ee80bac8e
Add support for SD card (not working).
Damien
2013-10-24 00:22:27 +01:00
-
6f08f8ce51
Add working MMA support.
Damien
2013-10-23 22:17:26 +01:00
-
d2c1a732e5
Call gc_free in gc_realloc after allocating new block.
Damien
2013-10-23 21:03:27 +01:00
-
0f6545139b
Implement simple servo control using PWM.
Damien
2013-10-23 20:39:20 +01:00
-
8b3a7c2237
Fix func decls with no arguments: () -> (void).
Damien
2013-10-23 20:20:17 +01:00
-
94186c8239
Implement boot-up commands; run main script after boot.
Damien
2013-10-23 00:02:06 +01:00
-
9fc7933ff2
Add py_get_qstr.
Damien
2013-10-23 00:01:10 +01:00
-
e9f1e50be4
Board running boot.py, working REPL, soft reboot.
Damien
2013-10-22 23:09:25 +01:00
-
ec63cce470
Add simple support for C modules.
Damien
2013-10-22 22:58:17 +01:00
-
92c06561a3
Improve REPL compount statement detection.
Damien
2013-10-22 22:32:27 +01:00
-
9d63932b3d
Add gchelper.s, to load registers and clean stack for GC.
Damien
2013-10-22 21:13:59 +01:00
-
0c5827fc65
stm: improved GC, and cooked output for VCP.
Damien
2013-10-22 21:13:36 +01:00
-
bb5316b905
gc: reserve first block; lexer: free vstr.
Damien
2013-10-22 21:12:29 +01:00
-
fd8b6bcf55
Add gc_free function to force a block to be freed.
Damien
2013-10-22 20:26:36 +01:00
-
7b2d3f38ce
Implement some more operators, mostly for small ints.
Damien
2013-10-22 16:53:02 +01:00
-
1b50affca8
Remove unnecessary USB files from stm.
Damien
2013-10-22 16:23:53 +01:00
-
d276f6357e
Get unix version compling.
Damien
2013-10-22 16:05:47 +01:00
-
f086ecf57c
Shrink py_obj_base_t size to 4 machine words.
Damien
2013-10-22 16:05:11 +01:00
-
eefcc79022
Clear ATBs on gc_init; better gc_info.
Damien
2013-10-22 15:25:25 +01:00
-
3f69aca2e2
Make stm use garbage collector.
Damien
2013-10-21 23:46:04 +01:00
-
dcced92c26
Add mark-sweep garbage collector.
Damien
2013-10-21 23:45:08 +01:00
-
f48cf67108
Implement crude but working REPL for board.
Damien
2013-10-21 10:42:06 +01:00
-
cbb8868f74
VCP works, need to init comm port PC side; add some debugging output.
Damien
2013-10-21 10:41:12 +01:00
-
4b6e85ca26
Try to get REPL working, but bug with CDC VCP...
Damien
2013-10-21 09:56:56 +01:00
-
fa2162bc77
Integrate new lexer stream with stm framework.
Damien
2013-10-20 17:42:00 +01:00
-
27fb45eb1c
Add local_num skeleton framework to deref/closure emit calls.
Damien
2013-10-20 15:07:49 +01:00
-
a5185f4bc8
Abstract out back-end stream functionality from lexer.
Damien
2013-10-20 14:41:27 +01:00
-
68f59a96e3
Add vstr and its functions.
Damien
2013-10-20 14:39:58 +01:00
-
df4b4f31ef
Make grammar rules const so the go in .text section.
Damien
2013-10-19 18:28:01 +01:00
-
4d7adce9c5
Remove obsolete emitthumb.c (now use emitnative.c).
Damien
2013-10-19 18:17:12 +01:00
-
afe12bca23
Fix IRQ priority issue to give working USB; and some cleanup.
Damien
2013-10-19 18:13:48 +01:00
-
fb42ec17bc
Try to re-add USB support...
Damien
2013-10-19 15:37:09 +01:00
-
d7a7a30a4f
Make pfenv's const so they go in .text section.
Damien
2013-10-19 15:36:20 +01:00
-
1595f3257e
Make rt_fun_table const, so it goes in .text section.
Damien
2013-10-19 15:09:32 +01:00
-
00ff04fc49
Working SysTick, code factoring, some boot-up code.
Damien
2013-10-19 14:40:54 +01:00
-
995b8aabb1
Partially implement proper flash storage.
Damien
2013-10-18 23:44:05 +01:00
-
5ac1b2efbd
Implement REPL.
Damien
2013-10-18 19:58:12 +01:00
-
7bbd110691
Remove line in emitbc.c to print code size.
Damien
2013-10-18 19:57:17 +01:00
-
3997be444c
Add single_input rule to grammar, for REPL.
Damien
2013-10-18 19:56:48 +01:00
-
9f770c658f
Fix up insertion of newline at end of lexer stream.
Damien
2013-10-18 19:54:31 +01:00
-
4a175e1f11
Fix up linker script; improve startup code; printf to USB.
Damien
2013-10-17 22:50:21 +01:00
-
d2755ec538
Add iterators and comprehension to emitnative.
Damien
2013-10-16 23:58:48 +01:00
-
c12aa468a1
Add SET_ADD opcode to VM.
Damien
2013-10-16 20:57:49 +01:00
-
5fd09668b7
Add MAP_ADD opcode to VM.
Damien
2013-10-16 20:54:01 +01:00
-
bd25445a82
Implement BC & runtime support for generator/yielding.
Damien
2013-10-16 20:39:12 +01:00
-
c226dca1f7
Support tuples and list comprehension, albeit crude.
Damien
2013-10-16 16:12:52 +01:00
-
152568bcb6
NLR and Python exceptions work on the board.
Damien
2013-10-16 00:46:39 +01:00
-
c9f91976e1
Crude try-except working.
Damien
2013-10-15 23:46:01 +01:00
-
ce89a21ea4
Implement basic exception framework, and simple for loop.
Damien
2013-10-15 22:25:17 +01:00
-
5dd455d06d
Change VID/PID info so USB works on Windows.
Damien
2013-10-14 00:03:29 +01:00
-
fee89d520f
Implement crude but functional CDC + MSC USB device.
Damien
2013-10-13 19:02:15 +01:00
-
ed65605edc
Inital commit of stm32f4xx framework.
Damien
2013-10-13 00:42:20 +01:00
-
3ef4abb446
Change ifdef/if defined to simple if's.
Damien
2013-10-12 16:53:13 +01:00
-
0efb3a1b66
Tidy up SMALL_INT optimisations and CPython compatibility.
Damien
2013-10-12 16:16:56 +01:00
-
3a205179ea
Option in compile.c to emit compatible or not with CPython.
Damien
2013-10-12 15:01:56 +01:00
-
c025ebb2dc
Separate out mpy core and unix version.
Damien
2013-10-12 14:30:21 +01:00
-
a56f292626
Remove obsolete emitx64.c (now in emitnative.c).
Damien
2013-10-10 23:30:29 +01:00
-
a1ddfcc213
Wrap out-native code in preprocessor declarations.
Damien
2013-10-10 23:25:50 +01:00
-
eb19efb27e
Simplify and improve function & method calling.
Damien
2013-10-10 22:06:54 +01:00
-
5609cca2ce
Rename vm.h to bc.h.
Damien
2013-10-10 20:00:08 +01:00
-
7f5dacf345
Implement basic class/object in native code.
Damien
2013-10-10 11:24:39 +01:00
-
a397776d6b
Implement basic class/object functionality in runtime.
Damien
2013-10-09 23:10:10 +01:00
-
91d387de7d
Improve indent/dedent error checking and reporting.
Damien
2013-10-09 15:09:52 +01:00
-
ff8ed77cc1
Improve push/pop and register usage for native emit.
Damien
2013-10-08 22:18:32 +01:00
-
13ed3a658d
Native Python and Viper support for x64 and thumb all together.
Damien
2013-10-08 09:05:10 +01:00
-
3410be8035
Merge viper types with standard native emitter.
Damien
2013-10-07 23:09:10 +01:00
-
acbf9a50d0
Rename r64->reg, i64->imm.
Damien
2013-10-07 21:52:14 +01:00
-
016f75f434
Add comments.
Damien
2013-10-07 21:22:39 +01:00
-
7af3d19a3c
Implement crude viper emit stage.
Damien
2013-10-07 00:02:49 +01:00
-
e4af64f307
Functions to convert values to/from inline asm.
Damien
2013-10-06 12:04:13 +01:00