516 lines
30 KiB
Plaintext
516 lines
30 KiB
Plaintext
1v46 : ...
|
|
|
|
1v45 : Fix parseFloat("foo") not returning NaN (and assert) - fix #149
|
|
Remove Integer.parseInt
|
|
Fix parseInt("bar") - fix #150
|
|
Ensure that maths ops with null do treat it as 0 rather than a string - fix #156
|
|
Fix digitalPulse length (properly!) - fix #154
|
|
Making sure that undefined gets cast to NaN
|
|
Fix Array.indexOf() returns undefined instead of -1 - fix #155
|
|
Moved memory() to process.memory() - added more info too
|
|
Try and improve handling of PWM timer speeds
|
|
Fixed varying SPI baud rates depending on device
|
|
Makefile changes for OSX compile
|
|
|
|
1v44 : Modified build system to store binary names in the python definition
|
|
Fix nasty regression involving losing code at the end of Strings
|
|
Fix segfault when pinMode is called on an invalid pin
|
|
Now disable interrupts during 4 bit SPI send - it's just too much otherwise
|
|
Detect unfinished block comments in console (fix #138)
|
|
Fix flash write on most 10XxB boards
|
|
Fix PWM output on all STM32 boards
|
|
General hardware tidy in prep for more intelligent device management
|
|
Run initialisation code before setWatch, to make sure pullup/down is set beforehand
|
|
Change 'Pin' datatype to be an unsigned char - makes tests easier
|
|
Now use the hardware RTC for keeping system time. Allows proper deep sleep on Espruino board
|
|
FINALLY - fix the USB VCP lost characters issue (#94)
|
|
|
|
1v43 : Added 'Modules' object with support for adding/removing cached modules
|
|
Allow product ID to be changed via Makefile
|
|
Fix documentation (and old-fashined Parsing style) for JSON
|
|
build_jswrapper now outputs errors to stderr (more compatible with default (silent) build process)
|
|
Fix issue when parsing quotes in strings
|
|
Added void operator for closure minification compatibility
|
|
Ensure that return takes the comma operator
|
|
Fix issue where printing Infinity would crash Espruino (fix #129)
|
|
Finally some working (extremely beta) cc3000 code
|
|
Added jsvObjectGet/SetChild to simplify some wrappers
|
|
'http' now uses JsVars for storage (so is suitable for non-linux devices)
|
|
Turned 'http' into a library
|
|
Added process.version and process.env (fix #131)
|
|
Changed handling of 2nd arg of << so that precedence is correct
|
|
Fixed handling of 'for (;;)'
|
|
Fix lock leak in Module handling
|
|
Update ST's library for the STM32F1
|
|
Update ST's VCP implementation
|
|
Added prefix operator (fix #130)
|
|
Allow espruino for linux to be run with '#!' in scripts
|
|
Fix indexOf on final element of strings (fix #133)
|
|
Remove JSV_PARENTINFO, as it turns out JS doesn't keep track of function scopes anyway (fix #109)
|
|
Make 'this' a keyword (now faster, more memory efficient)
|
|
Make 'Hardware' (root) the default value of 'this'
|
|
Add jsvArrayPushAndUnLock and modified code to use it (fix #135)
|
|
Now remember I2C state (partial fix for #13)
|
|
Replace 'pow' function with a smaller version - save ~2kb
|
|
Shaved another 1200 bytes off jslTokenAsString
|
|
Now store Pin state (fix for #13 on F1 parts, F4 still looks broken)
|
|
Added Graphics.stringWidth
|
|
Added internal Printf function
|
|
Misc speed and code size improvements
|
|
This version has gone to Seeed for use on the KickStarter boards
|
|
|
|
1v42 : [ebirger] allowing 'new' with no brackets
|
|
Allow built-in functions with variable numbers of arguments (fix #83)
|
|
Implement 'String' constructor in the normal way (fix #110)
|
|
Fix regression with parsing constructors while not executing
|
|
Allow multiple arguments to print and console.log (fix #92)
|
|
Make 'arguments' array available in functions (fix #100)
|
|
Fix an assert fail, and handle some potential memory leaks
|
|
Don't show __proto__ and constructor with for..in, keys(), or JSON.stringify
|
|
Make 'trace()' output more readable debug data for complex structures
|
|
Fix memory leak whe parsing functions iwht variable numbers of arguments - fix #115
|
|
Defined NaN
|
|
Stop 'new undefined()' crashing Espruino - fix #120
|
|
Get A13/A14 working on Espruino board (these were JTAG)
|
|
Get bootloader size direct from Python (remove hard-coding)
|
|
Fix '~' operator when acting on variables
|
|
Made bootloader a bit more error tolerate (CRC on write)
|
|
Added %=, /=, and *= operators (fix #121)
|
|
Allowed Object.toString() to take a radix argument for integers (fix #125)
|
|
Fix error message issue - broken strncat (fix #124)
|
|
Add comma operator (fix #122)
|
|
Added some basic code for STM32F429IDISCOVERY - not currently working though
|
|
This version is the one sent off on the Test Harness (so will probably appear on boards)
|
|
|
|
1v41 : Fix Olimexino compile (https://github.com/espruino/Espruino/issues/6)
|
|
[ebirger] Member constructors (eg. new a.b() )
|
|
[ebirger] Ensuring integers with radix specifiers can still be parsed if a radix is specified
|
|
Fix for tests/test_json_arraybuffer_001.js - iteration of arraybuffers of length==1
|
|
Add Object.keys(...)
|
|
More arraybuffer iteration fixes
|
|
On linux, use built-in stringToFloat to aid debugging. Handle exponentials, fix #31
|
|
'make serialflash' is now works correctly for Espruino Boards with bootloader
|
|
setWatch(..A0);setWatch(..A0);clearWatch(1) does not now kill the other watch, fix #25
|
|
One-based setTimeout/setWatch, fix #3
|
|
Added Function.call and Function.apply, fix #54
|
|
'http' and 'fs' are now libraries that need to be 'require'd, fix #8
|
|
Updated pin info for STM32F103xC/D/E chips, fix #84
|
|
Fixed linker script for STM32F4 (discovery board now works)
|
|
Object prototypes are now Objects, fix #101
|
|
Board docs now specify '3.3v' only pins fix #104
|
|
Add Array.forEach
|
|
Fix searching down >1 prototype to find functions (one more issue posted in #99)
|
|
Fix "12345"/5 type issues (fix #90)
|
|
'Consting' some string functions
|
|
Fixing arrays with string indices that are actually numbers \o/ (fix #19)
|
|
Released onto website
|
|
|
|
1v40 : Ensure that LCD.prototype.setPixel = function actually works
|
|
Refactor LCD driver code to allow lcdInit (and start of making it non-platform-specific)
|
|
Built 'LCD' support into linux/raspi/carambola
|
|
Add initial SPI.send(ArrayBuffer) support - even if NO VALUES RETURNED
|
|
Start of built-in Nokia 5110 LCD support
|
|
Remove GPIO clock removal on sleep for now (it kills setWatch)
|
|
Fix (sub)ArrayBuffer problems (test100.js)
|
|
Added setDeepSleep - still beta put power consumption drops to 1mA
|
|
Fix broken name for httpCRq.write
|
|
Changed LCD to Graphics - added ability to render to ArrayBuffer
|
|
Fix 8 char built-in class names
|
|
Adding preliminary Sony SmartWatch support
|
|
Adding preliminary support for completely bare 36 pin chip
|
|
Fixing pin defs for Espruino board rev 1v1
|
|
Added proper SDL/ArrayBuffer and JS Callback graphics support
|
|
Added "ifdef" ability in build_jswrapper
|
|
Take JSVAR_CACHE_SIZE out of jsutils and put it in the board config file
|
|
Added JSV_PARENTINFO which will allow us to do things like setTimeout(foo.bar,10)
|
|
Fixed arrays in non-executes streams - 'if (0) print([1,2,3]);'
|
|
Added 'require' function loading modules from node_modules on SD card
|
|
Added module cache to stop modules being re-loaded
|
|
Renamed internal vars to start with '>' - much easier to distinguish for 'dump'/etc
|
|
Only use parentInfo on functions
|
|
Load all tests in test dir - don't do them by number
|
|
Added 'zigzag' ordering for ArrayBuffer Graphics
|
|
Added 'vertical_byte' ordering for ArrayBuffer Graphics
|
|
toJSON now ignores 'hidden' object elements
|
|
Special-case jsvArrayBufferIteratorSetIntegerValue
|
|
Make SPI output an ArrayBuffer
|
|
Use best out of 3 for DelayMicroseconds calibration - something seems flaky right after bootup
|
|
Lines now drawn from p1 to p2 inclusive
|
|
Events now use jshPushIOWatchEvent (should cut down on code) also fixed bug with watching pin #11
|
|
Now remember if pinMode was set or not
|
|
Transform ```code``` in JSON into a code tag in the documentation
|
|
Graphics now supports FSMC for HY boards again
|
|
Drawing vector fonts is now roughly the right size and position (still not 100%)
|
|
Remove registration code
|
|
Adding MPL licence
|
|
Remove Arduino bit manipulation functions - nobody seems to use them anyway
|
|
# of flash pages/etc now comes from board info
|
|
[ebirger] Supply the correct arguments to Array.map
|
|
[ebirger] Method calls and membership evaluation should be done on all factors (ee. [1,2,3].foo())
|
|
[ebirger] When running multiple tests, only set up terminal once or it breaks the terminal window on exit
|
|
Added STM32-style USB CDC bootloader for Espruino Boards
|
|
Added scripts/create_espruino_image.sh to package up bootloader and espruino into one binary
|
|
SHIPPED on Impatient developer boards
|
|
|
|
1v39 : Added Bitwise NOT operator
|
|
Added Raspberry Pi version to ZIP (with HTTP support)
|
|
Fixed load/save on Linux Devices
|
|
Added pinMode function (to allow pull-ups/pull-downs to be turned on)
|
|
SPI.send4bit/send8bit will now not mess up the final element
|
|
changeInterval now clears up stored up callbacks (eg, setInterval(.., 0.01)...wait...changeInterval(...,20)
|
|
Ctrl-C no longer prints anything, which avoids lockups
|
|
No longer print "Execution Interrupted" if nothing was interrupted!
|
|
Added >>>= >>= and <<=
|
|
When entering text interactively, ensure that there are no trailing spaces
|
|
|
|
1v38 : Tweaks for Arduino IDE compile
|
|
Removed '(char #)' from stack trace, as a bit pointless now
|
|
Added better reporting of execution location when Ctrl-C pressed
|
|
Urgent fix for non-working Olimexino since 1v33
|
|
Fix string comparison when strings contain "\0"
|
|
Added LED1/2/OSC/SD/etc to Olimexino Board docs
|
|
|
|
1v37 : Urgent fix - power saving code made it difficult to re-flash Espruino (now only apply this to Espruino Board)
|
|
|
|
1v36 : Fix documentation for Array.pop()
|
|
Added some much better board documentation
|
|
Fixed DAC output on F3
|
|
Fixed DAC output on devices where PWM is also available and the alternate function is less than the DAC's
|
|
|
|
1v35 : Attempt to reduce power consumption when sleeping by turning off GPIO, and setting GPIOs to AIN on reset
|
|
Fix F3 issue where ADC/DAC weren't picked up properly
|
|
Tidy up register text and add KickStarter mention
|
|
var a = {}; a[LED1]=0; - not converted to String
|
|
JSON (and hence dump()) now dumps ArrayBuffer correctly
|
|
|
|
1v34 : Faster jshFromDeviceString
|
|
Preliminary support for flow control on Serial receive
|
|
Speed improvements by removing jsvGetRef from jsvUnLock
|
|
fast 4 byte pre-check in jsvFindChildFromString
|
|
Skip lock/unlock in FindChildFromString to help increase speed
|
|
When we unplug USB, only go to the default console device IF that is the device we're currently on
|
|
Support for custom Espruino board
|
|
Added ArrayBufferView.interpolate
|
|
16 bit SPI send for send4bit/sevrnd8bit (better reliability on low-end chips)
|
|
Fix JSON dump of typed array
|
|
Added Math.clip(x, min, max)
|
|
When saving on flash, don't do jslTokenAsString properly
|
|
B3/B4 move from alternate fn
|
|
Fix incorrect reporting of analog pins
|
|
Fix I2C.readFrom on STM32F1/4
|
|
Make 1/2 == 0.5 (was being sensible before, but now follow JS spec)
|
|
Ctrl-C while in timer fn clears timers (but not outside it)
|
|
Fixed broken clearInterval from within setInterval
|
|
Hopefully fixed issue on SSD1289 LCD controller
|
|
Trigger wheel handler to use interrupts
|
|
2D arraybuffer interpolation
|
|
Added Math.wrap, fixed a lot of trigger issues
|
|
Fixed SysTick priority/preempt problems
|
|
Slowed the SysTick timer back down for everything
|
|
Fix Int8Array signedness on F4 boards
|
|
Refactored source code tree
|
|
|
|
1v33 : fix character encoding issue of "\16"+"1" != "\161"
|
|
Refactoring of ArrayBuffer into iterator, and addition of a general purpose iterator
|
|
Fancier assert for debugging
|
|
jsvArrayJoin to use new iterator
|
|
for (i in ...) to use new iterator
|
|
I2C and SPI use new iterator
|
|
Serial.write() - to allow single ints to easily be written
|
|
changeInterval assert fail when given a function by accident
|
|
added peek8/poke8/peek16/poke16
|
|
memory() now takes account of command history size
|
|
memory() on ARM reports the end address of the stack - so it can be used as a scratchpad with peek and poke
|
|
Try and reduce code size by not inlining several functions
|
|
No refs for StringExts - so we get one more byte per JsVar (~5%) more storage efficiency
|
|
Move from jsvIsBuiltInFunction to computer-generated jswIsBuiltInFunction
|
|
When creating Objects, check for built-in function BEFORE creating an Object class for it
|
|
Built process now checks that flash usage is under the allowed value
|
|
Added short compare to jswHandleFunctionCall to reduce code size
|
|
Added 3 byte compare (4 byte read and AND off top byte) - faster, less code
|
|
Auto-generate jsvGetBasicObjectName from docs
|
|
No longer using refs for storing whether free or not - use flags with JSV_UNUSED and get one extra var with 8 bit refs
|
|
Switch to using STRING_0...STRING_MAX in flags, rather than specific bits in JsVarFlags - allows more that 15 chars to be used per JsVar
|
|
Make ArrayBuffers actually be ArrayBufferViews - saves on extra string-handling code at expense of one var
|
|
Make sure Uint8Array,etc inherits from ArrayBufferView
|
|
Fix issue where a '\0' coming in from serial was not put in e.data properly
|
|
Don't inline some functions when we're trying to save on flash
|
|
Re-use sin for cos, pow for sqrt to reduce code size
|
|
|
|
1v32 : Fixed embarassing issue with 0.999=="0.A"
|
|
Added and checked Pin.writeAtTime on STM32
|
|
Now don't allocate events array - just allocate directly, which saves memory and is faster (although slighty out of order)
|
|
Docs: now Alphabetically sorted, and class instances not listed by accident
|
|
Fix issue where Ctrl-C on ANY Serial port caused execution to be interrupted
|
|
Updated busy indicator to cope with recent change to not allocate events in an array
|
|
Fixed I2C on HY 2.4 board - I2C needed hard reset
|
|
Added basic ArrayBuffers/TypedArray support
|
|
Fix memory leak when error created with [] on a non-array/object
|
|
Improved hyperlinking in documentation
|
|
Fix I2C receive bug on F4
|
|
Increased VL board's input buffer size
|
|
|
|
1v31 : Fix PWM output on TIMER1/8 pins of the STM32F4
|
|
Fix PWM output for negated timers
|
|
memory() now runs a GC pass
|
|
Fixed multiple occurrence of functions in reference
|
|
|
|
1v30 : STM32F1: fixed AF issue meant peripherals would never return from AF mode
|
|
STM32F1: When given an invalid pin, now reports if pins are 'af' or not
|
|
Updated SPI.setup docs to mention that you can't mix AF and non-AF
|
|
If one SPI pin is specified but others aren't, only that pin will be set up
|
|
Added Olimexino hack so SPI1.setup works as expected
|
|
Allow using [] on a function
|
|
Fix precedence issue, so var a = function() { return 1; }(); works
|
|
Update SPI documentation
|
|
for (i in f) can now iterate over functions
|
|
Optional argument to trace() for object to start tracing from
|
|
Small steps towards ArrayBuffers
|
|
Added smart edit that checks for internal functions, and uses Function.replaceWith
|
|
Added Function.replaceWith to replace the internals of a function while keeping the scope
|
|
|
|
1v29 : Some hacky sysfs-based IO for running on Linux
|
|
HTTP Callbacks are now stored as names so they can be changed on the fly (Linux only)
|
|
Successful compile for Carambola
|
|
Filesystem support on Linux
|
|
Switch to variable size ref counter (marginally more efficient on very small devices, safe on Linux)
|
|
Linux now has unlimited memory available
|
|
Added linux/sysfs 'setWatch' (non-irq driven, so very noddy)
|
|
Checked jswrapper check from using multi-char constants to a #define
|
|
Improve pin suggestions for SPI/I2C/USART
|
|
Auto-initialise USART with default values when setConsole is used
|
|
Support for new Graphics LCD types
|
|
3.2" VCT6 board support
|
|
|
|
1v28 : Faster LCD fillrect for HY 2.8
|
|
Fix for multi-byte SPI writes on HY board at 1Mhz (touchscreen control bug)
|
|
Fix issue with delayMicrosecond calibration on HY (and hence OneWire)
|
|
Fixed digitalPulse on STM32VLDISCOVERY
|
|
|
|
1v27 : Fixed problem with OneWire constructor execution
|
|
Added |=, &= and ^=
|
|
Added Array.splice()
|
|
Faster, more ROM-efficient built-in symbol table
|
|
Fix for potential issue when using field accessor on an undefined var
|
|
|
|
1v26 : I2C Support on STM32F1 and STM32F4 boards too
|
|
Emergency cut in variables for Olimexino with bootloader (as flash usage has got too high for save to flash!)
|
|
|
|
1v25 : http.writeHead to accept an empty header
|
|
Fixed issue finding methods on built in classes (0 termination)
|
|
make sure http server with no data still sends headers...
|
|
Start of MINI-HY-2.8" support (all ok, but no SD card yet)
|
|
Reduce RAM usage by consting some arrays that are not modified
|
|
Vector fonts now use polys - 8kb less ROM, and faster rendering
|
|
Start of LCD 'driver' code
|
|
Standard way of handling events, Object.on/emit/removeAllListeners - like Node.js's EventEmitter
|
|
Self-calibrating Microsecond delay (for intermal OneWire/etc)
|
|
OneWire class
|
|
Correct handling of built-in class constructors
|
|
Fix error when parsing a zero-argument function that has been given arguments
|
|
I2C support - currently ONLY tested on STM32F3 board
|
|
|
|
1v24 : SDIO-based fat driver on the HY STM32 board
|
|
Added DAC to the HY boards (103xE-based)
|
|
Re-named the fileSystem functions to make them more compatible with node.js (readFile/writeFile/etc)
|
|
Added fs.appendFile
|
|
Removed HTTP from the reference until it is included in some boards
|
|
|
|
1v23 : Fix 'ERROR: INTERNAL: stmADCChannel' on STM32VLDISCOVERY/F1 boards when accessing PA0
|
|
Reference now mentions which Espruino version it is for
|
|
|
|
1v22 : Important fix - Events got executed in the wrong order if they got queued up
|
|
|
|
1v21 : Ensure SPI clock does not stop between bytes
|
|
Added SPI.send4bit and SPI.send8bit
|
|
Made sure the VL board's code fits into available flash
|
|
Smart += that can append to a string rather than cloning it
|
|
dump() prints functions properly, rather than 'var f = function() {}'
|
|
Pageup/down move the cursor to the beginning/end of input
|
|
LCD draw/fill with negative x and y
|
|
|
|
1v20 : Add console.log
|
|
Fix automatic usleep for Linux
|
|
Added node.js-style HTTP server for Linux version
|
|
Fixed null-pointer issue when accessing something that doesn't exist on an object
|
|
Added node.js-style HTTP client for Linux version
|
|
Start of bit bashing functionality
|
|
for (i in "ABCD") console.log(i) -> 0,1,2,3
|
|
String array access (but not for writing - doesn't work in JS anyway)
|
|
String String.fromCharCode / charCodeAt
|
|
Added SPI baud rate setting
|
|
Vector font chars 'a' and '4' now work ok
|
|
Fix numeric exception when rendering a poly that has some identical points
|
|
Better digitalPulse (uses timer + interrupts)
|
|
analogWrite can now take an object with a 'frequency' argument for PWM
|
|
|
|
1v19 : Fixed issue where var M=Math;M.random() failed
|
|
Fixed issue with var U=USB;U.print("Hello");
|
|
Remove loop iteration limit
|
|
Fix memory leak when a syntax error is in for '(i in arr)'
|
|
Save state of pin on setWatch interrupt (e.state)
|
|
Change setWatch to allow only on rise or fall as an option
|
|
clearWatch() clears all watches
|
|
|
|
1v18 : DAC support on F3/F4
|
|
Serial.setup() can also take a second parameter of an object {tx,rx}
|
|
Better support for dump() with echo/setBusyIndicator/etc
|
|
Better dumping of prototypes on built-in vars
|
|
Don't add chars<32 (Except tab) to the input line
|
|
SPI1/2/3/4.setup() to take an object {baud,sck,miso,mosi}
|
|
Better hardware initialisation code (not UARTS auto-init if they are used)
|
|
Fix issues with prototypes
|
|
Peek/poke instructions
|
|
Start of I2C support (not usable yet)
|
|
Added Math. ceil/floor/exp/log
|
|
|
|
1v17 : Support for running alongside the Maple bootloader
|
|
Fix parsing of numbers beginning with 0 when forceRadix!=8
|
|
Fixed USART1 on Maple/Olimexino devices
|
|
|
|
1v16 : Inlining of jsvLock/UnLock in jsvar.h to improve speed
|
|
Move non-hardware-dependent stuff into jsdevices
|
|
Move jshardware.c into targets/stm32/jshardware.c, create 'targets/linux' and use a single makefile
|
|
For + While loops work without reallocating lex
|
|
Fix AddNativeFunction when function already exists (and tests + saved state)
|
|
Change jsvFindChildFromX to use JsVar* from JsVarRef - saves a lot of lock/unlock
|
|
Handle new Foo() as per spec (return value + init of this+prototype) - still does not cope with non-object prototype
|
|
Beginning of SD card support (works on Olimexino, but not very flexible)
|
|
Fix for parse/eval when given non-strings
|
|
Strings can now contain '\0'
|
|
Jumptable-friendly reserved word check
|
|
Jumptable-friendly builtin functions (massive refactor)
|
|
SPI support
|
|
HY board support, and graphics LCD
|
|
Added fillPoly, and Vector fonts
|
|
Added Registration code
|
|
Fixed some undefined function/array warnings
|
|
Much better HTML function documentation
|
|
Fixed edit() function
|
|
STM32F3 support, and now peripheral stuff is done with a script
|
|
explain what pins are available if a pin is not capable of requested fn
|
|
power on ADCs only when needed
|
|
LCD fillPoly speed improvements, + drawLine
|
|
Add datatype for Pin, so pins written to console by pin name rather than integer value.
|
|
Added Pin.set/Pin.reset
|
|
Change warning about 'undefined.' into an error (foo.reset() had unexpected consequences!)
|
|
Fix parsing of '1.0/-3'!
|
|
Add typeof and instanceof operators
|
|
Ensure that Serial1/SPI1/etc are objects of type 'Serial'/'SPI' - so prototypes can be added
|
|
|
|
1v15 : Escaping JSON strings
|
|
Fix parsing of octal numbers in strings (so don't have to be 3 chars long)
|
|
Drastically improved stack usage using small stub functions (at expense of a bit of speed)
|
|
dump() also dumps out prototypes for functions
|
|
|
|
1v14 : Fix complaint about pins during setBusyIndicator()
|
|
Increase available memory on OLIMEXINO
|
|
Added function memory() to return memory usage
|
|
setWatch now links to function names (rather than just functions)
|
|
dump() also handles Serial.onData(...)
|
|
Fix issue with JSON printing functions with arguments to console
|
|
prefix builtin variables with '_'
|
|
fix ArrayIndexOf when array contains undefineds
|
|
move all devices into one git repository
|
|
USB on F4
|
|
call onInit function/string if it exists when Espruino powers on
|
|
Compile F4 with -O2 - as we have the program memory for it
|
|
Serial3/4/5/6 on F4
|
|
Serial3 on Olimexino
|
|
Make Serial.onData() clear onData handler
|
|
|
|
1v13 : Operations like + on Object/Array convert them to strings rather than error
|
|
var now doesn't error if there is no semi-colon
|
|
Allow new line or line delete in multi-line editing
|
|
add edit(functionName) - which copies function definition into inputline so it can be updated
|
|
When printing lines, delete current inputline and then put it back in idle loop (only if echo=1)
|
|
Support *,/ etc on numpad
|
|
|
|
1v12 : Issue when printing lots of data and then disconnect USB
|
|
Hide USB/Serial in Dump()
|
|
add Array.map(fn(x), thisArg)
|
|
For newline, count [] and () (as well as {}) - also knows about comments/strings/etc
|
|
Fix assert fail is setTimeout with non-function
|
|
If space at end of input line, enter still executes
|
|
Removed some hard-coded arrays in favour of JsVar strings
|
|
Fix confusion with jsvIsName/jsvIsString
|
|
Handle numpad end key
|
|
Add code to check stack and stop stack overflow if too much recursion
|
|
Ensure that setTimeout/setWatch store the link to a function, not the function
|
|
Fix nasty ref loop in ref loop GC issue
|
|
Add dotty output
|
|
Fix memory leak when error in jspParseSingleFunction
|
|
Now run Garbage collection if we're idle, and we know we have a few ms spare
|
|
Added setSleepIndicator
|
|
Fix line/col indicator in errors/warnings
|
|
Fix JSON parsing and printing when 'undefined' encountered
|
|
Rewritten object handling code to be way more standard JavaScript compliant
|
|
Array initialisation with 'new Array()', also for Strings
|
|
Added a few more built in functions
|
|
Nice error reporting with line + pointer
|
|
fixed Math.random
|
|
Binary style ops on doubles now work - they are just converted to ints
|
|
Added boolean datatype
|
|
|
|
1v11 : Add Math functions
|
|
Add command history (and dynamic history free if low memory)
|
|
Fix broken jsvArrayPop
|
|
Add tests for and fix Array.indexOf
|
|
In-line editing for commands
|
|
Fix bug in basicVarEquals for big strings
|
|
More fixes for low memory conditions
|
|
Multi-line edit for commands (but no newline or line delete yet)
|
|
Handle Home, End + reverse delete keys
|
|
Fix nested for loops not handling interrupts correctly
|
|
Fix AppendString issue when given start value greater than string
|
|
Add 'changeInterval' to allow things created with setInterval to have the frequency changed (eg. stepper motor control)
|
|
Now puts itself to sleep to save power, when it knows nothing is required and it'll be woken up by SysTick before
|
|
Change Math library to avoid putting constants in RAM
|
|
|
|
1v10 : Increase FIFO size for VL
|
|
Marginally decrease amount of F4 vars to ensure they all fit in one flash sector
|
|
Allow strings to be longer than the max token size
|
|
'"key" in obj' syntax
|
|
Detect if in FOR or WHILE loop, and if not, disallow break and continue
|
|
Change min setInterval time to 0.1ms - F4 can get close to this
|
|
Better analog pin error message
|
|
USB support on Olimexino/Maple
|
|
Start of multiple COM port support (ioEvent queue)
|
|
Ctrl-C now clears the input line
|
|
Save state of 'echo' into flash with save()
|
|
Add 'setBusyIndicator(pin)' to set pin high when Espruino is busy
|
|
Inbuilt function handling speed improvements
|
|
Allow Serial comms via other UARTS. Serial1/2.onData and print/println
|
|
now inserts elements into arrays in the correct order (GetLength can be (is) now much faster)
|
|
Faster code to work out pins from strings
|
|
Automatically convert IDs in form A#,A##,B#,B## etc into numbers.
|
|
Built-in constants for LED1/BTN/etc.
|
|
|
|
1v09 : Enabled 'abs' by default
|
|
Added flash programming to STM32F4
|
|
analogWrite now working!
|
|
|
|
1v08 : Add preliminary STM32F4 support
|
|
Allowed test cases to test timers - eg. code in jsinteractive.c
|
|
Fix memory leak for timer
|
|
Fix memory leak for digitalWrite
|
|
|
|
1v07 : Fix string charAt
|
|
Fix watch on different pin
|
|
Pass arguments to event handlers - eg. time
|
|
digitalWrite/Read to take arrays of pins, and int for value
|
|
|
|
1v06 : Add break + continue
|
|
Add switch statement
|
|
Handle /r, /r/n or just /n for newlines - phone compatible
|
|
Handle different type of delete
|
|
|
|
1v05 : Allow setWatch/setTimeout/setInterval with a string
|
|
Handle adding Open bracket then deleting it
|
|
When calling a NAMED function, zero the scopes - this stops scope table overflow
|
|
|
|
1v04 : Renamed to Espruino
|
|
Fixed issue with event add when out of memory
|
|
If out of memory happens during a timer, kill all timers
|
|
|