Commit Graph

6398 Commits

Author SHA1 Message Date
Romain Goyet
1142fd00a2 [python] Use a custom modtime implementation
It only exposes "monotonic" and "sleep" functions, which are the
only part of CPython's time we can actually do at the moment.
2018-11-15 14:18:01 +01:00
Romain Goyet
1b57bc39c0 [ion] Discard micros() as those aren't used for now 2018-11-15 14:12:17 +01:00
Romain Goyet
8d148ce504 [apps/code] Don't add the time module functions in the catalog just yet 2018-11-14 17:40:51 +01:00
Romain Goyet
d7a13ba8fd Revert to micropython_port_should_interrupt 2018-11-14 16:57:16 +01:00
Damien Nicolet
24630011b1 [code] keep only CPython equivalent functions in utime module 2018-11-10 00:00:03 +01:00
Damien Nicolet
4640b67bc8 [ion] add missing ussleep function 2018-11-09 02:14:20 +01:00
Damien Nicolet
9b818bd963 [ion] fix sleep functions in emscripten build 2018-11-09 01:36:38 +01:00
Damien Nicolet
f93bf97182 [ion] Sharing millis & micros for blackbox and simulator 2018-11-09 01:30:22 +01:00
Damien Nicolet
bc8d9746c8 [ion] Documenting micros() implementation 2018-11-09 01:30:22 +01:00
Damien Nicolet
4c520cab97 [ion] Use shutdownSysTick & initSysTick when entring/exiting DFU 2018-11-09 01:30:22 +01:00
Damien Nicolet
cb0822d312 [ion] initSysTick() & shutdownSysTick() methods 2018-11-09 01:30:22 +01:00
Damien Nicolet
e397f05894 [ion] Documenting systick counter reload value 2018-11-09 01:30:22 +01:00
Damien Nicolet
92e59f720f [ion] Renaming STCSR, STCVR and STRVR to SYST_CSR, SYST_CVR and SYST_RVR 2018-11-09 01:30:22 +01:00
Damien Nicolet
c0c0905b84 [ion] millis() and micros() returns uint32_t and are defined in their own header 2018-11-09 01:30:22 +01:00
Damien Nicolet
79bfc7f112 [code] time module 2018-11-09 01:30:22 +01:00
Damien Nicolet
940270e78a [ion] add millis() and micros() using systick on device 2018-11-09 01:30:22 +01:00
Romain Goyet
9825c73238 [ion/emscripten] Actual implementation of Ion::Keyboard::scan
This allows interrupting Python scripts on the Emscripten port
2018-11-08 17:11:17 +01:00
Romain Goyet
b26f0abe81 [emscripten] Update a symbol name in the whitelist 2018-11-08 17:11:17 +01:00
Léa Saviot
851ad1ea74 [apps/stats] Clean test 2018-11-08 11:44:57 +01:00
Léa Saviot
e101f85d65 [apps/stast] Add test on median with null frequencies 2018-11-08 11:44:57 +01:00
Léa Saviot
bbd5cff042 [apps/stats] Do not fetch numberOfPairsOfSeries too often 2018-11-08 11:44:57 +01:00
Léa Saviot
6c1cdb21ef [apps/stats] Median does not use null-frequency values
This fixes the median for (1,0), (2,1), (3,0), (4, 1). It should be 3
(the mean between 2 and 4), not 2.5 (the mean between 2 and 3).
2018-11-08 11:44:57 +01:00
Léa Saviot
7caf868108 [escher] A warning controller should not process USB events 2018-11-05 14:31:41 +01:00
Émilie Feral
330b93a3ae [poincare] Tests: FIXME: some tests break travis libm implementation 2018-10-29 09:49:49 +01:00
Émilie Feral
fc17d4a8e7 [poincare] Test: libm prevision depends on implementation. Fix tests to
pass tests on Travis and Appveyor servers
2018-10-29 09:49:49 +01:00
Émilie Feral
b4a865632e [quiz] Use quiz_assert instead of assert 2018-10-29 09:49:49 +01:00
Émilie Feral
52d32c9294 [ion] crc32: should assume little endian 2018-10-29 09:49:49 +01:00
Émilie Feral
158e0f38d9 [travis] Travis should fail if any test fails 2018-10-29 09:49:49 +01:00
Lionel Debroux
3b9d307577 [poincare] Use 16-bit values instead of 32-bit values in the table of prime factors.
This is the first of three tradeoffs:
* halving the space taken by the 1000 first prime integers, saving 2 KB;
* expanding the table until the next prime after 1000, still saving over 1 KB;
* expanding the table to 2000 prime integers, and not saving space.

Signed-off-by: Lionel Debroux <lionel_debroux@yahoo.fr>
2018-10-23 11:49:09 +02:00
Lionel Debroux
eb5b525709 [poincare] Make several methods more inlinable, so as to go a bit further than LTO can.
Signed-off-by: Lionel Debroux <lionel_debroux@yahoo.fr>
2018-10-23 11:49:09 +02:00
Lionel Debroux
771c5a00d2 [poincare] Mark classes final, when it does not hurt size.
Signed-off-by: Lionel Debroux <lionel_debroux@yahoo.fr>
2018-10-23 11:49:09 +02:00
Lionel Debroux
70a8d06cfe [apps, poincare] Optimize the preferences singletons' usage by removing superfluous checks in the setters, and performing manual CSE in the callers.
Signed-off-by: Lionel Debroux <lionel_debroux@yahoo.fr>
2018-10-23 11:49:09 +02:00
Lionel Debroux
ddebc06fa5 [escher] Move View's destructor, and several other methods, to the header, so that the compiler can leverage its prior knowledge of the fact that the destructor is trivial (noticed by disassembling the code) to greatly optimize derived classes' destructors.
Signed-off-by: Lionel Debroux <lionel_debroux@yahoo.fr>
2018-10-23 11:49:09 +02:00
Lionel Debroux
1a8c6b6ae9 [poincare, escher, ion, apps] Split the huge umbrella header poincare.h, to reduce build time.
This should be a NFC, but surprisingly, it also reduces size... so what does it change ?
2018-10-23 11:49:09 +02:00
Léa Saviot
f2bfc8641f [escher] Fix strlcpy inserted 0 when inserting text 2018-10-19 17:15:51 +02:00
Émilie Feral
f054ca6eb1 [poincare] Logarithm: fix beautify to do: log(x,10) -> log(x) 2018-10-19 15:32:07 +02:00
Romain Goyet
2811651ce4 Add a DFU test 2018-10-19 10:59:17 +02:00
Romain Goyet
a9d3a53d87 [ion/device] Fix WriteMemory to handle random, unaligned writes 2018-10-19 10:59:17 +02:00
Romain Goyet
c934531ced [ion/device] Fix Flash::SectorAtAddress to handle random values 2018-10-19 10:59:17 +02:00
Romain Goyet
fc80180d46 [liba] Define ptrdiff_t 2018-10-19 10:59:17 +02:00
Jean-Baptiste Boric
da755cafe5 [home] Fix dirty bottom row of home screen
Fixes #645.
2018-10-19 09:49:48 +02:00
Émilie Feral
a3763b9a3a [ion] Change crc32 implementation for simulator, blackbox and emscripten
to avoid alignment issue on emscripten platform
2018-10-19 09:45:07 +02:00
Émilie Feral
db7e79510d [build] Default build for device include the update boot prompt 2018-10-19 09:39:48 +02:00
Jean-Baptiste Boric
d45efe6629 Add const modifier to primeFactors
Saves 4000 bytes of RAM on non-LTO builds by leaving this array in
Flash.
2018-10-19 09:33:27 +02:00
Léa Saviot
c310c1fecf [poincare] Fix IntegralLayout "dx" rendering position 2018-10-18 10:59:26 +02:00
Léa Saviot
9ead2024d5 [apps/code] Add "float(x)" entry in the Python catalog 2018-10-17 11:42:53 +02:00
Léa Saviot
5d92f13c26 Clean strlcpy arguments 2018-10-17 11:22:37 +02:00
Léa Saviot
06999e8e2e [poincare] Fix trigo test 2018-10-17 11:22:37 +02:00
Léa Saviot
1467d67c0b [liba] Fix strlcpy test 2018-10-17 11:22:37 +02:00
Léa Saviot
d12da1459a [liba] strlcpy(dst, src, dstsize) returns strlen(src) 2018-10-17 11:22:37 +02:00